Iný prístup, ktorý sa často používa na ukladanie informácií o kľúčoch, je zašifrovať kľúče a uložiť ich v zašifrovanej forme. Okrem toho sa tento prístup často používa na distribúciu kľúčových informácií v kryptografických sieťach.

Potreba uchovávať a prenášať kľúčové informácie zašifrované inými kľúčmi viedla k vývoju konceptu kľúčové hierarchie.

Hierarchia kľúčových informácií môže zahŕňať mnoho úrovní, najčastejšie sa však rozlišujú:

hlavné kľúče (hlavné kľúče),

šifrovacie kľúče,

pracovné klávesy (relácia).

Kľúče relácie sú na najnižšej úrovni a používajú sa na šifrovanie údajov. Keď je potrebné tieto kľúče bezpečne preniesť medzi sieťovými uzlami alebo bezpečne uložiť, sú zašifrované pomocou kľúčov ďalšej úrovne − šifrovacie kľúče.

Na najvyššej úrovni hierarchie kľúčov je hlavný kľúč. Tento kľúč sa používa na šifrovanie šifrovacích kľúčov, keď je potrebné ich bezpečne uložiť na disk. Zvyčajne sa v každom počítači používa iba jeden hlavný kľúč, ktorý sa nachádza na externom médiu, zvyčajne chránené pred neoprávneným prístupom.

Hodnota hlavného kľúča je pevne stanovená na dlhú dobu (až niekoľko týždňov alebo mesiacov). Kľúče relácií sa menia oveľa častejšie, napríklad pri budovaní krypto-chránených tunelov je možné ich meniť každých 10-15 minút alebo na základe výsledkov šifrovania daného objemu prevádzky (napríklad 1 Mb).

Distribúcia kľúčov je veľmi zodpovedný proces pri správe kľúčov. Jednou z hlavných požiadaviek na implementáciu tohto procesu je utajenie distribuovaných kľúčových informácií.

Problém distribúcie kľúčov sa redukuje na konštrukciu protokolu distribúcie kľúčov, ktorý poskytuje:

1) vzájomná autentifikácia účastníkov relácie;

2) overenie relácie na ochranu pred útokmi

opakovania;

3) použitie minimálneho počtu správ pri výmene kľúčov.

Vo všeobecnosti existujú dva prístupy k distribúcii kľúčových informácií počítačová sieť:

1. Distribúcia kľúčových informácií pomocou jedného

alebo viacerých kľúčových distribučných centier.

2. Priama výmena kľúčov relácie medzi používateľmi.

Distribúcia kľúčových informácií pomocou kľúčových distribučných centier

Tento prístup predpokladá, že centrum distribúcie kľúčov pozná kľúče, ktoré sa majú distribuovať, a preto musia všetci príjemcovia kľúčových informácií dôverovať centru distribúcie kľúčov.

Dôstojnosť tento prístup je schopnosť centrálne riadiť distribúciu kľúčových informácií a dokonca aj politiku riadenia prístupu vzdialených subjektov navzájom.


Tento prístup je implementovaný v protokole Needham-Schroeder a na ňom založenom autentifikačnom protokole Kerberos. Distribúcia kľúčových informácií a kontrola prístupu je v týchto protokoloch založená na vydávaní poverení centrom distribúcie kľúčov. Použitie týchto protokolov umožňuje bezpečne distribuovať kľúče relácie aj v prípade vzájomnej nedôvery dvoch interagujúcich strán.

Priama výmena kľúčov relácie medzi používateľmi

Aby bolo možné použiť kryptosystém s tajným kľúčom na bezpečnú výmenu informácií medzi protiľahlými stranami, musia interagujúce strany vyvinúť zdieľané tajomstvo, na základe ktorého môžu bezpečne šifrovať informácie alebo bezpečne generovať a vymieňať kľúče relácie. V prvom prípade je zdieľaným tajomstvom kľúč relácie, v druhom prípade hlavný kľúč. V každom prípade by útočník nemal mať možnosť odpočúvať komunikačný kanál, aby získal toto tajomstvo.

Existujú dva hlavné spôsoby, ako vyriešiť problém generovania zdieľaného tajomstva bez jeho odhalenia útočníkovi:

používanie kryptosystému s verejným kľúčom na šifrovanie;

· použitie protokolu otvorenej distribúcie kľúčov Diffie-Hellman.

Implementácia prvej metódy by nemala vyvolávať otázky. Pozrime sa podrobnejšie na implementáciu druhej metódy.

Protokol Diffie-Hellman

Protokol Diffie-Hellman bol prvým algoritmom verejného kľúča (1976). Bezpečnosť tohto protokolu je založená na náročnosti výpočtu diskrétnych logaritmov.

Umožnite používateľom A a B vypracovať zdieľané tajomstvo. Na tento účel vykonajú nasledujúce kroky.

Strany A a B sa dohodnú na module, ktorý sa má použiť N, ako aj primitívny prvok g, ktorého stupne tvoria čísla od 1 do N-1.

1. Čísla N a g sú verejné prvky protokolu.

2. Používatelia A a B si nezávisle vyberú svoje vlastné tajné kľúče CK A a CK B (náhodné veľké celé čísla, menšie N uchovávané v tajnosti).

3. Používatelia A a B vypočítajú verejné kľúče OK A a OK B na základe zodpovedajúcich tajných kľúčov pomocou nasledujúcich vzorcov:

4. Strany A a B si vymieňajú hodnoty verejného kľúča cez nezabezpečený kanál.

5. Používatelia A a B tvoria spoločné tajomstvo K podľa vzorcov:

Používateľ A:

K = (OK B) CK A (mod N) = (g CK B) CK A (mod N) = g CK B . CK A (mod N).

Používateľ B:

K = (OK A) CK B (mod N) = (g CK A) CK B (mod N) = g CK A . CK B (mod N).

kľúč K možno použiť ako zdieľaný tajný kľúč (hlavný kľúč) v symetrickom kryptosystéme.

Príklad 6.2.

Zoberme si modul N= 47 a primitívny prvok g= 23. Nechajte používateľov A a B zvolili svoje tajné kľúče CK A = 12, CK B = 33. Potom

V tomto prípade bude zdieľané tajomstvo vyzerať takto:

Algoritmus distribúcie verejného kľúča Diffie-Hellman eliminuje potrebu bezpečného kanála na prenos kľúča. Vyžaduje sa však záruka, ktorú príjemca dostal verejný kľúč od odosielateľa, od ktorého to očakáva. Tento problém riešené pomocou digitálnych certifikátov a technológie digitálneho podpisu.

Protokol Diffie-Hellman našiel efektívne uplatnenie v protokole PRESKOČIŤ správa kľúčov. Tento protokol sa používa pri budovaní krypto-chránených tunelov v rodine produktov ZASTAVA.

Správa kľúčov

Okrem výberu kryptografického systému vhodného pre konkrétny IC je dôležitou otázkou aj správa kľúčov. Bez ohľadu na to, aký zložitý a bezpečný je samotný kryptosystém, je založený na použití kľúčov. Ak je na zabezpečenie dôvernej výmeny informácií medzi dvoma používateľmi proces výmeny kľúčov triviálny, potom v IS, kde je počet používateľov desiatky a stovky, je správa kľúčov vážnym problémom.

Pod kľúčové informácie sa rozumie súhrn všetkých aktívnych kľúčov v IS. Ak nie je zabezpečená dostatočne spoľahlivá kontrola kľúčových informácií, útočník získa po ich držaní neobmedzený prístup ku všetkým informáciám.

Správa kľúčov- informačný proces, ktorý zahŕňa tri prvky:

* generovanie kľúčov;

* hromadenie kľúčov;

* distribúcia kľúčov.

Uvažujme, ako by sa mali implementovať, aby bola zabezpečená bezpečnosť kľúčových informácií v IS.

Generovanie kľúčov

Na samom začiatku rozhovoru o kryptografických metódach bolo povedané, že by ste nemali používať nenáhodné kľúče, aby ste si ich ľahko zapamätali. Vážne integrované obvody používajú špeciálne hardvérové ​​a softvérové ​​metódy na generovanie náhodných kľúčov. Spravidla sa používajú snímače PSC. Miera náhodnosti ich generovania by však mala byť dosť vysoká. Ideálne generátory sú zariadenia založené na „prirodzených“ náhodných procesoch. Napríklad sériové vzorky generovania kľúčov na základe biely rádiový šum. Ďalším náhodným matematickým objektom sú desatinné miesta iracionálnych čísel, napr e, ktoré sa vypočítavajú pomocou štandardných matematických metód.

V IS so strednými bezpečnostnými požiadavkami sú celkom prijateľné generátory softvérových kľúčov, ktoré vypočítavajú PRNG ako komplexnú funkciu aktuálneho času a (alebo) čísla zadaného používateľom.

Akumulácia kľúčov

Pod hromadenie kľúčov sa týka organizácie ich skladovania, účtovania a odvozu.

Keďže kľúč je pre útočníka najatraktívnejším objektom, ktorý mu otvára cestu k dôverným informáciám, osobitná pozornosť by sa mala venovať otázkam akumulácie kľúčov.

Tajné kľúče by nikdy nemali byť napísané explicitne na médiu, ktoré je možné čítať alebo kopírovať.

V pomerne zložitom IS môže jeden používateľ pracovať s veľkým množstvom kľúčových informácií a niekedy je dokonca potrebné organizovať minidatabázy podľa kľúčových informácií. Takéto databázy sú zodpovedné za prijatie, uloženie, účtovanie a vymazanie použitých kľúčov.

Takže každá informácia o použitých kľúčoch musí byť uložená v zašifrovanej forme. Kľúče, ktoré šifrujú informácie o kľúčoch, sa nazývajú hlavné kľúče. Je žiaduce, aby každý používateľ poznal hlavné kľúče naspamäť a neukladal ich vôbec na žiadne materiálne médiá.

Veľmi dôležitou podmienkou bezpečnosti informácií je periodická aktualizácia kľúčových informácií v IS. V tomto prípade by mali byť priradené bežné kľúče aj hlavné kľúče. V obzvlášť zodpovedných IS je žiaduce aktualizovať kľúčové informácie na dennej báze.

S otázkou aktualizácie kľúčových informácií súvisí aj tretí prvok správy kľúčov – distribúcia kľúčov.

Rozdelenie kľúčov

Distribúcia kľúčov je najdôležitejším procesom pri správe kľúčov. Sú naň kladené dve požiadavky:
  1. Efektívnosť a presnosť distribúcie
  2. Utajenie distribuovaných kľúčov.
V poslednej dobe je badateľný posun smerom k používaniu kryptosystémov s verejným kľúčom, v ktorom odpadá problém distribúcie kľúčov. Distribúcia kľúčových informácií v IS si však vyžaduje nové efektívne riešenia.

Distribúcia kľúčov medzi užívateľmi je realizovaná dvoma rôznymi prístupmi:

  1. Vytvorením jedného alebo viacerých kľúčových distribučných centier. Nevýhodou tohto prístupu je, že distribučné centrum vie, komu a aké kľúče sú pridelené, a to umožňuje čítať všetky správy, ktoré kolujú v IS. Možné zneužitia výrazne ovplyvňujú ochranu.
  2. Priama výmena kľúčov medzi používateľmi informačného systému.
V tomto prípade je problém spoľahlivo autentifikovať subjekty.

V oboch prípadoch musí byť zaručená autentickosť komunikačnej relácie. To možno poskytnúť dvoma spôsobmi:

  1. Mechanizmus žiadosť – odpoveď, ktorý pozostáva z nasledovného. Ak chce mať používateľ A istotu, že správy, ktoré dostáva od B, nie sú falošné, zahrnie do správy odoslanej B nepredvídateľný prvok (požiadavku). Pri odpovedaní musí používateľ B vykonať nejakú operáciu s týmto prvkom (napríklad pridať 1). Toto nie je možné urobiť vopred, pretože nie je známe, aké náhodné číslo sa objaví v žiadosti. Po prijatí odpovede s výsledkami akcií si používateľ A môže byť istý, že relácia je autentická. Nevýhodou tejto metódy je možnosť vytvorenia aj keď zložitého vzoru medzi požiadavkou a odpoveďou.
  2. Mechanizmus časovej pečiatky ("časová pečiatka"). Znamená to stanoviť čas pre každú správu. V tomto prípade môže každý používateľ IS vedieť, aká „stará“ je prichádzajúca správa.
V oboch prípadoch by sa malo použiť šifrovanie, aby sa zabezpečilo, že odpoveď nebola odoslaná útočníkom a že časová pečiatka nebola zmenená.

Pri používaní časových pečiatok je problém s povoleným časovým intervalom oneskorenia pre overenie relácie. Koniec koncov, správa s "časovou pečiatkou" v zásade nemôže byť prenesená okamžite. Počítačové hodiny príjemcu a odosielateľa navyše nemožno absolútne synchronizovať. Aké oneskorenie "pečiatky" sa považuje za podozrivé.

Preto sa v skutočných IC, napríklad v platobných systémoch kreditnými kartami, používa druhý mechanizmus autentifikácie a ochrany proti falšovaniu. Použitý interval je od jednej do niekoľkých minút. Veľký počet známych spôsobov krádeže elektronických peňazí je založený na „zakliesnení“ do tejto medzery falošnými žiadosťami o výber.

Kryptosystémy s verejným kľúčom možno použiť na výmenu kľúčov pomocou rovnakého algoritmu RSA.

Algoritmus Diffie-Hellman sa však ukázal ako veľmi efektívny a umožnil dvom používateľom vymeniť si kľúč bez sprostredkovateľov, ktorý potom možno použiť na symetrické šifrovanie.

Diffie-Hellmanov algoritmus

Diffie a Helman navrhli vytvoriť kryptografické systémy s verejným kľúčom diskrétna funkcia umocnenia.

Nevratnosť transformácie je v tomto prípade zabezpečená tým, že je celkom jednoduché vypočítať exponenciálnu funkciu v konečnom Galoisovom poli pozostávajúcom z p prvkov. ( p- buď prvočíslo alebo prvočíslo na akúkoľvek mocninu). Výpočet logaritmov v takýchto poliach je časovo oveľa náročnejšia operácia.

Ak r= X, 1<X<p-1, kde je pevný prvok poľa GF(p), potom X=lo g y vyššie GF(p). Majúce X, je ľahké vypočítať r. To si bude vyžadovať 2 ln( X+r) operácie násobenia.

Problém inverzného výpočtu X od r bude dosť ťažké. Ak p je vybratá dostatočne správne, potom extrakcia logaritmu bude vyžadovať výpočty úmerné

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

Na výmenu informácií si prvý používateľ vyberie náhodné číslo X 1 , ekvipravdepodobnosť celého čísla 1... p- jeden. Toto číslo uchová v tajnosti a pošle ho inému používateľovi

r 1 = X mod p

Druhý používateľ robí to isté, generuje X 2 a výpočtom r 2, odoslaním prvému používateľovi. Vďaka tomu môžu kalkulovať k 12 = X 1 X 2 mod p.

Aby bolo možné vypočítať k 12, zdvihne prvý užívateľ r 2 k výkonu X jeden . Druhý používateľ urobí to isté. Obaja používatelia teda majú spoločný kľúč k 12, ktorý možno použiť na šifrovanie informácií konvenčnými algoritmami. Na rozdiel od algoritmu RSA vám tento algoritmus neumožňuje zašifrovať aktuálne informácie.

Nevedomky X 1 a X 2, môže sa útočník pokúsiť vypočítať k 12, vediac len zachytený r 1 a r 2. Ekvivalencia tohto problému s problémom výpočtu diskrétneho logaritmu je hlavnou a otvorenou otázkou v systémoch verejného kľúča. Jednoduché riešenie sa zatiaľ nenašlo. Ak teda priama transformácia 1000-bitových prvočísel vyžaduje 2000 operácií, potom inverzná transformácia (výpočet logaritmu v poli Galois) bude vyžadovať asi 10 30 operácií.

Ako vidíte, pri všetkej jednoduchosti algoritmu Diffie-Hellman je jeho druhou nevýhodou v porovnaní so systémom RSA absencia garantovaného nižšieho odhadu zložitosti otvárania kľúča.

Okrem toho, hoci opísaný algoritmus obchádza problém prenosu skrytého kľúča, potreba autentifikácie zostáva. Bez dodatočných prostriedkov si jeden z používateľov nemôže byť istý, že si vymenil kľúče presne s tým používateľom, ktorého potrebuje. Nebezpečenstvo napodobňovania v tomto prípade zostáva.

Ako zovšeobecnenie toho, čo bolo povedané o distribúcii kľúčov, treba povedať nasledovné. Úloha správy kľúčov spočíva v nájdení takého distribučného protokolu kľúčov, ktorý by poskytoval:

* možnosť odmietnutia z centra distribúcie kľúčov;

* Vzájomná autentifikácia účastníkov relácie;

* Potvrdenie autenticity relácie mechanizmom požiadavka-odpoveď pomocou softvéru alebo hardvéru;

* pomocou minimálneho počtu správ pri výmene kľúčov.

Každý kryptografický systém pracuje s kryptografickými kľúčmi. Ak v systéme nie je implementovaný mechanizmus správy kľúčových údajov, nebude pre útočníka ťažké ho zmocniť sa. Správa kľúčov zahŕňa procedúry, ako je generovanie, ukladanie a distribúcia kľúčov. Posledný postup je najzodpovednejší.

V symetrickom kryptosystéme sa obe strany musia najprv dohodnúť na tajnom kľúči relácie, kľúči na šifrovanie všetkých paketov. Kľúč musí byť tajný a predplatitelia ho musia pravidelne aktualizovať. Asymetrický kryptosystém zahŕňa použitie dvoch kľúčov – súkromného (tajného) a verejného. Verejný kľúč je zverejnený. Pri odosielaní správ je potrebné zaslať verejný kľúč, pričom počas prenosu sa implementuje autentifikácia.

Systém distribúcie kľúčov musí spĺňať nasledujúce požiadavky:

  • integritu a dôvernosť distribuovaných kľúčov
  • efektívnosť a presnosť distribúcie

Pri distribúcii kľúčov existujú 2 prístupy:

  • využitie kľúčových distribučných centier
  • priama výmena kľúčov medzi predplatiteľmi

V prvom prístupe centrum distribúcie kľúčov vie, ktoré kľúče boli odoslané a komu. V druhom prístupe musíte overiť identitu sieťových entít. Úloha distribúcia kľúčov spočíva v vytvorení súboru , ktorý implementuje:

  • autentifikácia účastníkov relácie
  • overenie relácie
  • implementácia minimálneho počtu odoslaných správ pri výmene kľúčov

Jasným príkladom implementácie kľúčových distribučných centier je systém Kerberos. Tu zvážime druhý prístup. Na toto použitie:

  • asymetrický kryptosystém s verejným kľúčom na ochranu tajného kľúča symetrického kryptosystému
  • Systémy distribúcie verejného kľúča Diffie-Hellman

Implementácia kombinovaného kryptosystému pre riadenie distribúcie

Hlavným aspektom asymetrických kryptosystémov s verejným kľúčom je ich potenciálne vysoká bezpečnosť. Nie je potrebné prenášať kľúče, uistite sa, že sú autentické. Takýto systém však stráca na rýchlosti v porovnaní so symetrickými kryptosystémami s tajným kľúčom.

Kombinovaná implementácia asymetrického a symetrického šifrovania umožňuje eliminovať hlavné nevýhody, ktoré sú charakteristické pre systémy samostatne. Myšlienka je takáto:

  • je implementovaný symetrický kryptosystém na šifrovanie otvoreného textu a asymetrický kryptosystém s verejným kľúčom je implementovaný na šifrovanie tajného kľúča symetrického kryptosystému.

Tento prístup sa nazýva aj schéma. elektronická digitálna obálka. Pozrime sa na príklad. Používateľ A chce implementovať metódu hybridného šifrovania na bezpečný prenos paketu M k používateľovi B. Algoritmus je nasledujúci:

  • Akcie používateľa A:
    • Generuje (akýmkoľvek spôsobom) tajný kľúč relácie Ks, ktorý je potrebný pri symetrickom šifrovaní na šifrovanie paketov
    • Zašifruje paket M symetrickým algoritmom na tajnom kľúči relácie Ks
    • Zašifruje tajný kľúč relácie Ks verejným kľúčom KB používateľa B pomocou asymetrického algoritmu
    • Pošle cez otvorený kanál užívateľovi B zašifrovaný paket M spolu so zašifrovaným kľúčom relácie Ks
  • Akcie používateľa B (pri prijímaní elektronickej digitálnej obálky):
    • dešifrovať kľúč relácie Ks pomocou asymetrického algoritmu pomocou vášho súkromného kľúča KB
    • Dešifrovanie paketu M pomocou symetrického algoritmu pomocou dešifrovaného kľúča Ks
    • Akcie používateľa sú znázornené na obr.1

Obrázok 1

Pri implementácii digitálnej obálky sú nevýhody asymetrických a symetrických algoritmov kompenzované v dôsledku:

  • problém distribúcie kľúčov symetrického kryptoalgoritmu je eliminovaný skutočnosťou, že relačný kľúč Ks sa prenáša cez otvorený kanál v zašifrovanej forme pomocou asymetrického kryptoalgoritmu
  • problém nízkej rýchlosti asymetrického algoritmu nie je relevantný, pretože je zašifrovaný iba kľúč a text je zašifrovaný symetrickým kryptografickým algoritmom

Ak je dĺžka kľúča relácie menšia ako dĺžka asymetrického kľúča, útočník zaútočí na kľúč relácie. Tabuľka 1 ukazuje pomer dĺžok kľúčov.

Tabuľka 1 – Dĺžky kľúčov pre asymetrické a symetrické systémy s rovnakou kryptografickou silou

Metóda distribúcie kľúčov Diffie-Hellman

W. Diffie a M. Hellman vytvorili v roku 1976 metódu distribúcie verejného kľúča. Táto metóda umožňuje používateľom vymieňať si kľúče cez nezabezpečený komunikačný kanál. Jeho bezpečnosť je založená na obtiažnosti výpočtu diskrétnych logaritmov v konečnom poli, na rozdiel od jednoduchosti riešenia priameho problému diskrétneho umocňovania v rovnakom poli. Schéma metódy je znázornená na obr.2.

Kresba - 2

Používatelia A a B pri výmene údajov generujú svoje náhodné tajné kľúče K A a K B (kľúče sú náhodné veľké celé čísla). Používateľ A a B potom vypočíta verejné kľúče:

  • J A,B = g K A,B (mod N)

N, g sú veľké celé čísla. Tieto čísla nie sú tajné a sú známe všetkým používateľom systému. Používatelia A a B potom implementujú výmenu kľúčov J cez nezabezpečený kanál a implementujú ich na výpočet kľúča zdieľanej relácie J:

  • používateľ A: J = (J B) K A (mod N) = (g K B) K A (mod N)
  • používateľ B: J` = (J A) K B (mod N) = (g K A) K B (mod N)
  • J = J`, pretože (g K B) K A = (g K A) K B

Vzhľadom na implementáciu jednosmernej funkcie je operácia výpočtu verejného kľúča nevratná. Algoritmus Diffie-Hellman vám umožňuje šifrovať informácie pri každej komunikačnej relácii pomocou nových kľúčov. To zlepšuje bezpečnosť tým, že nemusíte ukladať tajomstvá na médiách. Tento algoritmus tiež umožňuje implementovať metódu komplexnej ochrany dôvernosti a pravosti prenášaných údajov.

Spôsob komplexnej ochrany dôvernosti a autenticity prenášaných údajov

Na súčasnú ochranu dôvernosti a integrity informácií sa odporúča implementovať šifrovanie v komplexe. Algoritmus funguje takto:

  • užívateľ A podpíše paket M svojim tajným kľúčom KA implementujúcim štandardný algoritmus digitálneho podpisu
  • používateľ A vypočíta zdieľaný tajný kľúč K podľa princípu Diffie-Hellman zo svojho verejného kľúča a verejného kľúča používateľa B
  • užívateľ A zašifruje paket M zdieľaným tajným kľúčom K pomocou symetrického šifrovania
  • užívateľ B prijme paket M, vypočíta verejný kľúč K a dešifruje paket M
  • užívateľ B overí podpis dešifrovaného paketu M pomocou verejného kľúča užívateľa KA

Na základe algoritmu Diffie-Hellman fungujú protokoly správy kryptografických kľúčov SKIP, IKE.

Protokol distribúcie kľúčov(protokol na zriadenie kľúča) je šifrovací protokol, pri vykonávaní ktorého sa zdieľané tajomstvo sprístupní dvom alebo viacerým stranám na následné použitie na šifrovacie účely.

Protokoly distribúcie kľúčov sú rozdelené do dvoch tried:

    Kľúčové transportné protokoly;

    Protokoly výmeny kľúčov.

Kľúčové transportné protokoly(prenos kľúča) sú protokoly distribúcie kľúčov, v ktorých jeden účastník vytvorí alebo inak získa tajomstvo a bezpečne ho prenesie na ostatných účastníkov.

Protokoly výmeny kľúčov(dohoda kľúča, výmena kľúča) sú protokoly distribúcie kľúčov, v ktorých je zdieľané tajomstvo generované dvoma alebo viacerými účastníkmi v závislosti od informácií, ktoré každý z nich vložil (alebo sú s nimi spojené) takým spôsobom, že (v ideálnom prípade) žiadny iný strana môže vopred určiť svoje spoločné tajomstvo.

Existujú dve ďalšie formy protokolov distribúcie kľúčov. O protokole sa hovorí, že vykoná aktualizáciu kľúča, ak sa v protokole vygeneruje úplne nový kľúč, nezávisle od kľúčov vygenerovaných v predchádzajúcich reláciách protokolu. Protokol vykoná generovanie odvodených kľúčov (odvodenie kľúča), ak je nový kľúč „odvodený“ od už existujúcich účastníkov kryptosystému.

Kľúčové vlastnosti protokolov distribúcie kľúčov zahŕňajú vlastnosti autentifikácie kľúča, overenia kľúča a explicitného overenia kľúča.

(Implicitná) autentifikácia kľúčom(implicitná autentifikácia kľúčom) - vlastnosť, pomocou ktorej jeden účastník protokolu zabezpečuje, aby žiadna iná strana, okrem špeciálne identifikovaného druhého účastníka protokolu (a prípadne aj dôveryhodného centra), nemala prístup k tajným kľúčom získaným v protokole. Neexistujú žiadne záruky, že druhá strana skutočne získala prístup ku kľúču, ale nikto iný ho nemohol získať. Implicitná autentifikácia kľúčom je nezávislá od skutočného vlastníctva kľúča druhou stranou a nevyžaduje žiadnu akciu od druhej strany.

Potvrdenie kľúčom(potvrdenie kľúča) - vlastnosť, ktorou je jeden účastník protokolu presvedčený, že iný účastník (prípadne neidentifikovaný) skutočne vlastní tajné kľúče získané v protokole.

Explicitná autentifikácia kľúčom(explicitná autentifikácia kľúčom) je vlastnosť, ktorá sa vykoná, keď sa uskutoční (implicitná) autentifikácia kľúča aj overenie kľúča.

    1. Protokol Needham-Schroeder na symetrických kľúčoch

Tento protokol je základom veľkého počtu protokolov distribúcie kľúčov, ktoré používajú dôveryhodné centrá. Existujú dva typy tohto protokolu:

    Protokol Needham-Schroeder na symetrických kľúčoch;

    Protokol Needham-Schroeder o asymetrických kľúčoch.

Protokol symetrického kľúča funguje takto:

Predbežná fáza:

Tento prístup vytvára akýsi začarovaný kruh: na zdieľanie tajomstva (prenášanej správy) musia mať odosielateľ a príjemca zdieľané tajomstvo (šifrovací kľúč). Predtým sa tento problém riešil nekryptografickou metódou - prenosom kľúča cez komunikačné kanály, ktoré sú fyzicky chránené pred odpočúvaním (obr. 1). Vytvorenie takéhoto kanála a jeho udržiavanie v prevádzkovej pohotovosti v prípade núdzovej potreby prenosu kľúča je však dosť pracné a nákladné.

Ryža. jeden.

Problém bol úspešne vyriešený v rámci modernej kryptografie, ktorá vznikla pred viac ako štvrťstoročím, ktorá sa tak nazýva na rozdiel od už vtedy známej „tradičnej kryptografie“. Riešením je použitie asymetrických (dvojkľúčových) šifier alebo schém distribúcie kľúčov cez otvorené komunikačné kanály.

V prvom prípade sa postupy pre - a dešifrovanie vykonávajú na rôznych kľúčoch, takže nie je potrebné tajiť šifrovací kľúč. Vzhľadom na extrémne nízke výkonové charakteristiky a náchylnosť na niektoré špeciálne typy útokov sa však takéto šifry ukázali ako málo použiteľné na priame skrytie používateľských informácií. Namiesto toho sa asymetrické šifry používajú ako súčasť kombinovaných schém, keď je dátové pole zašifrované symetrickou šifrou na jednorazovom kľúči, ktorý sa následne zašifruje dvojkľúčovou šifrou a v tejto forme sa prenáša spolu s údajmi.

Schémy distribúcie kľúčov cez otvorené komunikačné kanály riešia rovnaký problém mierne odlišným spôsobom: počas relácie interakcie dvaja korešpondenti vyvinú zdieľaný tajný kľúč, ktorý sa potom používa na šifrovanie prenášaných údajov pomocou symetrickej šifry. Navyše, zachytenie informácie v kanáli počas relácie generovania takéhoto kľúča nedáva nepriateľovi možnosť získať kľúč samotný: K=K(X,Y) je nevyčísliteľné (obr. 2).


Ryža. 2.

Problémy asymetrickej kryptografie

Asymetrická kryptografia doteraz celkom úspešne rieši problém distribúcie kľúčov cez otvorené komunikačné kanály. Napriek tomu existuje niekoľko problémov, ktoré vyvolávajú určité obavy o jeho budúcnosť. Stabilita všetkých asymetrických kryptografických schém je založená na nemožnosti efektívneho výpočtového riešenia množstva takých matematických problémov (tzv. NP-problémov) ako je faktorizácia (faktorizácia) veľkých čísel a logaritmus vo veľkých diskrétnych poliach. Ale táto nemožnosť je len domnienka, ktorá môže byť kedykoľvek vyvrátená, ak sa dokáže opačná hypotéza, a to NP=P. To by viedlo ku kolapsu celej modernej kryptografie, keďže problémy, na ktorých je založená na neriešiteľnosti, spolu dosť úzko súvisia a prelomenie čo i len jedného kryptosystému bude znamenať prelomenie väčšiny ostatných. V tomto smere prebieha intenzívny výskum, no problém zostáva stále otvorený.

Ďalšou hrozbou pre moderné kryptosystémy sú takzvané kvantové počítače - zariadenia na spracovanie informácií postavené na princípoch kvantovej mechaniky, ktorých myšlienku ako prvý navrhol slávny americký fyzik R. Feynman. V roku 1994 P. Shor navrhol faktorizačný algoritmus pre kvantový počítač, ktorý umožňuje faktorizovať číslo v čase, ktorý polynomiálne závisí od veľkosti čísla. A v roku 2001 bol tento algoritmus úspešne implementovaný na prvom funkčnom prototype kvantového počítača, ktorý vytvorili špecialisti z IBM a Stanfordskej univerzity.

Podľa odborníkov môže byť kvantový počítač schopný prelomiť kryptosystém RSA vytvorený približne za 15-25 rokov.

Ďalším nepríjemným faktom o asymetrických kryptosystémoch je, že minimálna „bezpečná veľkosť“ kľúčov neustále rastie vďaka pokroku v príslušnej oblasti. Za celú štvrťstoročnú históriu takýchto systémov narástol už asi 10-krát, zatiaľ čo za rovnaké obdobie pre tradičné symetrické šifry sa veľkosť kľúča zmenila o menej ako polovicu.

Všetky vyššie uvedené skutočnosti spôsobujú, že dlhodobé vyhliadky asymetrických kryptografických systémov nie sú úplne spoľahlivé a núti nás hľadať alternatívne spôsoby riešenia rovnakých problémov. Niektoré z nich je možné riešiť v rámci takzvanej kvantovej kryptografie, čiže kvantovej komunikácie.