Šifrovací schéma GGH

Šifrovací schéma GGH ( Eng.  Goldreich–Goldwasser–Halevi ) je asymetrický kryptografický systém založený na mřížkách . Existuje také schéma podpisu GGH .

Kryptosystém je založen na řešení problému nalezení nejkratšího vektoru a problému nalezení nejbližšího vektoru . Šifrovací schéma GGH, publikované v roce 1997 vědci Oded Goldreich , Shafi Goldwasser a Shai Halevi , používá jednosměrnou tajnou vstupní funkci , protože vzhledem k jakékoli mřížkové bázi je snadné generovat vektor blízko bodu mřížky. Například vzít bod mřížky a přidat malý chybový vektor. Pro návrat z chybového vektoru do počátečního bodu mřížky je potřeba speciální základ. V roce 1999 provedl Phong Q. Nguyen [1] upřesnění původního schématu šifrování GGH, které umožnilo vyřešit čtyři z pěti problémů GGH a získat o nich částečné informace. Zatímco GGH může být bezpečný s určitými volbami parametrů, jeho účinnost oproti tradičním kryptosystémům s veřejným klíčem zůstává diskutabilní [2] . Šifrování často vyžaduje velký rozměr mřížky, zatímco velikost klíče roste přibližně kvadraticky s ohledem na velikost mřížky [2] .

Jediné schéma mřížky, které zvládne vysoké dimenze, je NTRU [3] .

Algoritmus

GGH zahrnuje veřejný klíč a soukromý klíč [4] . Soukromý klíč je základem mřížky s unimodulární maticí .

Veřejný klíč je dalším základem mřížky formuláře .

Nechť prostor zprávy M sestává z vektorů patřících do intervalu .

Šifrování

Zadaná zpráva , chyba a veřejný klíč :

V maticovém zápisu:

Je třeba mít na paměti, že se skládá z celočíselných hodnot, je to mřížkový bod, a proto je také mřížkovým bodem. Potom je šifrový text:

Přepis

Pro dešifrování šifrovaného textu se vypočítá:

K odstranění , pokud je dostatečně malý, se používá Babaiova metoda zaokrouhlení [5] .

Poté získáte text:

Bezpečnostní analýza

Tato část pojednává o několika způsobech útoku na kryptosystém [6] .

Útok zaokrouhlením

Útok zaokrouhlení je nejzřetelnějším útokem tohoto kryptografického systému, kromě útoku hrubou silou - hledání chybového vektoru . Jeho podstatou je použití veřejného klíče B k invertování funkce stejným způsobem jako při použití soukromého klíče R Totiž, když víte , můžete vypočítat . Můžete tedy najít vektor . Při rozměrech pod 80 LLL je algoritmus schopen správně určit základnu, avšak počínaje rozměry 100 a vyššími je tento útok horší než triviální výčet chybového vektoru.


Bouřkový útok

Tento algoritmus je zjevným vylepšením zaokrouhlovacího útoku. Zde používáme nejlepší aproximační algoritmus pro nejkratší vektorový problém. Konkrétně se místo Babaiova zaokrouhlovacího algoritmu používá algoritmus nejbližší roviny. Funguje to takto. Daný bod a redukovaný základ c = { } pro LLL . Uvažují se všechny afinní prostory = { + } : }. Pro všechny existuje nadrovina nejblíže bodu . Dále je bod promítnut do (n - 1)-rozměrného prostoru, který je pokryt = { } . To dává nový bod a nový základ = { }. Algoritmus nyní pokračuje rekurzivně , aby našel bod v této (n-1)-rozměrné mřížce blízko . Nakonec algoritmus nastaví . Tato metoda funguje mnohem rychleji než ta předchozí. Jeho pracovní zátěž však také roste exponenciálně s dimenzí mřížky. Experimenty ukazují, že při použití LLL jako algoritmu pro redukci mřížky je vyžadována určitá doba hledání, počínaje velikostí 110-120. Počínaje velikostí 140-150 se útok stává neproveditelným.

Injekční útok

Dalším způsobem, který se často používá k aproximaci problému hledání nejbližšího vektoru , je vložení n bázových vektorů a bodu, pro který je nutné najít blízký bod mřížky v (n + 1)-rozměrné mřížce.

Algoritmus redukce mřížky je pak použit k nalezení nejkratšího nenulového vektoru v , v naději, že prvních n prvků v tomto vektoru bude nejblíže bodům . Experimenty provedené na tomto útoku (pomocí LLL jako nástroje pro hledání nejkratších vektorů) ukazují, že funguje až do dimenzí kolem 110-120, což je lepší než útok zaokrouhlování, který je horší než triviální hledání po dimenzi 100.

Odhad efektivity útoků [7]

Odhadovaný útok zaokrouhlením

Nechte v každé dimenzi vytvořit pět uzavřených základen. Každá báze je zvolena jako = + rand , kde I je matice identity a rand je čtvercová matice , jejíž členy jsou vybrány jednotně z rozsahu . Pro každý základ se vypočítá hodnota = , kde je euklidovská norma největšího řádku a . Pro každou uzavřenou bázi je generováno pět otevřených základen

= , kde je vada dvojité ortogonality: kde označuje řádek matice .

Assault score

Pro vyhodnocení přepadového útoku byly použity stejné otevřené a uzavřené základny jako při útoku zaokrouhlením.

Hodnocení útoku vstřikováním

Protože nelze hovořit o „vytížení“ injekčního útoku, byla změřena maximální hodnota (vztažená k vektoru chyby), pro kterou tento útok funguje. Pro tyto experimenty byly použity stejné uzavřené základny a otevřené základny jako u předchozích dvou útoků. Poté byla každá otevřená báze použita k vyhodnocení funkce v několika bodech pomocí několika různých hodnot a zkontrolovalo se, zda injekční útok obnoví zašifrovanou zprávu.

Příklad

Nechť mřížka se základnou a její převrácená je :

a

S unimodulární matricí:

a

Dostaneme:

Nechte zprávu a vektor chyb Pak šifrový text:

K dešifrování potřebujete:

Toto zaokrouhluje nahoru

A zpráva se obnoví pomocí:

Zdroje a další četba

  • Oded Goldreich, Shafi Goldwasser a Shai Halevi. Kryptosystémy s veřejným klíčem z problémů redukce mřížky. In CRYPTO '97: Proceedings of the 17th Annual International Cryptology Conference on Advances in Cryptology, pages 112-131, London, UK, 1997. Springer-Verlag.
  • Phong Q. Nguyen. Kryptoanalýza kryptosystému Goldreich-Goldwasser-Halevi z Crypto '97. In CRYPTO '99: Proceedings of the 19th Annual International Cryptology Conference on Advances in Cryptology, pages 288-304, London, UK, 1999. Springer-Verlag.

Poznámky

  1. Phong Q. Nguyen. Kryptoanalýza kryptosystému Goldreich-Goldwasser-Halevi z Crypto '97. . - S. 1-17 . Archivováno z originálu 16. července 2018.
  2. ↑ 1 2 Phong Q. Nguyen. Kryptoanalýza kryptosystému Goldreich-Goldwasser-Halevi z Crypto '97. S. - 1-2. . Archivováno z originálu 16. července 2018.
  3. Phong Q. Nguyen. Kryptoanalýza kryptosystému Goldreich-Goldwasser-Halevi z Crypto '97. S. - 1 . Archivováno z originálu 16. července 2018.
  4. Oded Goldreich, Shafi Goldwasser a Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Kryptosystémy s veřejným klíčem z problémů s redukcí mřížky]. - S. 112-114 . Archivováno 4. května 2019.
  5. Phong Q. Nguyen. Kryptoanalýza kryptosystému Goldreich-Goldwasser-Halevi z Crypto '97. . - S. 4 . Archivováno z originálu 16. července 2018.
  6. Oded Goldreich, Shafi Goldwasser a Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Kryptosystémy s veřejným klíčem z problémů s redukcí mřížky]. — S. 122-124 . Archivováno 4. května 2019.
  7. Oded Goldreich, Shafi Goldwasser a Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Kryptosystémy s veřejným klíčem z problémů s redukcí mřížky]. - S. 127-130 . Archivováno 4. května 2019.