Puncte:2

CPA + semnătură puternică unică --> CCA?

drapel cn

Combinarea unei scheme CPA PKE (criptare cu cheie publică) cu o semnătură puternică unică construiește o schemă CCA PKE? Mai precis, hai $(Enc,Dec)$ să fie o schemă CPA PKE și $(V,S)$ să fie o semnătură unică, adică nu se poate falsifica o semnătură validă chiar și pentru mesajele interogate o dată fără $S$.

Apoi, construind o nouă schemă PKE:

$Enc'$ algoritm activat $(pk,m,s)$: $$c1 = Enc(pk,m),$$ $$c2=Semn(s,c1),$$ $$retur (c1,c2).$$ și $Dec'$ algoritm activat $(sk,c,v)$: $$dacă \ Foarte(v,c2)=0,\ returnează \ Fals;$$ $$else \ return \ Dec(sk,c1).\ \ \ \ $$

Este aceasta o schemă CCA?

Mark avatar
drapel ng
Deși acest lucru nu acoperă construcția propusă de dvs., oamenii folosesc de obicei transformarea Fujisaki-Okomoto pentru ceea ce doriți, care este foarte asemănător. Este importantă transformarea pe care o menționezi sau vrei doar indicații generice spre realizarea securității CCA?
Huanhuan Chen avatar
drapel cn
Mulțumesc, Mark. Ideea asta mi-a venit când citeam transformarea Naor-Yung, unde NIZP + Signature + CPA sunt folosite pentru a construi scheme cu securitate CCA. Mă întreb dacă NIZP este necesar în această schemă, așa că am pus această întrebare.
drapel us
Cum obține algoritmul de decriptare cheia de verificare a semnăturii?
Mark avatar
drapel ng
@Mikero aceasta este critica corectă a acestei idei, dar „în spate”. Cheia de verificare a semnăturii poate fi pusă la dispoziția publicului, astfel încât să o puteți include liber în cheia secretă a schemei generale. Prin „înapoi” înțeleg că nu se pot calcula în mod public criptările, deoarece cheia de semnătură trebuie păstrată secretă pentru securitate, deci dacă este blocată în cheia publică a $Enc'$ nu se poate face apel la securitatea schemei de semnătură în niciun fel. mod semnificativ.
Huanhuan Chen avatar
drapel cn
Mulțumesc, Mark. Îl am acum.
Puncte:5
drapel us

Construcția nu poate fi asigurată de CCA

Algoritmul pe care l-ați scris nu spune cum algoritmul de decriptare obține cheia de verificare a semnăturii.

  • Dacă cheia de verificare face parte din cheia publică, atunci nimeni nu poate cripta, deoarece nimeni nu are acces la cheia de semnare (după cum a observat Mark în comentariile de mai sus). De asemenea, acest lucru nu pare să se potrivească cu propunerea dvs. de a utiliza o semnătură unică.

  • Dacă cheia de verificare este inclusă în textul cifrat (în clar), atunci nici aceasta nu funcționează. Acum textele cifrate au forma $$(c=\textsf{Enc}(pk,m), vk, \sigma=\textsf{Semn}(sk,c\|vk))$$ Unde $(sk,vk)$ este o pereche de chei cu semnătură unică. Pot lua un text cifrat de această formă, pot modifica $c$ în orice fel și înlocuiți $vk,\sigma$ cu ale mele $vk',\sigma'$ pe care o generez. Acest lucru îmi permite să efectuez direct orice atac cu text cifrat ales împotriva $\textsf{Enc}$ pe această nouă schemă.

  • Dacă cheia de verificare se află în interiorul criptării, aceasta este mai bună, dar tot nu este sigură. Acum textele cifrate au forma $$(c=\textsf{Enc}(pk,m\|vk), \sigma=\textsf{Semn}(sk,c))$$ Scopul este ca noua schemă să fie sigură pentru CCA orice alegerea CPA-secure $\textsf{Enc}$. Cu toate acestea, este posibil să se construiască o schemă patologică de securitate CPA, în care este posibil să se schimbe $\textsf{Enc}(pk,m\|vk)$ în $\textsf{Enc}(pk,m\|vk')$ pentru orice $vk'$ la alegerea atacatorului și fără cunoștință de $m$ sau $vk$. Deci, un atac CCA asupra noii scheme implică schimbarea $c$ în $c'$ în acest fel, cu $vk'$ ales de atacator.Apoi atacatorul poate genera semnătura corectă pe noul $c'$ și cereți ca acesta să fie decriptat pentru a fi dezvăluit $m$.

Nu există nicio construcție „simplu” care să completeze securitatea CPA la CCA

Există o problemă deschisă celebră în criptografie:

Există o construcție neagră a unei scheme de criptare cu cheie publică securizată CCA dintr-o schemă arbitrară de criptare cu cheie publică securizată CPA, în modelul simplu?

Este posibil să construim o schemă securizată CCA dintr-o schemă securizată CPA dacă modificăm parametrii acestei probleme deschise:

  • Dacă părăsim modelul simplu și permitem oracole aleatorii, atunci transformarea Fujisaki-Okamoto atinge securitatea CCA.

  • Dacă permitem construcții non-black-box, atunci putem obține securitatea CCA folosind transformarea Naor-Yung. Non-black-box înseamnă că schema de securitate CCA folosește cumva cod sursa a schemei CPA-secure. În cazul lui Naor-Yung, aveți nevoie de codul sursă al schemei de securitate CPA pentru a dovedi o afirmație de zero cunoștințe despre textele cifrate.

Este ceva progres parțial demonstrând această problemă deschisă -- în special, nu poate exista o astfel de construcție dacă algoritmul de decriptare CCA nu folosește algoritmul de criptare CPA.

Tehnicile pe care le utilizați în această întrebare sunt toate cutie neagră și, prin urmare, este puțin probabil să fie utile în construirea unei scheme de securitate CCA.

Tehnici similare funcționează dacă schema CPA este bazată pe identitate

Construcția ta îmi amintește de Transformarea Canetti-Halevi-Katz de la un CPA-secure bazate pe identitate schemă la o schemă securizată CCA (nebazată de identitate).

Lăsa $\textsf{Enc}(pk,id,m)$ denotă criptarea bazată pe identitate (IBE) a $m$ la identitate $id$, folosind parametri globali publici $pk$. Atunci construcția CHK este: $$ \textsf{Enc}^*(pk,m) = (vk, c = \textsf{Enc}(pk, vk, m), \sigma = \textsf{Semn}(sk,c)) $$ Cu alte cuvinte, pentru a cripta:

  1. generați o pereche de taste cu semnătură unică $(sk,vk)$.
  2. criptați textul simplu cu IBE, folosind $vk$ ca identitate
  3. semnați textul cifrat IBE cu $sk$
  4. da $vk$, textul cifrat IBE și semnătura

Rezultatul este CCA-secure, iar intuiția brută este că IBE securizat CPA ar putea fi maleabil în ceea ce privește textele clare, dar trebuie să fie nemaleabil în ceea ce privește identități.

Huanhuan Chen avatar
drapel cn
Mulțumesc, Mikero. Este foarte clar. Înțeleg.
Patriot avatar
drapel cn
@Huanhuan Chen Vă rugăm să luați în considerare votarea răspunsului pe care l-ați acceptat.
Huanhuan Chen avatar
drapel cn
Scuze pentru întârzierea votului. Tocmai am primit privilegiul.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.