Portfolio opdracht RSA
Ontvangende partij Neem twee priemgetallen 𝑝 en 𝑞 Bereken 𝑚=𝑝∙𝑞 Kies 𝑒 met 𝑔𝑔𝑑 𝑒, 𝑛 =1 Maak 𝑚 en 𝑒 bekend. Houd 𝑝∙𝑞 geheim of verwijder ze Houd 𝑛 geheim
Verzenden-ontvangen Neem als boodschap een getal 𝑥 𝑥<𝑚 Bereken 𝑁≡ 𝑥 𝑒 mod 𝑚 Verstuur 𝑁 Bereken 𝑑 met 𝑒𝑑≡1 mod 𝑛 𝑔𝑔𝑑 𝑒, 𝑛 =1 Bereken 𝑁 𝑑 mod 𝑚=𝑥
Waarom klopt het? 𝑁 𝑑 = 𝑥 𝑒 𝑑 = 𝑥 𝑒𝑑 = 𝑥 1+𝑘𝑛 𝑁 𝑑 = 𝑥 𝑒 𝑑 = 𝑥 𝑒𝑑 = 𝑥 1+𝑘𝑛 = 𝑥∙ 𝑥 𝑛 𝑘 =𝑥∙ 𝑥 𝑝−1 𝑞−1 𝑘 =𝑥∙ 𝑥 𝜑(𝑚) 𝑘 ≡𝑥∙ 1 𝑘 ≡𝑥 mod 𝑚 𝑥 𝜑(𝑚) ≡1 mod 𝑚 (Euler)
Priemgetallen in RSA Meestal 𝑝, 𝑞 > 100 cijfers Bijvoorbeeld 10 100 +𝑘 is priem voor 𝑘=267, 949, 1243
Voorbeeld Neem 𝑝=11 en 𝑞=7 𝑚=77 en 𝑛=10∙6=60 Kies 𝑒=7, dan 𝑑=43 Euclides Omschrijven 7 = 0∙60 + 1∙7 60 = 8∙7 + 4 4 = 60 – 8∙7 4 = 1∙60 – 8∙7 7 = 1∙4 + 3 3 = 7 – 1∙4 3 = -1∙60 + 9∙7 4 = 1∙3+1 1 = 4 – 1∙3 1 = 2∙60 – 17∙7
Voorbeeld Kies boodschap 𝑥=3 𝑁= 3 7 =31 mod 77 verstuur het bericht 31 Decodeer 𝑁 43 = 31 43 ≡3 mod 77 Dus 𝑎=3
Herhaald kwadrateren 31 43 = 31 1+2+8+32 =31∙ 31 2 ∙ 31 8 ∙ 31 32 31 43 = 31 1+2+8+32 =31∙ 31 2 ∙ 31 8 ∙ 31 32 312 = 961 = 37 mod 77 314 = 372 = 1369 = 60 mod 77 318 = 602 = 3600 = 58 mod 77 3116 = 582 = 53 mod 77 3132 = 37 mod 77 3143 = 311 + 2 + 8 + 32 = 31∙312∙318∙3132 = 31∙37∙58∙37 = 3 mod 77
Portfolio-opdracht Neem p en q tussen 20 en 50 Kies een getal e en een bericht x Laat zien hoe je een bericht codeert en hoe de ontvanger dat decodeert OF Kraak een gegeven code Gegeven m, e en N: vind x