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

Slides:



Advertisements
Similar presentations
6.1.2 Overview DES is a block cipher, as shown in Figure 6.1.
Advertisements

DES The Data Encryption Standard (DES) is a classic symmetric block cipher algorithm. DES was developed in the 1970’s as a US government standard The block.
Foundations of Cryptography Lecture 10 Lecturer: Moni Naor.
SBSeg 2007, NCE/UFRJ, Rio de Janeiro Linear Analysis of reduced- round CAST-128 and CAST-256 Jorge Nakahara Jr 1 Mads Rasmussen 2 1 UNISANTOS, Brazil 2.
Cryptography and Network Security Chapter 5 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptography and Network Security Chapter 5
Stream ciphers 2 Session 2. Contents PN generators with LFSRs Statistical testing of PN generator sequences Cryptanalysis of stream ciphers 2/75.
1 Cryptanalysis-tolerant CPA crypt. ● Suppose E, E’ are two encryption schemes which on of them is CPA - secure  E.g., a standard and a proprietary, a.
Cryptography and Network Security Chapter 3
Foundations of Cryptography Lecture 13 Lecturer: Moni Naor.
Public Key Encryption Algorithm
Data Encryption Standard (DES)
Announcements: Quiz grades entered Quiz grades entered Homework 4 updated with more details. Homework 4 updated with more details. Discussion forum is.
Block ciphers 1 Session 3. Contents Design of block ciphers Non-linear transformations 2/25.
Towards a unifying view of block cipher cryptanalysis David Wagner University of California, Berkeley.
Cryptography and Network Security, resuming some notes Dr. M. Sakalli.
1 The AES block cipher Niels Ferguson. 2 What is it? Block cipher: encrypts fixed-size blocks. Design by two Belgians. Chosen from 15 entries in a competition.
A few open problems in computer security David Wagner University of California, Berkeley.
Session 6: Introduction to cryptanalysis part 2. Symmetric systems The sources of vulnerabilities regarding linearity in block ciphers are S-boxes. Example.
FEAL FEAL 1.
1 Overview of the DES A block cipher: –encrypts blocks of 64 bits using a 64 bit key –outputs 64 bits of ciphertext A product cipher –basic unit is the.
Introduction to Modern Cryptography Lecture 2 Symmetric Encryption: Stream & Block Ciphers.
Introduction to Modern Cryptography Lecture 3 (1) Finite Groups, Rings and Fields (2) AES - Advanced Encryption Standard.
Announcements: DES due Thursday. DES due Thursday. Try not to use late day, so you can study for Ch 3 quiz Friday. Try not to use late day, so you can.
Session 6: Introduction to cryptanalysis part 1. Contents Problem definition Symmetric systems cryptanalysis Particularities of block ciphers cryptanalysis.
Cryptanalysis on Substitution- Permutation Networks Jen-Chang Liu, 2005 Ref: Cryptography: Theory and Practice, D. R. Stinson.
ECE454/CS594 Computer and Network Security Dr. Jinyuan (Stella) Sun Dept. of Electrical Engineering and Computer Science University of Tennessee Fall 2011.
Cryptanalysis. The Speaker  Chuck Easttom  
Cryptanalysis of Modern Symmetric-Key Block Ciphers [Based on “A Tutorial on Linear and Differential Cryptanalysis” by Howard Heys.] Modern block ciphers.
Chapter 2 Basic Encryption and Decryption. csci5233 computer security & integrity 2 Encryption / Decryption encrypted transmission AB plaintext ciphertext.
Cryptography and Network Security
Diffusion and Confusion Two properties that a good cryptosystem should have: Diffusion: change of one character in the plaintext results in several characters.
5.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 5 Introduction to Modern Symmetric-key Ciphers.
Block ciphers 2 Session 4. Contents Linear cryptanalysis Differential cryptanalysis 2/48.
Great Theoretical Ideas in Computer Science.
Differential Cryptanalysis - quite similar to linear cryptanalysis - exploits the relationship between the difference of two inputs and the difference.
AES Background and Mathematics CSCI 5857: Encoding and Encryption.
1 Lect. 10 : Cryptanalysis. 2 Block Cipher – Attack Scenarios  Attacks on encryption schemes  Ciphertext only attack: only ciphertexts are given  Known.
Day 18. Concepts Plaintext: the original message Ciphertext: the transformed message Encryption: transformation of plaintext into ciphertext Decryption:
CS555Spring 2012/Topic 111 Cryptography CS 555 Topic 11: Encryption Modes and CCA Security.
CRYPTANALYSIS OF STREAM CIPHER Bimal K Roy Cryptology Research Group Indian Statistical Institute Kolkata.
Two New Online Ciphers Mridul Nandi National Institute of Standards and Technology, Gaithersburg, MD Indocrypt 2008, Kharagpur.
CS555Spring 2012/Topic 101 Cryptography CS 555 Topic 10: Block Cipher Security & AES.
Great Theoretical Ideas in Computer Science.
Le Trong Ngoc Security Fundamentals (2) Encryption mechanisms 4/2011.
15-499Page :Algorithms and Applications Cryptography I – Introduction – Terminology – Some primitives – Some protocols.
Lecture 23 Symmetric Encryption
Fifth Edition by William Stallings
The RC5 Encryption Algorithm: Two Years On Lisa Yin RC5 Encryption –Ron Rivest, December 1994 –Fast Block Cipher –Software and Hardware Implementations.
© Information Security Group, ICU1 Block Cipher- introduction  DES Description: Feistel, S-box Exhaustive Search, DC and LC Modes of Operation  AES Description:
Linear Cryptanalysis of DES
Block Cipher- introduction
CS519, © A.SelcukDifferential & Linear Cryptanalysis1 CS 519 Cryptography and Network Security Instructor: Ali Aydin Selcuk.
The Advanced Encryption Standard Part 2: Mathematical Background
Linear Cryptanalysis of DES M. Matsui. 1.Linear Cryptanalysis Method for DES Cipher. EUROCRYPT 93, 1994.Linear Cryptanalysis Method for DES Cipher 2.The.
Block Ciphers and the Data Encryption Standard. Modern Block Ciphers  One of the most widely used types of cryptographic algorithms  Used in symmetric.
Markov Ciphers and Differential Cryptanalysis Jung Daejin Lee Sangho.
@Yuan Xue CS 285 Network Security Block Cipher Principle Fall 2012 Yuan Xue.
@Yuan Xue Announcement Project Release Team forming Homework 1 will be released next Tuesday.
School of Computer Science and Engineering Pusan National University
Introduction to Modern Symmetric-key Ciphers
Quick reviews / corrections
Introduction to Modern Symmetric-key Ciphers
مروري برالگوريتمهاي رمز متقارن(كليد پنهان)
Introduction to Modern Symmetric-key Ciphers
DTTF/NB479: Dszquphsbqiz Day 17
Cryptanalysis of Block Ciphers
Cryptography and Network Security Chapter 5 Fifth Edition by William Stallings Lecture slides by Lawrie Brown.
Cryptanalysis Network Security.
Presentation transcript:

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

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

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

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

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?

How to attack a product cipher 1. Identify local properties of its round functions 2. Piece these together into global properties of the whole cipher X X EkEk X X X X f1f1 fnfn =

Motif #1: projection Identify local properties using commutative diagrams:  ’’ X X fkfk where: f k = original round function Y Y g k’ g k’ = reduced round function and: g k’ ○  =  ’ ○ f k

Concatenating local properties Build global commutative diagrams out of local ones:  ’’ X X f1f1 Y Y g1g1 ’’ ”” X X f2f2 Y Y g2g2 +  XY ’’ X f1f1 Y g1g1 ”” X f2f2 Y g2g2 =

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

Example: linearity in Madryga  Madryga leaves parity unchanged Let  (x) = parity of x We see  (E k (x)) =  (x)  This yields a distinguisher Pr[  (  (x)) =  (x)] = ½ Pr[  (E k (x)) =  (x)] = 1 GF(2) 64 f1f1 fnfn GF(2) id    

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

A better formulation?  Stochastic comm. diagrams E k, ,  ’ 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 E k from   ’’ X X EkEk Y Y M  ’’ X X  Y Y M’

Example: Linear cryptanalysis  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/  2 known texts break the cipher  ’’ X X EkEk Y Y M ½+  ½–½– ½–½– [] M = and d(M, M’) = 1/  2

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

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

Example: Differential crypt. Differential cryptanalysis:   X ×X ÊkÊk X X M  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

Example: Impossible diff.’s Impossible differential cryptanalysis:   X ×X ÊkÊk X X M  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

Example: Truncated diff. crypt. Truncated differential cryptanalysis: 11 22 X ×X ÊkÊk Y Y M  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

Generalized truncated d.c. Generalized truncated differential cryptanalysis: 11 22 X ×X ÊkÊk Y1Y1 Y2Y2 M  Take X, Y i,  i as before; then  = max x ||M(x) – M’(x)|| measures the distinguishing power of the attack  Generalizes the other attacks

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

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?

Part 2: Algebraic attacks

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

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

A generalization: resultants A possible direction: bivariate polynomials:  The small diagrams commute if p i (x, f i (x)) = 0 for all x  Small diagrams can be composed to obtain q(x, f 2 (f 1 (x))) = 0, where q(x,z) = res y (p 1 (x,y), p 2 (y,z))  Some details not worked out... X X f1f1 X p1p1 X p2p2 X f2f2

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

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