¨ 4. VAD MODULIRAKNING BETYDER F¨ oR JUST DITT KRIMINELLA N¨ aTVERK. 45 man ska definiera division. Men ¨annu v¨arre, ¨aven det som ¨ar konsekvenser f¨or heltal av existensen av division fungerar inte alltid. F¨or heltal vet vi t ex att ab = 0 medf¨or att antingen ¨ar a = 0 eller s˚ a ¨ar b = 0. Men detta ¨ar inte sant modulo vissa tal, tex s˚ a ¨ar 2 · 3 ≡6 0. Som en konsekvens kan man inte heller ur likheten ax ≡b ay (a, x, y ∈ Z och a skild fr˚ an 0) i allm¨anhet dra slutsatsen att x = y. (Det g˚ ar att r¨adda situationen om b ¨ar ett primtal, men det ¨ar en annan historia.) 4. Vad modulir¨ akning betyder f¨ or just ditt kriminella n¨ atverk. Vi ska bara surfa lite p˚ a ytan. Mer detaljer finns i artiklar om kryptering och RSA t ex p˚ a wikipedia. I m˚ anga sammanhang vill man att en text bara ska kunna l¨asas av en enda mottagare. N¨ar man t ex knappar in sin bankomatkod ¨ar det katastrofalt om den kan l¨asas av n˚ agon som avlyssnar alla telefonmeddelanden fr˚ an apparaten. D¨arf¨or krypteras informationen innan den ska skickas p˚ a ett s¨att som ska g¨ora att det bara ¨ar ens bank som kan l¨asa den. Samma typ av problem uppkommer n¨ar l¨arare ska skicka tentor o¨ver e-post - de kan inte skickas i klartext eftersom det inte ¨ar alldeles ot¨ankbart att n˚ agra duktiga studenter tjuvlyssnar p˚ a mail (s˚ a skickliga studenter a¨r ju f¨orst˚ as en l¨arares dr¨om.) Det har l¨ange varit en kamp mellan de som konstruerar krypteringssystem och de som f¨ors¨oker bryta dem. I och med datorer har det f¨orst˚ as blivit mycket l¨attare att g¨ora det sista: Fantomens hemliga chiffer tar inte m˚ anga millisekunder att l¨asa. Samtidigt har anv¨andningen av datorer inneburit att mycket mer k¨anslig information ¨ar tillg¨anglig f¨or missbruk, s˚ a att det blivit ett stort behov av s¨aker kryptering. F¨or ungef¨ar 30 ˚ ar sedan utvecklades bl a krypteringssystemet RSA som hittills - och troligen ¨aven i framtiden - kunnats g¨oras tillr¨ackligt s¨akert. Det och liknande metoder inneb¨ar att dom goda - konstrukt¨orer av krypteringssystem vunnit ¨over de onda - de som f¨ors¨oker dechiffrera. RSA ¨ar i princip r¨att enkelt, och anv¨ander sig av modulir¨akning och endast n˚ agra f˚ a fler satser om primtal ¨an de vi g˚ att igenom. Det skulle kunna brytas om det fanns en tillr¨ackligt snabb metod att primtalsfaktorisera sammansatta tal. Men s˚ adana tror man allts˚ a inte finns. Vi ska g˚ a igenom en annan till¨ampning av modulir¨akning som kom ungef¨ar samtidigt, det s k Diffie-Hellmans nyckelbyte. Krypteringssystem ¨ar ofta beroende av en s k nyckel eller l¨osenord, som best¨ammer hur informationen ska krypteras. Det kan t¨ankas som ett rimligt stort tal, t ex n˚ agra hund100 ra siffror. Man kan t¨anka sig att man har ett bibliotek med 10 olika krypteringssystem, och nyckeln ¨ar numret p˚ a det av dessa system som ska anv¨andas. Om nu Alice och Bob - detta ¨ar de traditionella namnen f¨or de som ska utbyta hemlig information - vill se till att de anv¨ander samma nycklar, s˚ a har de ett problem. De kan inte skicka nyckeln till varandra ¨over en telefonlinje eller med post, f¨or d˚ a kan den 46 ¨ 3. MODULIRAKNING ALIAS KONGRUENSER enkelt uppsnappas och all annan kommunikation som krypteras med denna gemensamma nyckel l¨asas. De kan f¨orst˚ as m¨otas d˚ a och d˚ a i enslighet och komma ¨overens, men det blir opraktiskt och dyrbart, s¨arskilt om de ofta vill byta nycklar. (Ju l¨angre samma nyckel anv¨ands, desto st¨orre ¨ar risken f¨or avsl¨ojande.) Men de kan g¨ora s˚ a h¨ar, med lite modulir¨akning. Vi beh¨over en beteckning: om som nedan p ¨ar ett fixt primtal, och x ¨ar ett naturligt tal s˚ a l˚ at [x] st˚ a f¨or den positiva resten av x modulo p. Om p = 7 s˚ a ¨ar allts˚ a [10] = 3, och ur tidigare r¨akneregler (Sats 13) f¨oljer t ex att [ab ]c ≡ [abc ]. Problemet ¨ar allts˚ a att tv˚ a personer ska kommunicera via avlyssnade telefonlinjer med varandra och i slut¨andan ha kommit ¨overens om samma tal, utan att avlyssnarna har en suck. • Helt ¨oppet kommer Alice och Bob ¨overens om ett primtal p och ett tal 1 < g < p (och att f¨olja proceduren nedan). Denna information k¨anner allts˚ a eventuella tjuvlyssnare ocks˚ a till. • Sedan best¨ammer sig Alice i hemlighet tillsammans med sin ¨alskade slumpgenerator f¨or ett tal 1 < kA < p − 1. Detta k¨anner bara hon till. • P˚ a samma s¨att best¨ammer sig Bob i hemlighet f¨or ett tal 1 < kB < p − 1. Detta k¨anner bara han till. • Sedan skickar Alice resten modulo p av g kA , d v s [g kA ] till Bob, och han skickar [g kB ] till Alice. Dessa tv˚ a tal kan man inte skydda, utan de antas ocks˚ a bli avlyssnade. • Sedan tar Alice det tal [g kB ] hon f˚ att av Bob och upph¨ojer det till sin egen hemliga potens kA , och r¨aknar ut resten modulo p. Hon f˚ ar [[g kB ]kA ] = [g kA kB ]. • Bob g¨or detsamma med det tal [g kA ] han f˚ att av Alice. Han upph¨ojer det till sin egen hemliga potens kB , och r¨aknar ut resten modulo p. Han f˚ ar [[g kA ]kB ] = kA k B [g ], allts˚ a samma tal som Alice fick.. • Resten modulo p av talet g kA kB ¨ar deras gemensamma nyckel! Varf¨or fungerar detta? Varf¨or kan inte tjuvlyssnarna f˚ a fram nyckeln? Enkelt: • Funktionen x �→ [g x ] ¨ar en s k env¨agsfunktion. Den ¨ar, som vi s˚ ag i exemplet i f¨orra sektionen l¨att att r¨akna ut, ¨aven f¨or stora tal x, men givet att man vet [g x ] ¨ar det (troligen) hoppl¨ost sv˚ art att r¨akna ut x. (Problemet att r¨akna ut x effektivt kallas f¨or det diskreta logaritmproblemet, eftersom det svarar mot att r¨akna ut ett slags logaritm med basen g.) En tjuvlyssnare k¨anner till f¨oljande g, p, [g kA ], [g kB ] och har problemet att ur detta best¨amma den gemensamma nyckeln [g kA kB ]. Om hon (Catherine eller Eve ¨ar standardnamn) kunde r¨akna ut kA och kB fr˚ an [g kA ] och [g kB ] genom en effektiv l¨osning av diskreta logaritmproblemet, s˚ a skulle hon f¨orst˚ as kunna ¨ 5. OVNINGAR. 47 f˚ a fram nyckeln g kA kB . Men ingen k¨anner till n˚ agon s˚ adan effektiv metod, eller n˚ agon annan metod att best¨amma den gemensamma nyckeln. • Det finns till varje primtal p gott om g s˚ a att varje 1 ≤ y ≤ p − 1 kan skrivas x som y = [g ], f¨or n˚ agot x. Detta ¨ar en viktig teknisk po¨ang, f¨or att potenserna i proceduren ovan ska bli olika. Exempel 34. L˚ at p vara 13 och g = 2. D˚ a ¨ar (modulo 13) 1 ≡ 20 , 2 ≡ 21 , 4 ≡ 22 , 8 ≡ 23 , 3 ≡ 24 , 6 ≡ 25 , 12 ≡ 26 , 11 ≡ 27 9 ≡ 28 , 5 ≡ 29 , 10 ≡ 210 , 7 ≡ 211 , 1 ≡ 212 Vi ser att varje tal 1 ≤ y ≤ p − 1 = 12 kan skrivas som 2x , f¨or n˚ agot l¨ampligt x. I exemplet ovan s˚ ag vi att resten av 212 = 213−1 modulo 13 ¨ar 1. Det ¨ar sant inte bara f¨or primtalet 13 utan i allm¨anhet. F¨or varje primtal p g¨aller f¨oljande sats (som anv¨ands i RSA och andra system) och kallas Fermats lilla sats. Sats 14. L˚ at p vara ett primtal och 0 < a < p. D˚ a g¨aller ap−1 ≡ 1 (mod p). Multiplicerar vi likheten i satsen med a f˚ ar vi ap ≡p a, och detta ¨ar sant f¨or alla tal a ∈ Z. Beviset f¨or satsen ¨ar inte s˚ a sv˚ art och kommer i en senare kurs. ¨ 5. Ovningar. (1) Visa att 3100 − 1 ¨ar j¨amnt delbart med 16. (Ledtr˚ ad: r¨akna ut resten vid division 1 2 3 med 16 av potenserna 3 , 3 , 3 , .... Finns det n˚ agot anv¨andbart m¨onster?) (2) Vilken rest erh˚ alles d˚ a 2100 delas med 23? (3) Vilken ¨ar sista siffran i talet 37100 ? (Ledtr˚ ad: detta handlar ocks˚ a om att r¨akna ut en rest.) (4) Vad skulle sista siffran bli om man skulle r¨akna ut talet (1715 + 825 )10 ? (5) Visa genom att kolla alla m¨ojliga rester att talet n3 + 2n ¨ar delbart med 3 f¨or alla heltal n. (6) Visa, utan att anv¨anda Fermats lilla sats, att f¨or varje heltal n som inte ¨ar multipel av 7 g¨aller att n6 vid division med 7 ger resten 1. (Ledtr˚ ad: varje tal ¨ar modulo 7 lika med n˚ agot av 1, 2, 3, 4, 5, 6 och det r¨acker att titta p˚ a dessa) (7) Best¨am f¨or varje naturligt tal n den minsta ickenegativa resten vid division av 32n + 2 · 176n med 7. (8) Vilka heltal g mellan 0 och 7 har egenskapen att resterna modulo 7 av tillr¨ackligt m˚ anga potenser g 1 , g 2 , g 3 , ... omfattar 1, 2, ..., 6? (9) Antag att g = 2, p = 7 och att Alices hemliga kA ¨ar 2 och att Bobs kB = 5. Vad ¨ar deras gemensamma nyckel? 48 ¨ 3. MODULIRAKNING ALIAS KONGRUENSER ¨ 0-467-51402-X en giltig ISBN kod? (10) a) Ar ¨ 1-56-004151-5 en giltig ISBN kod? b) Ar c) Vad a¨r checksiffran f¨or 14-2000-076-? ?
© Copyright 2024