|
AANSLUITINGSPROJECT TUE - VO
|
Getaltheorie die gebruikt wordt in RSAHet RSA-cryptosysteem is een geheimschrift waarin een aantal rekenmethoden en oude stellingen uit de wiskunde gebruikt worden. Als je RSA wilt doorgronden dan moet je eerst iets weten over de begrippen deler en veelvoud, klokrekenen, priemgetallen en de stellingen van Fermat en Euler. KlokrekenenBij veel geheimschriften wordt gebruik gemaakt van een soort "klokberekening". Stel je een klok voor met de getallen 0 , 1, 2, ... 25.
Je ziet dan de letter a als 0, de letter b als 1, enzovoort, dus de letter z
als 25. In de wiskunde heet klokrekenen modulo rekenen. Rekenen modulo 26 houdt in dat we alleen werken met de getallen 0 , 1, 2, ...
25. Als je bij je berekeningen antwoorden krijgt die buiten de verzameling
{0 , 1, 2, ... 25} liggen, moet je bij het antwoord net zolang 26 erbij
tellen of eraf trekken tot het antwoord weer in {0 , 1, 2, ... 25} zit.
We schrijven
Je kunt ook zeggen dat 26 Je kunt natuurlijk ook een ander klokgetal kiezen. De koppeling met de letters a, b, ... z gaat dan verloren.
Met geschikte software kun je ook voor zeer grote grote getallen moduloberekeningen maken , bijvoorbeeld 2123 (mod 123456).
Deler, veelvoud en (grootste) gemeenschappelijke factorEen natuurlijk getal b is een deler (engels divisor) van een positief natuurlijk getal a als er een natuurlijk getal k bestaat zodanig dat a = k.b. Het getal a noem je een veelvoud van b. Als b geen deler is van a dan zeg je dat a niet deelbaar is door b
Als twee natuurlijke getallen een gemeenschappelijke deler hebben dan zijn zeg je ook wel dat ze een factor gemeen hebben.
In het laatste voorbeeld is ook 4 een gemeenschappelijke deler van 8 en 100. Omdat er geen grotere gemeenschappelijke factor bestaat noem je 4 de grootste gemene deler van 8 en 100. Dat noteer je met ggd(8 , 100) = 4.
In het Engels wordt de grootste gemene deler afgekort met gcd (greatest common divisor).
PriemgetallenIn moderne geheimschriften wordt vaak modulo een priemgetal gerekend. De reden daarvoor zal verderop duidelijk worden. Priemgetallen zijn positieve, gehele getallen die niet te schrijven zijn als het product van twee kleinere positieve, gehele getallen. Bijvoorbeeld 15 is niet priem, want 15 = 3*5 maar 11 is wel priem. Je kunt ook zeggen dat een priemgetal precies twee positieve delers heeft, namelijk 1 en zichzelf. Er bestaan oneindig veel priemgetallen en met computers kost het weinig moeite om grote priemgetallen te bepalen.
De (kleine) stelling van FermatDe Franse wiskundige Fermat (1601-1665) ontdekte een mooie wetmatigheid als je modulo een priemgetal werkt. (Kleine) Stelling van Fermat
Het bewijs van de stelling is niet heel moeilijk. Je kunt het vinden via bewijs Fermat De EulerfunctieDe volgende stelling gaat nog een stapje verder dan de stelling van Fermat. We hebben eerst een notatie nodig. Definitie
Als n een priemgetal is dan hoef je niet veel getallen te tellen. Bekijk
bijvoorbeeld n = 29. De natuurlijke getallen 1, 2, 3, ... 28 zijn allen kleiner
dan 29 en hebben geen gemeenschappelijke factor met 29 want dat is een
priemgetal. In het algemeen geldt:
Voor het product van twee priemgetallen ligt de zaak iets gecompliceerder. Toch kun je uit een eenvoudig getallenvoorbeeld een regel halen. Bekijk nogmaals n = 10 = 2*5 en schrap systematisch de getallen die een factor gemeenschappelijk hebben met 10.
Het aantal is dus gelijk aan 10 - 2 - 5 +
1 = 4. Er geldt dus j(10)
= 4
Deze functie speelt een belangrijke rol in het RSA-systeem en hij komt ook tevoorschijn in de stelling van Euler. Deze stelling lijkt veel op de stelling van Fermat. Stelling van Euler
Het bewijs van de Stelling van Euler verloopt precies hetzelfde
als het bewijs van de Stelling van Fermat. Dit keer vermenigvuldig je
de getallen die geen factor met n gemeen hebben. |