Država je strategijo kriptografske zaščite komunikacij zastavila povsem napačno

Izhodišče strategije, da naj za šifriranje vladnih komunikacij poskrbijo izključno domača podjetja, je popolnoma v nasprotju z logiko zaščite občutljivih komunikacij.

Branje tega prispevka vam bo vzelo približno sedem minut

Foto: Adam Foster
Foto: Adam Foster

Urad vlade RS za varovanje tajnih podatkov je na svoji spletni strani pred kratkim objavil osnutek dokumenta z naslovom Strategija kriptologije Republike Slovenije. Dogajanje okrog arbitraže glede Piranskega zaliva očitno kaže, da ima Slovenija na področju (ne)uporabe šifrirnih rešitev težave. Zato je priprava ustrezne strategije na tem področju gotovo dobrodošla.

Avtorji dokumenta (ki se trenutno še nahaja v fazi osnutka) na začetku poudarjajo, da je strategija kriptologije za Republiko Slovenijo pomembna zlasti zato, ker gre za »nacionalni dokument, ki opredeljuje področje kriptologije in priporoča uporabo nacionalnih šifrirnih rešitev«. Kljub zakonodaji, ki zahteva uporabo šifrirnih rešitev, namreč slovenska država še vedno nima enotnih stališč, državni organi in organizacije pa so pogosto prepuščeni sami sebi in lastnim usmeritvam (tako avtorji).

Priprava takšnega dokumenta je zato več kot dobrodošla. Žal pa se izkaže, da je dokument zasnovan na precej problematičnih predpostavkah. Tako lahko že kar na začetku preberemo, da strategija izhaja iz »strokovnega izhodišča, da se šifrirne rešitve, ki se uporabljajo za varovanje podatkov, ne bi nabavljale v tujini«. Pri čemer pa se avtorji strategije ne sklicujejo na t. i. nacionalni interes, pač pa na varnost:

S takimi nabavami se dejansko razkrijejo vsi načini varovanja podatkov najmanj prodajalcu šifrirne rešitve, s tem pa se posredno poveča možnost napada na naš sistem. Pristop do kriptologije, zasnovan v strategiji, temelji na predpostavki, da država razvija lastne šifrirne rešitve tako za namene varovanja tajnih podatkov kot tudi za varovanje ostalih podatkov.

Čeprav se laiku ideja na prvi pogled morda zdi smiselna, je takšno stališče precej problematično. Zlasti s stališča varnosti. Bruce Schneier, kriptolog in eden najbolj znanih strokovnjakov za informacijsko varnost, je večkrat poudaril problematičnost razvijanja lastnih šifrirnih rešitev. Takole pravi t. i. Schneierjev zakon: »Vsakdo lahko izumi tako dober šifrirni sistem, da si zanj sam ne more zamisliti, kako bi ga bilo mogoče zlomiti« (ang.: »Any person can invent a security system so clever that she or he can’t think of how to break it«). Problem pa nastopi, ker tak sistem lahko zlomi nekdo tretji. Težavo z razvojem lastnih rešitev lahko najbolje opišemo kar s Schneierjevimi lastnimi besedami:

Problem slabe varnosti je, da je videti povsem enako kot dobra varnost. S pregledom končnega izdelka razlike ni mogoče videti. Oba izdelka trdita isto, oba imata enako funkcionalnost. Oba morda uporabljata celo iste algoritme: 3-DES, 1024-bitni RSA itd. Oba lahko uporabljata enake protokole, imata implementirane enake standarde in sta priporočena s strani istih industrijskih združenj. A en izdelek je varen, drugi pa ne.

Pri tem ne gre za to, da bi nekdo namenoma razvil slabo šifrirno rešitev, pač pa preprosto za to, da je kvalitetno rešitev težko razviti, predvsem pa jo je težko varnostno preveriti. Tako kvaliteto novo izumljenih algoritmov kot tudi implementacijo že obstoječih. Precej obširno je o tem pisal Bruce Schneier v dveh kratkih esejih: Amateurs Produce Amateur Cryptography ter Memo to the Amateur Cipher Designer. Oba toplo priporočamo v branje.

Pri vsem skupaj pa je zanimivo, da sami avtorji strategije sami poudarjajo dejstvo, da »varnost ne sme temeljiti le na tajnosti kriptografskih mehanizmov, temveč predvsem na tajnosti šifrirnega ključa« (stran 3). Zato je pravzaprav precej nepomembno, kdo je proizvajalec kriptografske rešitve – če je dobra, bo njena varnost temeljila na tajnosti šifrirnega ključa in ne na uporabljenih algoritmih in njihovi implementaciji. Ideja, da varnosti v kriptografiji ni mogoče zagotavljati s skrivanjem algoritmov, pravzaprav ni nova. Leta 1883 jo je razvil flamski lingvist in kriptolog Auguste Kerckhoffs, ki je objavil članek La Cryptographie Militaire, v katerem je izpostavil šest načel znanih kot Kerckhoffsov zakon:

– Šifrirni sistem mora biti v praksi, če že ne matematično nezlomljiv.
– Ne sme se zahtevati, da mora ostati tajen, če pa pade v roke sovražniku, to ne sme predstavljati nevšečnosti.
– Njegov ključ mora biti sporočljiv, zapomniti naj si ga bo mogoče, ne da bi ga bilo treba zapisati, biti mora spremenljiv ali prilagodljiv po volji komunikacijskih partnerjev.
– Mora biti uporaben za telegrafsko komunikacijo.
– Biti mora prenosen, za njegovo uporabo in delovanje pa ne sme biti potrebno delo več ljudi.
– In končno, potrebno je, da je sistem enostaven za uporabo in da za njegovo uporabo ni potreben miselni napor ali upoštevanje velikega števila pravil.
Kerchoffsov zakon tako pravi, da je dober šifrirni sistem varen, tudi če je o njem znano vse, razen šifrirnega ključa. S tem Kerchoffsov zakon zavrača načelo, da je mogoče varnost zagotoviti s skrivanjem (t. i. security through obscurity).

Pomembno se je zavedati, da Kerchoffsov zakon ne zahteva, da naj bo šifrirni sistem javen, temveč le opozarja na to, da skrivnost ne zagotavlja varnosti, marveč jo v resnici lahko celo ogroža. Vprašanje odprtosti in transparentnosti tako v kriptografiji ni zgolj vprašanje svobode, pač pa tudi vprašanje varnosti in zaupanja. Glavna korist od javne objave šifrirnih algoritmov in šifrirnih rešitev je namreč predvsem v tem, da lahko drugi kriptologi, zlasti pa akademska, raziskovalna in hekerska skupnost algoritem ali zamisel skozi daljše časovno obdobje ocenijo in kritično ovrednotijo.

To pa pripomore k izboljšavi kakovosti in k hitrejšemu razvoju. Peščica zaposlenih na Uradu vlade RS za varovanje tajnih podatkov ali nekaj zaposlenih pri kakšnem podjetju, ki bi ga Slovenija najela za varnostni pregled šifrirnih rešitev ima preprosto bistveno manj kapacitet za poglobljeno analizo, kot jih ima svetovna akademska in raziskovalna skupnost, ki se ukvarja s kriptologijo.

To pa je tudi glavni razlog, zakaj je v kriptografiji najbolj smiselno uporabljati preverjene in po možnosti odprtokodne rešitve. Pri zaprtih sistemih je namreč veliko večja verjetnost, da je v njih pojavi kakšna napaka, ki bi jo javni pregled verjetno odkril, avtorji pa bi s tem dobili možnost, da jo odpravijo.

Druga možnost pa je seveda tudi ta, da so v zaprte sisteme morda namerno vgrajene kakšne ranljivosti. Kar nas po razkritjih Edwarda Snowdna nikakor ne bi smelo presenetiti. Pomenljiva je izjava Bruca Schneierja iz leta 2002 : »Ne morem se spomniti nobenega kriptografskega sistema razvitega na skrivaj, v katerem ne bi, potem ko je bil razkrit javnosti, kriptografska skupnost našla napake.« Primerov takšnih rešitev je ogromno. Naj omenimo samo ranljivosti v šifrirnem algoritmu GSM mobilne telefonije A5/1, ki jih je hekerska skupnost odkrila pred nekaj leti in s katerimi ste bralci tega zapisa gotovo dobro seznanjeni.

Zato preprosto ni mogoče razumeti avtorjev Strategije, ki per se problematizirajo uporabo tujih šifrirnih rešitev. Razen seveda, če imajo v mislih uporabo zaprtih kriptografskih rešitev, ki so bile razvite ob sodelovanju tujih obveščevalnih služb. A ravno iz tega razloga bi bila smiselna uporaba odprtih, preverjenih in že uveljavljenih rešitev. Ki pa bi jih bilo kljub temu smiselno še enkrat preveriti oziroma naročiti njihovo poglobljeno varnostno analizo.

Varnostna analiza kriptografskih rešitev namreč ne vključuje samo preverjanja varnosti šifrirnega algoritma, pač pa tudi preverjanje ustreznosti implementacije algoritmov, analizo šifrirnih ključev, varnost generatorjev naključnih števil (spomnimo se samo na Dual_EC_DRBG v okolju Windows in pomanjkljivost v naključnem generatorju števil Linux distribucije Debian!) ter možnosti drugih posrednih napadov (ang. channel side attacks).

Seveda pa se je treba zavedati, da transparentnost oz. odprtost kriptografskih rešitev varnosti ne zagotavlja sama po sebi, zato so vsekakor smiselna načrtna varnostna preverjanja. Znani so številni primeri odprtokodnih šifrirnih rešitev, ki niso bile nikoli resno varnostno preverjene, dokler nekoč po naključju v njih ni bila najdena kakšna resna pomanjkljivost. Če omenimo samo dva znana primera: ranljivost v OpenGPG iz marca 2006, ki je omogočala ponarejanje digitalno podpisanih elektronskih sporočil, ter serija ranljivosti najdenih v OpenSSL od leta 2014 dlje.

* * *

Poleg tega pa se je treba zavedati, da so eden najpomembnejših dejavnikov varnosti oziroma učinkovite uporabe kriptografije pravzaprav uporabniki. To se je pokazalo tudi na primeru afere Piranleaks. Še tako sofisticirana zaščita je neučinkovita, če je uporabniki ne uporabljajo ali pa jo uporabljajo napačno. Zato je pomembno tudi, kako je šifrirna tehnologija zasnovana, kakšna je njena uporabniška izkušnja in kaj je bilo storjenega na področju trajnostnega izobraževanja uporabnikov in dviganja njihove informacijsko-varnostne zavesti.

Zato se ni mogoče strinjati z uvodnim stavkom strategije (stran 5), ki pravi: »Delo na področju kriptologije je interdisciplinarno in zahteva povezovanje profilov strokovnjakov, kot so inženirji za programsko in strojno računalniško opremo in matematiki.« Informatiki, programerji in matematiki so seveda pomembni deležniki pri razvoju in implementaciji šifrirnih rešitev. A poleg njih mora ekipa, ki se s tem problemom ukvarja, vključevati še (vsaj) strokovnjake za uporabniško izkušnjo, oblikovanje ter zlasti izobraževanje.

Kriptografija namreč niso samo algoritmi, pomembna je tudi uporabniška izkušnja in izgled šifrirne aplikacije, lokalizacija (prevod uporabniškega vmesnika v slovenski jezik), priprava izobraževalnih gradiv, ustrezna implementacija v delovni proces itd. Uporaba mednarodno uveljavljenih odprtih rešitev zato nikakor ne izključuje vključevanja domačega znanja ter spodbujanja razvoja domačega gospodarstva in raziskav na področju kriptografije in kriptoanalize.

Žal se pri tem strategija omeji le na dve stvari: stimuliranje (vsaj treh) domačih podjetij, ki bi razvijala lastne šifrirne rešitve, oziroma zagotavljanje finančne pomoči pri razvoju prek razvojnih projektov (stran 8) ter štipendiranje kriptološkega kadra (stran 12). Strategija se tako osredotoča zgolj na razvoj novih rešitev, manjka pa celosten pristop h kriptografskemu varovanju informacij. Strategija tako ne omenja izobraževanj uporabnikov in varnostnih treningov, načrta implementacije šifrirnih rešitev, mednarodnega sodelovanja itd. Predvsem pa bi si želeli, da je izhodišče pri zagotavljanju varnosti v uporabi mednarodno uveljavljenih, preverjenih in predvsem odprtih rešitev, ne pa razvoj lastnih izdelkov, ki jim je težko zagotoviti ustrezno kakovost.

* * *

Dobre stvari v zvezi z omejeno strategijo sta tako pravzaprav le dve. Na prvem mestu je pohvalno dejstvo, da je slovenska država področje kriptografije prepoznala kot pomembno, kot nekaj, kar zahteva njeno posebno pozornost. Druga dobra stvar pa je, da gre pri omenjeni Strategiji zaenkrat še za osnutek oz. delovno gradivo v usklajevanju. Kar pomeni, da je še čas za razmislek. Upamo, da si ga bodo pristojni vzeli. Dejstvo je, da strategijo na področju kriptologije in informacijske varnosti vsekakor potrebujemo. A po našem mnenju ne na takšnih izhodiščih in v takšni obliki, kot je bila predstavljena.

Matej Kovačič je strokovnjak za informacijsko varnost z inštituta Jožef Stefan in nekdanji uslužbenec Komisije za preprečevanje korupcije. Zapis je objavil tudi na svojem blogu Pravokator.

Nastanek tega članka ste omogočili bralci z donacijami. Podpri Pod črto

Deli zgodbo 2 komentarja



Več iz teme: Komunikacijska varnost

Kako varno je naše komuniciranje z drugimi prek spleta, telefona in ostalih komunikacijskih kanalov? Preverjamo varnost različnih oblik komunikacije.

36 prispevkov

Kdo je odgovoren za slabo informacijsko varnost na UKC Ljubljana

UKC Ljubljana je slabo zavaroval podatke o zdravstvenem stanju posameznikov. Pooblaščenec za informacijsko varnost v UKC Ljubljana je nekdanji direktor …

Tema: Komunikacijska varnost
Članek,

Zakaj FURS strankam priporoča uporabo varnostno ranljivih brskalnikov

Finančna uprava je v začetku marca razburila z nasvetom, naj uporabniki Mac in Linux operacijskih sistemov prenehajo posodabljati brskalnik Firefox.

Tema: Komunikacijska varnost
Članek,

2 komentarja

Početak 14. 8. 2015, 12.57

Vse, kar bi ti sila zbirokratizirani uradniki potrebovali, je tehnično kompetenten tim, ki bi pripravili (uporabne) smernice, kajti zgolj pisanje politik samo po sebi še ni rešilo nobenega problema. Opletanje z raznimi matematiki in drugimi strokovnjaki, je mimo - tu pride prav zgolj znanje (nekdo, ki je tega vešč ali na tem področju strokovnjak) aplikativne kriptografije.

slavko 22. 1. 2016, 21.44

Dobro vprašanje: Zakaj bi moralo takšen posel dobiti slovensko podjetje? Kaj sploh je slovensko podjetje? Da so lastniki Slovenci, da so vsi zaposleni Slovenci? (koliko generacij nazaj, kaj če je oče Slovenec, mati pa ne, je to v redu)? Diši po igranju na domovinska čustva. Kot da slovenskim fantom/dekletom denar ne diši (podkupnine)? Se torej igra na karto domovinskih čustev, kot v kakšnem "pocukranem" ameriškem filmu, ali pa so že kakšne sprege, ki komaj čakajo, da pograbijo državni denar.

Dodaj odgovor

Vaš e-naslov ne bo objavljen. * označuje zahtevana polja

Zadnje objavljeno