1 Jag själv lärde om detta av en kollega som, kanske, heter Joel Andersson

Relevanta dokument
IV. Ekvationslösning och inversa funktioner

Kurs: HF1903 Matematik 1, Moment TEN1 (Linjär Algebra) Datum: 25 augusti 2017 Skrivtid 8:00 12:00

Lösningar till Matematisk analys

Tentamen SF1661 Perspektiv på matematik Lördagen 18 februari 2012, klockan Svar och lösningsförslag

L HOSPITALS REGEL OCH MACLAURINSERIER.

Komplettering: 9 poäng på tentamen ger rätt till komplettering (betyg Fx).

1 Föreläsning IV; Stokastisk variabel

RSA-kryptering. Torbjörn Tambour

Om användning av potensserier på kombinatorik och rekursionsekvationer

Tentamen i Mekanik SG1130, baskurs. Problemtentamen

c d Z = och W = b a d c för några reella tal a, b, c och d. Vi har att a + c (b + d) b + d a + c ac bd ( ad bc)

Lösningsförslag, v0.4

a k . Serien, som formellt är följden av delsummor

Kursens mål är, förutom faktakunskaper om kursinnehållet, att ge:

Deltentamen. TMA044 Flervariabelanalys E2

dt = x 2 + 4y 1 typ(nod, sadelpunkt, spiral, centrum) och avgöra huruvida de är stabila eller instabila. Lösning.

6.4 Svängningsrörelse Ledningar

Uppsala Universitet Matematiska Institutionen Bo Styf. Genomgånget på sammandragningarna.

Lösningar till problemtentamen

denna del en poäng. 1. (Dugga 1.1) och v = (a) Beräkna u (2u 2u v) om u = . (1p) och som är parallell

Prov i matematik Fristående kurs Analys MN1 distans UPPSALA UNIVERSITET Matematiska institutionen Anders Källström

Inlämningsuppgifter i Funktionsteori, vt 2016

Svar till tentan

Tentamen i Mekanik SG1130, baskurs P1. Problemtentamen

Inlämningsuppgifter i Funktionsteori, ht 2018

Digital signalbehandling Kamfilter och frekvenssamplande filter

DEL I. Matematiska Institutionen KTH

Matematik 5 Kap 1 Diskret matematik I

Ylioppilastutkintolautakunta S tudentexamensnämnden

Algebra och talteori MMGL31

Grupper och RSA-kryptering

Analys av polynomfunktioner

12. Numeriska serier NUMERISKA SERIER

Inlämningsuppgifter i Funktionsteori, vt1 2012

betecknas = ( ) Symmetriska egenskaper hos derivator av andra ordningen. (Schwarzs sats)

Tentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering

Följande uttryck används ofta i olika problem som leder till differentialekvationer: Formell beskrivning det finns ett tal k så att A=kB

Motivering av högerledet i Maxwells 4:e ekvation

Hur Keplers lagar för planetrörelser följer av Newtons allmänna fysikaliska lagar.

2 = 3 = 1. ekvationssystem är beskriven som de vektorer X =

Analys o linjär algebra. Fortsatt analys.. p.1/81

Uppgifter övning I8: Uppgift nr 1 Sealine AB

Verkningssätt hos verkliga balkar. Lund University / Roberto Crocetti/

Centrala gränsvärdessatsen (CGS). Approximationer

SF2715 Tillämpad kombinatorik Kompletterande material och övningsuppgifter Del I

TNA004 Analys II Tentamen Lösningsskisser

Teori för flervariabelsanalys

Tentamen i Mekanik - partikeldynamik

Potensserier och potensserieutvecklingar av funktioner

Binomialtal. Olof Bergvall. Algebra och Kombinatorik Stockholms Universitet 1 / 13

Identification Label. Student ID: Student Name: Elevenkät Fysik. Skolverket Bo Palaszewski, Projektledare Stockholm

Lösningsförslag Dugga i Mekanik, grundkurs för F, del 2 September 2014

Proof. Se uppgifterna. Definition 1.6. Två vektorer u och v är vinkelräta (ortogonala) om < u, v >= 0.

1 Föreläsning II, Vecka I, 5/11-11/11, avsnitt 2.3

Lösningsförslag envariabelanalys

Uppföljning av Ky- och Yh-utbildning 2011

reella tal x i, x + y = 2 2x + z = 3. Här har vi tre okända x, y och z, och vi ger dessa okända den naturliga

Tentamen 1 i Matematik 1, HF sep 2015, kl. 8:15-12:15

(D1.1) 1. (3p) Bestäm ekvationer i ett xyz-koordinatsystem för planet som innehåller punkterna

Biomekanik, 5 poäng Kinetik

z = 4 + 3t P R = (5 + 2t, 4 + 2t, 4 + 3t) (1, 1, 3) = (4 + 2t, 3 + 2t, 1 + 3t)

Kombinatorik. Karl-Heinz Fieseler. Uppsala 2016

Talmängder. Vi använder följande beteckningar för s.k. standardtalmängder:

EN 1990 Eurokod: Grundläggande dimensioneringsregler för bärande konstruktioner Elisabeth Helsing, Boverket

MATEMATIK. av Rolf Pettersson. Grafisk Formgivning: Lennart Jörelid. Utgiven i juni 1999 Upplaga ex

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

tal. Mängden av alla trippel av reella tal betecknas med R 3 och x 1 x 2 En sekvens av n reella tal betecknas med (x 1, x 2,, x n ) eller

1 Föreläsning 14, följder och serier

Algebra och talteori MMGL31. Lite om mig. Lite om er. Lärarprogrammet, Göteborgsuniversitet VT 2008

KONTINUERLIGA SYSTEM, några viktiga begrepp och metoder. Fysikaliska modeller. Fouriers metod, egenfunktionsutvecklingar.

Björn Lindenberg Laboration 3 del 1

Matematisk statistik

Vektorgeometri för gymnasister

Ett M/M/1 betjäningssystem har följande egenskaper: 1. Systemet har en betjänare. Betjäningstiderna är exponentialfördelade med medelvärde 1 μ

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

Relationer. 1. Relationer. UPPSALA UNIVERSITET Matematiska institutionen Erik Melin. Specialkursen HT07 23 oktober 2007

Informationsteknologi

10. MEKANISKA SVÄNGNINGAR

Lösningsförslag till tentamen MVE465, Linjär algebra och analys fortsättning K/Bt/Kf

1. Ekvationer 1.1. Ekvationer och lösningar. En linjär ekvation i n variabler x 1,..., x n är en ekvation på formen. 2x y + z = 3 x + 2y = 0

Läsanvisning till Discrete matematics av Norman Biggs - 5B1118 Diskret matematik

SALA KOMMUN. VON SU 11 Statistikrapport jml 16 kap 6 h SOL, samt 28 foch 28 g LSS, gällande ej verkställda beslut enligt 4 kap 1 SOL samt 9 LSS

Moment 5.5 Övningsuppgifter I 5.60a. 5.60b, 5.60.c, 61

Denna uppdelning är ovanlig i Sverige De hela talen (Både positiva och negativa) Irrationella tal (tal som ej går att skriva som bråk)

Instruktioner för rapportering av räntestatistikblankett MIR

Stokastiska variabler

x 1 x 2 T (X) = T ( x 3 x 4 x 5

Sidor i boken f(x) = a x 2 +b x+c

x(t) =A cos(!t) sin(!t)

Fördjupad dokumentation av statistiken

RSA-kryptering och primalitetstest

(N) och mängden av heltal (Z); objekten i en mängd behöver dock inte vara tal. De objekt som ingår i en mängd kallas för mängdens element.

Några satser ur talteorin

x 1 x 2 x 3 x 4 mera allmänt, om A är en (m n)-matris, då ger matrismultiplikationen en avbildning T A : R n R m.

4. Optimal styrning. 4. Optimal styrning. Vad är optimal styrning?

Exciterat tillstånd hos β-naftol.

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson

x = som är resultatet av en omskrivning av ett ekvationssystemet som ursprungligen kunde ha varit 2x y+z = 3 2z y = 4 11x 3y = 5 Vi får y z

KOMBINATORIK. Multiplikationsprincipen

KVADRATISKA FORMER. Definition 1. ( av en kvadratisk form) En kvadratisk form är ett uttryck av typ. Några exempel på kvadratiska former:

Transkript:

1 Kryptering 11 Vi sall 1 idag titta lite på ryptering, och mera specifit hur elliptisa urvor används i ryptering, såallad ECDSA Vi sall ocså se ett atuelt exempel på hur detta inte sall användas 12 Problemet Vi har följande problem En användare A ontatar en nätsida N Användaren vill spela ett spel som nätsidan N har producerat, och nätsidan vill ontrollera att användaren A har betalad sin licens för att spela Problemet är att en hacer H övervaar och läser av all informationsutväxling mellan A och N Så om A visar fram ett vitto, då ommer säerligen hacern H att opiera vittot På sådant sätt vill hacern H få möjlighet att spela utan att ha betalad licens, och detta tycer inte N om 13 Lösningen som används på problemet ovan är att användaren A rypterar sitt vitto på ett sätt som nätsidan N an verifiera, men som hacern H inte an deryptera Det finns flera olia sätt att ryptera, och en av de mest vanliga är att använda par av stora primtal som rypteringsnyclar, såallad RSA-ryptering Ett annat sätt är att använda elliptisa urvor, som i ECDSA 14 Elliptis urva En elliptis urva är nollställemängden till en evation på formen E = {(x, y) R 2 y 2 = x 3 + ax + b}, där a och b är givna tal En typis bild av en elliptis urva är [fig] 15 Konjugering Vi märer att om P = (p, q) är en punt på urvan E då är ocså punten (p, q) en punt på urvan E Vi har att om q 2 = p 3 + ap + p = ( q) 2, vilet betyder att urvan är symmetris om x-axeln Vi vill använda detta nedan, och inför därför notationen P för onjugatet till punten P Vi har alltså att om P = (p, q) då är P = (p, q) 16 Addition av punt Vi täner oss nu att den elliptisa urva E är given Vi vill nu göra följande geometrisa onstrution, och för detta vill vi använda oss av den typisa bilden ovan Låt P 1 och P 2 vara två punt på urvan E Vi an dra linjen L(P 1, P 2 ) genom P 1 och P 2 Denna linje L(P 1, P 2 ) sär urvan i en tredje punt Q såfremt inte P 1 och P 2 ligger på samma vertiala linje Vi låter Q vara punten som vi får om vi tar och sär urvan E med en vertial linje genom Q, det vill säga att Q = Q Vi ritar en figur för detta [fig] Fina illustrativa figurer finns under länen http://enwiipediaorg/wii/elliptic curve 1 Jag själv lärde om detta av en ollega som, anse, heter Joel Andersson 1

2 17 Tangentlinjen Om P 1 = P 2 då vill vi med linjen L(P 1, P 1 ) genom punten P 1 = P 2 mena tangentlinjen till urvan E i punten P 1 18 Oändlighetspunt Konstrutionen ovan fungerar doc inte om punterna P 1 och P 2 ligger på samma vertiala linje, vilet betyder att P 1 = P 2 För att bota detta problem sall vi föreställa oss att urvan E har en punt i oändligheten Denna punt allar vi O Vi sall täna på de vertiala linjer som merdianer på sfären; dessa linjer är parallella, men endå så möts linjerna i nordpolen Och fatis så möts de parallella vertiala linjerna ocså i sydpolen, men på den elliptisa urva E är sydpol och nordpol en och samma punt O Vi låter E 0 vara den elliptisa urvan E union oändlighetspunten O Vi definierar addition av punterna till E 0 på det sättet som vi angav i 16 Detta ger en avbildning E 0 E 0 E 0, som sicar ett par av punt P 1 och P 2 på E O till punten P 1 P 2 Exempel 19 Låt P 1 och P 2 vara två punt på urvan E Vi har att P 1 P 2 = Q, där Q ges som onjugering av punten Q som i sin tur ges av särningen av urvan E och linjen L(P 1, P 2 ) genom P 1 och P 2 Exempel 110 Låt P vara en punt på urvan E Vi sall bestämma P O Linjen L(P, O) genom P och oändlighetspunten O ges av den vertiala linjen genom P Linjen L(P, O) sär urvan E punten P där P = P Vi har att P = P = P Detta betyder att P O = P Vi ser att addera punten O till en annan punt P inte gör något Symbolen O för oändlighetspunten har inget med första bostaven i oändlighet, men refererar till begreppet noll 1101 Notera att för att erhålla P O = P var det nödvändigt att vi i definitionen av addition to onjugatet av punten Q ges som särningen av linjen L(P 1, P 2 ) och urvan E, och inte punten Q som unde tycas mera naturlig Exempel 111 Additionen av punt 16 är såpass naturlig att följande egensap håller (P 1 P 2 ) P 3 = P 1 (P 2 P 3 ), för alla punt P 1, P 2 och P 3 på urvan Vi an med andra ord slopa paranteserna vid addition av punt Exempel 112 Vi har uppenbarligen att P 1 P 2 = P 2 P 1 för alla punt P 1 och P 2 på den elliptisa urvan Exempel 113 Låt P vara en punt på urvan E, och låt P vara punten som ligger på urvan E och under samma vertiala linje som P Vi har av onstrution att linjen L(P, P ) är den vertiala linjen,

och denna linje sär urvan E i oändlighetspunten O, dvs L(P, P ) sär inte urvan E men urvan E O Vi har att O = O, och vi erhåller att P P = O Med andra ord är P den additiva inversen till P 114 Gruppen till en elliptis urva Det vi har indierad med exemplerna ovan är att punterna på den elliptisa urvan E O är med additionen en grupp, en ommutativ grupp I ECDSA använder man gruppstruturen på den elliptisa urvan för rypteringen 115 Primtalsroppar Vi har givit den elliptisa urvan E som en urva i planet R 2 I den värliga världen vill man göra situationen lite mer ändlig Detta betyder att oefficientarna till punter P på urvan E inte tillåts vara alla reella tal, men enbart element i en ändlig primtalsropp Om p är ett givet primtal så består primtalsroppen av heltalen F p = {0, 1,, p 1} Addition och multipliation ser modulo restlasserna Subtration fungerar, och då p är ett primtal vill ocså division fungera Primtalen an i pratien vara mycet stora, men för att få en änsla för primtalsroppar an man titta på små primtal Exempel 116 Primtalsroppen F 5 består av elementen {0, 1, 2, 3, 4} Addition ser modulo restlasserna, så tex är 3 + 4 lia med 2 Subtration ser på samma sät Mär att om vi vill lösa evationen 3 + x = 2 i F 5 så substraherar vi 3 från båda sidor och erhåller x = 2 3 = 1 Talet -1 finns inte med i mängden F 5, men adderar vi till 5 får vi 4 Detta betyder att 2 3 = 4, vilet ocså är lösningen till evationen 3 + x = 2 Multipliation ser ocså modulo restlasser Vi har att 4 4 = 1 då 16 = 3 5 + 1 Detta betyder ocså att 4 = 1 4 i F 5 Vi har att 2 3 = 1 vilet betyder att 3 = 1 2 och att 2 = 1 3 117 Notation Vi tar för givet att om P 1 och P 2 är punt på en elliptis urva E, och oordinaterna till P 1 och P 2 båda ligger i en primtalsropp F p, då vill ocså punten Q = P 1 P 2 ha oefficienter i primtalsroppen F p Specielt har vi att punterna på den elliptisa urvan E 0 med oefficienter i primtallsroppen F p bildar en grupp Om är ett element i primtalsroppen F p så är specielt ett heltal För varje punt P definierar P = } P P {{ P } opior 1171 Notera att om är ett nollsild tal i primtalsroppen då är ocså 1 ett heltal/element i primtalsroppen 3

4 118 Krypteringsalgoritmen Använderen A har vid betalning av licens till nätsidan N blivit eniga om en elliptis urva E 0, en primtalsropp F 5, en punt P på den elliptisa urvan, och en rypteringsnycel c Krypteringsnyceln c är ett tal i primtalsroppen F p Denna information är inte tillgänglig för andra När använderan A ontatar nätsidan N utförs följande beränigar av användare A Steg 1 Först beränas, av användare A, punten c P = Q på urvan E 0 Denna punt allas den offentliga nyceln, och sicas till nätsidan N Ved hjälp av punten Q identifierar nätsidan N vilen användere det handlar om Det vill säga vilen urva E 0, vilen punt P, och vilen rypterinsnycel c som användaren borde ha Steg 2 Användaren A sicar ett medelande till nätsidan N, typ jag vill spela Detta meddelandet blir omgjord till ett tal e Hur denna funtion fungerar är inte så vitig Det som är vitig är att talet e ändras med meddelandet Man an täna sig att meddelandet jag vill spela ocså innehåller information om locslag mm, sådan att när användaren A vill spela dagen efter vill meddelandet e vara ett annat Steg 3 En godtyclig, men stor, onstant i primtalsroppen F p väljes, och användaren A beränar P Vi låter r vara x-oordinaten till punten P = (r, r 2 ) Steg 4 Vi beränar talet s = e+cr i primtalsroppen F p 1181 Informationsutväxlingen Informationen som användare A sicar till nätsidan N är alltså punten Q, meddelandet e, och signaturen (r, s) Denna information an avläsas av en tredje part, hacern H Men, denna information an inte återanvändas 119 Verifieringsalgoritmen När användaren A ontatar nätsidan N ommer det besed om offentlig nycel Q, meddelandet e och slutligen bifogas signaturen (r, s) Den offentliga nyceln identifierar vem den tänta användaren borde vara, och slutligen ontrollerar nätsidan N signaturen Kontrollen görs på föjlande sätt 1191 Beräning av punten R Nätsidan beränar punten R = e s P r s Q Detta är möjligt då nätsiden N från punten Q vet punten P, och talen e, r och s sicas med ontaten från A

1192 Verifiering Nu sall nätsidan verifiera att signaturen är orret, och detta görs genom att olla att x-oordinat till punten R är det första talet r i signaturen som användare A sicade Vi har nämligen att s = e+cr, och detta ger R = (e P r Q) e + cr Vi har vidare att Q = c P, vilet ger att R = (e + cr) P = P e + cr Det var precis P som A beränade för att bestämma r 2 Felatig implementering När Playstation 3 (PS3) lanserades 2006/2007 var den betratad som att inneha en mycet säer ryptering PS3 användes sig av ryptering via elliptisa urvor Men, i december 2010 blev masinernas rypteringsoder tillgängeliga Hacers lycades bryta oden, och det hela baserades på att PS3 hade implementerad rypteringsoden fel När PS3 gav ut licenser till användare så var det meningen att varje användare fic en programvara som hade rypteringsalgoritm som ovan Sillnaden var doc i Steg 3 där man istället för att slumpa godtyclig tal varje gång man ontatade nätstedet N, använde sig av ett och samma tal Betrata en och samma användare A Denna ontatar nätsidan N med ett meddelande e 1 och en signatur (r 1, s 1 ) Dessa tre tal fångar hacer H upp Vi har evationen s 1 = (e 1+cr 1 ), som vi ocså an sriva som s 1 r 1 c = e 1 Talen e 1, r 1 och s 1 har vi, men inte de två oända och c Ni an täna på detta som en linje i ett plan där de två oända är och c Men, dagen efter sicar användaren A ett nytt meddelande till nätsidan N Hacer H fångar nu upp talet e 2 och signaturen (r 2, s 2 ) Nu får vi en linje till, nämligen s 2 r 2 c = e 2 Nu har vi ett evationssystem i två oända och c som vi an lösa Evationssystemet sriver vi opp som matrisevationen [ ] [ ] [ ] s1 r 1 e1 = r 2 c e 2 s 2 Inversen till matrisen till vänster är 1 s 1 r 2 + r 1 s 2 [ r2 r 1 s 2 s 1 ] 5

6 Detta ger nu att [ ] [ ] 1 r2 e = 1 + r 1 e 2 c r 1 s 2 s 1 r 2 s 2 e 1 + s 1 e 2 Specielt har vi att den hemliga rypteringsnyceln till användare A är c = s 1e 2 s 2 e 1 r 1 s 2 s 1 r 2 Eller, som Adrian Kimiaei påpeade under föreläsningen, när är onstant då blir r 1 = r 2 alltid det samma Detta betyder att c = s 1e 2 s 2 e 1 r 1 (s 2 s 1 ) 3 Information Sista (!) träff är tisdagen 17 maj, locan 1530-1700, sal E36 Department of Mathematics, KTH, Stocholm, Sweden E-mail address: sjelnes@thse