GGH-salausjärjestelmä

GGH-salausjärjestelmä ( eng.  Goldreich–Goldwasser–Halevi ) on epäsymmetrinen salausjärjestelmä, joka perustuu hilaan . On myös GGH - allekirjoitusjärjestelmä .

Salausjärjestelmä perustuu ratkaisuihin lyhimmän vektorin löytämiseen ja lähimmän vektorin löytämiseen . Tiedemiesten Oded Goldreichin , Shafi Goldwasserin ja Shai Halevin vuonna 1997 julkaisema GGH-salausjärjestelmä käyttää yksisuuntaista salaista syöttötoimintoa , koska minkä tahansa hilapohjan perusteella on helppo luoda vektori lähellä hilapistettä. Esimerkiksi ottamalla hilapiste ja lisäämällä pieni virhevektori. Virhevektorista palaamiseksi hilan alkupisteeseen tarvitaan erityinen perusta. Vuonna 1999 Phong Q. Nguyen [1] paransi alkuperäistä GGH-salausjärjestelmää, mikä mahdollisti neljän viidestä GGH-ongelmasta ratkaisemisen ja osittaisen tiedon hankkimisen jälkimmäisestä. Vaikka GGH voi olla turvallinen tietyillä parametrivalinnoilla, sen tehokkuus perinteisiin julkisen avaimen salausjärjestelmiin verrattuna on edelleen kiistanalainen [2] . Usein salaus vaatii korkean hilamitan, kun taas avaimen koko kasvaa suunnilleen neliöllisesti hilan kokoon nähden [2] .

Ainoa suuria mittoja käsittelevä hilakaavio on NTRU [3] .

Algoritmi

GGH sisältää julkisen avaimen ja yksityisen avaimen [4] . Yksityinen avain on hilan pohja, jossa on unimodulaarinen matriisi .

Julkinen avain on toinen kanta lomakkeen hilassa .

Olkoon sanoma-avaruus M koostuva väliin kuuluvista vektoreista .

Salaus

Annettu viesti , virhe ja julkinen avain :

Matriisimerkinnällä:

On muistettava, että se koostuu kokonaislukuarvoista, on hilapiste ja on siksi myös hilapiste. Sitten salateksti on:

Transkriptio

Salatekstin purkamiseksi lasketaan:

Jos se on tarpeeksi pieni, poistamiseen käytetään Babain pyöristysmenetelmää [ 5] .

Sitten saadaksesi tekstin:

Turvallisuusanalyysi

Tässä osiossa käsitellään useita tapoja hyökätä kryptojärjestelmää vastaan ​​[6] .

Hyökkäys pyöristämällä

Pyöristyshyökkäys on tämän salausjärjestelmän ilmeisin hyökkäys, lukuun ottamatta raa'an voiman hyökkäystä - virhevektorin etsimistä . Sen ydin on käyttää julkista avainta B kääntämään funktio samalla tavalla kuin käytettäessä yksityistä avainta R Nimittäin tietäen , voit laskea . Siten voit löytää vektorin . Alle 80 LLL :n mitoissa algoritmi pystyy määrittämään perusteen oikein, mutta alkaen mitat 100 ja suuremmista, tämä hyökkäys on huonompi kuin triviaali virhevektorin luettelointi.


Myrskyhyökkäys

Tämä algoritmi on ilmeinen jalostus pyöristyshyökkäyksestä. Tässä käytetään parasta approksimaatioalgoritmia lyhimmälle vektoriongelmalle . Erityisesti lähimmän tason algoritmia käytetään Babain pyöristysalgoritmin sijaan. Se toimii näin. Annettu piste ja pelkistetty kanta c = { } LLL :lle . Kaikki affine välilyönnit = { + } : } otetaan huomioon. Kaikesta huolimatta on lähimpänä pistettä oleva hypertaso . Lisäksi piste heijastetaan (n - 1)-ulotteiseen avaruuteen, jonka = { } peittää . Tämä antaa uuden pisteen ja uuden kantakohdan = { }. Algoritmi etenee nyt rekursiivisesti löytääkseen pisteen tässä (n - 1)-ulotteisessa hilassa lähellä . Lopuksi algoritmi asettaa . Tämä menetelmä toimii paljon nopeammin kuin edellinen. Kuitenkin myös sen työmäärä kasvaa eksponentiaalisesti hilaulottuvuuden myötä. Kokeet osoittavat, että käytettäessä LLL :ää hilavähennysalgoritmina, tarvitaan jonkin verran hakuaikaa, alkaen koosta 110-120. Hyökkäys muuttuu mahdottomaksi koosta 140-150 alkaen.

Injektiohyökkäys

Toinen tapa, jota käytetään usein approksimoimaan lähimmän vektorin löytämisongelmaa, on upottaa n kantavektoria ja piste , jolle on tarpeen löytää läheinen hilapiste (n + 1)-ulotteisessa hilassa.

Hilavähennys-algoritmia käytetään sitten etsimään lyhyin nollasta poikkeava vektori kohdasta , siinä toivossa, että tämän vektorin ensimmäiset n elementtiä ovat lähimpänä pistettä . Tälle hyökkäykselle tehdyt kokeet (käyttäen LLL :ää työkaluna lyhimpien vektorien löytämiseen) osoittavat, että se toimii noin 110-120 ulottuvuuksiin asti, mikä on parempi kuin pyöristyshyökkäys, josta tulee huonompi kuin triviaali haku dimension 100 jälkeen.

Hyökkäysten tehokkuuden arviointi [7]

Arvioitu hyökkäys pyöristämällä

Luodaan viisi suljettua kantaa jokaiseen ulottuvuuteen. Jokainen kanta valitaan muodossa = + rand , jossa I on identiteettimatriisi ja rand on neliömatriisi , jonka jäsenet valitaan tasaisesti alueelta . Jokaiselle kannalle lasketaan arvo = , jossa on suurimman rivin euklidinen normi ja . Jokaiselle suljetulle pohjalle luodaan viisi avointa kantaa

= , missä on kaksoisortogonaalisuusvirhe: missä tarkoittaa matriisin riviä .

Assault score

Hyökkäyksen arvioimiseksi käytettiin samoja avoimia ja suljettuja tukikohtia kuin hyökkäyksessä pyöristämällä.

Injektiohyökkäyksen arviointi

Koska injektiohyökkäyksen "työkuormasta" ei voi puhua, mitattiin maksimiarvo (virhevektoriin liittyen), jolla tämä hyökkäys toimii. Näissä kokeissa käytettiin samoja suljettuja tukikohtia ja avoimia tukikohtia kuin kahdessa edellisessä hyökkäyksessä. Sitten jokaisella avoimella pohjalla arvioitiin toiminto useissa kohdissa useilla eri arvoilla ja tarkistettiin, palauttaako injektiohyökkäys salatun viestin.

Esimerkki

Olkoon hila kantaneen ja sen käänteisluvun kanssa :

ja

Unimodulaarisella matriisilla:

ja

Saamme:

Olkoon viesti ja virhevektori Sitten salateksti:

Salauksen purkamiseen tarvitset:

Tämä pyöristyy

Ja viesti palautetaan seuraavasti:

Lähteet ja lisätietoa

  • Oded Goldreich, Shafi Goldwasser ja Shai Halevi. Julkisen avaimen salausjärjestelmät hilan pelkistysongelmista. Julkaisussa CRYPTO '97: Proceedings of the 17th Annual International Cryptology Conference on Advances in Cryptology, sivut 112-131, Lontoo, UK, 1997. Springer-Verlag.
  • Phong Q. Nguyen. Goldreich-Goldwasser-Halevi kryptosysteemin kryptoanalyysi Cryptosta '97. Julkaisussa CRYPTO '99: Proceedings of the 19th Annual International Cryptology Conference on Advances in Cryptology, sivut 288-304, Lontoo, UK, 1999. Springer-Verlag.

Muistiinpanot

  1. Phong Q. Nguyen. Goldreich-Goldwasser-Halevi kryptosysteemin kryptoanalyysi Cryptosta '97. . - S. 1-17 . Arkistoitu alkuperäisestä 16. heinäkuuta 2018.
  2. ↑ 1 2 Phong Q. Nguyen. Goldreich-Goldwasser-Halevi kryptosysteemin kryptoanalyysi Cryptosta '97. S. - 1-2. . Arkistoitu alkuperäisestä 16. heinäkuuta 2018.
  3. Phong Q. Nguyen. Goldreich-Goldwasser-Halevi kryptosysteemin kryptoanalyysi Cryptosta '97. S. - 1. . Arkistoitu alkuperäisestä 16. heinäkuuta 2018.
  4. Oded Goldreich, Shafi Goldwasser ja Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Julkisen avaimen salausjärjestelmät hilavähennysongelmista]. - S. 112-114 . Arkistoitu 4. toukokuuta 2019.
  5. Phong Q. Nguyen. Goldreich-Goldwasser-Halevi kryptosysteemin kryptoanalyysi Cryptosta '97. . - S. 4 . Arkistoitu alkuperäisestä 16. heinäkuuta 2018.
  6. Oded Goldreich, Shafi Goldwasser ja Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Julkisen avaimen salausjärjestelmät hilavähennysongelmista]. - S. 122-124 . Arkistoitu 4. toukokuuta 2019.
  7. Oded Goldreich, Shafi Goldwasser ja Shai Halevi. [ https://link.springer.com/content/pdf/10.1007%2FBFb0052231.pdf Julkisen avaimen salausjärjestelmät hilavähennysongelmista]. - S. 127-130 . Arkistoitu 4. toukokuuta 2019.