Schema vectorială de partajare secretă

O schemă de partajare secretă vectorială , sau schema lui Blakley , este o  schemă de partajare secretă între părți, bazată pe utilizarea punctelor într-un spațiu multidimensional. Propus de George Blackley în 1979 . Schema lui Blakely vă permite să creați ( t , n )-prag de partajare secretă pentru orice t , n .

Idee

Secretul împărtășit în schema lui Blackley este una dintre coordonatele punctului din spațiul -dimensional. Părțile secretului dat părților sunt ecuațiile hiperplanurilor dimensionale . Pentru a restabili un punct, este necesar să se cunoască ecuațiile hiperplanelor. Mai puțin de două părți nu pot recupera secretul, deoarece setul de intersecție al avioanelor este o linie, iar secretul nu poate fi recuperat.

Un exemplu de schema lui Blackley în trei dimensiuni: fiecare parte a secretului este un plan , iar secretul este una dintre coordonatele punctului de intersecție al planurilor. Două plane nu sunt suficiente pentru a determina punctul de intersecție.

Trebuie remarcat faptul că descrierea geometrică și ilustrațiile sunt date pentru a înțelege ideea principală a schemei. Cu toate acestea, procesul de partajare a secretelor în sine are loc în câmpuri finite folosind un aparat matematic similar, dar diferit.

Descriere

Generarea punctelor

Să fie necesară implementarea unei scheme -threshold, adică împărțirea secretului între părți, astfel încât oricare dintre ele să poată restabili secretul. Pentru a face acest lucru, se alege un număr prim mare , modulo căruia va fi construit câmpul . Dealer aleatoriu [ cine? ] selectează numere . Aceasta stabilește un punct în spațiul -dimensional, a cărui primă coordonată este un secret.

Partajarea unui secret

Pentru fiecare parte , coeficienții selectați aleatoriu sunt distribuiți uniform pe teren . Deoarece ecuația planului are forma , pentru fiecare latură este necesar să se calculeze coeficienții :

În acest caz, este necesar să se asigure că orice ecuații sunt liniar independente. Ca părți ale secretului, părților li se oferă un set de coeficienți care definesc ecuația hiperplanului.

Restaurarea secretului

Pentru a restabili secretul, orice părți trebuie să se reunească și să folosească părțile disponibile ale secretului pentru a face ecuații pentru a găsi punctul de intersecție al hiperplanelor:

Soluția sistemului dă un punct în spațiul -dimensional, a cărui primă coordonată este secretul comun. Sistemul poate fi rezolvat prin orice metodă cunoscută, de exemplu, prin metoda Gauss , dar este necesar să se efectueze calcule în teren .

Dacă numărul de participanți la întâlnire este mai mic de , de exemplu, , atunci rezultatul rezolvării sistemului de ecuații, compus din setul disponibil de coeficienți, va fi o linie dreaptă în spațiu -dimensional. Astfel, setul de valori secrete permise care satisfac sistemul rezultat se potrivește exact cu numărul total de elemente ale câmpului , iar secretul poate lua orice valoare din acest câmp cu probabilitate egală. Astfel, participanții, strânși împreună, nu vor primi informații noi despre secretul partajat.

Proprietăți

Schema imperfectă : Numărul de participanți va crește, numărul de posibilități pentru punctul secret va scădea. De exemplu, pentru t  − 1 participanții cunosc linia care conține punctul secret.

Circuitul compartimentelor : Participanții sunt împărțiți în subgrupe numite compartimente. Pentru a primi un secret, este necesar un cvorum de sloturi, dar pentru ca un slot să participe la un cvorum, este necesar un alt cvorum de acțiuni.

Scheme pe niveluri: Participanții sunt împărțiți în două niveluri ordonate. Pentru a restabili un secret, este necesar un cvorum mai mic la un nivel superior. În plus, fiecare membru de nivel superior poate înlocui membrii de nivel inferior.

Unii participanți nu pot obține secretul.

Exemplu

Să fie necesar să partajați secretul „6” între 4 părți, în timp ce oricare 3 ar trebui să îl poată restaura. Cu alte cuvinte, este necesar să se implementeze -threshold secret sharing.

Pentru a face acest lucru, să setăm un punct în spațiul tridimensional, de exemplu, . Prima coordonată a punctului este secretul partajat, 4 și 2 sunt numere aleatorii. În acest caz, vom lucra în câmpul , adică toate numerele vor fi calculate ca restul împărțirii cu .

Fiecare latură trebuie să primească o ecuație pentru un plan care trece printr-un punct dat. În spațiul tridimensional, ecuația unui plan este specificată folosind 4 parametri: , unde  sunt coordonatele și  sunt parametrii repartizați pe laturi. Pentru a selecta parametrii, puteți proceda după cum urmează: selectați valorile aleatoriu (în acest caz, este necesar ca planurile rezultate să nu se dovedească a fi coplanare ) și calculați coeficientul liber pentru fiecare latură folosind un punct dat și coeficienții selectați.

De exemplu, să alegem parametrii după cum urmează:

Partea 1: , A doua parte: , partea a 3-a: , Partea a 4-a: .

Pentru a calcula parametrii necunoscuți, folosim valorile coordonatelor punctului selectat:

După aceea, părțile din secret, împreună cu numărul , sunt distribuite părților.

Pentru a restabili secretul, oricare trei participanți trebuie să găsească punctul de intersecție al planurilor ale căror ecuații au fost date. De exemplu, primele trei părți care recuperează secretul vor trebui să rezolve sistemul de ecuații

Sistemul poate fi rezolvat în orice mod, fără a uita că calculele sunt efectuate în teren . Este ușor să vă asigurați că punctul este soluția sistemului, prima sa coordonată „6” este secretul partajat.

Literatură