Există multe scenarii în care criptarea asimetrică nu poate fi înlocuită cu criptarea hibridă. La un nivel înalt, caracteristica comună a acestor scenarii este că exploatează o anumită proprietate algebrică a schemei de criptare asimetrică, pe care o metodă de criptare hibridă le-ar sparge. Acest lucru se întâmplă de obicei atunci când nu vrem doar comunica date, dar și vreau manipulați-l într-o manieră care să păstreze intimitatea.
Cele mai comune două moduri de a exploata proprietățile algebrice ale schemelor de criptare asimetrice sunt:
- Omomorfism: date două texte cifrate $\mathsf{Enc}(m_0)$ și $\mathsf{Enc}(m_1)$, este posibil să le distrugeți într-un text cifrat $\mathsf{Enc}(m_0 \boxplus m_1)$, Unde $\boxplus$ este o operație (de exemplu, adunarea sau înmulțirea).
- Ușurință pentru dovezi: există dovezi eficiente de zero cunoștințe pentru a demonstra afirmațiile de forma "$c$ este o criptare a unui mesaj $m$ Unde $m$ satisface o anumită proprietate"
Permiteți-mi să le ilustrez pe ambele cu un scenariu de jucărie. Să presupunem că vrem să facem un vot între doi candidați, $C_0$ și $C_1$, și sunt $n$ alegătorii $V_1, \cdots, V_n$. Vrem să descoperim rezultatul votului, fără a dezvălui voturile individuale. O posibilă soluție (simplificată) este următoarea: fiecare alegător $V_i$ își criptează votul, care este fie $0$ (dacă $V_i$ voturi pentru $C_0$) sau $1$ (altfel). Lasă-mă să sun $(E_1, \cdots, E_n)$ voturile criptate. Observați că ceea ce dorim să știm este următorul: care este suma valorilor textului simplu? Rezultatul împărțit la $n$ corespunde fracţiei de voturi care $C_1$ a primit; dacă este mai mult decât $50\%$, ei câștigă alegerile.
Presupun că schema de criptare este aditiv homomorf: din criptări ale $m_0$ și $m_1$, se poate calcula homomorf o criptare a sumei $m_0+m_1$ (mai formal, avem nevoie și de o cerință tehnică numită confidențialitate funcțională: textul cifrat rezultat nu ar trebui să scurgă mai multe informații decât această sumă).
Vom avea două entități: an agregator si a decriptor. Agregatorul preia textele cifrate $E_1, \cdots E_n$, însumându-le homomorf, primește o criptare $E$ a rezultatelor și îl trimite către decriptor. Decriptorul are cheia secretă și publică rezultatul alegerilor.
Dar stai, sunt probleme! Ce se întâmplă dacă decriptorul minte cu privire la valorile decriptate? Ce-ar fi dacă $V_i$ criptează, să zicem, $18$ în loc de $0$ sau $1$? Acest lucru ar adăuga efectiv $18$ voturi pentru $C_1$. Fără a intra în detalii, criptografie are metode pentru a se ocupa de asta, numite dovezi de zero cunoștințe, care permit adăugarea unei dovezi la un obiect (de exemplu, un text cifrat) pentru a garanta că acesta satisface o anumită proprietate, fără a-i compromite confidențialitatea. Aici, fiecare $V_i$ ar putea adăuga o dovadă că $E_i$ într-adevăr criptează puțin (fără a dezvălui care), iar decriptorul ar putea trimite și o dovadă că $E$ într-adevăr decriptează la rezultatul corect (fără a dezvălui cheia secretă de decriptare).
După cum puteți vedea de mai sus, având în vedere o schemă de criptare cu (1) homomorfism aditiv și (2) posibilitatea de a efectua dovezi cu cunoștințe zero, putem construi aplicații interesante - votul fiind un exemplu firesc. Vă puteți convinge cu ușurință că criptarea hibridă rupe homomorfismul în general și, dacă sunteți puțin familiarizat cu dovezile de zero cunoștințe, veți observa, de asemenea, că criptarea hibridă le-ar face extrem de ineficiente.
Aș putea enumera multe alte exemple în conformitate cu cele de mai sus: numerar electronic, licitații electronice, acreditări anonime și multe altele. Ceea ce au în comun este că vrem să facem mai mult decât să transmitem datele: vrem să le manipulăm, ceea ce necesită o oarecare maleabilitate, și vrem să o facem în siguranță, ceea ce necesită capacitatea de a verifica dacă s-au făcut doar manipulări autorizate. Ambele necesită o criptare asimetrică specifică cu proprietăți adecvate.