Criptosistem Gentry

Versiunea actuală a paginii nu a fost încă revizuită de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 19 decembrie 2017; verificările necesită 78 de modificări .

Criptosistemul Gentry (de la numele de familie al creatorului Craig Gentry) este prima construcție posibilă pentru un criptosistem complet homomorf bazat pe criptografie în rețea . A fost propus pentru prima dată de Craig Gentry în 2009 [1] și a făcut obiectul tezei sale de doctorat. Schema Gentry acceptă operațiuni de adunare și multiplicare pe text cifrat, ceea ce vă permite să construiți inele pentru a implementa orice calcul arbitrar. Ulterior, a avut multe îmbunătățiri și modificări pentru a-și îmbunătăți performanța.

Descrierea algoritmului

Schema folosește [2] rețele ideale J în lanțuri de polinoame modulo . Forma normală hermitiană a unei rețele ideale are forma [2] :

, unde și r este rădăcina pentru modulo d.

Generare cheie [2]

  1. Este aleasă o rețea v-întreg n-dimensională arbitrară , unde fiecare intrare este aleasă la întâmplare ca număr de t-biți. Cu acest vector v, polinomul este definit formal , precum și matricea de rotație corespunzătoare:

  1. Inversul pentru se calculează modulo , adică un polinom de gradul cel mult n-1, care este . Apoi matricea

este inversul lui , adică unde  este matricea de identitate.

  1. De asemenea, se verifică că forma normală hermitiană pentru are forma indicată mai sus și anume, toate coloanele cu excepția celei din stânga formează matricea de identitate. În acest caz, întreaga matrice poate fi obținută folosind elementele r și d.

Cheia publică va fi matricea dată de numerele r și d. Cheia privată va fi două polinoame .

Criptare [2]

Lăsați să fie necesar să criptați puțin

La intrare există bit b și cheia publică V. Se alege vectorul de zgomot , ale cărui componente iau valori 0,1,-1. Apoi se calculează vectorul , iar textul cifrat este calculat cu formula [2]

Aici, pentru o bază V a spațiului L și un vector dat c, expresia este folosită pentru a desemna un vector astfel încât [2]

Decriptare [2]

Intrarea are un vector C și matrice V și W. Bitul original b este obținut ca rezultat al operației:

Omomorfism [2]

Criptarea este omomorfă în ceea ce privește operațiile de adunare și înmulțire. Pentru a efectua adunarea sau înmulțirea textelor cifrate, este necesar să se efectueze aceste operații în baza V

Rezistenta [3]

Gentry a justificat securitatea schemei sale cu două probleme: problema complexității celui mai rău caz al criptografiei pe rețelele ideale și problema sumei submulților. Ambele probleme sunt -grele, astfel încât stabilitatea sistemului este redusă la o problemă -hard.

Defecte

Un dezavantaj semnificativ al acestei scheme este că executarea calculelor duce la acumularea de erori [4] și, după ce depășește , devine imposibilă decriptarea mesajului. Una dintre soluțiile la această problemă este recriptarea datelor după un anumit număr de operații, totuși, această opțiune reduce performanța calculelor și necesită acces constant la cheia secretă [3] .

Diagrama simplificată a lui Gentry

Se consideră o schemă homomorfă numai în raport cu operația de adunare [4] .

Generarea cheilor

  1. Este selectat un număr , modulo căruia va funcționa schema.
  2. Se alege o cheie secretă  - un număr aleatoriu, mult mai mare , astfel încât gcd
  3. Se alege o cheie publică  — un set de numere mari astfel încât , unde  este un număr aleator mic,  este un număr aleator arbitrar.

Criptare

Intrarea conține textul de criptat și cheia publică. Textul cifrat va fi suma unui număr arbitrar de elemente ale cheii publice și textul simplu.

decriptare

Intrarea conține un text cifrat și numere și . Restul împărțirii textului cifrat la și la este calculat secvenţial . Rezultatul va fi mesajul original.

homomorfism

Pentru a obține suma textelor și , este suficient să adăugați textele cifrate și să efectuați operația de decriptare. Într-adevăr:

Avantajul acestei scheme este ușurința de implementare și cerințele reduse de resurse. Dezavantajele includ un set finit de chei publice și doar homomorfism parțial.

Implementarea Smart și Wertcauteren

Prima încercare de implementare a schemei Gentry a fost făcută în 2010 de către Smart și Werkauteren [5] . Pentru implementare, au ales o schemă care folosește rețele ideale pentru un determinant simplu. Astfel de structuri sunt reprezentate de două numere întregi (indiferent de mărimea lor). Smart și Wertkauteren au propus o metodă de decriptare în care cheia secretă este un singur întreg. Astfel, oamenii de știință au reușit să implementeze un circuit omogen omomorf, dar nu au putut implementa tehnica Gentry în cazul unor parametri suficient de mari și, prin urmare, nu au reușit să obțină un circuit încărcat și complet omomorf.

Principalul obstacol în această implementare a fost dificultatea de a genera chei pentru scheme omogene: în primul rând, schemele trebuie să genereze un număr foarte mare de „candidați” pentru găsirea unei chei pentru care determinantul este simplu - până la candidați atunci când se lucrează cu structuri de dimensiune. . În plus, chiar și după găsirea variantei optime, complexitatea calculării cheii secrete corespunzătoare acestei structuri este egală, cel puțin pentru rețelele de dimensiune . Din aceste motive, oamenii de știință nu au reușit să genereze chei dimensionale . În plus, Smart și Vercauteren au estimat că polinomul de decriptare va avea un grad de câteva sute, iar acest lucru necesită utilizarea unei rețele de cel puțin dimensiune pentru procedura cu parametrii lor , care depășește semnificativ capacitățile de calcul ale procedurii de generare a cheilor . 2] .

Schema complet homomorfă a lui Gentry

În 2011, Craig Gentry, împreună cu Shai Halevi, au prezentat [2] o implementare practică pentru o schemă de criptare complet homomorfă, similară cu cea folosită în lucrările anterioare de Smart și Wertcauteren. Optimizarea principală constă într-o metodă de generare a cheilor pentru criptarea de bază relativ homomorfă care nu necesită inversarea polinomială completă. Acest lucru reduce complexitatea asimptotică de la până la când lucrați cu rețele dimensionale (și în practică reduce timpul de calcul de la multe ore la câteva minute).

Note

  1. Craig Gentry. „A FULLY HOMOMORPHIC ENCRYPTION SCHEME” Arhivat 5 februarie 2017 la Wayback Machine O disertație depusă la departamentul de informatică și la comisia pentru studenții absolvenți ai Universității Standford, 2009.
  2. 1 2 3 4 5 6 7 8 9 10 Craig Gentry și Shai Halevi. „Implementarea Schemei de criptare complet homomorfă a lui Gentry” Arhivat la 22 decembrie 2017 la cercetarea IBM Wayback Machine .
  3. 1 2 Trubey A.I. CRIPTARE HOMOMORFĂ: SECURITATE CLOUD COMPUTING ȘI ALTE APLICAȚII (REVIZIE). Informatica. 2015;(1):90-101.
  4. 1 2 Alumyan A.S., Glazunov I.A., Tishin V.V. „Criptarea homomorfă” Arhivată 22 decembrie 2017 la articolul Wayback Machine pentru a XXI-a Conferință internațională științifică și practică „Comunitatea științifică a studenților: CERCETARE INTERDISCIPLINARĂ” (Rusia, Novosibirsk, 18 mai 2017)
  5. NP SmartF. Vercauteren. „Fully Homomorphic Encryption with Relatively Small Key and Ciphertext Sizes” Arhivat 22 decembrie 2017 la Wayback Machine , 2010.