KLJUCI
Kljucev mora biti toliko, da vsiljivec ne more uporabiti
pristopa grobe sile, tako da zaporedoma preizkua vse mocne
kljuce, dokler ne najdemo pravega. Vsi kljuci morajo biti enako
verjetni, saj bi bil drugace napad z grobo silo prelahek, ker bi
napadalec lahko preizkual najprej verjetneje kljuce.
Kljuci morajo biti potemtakem iz mnozice vseh moznih kljucev
izbrani nakljucno, kar zagotavlja enako moznost izbire vsem kljucem
pri vsaki izbiri. Problem nakljucnosti v racunalnitvu je tezji.
Najveckrat z racunalniki skoraj ne moremo zagotoviti prave nakljucnosti,
saj je pravzaprav vse dogajanje vnaprej programirano. Obicajno
imamo opravka s psevdo-nakljucnostjo, ki jo zagotavljajo primerni
algoritmi. Dobri psevdo-nakljucni algoritmi sicer zagotavljajo
dokaj pravilne verjetnostne porazdelitve, ne zagotavljajo pa
nakljucnosti pri vsaki posamezni izbiri. Vecina algoritmov za racunanje
psevdo-nakljucnih tevil namrec temelji na svojem notranjem
stanju, ki je posledica prejnjega izracuna. To pomeni, da
je izracun psevdo-nakljucnega tevila odvisen od njegovega
predhodnika, torej bi izbiro kljuca na tak nacin lahko
predvideli, ce bi poznali prejnje izbire. Ko psevdo-nakljucen
algoritem pretece vsa svoja notranja stanja, res lahko zagotavlja
enako moznost vsem svojim izhodom, vendar natanko v taknem
vrstnem redu, kot ga doloca zacetno stanje. Ce smo dovolj spretni
in poznamo dovolj zaporednih kljucev, lahko vse naslednje kljuce
uganemo. Znani so celo algoritmi, ki poskuajo iz izbranega
zaporedja uganiti psevdo-nakljucni generator, ki ga je ustvaril.
Psevdo-nakljucnih tevil skratka ne moremo uporabiti za
izdelovanje ifriranih kljucev. Dobro izbiro kljucev
zagotavljamo z nakljucnim procesom, katerega izidi so neodvisni
drug od drugega, kot je na primer metanje "pravicne"kocke.
Ce je taka metoda prepocasna, ker potrebujemo prevec izidov,
lahko uporabimo posebno racunalniko strojno opremo -
strojni nakljucni generator. Ker je tako opremo tezko dobiti, pa
e poceni ni, se moramo vsemu navkljub vcasih oprijeti
nekaterih preizkuenih programskih reitev. Taka
reitev je lahko standard ANSIX9.17, ki je v bistvu
psevdo-nakljucni generator, a uporablja kot parameter tudi cas,
naslednji izhod pa izracuna iz notranjega stanja z dobrim
ifrirnim algoritmom. Na ta nacin poskua zagotoviti
nepredvidljivost zaporedja izhodov.
Simetricni kljuci
Simetricni kljuci se lahko razbijajo samo z grobo silo, to je s
preizkuanjem vseh moznih kljucev. To pomeni, da vsaj
trenutno niso znane druge metode, res pa je, da jih teoretiki -
kriptologi tudi ne napovedujejo. Najbolj razirjeni simetricni
algoritmi kot so DES, 3DES, IDEA ali Blowfish, so ze tolikaj
preizkueni (in bili tolikokrat napadani), da lahko
verjamemo, da ni druge poti za razbijanje algoritma kot uporaba
grobe sile. Varnost kriptograma je zato v celoti odvisna od dolzine
kljuca. 40-bitne kljuce kot jih uporabljajo za protokol SSL
evropske razlicice spletnih brkljalnikov (amerika vlada
namrec prepoveduje izvoz mocnejih kriptografskih tehnik)
danes razbije ze malo mocneji osebni racunalnik (na primer
Pentium 200) v nekaj urah. Tudi 56-bitni kljuc, ki je osnova
algoritma DES (Data Encryption Standatd) in ki je bil dolga leta
uradni kriptografski algoritem amerike vlade, se da danes
razbiti s pomocjo superracunalnika v nekaj urah. Amerika
agencija za nacionalno varnost (NSA) ima zagotovo na razpolago
dovolj mocne racunalnike, da razbijejo tudi 64-, mogoce celo
72-bitni kljuc. Algoritem IDEA (International Data Encryption
Algorithm), ki uporablja 128-bitni kljuc, ali recimo algoritem
3DES (modifikacija DES-a s trikratno dolzino kljuca) pa sta izven
dosega dananjih, zelo verjetno pa tudi prihodnjih racunalnikov.
Paranoiki lahko uporabijo 256-bitni kljuc (na primer pri
algoritmu BlowFish), ki se ga ne bo dalo nikoli razbiti, saj v
vsem vesolju za razbitje takega kljuca ni niti dovolj materije,
niti dovolj energije, da o casu niti ne govorimo.
Asimetricni kljuci
Asimetricni algoritmi so racunsko mnogo bolj zahtevni (10 do 1000
krat), tako da se uporabljajo za enkratne operacije
(identifikacijo in avtentifikacijo). Asimetricni algoritmi so
zasnovani na cistih matematicnih problemih (pri najbolj
popularnem algoritmu RSA gre za razstavljanje velikih tevil
na prafaktorje), lahko razen razvoja procesorske moci racunalnikov
pricakujemo tudi napredek matematicne teorije za razbijanje
asimetricnih kljucev, kar se je v zadnjih desetih letih ze
nekajkrat izkazalo. Trenutno se da s superracunalnikom razbiti
512-bitne kljuce in ze prej omenjena amerika Agencija (NSA)
ima verjetno na razpolago dovolj procesne moci da razbije tudi
768-bitne kljuce. Po mnenju strokovnjakov bodo 1024-bitni kljuci
varni samo do leta 2000. Vecina jih sicer domneva, da so
2084-bitni kljuci varni "od tod do vecnosti". Varni
komunikacijski protokoli kot sta na primer SSL ali SSH
kombinirajo simetricne in asimetricne algoritme; asimetricne za
vzpostavitev varnih povezav (izmenjavo kljucev), simetricne pa za
prenos podatkov po teh varnih kanalih. Kot uporabnike nas zanima
predvsem varnost kriptografskih algoritmov. Le-ta je, ce samemu
algoritmu zaupamo, odvisna izkljucno od dolzine kljuca s pomocjo
katerega so podatki enkriptirani.
Nazaj