Računala Windows Internet

Protokoli za distribuciju ključeva. Upravljanje ključevima Distribucija ključeva koja uključuje centar za distribuciju ključeva

Upravljanje ključem

Osim odabira kriptografskog sustava prikladnog za određeni IC, važno pitanje je upravljanje ključevima. Koliko god sam kriptosustav bio složen i siguran, on se temelji na korištenju ključeva. Ako je za osiguravanje povjerljive razmjene informacija između dva korisnika proces razmjene ključeva trivijalan, onda je u IS-u, gdje se broj korisnika kreće na desetke i stotine, upravljanje ključevima ozbiljan problem.

Pod, ispod ključne informacije se shvaća kao ukupnost svih aktivnih ključeva u IS-u. Ako nije osigurana dovoljno pouzdana kontrola ključnih informacija, napadač, nakon što ih preuzme, dobiva neograničen pristup svim informacijama.

Upravljanje ključem- informacijski proces koji uključuje tri elementa:

* generiranje ključeva;

* nakupljanje ključeva;

* distribucija ključeva.

Razmotrimo kako ih treba implementirati kako bi se osigurala sigurnost ključnih informacija u IS-u.

Generiranje ključeva

Na samom početku razgovora o kriptografskim metodama rečeno je da ne smijete koristiti neslučajne ključeve kako biste ih lakše pamtili. Ozbiljni IC-ovi koriste posebne hardverske i softverske metode za generiranje slučajnih ključeva. U pravilu se koriste PSC senzori. Međutim, stupanj slučajnosti njihove generacije trebao bi biti dovoljno visok. Idealni generatori su uređaji koji se temelje na "prirodnim" slučajnim procesima. Na primjer, serijski uzorci generiranja ključeva na temelju bijeli radio šum. Drugi slučajni matematički objekt su decimalna mjesta iracionalnih brojeva, na primjer, ili e, koji se izračunavaju standardnim matematičkim metodama.

U IS-ovima sa srednjim sigurnosnim zahtjevima sasvim su prihvatljivi softverski generatori ključeva koji izračunavaju PRNG kao složenu funkciju trenutnog vremena i (ili) broja unesenog od strane korisnika.

Akumulacija ključeva

Pod, ispod gomilanje ključeva odnosi se na organizaciju njihovog skladištenja, računovodstva i uklanjanja.

Budući da je ključ za napadača najatraktivniji objekt, otvarajući mu put do povjerljivih informacija, posebnu pozornost treba posvetiti pitanjima akumulacije ključeva.

Tajni ključevi nikada ne bi trebali biti eksplicitno napisani na mediju koji se može čitati ili kopirati.

U prilično složenom IS-u jedan korisnik može raditi s velikom količinom ključnih informacija, a ponekad čak postaje potrebno organizirati mini-baze podataka prema ključnim informacijama. Takve baze podataka odgovorne su za prihvaćanje, pohranu, računovodstvo i brisanje korištenih ključeva.

Dakle, svaka informacija o korištenim ključevima mora biti pohranjena u šifriranom obliku. Zovu se ključevi koji šifriraju informacije o ključu glavni ključevi. Poželjno je da svaki korisnik zna glavne ključeve napamet, te da ih uopće ne pohranjuje na materijalne medije.

Vrlo važan uvjet za sigurnost informacija je periodično ažuriranje ključnih informacija u IS-u. U tom slučaju treba ponovno dodijeliti i obične i glavne ključeve. U posebno odgovornom IS-u poželjno je svakodnevno ažurirati ključne informacije.

Pitanje ažuriranja ključnih informacija također je povezano s trećim elementom upravljanja ključevima – distribucijom ključeva.

Distribucija ključeva

Distribucija ključeva je najkritičniji proces u upravljanju ključevima. Za njega postoje dva zahtjeva:
  1. Učinkovitost i točnost distribucije
  2. Tajnost distribuiranih ključeva.
U posljednje vrijeme primjetan je pomak prema korištenju kriptosustava s javnim ključem, u kojem problem distribucije ključeva nestaje. Ipak, distribucija ključnih informacija u IS-u zahtijeva nova učinkovita rješenja.

Distribucija ključeva između korisnika provodi se pomoću dva različita pristupa:

  1. Stvaranjem jednog ili više ključnih distribucijskih centara. Nedostatak ovakvog pristupa je što distribucijski centar zna kome i koji ključevi su dodijeljeni, a to vam omogućuje čitanje svih poruka koje kruže u IS-u. Moguće zlouporabe značajno utječu na zaštitu.
  2. Izravna razmjena ključeva između korisnika informacijskog sustava.
U ovom slučaju, problem je pouzdana autentifikacija subjekata.

U oba slučaja, autentičnost komunikacijske sesije mora biti zajamčena. To se može pružiti na dva načina:

  1. Mehanizam zahtjev-odgovor, koji se sastoji od sljedećeg. Ako korisnik A želi biti siguran da poruke koje prima od B nisu lažne, on uključuje nepredvidiv element (zahtjev) u poruku poslanu B. Kada odgovara, korisnik B mora izvršiti neku operaciju na ovom elementu (na primjer, dodati 1). To se ne može učiniti unaprijed, jer se ne zna koji će slučajni broj doći u zahtjevu. Nakon što primi odgovor s rezultatima radnji, korisnik A može biti siguran da je sesija autentična. Nedostatak ove metode je mogućnost uspostavljanja premda složenog uzorka između zahtjeva i odgovora.
  2. Mehanizam vremenske oznake ("vremenska oznaka"). To znači fiksiranje vremena za svaku poruku. U tom slučaju svaki korisnik IS-a može znati koliko je "stara" dolazna poruka.
U oba slučaja treba koristiti šifriranje kako bi se osiguralo da odgovor nije poslao napadač i da vremenska oznaka nije promijenjena.

Korištenje vremenskih oznaka otvara problem dopuštenog vremenskog intervala odgode za autentifikaciju sesije. Uostalom, poruka s "vremenskim pečatom" u načelu se ne može odmah prenijeti. Osim toga, satovi računala primatelja i pošiljatelja ne mogu se apsolutno sinkronizirati. Kakvo kašnjenje "pečata" smatra se sumnjivim.

Stoga se u stvarnim IC-ovima, na primjer, u sustavima plaćanja kreditnim karticama, koristi drugi mehanizam autentifikacije i zaštite od krivotvorina. Korišteni interval je od jedne do nekoliko minuta. Velik broj poznatih metoda krađe elektroničkog novca temelji se na "uglavljenju" u ovaj jaz s lažnim zahtjevima za povlačenje.

Kriptosustavi javnog ključa mogu se koristiti za razmjenu ključeva koristeći isti RSA algoritam.

Ali Diffie-Hellmanov algoritam pokazao se vrlo učinkovit, dopuštajući dvama korisnicima da razmijene ključ bez posrednika, koji se potom može koristiti za simetrično šifriranje.

Diffie-Hellmanov algoritam

Diffie i Helman predložili su stvaranje kriptografskih sustava s javnim ključem diskretna eksponencijalna funkcija.

Nepovratnost transformacije u ovom slučaju osigurana je činjenicom da je vrlo lako izračunati eksponencijalnu funkciju u konačnom Galoisovom polju koje se sastoji od str elementi. ( str- ili prost broj ili prost na bilo koji stepen). Izračunavanje logaritama u takvim poljima je mnogo dugotrajnija operacija.

Ako je a y= x, 1<x<str-1, gdje je fiksni element polja GF (p), onda x= gle g y iznad GF (p). Imati x, lako je izračunati y. To će zahtijevati 2 ln( x+y) operacije množenja.

Inverzni računski problem x iz y bit će dosta teško. Ako je a str je odabran dovoljno ispravno, tada će za izvlačenje logaritma biti potrebni proračuni proporcionalni

L (p) = exp((ln str U ln str) 0.5 }

Za razmjenu informacija, prvi korisnik bira nasumični broj x 1 , jednako vjerojatan cijeli broj 1... str-jedan. Taj broj drži u tajnosti, a broj šalje drugom korisniku

y 1 = x mod str

Drugi korisnik radi isto, generira x 2 i izračunavanje y 2, šaljući ga prvom korisniku. Kao rezultat toga, oni mogu izračunati k 12 = x 1 x 2 mod str.

Kako bi izračunali k 12, prvi korisnik podiže y 2 na moć x jedan . Drugi korisnik čini isto. Dakle, oba korisnika imaju zajednički ključ k 12, koji se može koristiti za šifriranje informacija s konvencionalnim algoritmima. Za razliku od RSA algoritma, ovaj vam algoritam ne dopušta šifriranje stvarnih informacija.

Bez znanja x 1 i x 2, napadač bi mogao pokušati izračunati k 12 , znajući samo presretnuti y 1 i y 2. Ekvivalencija ovog problema s problemom izračunavanja diskretnog logaritma glavno je i otvoreno pitanje u sustavima s javnim ključem. Jednostavno rješenje još nije pronađeno. Dakle, ako je za izravnu transformaciju 1000-bitnih prostih brojeva potrebno 2000 operacija, onda će za inverznu transformaciju (izračun logaritma u Galoisovom polju) - trebati oko 10 30 operacija.

Kao što vidite, uz svu jednostavnost Diffie-Hellmanovog algoritma, njegov drugi nedostatak u usporedbi s RSA sustavom je nepostojanje zajamčene niže procjene složenosti otvaranja ključa.

Osim toga, iako opisani algoritam zaobilazi problem prijenosa skrivenog ključa, ostaje potreba za autentifikacijom. Bez dodatnih sredstava, jedan od korisnika ne može biti siguran da je ključeve zamijenio upravo onim korisnikom koji mu je potreban. U ovom slučaju ostaje opasnost od imitacije.

Kao generalizaciju rečenog o raspodjeli ključeva treba reći sljedeće. Zadatak upravljanja ključevima svodi se na pronalaženje takvog protokola za distribuciju ključeva koji bi omogućio:

* mogućnost odbijanja od ključnog distribucijskog centra;

* Međusobna autentifikacija sudionika sesije;

* Potvrda autentičnosti sesije mehanizmom zahtjev-odgovor, korištenjem softvera ili hardvera za to;

* korištenjem minimalnog broja poruka u razmjeni ključeva.

Koliko god da je sam kriptosustav složen i siguran, temelji se na korištenju ključeva. Ako je proces razmjene ključeva trivijalan kako bi se osigurala povjerljiva razmjena informacija između dva korisnika, onda u sustavu u kojem se broj korisnika kreće na desetke i stotine, upravljanje ključevima predstavlja ozbiljan problem.

Ključne informacije se shvaćaju kao ukupnost svih ključeva koji djeluju u sustavu. Ako nije osigurano dovoljno pouzdano upravljanje ključnim informacijama, tada, nakon što ih preuzme, napadač dobiva neograničen pristup svim informacijama.

Upravljanje ključem je informacijski proces koji uključuje tri elementa:

    generiranje ključeva;

    nakupljanje ključeva;

    distribucija ključeva.

Generiranje ključeva. U stvarnim sustavima koriste se posebne hardverske i softverske metode za generiranje slučajnih ključeva. U pravilu se koriste generatori slučajnih brojeva. Međutim, stupanj slučajnosti njihove generacije trebao bi biti dovoljno visok. Idealni generatori su uređaji koji se temelje na "prirodnim" slučajnim procesima. Na primjer, generiranje ključeva na temelju bijelog radio šuma. Drugi slučajni matematički objekt su decimalna mjesta iracionalnih brojeva, kao što su  ili e, koji se izračunavaju standardnim matematičkim metodama.

U sustavima sa srednjim sigurnosnim zahtjevima sasvim su prihvatljivi softverski generatori ključeva, koji izračunavaju slučajne brojeve kao složenu funkciju trenutnog vremena i/ili broja koji unese korisnik.

Akumulacija ključeva. Pod akumulacijom ključeva podrazumijeva se organizacija njihove pohrane, računovodstva i brisanja.

Budući da je ključ napadaču najatraktivniji objekt, koji mu otvara put do povjerljivih informacija, problematici akumulacije ključeva treba posvetiti posebnu pozornost.

Tajni ključevi nikada ne bi trebali biti eksplicitno napisani na mediju koji se može čitati ili kopirati.

U prilično složenom sustavu jedan korisnik može raditi s velikom količinom ključnih informacija, a ponekad čak postaje potrebno organizirati i minibaze ključnih informacija. Takve baze podataka odgovorne su za prihvaćanje, pohranjivanje, snimanje i brisanje korištenih ključeva.

Svaka informacija o korištenim ključevima mora biti pohranjena u šifriranom obliku. Ključevi koji šifriraju informacije o ključu nazivaju se glavnim ključevima. Poželjno je da svaki korisnik zna glavne ključeve napamet i da ih uopće ne pohranjuje na bilo koji materijalni medij.

Vrlo važan uvjet za informacijsku sigurnost je periodično ažuriranje ključnih informacija u sustavu. U tom slučaju treba ponovno dodijeliti i obične i glavne ključeve. U posebno kritičnim sustavima, ključne informacije moraju se svakodnevno ažurirati.

Pitanje ažuriranja ključnih informacija također je povezano s trećim elementom upravljanja ključevima – distribucijom ključeva.

Distribucija ključeva. Distribucija ključeva je najkritičniji proces u upravljanju ključevima. Ima dva zahtjeva:

    učinkovitost i točnost distribucije;

    tajnost distribuiranih ključeva.

U posljednje vrijeme primjetan je pomak prema korištenju kriptosustava s javnim ključem, u kojem problem distribucije ključeva nestaje. Ipak, distribucija ključnih informacija u sustavu zahtijeva nova učinkovita rješenja.

Distribucija ključeva između korisnika provodi se pomoću dva različita pristupa:

1 Stvaranjem jednog ili više ključnih distribucijskih centara. Nedostatak ovakvog pristupa je što distribucijski centar zna kome i koji su ključevi dodijeljeni, a to vam omogućuje čitanje svih poruka koje kruže sustavom. Moguće zlouporabe značajno utječu na zaštitu.

2 Izravna razmjena ključeva između korisnika sustava. U ovom slučaju, problem je pouzdana autentifikacija subjekata.

U oba slučaja, autentičnost komunikacijske sesije mora biti zajamčena. To se može pružiti na dva načina:

1 Mehanizam zahtjev-odgovor, koji je kako slijedi. Ako korisnik A želi biti siguran da poruke koje prima od korisnika B nisu lažne, on uključuje nepredvidiv element (zahtjev) u poruku poslanu B. Kada odgovara, korisnik B mora izvršiti neku operaciju na ovom elementu (na primjer, dodati 1). To se ne može učiniti unaprijed, jer se ne zna koji će slučajni broj doći u zahtjevu. Nakon što primi odgovor s rezultatima radnji, korisnik A može biti siguran da je sesija originalna. Nedostatak ove metode je mogućnost uspostavljanja, iako složenih, obrazaca između zahtjeva i odgovora.

2 Mehanizam vremenske oznake. To podrazumijeva fiksiranje vremena za svaku poruku. U tom slučaju svaki korisnik sustava može znati koliko je "stara" dolazna poruka.

U oba slučaja treba koristiti šifriranje kako bi se osiguralo da odgovor nije poslao napadač i da vremenska oznaka nije promijenjena.

Kada koristite vremenske oznake, postoji problem s dopuštenim vremenskim intervalom odgode za autentifikaciju sesije. Uostalom, poruka s vremenskom oznakom, u principu, ne može se odmah prenijeti. Osim toga, računalni satovi primatelja i pošiljatelja ne mogu se savršeno sinkronizirati.

Kriptosustavi javnog ključa mogu se koristiti za razmjenu ključeva koristeći isti RSA algoritam.

Ali Diffie-Hellmanov algoritam pokazao se vrlo učinkovit, dopuštajući dvama korisnicima da razmijene ključ bez posrednika, koji se potom može koristiti za simetrično šifriranje.

Diffie-Hellmanov algoritam. Diffie i Helman predložili su diskretnu funkciju eksponiranja za stvaranje kriptografskih sustava s javnim ključem.

Nepovratnost transformacije u ovom slučaju osigurana je činjenicom da je prilično lako izračunati eksponencijalnu funkciju u konačnom Galoisovom polju koje se sastoji od p elemenata ( str je ili prost ili prost na bilo koji stepen). Izračunavanje logaritama u takvim poljima je mnogo dugotrajnija operacija.

Za razmjenu informacija, prvi korisnik bira nasumični broj x 1 , jednaka vjerojatnost cijelih brojeva od 1 do str– 1. Taj broj čuva u tajnosti, a broj šalje drugom korisniku y 1 = , gdje je α fiksni element Galoisovog polja GF(str), koji je zajedno s p unaprijed distribuiran među korisnicima.

Drugi korisnik radi isto, generira x 2 i izračunavanje y 2, šaljući ga prvom korisniku. Kao rezultat toga, oboje mogu izračunati zajednički tajni ključ k 12 =
.

Kako bi izračunali k 12, prvi korisnik podiže y 2 na moć x 1 i pronalazi ostatak nakon dijeljenja s str. Drugi korisnik radi isto, samo koristeći y 1 i x 2. Dakle, oba korisnika imaju zajednički ključ k 12, koji se može koristiti za šifriranje informacija s konvencionalnim algoritmima. Za razliku od RSA algoritma, ovaj algoritam ne šifrira stvarne informacije.

Bez znanja x 1 i x 2, napadač bi mogao pokušati izračunati k 12, znajući samo presretnuti y 1 i y 2. Ekvivalencija ovog problema s problemom izračunavanja diskretnog logaritma glavno je i otvoreno pitanje u sustavima s javnim ključem. Jednostavno rješenje još nije pronađeno. Dakle, ako izravna transformacija 1000-bitnih prostih brojeva zahtijeva 2000 operacija, tada će inverzna transformacija (izračunavanje logaritma u Galoisovom polju) zahtijevati oko 1030 operacija.

Kao što se može vidjeti, unatoč jednostavnosti Diffie-Hellmanovog algoritma, njegov nedostatak u odnosu na RSA sustav je nepostojanje zajamčene donje granice za složenost ključnog otkrivanja.

Osim toga, iako opisani algoritam zaobilazi problem prijenosa skrivenog ključa, ostaje potreba za autentifikacijom. Bez dodatnih sredstava, jedan od korisnika ne može biti siguran da je razmijenio ključeve s točnim korisnikom koji mu je potreban.

Upravljanje ključem

Osim odabira kriptografskog sustava prikladnog za određeni IC, važno je pitanje upravljanje ključevima. Koliko god da je sam kriptosustav složen i siguran, temelji se na korištenju ključeva. Da bi se osigurala povjerljiva razmjena informacija između dva korisnika, proces razmjene ključeva je trivijalan, ali u IS-u, gdje se broj korisnika kreće na desetke i stotine, upravljanje ključevima predstavlja ozbiljan problem.

Ključna informacija se shvaća kao ukupnost svih ključeva koji djeluju u IS-u. Ako nije osigurano dovoljno pouzdano upravljanje ključnim informacijama, napadač, nakon što ih preuzme, dobiva neograničen pristup svim informacijama.

Upravljanje ključevima je informacijski proces koji uključuje tri elementa: generiranje ključeva, akumulaciju ključeva, distribuciju ključeva.

Generiranje ključeva

Nemojte koristiti nenasumične tipke kako biste ih lakše zapamtili. U ozbiljnim IC-ovima koriste se posebne hardverske i softverske metode za generiranje slučajnih ključeva. Stupanj slučajnosti njihove generacije trebao bi biti dovoljno visok. Idealni generatori su uređaji koji se temelje na prirodnim slučajnim procesima. Na primjer, pojavili su se serijski uzorci generiranja ključeva na temelju bijelog radiošuma.

Akumulacija ključeva

Pod akumulacijom ključeva podrazumijeva se organizacija njihove pohrane, računovodstva i brisanja. Tajni ključevi nikada ne bi trebali biti eksplicitno napisani na mediju koji se može čitati ili kopirati.

U prilično složenom IS-u jedan korisnik može raditi s velikom količinom ključnih informacija, a ponekad čak postaje potrebno organizirati mini baze podataka ključnih informacija. Takve baze podataka odgovorne su za prihvaćanje, pohranjivanje, računovodstvo i brisanje korištenih ključeva.

Vrlo važan uvjet za sigurnost informacija je periodično ažuriranje ključnih informacija u IS-u. U posebno odgovornom IS-u poželjno je svakodnevno ažurirati ključne informacije.

Distribucija ključeva

Ovo je najodgovorniji proces u ključnom menadžmentu. Nametnuta su mu dva zahtjeva: učinkovitost i točnost distribucije i tajnost distribuiranih ključeva.

Distribucija ključeva između korisnika provodi se pomoću dva različita pristupa:

stvaranjem jednog ili više ključnih distribucijskih centara.

Nedostatak ovakvog pristupa je što distribucijski centar zna kome i koji ključevi su dodijeljeni, a to vam omogućuje čitanje svih poruka koje kruže u IS-u. Moguće zlouporabe značajno utječu na zaštitu.

izravna razmjena ključeva između korisnika informacijskog sustava.

U ovom slučaju, problem je pouzdana autentifikacija subjekata.

U oba slučaja, autentičnost komunikacijske sesije mora biti zajamčena.

Kao generalizaciju rečenog o raspodjeli ključeva treba reći sljedeće. Zadatak upravljanja ključevima svodi se na pronalaženje protokola za distribuciju ključeva koji bi omogućio:

Prilika da se isključite iz ključnog distribucijskog centra

međusobna autentifikacija sudionika sesije

potvrda autentičnosti sesije mehanizmom zahtjev-odgovor, korištenje softvera ili hardvera za to, korištenje minimalnog broja poruka tijekom razmjene ključeva.

Predavanje 6: Upravljanje kriptografskim ključevima. kriptografski protokoli.

pitanja:

1. kriptografski protokoli.

2. Distribucija tajnih ključeva.

3. Distribucija javnih ključeva.

4. Distribucija tajnih ključeva korištenjem sustava javnih ključeva.

1 Kriptografski protokoli.

Kriptografski protokol - skup formaliziranih pravila koja opisuju slijed radnji koje izvode dvije ili više strana kako bi riješile problem zaštite informacija korištenjem kriptografije. To jest, kriptografski protokol uključuje neki kriptografski algoritam.

U svakodnevnom životu neformalni protokoli se koriste gotovo posvuda:

· kada igrate karte;

· prilikom narudžbe robe putem telefona.

Ovi protokoli su razvijeni dugo vremena i rade prilično pouzdano.

Računalni protokoli su sasvim druga stvar. Da bi radili ono što ljudi rade bez razmišljanja, računalima su potrebni formalni protokoli.

Kako bi se olakšala demonstracija rada protokola, koristi se nekoliko sudionika:

· Alice je prva sudionica.

· Bob je drugi sudionik.

· Carol je sudionica tripartitnih protokola.

· Dave je četverosmjerni protokol.

· Eva je presretač poruka.

· Mallory je aktivni provalnik.

· Trent je posrednik od povjerenja.

· Walter je upravitelj (čuvari Alice i Boba).

· Peggy je izazivač (pokušava nešto dokazati).

· Victor je verifikator (provjerava Peggy).

razlikovati:

· samostalne protokole;

· protokoli s posrednikom;

· sudački protokoli.

U samostalnim protokolima poštenje stranaka zajamčeno je samim protokolom. Za izvršavanje protokola nije potrebna treća strana. Odsutnost sporova osigurava se dizajnom protokola. Ovo je najbolja vrsta protokola, ali nažalost ovi protokoli nisu prikladni za svaku situaciju.

Alice Bob

Posrednički protokoli.

posrednikpozvao nezainteresirano treća strana, koja povjereno dovršiti izvršenje protokola. “Nezainteresiranost” znači da je posrednik ravnodušan kako prema rezultatu izvršenja protokola tako i prema bilo kojem od njegovih sudionika. Svi sudionici protokola riječi posrednika doživljavaju kao istinu, svi njegovi postupci prepoznati su kao ispravni.

U svakodnevnom životu posrednik može biti odvjetnik, agencija, banka itd. S računalnim mrežama situacija je složenija.


Protokoli s arbitrom.


Arbitarje posebna vrsta posrednika. to nezainteresirani i od povjerenja Treća strana. Za razliku od posrednika, on ne sudjeluje nužno u izvršenju pojedinog protokola, već samo kada dođe do nesuglasica između stranaka.

Suci su primjer.

Poznati su računalni protokoli za arbitražu. Ovi se protokoli oslanjaju na pretpostavku da su stranke poštene. Međutim, ako netko posumnja na prijevaru, treća strana od povjerenja može razotkriti prijevaru na temelju postojećeg skupa podataka. Osim toga, dobar arbitražni protokol omogućuje arbitru da identificira napadača. Dakle, arbitražni protokoli nemojte spriječiti, a otkriti prijevaru. U ovom slučaju, neizbježnost otkrivanja djeluje kao preventivna mjera koja obeshrabruje napadača.

Organizacija komunikacije korištenjem simetrične kriptografije.

Simetrični model kriptosustava:

1. Alice i Bob biraju kriptosustav.

2. Alice i Bob biraju ključ.

3. Alice šifrira otvoreni tekst poruke koristeći algoritam šifriranja i ključ.

4. Alice šalje šifrirani tekst Bobu.

5. Bob dešifrira šifrirani tekst pomoću ključa i dobiva otvoreni tekst.

Eva, koja se nalazi između Alice i Boba, može samo prisluškivati ​​prijenos u koraku 4, a zatim će morati kriptoanalizirati šifrirani tekst. Ovo je pasivni napad koji koristi samo šifrirani tekst.

Eve može prisluškivati ​​korake 1 i 2. U dobrom kriptosustavu sigurnost ovisi o poznavanju ključa. Zbog toga je upravljanje ključevima toliko važno u kriptografiji.

Malloryjev aktivni kreker može ići dalje. U koraku 4, može prekinuti komunikacijsku liniju. Ili presretnite Aliceinu poruku i zamijenite je njezinom. Ne postoji način da Bob prepozna da poruku nije poslala Alice.

Alice ili Bob mogu dati kopiju ključa Evi i tako dalje.

Sumirajući, navodimo nedostaci simetričnih kriptosustava:

1. Stoga su ključevi jednako vrijedni kao i poruke koje šifriraju problem distribucije ključa.

2. Po primitku ključa moguće je generirati lažne poruke.

3. Ako će svaki par korisnika mreže koristiti zaseban ključ, ukupan broj ključeva brzo raste s brojem korisnika.

n korisnika - n (n - 1) / 2 - tipke,

10 korisnika - 45 ključeva,

100 korisnika - 4950 ključeva itd.

Uspostavljanje komunikacije korištenjem kriptografije javnog ključa.

1. Alice i Bob pristaju koristiti kriptosustav javnog ključa.

2. Bob šalje svoj javni ključ Alisi.

3. Alice šifrira svoju poruku koristeći Bobov javni ključ i šalje je Bobu.

4. Bob dešifrira poruku svojim privatnim ključem.

Time je otklonjen problem distribucije ključeva, koji je bolan za simetrične kriptosustave.


2. Distribucija tajnih ključeva.

Uz tradicionalno šifriranje, obje strane moraju dobiti isti ključ. Iz sigurnosnih razloga potrebne su česte promjene ključeva.

Zato snaga bilo kojeg simetričnog kriptografskog sustava uvelike ovisi o ključni distribucijski sustavi (tj. način dostave ključeva dvjema stranama).

Za dvije strane A i B raspodjela ključeva može se organizirati na različite načine:

1. Ključ bira strana A i fizički ga dostavlja B.

2. Ključ bira treća strana i fizički ga dostavlja A i B.

3. Jedna od strana prenosi novi ključ u šifriranom obliku koristeći stari ključ.

4. Treća strana C dostavlja ključ A i B preko sigurnih komunikacijskih kanala, tj. neki Centar za distribuciju ključeva (KDC).

Shema distribucije ključa (protokol) može biti centralizirano i distribuirano(s posrednikom i samodostatnim).

Razmotrite stavku 4.

Korištenje CRC-a uključuje organizaciju hijerarhije ključeva (najmanje dvije razine). Komunikacija između krajnjih korisnika šifrirana je pomoću privremenog ključa tzv ključ sesije . Ključ sesije se prima od CRC-a putem istih komunikacijskih kanala koji se koriste za dostavu podataka. Ključevi sesije se prenose u šifriranom obliku, a šifriraju se pomoću glavni ključ , zajedničko za CRC i ovog korisnika.

Potrebni su glavni ključevi N (prema broju korisnika). Distribuiraju se na nekriptografski način (fizička dostava primatelju).

Scenarij distribucije ključa (Središnja shema).

Pretpostavimo da korisnik A namjerava prenijeti informacije korisniku B i da je za zaštitu podataka potreban jednokratni ključ sesije.

Korisnik A ima tajni ključ K. a , poznat samo njemu i CRC-u, a korisnik B ima K b (K a i K b su glavni ključevi, K s – jednokratni ključ sesije).

Razmjena informacija odvija se na sljedeći način:

1. Korisnik A šalje zahtjev CRC-u za primanje ključa sesije za sigurnu komunikaciju s B.

Poslani zahtjev mora sadržavati:

- informacije koje omogućuju jedinstvenu identifikaciju A i B ( ID A, ID B);

- neki identifikator N 1 , jedinstven za svaki zahtjev i pozvan prilika. Prilika može biti vrijeme, brojač, slučajni broj.

2. CRC odgovara na zahtjev korisnika A, šifriranje odgovora ključem K a(glavni A). Jedini korisnik koji može pročitati odgovor je A (dakle, A je siguran da je poruka došla iz CRC-a).

Poruka odgovora uključuje sljedeće elemente:

· Dizajniran za A :

S (za povezivanje A s B).

- Zahtjev s twistom N 1 tako da korisnik A može uskladiti odgovor sa zahtjevom.

Dakle, A može osigurati da njegov zahtjev nije promijenjen na putu do CRC-a, a prilika ne dopušta brkati odgovor na ovaj zahtjev s odgovorom na prethodne zahtjeve.

· Dizajniran za B .

Jednokratni ključ sesije K s .

ID korisnika A - ID A (na primjer, mrežna adresa A).

Oba elementa su šifrirana pomoću ključa KB (glavni ključ CRC-a i B). Oni bi se naknadno trebali poslati u B kako bi uspostavili vezu i identificirali A.

E Ka [ K S ||Zahtjev|| N 1 || E Kb (K S, ID A)]

3. Korisnik A sprema svoj ključ sesije i šalje strani B informacije iz CMC-a namijenjene B.

Korisnik B prima K s i zna da je primljena informacija došla iz CRC-a (jer je šifrirana od strane C B, što je poznato samo B i CRC-u).

Dakle, A i B imaju ključ sesije. No prije razmjene podataka poželjno je učiniti sljedeće:

4. Korištenjem primljenog ključa sesije K s korisnik B šalje korisniku A novu priliku N2.

5. Uz pomoć K s korisnik A se vraća f (N 2 ). To je potrebno kako bi se B uvjerio da poruku koju je izvorno primio nije reproducirao napadač.

Dakle, nije osiguran samo prijenos ključa, već i provjera autentičnosti (4. i 5. korak).


Nije potrebno dodijeliti funkciju distribucije ključa jednom CRC-u. Povoljnije je koristiti neku CRC hijerarhiju. Što se češće mijenjaju ključevi sesije, to su pouzdaniji, ali distribucija ključeva sesije odgađa početak sesije razmjene podataka i povećava opterećenje mreže.

Korištenje CRC-a podrazumijeva da CRC treba ulijevati povjerenje i biti pouzdano zaštićen od zadiranja. Ovi zahtjevi se mogu odustati ako se koristi decentralizirana shema distribucije ključeva (samodostatna).

Decentralizirana shema distribucije ključeva.

Ključ sesije može se odrediti kao rezultat sljedećeg slijeda radnji:


1) A šalje zahtjev za primanje K s + prilika N 1 .

2) B odgovara šifriranjem odgovora korištenjem zajedničkog glavnog ključa A i B E MK m .

3) A vraća f (N 2 ), šifriranje s K s .

3. Distribucija javnih ključeva.

Jedna od glavnih primjena sheme šifriranja javnog ključa je rješenje za problem distribucije ključeva. Postoje dvije potpuno različite upotrebe šifriranja javnog ključa u ovom području:

1. distribucija javnih ključeva;

2. korištenjem šifriranja javnog ključa za distribuciju tajnih ključeva.

Predloženo je nekoliko metoda za distribuciju javnih ključeva. Zapravo, mogu se grupirati u sljedeće opće klase:

1. javna objava;

2. javno dostupan imenik;

4. certifikati javnog ključa.

1) Javna objava javnih ključeva (Nekontrolirana distribucija) .

Svaka strana uključena u razmjenu podataka može dati svoj javni ključ bilo kojoj drugoj strani ili prenijeti ključ preko sredstava komunikacije uopće svima - nekontrolirana distribucija javnih ključeva.

Ovaj pristup je prikladan, ali jedna mana: takvu javnu objavu može dati bilo tko, pa i napadač. To znači da se netko predstavlja kao korisnik A i šalje javni ključ drugom korisniku mreže ili nudi takav javni ključ za javnu upotrebu. Dok korisnik A otvara prijevaru i upozorava druge korisnike, krivotvoritelj će moći pročitati sve šifrirane poruke primljeni tijekom tog vremena za A, te će moći koristiti krivotvorene ključeve za autentifikaciju.

2) Javno dostupan imenik (centralizirana shema).

Viši stupanj sigurnosti može se osigurati korištenjem javno dostupnog dinamičkog kataloga javnih ključeva. Neki pouzdani centar ili organizacija trebali bi biti odgovorni za održavanje i distribuciju javnog kataloga. Takva shema treba uključivati ​​sljedeće elemente:

1. Autoritativni objekt koji održava imenik s unosima obrasca (ime, javni ključ) za svakog člana.

2. Svaki sudionik registrira svoj javni ključ. Takva registracija treba se obaviti ili na osobnom dolasku sudionika ili putem sigurnih komunikacijskih kanala.

3. Svaki sudionik može zamijeniti postojeći ključ novim u bilo kojem trenutku koristeći sredstva provjere autentičnosti. (Možda je privatni ključ na neki način ugrožen ili je mnogo informacija već preneseno pomoću njega.)

4. Cijeli katalog ili njegova ažuriranja se povremeno objavljuju.

Ova je shema sigurnija od pojedinačnih javnih objava, ali je i ranjiva. . Ako protivnik uspije dobiti privatni ključ objekta ovlaštenog za održavanje imenika, on moći izdati krivotvorene javne ključeve te stoga govori u ime bilo kojeg od sudionika u razmjeni podataka i čita poruke namijenjene bilo kojem sudioniku. Isti rezultat neprijatelj može postići sa promjene unosa pohranjenih u imeniku.

Najbolja zaštitadistribucija javnih ključeva može se postići strožom kontrolom distribucije javnih ključeva.

Tipičan scenarij prikazan je u nastavku. Scenarij pretpostavlja prisutnost nekog CRC-a ovlaštenog za održavanje dinamičkog kataloga javnih ključeva svih sudionika u razmjeni podataka. Osim toga, javni ključ centra je pouzdano poznat svakom od sudionika, ali samo centar zna odgovarajući privatni ključ. Pri tome se izvode sljedeće radnje:

(1) Inicijator A šalje poruku s datumskom/vremenskom oznakom (prilika N 1 ) na autoritativni izvor javnih ključeva sa zahtjevom za trenutni javni ključ sudionika B.

(2) Autoritativni izvor odgovara porukom koja je šifrirana korištenjem privatnog ključa autoritativnog izvora KR aut . Ovu poruku može dešifrirati izvornik A koristeći javni ključ autoritativnog izvora. Stoga pošiljatelj A može biti siguran da poruka dolazi iz autoritativnog izvora. Ova poruka treba sadržavati sljedeće:

· Javni ključ sudionika B , KU b ;

· Izvorni zahtjev tako da strana A može provjeriti da zahtjev nije izmijenjen na putu do ovlaštenog izvora.


· Originalni datum/vremenski žig (prilika N 1 ) tako da pošiljatelj A može provjeriti je li ovo odgovor na ovaj konkretni zahtjev.

(3) Inicijator A sprema javni ključ strane B i koristi ga za šifriranje poruke poslane primatelju B koja sadrži identitet pošiljatelja A ( ID A) i prilika N 1.

(4) (5) Ispitanik B prima javni ključ sudionika A od mjerodavnog izvora na potpuno isti način na koji je pošiljatelj A primio javni ključ primatelja B.

Do tog vremena, javni ključevi su dostavljeni sudionicima A i B, tako da da sada A i B mogu započeti sigurnu razmjenu podataka. Ali prije toga poželjno je napraviti dva Sljedeći dodatne radnje.

(6) Ispitanik B šalje poruku inicijatoru A, šifriranu sa KU A i koji sadrži priliku pošiljatelja A ( N 1 ), kao i novu priliku koju je stvorio sudionik B ( N 2). Prisutnost N 1 u poruci (6) uvjerava sudionika A da je pošiljatelj primljene poruke bio B.

(7) Vraća se inicijator A N2 šifriran javnim ključem strane B tako da strana B može provjeriti da je pošiljatelj odgovora A.

Tako, bit će potrebno ukupno sedam poruka. Međutim slati prve četiri poruke rijetko, budući da obje strane mogu pohraniti međusobne javne ključeve za kasniju upotrebu, što se obično naziva predmemoriranjem.

4) Certifikati javnog ključa .

Alternativni pristup je predložio Confelder. Temelji se na certifikatima.

Svaki certifikat sadrži javni ključ i druge informacije koje generira ovlašteno certifikacijsko tijelo i izdaje sudioniku.

Zahtjevi sustava :

1. Svaka strana mora moći pročitati certifikat kako bi odredila ime i javni ključ vlasnika certifikata.

2. Svaki sudionik trebao bi biti u mogućnosti provjeriti da potvrda dolazi iz autoritativnog izvora certifikata i da nije lažna.

4. Denningdodao je sljedeći uvjet - svaki sudionik mora moći provjeriti rok valjanosti certifikata.


Riža. Razmjena certifikata javnog ključa.

Svaki sudionik prijavljuje se na AIS , pružanje javnog ključa i traženje certifikata za njega putem sigurnog komunikacijskog obrasca.

AIS šalje certifikate C A i C B koji sadrže 1) rok važenja potvrde; 2) identifikator vlasnika; 3) javni ključ vlasnika certifikata. Certifikati su šifrirani privatnim ključem autoritativnog izvora.

I može poslati certifikat bilo kojem sudioniku.

Primatelj koristi javni ključ KU aut AIS za čitanje certifikata. To daje jamstvo da je certifikat došao od njega.

D KU [ C A ]= D KU [ E KR [ T , ID A , KU A ]]=(T , ID A , KU )

4. Distribucija tajnih ključeva korištenjem sustava javnih ključeva.

Neki će korisnici radije koristiti šifriranje javnim ključem samo u iznimnim slučajevima, zbog činjenice da su brzine prijenosa podataka relativno male kada se koristi enkripcija. Stoga bi se šifriranje javnog ključa trebalo više smatrati sredstvom distribucije tajnih ključeva koji se koriste za tradicionalno šifriranje.

1) Merkle shema (samostalni protokol)

Ako inicijator A namjerava razmijeniti podatke s korisnikom B, pretpostavlja se sljedeći postupak:


1. Strana A generira javni/privatni par ključeva ( KU A , KR A ) i šalje poruku strani B koja sadrži KU A i ID pošiljatelja A, ID A.

2. Primatelj B generira tajni ključ KS i prenosi taj ključ inicijatoru poruke A šifriran javnim ključem inicijatora A.

3. Korisnik A izračunava D KRa [ E KUa [ K S ]] za vraćanje tajnog ključa. Budući da samo strana A može dešifrirati ovu poruku, samo će strane A i B znati vrijednost K S .

Sada obje strane, A i B, mogu koristiti komunikaciju zaštićenu tradicionalnom enkripcijom s ključem sesije K S . Na kraju razmjene podataka, i A i B izbacuju K S . Unatoč svojoj jednostavnosti, ovaj protokol je vrlo atraktivan.

Dostojanstvo: Nema ključeva prije početka komunikacije i nema ključeva nakon završetka komunikacije. Stoga je rizik od kompromisa minimalan.. Istovremeno, komunikacija je zaštićena od prisluškivanja.

Mana: Ovaj protokol je ranjiv na aktivni napadi. Ako protivnik E ima sposobnost prodrijeti u komunikacijski kanal, tada može kompromitirati komunikaciju bez otkrivanja, na sljedeći način.

1. Sudionik A generira par javni/privatni ključ ( KU A , KR A KU A i ID sudionika A, ID A.

2. Protivnik E presreće poruku, generira vlastiti javni/privatni par ključeva ( KU E , KR E ) i šalje poruku primatelju B koja sadrži KU E || ID A.

3. B generira tajni ključ K S i prenosi E KUe [ K S ].

4. Protivnik E presreće ovu poruku i saznaje K S , računajući D KRe [ E KUe [ K S ]].

5. Protivnik E šalje poruku sudioniku A E KU a [ K S ].

Kao rezultat toga, oba sudionika, A i B, znat će K S , ali neće sumnjati u to K S također poznat neprijatelju E . Na ovaj način, ovaj jednostavan protokol je koristan samo kada je jedina moguća prijetnja pasivno presretanje poruka.

2) Distribucija tajnih ključeva uz povjerljivost i autentifikaciju.

Shema pruža zaštitu od aktivnih i pasivnih oblika napada. Kao pretpostavku, pretpostavite da su A i B već razmijenili javne ključeve koristeći jednu od gore opisanih shema.


(1) Strana A koristi javni ključ Strane B da pošalje Strani B šifriranu poruku koja sadrži identitet Strane A ( ID A) i prilika (N 1 ) koji se koristi za identifikaciju ove konkretne transakcije.

(2) Korisnik B dešifrira (1) koristeći KR B . Korisnik B šalje poruku korisniku A šifriranu sa KU A i koji sadrži priliku dobivenu od njega ( N 1) i nova prilika (N 2 ). Budući da je samo strana B mogla dešifrirati poruku (1), prisutnost N 1 u poruci (2) uvjerava sudionika A da je strana B ispitanik.

( 3) Strana A se vraća N 2 , šifriranje poruke javnim ključem strane B kako bi se osiguralo da je strana A ispitanik.

(4) Sudionik A bira tajni ključ K S i šalje poruku sudioniku B M = E KUb [E KRa [K S ]]. Šifriranje ove poruke B-ovim javnim ključem osigurava da je samo B može pročitati, a šifriranje s A-ovim privatnim ključem osigurava da je samo A može poslati.

(5) Strana B izračunava B KU a [ E KRb [ K S ]] za vraćanje tajnog ključa.

Prilikom razmjene tajnih ključeva, ova shema jamči i povjerljivost i provjeru autentičnosti.

3) Hibridna shema (tri razine).

Predstavlja hibridni pristup primijenjen na mainframe IBM . Ova posrednička shema uključuje sudjelovanje centra za distribuciju ključeva (KDC), s kojim svaki korisnik dijeli svoj glavni tajni ključ, i distribuciju tajnih ključeva sesije šifriranih glavnim ključem. Za distribuciju glavnih ključeva koristi se shema šifriranja javnog ključa. Ovaj troslojni pristup temelji se na sljedećoj logici:

· Brzina postupka .

Postoje mnoge aplikacije u kojima se ključevi sesije moraju vrlo često mijenjati. Distribucija ključeva sesije korištenjem sheme javnih ključeva mogla bi učiniti izvedbu sustava presporom zbog relativno visokih zahtjeva za računalnim resursima za šifriranje i dešifriranje pomoću takve sheme. U slučaju hijerarhije na tri razine, šifriranje s javnim ključem koristi se samo povremeno za promjenu glavnog ključa.

· kompatibilnost unatrag .

Hibridna shema može se jednostavno implementirati kao proširenje već postojeće sheme koja uključuje korištenje DRC-a, uz minimalne izmjene predviđene procedure i softvera.

Dodavanje sloja šifriranja javnog ključa osigurava siguran i učinkovit način distribucije glavnih ključeva. To je prednost u konfiguraciji u kojoj jedan DSC opslužuje veliki broj korisnika koji se nalaze na znatnoj udaljenosti jedan od drugog.

5. Diffie-Hellman razmjena ključeva.

Prvi objavljeni algoritam koji se temelji na javnim ključevima pojavio se u djelu Diffieja i Hellmana, u kojem je definiran sam koncept kriptografije s javnim ključem. Obično ovaj algoritam se zove Diffie-Hellmanova razmjena ključeva. Ova tehnologija razmjene ključeva implementirana je u niz komercijalnih proizvoda. .

Svrha sheme– pružiti dvama korisnicima sigurnu priliku da međusobno komuniciraju ključ kako bi ga mogli koristiti za šifriranje sljedećih poruka.

Kriptografska snaga Diffie-Hellmanovog algoritma oslanja se na poteškoću izračunavanja diskretnih logaritama . Formalno, diskretni logaritam se može definirati na sljedeći način. Prvo se određuje primitivni korijen prostog broja str- broj a, čiji potenci generiraju sve cijele brojeve od 1 do str-1. To znači da ako je a primitivni korijen prostog broja p , zatim svi brojevi

a mod p, a 2 mod p,…, a p-1 mod p

mora biti različit i predstavljati sve cijele brojeve od 1 do str -1 u nekoj permutaciji.

Diffie-Hellmanova razmjena ključeva ilustrirana je na slici. U ovoj shemi postoje dva broja otvorena za sve: prost broj q i cijeli broj a, koji je primitivni korijen q . Pretpostavimo da korisnici A i B namjeravaju razmijeniti ključeve.

Korisnik A bira nasumični cijeli broj X A< q i izračunava Y A =a XA mod q . Slično, korisnik B samostalno bira nasumični cijeli broj XB< q и вычисляет Y B = a XB mod q . Svaka strana čuva vrijednost X u tajnosti i čini vrijednost Y slobodno na drugu stranu. Korisnik A izračunava ključ pomoću formule K = ( Y B ) XA mod q , a korisnik B po formuli K = ( Y A ) X B mod q . Ove dvije proračunske formule daju iste rezultate.

Tako su obje strane razmijenile tajne ključeve. A budući da su u isto vrijeme X A i X B bili samo za osobnu upotrebu i stoga čuvani u tajnosti, neprijatelj će morati raditi samo s q , a , X A, X B . Stoga će morati izračunati diskretni logaritam da bi odredio ključ. Na primjer, za definiranje ključa.

Nakon toga će moći izračunati ključ K na isti način kao što to čini korisnik B.

Sigurnost Diffie-Hellmanove razmjene ključeva zapravo se oslanja na činjenicu da je, dok je stupnjeve po modulu nekog prostog broja relativno lako izračunati, diskretne logaritme vrlo teško izračunati. Za velike proste brojeve, potonji se smatra praktički nerješivim problemom.


Neprijatelj zna q, a, Y A, Y B. Da biste odredili ključ, morate izračunati diskretni logaritam.

Koliko god da je sam kriptosustav složen i siguran, temelji se na korištenju ključeva. Ako je proces razmjene ključeva trivijalan kako bi se osigurala povjerljiva razmjena informacija između dva korisnika, onda u sustavu u kojem se broj korisnika kreće na desetke i stotine, upravljanje ključevima predstavlja ozbiljan problem.

Ključne informacije podrazumijevaju se kao ukupnost svih ključeva koji djeluju u sustavu. Ako nije osigurano dovoljno pouzdano upravljanje ključnim informacijama, tada, nakon što ih preuzme, napadač dobiva neograničen pristup svim informacijama.

Upravljanje ključem je informacijski proces koji uključuje tri elementa:

Generiranje ključeva;

Akumulacija ključeva;

Distribucija ključeva.

Generiranje ključeva. U stvarnim sustavima koriste se posebne hardverske i softverske metode za generiranje slučajnih ključeva. U pravilu se koriste generatori slučajnih brojeva. Međutim, stupanj slučajnosti njihove generacije trebao bi biti dovoljno visok. Idealni generatori su uređaji koji se temelje na "prirodnim" slučajnim procesima. Na primjer, generiranje ključeva na temelju bijelog radio šuma. Drugi slučajni matematički objekt su decimalna mjesta iracionalnih brojeva, kao što su p ili e, koji se izračunavaju standardnim matematičkim metodama.

U sustavima sa srednjim sigurnosnim zahtjevima sasvim su prihvatljivi softverski generatori ključeva, koji izračunavaju slučajne brojeve kao složenu funkciju trenutnog vremena i/ili broja koji unese korisnik.

Akumulacija ključeva. Pod akumulacijom ključeva podrazumijeva se organizacija njihove pohrane, računovodstva i brisanja.

Budući da je ključ napadaču najatraktivniji objekt, koji mu otvara put do povjerljivih informacija, problematici akumulacije ključeva treba posvetiti posebnu pozornost.

Tajni ključevi nikada ne bi trebali biti eksplicitno napisani na mediju koji se može čitati ili kopirati.

U prilično složenom sustavu jedan korisnik može raditi s velikom količinom ključnih informacija, a ponekad čak postaje potrebno organizirati i minibaze ključnih informacija. Takve baze podataka odgovorne su za prihvaćanje, pohranjivanje, snimanje i brisanje korištenih ključeva.

Svaka informacija o korištenim ključevima mora biti pohranjena u šifriranom obliku. Ključevi koji šifriraju informacije o ključu nazivaju se glavnim ključevima. Poželjno je da svaki korisnik zna glavne ključeve napamet i da ih uopće ne pohranjuje na bilo koji materijalni medij.

Vrlo važan uvjet za informacijsku sigurnost je periodično ažuriranje ključnih informacija u sustavu. U tom slučaju treba ponovno dodijeliti i obične i glavne ključeve. U posebno kritičnim sustavima, ključne informacije moraju se svakodnevno ažurirati.


Pitanje ažuriranja ključnih informacija također je povezano s trećim elementom upravljanja ključevima – distribucijom ključeva.

Distribucija ključeva. Distribucija ključeva je najkritičniji proces u upravljanju ključevima. Ima dva zahtjeva:

Učinkovitost i točnost distribucije;

Tajnost distribuiranih ključeva.

U posljednje vrijeme primjetan je pomak prema korištenju kriptosustava s javnim ključem, u kojem problem distribucije ključeva nestaje. Ipak, distribucija ključnih informacija u sustavu zahtijeva nova učinkovita rješenja.

Distribucija ključeva između korisnika provodi se pomoću dva različita pristupa:

1 Stvaranjem jednog ili više ključnih distribucijskih centara. Nedostatak ovakvog pristupa je što distribucijski centar zna kome i koji su ključevi dodijeljeni, a to vam omogućuje čitanje svih poruka koje kruže sustavom. Moguće zlouporabe značajno utječu na zaštitu.

2 Izravna razmjena ključeva između korisnika sustava. U ovom slučaju, problem je pouzdana autentifikacija subjekata.

U oba slučaja, autentičnost komunikacijske sesije mora biti zajamčena. To se može pružiti na dva načina:

1 Mehanizam zahtjev-odgovor, koji je kako slijedi. Ako korisnik A želi biti siguran da poruke koje prima od korisnika B nisu lažne, on uključuje nepredvidiv element (zahtjev) u poruku poslanu B. Kada odgovara, korisnik B mora izvršiti neku operaciju na ovom elementu (na primjer, dodati 1). To se ne može učiniti unaprijed, jer se ne zna koji će slučajni broj doći u zahtjevu. Nakon što primi odgovor s rezultatima radnji, korisnik A može biti siguran da je sesija originalna. Nedostatak ove metode je mogućnost uspostavljanja, iako složenih, obrazaca između zahtjeva i odgovora.

2 Mehanizam vremenske oznake. To podrazumijeva fiksiranje vremena za svaku poruku. U tom slučaju svaki korisnik sustava može znati koliko je "stara" dolazna poruka.

U oba slučaja treba koristiti šifriranje kako bi se osiguralo da odgovor nije poslao napadač i da vremenska oznaka nije promijenjena.

Kada koristite vremenske oznake, postoji problem s dopuštenim vremenskim intervalom odgode za autentifikaciju sesije. Uostalom, poruka s vremenskom oznakom, u principu, ne može se odmah prenijeti. Osim toga, računalni satovi primatelja i pošiljatelja ne mogu se savršeno sinkronizirati.

Kriptosustavi javnog ključa mogu se koristiti za razmjenu ključeva koristeći isti RSA algoritam.

Ali Diffie-Hellmanov algoritam pokazao se vrlo učinkovit, dopuštajući dvama korisnicima da razmijene ključ bez posrednika, koji se potom može koristiti za simetrično šifriranje.

Diffie-Hellmanov algoritam. Diffie i Helman predložili su diskretnu funkciju eksponiranja za stvaranje kriptografskih sustava s javnim ključem.

Nepovratnost transformacije u ovom slučaju osigurana je činjenicom da je prilično lako izračunati eksponencijalnu funkciju u konačnom Galoisovom polju koje se sastoji od p elemenata ( str je ili prost ili prost na bilo koji stepen). Izračunavanje logaritama u takvim poljima je mnogo dugotrajnija operacija.

Za razmjenu informacija, prvi korisnik bira nasumični broj x 1 , jednaka vjerojatnost cijelih brojeva od 1 do str– 1. Taj broj čuva u tajnosti, a broj šalje drugom korisniku y 1 = , gdje je α fiksni element Galoisovog polja GF(str), koji je zajedno s p unaprijed distribuiran među korisnicima.

Drugi korisnik radi isto, generira x 2 i izračunavanje y 2, šaljući ga prvom korisniku. Kao rezultat toga, oboje mogu izračunati zajednički tajni ključ k 12 = .

Kako bi izračunali k 12, prvi korisnik podiže y 2 na moć x 1 i pronalazi ostatak nakon dijeljenja s str. Drugi korisnik radi isto, samo koristeći y 1 i x 2. Dakle, oba korisnika imaju zajednički ključ k 12, koji se može koristiti za šifriranje informacija s konvencionalnim algoritmima. Za razliku od RSA algoritma, ovaj algoritam ne šifrira stvarne informacije.

Bez znanja x 1 i x 2, napadač bi mogao pokušati izračunati k 12, znajući samo presretnuti y 1 i y 2. Ekvivalencija ovog problema s problemom izračunavanja diskretnog logaritma glavno je i otvoreno pitanje u sustavima s javnim ključem. Jednostavno rješenje još nije pronađeno. Dakle, ako izravna transformacija 1000-bitnih prostih brojeva zahtijeva 2000 operacija, tada će inverzna transformacija (izračunavanje logaritma u Galoisovom polju) zahtijevati oko 1030 operacija.

Kao što se može vidjeti, unatoč jednostavnosti Diffie-Hellmanovog algoritma, njegov nedostatak u odnosu na RSA sustav je nepostojanje zajamčene donje granice za složenost ključnog otkrivanja.

Osim toga, iako opisani algoritam zaobilazi problem prijenosa skrivenog ključa, ostaje potreba za autentifikacijom. Bez dodatnih sredstava, jedan od korisnika ne može biti siguran da je razmijenio ključeve s točnim korisnikom koji mu je potreban.