Criptosistem Bonnet-Go-Nissima
Criptosistemul Bonet-Go-Nishima este un criptosistem parțial homomorf , care este o modificare a criptosistemului Paye [1] și a criptosistemului Okamoto-Uchiyama [2] . Dezvoltat în 2005 de Dan Bonet [3] cu Yu Jin Go și Koby Nissim [4] [5] . Bazat pe grupuri finite de ordin compus și perechi biliniare pe curbe eliptice; sistemul permite evaluarea polinoamelor pătratice multivariate pe texte cifrate (de exemplu, forma normală disjunctivă de ordinul doi (2- DNF )).
Sistemul are un homomorfism aditiv (suportă adunări arbitrare și o înmulțire (urmată de adunări arbitrare) pentru datele criptate).
Algoritmul utilizat în criptosistemul BGN se bazează pe problema Burnside . [6] .
Algoritm de operare
Ca toate sistemele de criptare homomorfă, CBGN include următoarele procese: generarea cheilor, criptarea și decriptarea.
Construcția folosește câteva grupuri finite de ordine compuse care suportă o mapare biliniară. Se folosește următoarea notație:
și sunt două grupuri ciclice de ordin finit .

- generator .
este o mapare biliniară . Cu alte cuvinte, pentru toți și avem . De asemenea, solicităm ca : este un generator





Spunem că este un grup biliniar dacă există un grup și o mapare biliniară definite mai sus. [7]
Generare cheie
Generare_Key( ) :
- Având în vedere parametrul de securitate ca intrare , calculăm algoritmul pentru a obține un tuplu . Algoritmul funcționează astfel:



- Să generăm două numere aleatoare de biți și și setați .




- Să creăm un grup biliniar de ordin , unde > 3 este un număr dat care nu este divizibil cu 3:



- Găsiți cel mai mic număr natural astfel încât să fie un număr prim și .



- Se consideră un grup de puncte pe o curbă eliptică definită peste . Deoarece curba are puncte în . Prin urmare, grupul de puncte de pe curbă are un subgrup de ordin , pe care îl notăm cu .







- Fie subgrupul de ordin . Algoritmul de împerechere Weil modificat (împerecherea Weyl este o mapare biliniară, simetrică, nedegenerată [8] [4] [9] [10] ) pe o curbă produce o mapare biliniară care satisface condițiile date




- La ieșire obținem .

- Lasă . Să alegem două generatoare aleatorii și să definim ca . Atunci este un generator de subgrup aleatoriu de ordine . Cheie publică: . Cheie privată: . [11] [7]









Criptare
Cifrare( ):
Presupunem că spațiul mesajului este format din numere întregi din mulțime . Pentru a cripta un mesaj folosind cheia publică , alegem un parametru aleatoriu și calculăm




.
Rezultatul este textul cifrat. [11] [7]
Decriptare
Decodificare( ):
Pentru a decripta textul cifrat folosind cheia privată , luați în considerare următoarea expresie

.
Lasă . Pentru a restabili , este suficient să calculați logaritmul discret la bază .




Trebuie remarcat faptul că decriptarea în acest sistem necesită timp polinomial în dimensiunea spațiului de mesaje. [11] [7]
Exemple
Un exemplu despre cum funcționează algoritmul
Mai întâi alegem două numere prime diferite
.
Calculați produsul
.
În continuare, construim un grup de curbe eliptice cu ordinea , care are o hartă biliniară. Ecuația curbei eliptice

care este definită peste un câmp pentru un număr prim . În acest exemplu, stabilim


.
Prin urmare, curba este suprasingulară cu # puncte raționale, care conține un subgrup de ordin . În grup, alegem două generatoare aleatorii




,
unde aceste două generatoare au ordine și calculează

unde este ordinea . Calculăm textul cifrat al mesajului


.
Să luăm și să calculăm

.
Pentru a decripta, mai întâi calculăm
și
.
Acum găsim logaritmul discret, sortând toate puterile după cum urmează

.
Vă rugăm să rețineți că . Prin urmare, decriptarea textului cifrat este egală cu , care corespunde mesajului original. [12]
Evaluare 2-DNF
Un sistem parțial homomorf permite estimarea 2 -DNF .
Intrare: Alice are o formulă 2-DNF și Bob are un set de variabile . Ambele părți ale intrării conțin o setare de securitate .



- Bob face următoarele:
- Acesta execută algoritmul Generate_Key( ) pentru a-l calcula și a-l trimite lui Alice.



- Acesta calculează și trimite Cipher( )
pentru .
- Alice face următoarele:
- Efectuează aritmetizarea prin înlocuirea „ ” cu „ ”, „ ” cu „ ”, și „ ” cu „ ”. Rețineți că acesta este un polinom de gradul 2.








- Alice calculează o criptare pentru una aleasă aleatoriu folosind proprietățile homomorfe ale sistemului de criptare. Rezultatul este trimis lui Bob.


- Dacă Bob primește criptarea „ „, el scoate „ „; în caz contrar, scoate „ „. [13]



Proprietăți omomorfe
Sistemul este homomorf aditiv. Să fie cheia publică. Fie textele cifrate ale mesajelor, respectiv. Oricine poate crea o criptare distribuită uniform calculând produsul unui număr aleatoriu din interval .







Mai important, oricine poate multiplica două mesaje criptate o dată folosind o hartă biliniară. Să definim și . Apoi comandă și comandă . În plus, pentru un parametru (necunoscut) , scriem . Să presupunem că cunoaștem două texte cifrate , . Pentru a construi criptarea produsului , alegem un număr aleatoriu și setăm . Obținem , unde este distribuit uniform în , după cum este necesar.
















Astfel, este o criptare distribuită uniform , dar numai în grup , nu în (deci este permisă o singură multiplicare). [unsprezece]


Stabilitatea sistemului
Stabilitatea acestei scheme se bazează pe problema Burnside : cunoscând un element dintr-un grup de ordine compus , este imposibil să se determine dacă acesta aparține unui subgrup al ordinului .


Fie , și un tuplu creat de , unde . Luați în considerare următoarea problemă. Pentru un anumit și element , tipăriți „ „ dacă comanda este , în caz contrar tipăriți „ ”. Cu alte cuvinte, fără a cunoaște factorizarea grupului de ordine , trebuie să știm dacă un element se află într-un subgrup al grupului . Această problemă se numește problema Burnside [7] .













Este clar că dacă putem lua în considerare ordinea grupului în criptosistem, atunci cunoaștem cheia privată și, ca urmare, sistemul este stricat. De asemenea, dacă putem calcula logaritmii discreti din grup, atunci putem calcula și . Astfel, condițiile necesare pentru securitate sunt: complexitatea factoringului și complexitatea calculării logaritmilor discreti în . [paisprezece]





Note
- ↑ Pascal Paillier. Criptosisteme cu cheie publică bazate pe clase de reziduozitate de grad compus // Progrese în criptologie - EUROCRYPT '99 / Jacques Stern. — Springer Berlin Heidelberg, 1999. — P. 223–238 . — ISBN 9783540489108 . - doi : 10.1007/3-540-48910-x_16 . Arhivat din original pe 26 iunie 2019.
- ↑ Tatsuaki Okamoto, Shigenori Uchiyama. Un nou criptosistem cu cheie publică la fel de sigur ca factoring // Progrese în criptologie - EUROCRYPT'98 / Kaisa Nyberg. — Springer Berlin Heidelberg, 1998. — P. 308–318 . — ISBN 9783540697954 . - doi : 10.1007/bfb0054135 . Arhivat din original pe 29 august 2018.
- ↑ Mihir Bellare, Juan A. Garay, Tal Rabin. Verificare rapidă a lotului pentru exponențierea modulară și semnăturile digitale // Advances in Cryptology - EUROCRYPT'98 / Kaisa Nyberg. — Springer Berlin Heidelberg, 1998. — P. 236–250 . — ISBN 9783540697954 . - doi : 10.1007/bfb0054130 . Arhivat din original pe 7 iunie 2018.
- ↑ 1 2 Dan Boneh, Matt Franklin. Criptare bazată pe identitate din perechea Weil // Progrese în criptologie - CRYPTO 2001 / Joe Kilian. — Springer Berlin Heidelberg, 2001. — P. 213–229 . — ISBN 9783540446477 . - doi : 10.1007/3-540-44647-8_13 . Arhivat din original pe 22 februarie 2020.
- ↑ Evaluarea formulelor 2-DNF pe texte cifrate . Preluat la 20 februarie 2021. Arhivat din original la 8 august 2017. (nedefinit)
- ↑ Secure Computation II // Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, SUA, 10-12 februarie 2005 : proceduri . - Berlin: Springer, 2005. - P. 326. - 1 resursă online (xii, 619 pagini) p. - ISBN 9783540305767 , 3540305769, 3540245731, 9783540245735.
- ↑ 1 2 3 4 5 Takuho Mitsunaga, Yoshifumi Manabe, Tatsuaki Okamoto. Protocoale eficiente de licitație sigure bazate pe criptarea Boneh-Goh-Nissim . — 22.11.2010. - T. E96A . — S. 149–163 . - doi : 10.1007/978-3-642-16825-3_11 .
- ↑ O.N. Vasilenko. Despre calculul perechilor Weyl și Tate // Tr. de discr. Matem .. - M . : FIZMATLIT, 2007. - T. 10. - S. 18-46.
- ↑ Antoine Joux. Un protocol cu o singură rundă pentru Diffie–Hellman tripartit . — 30-12-2006. - T. 17 . — S. 385–393 . - doi : 10.1007/10722028_23 .
- ↑ Victor Miller. Împerecherea Weil și calculul său eficient // J. Cryptology. — 01-09-2004. - T. 17 . — S. 235–261 . - doi : 10.1007/s00145-004-0315-8 .
- ↑ 1 2 3 4 Secure Computation II // Theory of cryptography : Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, SUA, 10-12 februarie 2005 : proceduri . - Berlin: Springer, 2005. - P. 329. - 1 resursă online (xii, 619 pagini) p. - ISBN 9783540305767 , 3540305769, 3540245731, 9783540245735.
- ↑ Yi, Xun (Profesor de facultate), . Criptare homomorfă și aplicații . — Cham. — 1 resursă online (xii, 126 pagini) p. - ISBN 978-3-319-12229-8 , 3-319-12229-0.
- ↑ Theory of cryptography: Second Theory of Cryptography Conference, TCC 2005, Cambridge, MA, SUA, 10-12 februarie 2005: proceduri . - Berlin: Springer, 2005. - P. 332. - 1 resursă online (xii, 619 pagini) p. - ISBN 9783540305767 , 3540305769, 3540245731, 9783540245735.
- ↑ EUROCRYPT 2010 (2010 : Riveria, Franța). Progrese în criptologie--EUROCRYPT 2010 : a 29-a Conferință Internațională Anuală privind Teoria și Aplicațiile Tehnicilor Criptografice, Riviera Franceză, 30 mai-3 iunie 2010 : lucrări . - Springer, 2010. - ISBN 9783642131905 , 3642131905.
Literatură
- S. M. Vladimirov, E. M. Gabidulin, A. I. Kolybelnikov, A. S. Kshevetsky. Metode criptografice de protecție a informațiilor. - Ed. a II-a. - MIPT, 2016. - S. 225-257. — 266 p. - ISBN 978-5-7417-0615-2 .
Link -uri