Mignotte-schema

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 26 juni 2016; kontroller kräver 9 redigeringar .

Mignotte-schemat är ett hemligt delningssystem för tröskelvärden byggt med primtal . Låter dig dela upp hemligheten (numret) mellan parterna på ett sådant sätt att alla deltagare kan återställa den, men deltagarna kommer inte att kunna återställa hemligheten. Schemat är baserat på den kinesiska restsatsen .

Historik

Systemet föreslogs första gången 1982 av den franske vetenskapsmannen Maurice Mignotte som ett av alternativen för att använda tröskelsystemet som beskrevs av Adi Shamir . Shamir själv föreslog en lösning med polynominterpolation på ett ändligt fält, där hemligheten var själva polynomet. Mignotte, å andra sidan, kunde erbjuda en enklare lösning, baserad på ett modulärt tillvägagångssätt - ett visst nummer är en hemlighet, och dess rest modulo ett visst nummer är en partiell hemlighet. Mignottes modifierade schema är Asmuth-Bloom-schemat . I båda scheman används den kinesiska restsatsen för att återställa hemligheten, vars formulering definierar en unik lösning (hemlighet) [1] .

Hemligt delningsschema

Kinesisk restsats

Schemat är baserat på användningen av den kinesiska restsatsen, som tillåter användare som har en del av hemligheten att återställa hemligheten själv, och det på ett unikt sätt. Det finns flera versioner av satsen, låt oss kalla följande generella: Låt . Sedan ekvationssystemet

har lösningar i if and only if . Dessutom, om det reducerade systemet har lösningar i , har det en unik lösning i bestämmer den minsta gemensamma multipeln av . Om , den kinesiska restsatsen kallas standard [2] .

Tröskelhemliga delningsscheman

Anta att det finns n användare , numrerade från till , och en uppsättning grupper , där alla undergrupper av gruppen finns . Faktum är att ett hemligt delningsschema är en metod för att generera hemligheter så att:

vi kommer att kalla åtkomststrukturen - en hemlighet och - skuggor . Låt oss anropa uppsättningar av element från behörighetsgrupper . I ett idealiskt schema för hemlighetsdelning ger skuggan av en grupp som inte är en behörighetsgrupp ingen information (i termer av informationsteori) om hemligheten. Det har bevisats att i alla idealiska hemlighetsdelningsscheman bör storleken på var och en av skuggorna inte vara mindre än storleken på själva hemligheten. Den naturliga förutsättningen är att tillträdesstrukturen ska vara monoton, det vill säga: . Alla åtkomststrukturer är väl beskrivna med den minsta uppsättningen av behörighetsgrupper: . Du kan också beskriva en åtkomststruktur som inte har behörighetsegenskaper: . Det beskrivs väl av den maximala uppsättningen "icke-auktorisering"-grupper:

I de första hemliga delningssystemen var endast antalet deltagare viktigt för att återställa hemligheten. Sådana system har kallats tröskelhemlighetsdelningssystem. Låt , då kallas åtkomststrukturen -threshold åtkomststruktur.

Det är också värt att tänka på att för strukturer för -tröskelåtkomst:

.

Alla -hemliga-delningsscheman kommer också att kallas -threshold secret-sharing-scheman [1] .

Mignotte-sekvens

Mignottes hemliga delningsschema för tröskelvärden använder speciella nummersekvenser som kallas Mignotte-sekvenser. Låta vara ett heltal, , och . -Mignottesekvens är en sekvens av coprime - positiva sådana att det sista påståendet också motsvarar följande: [1]

Algoritm

Med tanke på den offentliga Mignotte-nyckeln fungerar schemat så här:

  1. Hemligheten väljs som ett slumpmässigt tal så att , där . Med andra ord måste hemligheten ligga mellan och
  2. Aktier beräknas som , för alla
  3. Med olika skuggor kan du få hemligheten med standardversionen av den kinesiska restsatsen - det kommer att vara den enda lösningen modulo systemet:

Hemligheten är lösningen av ovanstående system, dessutom ligger inom , eftersom . Å andra sidan, med bara olika skuggor , kan vi säga att , var är den enda lösningen modulo det ursprungliga systemet (i detta fall: . [1] För att erhålla en acceptabel säkerhetsnivå, Mignotte-sekvenser med ett stort värde [ 3 ] Uppenbarligen har Mignotte-schemat ingen betydande kryptografisk styrka , men det kan vara användbart i applikationer där skuggornas kompakthet är en avgörande faktor.

Exempel

Låt oss säga att du vill dela en hemlighet mellan användare så att vem som helst kan återställa den.

.

Från formuleringen av den kinesiska restsatsen vet vi att lösningen kommer att vara unik.

Ändringar av Mignotte-schemat

Generaliserad Mignotte-sekvens

För ett givet tröskelschema är elementen i sekvensen inte nödvändigtvis coprime. Låta vara ett heltal, . En generaliserad Mignotte-sekvens är en sekvens av positiva heltal så att . Det är lätt att se att vilken Mignotte-sekvens som helst är en generaliserad Mignotte-sekvens. Dessutom, om vi multiplicerar varje element i den generaliserade sekvensen med ett fast element , får vi också en generaliserad Mignotte -sekvens. Det utökade Mignotte-schemat fungerar på samma sätt som det vanliga för och . I det här fallet, för att hitta hemligheten, är det nödvändigt att använda en generaliserad version av den kinesiska restsatsen. [fyra]

Viktad hemlighetsdelning

Systemet kan också tillämpas för att implementera ett viktat hemlighetsdelningssystem. I jämviktsscheman, som är det klassiska Mignotte-schemat, får varje deltagare en skugga av samma värde. Schemat kan dock modifieras så att deltagare med högre skuggvikt kräver färre andra skuggor än deltagare med lägre skuggvikt.

Låt vara hemligheten, var är vikten av användarens skuggor. Låt oss skapa en Mignotte-sekvens, där . Sedan , var är en godtycklig partition av uppsättningen så att

Du kan se att det finns en en-till-en-överensstämmelse mellan skuggans storlek och vikt: till exempel, en bit är en skugga med vikten 1, en skugga med en vikt väger bitar. Implementeringen av Mignotte-schemat med en viktad hemlighetsdelning är inte lämplig, eftersom genereringen av Mignotte-sekvensen och den viktade åtkomsttröskelstrukturen är en arbets- och resurskrävande uppgift. Det finns enklare och effektivare vägda hemlighetsdelningssystem som också tar bort beroendet mellan skuggvikt och storlek. [5]

Liknande scheman

  1. Det finns ingen gräns för området där du kan välja en hemlighet
  2. En uppsättning mindre än användarskuggor ger ingen information om hemligheten
  1. Vi antar att den avslöjade vikten är , och är längden på de använda talen i bitar. Det antar vi också . Det bör noteras att i verkliga system .
  2. I det här fallet väljer vi hemligheten med bitarnas längd (om den är mindre kompletterar vi den, till exempel genom att upprepa de hemliga bitarna eller lägga till slumpmässiga bitar ).
  3. För en användare med en vikt av hans andel väljer vi ett primtal av bitlängd och sådant . Primtal väljs i detta fall för att förenkla driften av algoritmen; för korrekt funktion av kretsen är det tillräckligt att välja parvisa samprimtal.
  4. Låt oss beräkna och definiera användarens andel som .
  5. När du återställer en hemlighet är vilken grupp användare som helst sådan att den kan bilda ett ekvationssystem:

och beräkna S genom att tillämpa den kinesiska restsatsen. Eftersom storleken är bitar, består storleken av modulo-produkten av åtminstone , det kan ses att medan . Det är detta som gör det möjligt att beräkna hemligheten på ett unikt sätt. Det är möjligt att försvaga villkoret för summan av vikter av aktier till , då om längden är minst , så är det nödvändigt att begränsa till bitar. Om detta inte är möjligt kan du spara kretsen genom att införa ett extra element, vars modul är det minsta primtal av bitar, andelen av elementet är . Detta element kan användas som en extra ekvation i ovanstående system, i vilket fall , så hemligheten kan återställas på ett unikt sätt. I detta schema elimineras en av de största nackdelarna med det vanliga schemat med uppdelningen av en viktad hemlighet - vilken andel som helst kan beskrivas med en punkt , och denna punkt har inget samband mellan sin egen vikt och storlek.

Detta schema kan också modifieras för att fungera med flera hemligheter. Låt oss säga att du behöver dela hemligheter , varje hemlighet består av bitar. Låt oss lägga ihop hemligheterna och få en bitlångt hemlighet. Tre fall måste övervägas:

  1. : Lägg till slumpmässiga bitar, upp till storlek
  2. : göra ingenting
  3. : Låt oss introducera ytterligare ett element med vikt [5]

Schema prestanda

En betydande del av kretsexekveringstiden tas av genereringen av Mignotte-sekvenser och coprime-moduler. Anta att det finns andelar med respektive vikter . Den totala vikten av andelarna kommer att vara , vikten som krävs för att avslöja hemligheten - , storleken på antalet - bitar.

  1. Generering av parvis coprime . Den dominerande operationen är att hitta LCM , dess komplexitet är . För varje nytt tal som genereras är det nödvändigt att kontrollera om det är parvis coprime med vart och ett av de föregående elementen, så för att generera parvis coprime-tal är komplexiteten .
  2. Deras sortering, dess komplexitet är .
  3. Tillståndskontroll . Komplexiteten i att multiplicera två antal längdbitar och bitar är . Verifieringens komplexitet kommer att vara .

Således är den totala komplexiteten för att generera Mignonte-sekvensen .

Kretsen har inte bra prestanda, eftersom det är möjligt att modifiera den och därigenom bli av med behovet av att generera Mignotte-sekvenser. Graferna visar resultaten av analysen av prestandan för ett schema baserat på Mignotte-schemat med en viktad separation av hemligheten och själva schemat. För att bygga en graf valdes ett -tröskelschema med en hemlighet, och följaktligen [5] .

Nackdelar med schemat

Beteendescheman för inkräktare

Det finns två scheman som beskriver beteendet hos angripare i tröskelscheman: CDV-modellen, där angriparna känner till hemligheten och försöker skicka falska data till andra deltagare, och OKS-modellen, där angriparna inte känner till hemligheten i förskott. I det vanliga Mignotte-schemat kan en angripare alltid lura användare i CDV-modellen och med hög sannolikhet i OKS-modellen. Låt oss säga att deltagarna delar en hemlighet och användaren bestämmer sig för att fuska. Därför måste den ändra sin skugga till så att . Låt . Med den kinesiska restsatsen får vi , det vill säga vi representerar det som . Eftersom Mignotte-sekvensen är känd kan vi hitta . Du kan välja var

I CDV-modellen känner angriparen till hemligheten, så med hjälp av uttrycket kan han försäkra sig om att (fig. 1) existens är garanterad om deltagarna inte kan fastställa hemligheten. Därför kan angriparen lura deltagarna i schemat med sannolikhet 1. Dessutom kan angriparen i denna modell kontrollera värdet av genom att beräkna direkt från : , där

I OKS-modellen, eftersom angriparen inte känner till hemligheten, kan han inte kontrollera sanningen om ojämlikheterna och . I så fall kan han alltid använda . Det enda alternativet där bedrägeri kan avslöjas är varifrån (fig. 2) eller (fig. 3). Därför är sannolikheten för framgångsrikt bedrägeri [7]

Exempel

Låt . Sedan kommer skuggor att genereras för hemligheten . Låt oss säga att medlemmar 1,2,3 slog ihop sina insatser och medlem 1 vill fuska. Sedan räknar han ut och ändrar sin andel så att . I det här fallet, efter att ha löst ekvationssystemet, kommer deltagarna att återställa fel hemlighet , som också är mellan och . Med detta kan användare 1 få den verkliga hemligheten: [7]

Schema ändringar

För att undvika sådana bedrägerier kan du göra följande:

Anteckningar

  1. ↑ 1 2 3 4 Maurice Mignotte, 1983, s. 371-375
  2. Allmän hemlighetsdelning Baserat på den kinesiska restsatsen  (engelska)  (länk ej tillgänglig) . Electronic Notes in Theoretical Computer Science (2007). Hämtad 18 november 2013. Arkiverad från originalet 3 december 2013.
  3. Evangelos Kranakis, 1986, sid. 9
  4. En generalisering av Mignottes hemliga delningsschema  (eng.)  (nedlänk) . Proceedings of the 6th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (2004). Datum för åtkomst: 12 december 2013. Arkiverad från originalet 3 december 2013.
  5. ↑ 1 2 3 Ett nytt tillvägagångssätt för viktad multi-hemlig delning  (engelska)  (länk ej tillgänglig) . Electronic Notes in Theoretical Computer Science (2011). Hämtad 18 november 2013. Arkiverad från originalet 19 december 2012.
  6. CA Asmuth och J. Bloom, 1986, sid. 208-210
  7. ↑ 1 2 3 Fuskupptäckt och fuskidentifiering i CRT-baserade hemliga  delningsscheman . Al. I. Cuza” University Iasi, Rumänien (2009). Hämtad 18 november 2013. Arkiverad från originalet 10 maj 2012.

Litteratur

Länkar