Nyilvános kulcsú rejtjelezés

A nyílt/nyilvános kulcsú rejtjelezés vagy titkosítás, más néven aszimmetrikus kulcsú titkosítás egy olyan kriptográfiai eljárás neve, ahol a felhasználó egy kulcspárral – egy nyilvános és egy titkos kulccsal rendelkezik. A titkos kulcs titokban tartandó, míg a nyilvános kulcs széles körben terjeszthető. A kulcsok matematikailag összefüggnek, ám a titkos kulcsot gyakorlatilag nem lehet meghatározni a nyilvános kulcs ismeretében. Egy, a nyilvános kulccsal kódolt üzenetet csak a kulcspár másik darabjával, a titkos kulccsal lehet visszafejteni.

1975-ben Diffie és Hellman egy forradalmian új titkosítási eljárást hoztak nyilvánosságra. Ebben a titkosításban a titkosító (T) és a megfejtő (M) kulcsok – melyek egy-egy függvényt takarnak s egymás inverzei – közül T-t nyilvánosságra hozzuk, M-et pedig titokban tartjuk, ráadásul minden félnek saját T és M „függvényei” vannak.

Az eljárás biztonsága

Bár Diffie és Hellman eljárása képtelen ötletnek hangzik, hiszen ha az egyik irányban ismeri valaki az eljárást, akkor a másik irányban is meg tudja adni azt, mégis látni fogjuk hogy ez nem minden esetben van így. Elvonatkoztatva a matematikától, vegyük ezt a példát:

Elméletben egy angol–magyar szótár – a T függvény – használható magyar–angol szótárként. Ha mondjuk az ablak szó jelentését akarjuk megtalálni, elég csak sorra nézni az angol–magyar szótárunk (ábécérendben szereplő) angol szavait, amíg a magyar jelentések között fel nem bukkan az ablak kifejezés. Mivel ez a window-nál fog csak bekövetkezni, rájöhetünk, hogy egy magyar–angol szótár – az M függvény – is kéne a legközelebbi „fordításhoz”.

Ezek után nem elképzelhetetlen, hogy a T kulcs nyilvános ismerete mellett is az M kulcs egyedül az illetékes személy titka maradjon.

A nyilvános kulcsú titkosítás módszere

Minden szereplő elkészít magának egy T,M kulcspárt, melyek egymás inverzei. A T kulcsot nyilvánosságra hozza, az M kulcsot viszont titokban tartja. Legyen A kulcspárja   T A , M A {\displaystyle \ T_{A},M_{A}} , a B kulcspárja pedig   T B , M B {\displaystyle \ T_{B},M_{B}} . Ekkor A az   u {\displaystyle \ u} üzenet helyett a   v = T B ( M A ( u ) ) {\displaystyle \ v=T_{B}(M_{A}(u))} értéket küldi el B-nek, aki ezt a következőképpen fejti meg:   u = T A ( M B ( v ) ) {\displaystyle \ u=T_{A}(M_{B}(v))} . Lássuk hogyan működik (valóban helyesen) ez az eljárás

  T A ( M B ( v ) ) = T A ( M B ( T B ( M A ( u ) ) ) ) = {\displaystyle \ T_{A}(M_{B}(v))=T_{A}(M_{B}(T_{B}(M_{A}(u))))=} az inverz függvények miatt
  = T A ( M A ( u ) ) = u {\displaystyle \ =T_{A}(M_{A}(u))=u} .

Magyarázat: A a   v {\displaystyle \ v} kiszámításához szükséges   M A {\displaystyle \ M_{A}} függvényt ismeri, a nyilvános   T B {\displaystyle \ T_{B}} függvényt pedig tudja, mivel az nyilvánosan ismert. B-nél hasonló a helyzet   M B {\displaystyle \ M_{B}} -vel és   T A {\displaystyle \ T_{A}} -val.

A titkosítás alapkövetelményei

A nyilvános kulcsú titkosításban is teljesül a titkosítás két alapkövetelménye, miszerint A üzenetét csak B érti meg, illetve, hogy egy tetszőleges harmadik C fél nem küldhet hamis üzenetet A nevében B-nek, hiszen csak A ismeri a kódoláshoz szükséges   M A {\displaystyle \ M_{A}} -t.

Emellett nincs szükség előzetes kulcsegyeztetésre, és mindenki használhatja ugyanezeket a kulcsait másokkal történő levelezésben is. Végül A és B között sem merülhet fel vita az üzenetről, mert a hamisíthatatlan elektronikus aláírásként működő   M A {\displaystyle \ M_{A}} akár bíróság előtt is bizonyíthatja az üzenet valódiságát.

A titkosító kulcsok

Diffie és Hellman rendszerének megvalósításához tehát olyan T,M kulcspárokra van szükség, melyeknél T ismeretében M visszafejtése nagyon bonyolult, ideális esetben lehetetlen. 1976-ban Rivest, Shamir és Adleman a nyílt kulcsú titkosítás elvéhez fejlesztette ki az azóta is népszerű, s elterjedt RSA titkosítási módszert, illetve Philip R. Zimmermann a PGP eljárást.

További információk

  • Alice és Bob - 9. rész: Alice és Bob nyilvános kulcsot használ
  • Alice és Bob - 10. rész: Alice és Bob szerződést köt
  • Alice és Bob - 21. rész: Alice és Bob titkosít

Források

  • Buttyán, Levente, Vajda István. Kriptográfia és alkalmazásai. Typotex, 79–98. o. (2004. május 14.). ISBN 963-9548138 
  • Freud, Róbert, Gyarmati Edit. Számelmélet 
Nemzetközi katalógusok
  • LCCN: sh00004804
  • GND: 4209133-0
  • BNF: cb13554544f
  • KKT: 00966793
  • Informatika Informatikai portál • összefoglaló, színes tartalomajánló lap
Ez az informatikai tárgyú lap egyelőre csonk (erősen hiányos). Segíts te is, hogy igazi szócikk lehessen belőle!
Ez a matematikai tárgyú lap egyelőre csonk (erősen hiányos). Segíts te is, hogy igazi szócikk lehessen belőle!