Doktorgradsstipendiat i prosjekt 1331 Stian Fauskanger Doktorgradsstipendiat ved Forsvarets forskningsinstitutt og Universitetet i Bergen Januar, 2015
Bakgrunn Bachelor: Bachelor i Ingeniørfag - Datateknikk. Universitetet i Agder, Grimstad, 2009 2012. Bacheloroppgave: In-call audio analyzer for Android. Master: Master i Informatikk - Sikker og pålitelig kommunikasjon. Universitetet i Bergen, 2012-2014. Masteroppgave: Linear dependencies between non-uniform distributions in DES. Sommerjobb: Sommerjobb ved FFI sommeren 2013 og 2014.
Masterprosjekt Donald Davies, Sean Murphy, beskrev i 1993 et anngrep på DES hvor man finner nøkkelbit ved å observere plaintext/ciphertext par. Man forhåndsberegner følgende tabell: X K Pr(output=X key-bits=k) X er output fra et gitt antall sidesliggende S-boxer, og K er en lineærkombinasjon av nøkkelbits.
Masterprosjekt Image source: Wikipedia.org
Masterprosjekt Image source: Wikipedia.org
Masterprosjekt Input bit: 16 15 14 13 12 11 10 9 8 7 6 5 4 3 E(X) Key bit: 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 S4 S5 x y S6 S7 S8
Masterprosjekt I masteroppgaven min fant vi lineære avhengigheter mellom distribusjonene. X K Pr(output=X key-bits=k) Ved å legge sammen rød og grønn distribusjon får man den blå distibusjonen. + =
Masteroppgave Vi viste at det er veldig få lineært uavhengige distibusjoner. Maks 48 for full DES. Vi fant også at for output fra S-box 456 var det uvanlig få uavhengige distibusjoner. n Upper bound 123 234 345 456 567 678 781 812 1 6 6 6 6 6 6 6 6 6 2 9 9 9 9 7 9 9 9 9 3 13 13 13 13 8 13 13 13 13 4 18 18 18 18 9 18 18 18 18 5 24 24 24 24 10 24 24 24 24 6 31 30 31 29 11 31 31 31 31 7 39 36 39 34 12 39 39 39 39 8 48 42 48 39 13 48 48 48 48
Masteroppgave Davies og Murphy fant ut at det er maks 660 forkjellige distribusjoner for full DES. Vi fant at det var eksakt 660 forskjellige distribusjoner for alle kombinasjoner av 3 sidenliggende S-boxer utenom S-box 456. Der var det bare 72 forskjellige distibusjoner. n Upper bound 123 234 345 456 567 678 781 812 1 16 16 16 16 16 16 16 16 16 2 40 40 40 40 24 40 40 40 40 3 80 80 80 80 32 80 80 80 80 4 140 140 140 140 40 140 140 140 140 5 224 224 224 224 48 224 224 224 224 6 336 336 336 336 56 336 336 336 336 7 480 480 480 480 64 480 480 480 480 8 660 660 660 660 72 660 660 660 660
Doktorgradsprosjekt I løpet av min periode som stipendiat ved FFI/UiB er planen å jobbe med tre tema. Fortsette på masterprosjektet for å finne ut hvorfor output fra S-box 456 er forskjellig fra de andre trioene. Jobbe med (forbedre?) lineær kryptoanalyse med bruk av flere approksimasjoner som hver ser på distribusjonen til flere bit. Analysere en cipher ved bruk av metoden over. Forhåpentligvis en lettvekts-kryptoalgoritme.
Doktorgradsprosjekt Første del er ferdig, og første artikkel er sendt til konferansen Fast Software Encryption. I denne artikkelen beskriver vi nye egenskaper ved S-box 4 i DES. En av de forklarer hvorfor output fra S-box trioen 456 er forskjellig fra de andre.
Doktorgradsprosjekt En S-box har 6 input-bits og 4 output-bits. Tabellen under viser antall ganger hver de av mulige returverdiene for S-box 4 kommer, gitt de to første input-bitene. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 1 0 1 1 1 0 2 2 2 1 1 1 0 1 1 1 2 1 2 1 1 1 1 0 0 1 1 1 1 2 1 0 2 1 1 2 1 1 1 2 0 0 0 1 1 1 2 1 1 3 0 1 0 1 1 1 1 2 2 1 1 1 1 0 1 2
Doktorgradsprosjekt Summen av rad 0 og 2 og summen av rad 1 og 3 gir en rad med bare 2. Denne egenskapen er gyldig for alle S-boxer. Dette er grunnen til at Davies og Murphy kunne si at det var maks 660 forskjellige distribusjoner for full DES. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 1 0 1 1 1 0 2 2 2 1 1 1 0 1 1 1 2 1 2 1 1 1 1 0 0 1 1 1 1 2 1 0 2 1 1 2 1 1 1 2 0 0 0 1 1 1 2 1 1 3 0 1 0 1 1 1 1 2 2 1 1 1 1 0 1 2
Doktorgradsprosjekt Grunnen til at output fra S-box trioen 456 er forskjellig fra de andre er at konvolusjonen mellom rad x og y i tabellen under er den samme som konvolusjonen av rad x a og y a for hvilken som helst a. Denne egenskapen er bare gyldig for S-box 4. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 1 1 0 1 1 1 0 2 2 2 1 1 1 0 1 1 1 2 1 2 1 1 1 1 0 0 1 1 1 1 2 1 0 2 1 1 2 1 1 1 2 0 0 0 1 1 1 2 1 1 3 0 1 0 1 1 1 1 2 2 1 1 1 1 0 1 2
Doktorgradsprosjekt Nå har vi begynt å jobbe med deloppgave 2: Lineær kryptoanalyse med bruk av flere approksimasjoner som hver ser på distribusjonen til flere bit.
Doktorgradsprosjekt Nå har vi begynt å jobbe med deloppgave 2: Lineær kryptoanalyse med bruk av flere approksimasjoner som hver ser på distribusjonen til flere bit. Eksempel: Gitt approksimasjonen P L [7, 18, 24] C H [7, 18, 24, 29] C L [15] = K 2 [22] K 3 [44] K 4 [22] K 6 [22] K 7 [44] K 8 [22] K 10 [22] K 11 [44] K 12 [22] K 14 [22] vil vanlig lineær kryptoanalyse se på sannsynligheten for at XOR av 8 bit er 0 eller 1.
Doktorgradsprosjekt Nå har vi begynt å jobbe med deloppgave 2: Lineær kryptoanalyse med bruk av flere approksimasjoner som hver ser på distribusjonen til flere bit. P L [7, 18, 24] C H [7, 18, 24, 29] C L [15] = K 2 [22] K 3 [44] K 4 [22] K 6 [22] K 7 [44] K 8 [22] K 10 [22] K 11 [44] K 12 [22] K 14 [22] Vi vil i stedenfor se på sannsynlighetsfordelingen for alle 256 verdiene de 8 bitene kan ha.
Doktorgradsprosjekt Dette arbeidet er helt i startfasen så det er desverre ikke så mange resultater å melde om enda.
Takker og bukker Takk for meg! Ta gjerne kontakt om du finner dette interessant, eller om du har noen kommerntarer. stian.fauskanger @ (ffi.no) / (ii.uib.no)