blockcipher security notions
play

Blockcipher Security Notions Martijn Stam Department of Computer - PowerPoint PPT Presentation

1 / 24 Blockcipher Security Notions Martijn Stam Department of Computer Science, University Of Bristol, Merchant Venturers Building, Woodland Road, Bristol, BS8 1UB United Kingdom. Sibenik, 7 June 2016 Basic Syntax of Blockciphers DES


  1. 1 / 24 Blockcipher Security Notions Martijn Stam Department of Computer Science, University Of Bristol, Merchant Venturers Building, Woodland Road, Bristol, BS8 1UB United Kingdom. ˇ Sibenik, 7 June 2016

  2. Basic Syntax of Blockciphers DES and AES 2 / 24 Data Encryption Standard (DES) An Early Blockcipher 1970s: DES provided the first FIPS standard for a blockcipher It takes as input: a 56-bit string k called the key a 64-bit string x called the plaintext or input block. and outputs a 64-bit string y called the ciphertext or output block. The algorithm is stateless, deterministic, and invertible. ∀ k , x If y ← DES k ( x ) then x ← DES − 1 k ( y )

  3. Basic Syntax of Blockciphers DES and AES 3 / 24 Advanced Encryption Standard (AES) A Modern Blockcipher Turn of Century: NIST approves AES as successor of DES. AES - 128 takes as input: a 128 -bit string k called the key a 128-bit string x called the plaintext or input block. and outputs a 128-bit string y called the ciphertext or output block. The algorithm is stateless, deterministic, and invertible. ∀ k , x If y ← AES k ( x ) then x ← AES − 1 k ( y )

  4. Basic Syntax of Blockciphers DES and AES 4 / 24 Advanced Encryption Standard (AES) A Modern Blockcipher Turn of Century: NIST approves AES as successor of DES. AES - 192 takes as input: a 192 -bit string k called the key a 128-bit string x called the plaintext or input block. and outputs a 128-bit string y called the ciphertext or output block. The algorithm is stateless, deterministic, and invertible. ∀ k , x If y ← AES k ( x ) then x ← AES − 1 k ( y )

  5. Basic Syntax of Blockciphers DES and AES 5 / 24 Advanced Encryption Standard (AES) A Modern Blockcipher Turn of Century: NIST approves AES as successor of DES. AES - 256 takes as input: a 256 -bit string k called the key a 128-bit string x called the plaintext or input block. and outputs a 128-bit string y called the ciphertext or output block. The algorithm is stateless, deterministic, and invertible. ∀ k , x If y ← AES k ( x ) then x ← AES − 1 k ( y )

  6. Basic Syntax of Blockciphers Formal Syntax 6 / 24 Blockciphers Syntax A blockcipher is a set of keyed permutations E : K × X → X where K is the set of keys, X the set of plaintext blocks

  7. Basic Syntax of Blockciphers Formal Syntax 6 / 24 Blockciphers Syntax A blockcipher is a set of keyed permutations E : K × X → X where K is the set of keys, X the set of plaintext blocks Notation for blockciphers Block ( K , X ) denotes the set of all possible blockciphers of given dimensions Perm ( X ) denotes the set of all permutations on X .

  8. Basic Syntax of Blockciphers Formal Syntax 6 / 24 Blockciphers Syntax A blockcipher is a set of keyed permutations E : K × X → X where x K is the set of keys, X the set of plaintext blocks E k Notation for E ∈ Block ( K , X ) Let k ∈ K we write E k ( · ) for E(k , · ). As E k ∈ Perm ( X ) it has an inverse E − 1 or D k k y

  9. Basic Syntax of Blockciphers Formal Syntax 6 / 24 Blockciphers Syntax A blockcipher is a set of keyed permutations E : K × X → X where x K is the set of keys, X the set of plaintext blocks E k Notation for E ∈ Block ( K , X ) Let k ∈ K we write E k ( · ) for E(k , · ). As E k ∈ Perm ( X ) it has an inverse E − 1 or D k k y For all k ∈ K , x ∈ X : D k (E k ( x )) = E k (D k ( x )) = x

  10. Basic Syntax of Blockciphers Formal Syntax 6 / 24 Blockciphers Syntax A blockcipher is a set of keyed permutations E : K × X → X where x K is the set of keys, X the set of plaintext blocks E k Using bitstrings as inputs K = { 0 , 1 } K for some key-length K ∈ ◆ X = { 0 , 1 } n for some block-length n. y

  11. Basic Syntax of Blockciphers Formal Syntax 6 / 24 Blockciphers Syntax A blockcipher is a set of keyed permutations E : K × X → X where x K is the set of keys, X the set of plaintext blocks E k Using bitstrings as inputs K = { 0 , 1 } K for some key-length K ∈ ◆ X = { 0 , 1 } n for some block-length n. y DES has n = 64 and k = 56; AES has n = 128 and k ∈ { 128 , 192 , 256 }

  12. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? What security would you expect from a blockcipher? x E k y

  13. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x Some random thoughts... It should be hard to recover they key! E k y

  14. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x Some random thoughts... It should be hard to recover they key! E k learn plaintexts! y

  15. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x Some random thoughts... It should be hard to recover they key! E k learn plaintexts! predict ciphertexts! y

  16. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x Some random thoughts... It should be hard to recover they key! E k learn plaintexts! predict ciphertexts! distinguish its output from random! y

  17. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x Some random thoughts... It should be hard to recover they key! But when? E k learn plaintexts! predict ciphertexts! distinguish its output from random! y

  18. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x Some random thoughts... It should be hard to recover they key! But when? E k learn plaintexts! Which plaintexts? predict ciphertexts! distinguish its output from random! y

  19. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x Some random thoughts... It should be hard to recover they key! But when? E k learn plaintexts! Which plaintexts? predict ciphertexts! In what context? distinguish its output from random! y

  20. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x Some random thoughts... It should be hard to recover they key! But when? E k learn plaintexts! Which plaintexts? predict ciphertexts! In what context? distinguish its output from random! Random in what sense? y

  21. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x More precise definitions are needed, that highlight what an adversary can do and tries to achieve take into account the context in which the E k blockcipher is used y

  22. Basic Security of Blockciphers Ideas? 7 / 24 Blockcipher Security Ideas? x More precise definitions are needed, that highlight what an adversary can do and tries to achieve take into account the context in which the E k blockcipher is used ...so useful conclusions for real world applications can be drawn. y

  23. Basic Security of Blockciphers Blockcipher Use Scenario 8 / 24 How are blockciphers used? Scenario 1: Secure Communication Hi E k E k I’m here Anna Bob Bye Two parties, Anna and Bob want to communicate with each other: Anna wants to send Bob messages;

  24. Basic Security of Blockciphers Blockcipher Use Scenario 8 / 24 How are blockciphers used? Scenario 1: Secure Communication Hi E k E k I’m here Anna Bob Bye Two parties, Anna and Bob want to communicate with each other: Anna wants to send Bob messages; The content of the messages should remain hidden from Eve;

  25. Basic Security of Blockciphers Blockcipher Use Scenario 8 / 24 How are blockciphers used? Scenario 1: Secure Communication yWj E k E k s 5Yc6sdf Anna Bob Flan Two parties, Anna and Bob want to communicate with each other: Anna wants to send Bob messages; The content of the messages should remain hidden from Eve;

  26. Basic Security of Blockciphers Blockcipher Use Scenario 8 / 24 How are blockciphers used? Scenario 1: Secure Communication yWj E k E k s 5Yc6sdf Anna Bob Flan Two parties, Anna and Bob want to communicate with each other: Anna wants to send Bob messages; The content of the messages should remain hidden from Eve; Adversary Eve can see but not modify the transmissions.

  27. Basic Security of Blockciphers Blockcipher Use Scenario 8 / 24 How are blockciphers used? Scenario 1: Secure Communication k k yWj E k E k s 5Yc6sdf Anna Bob Flan Some enabling assumptions: Anna and Bob already magically share a secret key;

  28. Basic Security of Blockciphers Blockcipher Use Scenario 8 / 24 How are blockciphers used? Scenario 1: Secure Communication k k yWj E k E k s 5Yc6sdf Anna Bob Flan Some enabling assumptions: Anna and Bob already magically share a secret key; They both like the same blockcipher

  29. Basic Security of Blockciphers Blockcipher Use Scenario 8 / 24 How are blockciphers used? Scenario 1: Secure Communication k k yWj E k E k s 5Yc6sdf Anna Bob Flan Some enabling assumptions: Anna and Bob already magically share a secret key; They both like the same blockcipher Anna swims in a pool

  30. Basic Security of Blockciphers Blockcipher Use Scenario 8 / 24 How are blockciphers used? Scenario 1: Secure Communication k k yWj E k E k s 5Yc6sdf Anna Bob Flan Some enabling assumptions: Anna and Bob already magically share a secret key; They both like the same blockcipher Anna swims in a pool of randomness

  31. Basic Security of Blockciphers Blockcipher Use Scenario 9 / 24 Confidentiality of a single 3-block message CTR Encryption IV IV + 1 IV + 2 IV + 3 E k E k E k m 1 m 2 m 3 c 0 c 1 c 2 c 3

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend