Az ideális rács egy meghatározott matematikai struktúra , amelyet a rácsok (amelyek véges rangú szabad kommutatív csoportok) leírásához szükséges paraméterek számának csökkentésére használnak . Ez a fajta rács gyakran megtalálható a matematika számos területén, különösen a számelmélet részében . Így az ideális rácsok hatékonyabban használhatók, mint a kriptográfiában használt többi rács . Ideális rácsokat használnak az NTRUEncrypt és NTRUSign nyilvános kulcsú kriptográfiai rendszerekben a hatékony kriptográfiai primitívek létrehozására . Az ideális rácsok képezik a kvantumkriptográfia alapvető alapját is , amely védelmet nyújt a kvantumszámítógépekkel kapcsolatos támadásokkal szemben.
Az RSA és az ECC sémák , amelyek akár a faktorizáció összetettségén , akár a diszkrét logaritmusprobléma összetettségén alapulnak , a legnépszerűbb aszimmetrikus titkosítási rendszerek, amelyek különböző kulcsokat használnak az információk titkosításához, majd visszafejtéséhez. Az RSA és ECC sémák túlsúlya ellenére ismert, hogy érzékenyek a kvantumszámítógépeket használó támadásokra [1] . Ezenkívül az RSA és az ECC meglehetősen nem hatékony a nagyon kicsi és korlátozott eszközökön, például a 8 bites AVR mikrokontrollereken , amelyeket a mai napig használnak különféle területeken, mint például a robotika , az energia, a műholdas kommunikációs rendszerek és sok más. A fenti sémák egy lehetséges alternatívája az ideális rácsokban lévő kemény problémákon alapuló aszimmetrikus kriptorendszerek [2] . Az ideális rácsok speciális algebrai szerkezete jelentősen csökkentheti a kulcs és a rejtjelezett szöveg méretét, miközben hatékony aritmetikát biztosít a számelméleti transzformáció segítségével. Így az ideális rácsok használatának köszönhetően a titkosított információk védettségi foka megnövekszik [3] .
A rácselmélet lineáris algebra segítségével írható le . A rácsot általában egy n-dimenziós valós lineáris tér bármely egyenletes eloszlású pontrácsának tekintik, ahol minden koordináta egész szám . Ez a halmaz egy csoportot alkot, ha koordinátákhoz adjuk, és diszkrét , ami azt jelenti, hogy a halmaz minden pontja körül van egy nyitott golyó , amely nem tartalmaz más pontot a halmazban , így a rács az összes lineáris egész halmaza. egy adott lineárisan független ponthalmaz kombinációi a -ban . A rácsok csoportok , az ideális rácsok pedig az ideálok [4] .
Konkrétan, az ideális rácsok valamilyen irreducibilis fokú polinom alakú gyűrűknek felelnek meg [5] . Az ideális rácsos kriptográfia alapvető művelete a polinomiális szorzás .
Ideális rács olyan egész rács , amely bizonyos bázisra úgy , hogy valamilyen redukált fokszámú polinomra létezik ideális
Korlátozások :
Ha egy fokú normalizált irreducibilis egész polinom , akkor bármely ideál teljes rangú izomorf rács -ben , azaz az alap lineárisan független vektorokból áll, amelyek koordinátái a fokpolinom együtthatói .
Legyen adott a bázis Feltétel: ha lefedi az ideális rácsot a paraméterhez képest , akkor igaz , egyébként hamis
Kiegészítés: a mátrix felveszi a formát
Ezzel az algoritmussal [6] ellenőrizhető, hogy kevés rács ideális rács [6] .
Vegyünk egy példát: Legyen és , akkor
ideális, ellentétben
Lyubashevsky V. és Missiancio D. által kitalált példával [7]
Az algoritmus használatához a mátrixnak egy hermitikus normálformának kell lennie , tehát az algoritmus első lépése kötelező. A determináns , és a hozzá tartozó mátrix
és végül a mátrixszorzat az
Ezen a ponton az algoritmus leáll, mert az utolsó oszlop kivételével minden oszlopnak nullának kell lennie, ha tökéletes rács .
Az ütközésálló hash függvény olyan leképezéssel definiált függvény , hogy egy halmaz (valamely számtér tartománya) kardinalitása nagyobb, mint egy halmaz számossága , , ami megnehezíti az ütközés megtalálását , azaz egy pár . Így egy véletlenszerűen kiválasztott támadó esetén egyetlen támadó sem tud hatékonyan (ésszerű időn belül) találni ütközéseket a -ban , annak ellenére, hogy vannak ütközések [11] . Az ideális rácsok fő felhasználása a kriptográfiában annak köszönhető, hogy kellően hatékony és praktikus ütközési hash függvények építhetők fel az ilyen rácsokban a hozzávetőleges legrövidebb vektor megtalálásának keménysége alapján [5] . Ideális kriptográfiai rácsokat tanulmányozó tudóscsoportok az ideális rácsokra épülő ütközésálló hash függvényeket vizsgálták, nevezetesen Peikret K. és Rosen S. [12] . Ezek az eredmények megnyitották az utat más hatékony kriptográfiai konstrukciók, köztük az azonosítási és aláírási sémák előtt.
Lobashevsky V. és Missiancio D. [ 7] hatékony és ütközésálló hash függvényeket javasoltak, amelyek az ideális rácsok legrövidebb vektorproblémájának legrosszabb merevsége alapján igazolhatók . Így meghatároztuk az elemekhez tartozó hash függvények figyelembe vett családjait:
, ahol van egy minta véletlenszerű elemekből , .
Ebben az esetben a kulcs méretét, vagyis a hash függvényt [13] -ban definiáljuk , a gyors Fourier-transzformációs algoritmus segítségével megfelelő , a művelet időben befejezhető . Mivel ez egy állandó, a kivonatoláshoz véges idő szükséges .
A digitális aláírási sémák a legfontosabb kriptográfiai primitívek közé tartoznak. Ezek a rácsproblémák legrosszabb merevségén alapuló egyirányú függvényekkel érhetők el , de nem praktikusak. A hibatanulási probléma kriptográfiai felhasználása óta számos új digitális aláírási sémát fejlesztettek ki , amelyek a hibatanuláson és a hibagyűrűs tanuláson alapulnak. [tizennégy]
A digitális aláírások közvetlen felépítése azon alapul, hogy az ideális rácsok legrövidebb vektorát nehéz megközelíteni . [15] V. Lyubashevsky és D. Missiancio [15] ideális rácsokon alapuló sémája a legrosszabb esetben is biztonsági garanciákkal rendelkezik, és a ma ismert aszimptotikusan leghatékonyabb konstrukció, amely lehetővé teszi aláírások generálását és algoritmusok ellenőrzését is. amelyek szinte lineáris időben futnak [16] .
Az egyik fő nyitott probléma, amely a fent leírt munkák során felmerült, az egyszeri aláírás létrehozása hasonló hatékonysággal, de gyengébb keménységi feltételezés alapján. Például nagyszerű lenne egy egyszeri aláírást biztosítani olyan biztonsággal, amely a legrövidebb vektorprobléma (SVP) (ideális rácsokban) belülre való közelítésének nehézségén alapul . [17]
Az ilyen digitális aláírások létrehozása az egyszeri aláírások (azaz egyetlen üzenet biztonságos aláírását lehetővé tévő aláírások) általános aláírási sémákká történő konvertálásán alapul, valamint egy új, rács alapú egyszeri aláírás-tervezés, amelynek biztonsága végső soron a legrövidebb vektorközelítés legrosszabb merevségén alapul az összes rácsban , ami megfelel a gyűrűben lévő ideáloknak bármely irreducibilis polinomra [16] .
A hash függvény meglehetősen hatékony, és időben aszimptotikusan kiszámolható a komplex számok gyors Fourier-transzformációjával . A gyakorlatban azonban ez jelentős többletköltséggel jár. A Missiancio D. és Regev [16] által definiált SWIFFT bizonyított biztonságú kriptográfiai hash függvények halmaza valójában a fent leírt hash függvény rendkívül optimalizált változata a gyors Fourier-transzformáció segítségével . Az f vektort úgy határozzuk meg, hogy egyenlő 2 hatványával, tehát a megfelelő polinom egy irreducibilis polinom. A SWIFFT- függvények ütközésérzékelése egyenértékű az ideális rács alapfüggvényében található ütközések megtalálásával . A SWIFFT ütközések deklarált tulajdonsága [18] a legrosszabb esetben az ideális rácsok problémáinál támogatott.