Download de presentatie
GepubliceerdSilke Simons Laatst gewijzigd meer dan 10 jaar geleden
1
Workshop: Geheimschrift op de TI-83+
Kom hier met je TI-83 of TI-84 het programma ophalen! Gerard Tel Universiteit Utrecht
2
Wat gaan we doen? Achtergrondweetjes opfrissen en drie kandidaten zoeken Uitleg en demo: Elgamal geheimschrift Waarom werkt het zo goed? Prijsvraag: gedwongen samenwerken Workshop Elgamal
3
Wat gaan we doen? Achtergrondweetjes opfrissen en drie kandidaten zoeken Uitleg en demo: Elgamal geheimschrift Waarom werkt het zo goed? Prijsvraag: gedwongen samenwerken Workshop Elgamal
4
Een beetje Wiskunde Rekenen modulo priem p (95917) met 0, 1, … p-2, p-1 Eindig veel getallen, delen door elk getal ≠0 Normale rekenregels geldig (ga)k = (gk)a Praktijk: p heeft ~309 cijfers!! Workshop Elgamal
5
Een beetje Informatica
Wat kun je uitrekenen? (En hoe?) Machtsverheffen ga in 5.log(a) verm Logaritme met grondtal g: niet berekenbaar!! Kost ~3.√a verm |a| Exp Log 5 30 3000 50 250 3E25 100 500 3E50 Workshop Elgamal
6
Een beetje TI-83, 83+, 84+ Grafisch Programmeerbaar Algemeen in VWO
Drie Teams, elk met TI83/84 en Elgamal programma Workshop Elgamal
7
Een beetje Cryptografie
Ceasar Code, boodschap x Zender en ontvanger gebruiken dezelfde sleutel: symmetrische code Gebruik TI-83: Hoofdmenu, 1:Ceasar Team 1 kiest sleutel z Team 1, 2 stel sleutel in (2:) Workshop Elgamal
8
Demo Ceasar code Team 2: Verzin boodschap x
Team 2: Versleutel x (4: ) en vertel codebericht y Team 1: Ontsleutel y (5: ) Formules: Encz(x) = x.z Decz(y) = y/z Wat weet Team 3 (zaal)? Workshop Elgamal
9
Wat gaan we doen? Achtergrondweetjes opfrissen en drie kandidaten zoeken Uitleg en demo: Elgamal geheimschrift Waarom werkt het zo goed? Prijsvraag: gedwongen samenwerken Workshop Elgamal
10
Public Key codes Caesar: T2 gebruikt z voor versleutelen, T3 voor ontsleutelen Idee: Encb(x), Deca(y) Key pair met a secret, b public Hoofdmenu, 2: Elgamal T1: 1: Sleutel maken, vertel b T2: 2: Invoer public, b T3: Voer ook b in Workshop Elgamal
11
Key pair alleen voor Team 1
Team 2 maakt ook een key pair Team 1 voert b2 in (met 2: ) Totaal nu 4 sleutels: Team 1: Team 2: Team 3 en zaal a2 a1 b1 b2 Nooit vertellen! Workshop Elgamal
12
Relatie tussen a en b Relatie: b = ga
Reken van a naar b: Machtsverheffen (in sleutelgeneratie) Reken van b naar a: Logaritme: onmogelijk Workshop Elgamal
13
Versleutelen: gebruik b
Opdracht: T2: - kies getal x, - Elgamal, 3: Uitkomst: 2 getallen (u, v) Vertel u en v Versleuteling: Random blinder z v = x.z (Caesar!) Hint u bevat de blinder z informatie over die T1 kan gebruiken Random k Blinder z = bk Hint u = gk Workshop Elgamal
14
Ontsleutelen: gebruik a
Opdracht: T1: - Elgamal, 4: - Voer u en v in Uitkomst: 1 getal x x aan T2 (Gelijk???) Ontsleuteling: Blinder z = ua Boodschap x = v/z Versleutel-Blinder: z = bk = (ga)k Ontsleutel-Blinder: z = ua = (gk)a Workshop Elgamal
15
Afluisteren? T3 ziet de communicatie maar niet de secrets Gezien:
Public b = ga Hint u = gk Product v = x.z Niet te berekenen: Secret a Blinder z Getal x Workshop Elgamal
16
Wat gaan we doen? Achtergrondweetjes opfrissen en drie kandidaten zoeken Uitleg en demo: Elgamal geheimschrift Waarom werkt het zo goed? Prijsvraag: gedwongen samenwerken Workshop Elgamal
17
Prijsvraag: samenwerken
Versleutelen met b: nodig a = log(b) voor ontsleutelen Kies een random getal b …? Niemand kan ooit ontsleutelen! Stel in als b: Product b1.b2 Versleutel getal op snoepwaar. Vertel mij getal op reep! Workshop Elgamal
18
Zijn er veel sleutels nodig?
Symmetrisch z: 1 Public a1 b1 a2 b2: 4 Een sleutel per gebruikerspaar: ½ n(n-1) sleutels Een sleutelpaar per gebruiker: 2 n sleutels Workshop Elgamal
19
RSA en Elgamal RSA Versleutelen is deterministisch
Prijsvraag: versleutel 80 t/m 200, vergelijk resultaat Elgamal Versleutelen kiest random k Opnieuw versleutelen van dezelfde x geeft ander resultaat Boodschap raden en zelf versleutelen kan niet! Belangrijk voor veiligheid als er maar weinig boodschappen mogelijk zijn. Stemming: JA / NEE Workshop Elgamal
20
Stemmen met Elgamal Homomorfie Geheime stemming
Versleutel: Encb(x1): (u1, v1) Encb(x2): (u2, v2) Vermenigvuldig: (u, v) = (u1u2, v1v2) Ontsleutel: Deca(u, v): x1x2 Geheime stemming JA: versleutel g NEE: versleutel 1 Vermenigvuldig alle stemmen: u = u1u2…un v = v1v2…vn Ontsleutel (u, v) geeft g#JA Workshop Elgamal
21
Manipuleerbaarheid: Veiling
Werking van veiling Representeer bod met 2-macht: 2r Gesloten veiling: versleuteld bod Bod r: (gk, bk.2r) Ontcijfer berichten en kies hoogste Overbied bod (u1, v1): Bereken (u2, v2) als Encb(2) Bied (u1u2, v1v2) Win met onbekende prijs! Workshop Elgamal
22
Wat gaan we doen? Achtergrondweetjes opfrissen en drie teams maken
Uitleg en demo: Elgamal geheimschrift Waarom werkt het zo goed? Prijsvraag: gedwongen samenwerken Workshop Elgamal
23
Sleutel bij b = b1b2 Omdat b1 = ga1 en b2 = ga2 is b = g??
Omdat b1 = ga1 en b2 = ga2 is b = g(a1+a2) Vind x = v/u(a1+a2) zonder elkaar a1 of a2 te vertellen Workshop Elgamal
24
Het Elgamal programma Te gebruiken in VWO klas
Programma, workshop-boekje, uitleg, deze slides op website Programma uitbreidbaar Boekje heeft ideeën voor experimenten/scripties Workshop Elgamal
25
Conclusies Symmetrische of public-key crypto
Elgamal gebaseerd op discrete log Demo op TI-83+ ??: Boek of college Workshop Elgamal
26
Oplossing Prijsvraag Ontsleutelen is: v delen door ua
u(a1+a2) is: ua1.ua2 Deel eerst door ua1 en dan door ua2 Team 1: bereken v’ = Deca1(u, v) Team 2: bereken x = Deca2(u, v’) Workshop Elgamal
27
Overzicht van formules
Constanten: Priemgetal p, grondtal g Sleutelpaar: Secret a en Public b = ga Encryptie: (u, v) = (gk, x.bk) met b Decryptie: x = v/ua met a Prijsvraag: b = b1b2. Ontsleutelen? Workshop Elgamal
Verwante presentaties
© 2024 SlidePlayer.nl Inc.
All rights reserved.