Criptosistem Goldwasser - Micali

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

Criptosistemul Goldwasser-Micali ( GM ) este un sistem criptografic cu cheie publică dezvoltat de Shafi Goldwasser și Silvio Micali în 1982 . GM este prima schemă de criptare probabilistică cu cheie publică care se dovedește sigură în ipotezele criptografice standard. Cu toate acestea, criptosistemul GM este ineficient deoarece textul cifrat poate fi de sute de ori mai lung decât mesajul criptat. Pentru a demonstra proprietățile de securitate ale unui criptosistem, Goldwasser și Micali au introdus noțiunea larg utilizată de securitate semantică .

Goldwasser și Micali au primit premiul Turing 2012 pentru crearea unui criptosistem probabilistic ca o lucrare de pionierat care a avut un impact semnificativ asupra criptografiei moderne .

Bazele

Conceptul de rezistență la un atac IND-CPA a fost propus pentru prima dată de Goldwasser și Micali. Ei au numit acest concept persistență semantică. Constă în faptul că textul cifrat nu permite nicio informație utilă despre textul simplu (cu excepția lungimii textului simplu) să se scurgă către orice atacator cu resurse de calcul limitate polinomial. Goldwasser și Micali au descoperit că în multe aplicații, mesajele pot conține informații a priori utile pentru organizarea atacurilor. De exemplu, textul cifrat poate conține o singură instrucțiune simplă (de exemplu, „cumpără” sau „vinde”, sau numele unuia dintre mai mulți candidați la vot). Goldwasser și Micali au subliniat că criptosistemele cu cheie publică bazate pe aplicarea directă a funcțiilor unidirecționale cu secret, de regulă, ascund foarte slab conținutul unor astfel de mesaje.

Proprietate (persistență semantică). Toate elementele de text simplu care pot fi calculate eficient dintr-un anumit text cifrat pot fi calculate eficient fără acesta.

Goldwasser și Micali au propus o schemă de criptare probabilistică care are această proprietate. Criptează întregul mesaj bit cu bit și toată complexitatea asociată cu găsirea unui singur bit criptat în textul c este verificarea dacă numărul c aparține setului sau setului

Descrierea algoritmului

Generare cheie

Pentru a seta parametrii cheie, Alice trebuie să efectueze următoarele operații:

  1. Alegeți două numere aleatoare și , satisfacând condiția de biți
  2. Calculați valoarea
  3. Extrageți un număr întreg aleatoriu care satisface condiția ( simboluri Jacobi ) (Astfel , dar .)
  4. Descrieți perechea ca o cheie publică și păstrați perechea secretă ca o cheie privată.

Criptare

Pentru a trimite un șir lui Alice , Bob face următoarele:

{ }



Bob îi trimite un mesaj lui Alice

Decriptare

După ce a primit tuplu , Alice efectuează următoarele operații:

{


}

Complexitatea temporală a algoritmului

Pentru a cripta un mesaj format din biți, trebuie să efectuați operații pe biți. Această expresie este o estimare a complexității în timp a algoritmului. Gradul de expansiune al acestui algoritm este egal cu : un bit din textul simplu corespunde unui bit din textul cifrat. Deoarece calculul simbolului Legendre modulo și modulo prevedea că trebuie efectuate operații pe biți, operațiuni pe biți sunt necesare pentru a descifra tuplu . Această expresie este o estimare a complexității de timp a decriptării.

Puterea criptosistemului GM

Algoritmul de criptare din criptosistemul GM poate fi considerat un algoritm randomizat fără erori: operațiile aleatorii din algoritmul de criptare nu pot distorsiona textul cifrat și, în același timp, au următoarele proprietăți importante.

Zero biți din textul sursă sunt distribuiți uniform peste set , iar unii peste set . Ambele distribuții sunt uniforme, deoarece pentru bitul zero conținut în textul original, pătratul înseamnă o mapare a grupului de pe mulțime , iar pentru un bit de unitate, înmulțirea unui element al mulțimii cu un număr este o mapare de la mulțime la set .

Referințe