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.
4.3 Et udførligt eksempel 87<br />
Alice sender nu <strong>den</strong>ne kryptotekst til Bob. Det første Bob gør er at<br />
bryde <strong>den</strong> op i blokke på fire cifre:<br />
0255 1391 1046 1733 1745 1554 1808.<br />
Bob skal nu bruge sin egen private nøgle, KD = (nB, dB), til at dekryptere<br />
beske<strong>den</strong> med. nB er selvfølgelig <strong>den</strong> samme værdi som i <strong>den</strong> offentlige<br />
nøgle, men lad os se hvordan Bob har bestemt værdien d.<br />
Den private nøgle d skal vælges således, at <strong>den</strong> er en invers af e = 23<br />
modulo φ(n) = 3120. Vi ved fra tidligere (jævnfør eksempel 3.14), at vi<br />
kan bestemme inverse ved at gå ‘baglæns’ gennem Euklids algoritme, <strong>og</strong><br />
derefter udtrykke <strong>den</strong> største fællesdivisor som en sum af de to heltal, i<br />
tilfældet her<br />
1 = s · e + t · φ(n),<br />
hvor s’et her er i<strong>den</strong>tisk med vores d-værdi. Men før vi kan gå baglæns i<br />
Euklids algoritme må vi nødvendigvis gå <strong>for</strong>læns først. Selvfølgelig ved vi<br />
allerede at sfd(e, φ(n)) = 1, <strong>for</strong> sådan er <strong>den</strong> jo valgt, men det hjælper os<br />
ikke, da det er mellemregningerne vi har brug <strong>for</strong>. Altså kører vi Euklids<br />
algoritme igennem <strong>for</strong> sfd(23, 3120):<br />
3120 = 23 · 135 + 15<br />
23 = 15 · 1 + 8<br />
15 = 8 · 1 + 7<br />
8 = 7 · 1 + 1<br />
7 = 1 · 7 + 0<br />
Vi finder som ventet sfd(23, 3120) = 1 <strong>og</strong> kan nu gå baglæns:<br />
1 = 8 − 7 · 1 = 1 · 8 + (−1) · 7<br />
= 1 · 8 + (−1) · (15 − 8 · 1) = (−1) · 15 + 2 · 8<br />
= (−1) · 15 + 2 · (23 − 15 · 1) = 2 · 23 + (−3) · 15<br />
= 2 · 23 + (−3) · (3120 − 23 · 135) = (−3) · 3120 + 407 · 23.<br />
Vi får således, at<br />
1 = −3 · φ(n) + 407 · e,<br />
hvilket betyder at d = 407.<br />
Altså har Bob <strong>den</strong> private dekrypteringsnøgle givet ved<br />
KD = (nB, dB) = (3233, 407).<br />
Den første udregning der skal udføres er der<strong>for</strong><br />
D(0255) ≡ 0255 407 (mod 3233).