Iteration af et endomorft kryptosystem. Substitutions-permutations-net (SPN) og inversion. Eksklusiv disjunktion og dens egenskaber



Relaterede dokumenter
Billedbehandling og mønstergenkendelse: Lidt elementær statistik (version 1)

Lad os som eksempel se på samtidigt kast med en terning og en mønt:

{ } { } {( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )}

Elementær sandsynlighedsregning

Nanostatistik: Stokastisk variabel

t a l e n t c a m p d k Matematiske Metoder Anders Friis Anne Ryelund 25. oktober 2014 Slide 1/42

01017 Diskret Matematik E12 Alle bokse fra logikdelens slides

Grundlæggende Matematik

Affine - et krypteringssystem

Definition. Definitioner

Elementær sandsynlighedsregning

Sandsynlighedsregning: endeligt udfaldsrum (repetition)

Nanostatistik: Stokastisk variabel

Køreplan Matematik 1 - FORÅR 2005

Statistik Lektion 2. Betinget sandsynlighed Bayes regel Diskrete stokastiske variable Middelværdi og varians for diskret SV Binomialfordelingen

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen

Skriftlig Eksamen Kombinatorik, sandsynlighed og randomiserede algoritmer (DM528)

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen

Sandsynlighedsregning 10. forelæsning Bo Friis Nielsen

Grundlæggende køretidsanalyse af algoritmer

Sandsynlighedsregning Stokastisk variabel

Algebra - Teori og problemløsning

Sandsynlighedsregning 3. forelæsning Bo Friis Nielsen

DM72 Diskret matematik med anvendelser

Skriftlig Eksamen Diskret Matematik (DM528)

Grundlæggende Matematik

Noter til Perspektiver i Matematikken

Sandsynlighedsregning 3. forelæsning Bo Friis Nielsen

Hamiltonkreds, den handelsrejsendes problem, delmængdesum-problemet

Definition: Normalfordelingen. siges at være normalfordelt med middelværdi µ og varians σ 2, hvor µ og σ er reelle tal og σ > 0.

Anvendt Statistik Lektion 2. Sandsynlighedsregning Sandsynlighedsfordelinger Normalfordelingen Stikprøvefordelinger

Kvantitative Metoder 1 - Efterår Dagens program

Gamle eksamensopgaver. Diskret Matematik med Anvendelser (DM72) & Diskrete Strukturer (DM504)

Noget om en symmetrisk random walks tilbagevenden til udgangspunktet

Statistik II 4. Lektion. Logistisk regression

Gamle eksamensopgaver. Diskret Matematik med Anvendelser (DM72) & Diskrete Strukturer (DM504)

Eksamen 2014/2015 Mål- og integralteori

Hvad skal vi lave i dag?

Teoretiske Øvelsesopgaver:

Ligninger med reelle løsninger

Modul 2: Sandsynlighedsmodeller og diskrete stokastiske variable

Statistik og Sandsynlighedsregning 2

Oversigt over gruppeteori: definitioner og sætninger

MM501 forelæsningsslides

Statistik Lektion 3. Simultan fordelte stokastiske variable Kontinuerte stokastiske variable Normalfordelingen

16. december. Resume sidste gang

Landmålingens fejlteori - Lektion 2 - Transformation af stokastiske variable

Statistiske modeller

Nogle grundlæggende begreber

Sandsynlighedsregning

Hvad skal vi lave i dag?

Ugeseddel 12( )

Kvantitative Metoder 1 - Forår 2007

Forslag til løsning af Opgaver til sandsynlighedsregning (side 434)

Kvantitative Metoder 1 - Efterår Dagens program

Danmarks Tekniske Universitet

Løsning af præmieopgaven: Famøs årgang 22, nr. 1

Normalfordelingen og Stikprøvefordelinger

Matematikken bag kryptering og signering RSA

Kvantitative Metoder 1 - Forår Dagens program

Personlig stemmeafgivning

Vektorer og lineær regression

Københavns Universitet, Det naturvidenskabelige Fakultet. Afleveringsopgave 1

Kryptologi Homework 1

Sandsynlighedsbaserede metoder

Vektorer og lineær regression. Peter Harremoës Niels Brock

Tal og algebra. I kapitlet arbejdes med følgende centrale matematiske begreber: algebra variable. Huskeliste: Tændstikker (til side 146) FRA FAGHÆFTET

Kryptering kan vinde over kvante-computere

Ligningssystemer - nogle konklusioner efter miniprojektet

Forslag til løsning af Opgaver til afsnittet om de naturlige tal (side 80)

Eulers sætning Matematikken bag kryptering og signering v.hj.a. RSA Et offentlig nøgle krypteringssytem

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Differentiabilitet. f(h) = f(x 0 +h) f(x 0 ). y = f(x) f(h) df(h) Figur 1: Tangent, tilvækst og differential. lim. df(h) = f (x 0 )h.

Hemmelige koder fra antikken til vore dage

Algoritmeskabeloner: Sweep- og søgealgoritmer C#-version

Om hypoteseprøvning (1)

Diskrete Matematiske Metoder. Jesper Lützen

Danmarks Tekniske Universitet

Aarhus Universitet 5. februar Meddelelse 2

Fortolkning. Foldning af sandsynlighedsmål. Foldning af tætheder. Foldning af Γ-fordelinger Eksempel: Hvis X og Y er uafhængige og. Sætning (EH 20.

Kvantitative Metoder 1 - Efterår Dagens program

MM501/MM503 forelæsningsslides

Skriftlig Eksamen Algoritmer og sandsynlighed (DM538)

Statistik Lektion 2. Uafhængighed Stokastiske Variable Sandsynlighedsfordeling Middelværdi og Varians for Stok. Var.

Kvantitative Metoder 1 - Forår Dagens program

Skriftlig Eksamen Algoritmer og Datastrukturer (dads)

Matematisk induktion

Lidt om fordelinger, afledt af normalfordelingen

Unityskolen Årsplan for Matematik Team 2 (3.-4. klasse)

Repetition. Diskrete stokastiske variable. Kontinuerte stokastiske variable

Repræsentation af tal

Danmarks Tekniske Universitet

Matematik YY Foråret Kapitel 1. Grupper og restklasseringe.

16. marts P NP. Essentielle spørgsmål: NP P? Et problem Q kaldes NP -fuldstændigt 1 Q NP 2 R NP : R pol Q. Resume sidste gang

Kønsproportion og familiemønstre.

Danmarks Tekniske Universitet

Boolsk algebra For IT studerende

Hvorfor er det lige at vi skal lære det her?

Fejlkorligerende køder Fejlkorrigerende koder

4 Oversigt over kapitel 4

Transkript:

Produktsystemer, substitutions-permutations-net samt lineær og differentiel kryptoanalyse Kryptologi, fredag den 10. februar 2006 Nils Andersen (Stinson 3., afsnit 2.7 3.4 samt side 95) Produkt af kryptosystemer Iteration af et endomorft kryptosystem Nøgleskema og runder Substitutions-permutations-net (SPN) og inversion Eksklusiv disjunktion og dens egenskaber Feistel-net og inversion Skævhed af binær stokastisk variabel Skævhed af sum af uafhængige stokastiske variable Lineær approksimation af S-net Lineær kryptoanalyse af SPN Differentiel kryptoanalyse af SPN 1

Produktsystemer Ud fra S 1 = (P, M, K 1, E 1, D 1 ) og S 2 = (M, C, K 2, E 2, D 2 ) kan man danne deres produkt S 1 S 2, det vil sige systemet S 1 S 2 = (P, C, K 1 K 2, E, D), hvor e (K1,K 2 ) = e K 2 e K1 og d (K1,K 2 ) = d K 1 d K2. Dette produkt behøver ikke at være kommutativt (men det vil altid være associativt). Specielt kan et endomorft system S = (P, C, K, E, D), det vil sige et, hvor P = C, multipliceres med sig selv. Hvis S S = S 2 = S, er systemet idempotent. Additiv kode, substitutionskode, affin kode, Hill-kode, Vigenèrekode og permutationskode er alle idempotente. Men hvis en kode ikke er idempotent, kan man undertiden danne mere sikre koder ved iteration, det vil sige ved at bruge S n (med koder, der er n gange så lange som dem i S) i stedet for S. 2

Itereret kode med runder Lad g være indkodningsfunktion for en ikkeidempotent kode. Et nøgleskema danner Nr rundenøgler (K i ) i=1,...,nr (indeks placeret for oven) ud fra en nøgle K, og den itererede kode indkoder gennem Nr + 1 tilstande: w 0 x w i g K i(w i 1 ), i = 1,..., Nr y w Nr og afkoder på tilsvarende måde: w Nr y w i 1 g 1 K i (wi ), i = Nr,..., 1 x w 0 idet vi går ud fra, at gk 1 (g k(w)) = w for hver delnøgle k og tilstand w. 3

Substitutions-permutations-net, opsætning For positive heltal l og m opdeles et lm-bitord x = (x 1,..., x ml ) i m l-bit-blokke (nummerering af bit og blokke begynder med 1): x = x 1 x m x i = (x (i 1)l+1,..., x il ) Substitution af en l-bit-blok fastlægges af en permutation π S : {0, 1} l {0, 1} l og permutation af et helt lm-bit-ord af en permutation π P : {1,..., lm} {1,..., lm} π P benyttes i kommer fra -notation, hvilket vil sige, at (v πp (1),..., v π P (lm)) afbildes over i (w 1,..., w lm ). Andre muligheder: går til -notation og cykelnotation. 4

Substitutions-permutations-net, kodning Nøgleskemaet antages at skaffe Nr +1 delnøgler (K i ) i=1,...,nr+1. De første Nr 1 runder består af addition af en delnøgle, m (parallelle) substitutioner og en permutation. Den Nr-te runde har kun delnøgleaddition og substitution, og til sidst adderes K Nr+1 : w 0 x for r to Nr 1 do u r w r 1 K r for i to m do v r i π S(u r i ) od w r (v r π P (1),..., vr π P (lm) ) od u Nr w Nr 1 K Nr for i to m do v i Nr y v Nr K Nr+1 π S(u Nr i ) od Afkodning: Løs (Stinson 3.) opgave 3.1. Se eksempel 3.1 og figur 3.1 (Stinson 3., side 75-78). 5

Eksklusiv disjunktion = modulo-to-sum Binær algebra: 0 = falsk, 1 = sand, Inklusiv disjunktion (enten... eller... eller begge dele, (lat.:) vel... vel... ) = = Konjunktion (både... og..., (lat.:)... et... ) = = & = Eksklusiv disjunktion (enten... eller..., men ikke begge dele, (lat.:) aut... aut... ) = ikke-ækvivalens ( ) = sum modulo 2 = 0 1 0 0 1 1 1 0 a (b c) = (a b) c b a = a b a 0 = 0 a = a a a = 0 a (b c) = (a b) (a c) a 1 = 1 a = a a a = 1 a = b c a b c = 0 a b = (a b) ( a b) = (a b) ( a b) 6

Feistel-net Hver tilstand u i deles op i en venstre og en højre halvdel: og hver runde danner hvor u i = L i R i L i R i = g K i(l i 1 R i 1 ) L i = R i 1 R i = L i 1 f(r i 1, K i ) for en funktion f, som ikke behøver at opfylde nogen specielle betingelser! Se (Stinson 3.) figur 3.6. Afkodning? (Opgave (Stinson 3.) 3.2.) Foreslået 1973 af Horst Feistel i IBM s Lucipher. 7

Stokastisk variabel Et diskret udfaldsrum består af endeligt mange elementære udfald a, til hver af hvilke der er knyttet en ikke-negativ sandsynlighed P (a), sådan at summen af alle rummets udfald er 1. En hændelse A er en delmængde af udfald, og dens sandsynlighed Pr[A] er summen af sandsynlighederne for dens elementære udfald: Pr[A] = P (a) a A En stokastisk variabel X kan opfattes som en afbildning fra et udfaldsrum U ind i de reelle tal, og for et reelt tal r taler man om sandsynligheden for X = r : Pr[X = r] = Pr[X 1 ({r})] = a U X(a) = r P (a) To stokastiske variable X og Y er uafhængige, hvis Pr[X = r Y = s] = Pr[X = r]pr[y = s] for alle r og s. 8

Skævhed af binær stokastisk variabel En binær stokastisk variabel X afbilder udfaldsrummet over i {0, 1} og afgrænser blot to sandsynligheder, Pr[X = 0] = p og Pr[X = 1] = 1 p. Skævheden (eng.: bias) af X defineres som Bi[X] = p 1, så at 2 Pr[X = 0] = 1 2 +Bi[X], Pr[X = 1] = 1 2 Bi[X]; X er retfærdig (eng.: fair), hvis Bi[X] = 0. Sætning: For k indbyrdes uafhængige stokastiske variable X 1,..., X k vil Bi[X 1... X k ] = 2 k 1 k i=1 Bi[X i ] Korollar: Hvis blot en af de stokastiske variable X i er retfærdig, vil hele summen X 1... X k også være det. 9

Lineær approksimation af S-net En binær funktion f er lineær, hvis f(x y) = f(x) f(y) for alle x og y. Eksempel: f(x) = x c. For en S kasse π S : {0, 1} m {0, 1} n forsøger man at finde en uretfærdig stokastisk variabel X i1... X ik Y j1... Y jl for 1 i 1 <... < i k m, 1 j 1 <... < j l n, idet (Y 1,..., Y n ) = π S (X 1,..., X m ). Se eksempel 3.2, tabel 3.1 og figur 3.2 (Stinson 3., side 82 84). Repræsentation som tabel vil kræve 2 m n bit. 10

Lineær kryptoanalyse Kombiner skævheder i S-kasserne til en uretfærdig vej gennem hele nettet, det vil sige: Find en ikke-retfærdig sum Z af bit fra klarteksten samt nøglebit (fra delnøglerne K 1,..., K Nr ) og bit fra tilstanden U Nr netop forud for de sidste S-kasser og den afsluttende addition af delnøglen K Nr+1. Antag, man har samlet sig et stort materiale af sammenhørende værdier (x, y) af klartekster og ciffertekster alle for samme nøgle k, og at de bit fra U Nr, der indgår i Z, er funktioner af Y og af m bestemte bit fra K Nr+1. (Husk, at π S og dermed også πs 1 er kendt.) For hver af de 2 m muligheder for de nævnte m nøglebit gennemløbes materialet, og Bi[Z] beregnes. Hvis materialet er stort nok (omvendt proportionalt med kvadratet på skævheden), træder de m rigtige nøglebit frem. Se afsnit 3.3.3, figur 3.3 og algoritme 3.2 (Stinson 3., side 84 88). 11

Differential og overføringsforhold For et m-bitord x skal (x ) betegne de 2 m par (x, x ) med sum (eng.: x-or) x : x x = x. For en S-kasse π S : {0, 1} m {0, 1} n udnyttes uligheder i dens overføring af indgangssummer til udgangssummer: Dan en tabel over de 2 m 2 n værdier N D (x, y ) = {(x, x ) (x ) π S (x) π S (x ) = y } som udtryk for de betingede sandsynligheder eller overføringsforhold (eng.: propagation ratios) Pr[udgangssum = y indgangssum = x ] = N D(x, y ) 2 m Kombiner særligt store overføringsforhold til et differentielt spor gennem nettet fra en bestemt indgangssum x til en bestemt tilstandssum (u Nr ). Under antagelse af, at nettets enkelte lag er uafhængige, dannes overføringsforholdet ε for det differentielle spor ved multiplikation, og det bliver igen større end ved en tilfældig fordeling. 12

Differentiel kryptoanalyse De positioner i u Nr, hvor (u Nr ) har 1-bit, afhænger af k bestemte bit fra K Nr+1. Antag, man har samlet sig et materiale af sammenhørende værdier (x, x, y, y ), det vil sige: cifferteksterne y og y svarer til henholdsvis x og x, alle indkodninger benytter samme (ukendte) nøgle, og hvert kvadrupel har indgangssum x x = x. For hver af de 2 k muligheder for de nævnte delnøglebit gøres da følgende: Materialet løbes igennem; ud fra y og y og de aktuelle delnøglebit regnes tilbage til u Nr og (u Nr ), og brøkdelen med den rigtige sum (u Nr ) tælles op. Hvis materialet er stort nok (omvendt proportionalt med ε), træder de k rigtige nøglebit frem. Se eksempel 3.3, figur 3.4, figur 3.5 og algoritme 3.3 (Stinson 3., side 89 95). 13