Shamirs hemliga delningsschema

ÖvervĂ€g ett scenario dĂ€r du behöver sĂ€kra ett bankvalv. Det anses absolut ointagligt utan nyckel, som du fĂ„r redan första arbetsdagen. Ditt mĂ„l Ă€r att förvara nyckeln pĂ„ ett sĂ€kert sĂ€tt.

LÄt oss sÀga att du bestÀmmer dig för att ha nyckeln med dig hela tiden, och ge tillgÄng till lagringen efter behov. Men du kommer snabbt att inse att en sÄdan lösning inte skalar bra i praktiken, eftersom din fysiska nÀrvaro krÀvs varje gÄng du öppnar förrÄdet. Hur Àr det med semestern du blev lovad? Dessutom Àr frÄgan Ànnu mer skrÀmmande: tÀnk om du tappade bort din enda nyckel?

Med din semester i Ätanke bestÀmmer du dig för att göra en kopia av nyckeln och anförtro den till en annan anstÀlld. Du förstÄr dock att detta inte heller Àr idealiskt. Genom att dubbla antalet nycklar fördubblar du ocksÄ chansen för nyckelstöld.

I desperation förstör du dubbletten och bestÀmmer dig för att dela originalnyckeln pÄ mitten. Nu skulle du kunna tro att tvÄ betrodda personer med nyckelfragment mÄste vara fysiskt nÀrvarande för att hÀmta nyckeln och öppna valvet. Det betyder att en tjuv behöver stjÀla tvÄ bitar, vilket Àr dubbelt sÄ svÄrt som att stjÀla en nyckel. Men du inser snart att det hÀr schemat inte Àr mycket bÀttre Àn bara en nyckel, för om nÄgon tappar en halv nyckel kan hela nyckeln inte ÄterstÀllas.

Problemet kan lösas med en rad ytterligare nycklar och lĂ„s, men detta tillvĂ€gagĂ„ngssĂ€tt kommer snabbt att krĂ€va ĐŒĐœĐŸĐłĐŸ nycklar och lĂ„s. Du bestĂ€mmer dig för att den idealiska designen skulle vara att dela nyckeln sĂ„ att sĂ€kerheten inte helt förlitar sig pĂ„ en person. Du drar ocksĂ„ slutsatsen att det mĂ„ste finnas nĂ„gon tröskel för antalet fragment sĂ„ att om ett fragment försvinner (eller om en person Ă„ker pĂ„ semester) förblir hela nyckeln funktionell.

Hur man delar en hemlighet

Den hÀr typen av nyckelhanteringsplan tÀnkte Adi Shamir pÄ 1979 nÀr han publicerade sitt arbete "Hur man delar en hemlighet". Artikeln förklarar kort den sk Shamirs hemliga delningsschema tröskelschema för att effektivt dela upp ett hemligt vÀrde (sÄsom en kryptografisk nyckel) i Shamirs hemliga delningsschema delar. DÄ, nÀr och bara nÀr Ätminstone Shamirs hemliga delningsschema av Shamirs hemliga delningsschema delar Àr monterade, kan du enkelt ÄterstÀlla hemligheten Shamirs hemliga delningsschema.

Ur sÀkerhetssynpunkt Àr en viktig egenskap hos detta system att angriparen inte ska veta absolut nÄgonting om han inte har minst Shamirs hemliga delningsschema delar. Till och med nÀrvaron Shamirs hemliga delningsschema delar ska inte ge nÄgon information. Vi kallar denna fastighet semantisk sÀkerhet.

Polynominterpolation

Shamir tröskelschema Shamirs hemliga delningsschema uppbyggd kring konceptet polynominterpolation. Om du inte Àr bekant med detta koncept Àr det faktiskt ganska enkelt. Faktum Àr att om du nÄgonsin har ritat punkter pÄ en graf och sedan kopplat dem med linjer eller kurvor, har du redan anvÀnt det!

Shamirs hemliga delningsschema
Genom tvÄ punkter kan du rita ett obegrÀnsat antal polynom av grad 2. För att vÀlja den enda av dem behöver du en tredje poÀng. Illustration: Wikipedia

Betrakta ett polynom med grad ett, Shamirs hemliga delningsschema. Om du vill rita den hÀr funktionen pÄ en graf, hur mÄnga poÀng behöver du? Tja, vi vet att detta Àr en linjÀr funktion som bildar en linje och dÀrför behöver den minst tvÄ punkter. Betrakta sedan en polynomfunktion med grad tvÄ, Shamirs hemliga delningsschema. Detta Àr en kvadratisk funktion, sÄ det krÀvs minst tre punkter för att plotta grafen. Vad sÀgs om ett polynom med grad tre? Minst fyra poÀng. Och sÄ vidare.

Det riktigt coola med den hÀr egenskapen Àr att, givet graden av polynomfunktionen och Ätminstone Shamirs hemliga delningsschema poÀng, kan vi hÀrleda ytterligare poÀng för denna polynomfunktion. Vi kallar extrapolering av dessa ytterligare punkter polynominterpolation.

Att hitta pÄ en hemlighet

Du kanske redan har insett att det Ă€r hĂ€r Shamirs smarta plan kommer in i bilden. LĂ„t oss sĂ€ga vĂ„r hemlighet Shamirs hemliga delningsschema - Är Shamirs hemliga delningsschema. Vi kan vĂ€nda Shamirs hemliga delningsschema till en punkt pĂ„ grafen Shamirs hemliga delningsschema och kom fram till en polynomfunktion med grad Shamirs hemliga delningsschema, vilket uppfyller denna punkt. LĂ„t oss komma ihĂ„g det Shamirs hemliga delningsschema kommer att vara vĂ„r tröskel för nödvĂ€ndiga fragment, sĂ„ om vi sĂ€tter tröskeln till tre fragment mĂ„ste vi vĂ€lja en polynomfunktion med grad tvĂ„.

VĂ„rt polynom kommer att ha formen Shamirs hemliga delningsschemavar Shamirs hemliga delningsschema Đž Shamirs hemliga delningsschema — SlumpmĂ€ssigt valda positiva heltal. Vi konstruerar bara ett polynom med grad Shamirs hemliga delningsschema, dĂ€r den fria koefficienten Shamirs hemliga delningsschema â€“ Det hĂ€r Ă€r vĂ„r hemlighet Shamirs hemliga delningsschema, och för var och en av de efterföljande Shamirs hemliga delningsschema termer finns en slumpmĂ€ssigt vald positiv koefficient. Om vi ​​ÄtergĂ„r till det ursprungliga exemplet och antar det Shamirs hemliga delningsschema, dĂ„ fĂ„r vi funktionen Shamirs hemliga delningsschema.

Vid denna tidpunkt kan vi generera fragment genom att ansluta Shamirs hemliga delningsschema unika heltal i Shamirs hemliga delningsschemavar Shamirs hemliga delningsschema (eftersom det Àr vÄr hemlighet). I det hÀr exemplet vill vi fördela fyra fragment med en tröskel pÄ tre, sÄ vi genererar slumpmÀssigt poÀng Shamirs hemliga delningsschema och skicka en poÀng till var och en av de fyra betrodda personerna, nyckelns vÀktare. Vi lÄter ocksÄ folk veta det Shamirs hemliga delningsschema, eftersom detta anses vara offentlig information och Àr nödvÀndigt för Ätervinning Shamirs hemliga delningsschema.

ÅterstĂ€lla hemligheten

Vi har redan diskuterat begreppet polynominterpolation och hur det ligger till grund för Shamirs tröskelschema Shamirs hemliga delningsschema. NÀr nÄgon av tre av de fyra förvaltarna vill ÄterstÀlla Shamirs hemliga delningsschema, de behöver bara interpolera Shamirs hemliga delningsschema med sina egna unika poÀng. För att göra detta kan de bestÀmma sina poÀng Shamirs hemliga delningsschema och berÀkna Lagrange-interpolationspolynomet med hjÀlp av följande formel. Om programmering Àr tydligare för dig Àn matematik, sÄ Àr pi i huvudsak en operatör for, vilket multiplicerar alla resultat, och sigma Àr for, vilket lÀgger ihop allt.

Shamirs hemliga delningsschema

Shamirs hemliga delningsschema

vid Shamirs hemliga delningsschema vi kan lösa det sÄ hÀr och returnera vÄr ursprungliga polynomfunktion:

Shamirs hemliga delningsschema

Eftersom vi vet det Shamirs hemliga delningsschema, ÄterhÀmtning Shamirs hemliga delningsschema gjort helt enkelt:

Shamirs hemliga delningsschema

AnvÀnder osÀker heltalsaritmetik

Även om vi framgĂ„ngsrikt har tillĂ€mpat Shamirs grundidĂ© Shamirs hemliga delningsschema, vi har ett problem som vi har ignorerat fram till nu. VĂ„r polynomfunktion anvĂ€nder osĂ€ker heltalsaritmetik. Observera att för varje ytterligare poĂ€ng en angripare fĂ„r pĂ„ grafen för vĂ„r funktion, finns det fĂ€rre möjligheter för andra poĂ€ng. Du kan se detta med dina egna ögon nĂ€r du ritar ett ökande antal punkter för en polynomfunktion med heltalsaritmetik. Detta Ă€r kontraproduktivt för vĂ„rt uttalade sĂ€kerhetsmĂ„l, eftersom angriparen borde veta absolut ingenting förrĂ€n de Ă„tminstone har det Shamirs hemliga delningsschema fragment.

För att visa hur svag den aritmetiska heltalskretsen Àr, övervÀg ett scenario dÀr en angripare fick tvÄ poÀng Shamirs hemliga delningsschema och vet offentlig information som Shamirs hemliga delningsschema. Av denna information kan han utlÀsa Shamirs hemliga delningsschema, lika med tvÄ, och koppla in de kÀnda vÀrdena i formeln Shamirs hemliga delningsschema О Shamirs hemliga delningsschema.

Shamirs hemliga delningsschema

Angriparen kan sedan hitta Shamirs hemliga delningsschema, rÀknar Shamirs hemliga delningsschema:

Shamirs hemliga delningsschema

Sedan vi har definierat Shamirs hemliga delningsschema som slumpmÀssigt valda positiva heltal finns det ett begrÀnsat antal möjliga Shamirs hemliga delningsschema. Med hjÀlp av denna information kan en angripare hÀrleda Shamirs hemliga delningsschema, eftersom allt större Àn 5 duger Shamirs hemliga delningsschema negativ. Detta visar sig vara sant eftersom vi har bestÀmt oss Shamirs hemliga delningsschema

Angriparen kan sedan berĂ€kna de möjliga vĂ€rdena Shamirs hemliga delningsschemabyter ut Shamirs hemliga delningsschema ĐČ Shamirs hemliga delningsschema:

Shamirs hemliga delningsschema

Med begrÀnsade alternativ för Shamirs hemliga delningsschema det blir tydligt hur enkelt det Àr att vÀlja och kontrollera vÀrdena Shamirs hemliga delningsschema. Det finns bara fem alternativ hÀr.

Lös problemet med osÀker heltalsaritmetik

För att eliminera denna sĂ„rbarhet föreslĂ„r Shamir att du anvĂ€nder modulĂ€r aritmetik, ersĂ€tter Shamirs hemliga delningsschema pĂ„ Shamirs hemliga delningsschemavar Shamirs hemliga delningsschema Đž Shamirs hemliga delningsschema — mĂ€ngden av alla primtal.

LĂ„t oss snabbt komma ihĂ„g hur modulĂ€r aritmetik fungerar. En klocka med visare Ă€r ett bekant koncept. Hon anvĂ€nder en klocka alltsĂ„ Shamirs hemliga delningsschema. SĂ„ snart timvisaren passerar tolv Ă„tergĂ„r den till ett. En intressant egenskap hos detta system Ă€r att vi bara genom att titta pĂ„ klockan inte kan hĂ€rleda hur mĂ„nga varv timvisaren har gjort. Men om vi vet att timvisaren har passerat 12 fyra gĂ„nger, kan vi helt bestĂ€mma antalet timmar som har gĂ„tt med en enkel formel Shamirs hemliga delningsschemavar Shamirs hemliga delningsschema Ă€r vĂ„r divisor (hĂ€r Shamirs hemliga delningsschema), Shamirs hemliga delningsschema Ă€r koefficienten (hur mĂ„nga gĂ„nger divisorn gĂ„r in i det ursprungliga talet utan en rest, hĂ€r Shamirs hemliga delningsschema) och Shamirs hemliga delningsschema Ă€r resten, vilket vanligtvis returnerar ett modulo-operatörsanrop (hĂ€r Shamirs hemliga delningsschema). Att kĂ€nna till alla dessa vĂ€rden gör att vi kan lösa ekvationen för Shamirs hemliga delningsschema, men om vi missar koefficienten kommer vi aldrig att kunna Ă„terstĂ€lla det ursprungliga vĂ€rdet.

Vi kan visa hur detta förbÀttrar sÀkerheten för vÄrt system genom att tillÀmpa schemat pÄ vÄrt tidigare exempel och anvÀnda Shamirs hemliga delningsschema. VÄr nya polynomfunktion Shamirs hemliga delningsschema, och de nya punkterna Shamirs hemliga delningsschema. Nu kan nyckelhÄllarna Äterigen anvÀnda polynominterpolation för att rekonstruera vÄr funktion, men denna gÄng mÄste additions- och multiplikationsoperationerna Ätföljas av moduloreduktion Shamirs hemliga delningsschema (t.ex Shamirs hemliga delningsschema).

Med det hĂ€r nya exemplet, lĂ„t oss anta att angriparen lĂ€rde sig tvĂ„ av dessa nya punkter, Shamirs hemliga delningsschemaoch offentlig information Shamirs hemliga delningsschema. Den hĂ€r gĂ„ngen matar angriparen, baserat pĂ„ all information han har, följande funktioner, var Shamirs hemliga delningsschema Ă€r mĂ€ngden av alla positiva heltal, och Shamirs hemliga delningsschema representerar modulkoefficienten Shamirs hemliga delningsschema.

Shamirs hemliga delningsschema

Nu hittar vÄr angripare igen Shamirs hemliga delningsschema, berÀknar Shamirs hemliga delningsschema:

Shamirs hemliga delningsschema

Sedan försöker han igen Shamirs hemliga delningsschemabyter ut Shamirs hemliga delningsschema ĐČ Shamirs hemliga delningsschema:

Shamirs hemliga delningsschema

Den hÀr gÄngen har han ett allvarligt problem. Formel saknar vÀrden Shamirs hemliga delningsschema, Shamirs hemliga delningsschema О Shamirs hemliga delningsschema. Eftersom det finns ett oÀndligt antal kombinationer av dessa variabler kan han inte fÄ nÄgon ytterligare information.

SÀkerhetsövervÀganden

Shamirs hemliga delningsschema antyder sÀkerhet ur informationsteoretisk synvinkel. Det betyder att matematiken Àr motstÄndskraftig Àven mot en angripare med obegrÀnsad datorkraft. Kretsen innehÄller dock fortfarande flera kÀnda problem.

Till exempel skapar inte Shamirs plan fragment som ska kontrolleras, det vill sÀga mÀnniskor kan fritt presentera falska fragment och störa ÄterstÀllningen av den korrekta hemligheten. En fientlig fragmenthÄllare med tillrÀcklig information kan till och med producera ett annat fragment genom att byta Shamirs hemliga delningsschema efter eget gottfinnande. Detta problem löses med hjÀlp av verifierbara hemlighetsdelningssystem, sÄsom Feldmans schema.

Ett annat problem Àr att lÀngden pÄ ett fragment Àr lika med lÀngden pÄ motsvarande hemlighet, sÄ lÀngden pÄ hemligheten Àr lÀtt att bestÀmma. Detta problem kan lösas med trivial stoppning hemlig med godtyckliga nummer upp till en fast lÀngd.

Slutligen Àr det viktigt att notera att vÄra sÀkerhetsproblem kan strÀcka sig lÀngre Àn sjÀlva designen. För kryptografiska applikationer i den verkliga vÀrlden finns det ofta hot om sidokanalattacker dÀr en angripare försöker extrahera anvÀndbar information frÄn applikationskörningstid, cachning, krascher, etc. Om detta Àr ett problem, bör man under utvecklingen noggrant övervÀga att anvÀnda skyddsÄtgÀrder som funktioner och konstanttidsuppslagningar, förhindra att minne sparas pÄ disk och ett antal andra övervÀganden som ligger utanför den hÀr artikelns rÀckvidd.

Đ”Đ”ĐŒĐŸ

PÄ den hÀr sidan Det finns en interaktiv demonstration av Shamirs hemliga delningsschema. Demonstration baserad pÄ biblioteket ssss-js, som i sig Àr en JavaScript-port för det populÀra programmet ssss. Observera att man berÀknar stora vÀrden Shamirs hemliga delningsschema, Shamirs hemliga delningsschema О Shamirs hemliga delningsschema kan ta ett tag.

KĂ€lla: will.com

Köp pĂ„litlig hosting för webbplatser med DDoS-skydd, VPS VDS-servrar đŸ”„ Köp pĂ„litlig webbhotell med DDoS-skydd, VPS VDS-servrar | ProHoster