Stian Fauskanger, FFI - Forsvarets forskningsinstitutt

Stipendiat i prosjekt 1331
Doktorgradsstipendiat i prosjekt 1331
Stian Fauskanger
Doktorgradsstipendiat ved
Forsvarets forskningsinstitutt og
Universitetet i Bergen
Januar, 2015
Stipendiat i prosjekt 1331
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.
Stipendiat i prosjekt 1331
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:
K
·
·
·
X
·
·
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.
Stipendiat i prosjekt 1331
Masterprosjekt
Image source: Wikipedia.org
Stipendiat i prosjekt 1331
Masterprosjekt
Image source: Wikipedia.org
Stipendiat i prosjekt 1331
Masterprosjekt
16 15
Input bit:
14 13
12 11
10
9
8
7
6
5
4
3
E(X)
Key bit: 25 24
S4
23 22 21 20 19 18
S5
x
17 16 15 14 13 12
y
S6
11 10
9
8
S7
7
6
5
S8
4
L
Stipendiat i prosjekt 1331
Masterprosjekt
I masteroppgaven min fant vi lineære avhengigheter mellom
distribusjonene.
K
·
·
·
X
·
·
Pr(output=X | key-bits=K )
+
=
Ved å legge sammen “rød” og “grønn” distribusjon får man den
“blå” distibusjonen.
Stipendiat i prosjekt 1331
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
1
2
3
4
5
6
7
8
Upper bound
6
9
13
18
24
31
39
48
123
6
9
13
18
24
30
36
42
234
6
9
13
18
24
31
39
48
345
6
9
13
18
24
29
34
39
456
6
7
8
9
10
11
12
13
567
6
9
13
18
24
31
39
48
678
6
9
13
18
24
31
39
48
781
6
9
13
18
24
31
39
48
812
6
9
13
18
24
31
39
48
Stipendiat i prosjekt 1331
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
1
2
3
4
5
6
7
8
Upper bound
16
40
80
140
224
336
480
660
123
16
40
80
140
224
336
480
660
234
16
40
80
140
224
336
480
660
345
16
40
80
140
224
336
480
660
456
16
24
32
40
48
56
64
72
567
16
40
80
140
224
336
480
660
678
16
40
80
140
224
336
480
660
781
16
40
80
140
224
336
480
660
812
16
40
80
140
224
336
480
660
Stipendiat i prosjekt 1331
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.
Stipendiat i prosjekt 1331
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.
Stipendiat i prosjekt 1331
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
0
1
2
1
0
1
1
1
1
1
2
0
2
2
0
3
1
1
1
1
4
1
1
1
1
5
1
1
1
1
6
0
1
2
1
7
2
0
0
2
8
2
0
0
2
9
2
1
0
1
10
1
1
1
1
11
1
1
1
1
12
1
1
1
1
13
0
2
2
0
14
1
1
1
1
15
1
0
1
2
Stipendiat i prosjekt 1331
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
0
1
2
1
0
1
1
1
1
1
2
0
2
2
0
3
1
1
1
1
4
1
1
1
1
5
1
1
1
1
6
0
1
2
1
7
2
0
0
2
8
2
0
0
2
9
2
1
0
1
10
1
1
1
1
11
1
1
1
1
12
1
1
1
1
13
0
2
2
0
14
1
1
1
1
15
1
0
1
2
Stipendiat i prosjekt 1331
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
0
1
2
1
0
1
1
1
1
1
2
0
2
2
0
3
1
1
1
1
4
1
1
1
1
5
1
1
1
1
6
0
1
2
1
7
2
0
0
2
8
2
0
0
2
9
2
1
0
1
10
1
1
1
1
11
1
1
1
1
12
1
1
1
1
13
0
2
2
0
14
1
1
1
1
15
1
0
1
2
Stipendiat i prosjekt 1331
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.
Stipendiat i prosjekt 1331
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
PL [7, 18, 24] ⊕ CH [7, 18, 24, 29] ⊕ CL [15]
= K2 [22] ⊕ K3 [44] ⊕ K4 [22] ⊕ K6 [22] ⊕ K7 [44] ⊕ K8 [22]
⊕K10 [22] ⊕ K11 [44] ⊕ K12 [22] ⊕ K14 [22]
vil vanlig lineær kryptoanalyse se på sannsynligheten for at XOR
av 8 bit er 0 eller 1.
Stipendiat i prosjekt 1331
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.
PL [7, 18, 24] ⊕ CH [7, 18, 24, 29] ⊕ CL [15]
= K2 [22] ⊕ K3 [44] ⊕ K4 [22] ⊕ K6 [22] ⊕ K7 [44] ⊕ K8 [22]
⊕K10 [22] ⊕ K11 [44] ⊕ K12 [22] ⊕ K14 [22]
Vi vil i stedenfor se på sannsynlighetsfordelingen for alle 256
verdiene de 8 bitene kan ha.
Stipendiat i prosjekt 1331
Doktorgradsprosjekt
Dette arbeidet er helt i startfasen så det er desverre ikke så mange
resultater å melde om enda.
Stipendiat i prosjekt 1331
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)