Puncte:1

varianta „partajată” a transferului neglijent 1-din-N

drapel bb

În tradițional 1-din-n OT, presupunem Alice are o matrice $A=\{x_1,{\cdots},x_n\}$ și Bob are $idx=i\in\{1,{\cdots},n\}$. După rularea OT, Bob se apleacă $x_i$ si nimic altceva, Alice nu invata nimic despre $i$.

Asa de, intrebarea mea: există o variantă „compartită” a transferului neglijent 1-din-N?

Considerăm că matricea și indexul interogat sunt secrete partajate între Alice și Bob (de exemplu., partajare aditivă a secretelor). Acesta este, Alice deține cota matricei $A_{Alice}$ și ponderea indexului interogat $idx_{Alice}$; Bob deține cota matricei $A_{Bob}$ și indexul interogat $idx_{Bob}$. După rularea OT, Alice devine $[x_{idx}]_{Alice}$ și Bob devine $[x_{idx}]_{Bob}$, Unde $([x_{idx}]_{Alice}+[x_{idx}]_{Bob})modN=x_{idx}$.

Actualizați:

Motivat de lucrarea CCS2021 Acțiuni și aplicații de grup liniar ignorant, în Secțiunea 5.1, ei propun un protocol „Oblivious Selection” (numită variantă „shared” a OT) bazat pe permutare. Dar înainte de fiecare selecție, trebuie să facem permutarea pe matrice. Așa că am propus întrebarea de mai sus: există alte protocoale pentru a selecta în mod neglijent un element din matricea partajată la un index partajat?

knaccc avatar
drapel es
Întrebarea dvs. poate fi formulată astfel: Cum pot Alice și Bob să se angajeze fiecare la propria listă de chei publice (pe care inițial nu le partajează unul cu celălalt), unde ar rezulta o listă de secrete comune Diffie-Hellman dacă Alice și Bob ar colabora în mod intenționat pentru a determina acele secrete comune. Atunci, cum poate oricare dintre părți să obțină cunoștințe despre unul dintre acele secrete partajate la un index specificat, fără ca cealaltă parte să descopere fie indexul, fie secretul partajat la acel index?
Dylan avatar
drapel bb
@knaccc Da! Pentru a recapitula întrebarea de mai sus: în setarea 2PC, selectați în mod neglijent un element din matricea partajată la un index partajat, în timp ce două părți nu pot afla nimic despre elementul și indexul matricei partajate. După cum a spus warforgad mai jos: este destul de diferit de OT obișnuit, dar are o funcționalitate similară cu varianta „partajată” a OT.
knaccc avatar
drapel es
Sunt confuz că tocmai ați spus „două părți nu pot afla nimic despre elementul și indexul matricei partajate”. Asta nu înseamnă că niciunul dintre ei nu învață nimic? Poate ai vorbit greșit. Cred că am o soluție care permite unei persoane să interogheze și să descopere unul dintre secretele DH, fără ca cealaltă parte să învețe care secret sau ce index a fost solicitat.De asemenea, este imposibil ca unul dintre ei să trișeze, pentru că se vor angaja în avans la acțiunile lor.
Dylan avatar
drapel bb
Da, am înțeles greșit. Ar trebui să fie: două părți nu pot afla nimic despre elementul accesat și indexul specificat.
knaccc avatar
drapel es
Una dintre părți decide asupra indexului și învață secretul partajat la index. Nu înțeleg ce vrei să spui prin „două părți nu pot învăța nimic”, când una dintre ele învață clar ceva.
Dylan avatar
drapel bb
Bună @knaccc, „două părți nu pot afla nimic despre elementul accesat și indexul specificat” înseamnă: fie Alice, fie Bob nu pot învăța întregul A[i] și întregul i. Ei știu doar propria lor parte din A[i] sau i (să spunem $A[i]_{Alice}$, $A[i]_{Bob}$ și $i_{Alice}$, $i_{Bob}$ )
Puncte:1
drapel es

Alice alege o listă de chei private uniform aleatoare $\{a_i\}$. Ea calculează o listă de chei publice corespunzătoare $\{A_i\}$ la fel de $\{a_iG\}$. Ea declară apoi o listă de coduri hash-uri ale cheii publice corespunzătoare $\{P_i\}$ calculat ca $\{hash(A_i)\}$.

$G$ este un punct de bază binecunoscut pe curbă și $hash()$ este o funcție hash sigură criptografic.

Bob face același lucru, astfel încât Bob să aibă chei private $\{b_i\}$, are chei publice $\{B_i\}$, și declară hash-urile cheii publice $\{Q_i\}$.

În acest stadiu, Alice și Bob ar putea decide să colaboreze pentru a stabili lista secretă comună Diffie-Hellman $\{S_i\}$ la fel de $\{a_iB_i\}$ sau $\{b_iA_i\}$. Cu toate acestea, ei nu fac acest lucru.

Fără pierderea generalității, dacă Alice vrea să învețe secretul împărtășit la index $j$ fără ca Bob să descopere $j$ sau secretul partajat:

Alice alege un factor de orbire uniform aleatoriu $r$, și trimite $X=rA_j+jH$ lui Bob. $H$ este un al doilea punct de bază binecunoscut pe curbă, unde $h$ nu se știe astfel încât $hG==H$.

Bob îi trimite înapoi lui Alice lista $\{Z_i\}$ = $\{b_i(X-iH)\}$.

Alice nu poate decât să dezvăluie și să învețe secretul împărtășit $S_j$ prin calcul $r^{-1}Z_j$. Ea nu poate afla nimic despre niciun alt secret comun, deoarece $H$ componenta listei de răspunsuri a lui Bob se va anula doar la un anumit index.

De când acest secret Diffie-Hellman $S_j$ va fi egal cu $a_jB_j$, Alice poate verifica apoi că hash-ul lui Bob $Q_j$ potriviri prin verificare $Q_j\overset{?}{=}hash(a_j^{-1}S_j)$.

Puncte:1
drapel pm

Deși nu aș numi asta o variantă comună a OT, funcționalitatea propusă de dvs. poate fi într-adevăr implementată cu un singur apel la 1-din-$(|\mathbb{F}|^n\cdot n)$ VT, deoarece VT este complet. Aici $\mathbb{F}$ este domeniul de $A$intrările lui.
Mai întâi, luați în considerare o funcționalitate cu două părți în care Bob primește o funcție $f(x,y)$, $x$ fiind deţinut de Alice şi $y$ de Bob. Lăsa $a,b$ fie intrările lui Alice și, respectiv, lui Bob. Alice stabilește matricea $A$ astfel încât $A[i] = f_i(a) = f(a,i)$. Apoi folosesc un OT unde Bob primește $A[b] = f_b(a) = f(a,b)$ după cum este necesar.
Acum la funcționalitatea dvs. Lasă-o pe Alice să probeze la întâmplare $r$, și luați în considerare funcția $$f\left(\left(A_{Alice}, idx_{Alice}\right), \left(A_{Bob}, idx_{Bob}\right)\right) = A_{Alice}[idx_{Alice} + idx_{Bob}] + A_{Bob}[idx_{Alice} + idx_{Bob}] - r$$ Am omis modulo pentru simplitate.
După cum este descris mai sus, folosesc un singur apel OT pentru a-i permite lui Bob să primească $[x_{idx}] -r$. Împreună cu $r$ pe care le deține Alice, au o împărțire secretă $[x_{idx}]$.
Nu aș numi asta un OT partajat pentru că este destul de diferit. De exemplu, Alice și Bob joacă un rol similar, în timp ce în OT obișnuit au roluri distincte (unul are o matrice, unul alege o intrare).

Dylan avatar
drapel bb
Ai dreptate! Este destul de diferit de OT obișnuit, deoarece Alice și Bob dețin aceleași date (acțiuni diferite). Numirea funcționalității ca o variantă „partajată” a OT se datorează faptului că am crezut că selectează în mod neglijent un element dintr-o matrice, un fel ca OT. Această funcționalitate apare, de asemenea, în lucrarea [CCS2021: acțiuni și aplicații de grup liniare ignorante](https://dl.acm.org/doi/10.1145/3460120.3484584).

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.