GGH titkosítási rendszer

A GGH titkosítási séma ( Eng.  Goldreich–Goldwasser–Halevi ) egy rácsokon alapuló aszimmetrikus kriptográfiai rendszer . Van egy GGH aláírási séma is .

A titkosítási rendszer a legrövidebb vektor megtalálásának és a legközelebbi vektor megtalálásának problémájának megoldásán alapul . Az Oded Goldreich , Shafi Goldwasser és Shai Halevi tudósok által 1997-ben közzétett GGH titkosítási séma egyirányú titkos belépési függvényt használ , mivel bármilyen rácsalapon könnyen létrehozható egy rácsponthoz közeli vektor. Például egy rácspont felvétele és egy kis hibavektor hozzáadása. A hibavektorból a rács kezdőpontjába való visszatéréshez speciális alapra van szükség. 1999-ben Phong Q. Nguyen [1] finomította az eredeti GGH-titkosítási sémát, ami lehetővé tette az öt GGH-probléma közül négy megoldását és az utóbbiról részleges információk megszerzését. Míg a GGH bizonyos paraméterek megválasztásával biztonságos lehet, a hagyományos nyilvános kulcsú kriptorendszerekkel szembeni hatékonysága továbbra is vitatható [2] . A titkosításhoz gyakran nagy rácsdimenzióra van szükség, miközben a kulcs mérete megközelítőleg négyzetesen növekszik a rácsmérethez képest [2] .

Az egyetlen rácsséma, amely képes kezelni a nagy dimenziókat, az NTRU [3] .

Algoritmus

A GGH tartalmaz egy nyilvános kulcsot és egy privát kulcsot [4] . A privát kulcs az unimoduláris mátrixú rács alapja .

A nyilvános kulcs egy másik alapja az űrlap rácsának .

Álljon az M üzenettér az intervallumhoz tartozó vektorokból .

Titkosítás

Üzenet , hiba és nyilvános kulcs adott :

Mátrix jelöléssel:

Emlékeztetni kell arra, hogy egész értékekből áll, egy rácspont, és ezért egyben rácspont is. Ekkor a titkosított szöveg:

Átirat

A rejtjelezett szöveg visszafejtéséhez a következőket kell kiszámítani:

Az eltávolításhoz , ha elég kicsi, a Babai -féle kerekítési módszert [5] használjuk .

Ezután a szöveghez:

Biztonsági elemzés

Ez a rész a kriptorendszerek támadásának számos módját tárgyalja [6] .

Támadás kerekítéssel

A kerekítő támadás ennek a kriptográfiai rendszernek a legszembetűnőbb támadása, kivéve a brute force támadást - hibavektor keresését, melynek lényege, hogy a B nyilvános kulcs segítségével ugyanúgy invertálja a függvényt, mint az R privát kulcs használatakor. Mégpedig ismeretében ki tudja számolni . Így találhat egy vektort . 80 LLL alatti dimenzióknál az algoritmus képes helyesen meghatározni a bázist, azonban a 100-as és nagyobb méretektől kezdve ez a támadás rosszabb, mint a hibavektor triviális felsorolása.


Vihartámadás

Ez az algoritmus a kerekítési támadás nyilvánvaló finomítása. Itt a legjobb közelítési algoritmust használjuk a legrövidebb vektorproblémára. A Babai kerekítési algoritmus helyett a legközelebbi sík algoritmusát használják. Ez így működik. Adott egy pont és redukált bázis c = { } LLL -re . Minden affin szóköz = { + } : } figyelembe vehető. Mindenesetre létezik a ponthoz legközelebb eső hipersík . Továbbá egy pontot vetítünk az (n - 1)-dimenziós térre, amelyet = { } fed le . Ez egy új pontot és egy új bázist ad = { }. Az algoritmus most rekurzív módon halad , hogy megtaláljon egy pontot ebben az (n - 1) dimenziós rácsban a -hoz közel . Végül az algoritmus beállítja . Ez a módszer sokkal gyorsabban működik, mint az előző. A rácsdimenzióval azonban a munkaterhelése is exponenciálisan növekszik. A kísérletek azt mutatják, hogy ha LLL -t használunk rácsredukciós algoritmusként, némi keresési időre van szükség, 110-120 mérettől kezdve. A támadás 140-150 mérettől kezdődően kivitelezhetetlenné válik.

Injekciós támadás

Egy másik módszer, amelyet gyakran használnak a legközelebbi vektor megtalálásának problémájának közelítésére , az n bázisvektor beágyazása és egy olyan pont beágyazása , amelyhez közeli rácspontot kell találni egy (n + 1) dimenziós rácsban.

A rácsredukciós algoritmust ezután arra használjuk, hogy megtaláljuk a legrövidebb nem nulla vektort abban a reményben, hogy ennek a vektornak az első n eleme lesz a legközelebbi pont ehhez . Az ezzel a támadással végzett kísérletek (az LLL -t használva a legrövidebb vektorok megtalálására) azt mutatják, hogy 110-120 körüli dimenzióig működik, ami jobb, mint a kerekítő támadás, ami rosszabb, mint a 100-as dimenzió utáni triviális keresés.

A támadások hatékonyságának becslése [7]

Becsült támadás kerekítéssel

Minden dimenzióban hozzunk létre öt zárt bázist. Minden bázist = + rand - nak választunk , ahol I az azonosságmátrix , a rand pedig egy négyzetmátrix , amelynek tagjait a tartományból egyenletesen választjuk ki . Minden bázishoz az = értéket számítjuk ki , ahol a legnagyobb sor euklideszi normája , és . Minden zárt bázishoz öt nyitott bázis jön létre

= , ahol a kettős ortogonalitási hiba: ahol a mátrix sorát jelöli .

Assault score

A támadás értékeléséhez ugyanazokat a nyitott és zárt bázisokat használtuk, mint a kerekítéssel történő támadásnál.

Injekciós támadás értékelése

Mivel az injekciós támadás „munkaterheléséről” nem beszélhetünk, megmértük azt a maximális értéket (a hibavektorral kapcsolatban), amelyre ez a támadás működik. Ezekhez a kísérletekhez ugyanazokat a zárt és nyitott bázisokat használtuk, mint az előző két támadásnál. Ezután minden nyitott alapot felhasználtunk a funkció több ponton történő értékelésére, több különböző érték használatával , és ellenőriztük, hogy az injekciós támadás helyreállítja-e a titkosított üzenetet.

Példa

Legyen a rács bázissal és annak reciproka :

és

Unimoduláris mátrixszal:

és

Kapunk:

Legyen az üzenet és a hibavektor, majd a rejtjelezett szöveg:

A visszafejtéshez szüksége lesz:

Ez felfelé kerekít

És az üzenet visszaáll a következővel:

Források és további olvasmányok

  • Oded Goldreich, Shafi Goldwasser és Shai Halevi. Nyilvános kulcsú kriptorendszerek rácsredukciós problémákból. In CRYPTO '97: Proceedings of the 17th Annual International Cryptology Conference on Advances in Cryptology, 112-131 pages, London, UK, 1997. Springer-Verlag.
  • Phong Q. Nguyen. A Goldreich-Goldwasser-Halevi kriptorendszer kriptoanalízise a Crypto '97-ből. In CRYPTO '99: Proceedings of the 19th Annual International Cryptology Conference on Advances in Cryptology, pages 288-304, London, UK, 1999. Springer-Verlag.

Jegyzetek

  1. Phong Q. Nguyen. A Goldreich-Goldwasser-Halevi kriptorendszer kriptoanalízise a Crypto '97-ből. . - S. 1-17 . Archiválva az eredetiből 2018. július 16-án.
  2. ↑ 1 2 Phong Q. Nguyen. A Goldreich-Goldwasser-Halevi kriptorendszer kriptoanalízise a Crypto '97-ből. S. - 1-2. . Archiválva az eredetiből 2018. július 16-án.
  3. Phong Q. Nguyen. A Goldreich-Goldwasser-Halevi kriptorendszer kriptoanalízise a Crypto '97-ből. S. - 1. . Archiválva az eredetiből 2018. július 16-án.
  4. Oded Goldreich, Shafi Goldwasser és Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Nyilvános kulcsú kriptorendszerek rácsredukciós problémákból]. - S. 112-114 . Archiválva : 2019. május 4.
  5. Phong Q. Nguyen. A Goldreich-Goldwasser-Halevi kriptorendszer kriptoanalízise a Crypto '97-ből. . - S. 4 . Archiválva az eredetiből 2018. július 16-án.
  6. Oded Goldreich, Shafi Goldwasser és Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Nyilvános kulcsú kriptorendszerek rácsredukciós problémákból]. — S. 122-124 . Archiválva : 2019. május 4.
  7. Oded Goldreich, Shafi Goldwasser és Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Nyilvános kulcsú kriptorendszerek rácsredukciós problémákból]. - S. 127-130 . Archiválva : 2019. május 4.