Problemet Modellen Enigma Konklusion Statistisk sproggenkendelse anvendt i kryptoanalyse Søren Møller UNF Matematikcamp 2010 12.07.2010 Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Problemet Kryptering Bruteforce Modellen Markov kæder Unigrammer Bigrammer Statistiker Enigma Maskinen Nøglerum Bruteforce Konklusion Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Kryptering Bruteforce Kryptering Alice meddelelse Charlie −→ kode −→ nøgle Søren Møller UNF Matematikcamp 2010 Bob kode −→ meddelelse nøgle Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Kryptering Bruteforce Bruteforce I Id´e: gennemløbe alle mulige nøgler I Kræver: acceptabelt antal nøgler I Kræver: entydig klartekst I Kræver: genkendelse af klartekst Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Antagelser I Klartekst og krypteret tekst samme alfabet I Alfabet kendt I Klartekst sprog kendt I Krypteringsmetode kendt Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Markov kæder (1.-ordens) I Matematisk model for sprog I Ukorrekt, men praktisk approksimation I A - Alfabet I pi,j - Overgangssandsynligheder I p•,i - Startsandsynligheder P(Xn = i|Xn−1 = j) = pj,i , P(X1 = i) = p•,i , Søren Møller UNF Matematikcamp 2010 i, j ∈ A i ∈A (1) (2) Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Unigrammer Fordeling af alfabetets tegn i en tekst pi = ni , n i ∈A (3) Notation: I pi for sproget (ud fra et stort datasæt) I pˆi for tekststreng Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Bigrammer Fordeling af p˚ a hinanden følgende tegn i en tekst pi,j = ni,j , ni,∗ i, j ∈ A (4) Notation: I pi,j for sproget (ud fra et stort datasæt) I pˆi,j for tekststreng Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Eksempler: Dansk A B C D E F ... Q ... sum 17420 2784 664 13072 28716 3384 ... 12 ... 184431 0.0945 0.0151 0.0036 0.0709 0.1557 0.0183 ... 0.000065 ... 1.0 Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Eksempler: Dansk / Tysk / Engelsk Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Eksempler: Dansk - bigrammer A B C D E F G H I A 0.1487 0.2579 0.0663 0.0627 0.0178 0.0952 0.0756 0.2751 0.0109 B 0.0241 0.0061 0.0015 0.0077 0.0189 0.0030 0.0168 0.0002 0.0124 C 0.0035 0.0000 0.0301 0.0006 0.0067 0.0027 0.0008 0.0004 0.0105 Søren Møller UNF Matematikcamp 2010 D 0.0552 0.0018 0.0120 0.0321 0.1032 0.0207 0.1320 0.0021 0.0940 E 0.0152 0.2277 0.1566 0.5653 0.0118 0.0473 0.2152 0.1844 0.0326 F 0.0317 0.0011 0.0000 0.0099 0.0274 0.0219 0.0224 0.0015 0.0150 G 0.0997 0.0018 0.0015 0.0052 0.0278 0.0038 0.0268 0.0006 0.1506 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Sinkov statistikken S1 = X nˆi log(pi ) (5) nˆi,j log(pi,j ) (6) i henholdsvis S2 = X i,j I store værdier peger p˚ a sprog I ikke pæne statistiske egenskaber Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker χ2 -statistikken X (ˆ npˆi − nˆpi )2 nˆpi (7) X (ˆ ni pˆi,j − nˆi pi,j )2 nˆi pi,j (8) χ21 = i henholdsvis χ22 = i,j I lave værdier peger p˚ a sprog I pæne statistiske egenskaber Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Markov kæder Unigrammer Bigrammer Statistiker Eksempler: Tekststrenge Tekst ”Under campen vil ...” ”Denne grundlov gælder ...” ”jkljklsdfjklkljkld ...” Markov-0 Markov-1 Søren Møller UNF Matematikcamp 2010 længde 339 339 339 339 339 S1 -941 -931 -1146 -951 -953 S2 -854 -826 -1291 -1094 -815 χ21 53 46 965 25 38 χ22 1166 455 12889 1840 521 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Enigma: Maskinen I Brugt af tyskerne under 2. verdenskrig I Knækket i Bletchley Park (Storbritannien) I Elektromekanisk maskine CC-by-sa 3.0 by Jszigetvari Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Enigma: Krypteringen I Bogstaver (A-Z) sendes til (A-Z) I Bogstaver sendes aldrig til sig selv I Afbildning skifter mellem hvert bogstav CC-by-sa 3.0 by MesserWoland Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Eksempel undercampenvildusomdeltagerbdeflgeforelsningerogls eopgaverrelaterettilforelsningerneopgavernevilvrea fvarierendesvrhedsgradsledesatderernogetforalleund erviserneermatematikstuderendefrauniversitetetsomu doveratstforforelsningerneogsaltidvilstklartilathj lpemedatlseopgaverneherudoverfrvibesgafenrkkespnde ndegsteforelserefrauniversitetsverdenen bliver til apwkmumhrcvudcbrnlrvxcndlnoukahsmpbahwjlwcojanuymf valjqjpzbwpjfxudjzgsqkysgnaqgkvkhvztmmyamurgdtupoi ajcqsvuqwkuaqkaovwazhhmnajjvbuundupjgycrpdzgntwbya kopyxyvlaidlqlbxisxccblscvlywjyugzytxjftoqmaswqrlb buil... Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Eksempel og dekrypteret med den forkerte nøgle giver det vqsftbiqhoidhgaebfvhaalibcuahczoohxwohqxputawdwsbo odskygedmcythsibktldgupfsepfvuocwodwdprcpchlcjgnjo fehtinfuklvlynpnfgkgeiwlzobkehkkvqyvlkgaakqpoweuqw lzcgdgpczseighnzrynuyxdpgtbkndgtpyezlkdblcqyhuismt ygcaiuftgsgeitqvvwweolfnqdicaaxbwhfwhntjjzxnpnkrpd qhzxgisjiyitiraaixzcabykhwoymolpqiybsbictxvocxlfnh zpikagfyipzegnfornegeiqcmpfanonbbcvwjhd Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Nøglerum 3 rotorer 1 reflektor 2 ringstillinger 3 startstilling 0 − 13 stikkabler i alt 6.6 · 1079 7.9 · 1012 676 17576 5.3 · 1014 3 · 10114 Enigma med 4 rotorer cirka 2 · 10145 Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Nøglerum i praksis I 5 mulige rotorer kendt (M4: 8 + 2) I kun 1 mulig reflektor (M4: 2) 3 rotorer af 5 1 reflektor 2 ringstillinger 3 startstilling instillinger ialt 0 − 13 stikkabler i alt Søren Møller UNF Matematikcamp 2010 60 1 676 17576 7.1 · 108 5.3 · 1014 3.8 · 1023 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Bruteforce I For mange nøgler at gennemløbe I Muligt at gennemløbe del-nøgler separat I (I dag) muligt at gennemløbe alt bortset fra stik I Tilsvarende for M4 men tydelig flere beregninger Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Bruteforce med sproggenkendelse I S og χ2 kan bruges til at genkende sprog i bruteforce I virker ogs˚ a n˚ ar f˚ a (0 − 10) stik ignoreres I kan bruge ”hillclimbing”p˚ a stik I knækker enigma i overskuelig tid Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Eksempler Tekst ”Under campen vil ...” Enigma Forkert dekryptering længde 339 339 339 Søren Møller UNF Matematikcamp 2010 S1 -941 -1441 -1379 S2 -854 -1064 -1095 χ21 53 14379 10241 χ22 1166 12912 10858 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Praktisk eksempel: første resultat Date: 2010-07-10 23:03:59 Score: 5275469 UKW: B W/0: 531 Stecker: AHBSCYDZEKGUIPJNLWMV Rings: AAA Message key: AVA rsgesihkahzxohjkkeqjefhpnpajolonjjygwrawkirztdowcb kvbrfonegarimwgobhitdspcrmbllawnticndaskntsaadmspa ... Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Praktisk eksempel: undervejs Date: 2010-07-10 23:05:22 Score: 6683458 UKW: B W/0: 531 Stecker: BDCHEMFLISJTNRPVQYUXWZ Rings: AAT Message key: KVE uluppejalreiiarkonfrershotrajrkpaasefikqflavnjlnly gnqlvngqqenkiotrbrendlompudesmseqgrajdtpchdsnagvef ... Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Praktisk eksempel: første læselige tekst Date: 2010-07-10 23:07:38 Score: 11607687 UKW: B W/0: 531 Stecker: ASBVCXDFGHIUJKLZMNOP Rings: ACA Message key: JVH undercampdyzildusomdeltagerbdeflgefjrqlsningerogls eopgaverrelrwyrettilforelsningerneopgcmfrnevilvrea ... Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Praktisk eksempel: næsten færdigt Date: 2010-07-10 23:09:12 Score: 12513508 UKW: B W/0: 531 Stecker: ASBVCXDFGHIUJKLZMNOP Rings: ACW Message key: JVD undercampenvmldusomdeltagerbdeflgeforeusningerogls eopgaverrelatekettilforelsningerneopgaveznevilvrea ... Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Maskinen Nøglerum Bruteforce Praktisk eksempel: færdigt Date: 2010-07-10 23:09:17 Score: 13627345 UKW: B W/0: 531 Stecker: ASBVCXDFGHIUJKLZMNOP Rings: ACX Message key: JVE undercampenvildusomdeltagerbdeflgeforelsningerogls eopgaverrelaterettilforelsningerneopgavernevilvrea ... Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Konklusion I klassiske krypteringer kan knækkes med computerkraft I det kræver sproggenkendelse I statistik klarer jobbet I det virker ”overraskende”godt I implementeringen er forholdsvis simpel Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse Problemet Modellen Enigma Konklusion Referencer I Ganesan, R. and Sherman, A.T., ”Statistical Techniques for Language Recognition: An Introduction and Guide for Cryptoanalysts”, Cryptologia, 17:4, 1993, pp. 321–366 I Ganesan, R. and Sherman, A.T., ”Statistical Techniques for Language Recognition: An Empirical Study using Real and Simulated English”, Cryptologia, 18:4, 1994, pp. 289–331 I I I Gillogly, J.G., ”Ciphertext-only Cryptoanalysis of Enigma”, Cryptologia, 19:4, 1995, pp. 405–413 I enigma-suite, www.bytereef.org/enigma-suite.html Miller, A.R., ”The Cryptographic Mathematics of Enigma”, Cryptologia, 19:1, 1995, pp. 65–80 Williams, H., ”Applying Statistical Language Recognition Techniques in the Ciphertext-only Cryptoanalysis of Enigma”, Cryptologia, 24:1, 2000, pp. 4–17 Søren Møller UNF Matematikcamp 2010 Statistisk sproggenkendelse anvendt i kryptoanalyse
© Copyright 2024