AANSLUITINGSPROJECT TUE - VO
startpagina ] omhoog ] [ RSA-geheim ] recursief tellen ] nulpunten ] vierkleurenprobleem ] negen- elfproef ] tripels ] willekeurige getallen ] beeldbewerking ] lijnen in driehoek ] Platonische lichamen ] rijden maar ] cont kansen ] dobbelen ] De wet van Benford ] rozen ] superellipsen van Piet Hein ]

 

Praktische Opdracht
Een geheime boodschap

Probleemomschrijving

Lieve S,

Hier krijg je eindelijk mijn getallen. Sorry dat het even geduurd heeft. Mijn "groot" getal n is

232305723727482137666188007480523098602587176480498423028660787779572615896934611
084447477046200899938573758462134122625906488726190153059288208708777757957599695
86213024345226963529591811727222419

Het bestaat uit 200 cijfers, dat is groot genoeg. Zoals je weet hoef je n niet geheim te houden. Iedereen mag het weten. Maak je daar dus maar niet bezorgd over. Het getal is het product van twee grote priemgetallen. Ook dat mag iedereen weten. Maar ik vertel hier niet welke twee priemgetallen het zijn. Dat hou ik geheim. Iedereen mag gerust proberen om die twee priemfactoren te vinden. Dat lukt toch niet. Ook al gebruik je alle computers die in de hele wereld staan. Het andere getal dat je nog moet weten is e = 987654321. Ook dat hoef je niet geheim te houden.

Nu kun je eindelijk je geheime boodschappen naar mij sturen. Gebruik de formule y = xe modulo n. Gebruik maar dat bestandje dat ik je opgestuurd heb.

Nog even onze afspraak over de constructie van het getal x. Als je bijvoorbeeld IK HOU VAN JOU naar mij wilt sturen dan zet je die letters om met het lijstje a:=10 , b:=11, c:=12, ... z:=35. Neem maar voor de spatie 36. Op die manier correspondeert IK HOU VAN JOU met x = 1820361724303631102336192431

Stuur het getal y maar naar mij op, per brief of per e-mail, dat maakt niks uit. Voor mijn part ziet de hele wereld dat getal y. Alleen ik, lieve schat kan dat getal kraken. Alle anderen zijn machteloos.

groetjes, in afwachting van je eerste geheime boodschap
P.

Voor wie?
alle profielen

Omvang
8 slu

Beginkennis
ICT:    elementaire computervaardigheden

<\b>

Wat wordt er van je verwacht?
Het boven beschreven geheimschrift is bedacht door de wiskundigen Rivest, Shamir en Adleman. Het heet  daarom RSA. In dit systeem worden vrij oude stellingen uit de getaltheorie gecombineerd met wiskundige resultaten uit deze eeuw. Je kunt namelijk tegenwoordig met computers zeer snel grote priemgetallen berekenen en machtsverheffen met zeer grote getallen.

Bestudeer eerst de getaltheorie die gebruikt wordt in het RSA-cryptosysteem. Daarna bestudeer je de werking van RSA. Bedenk een boodschap (niet te lang, niet meer dan een stuk of 40 letters+spaties) die S naar P wil opsturen op een veilige manier. Zet deze boodschap om in het getal x. Tenslotte bepaal je met het programma MAPLE of MATHEMATICA of met het bestand modmacht.exe het getal y dat S moet opsturen. Met alle gegevens die je tot nu toe hebt moet dit lukken.

Ga vervolgens na hoe P de boodschap kan ontcijferen, d.w.z. x weer kan terughalen uit het getal y. Ook moet je nagaan wat de inhoud is van:

2076029861906226831565705034510178335760742543220622953605357573338542065625740814935704
1767206470398378829353830829771606857296821496154314962927618080951567521005983927414249
607827064333175931204

Dat getal was de eerste boodschap die P van S ontving. Om dit te kunnen ontcijferen heb je de geheime priemgetallen nodig. Als je belooft ze niet verder te vertellen, dan mag je ze hier ophalen. Daarnaast zul je ook nog gebruik moeten maken van het bestand inverse.exe

Studiemateriaal
Getaltheorie nodig bij RSA
Het RSA-systeem
Online demo RSA
downloaden modmacht.exe  (hiermee kun je machtsverheffen (mod n))
downloaden modinverse.exe (hiermee kun je de ontcijferingssleutel berekenen)
downloaden ggdplus.exe (hiermee kun je ggd's  berekenen)

Opmerking: 
De leerteksten stammen gedeeltelijk uit
Kun je die code kraken?
Masterclass informatiebeveiliging
Prof.dr. Henk C.A. van Tilborg