Puncte:2

Aleatoritatea partajată între două primitive criptografice complică argumentul hibrid pentru indistinguirea computațională?

drapel in

Lăsa $(Enc, Dec)$ fie o schemă de criptare securizată IND-CPA, unde $Enc: \mathcal{K} \times \mathcal{M}_1 \rightarrow \mathcal{C}_1$, și $F: \mathcal{K} \times \mathcal{M}_2 \rightarrow \mathcal{C}_2$ să fie o funcție pseudoaleatoare.

Luați în considerare un exemplu simplu în care putem dori să dovedim distribuția $(Enc_k(m_1), F_k(m_2))$ (a cărui aleatorie provine din cheie partajată $k \leftarrow \mathcal{K}$) nu se distinge din punct de vedere computațional de distribuția uniformă pe $\mathcal{C}_1 \times \mathcal{C}_2$. În mod clar, putem arăta că distribuția de $Enc_k(m_1)$ nu se distinge din punct de vedere computațional de distribuția uniformă pe $\mathcal{C}_1$ printr-o reducere a securității IND-CPA. Prin înlocuire $Enc_k(m_1)$ cu un element aleatoriu $r_1 \leftarrow \mathcal{C}_1$, putem obține un hibrid intermediar $(r_1, F_k(m_2))$. Intrebarea mea este ca:

Putem apoi aplica pseudoaleatoria lui $F$ a inlocui $F_k(m_2)$ cu un alt element aleatoriu $r_2 \leftarrow \mathcal{C}_2$, pentru a dovedi indistinguibilitatea computațională de mai sus?

Din perspectiva mea, cele două variabile aleatoare $Enc_k(m_1)$ și $F_k(m_2)$ sunt nu independente, deoarece au aceeași aleatorie $k$. Acest lucru amintește de motivul pentru care ar trebui să luăm în considerare distribuția comună a tuplului vizualizare-ieșire al cuiva, mai degrabă decât vizualizarea sa în calculul securizat. Deci, presupun că aleatorietatea partajată de aici împiedică trecerea unui simplu argument hibrid. Este corectă această concluzie? Mulţumesc mult.

Marc Ilunga avatar
drapel tr
Putem avea întotdeauna garanția că $\mathcal C_1 \times \mathcal C_2$ nu se poate distinge de aleatoriu? Nu ar fi ușor pentru un atacator să distingă $\mathcal C_1$ dacă criptarea este un mod bazat pe contor?
X. G. avatar
drapel in
@MarcIlunga, cred că securitatea IND-CPA asigură că ieșirea lui $Enc$ ar trebui să fie pseudoaleatoare atâta timp cât spațiul cheie $\mathcal{K}$ are suficientă entropie, să zicem, $\kappa$ biți.
Marc Ilunga avatar
drapel tr
à nu sunt sigur că CPA poate *întotdeauna* să ofere această garanție. Un exemplu patologic: modificați o schemă CPA pentru a adăuga un $0$. adică $ctxt = c|0$ . Acesta rămâne sigur CPA, dar se distinge de aleatoriu. Un exemplu mai bun ar fi modul de operare CTR cu nonces. deci $ctxt = n | c$. Cred că se poate distinge și de aleatoriu dacă $n$ este un numărător și nu este randomizat.
Marc Ilunga avatar
drapel tr
Întrebarea inițială despre aleatorierea partajată este încă interesantă: )
X. G. avatar
drapel in
@MarcIlunga, mulțumesc pentru comentariu. O definiție oficială a IND-CPA lipsește într-adevăr din întrebarea mea. Aici, folosesc în mod informal termenul „IND-CPA” pentru a mă referi la proprietatea conform căreia o schemă de criptare poate avea ca rezultat texte cifrate pseudoaleatoare în $\mathcal{C}_1$.
Marc Ilunga avatar
drapel tr
Aș sugera să adăugați în mod explicit această versiune a CPA în întrebare. Merită remarcat faptul că aceasta nu este noțiunea CPA standard și pare o cerință prea puternică.Exemplul CTR are o dovadă pentru CPA standard, dar nu satisface această noțiune CPA non-standard
Puncte:1
drapel ng

Da ai dreptate.

O definiție oficială a IND-CPA lipsește într-adevăr din întrebarea mea. Aici, folosesc în mod informal termenul „IND-CPA” pentru a mă referi la proprietatea conform căreia o schemă de criptare poate duce la texte cifrate pseudoaleatoare în $\mathcal{C}_1$

Aceasta este, desigur, o presupunere mai puternică decât a fi IND-CPA, dar este plictisitor să subliniez acest lucru. Într-adevăr, această presupunere poate fi scrisă ca

$\mathsf{Enc}_k$ este o familie PRF.

Este poate mai simplu să ne gândim la acest lucru în termeni de PRF, așa că voi arăta rapid că dacă $F_k, G_k$ sunt (individual) PRF-uri, atunci $(F_k, G_k)$ nu trebuie să fie, de ex. partajarea cheilor PRF poate distruge securitatea. Acest lucru se datorează dependenței dintre componentele din stânga și din dreapta, după cum ați ghicit.

Lăsa $F_k$ fi un PRF, și lasă $G_k = F_k^{\circ 2}$, adică $G_k(x) = F_k(F_k(x))$. Este simplu să vezi asta $G_k$ este (individual) un PRF --- orice deosebitor pentru ea implică un deosebitor pentru $F_k$, deoarece puteți emula eficient accesul la interogări $G_k$ dat acces la interogare $F_k$.

Acum, $(F_k, F_k^{\circ 2})$ nu este un PRF. Acest lucru se datorează faptului că, dat un oracol $\mathcal{O}(\cdot)$ care este fie real, fie aleatoriu, poți.

  1. $(y_1, y_2)\obține \mathcal{O}(x)$,
  2. $(z_1, z_2) \obține \mathcal{O}(y_1)$,
  3. ghici REAL dacă $y_2 = z_1$, iar RANDOM în caz contrar.

DACĂ $\mathcal{O}(x) = (F_k(x), F_k^{\circ 2}(x))$ este PRF-ul tău, atunci $y_2 = F_k^{\circ 2}(x)$, și $z_1 = F_k(y_1)= F_k(F_k(x)) = F_k^{\circ 2}(x)$ se ciocnesc. În jocul aleatoriu, probabilitatea ca oricare două valori să se ciocnească este destul de mică, așa că acest lucru implică imediat un deosebitor destul de bun.

Există însă probleme mai imediate. O modalitate de a construi $\mathsf{Enc}_k(m)$ este prin XORing $m$ cu un PRF, de exemplu $\mathsf{Enc}_k(m) = (r, F_k(r)\oplus m)$. Acesta este pur și simplu un mod de contor randomizat (unde mesajele sunt un singur bloc). În acest cadru, construcția îmbinării este $(m_1,m_2)\mapsto (r, F_k(r)\oplus m_1, F_k(m_2))$. Din nou, interogând $(m_1, m_2)$, iar apoi interogarea $(m_3, r)$, se poate obține un distinctor eficient. Adică o construcție naturală (unde $\mathsf{Enc}$ este modul de contor randomizat) nu este sigur și în setarea dvs.

X. G. avatar
drapel in
Mulțumesc foarte mult pentru exemplul detaliat!
drapel us
sau pur și simplu $F=G$
Mark avatar
drapel ng
@Mikero, acesta este de fapt un exemplu mult mai interesant, deoarece arată că $F, G$ fiind PRF-uri individual nu este suficient pentru a arăta că $(F, G)$ este chiar un „PRF slab”, adică un adversar poate distinge $ (F_k(x), G_k(x))$ din aleatoriu chiar dacă $x$ este ales aleatoriu, mai degrabă decât în ​​contradictoriu. Nu am putut arăta acest lucru folosind exemplele mele din răspunsul meu.

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.