RSA og den heri anvendte matematiks historie - Institut for Natur ...
RSA og den heri anvendte matematiks historie - Institut for Natur ...
RSA og den heri anvendte matematiks historie - Institut for Natur ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
16 Introduktion<br />
af <strong>for</strong>skere fra Stan<strong>for</strong>d. Forskerne fra MIT skriver således i indledningen til<br />
deres artikel:<br />
Den ‘elektroniske posts’ ære kan snart være over os. Vi må der<strong>for</strong><br />
sikre os at to vigtige egenskaber ved det nuværende system med<br />
‘papirpost’ <strong>for</strong>bliver bevaret: (a) meddelelser må være private <strong>og</strong><br />
(b) meddelelser må være underskrevet. (Rivest et al.; 1978, side<br />
1, oversat fra engelsk)<br />
<strong>RSA</strong>s specielle envejsfunktion tilhører det område af matematikken der kendes<br />
som talteori – en omfattende <strong>og</strong> ældgammel matematisk disciplin. Før vi<br />
således kan give en fyldestgørende beskrivelse af, hvordan envejsfunktionen<br />
i <strong>RSA</strong> opfylder Diffies <strong>og</strong> Hellmans krav til offentlig-nøgle systemer bliver<br />
vi nødt til at have n<strong>og</strong>et matematik på banen. Dette <strong>for</strong>egår i kapitel 2 <strong>og</strong><br />
kapitel 3 <strong>og</strong> beskrivelsen af <strong>RSA</strong> følger så i kapitel 4. Ydermere er vi nødt<br />
til at få en ide om, hvad algoritmer in<strong>den</strong> <strong>for</strong> matematikken er, da <strong>RSA</strong><br />
er et eksempel på en sådan <strong>og</strong> da der <strong>og</strong>så in<strong>den</strong> <strong>for</strong> talteorien selv findes<br />
algoritmer. Så det gør vi nu.<br />
1.4 Lidt om algoritmer<br />
<strong>RSA</strong> er som sagt en algoritme. Det vil sige, at man <strong>for</strong> at (ind)kryptere <strong>og</strong><br />
dekryptere følger n<strong>og</strong>le helt bestemte <strong>og</strong> fastlagte procedurer. I eksemplet fra<br />
afsnit 1.1 med Cæsar-kryptering var <strong>den</strong> fastlagte procedure <strong>for</strong> kryptering<br />
ganske enkelt:<br />
1. Udskift hvert b<strong>og</strong>stav i beske<strong>den</strong> med det b<strong>og</strong>stav der står tre pladser<br />
længere fremme i alfabetet.<br />
Man må selvfølgelig tilføje, at hvis der er tale om et af de tre sidste b<strong>og</strong>staver<br />
i alfabetet så tæller man videre fra begyndelsen af alfabetet. Proceduren <strong>for</strong><br />
dekryptering lyder:<br />
2. Udskift hvert b<strong>og</strong>stav i beske<strong>den</strong> med det b<strong>og</strong>stav der står tre pladser<br />
tidligere i alfabetet.<br />
Igen må man tilføje, at hvis der er tale om et af de tre første b<strong>og</strong>staver i<br />
alfabetet så tæller man videre bagfra i alfabetet. Der er altså tale om to<br />
simple procedurer som tilsammen giver os en algoritme <strong>for</strong> udførelsen af<br />
Cæsar-kryptering.<br />
Selve navnet ‘algoritme’ er en <strong>for</strong>vanskning af navnet al-Khowarizmi. Abu<br />
Ja’far Mohammed Ibn Musa al-Khowarizmi (ca. 780-850) var astronom <strong>og</strong><br />
matematiker i Bagdad <strong>og</strong> det fra hans b<strong>og</strong> Kitab al-jabr w’al muquabala<br />
at navnet ‘algebra’ stammer – al-jabr blev til algebra. B<strong>og</strong>en omhandler<br />
aritmetiske operationer med hinduistiske taltegn, hvilket vil sige de tal vi i<br />
dag bruger. (Godt nok omtaler vi gerne vores tal som arabertal, men faktisk<br />
er der tale om de hinduistiske taltegn. Arabernes tal ser ganske anderledes<br />
ud.) Gennem <strong>den</strong> latinske <strong>for</strong>vanskning af al-Khowarizmis navn kom algoritme<br />
med ti<strong>den</strong> til at betyde aritmetisk operation med hinduistiske taltegn <strong>og</strong><br />
senere det som vi i dag <strong>for</strong>står ved en algoritme. For at være helt på det rene<br />
med, hvad det er vi i dag <strong>for</strong>står ved begrebet algoritme skal vi give følgende<br />
definition.