Puncte:3

Produs de secrete în scheme de partajare cu mai multe secrete (alias scheme de partajare secrete ambalate)

drapel ch

Întrebarea este legată de schema de partajare multi-secretă descrisă în următoarea lucrare:

[FY92] Matthew K. Franklin, Moti Yung: Complexitatea de comunicare a calculului securizat (Rezumat extins). STOC 1992: 699-710 (Legătură)

Următoarele sunt câteva fonduri. Cu toate acestea, dacă sunteți familiarizat cu lucrarea respectivă, puteți sări direct la întrebarea principală de mai jos (evidențiată cu font aldine pentru antet).

A $(t-k+1,t+1;k,n)$-schema de partajare cu mai multe secrete, așa cum este definită în [FY92], permite unui dealer să partajeze $k $ secrete printre $n$ jucători, astfel încât orice subset de $t+1$ jucătorii sau mai mulți pot recupera $k$ secrete și orice subset de jucători de până la $t-k+1$ nu pot afla nicio informație despre $k$ secrete.

Schema de partajare multi-secretă din [FY92] utilizează următorii parametri de setare/sistem:

  • Lăsa $F$ fi un câmp finit.
  • Lăsa $s_1,\cdots,s_n \în F$ fie secretele dealerului.
  • Lăsa $\alpha_1,\cdots,\alpha_n$ și $e_1,\cdots,e_n$ fie elemente preselectate ale $F$ care sunt cunoscute de toate partidele.
  • Lăsa $p(x) = q(x) \prod_{i=1}^{k}(x-e_i) + \sum_{i=1}^{k} s_i L_i(x)$, Unde $q(x) \in_R F[x]$ cu $deg(q(x))=(t-k)$, și $$L_i(x)= \frac{\prod_{j\neq i}(x-e_j)}{\prod_{j\neq i}(e_i-e_j)}$$

Dealerul distribuie cota $p(\alpha_i)$ stratul de deasupra $P_i$, pentru $1\leq i \leq n$. Orice subset de jucători de dimensiune $\geq t+1$, își pot pune acțiunile împreună și pot reconstrui polinomul $p(x)$, apoi calculează secretele $s_i = p(e_i)$ pentru $1\leq i \leq n$.

Dimpotrivă, pentru orice subset de $t-k+1$ acțiuni există un singur polinom acele acțiuni și orice $k$ secrete. Prin urmare, orice subset de $t-k+1$ jucătorii învață orice informații despre $k$ secrete.

Calcularea cotelor produsului secretelor din cotele secretelor individuale

Lăsa $(y_1,\cdots,y_n)$ fi multi-partea de secrete $(s'_1,\cdots,s'_n)$, și $(z_1,\cdots,z_n)$ fi multi-partea de secrete $(s''_1,\cdots,s''_n)$. [FY92] descrie un algoritm pentru a calcula multi-share $(v_1,\cdots,v_n)$ a produsului secretelor $(s'_1 s''_1,\cdots,s'_n s''_n)$ din acțiunile multiple individuale $(y_1,\cdots,y_n)$ și $(z_1,\cdots,z_n)$.

Algoritmul funcționează după cum urmează:

  • Fiecare jucător $P_i$ calculează $w_i = y_i \times z_i$. Rezultă un tuplu $(w_1,\cdots,w_n)$ care codifică secretele $(s'_1 s''_1,\cdots,s'_n s''_n)$ folosind un 2t $-polinom de grad.
  • Deoarece o partajare multi-secretă trebuie să folosească a $t$-polinom de grad, tuplu $(w_1,\cdots,w_n)$ nu este o multi-share validă a secretelor. În schimb, se numește pseudo multi-share.
  • Este necesară o procedură de reducere a gradului pentru a converti $(w_1,\cdots,w_n)$ pseudo-multi-share la un multi-share valid $(v_1,\cdots,v_n)$, adică unul care utilizează un grad-$t$ polinom al formei $p(x) = q(x) \prod_{i=1}^{k}(x-e_i) + \sum_{i=1}^{k} s_i L_i(x)$ așa cum este descris mai sus.

Pasul de reducere a gradului și obiectivul/întrebarea principală a acestei postări

[FY92] oferă următoarea formulă pentru calcularea cotei multiple $(v_1,\cdots,v_n)$ din pseudo-acțiunea multiplă $(w_1,\cdots,w_n)$. $$(w_1,\cdots,w_n). A = (v_1,\cdots,v_n)$$ Unde $$ A = \sum_{k=1}^{\ell} B_\ell^{-1} Chop_{t-k+1} B_\ell M_\ell$$ și

  • $B_\ell$ este matricea vandermonde a cărei $(i,j)$ intrarea este $(\alpha_j - e_\ell)^{i-1}$
  • $Chop_{t-k+1}$ este matricea de proiecție pe prima ${t-k+1}$ vectori ai bazei spațiale.
  • $M_\ell$ este matricea a cărei $(i,j)$ intrarea este $L_\ell(\alpha_i)$ pentru $i=j$, și zero peste tot.

Întrebarea principală a acestei postări

Autorii nu explică cum au derivat formula. $$ A = \sum_{k=1}^{\ell} B_\ell^{-1} Chop_{t-k+1} B_\ell M_\ell$$

Mă poate ajuta cineva să obțin această formulă sau să-i dovedesc corectitudinea? [Nu am nicio îndoială că este corect. Vreau doar să-mi dau seama cum l-au derivat autorii]

Iată câteva dintre abordările pe care le-am încercat până acum.

În primul rând, rețineți că putem rescrie polinomul folosit pentru partajare ca o sumă a $k$ termenii după cum urmează.

$$ \begin{alignat*}{2} p(x) &= q(x) \prod_{\ell=1}^{k}(x-e_\ell) + \sum_{\ell=1}^{k} s_\ell L_\ell(x ) \ &= q(x) \ \frac{1}{k} \sum_{\ell=1}^{k} \left(\prod_{\ell=1}^{k}(x-e_\ell)\ dreapta) + \sum_{\ell=1}^{k} s_\ell L_\ell(x) \ &= q(x) \ \sum_{\ell=1}^{k} \left(\frac{(x-e_\ell)}{k} L_\ell(x) \right) + \sum_{\ ell=1}^{k} s_\ell L_\ell(x) \ &= \sum_{\ell=1}^{k} \left(\frac{q(x)(x-e_\ell)}{k} +s_\ell \right) L_\ell(x) \ &= \sum_{\ell=1}^{k} q'_\ell(x) L_\ell(x) \end{alignat*} $$ Unde $q'_\ell(x)=\frac{1}{k}q(x)(x-e_\ell) +s_\ell$ este o $(t-k+1)$-polinom de grad.

Acum presupunem că avem două seturi de secrete $(s'_1,\cdots,s'_n)$ și $(s''_1,\cdots,s''_n)$ împărtășită prin polinoame $p_1(x)$ și $p_2(x)$. Produsul $P(x)=p_1(x)p_2(x)$ este o 2t $-polinom de grad care poate fi scris și ca o sumă de $k$ termeni după cum se arată mai jos:

$$ \begin{alignat*}{2} P(x) &= p_1(x) p_2(x) \ &= \sum_{\ell=1}^{k} q'_\ell(x) p_2(x) L_\ell(x)\ &= \sum_{\ell=1}^{k} Q_\ell(x) L_\ell(x)\ &= \sum_{\ell=1}^{k} Q'_\ell(x-e_\ell) L_\ell(x)\ \end{alignat*} $$ Unde

  • $Q_\ell(x)= q'_\ell(x) \ p_2(x)$ este o $(2t-k+1)$-polinom de grad, astfel încât $Q_\ell(e_\ell)=s_\ell$ ($s_\ell = s'_\ell s''_\ell$ este produsul secretelor pe care vrem să le calculăm.)
  • Polinomul $Q'_\ell(x)$ se obtine din $Q_\ell(x)$ printr-o schimbare de variabilă, astfel încât $Q'_\ell(x-e_\ell) = Q_\ell(x)$. În special, $Q'_\ell(0) = Q_\ell(e_\ell) = s_\ell$.

Lăsa $H_\ell=(h_{0,\ell},\cdots,h_{2t-k,\ell},0,\cdots,0)$ notează vectorul mărimii $n$ conţinând coeficienţii de $Q'_\ell$. În special, avem $h_{0,\ell} = s_\ell$.

Lăsa $(w_1,\cdots,w_n)$ fi un pseudo-multi-share de secrete $(s_1,\cdots,s_n)$. Atunci noi avem $$ \begin{alignat*}{2} (w_1,\cdots,w_n) &= (P(\alpha_1),\cdots,P(\alpha_n))\ &= \sum_{\ell=1}^{k} H_\ell \ . Clopot \ . M_\ell \end{alignat*} $$ Unde $B_\ell$ este matricea de mărime vandermonde $n$ a caror $(i,j)$ intrarea este $(\alpha_j-e_\ell)^{i-1}$, și $M_\ell$ este o matrice pătrată de dimensiune $n$ a caror $(i,j)$ intrarea este $L_\ell(\alpha_i)$ pentru $i=j$, și $0$ oriunde altundeva.

Pe de altă parte, lasă $(v_1,\cdots,v_n)$ să fie o multi-partă de secrete $(s_1,\cdots,s_n)$ si lasa $R(x)$ fie gradul corespunzător-$t$ polinom. Atunci noi avem $$ \begin{alignat*}{2} (v_1,\cdots,v_n) &= (R(\alpha_1),\cdots,R(\alpha_n))\ &= \sum_{\ell=1}^{k} H_\ell \ . Chop_{t-k+1} \ . Clopot \ . M_\ell \end{alignat*} $$

Cele de mai sus sunt valabile deoarece polinomul $R(x)$ definit mai jos este într-adevăr un grad-$t$ polinom astfel încât $R(e_\ell) = s_\ell$ pentru toți $1 \leq \ell \leq k$. $$ \begin{alignat*}{2} R(x) &= \sum_{\ell=1}^{k} Q''_\ell(x-e_\ell) L_\ell(x)\ \end{alignat*} $$ cu $Q''_\ell(x-e_\ell)$ A $(t-k+1)$-polinom de grad astfel încât $Q''_\ell(0)=s_\ell$ pentru toți $1 \leq \ell \leq k$.

De cand $Q''_\ell(0)=Q'_\ell(0)=h_{0,\ell}=s_\ell$ pentru toți $1 \leq \ell \leq k$, următorul tuplu este un set valid de coeficienți pentru $Q''_\ell(x)$:

$$ \begin{alignat*}{2} Iad \ . Chop_{t-k+1} &= (h_{0,\ell},\cdots,h_{2t-k,\ell},0,\cdots,0) \ . Chop_{t-k+1}\ &= (h_{0,\ell},\cdots,h_{t-k,\ell},0,\cdots,0) \end{alignat*} $$

Acum din cele două expresii ale $(w_1,\cdots,w_n)$ și $(v_1,\cdots,v_n)$ mai sus, trebuie să ajungem la formulă $$(w_1,\cdots,w_n). A = (v_1,\cdots,v_n)$$ cu
$$ A = \sum_{k=1}^{\ell} B_\ell^{-1} Chop_{t-k+1} B_\ell M_\ell$$

Ceva gânduri sau sugestii?

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.