Puncte:4

Înmulțirea BGW de către Gennaro și colab.: De ce H(x) are exact gradul t și de ce este necesar $2t + 1 \le n$?

drapel jp

Cu această întrebare mă refer la multiplicarea BGW de Gennaro et al (PDF Aici). Înmulțirea este descrisă pe pagina a 4-a. (O altă sursă pentru mine a fost „O introducere pragmatică în calculul securizat cu mai multe părți” p. 43-44)

Rezumatul procedurii de înmulțire a BGW: Pentru a face multiplicarea a 2 valori secrete $\alpha$ și $\beta$ a fiecărui jucător $P_i$ trebuie să aibă cota $f_{\alpha}(i)$ și $f_{\beta}(i)$ Unde $f_{\alpha}$ și $f_{\beta}$ sunt polinoamele aleatoare de grad t din partajarea secretă Shamir. Acum fiecare jucător $P_i$ calculează $f_{\alpha}(i) \cdot f_{\beta}$ și trimite acțiuni de această valoare $h_i(j)$ creat cu polinomul de grad aleator t $h_i$ (astfel încât $h_i(0) = (f_{\alpha} \cdot f_{\beta})(i)$) stratul de deasupra $P_j$ pentru $1 \le j \le n$.

În continuare, lucrarea de mai sus descrie modul în care jucătorii pot obține cote aleatorii de grad t ale valorii $\alpha \cdot \beta$ (pentru ca apoi să reconstruiască rezultatul înmulțirii cu aceste acțiuni): Fiecare jucător $P_i$ calculează valoarea $H(i)$ din polinomul de gradul t $H$ care este definit ca:

$$H(x) = \sum_{i=1}^{n} \lambda_i h_i(x)$$

($lambda_i$s sunt coeficienții Lagrange adecvați).

$H$ este un polinom aleatoriu cu

$$H(0) = \sum_{i=1}^{n} \lambda_i h_i(0) = \sum_{i=1}^{n} \lambda_i (f_{\alpha} \cdot f_{\beta })(i) = (f_{\alpha} \cdot f_{\beta})(0) = \alpha \cdot \beta$$

Intrebarea mea: H(x) este într-adevăr de gradul t? N-ar putea fi și mai mare pentru că $n$ puncte de la diferit polinoame de gradul t $h_i$ pentru $1 \le i \le n$ sunt folosite pentru interpolare? De obicei se argumentează că operațiile liniare pe $(t,n)$ acțiunile partajate rezultă în noi $(t,n)$ acțiuni și pentru că $h_i$ funcţiile sunt de grad $t$ combinații liniare de valori $h_i{j}$ pentru $1 \le i \le i$ ar trebui să aibă ca rezultat $(t,n)$ acțiunile de asemenea. Este valabil și în acest scenariu, deoarece combinăm întotdeauna valori de diferite grade $t$ polinoame în același timp $x$ valoare?

Alta intrebare: De asemenea, se remarcă faptul că $t$ trebuie să fie astfel încât $2t+1 \le n$. Este chiar necesar acest lucru? N-ar fi $t+1 \le n$ suficient pentru că $H(x)$ este gradul $t$ oricum sau informațiile de la 2t+1 acțiuni sunt necesare pentru a construi corect $H(x)$? (Ipoteza mea a fost că, fără $2t+1$ Coeficienții Lagrange $\lambda_i$, $H(0)$ nu ar fi $\alpha \cdot \beta$)

„Introducerea pragmatică” p. 44 spune că numai cu $2t+1 \le n$ jucătorii au suficiente informații pentru a determina valoarea $(f_{\alpha} \cdot f_{\beta})(0)$. De ce este acesta cazul?

Daniel S avatar
drapel ru
Bun venit la cryptoSE! Cred că vrei să spui $2t+1\le n$ mai degrabă decât $2t+1
drapel jp
Mulțumesc că ai subliniat asta. Exact asta am vrut să spun.
Puncte:1
drapel ru

Pentru prima ta întrebare: $H(x)$ este de gradul cel mult $t$ cu condiția ca jucătorii să genereze $h_i$ de grad $t$. The $\lambda_i$ sunt constante și deci este o combinație liniară de polinoame de grad $t$ și așa este cel mult gradul $t$.

Pentru a doua întrebare: da este necesar. În înmulțirea acțiunilor grupul construiește în mod noțional un grad 2t $ polinom de produs $q(x)=f_\alpha(x)\cdot f_\beta(x)$ cu $2t+1$ coeficienți. Jucător $i$ cunoaşte valoarea acestui polinom noţional $q(i)$, și știm $q(0)$ poate fi scris ca o combinație liniară a $n$ dintre acestea prin anularea contribuţiei coeficienţilor de grad superior. Mai exact rezolvăm următorul sistem pentru $\{\lambda_i:1\le i\le n\}$ $$\left(\begin{matrice} n^{2t} și (n-1)^{2t} și (n-2)^{2t} și \ldots și 2^{2t} și 1\ n^{2t-1} și (n-1)^{2t-1} și (n-2)^{2t-1} și \ldots și 2^{2t-1} și 1\ n^{2t-2} și (n-1)^{2t-2} și (n-2)^{2t-2} și \ldots și 2^{2t-2} și 1\ \vdots & \vdots & \vdots & \ddots & \vdots\ n & (n-1) & (n-2) & \ldots & 2 & 1\ 1 & 1 & 1 & \ldots & 1 & 1\ \end{matrice}\right)\left(\begin{matrice} \lambda_{n}\lambda_{n-1}\lambda_{n-2}\vdots\lambda_2\lambda_1\end{matrix}\right)= \left(\begin{matrix} 0\0\0\vdots\0\1\end{matrix}\right) $$ și deduceți că pentru $\lambda_i$ ca ne refacem $\sum_i\lambda_iq(i)=q(0)$. Pentru a fi solubil, acest sistem trebuie să aibă cel puțin la fel de multe coloane câte rânduri, astfel încât $n\ge 2t+1$. Rețineți că putem specifica $n-(2t+1)$ al $\lambda_i$ să fie zero și să aibă totuși un sistem rezolvabil. Prin inducerea jucătorilor cu $\lambda_i\neq 0$ să acționeze ca dealeri pentru a împărți $q(i)$ folosind gradul $t$ polinom $h_i(x)$, grupul poate construi noțional $H(x)=\sum\lambda_ih_i(x)$ care este o diplomă $t$ polinom cu $H(0)=q(0)=f_\alpha\cdot f_\beta(0)$.

drapel jp
Vă mulțumesc foarte mult pentru răspunsul dvs. util. Înțeleg corect atunci că termenul constant $\lambda_i$ este egal cu polinomul baza Lagrange $\delta_i(0) = \prod_{j=1;j \ne i}^{n} \frac{0 - j }{i - j} = \prod_{j=1;j \ne i} \frac{-j}{i-j}$ sau este definit altfel?
Daniel S avatar
drapel ru
Da, cele două formulări sunt echivalente. Acest lucru poate fi dovedit folosind determinanți vandermonde.

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.