analysis and design of symmetric ciphers n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Analysis and design of symmetric ciphers PowerPoint Presentation
Download Presentation
Analysis and design of symmetric ciphers

Loading in 2 Seconds...

  share
play fullscreen
1 / 27

Analysis and design of symmetric ciphers - PowerPoint PPT Presentation

1 Views
Download Presentation
Analysis and design of symmetric ciphers
An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Analysis and design of symmetric ciphers David Wagner University of California, Berkeley

  2. x k Ek(x) What’s a block cipher? Ek : X→X bijective for all k

  3. x x  k E block cipher random permutation (x) Ek(x) When is a block cipher secure? Answer: when these two black boxes are indistinguishable.

  4. S S S S S S S S S S S S S S S S 4×4 matrix 4×4 matrix 4×4 matrix 4×4 matrix Example: The AES One round byte re-ordering S(x) = l(l’(x)-1) in GF(28), where l,l’ are GF(2)-linearand the MDS matrix and byte re-ordering are GF(28)-linear

  5. In this talk: • Survey of cryptanalysis of block ciphers • Steps towards a unifying view of this field • Algebraic attacks How do we tell if a block cipher is secure? How do we design good ones?

  6. 1. Identify local properties of its round functions 2. Piece these together into global properties of the whole cipher X X f1 X Ek = X fn X X How to attack a product cipher

  7. X Y where: fk = original round function fk gk’ gk’ = reduced round function ’ and: X Y gk’○  = ’ ○ fk Motif #1: projection Identify local properties using commutative diagrams:

  8.  X Y X Y f1 g1 f1 g1 ’ ’ X Y X Y ’ + f2 g2 = X Y ” X Y f2 g2 ” X Y Concatenating local properties Build global commutative diagrams out of local ones:

  9. X Y Ek g ’ X Y Exploiting global properties Use global properties to build a known-text attack: • The distinguisher: • Let (x, y) be a plaintext/ciphertext pair • If g((x)) =’(y), it’s probably from Ek • Otherwise, it’s from 

  10. Madryga leaves parity unchanged Let (x) = parity of x We see (Ek(x)) = (x) This yields a distinguisher Pr[((x)) = (x)] = ½ Pr[(Ek(x)) = (x)] = 1  GF(2) GF(2)64 id f1  GF(2) GF(2)64  GF(2) GF(2)64 id fn  GF(2) GF(2)64 Example: linearity in Madryga

  11. Suffices to find a property that holds with large enough probability Maybe probabilistic commutative diagrams?  X Y Ek g ’ X Y Motif #2: statistics Prob. p where p = Pr[’(Ek(x)) = g((x))]

  12. Stochastic comm. diagrams Ek , , ’ induce a stochastic process M (hopefully Markov); , , ’ yield M’ Pick a distance measure d(M, M’), say 1/||M(x) – M’(x)||2 where the r.v. x is uniform on X Then d(M,M’) known texts suffice to distinguish Ek from    X X Y Y  Ek M’ M ’ ’ X X Y Y A better formulation?

  13. Matsui’s linear cryptanalysis Set X = GF(2)64, Y = GF(2) Cryptanalyst chooses linear maps , ’ cleverly to make d(M,M’) as small as possible Then M is a 2×2 matrix of the form shown here, and 1/2known texts break the cipher  X Y Ek M [ ] ’ M = X Y Example: Linear cryptanalysis and d(M, M’) = 1/2

  14. Y M ’ Y Motif #3: higher-order attacks Use many encryptions to find better properties: X ×X • Here we’ve definedÊk(x,x’) = (Ek(x), Ek(x’)) Êk X ×X

  15. X M  X Example: Complementation Complementation properties are a simple example: X ×X • Take (x,x’) = x’ – x • Suppose M(Δ,Δ) = 1 for some cleverly chosen Δ • Then we obtain a complementation property • Exploit with chosen texts Êk X ×X

  16. X M  X Example: Differential crypt. Differential cryptanalysis: X ×X • Set X = GF(2)n, and take (x,x’) = x’ – x • If p = M(Δ,Δ’)» 0 for some clever choice of Δ, Δ’: • can distinguish with 2/p chosen plaintexts Êk X ×X

  17. X M  X Example: Impossible diff.’s Impossible differential cryptanalysis: X ×X • Set X = GF(2)n, and take (x,x’) = x’ – x • If M(Δ,Δ’)= 0 for some clever choice of Δ, Δ’: • can distinguish with 2/M’(Δ,Δ’) known texts Êk X ×X

  18. 1 Y M 2 Y Example: Truncated diff. crypt. Truncated differential cryptanalysis: • Set X = GF(2)n, Y = GF(2)m, cleverly choose linear maps φ1, φ2 : X → Y, and take i(x,x’) = φi(x’ – x) • If M(Δ,Δ’)» 0 for some clever choice of Δ, Δ’, we can distinguish X ×X Êk X ×X

  19. 1 Y1 M 2 Y2 Generalized truncated d.c. Generalized truncated differential cryptanalysis: • Take X, Yi,i as before; then= maxx||M(x) – M’(x)|| measures the distinguishing power of the attack • Generalizes the other attacks X ×X Êk X ×X

  20. The attacks, compared generalized truncated diff. crypt. truncated d.c. l.c. with multiple approximations impossible d.c. differential crypt. linear crypt. complementation props. linear factors

  21. Summary (1) • A few leitmotifs generate many known attacks • Many other attack methods can also be viewed this way (higher-order d.c., slide attacks, mod n attacks, d.c. over other groups, diff.-linear attacks, algebraic attacks, etc.) • Are there other powerful attacks in this space?Can we prove security against all commutative diagram attacks? • We’re primarily exploiting linearities in ciphers • E.g., the closure properties of GL(Y, Y)  Perm(X) • Are there other subgroups with useful closure properties?Are there interesting “non-linear’’ attacks?Can we prove security against all “linear” comm. diagram attacks?

  22. Part 2: Algebraic attacks

  23. id X X Ek p id X X Example: Interpolation attacks Express cipher as a polynomial in the message & key: • Write Ek(x) = p(x), then interpolate from known texts • Or, p’(Ek(x)) = p(x) • Generalization: probabilistic interpolation attacks • Noisy polynomial reconstruction, decoding Reed-Muller codes

  24. id X X Ek p/q id X X Example: Rational inter. attacks Express the cipher as a rational polynomial: • If Ek(x) = p(x)/q(x), then: • Write Ek(x)×q(x) = p(x), and apply linear algebra • Note: rational poly’s are closed under composition • Are probabilistic rational interpolation attacks feasible?

  25. X f1 p1 p2 X X X f2 X A generalization: resultants A possible direction: bivariate polynomials: • The small diagrams commute ifpi(x, fi(x)) = 0 for all x • Small diagrams can be composed to obtain q(x, f2(f1(x))) = 0, where q(x,z) = resy(p1(x,y), p2(y,z)) • Some details not worked out...

  26. Algebraic attacks, compared probabilistic bivariate attacks prob. rational interpol. bivariate attacks probabilistic interpol. rational interpol. MITM interpolation interpolation attacks

  27. Summary • Many cryptanalytic methods can be understood using only a few basic ideas • Commutative diagrams as a unifying theme? • Algebraic attacks of growing importance • Collaboration between cryptographic and mathematical communities might prove fruitful here