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 .
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] .
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] .
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] .
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]
Med tanke på den offentliga Mignotte-nyckeln fungerar schemat så här:
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.
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.
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]
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]
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:
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.
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] .
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]
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]
För att undvika sådana bedrägerier kan du göra följande: