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.
1.3 Offentlig-nøgle kryptering 11<br />
Bob sætter sin lås på; Alice tager sin lås af; Bob tager sin lås af. Det er der<br />
fra et matematisk synspunkt sådan set ikke n<strong>og</strong>et mærkeligt i, problemet<br />
består i rækkefølgen hvormed kryptering <strong>og</strong> dekryptering finder sted. Hvis vi<br />
beskriver Alices kryptering med <strong>den</strong> matematiske funktion f, Bobs med<br />
<strong>den</strong> matematiske funktion g <strong>og</strong> kalder meddelelsen <strong>for</strong> M, kan de to første<br />
skridt altså beskrives ved udtrykket g(f(M)). Meddelelsen M kan opnås<br />
fra dette udtryk ved først at tage g −1 , altså g −1 (g(f(M))) = f(M), <strong>og</strong><br />
dernæst f −1 , altså f −1 (f(M)) = M. Imidlertid er det bare ikke det der<br />
sker i eksemplet oven<strong>for</strong>. Her <strong>for</strong>egår dekrypteringen nemlig i omvendt<br />
rækkefølge: Først dekrypterer Alice, f −1 , <strong>og</strong> dernæst Bob, g −1 , svarende<br />
til at vi får udtrykket g −1 (f −1 (g(f(M)))), et udtryk som matematisk<br />
set sjæl<strong>den</strong>t giver anledning til M. Generelt gælder der, at <strong>den</strong> som har<br />
indkodet sidst <strong>og</strong>så må afkode først, eller som det gerne hedder ‘først på,<br />
sidst af’. Lad os se et simpelt eksempel.<br />
Eksempel 1.1<br />
Antag, at vores meddelelse M er et tal <strong>og</strong> lad funktionerne f <strong>og</strong> g være<br />
givet ved f(M) = M 3 <strong>og</strong> g(M) = M + 1. Vi beregner de omvendte<br />
funktioner:<br />
y = M 3 ⇔ M = 3√ M <strong>og</strong> y = M + 1 ⇔ M = y − 1,<br />
altså f −1 (y) = 3√ y <strong>og</strong> g −1 (y) = y − 1. Vi får da<br />
g −1 (f −1 (g(f(M)))) = ( 3� ((M 3 ) + 1)) − 1 = 3� M 3 + 1 − 1,<br />
som er <strong>for</strong>skellig fra M. ⋄<br />
En af de få undtagelser på kryptosystemer, hvor dette ikke gælder er rent<br />
faktisk Cæsar-kryptering (se opgave 7). Men som vi allerede har set er Cæsarkryptering<br />
et alt andet end sikkert kryptosystem. Generelt regner man med<br />
at sikre kryptosystemer opfylder reglen om ‘først på, sidst af’.<br />
Hellman <strong>og</strong> Merkle var mest optaget af at finde en sikker metode til<br />
udveksling af nøgler mens Diffie var optaget af at følge en an<strong>den</strong> vej, <strong>den</strong><br />
vej som skulle vise sig at føre til hvad der i dag er kendt som offentlignøgle<br />
kryptering. Diffie genkalder sig <strong>den</strong> dag i 1975, hvor han fik ideen til<br />
offentlig-nøgle kryptering således:<br />
Jeg gik ne<strong>den</strong>under <strong>for</strong> at få en Coke <strong>og</strong> glemte næsten helt<br />
ideen. Jeg huskede, at jeg havde haft tænkt på et eller andet<br />
interessant, men jeg kunne ikke genkalde, hvad det var. Så kom<br />
det tilbage i et rigtigt adrenalinsus af ophidselse. For første gang<br />
mens jeg havde arbejdet med krypt<strong>og</strong>rafi var jeg rent faktisk klar<br />
over at jeg havde opdaget n<strong>og</strong>et rigtig værdifuldt. Alt hvad jeg<br />
havde opdaget op til dette tidspunkt <strong>for</strong>ekom mig nu kun at være<br />
teknikaliteter. (Singh; 1999, side 268, oversat fra engelsk)<br />
Men hvad var det så <strong>for</strong> en ide Diffie havde fået? Lad os <strong>for</strong> et kort øjeblik<br />
lige genkalde os, hvad det er som er essensen af privat-nøgle eller symmetrisk<br />
kryptering. I et privat-nøgle kryptosystem besidder afsender <strong>og</strong> modtager