Zero Knowledge Authenticatie

advertisement
Zero Knowledge Authenticatie
Gerard Tel
Overzicht
•
•
•
•
•
Inleiding en Conclusie
Ali Baba’s Grot en Alice’ bewijs
Getallen, kwadraten, wortels
Het Zero Knowledge protocol voor wortels
Getallen zonder wortels: modulo
Herkenbare situatie?
• Is deze pinautomaat wel veilig
• Word ik geregistreerd als ik alcohol koop
• Misbruik paspoort na legitimatie (kopie!)
• Mijn handtekening wordt gekopieerd
Au, Au
• Authenticatie: bewijs wie je BENT
– Kennis: wachtwoord, PIN-code
– Bezit: sleutel, kaart, pasje
– Eigenschap: vingerafdruk, irisscan
• Autorisatie: bewijs wat je MAG
– Toegang tot gebouw, alcohol kopen, rijbewijs
• Vaak: Autorisatie door Authenticatie
Tentamens
Maak je om
te bewijzen
dat je genoeg
weet, niet
om je docent
slimmer te
maken
Toepassing: IRMA card
• Kaart met foto
(link met gebruiker)
• Laden met attributen
• Bewijs bezit van attribuut
in Zero Knowledge
• Bv attribuut “18+” voor alcohol kopen
• I Reveal My Attributes, www.irmacard.org
Bewijzen van kennis
• Wachtwoord: intypen
– Afluisteren en hergebruik
= risico voor gebruiker!
• Challenge/Respons: beantwoord vraag
– Afluisteren is geen risico
– Uitdager kan iets vragen wat hij niet weet
= risico voor gebruiker!
Een Uitje: Grot van Ali Baba
• Gesloten deur
• Geheime spreuk
• AB kent spreuk
• Bestaat AB?
• Is er zo’n spreuk?
• Claim Alice
Alice claimt haar rechten
• Alice is bereid te bewijzen dat zij AB is
• Zij vertrouwt Bob (omstanders) niet
• Bob wil stiekem filmen en opname verkopen
Bewijsspel: Drie stappen
• Alice gaat in de grot
– Via L of R, zonder dat Bob dit ziet
• Bob kiest tussen L of R als uitgang
• Alice komt naar buiten via die gang
• Dit doen ze zeven keer;
Bob gelooft Alice als zij zeven keer slaagt
Lukt het Bob te overtuigen?
• ALS Alice inderdaad Ali is
• DAN kent zij de code van de deur
– Als Bob een andere gang vraagt dan waar zij is,
gaat ze door de deur
– Het lukt haar inderdaad steeds (7x)
Wat als Alice een bedriegster is?
• Kan alleen door dezelfde gang naar buiten
• Als Bob die gang noemt, slaagt Alice
Als Bob de andere noemt, faalt Alice
• De kans dat Alice slaagt is 50%, (1/2)
• Kans dat Alice zeven keer slaagt: < 1%, (1/2)7
• Als Alice zeven keer slaagt is Bob overtuigd
De privacy van Alice
• Bob filmt alles stiekem
• Je ziet de film (zeven scenes);
weet je zeker dat Alice Ali is?
• Mislukte scenes eruit geknipt?
• Gang afgesproken met Alice?
• Film kun je maken zonder code of Ali
• Bob heeft niets aan de film
Rekenen zonder wortel
Kwadrateren
• Hoeveel is 7,8312 ?
• Druk 7,831 x 7,831 =
geeft 61,32456
• Welk getal x heeft x2 = 73,243 ?
• Zonder √ knop kan ik het niet uitrekenen
• (denk ik)
Rekenregel Kwadraat
• (A x B)2 = A2 x B2 en (A / B)2 = A2 / B2
• Vb met 3 en 5.
3 x 5 is 15, en 152 = 225.
32 = 9 en 52 = 25 en 9 x 25 = 225.
• Klopt voor echte getallen wel,
maar op rekenmachine NIET!!
Ali Baba’s Worteldeur
• Op de deur staat b,
een getal
• b is het kwadraat
van Ali’s geheim a
• Deur gaat open als
je een a zegt met
a2 = b
Alice bewijst dat zij a kent
• A: (Verstop in grot met “uitgang” s en s.b)
Neem random r, bereken s = r2, zeg s tegen B
• B: (kies de uitgang s of s.b)
Zeg challenge c is 0 voor s of 1 voor s.b
• A: (kom naar buiten)
Zeg antwoord, kies r of r.a (afh. van c)
• B: (controleer het antwoord)
y = antwoord , check y2 = s of y2 = s.b
Als Alice echt Ali is
• Dan weet zij inderdaad a met a2 = b.
• Omdat ze zelf s heeft gekozen als s = r2,
kent ze een y met y2 = s (neem y=r), en
kent ze een y met y2 = s.b (neem y = r.a)
• Alice kan 7x het goede antwoord geven
(zonder dat ze √ nodig heeft).
Als nep-Ali kan raden wat Bob vraagt
• Ik denk dat hij c = 0 gaat vragen:
Random r, s = r2, s naar Bob,
hij vraagt 0, ik stuur r
(als hij 1 vraagt heb ik a nodig)
• Ik denk dat hij c = 1 gaat vragen:
Random r, s = r2/b, s naar Bob,
hij vraagt 1, ik stuur r want r2 = s.b !!
(als hij 0 vraagt heb ik a nodig)
Als Alice een bedrieger is
• Dan kan zij c = 0 OF c = 1 voorbereiden
maar niet beide
• De kans om Bob te foppen is 1/2
De kans dat het 7x lukt is (1/2)7 < 0,01
• Bedriegers worden ontmaskerd met kans 99%
Is er echt geen truukje? *
• Stel Alice kent a NIET
• Wel: truukje om een speciale s te maken
waarvoor zij TWEE antwoorden weet,
namelijk y02 = s en y12 = s.b
• Alice DEELT: q = y1/y0
Wat is q2 ?
• Dus: Alice kent a WEL
Wat weet Bob na afloop?
• Hij weet (vrij: 99%) zeker dat Alice Ali is
• Kan hij misbruiken wat hij gezien heeft?
• Hij kan alles in scene zetten:
– Bedenk vantevoren de 7 challenges
– Bedenk 7x s met juiste antwoord
– Uitgewisselde vragen/antwoorden zijn precies als
met echte Ali!
• Hieruit kan Bob niets nieuws afleiden
(Munchhausen effect)
Hoe moeilijk is worteltrekken?
• Niet heel moeilijk: fabriek kan knopje maken
• Truukje met delen (wiskundeleraar vragen!)
ai+1 = (ai + b/ai) / 2
• Met reële getallen kan het eigenlijk niet!
• Door afronden klopt ook rekenregel niet.
Wiskunde: Klokrekenen
• Rekenen modulo m
met 0, 1, … m-2, m-1
• Eindig veel getallen, 0, 1, +, - *, /
• Normale rekenregels geldig
a2.b2 = (a.b)2
Praktijk: m heeft ~617 cijfers!!
Product van twee priemgetallen
26
Vermenigvuldigingstabel
(77)
31
32
33
34
35
36
31
37
68
22
53
7
38
32
68
23
55
10
42
74
33
22
55
11
44
0
33
34
53
10
44
1
35
69
35
7
42
0
35
70
28
36
38
74
33
69
28
64
Workshop Elgamal
• 32 x 36 = 1152
Deel door 77,
Rest is 74
• 33 x 35 = 0 ???
27
Een beetje Informatica
• Wat kun je uitrekenen? (En hoe?)
• Vermenigvuldigen en modulo kan
• Wortel modulo m: oplossen x2 = b
kan ALLEEN als je priemfactoren van m weet
• 77 = 11 x 7, maar . . .
• . . . als m heel groot is,
zijn factoren niet te vinden
• Dus √ onmogelijk
28
Samenvatting en Conclusie
• Zonder te vertellen,
bewijzen wat je weet
• DRIE stappen
• Werkt met grote
getallen
• IRMAcard
• Anoniem alcohol kopen
• Philips Smart Remote
Download