authenticated encryption
play

Authenticated Encryption Atul Luykx COSIC, ESAT, KU Leuven, Belgium - PowerPoint PPT Presentation

Authenticated Encryption Atul Luykx COSIC, ESAT, KU Leuven, Belgium July 15, 2016 1 2 2 2 2 2 2 2 2 2 2 Modeling Attacks 3 Modeling Attacks 3 Modeling Attacks Encryption 3 Modeling Attacks Encryption 3 Modeling Attacks


  1. Authenticated Encryption Atul Luykx COSIC, ESAT, KU Leuven, Belgium July 15, 2016 1

  2. 2

  3. 2

  4. 2

  5. 2

  6. 2

  7. 2

  8. 2

  9. 2

  10. 2

  11. 2

  12. Modeling Attacks 3

  13. Modeling Attacks 3

  14. Modeling Attacks Encryption 3

  15. Modeling Attacks Encryption 3

  16. Modeling Attacks Encryption Decryption 3

  17. Modeling Attacks Encryption K Decryption K 3

  18. Modeling Attacks Encryption K Adversary Decryption K 3

  19. Ciphertext-Only Plaintext unknown, adversary receives only ciphertext 4

  20. Ciphertext-Only Plaintext unknown, adversary receives only ciphertext m 1 m 2 m 3 m 4 E K E K E K E K c 1 c 2 c 3 c 4 4

  21. Ciphertext-Only Plaintext unknown, adversary receives only ciphertext m 1 m 2 m 3 m 4 E K E K E K E K c 1 c 2 c 3 c 4 4

  22. Ciphertext-Only Attacks In Practice 5

  23. Ciphertext-Only Attacks In Practice 5

  24. Ciphertext-Only Attacks In Practice 5

  25. Known Plaintext Attacks 6

  26. Known Plaintext Attacks 6

  27. Known Plaintext Attacks 6

  28. KPA: Brute Force m 1 E K c 1 1 ECRYPT II 2012 key size recommendation 7

  29. KPA: Brute Force m 1 Cipher Block size Key size DES 64 56 E K AES 128 128, 192, 256 KATAN 32, 48, 64 80 c 1 1 ECRYPT II 2012 key size recommendation 7

  30. KPA: Brute Force m 1 Cipher Block size Key size DES 64 56 E K AES 128 128, 192, 256 KATAN 32, 48, 64 80 c 1 1. Key recovery 1 ECRYPT II 2012 key size recommendation 7

  31. KPA: Brute Force m 1 Cipher Block size Key size DES 64 56 E K AES 128 128, 192, 256 KATAN 32, 48, 64 80 c 1 1. Key recovery ◮ Determines how long the data must be protected 1 ECRYPT II 2012 key size recommendation 7

  32. KPA: Brute Force m 1 Cipher Block size Key size DES 64 56 E K AES 128 128, 192, 256 KATAN 32, 48, 64 80 c 1 1. Key recovery ◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force 1 ECRYPT II 2012 key size recommendation 7

  33. KPA: Brute Force m 1 Cipher Block size Key size DES 64 56 E K AES 128 128, 192, 256 KATAN 32, 48, 64 80 c 1 1. Key recovery ◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations, very short-term protection against agencies 1 1 ECRYPT II 2012 key size recommendation 7

  34. KPA: Brute Force m 1 Cipher Block size Key size DES 64 56 E K AES 128 128, 192, 256 KATAN 32, 48, 64 80 c 1 1. Key recovery ◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations, very short-term protection against agencies 1 ◮ Guessing one key out of many is much easier 1 ECRYPT II 2012 key size recommendation 7

  35. Chosen-Plaintext Attacks 1. Diplomatic messaging 8

  36. Chosen-Plaintext Attacks 1. Diplomatic messaging 2. ATMs and PINs 8

  37. Chosen-Plaintext Attacks 1. Diplomatic messaging 2. ATMs and PINs 3. Locks, sensors, cameras 8

  38. Chosen-Plaintext Attacks 1. Diplomatic messaging 2. ATMs and PINs 3. Locks, sensors, cameras 4. Javascript code in browsers 8

  39. CPA: BEAST 9

  40. CPA: BEAST m 2 m 3 m 4 IV ⊕ m 1 + + + E K E K E K E K E K c 1 c 2 c 3 c 4 c 1 Secure: 9

  41. CPA: BEAST m 2 m 3 m 4 IV ⊕ m 1 + + + E K E K E K E K E K c 1 c 2 c 3 c 4 c 1 Secure: m 2 m 3 m 4 IV ⊕ m 1 + + + E K E K E K E K E K c 1 c 2 c 3 c 4 c 1 Insecure: 9

  42. CPA: BEAST IV 1 ⊕ m 1 m 2 + m ′ m ′ 1 2 E K E K E K + + E K E K c 1 c 1 c 2 = IV 2 c ′ c ′ 1 2 9

  43. CPA: BEAST IV 1 ⊕ m 1 m 2 + m ′ m ′ 1 2 E K E K E K + + E K E K c 1 c 1 c 2 = IV 2 c ′ c ′ 1 2 m ′ 1 = IV 1 ⊕ IV 2 ⊕ Guess 9

  44. CPA: BEAST IV 1 ⊕ m 1 m 2 + m ′ m ′ 1 2 E K E K E K + + E K E K c 1 c 1 c 2 = IV 2 c ′ c ′ 1 2 m ′ 1 = IV 1 ⊕ IV 2 ⊕ Guess Inject zero padding in m 1 9

  45. Chosen-Ciphertext Attacks 1. Devices all connected to internet: easy access to decryption 10

  46. Chosen-Ciphertext Attacks 1. Devices all connected to internet: easy access to decryption 2. TLS padding oracle attack: decryption algorithm leaks validity of padding 10

  47. Chosen-Ciphertext Attacks 1. Devices all connected to internet: easy access to decryption 2. TLS padding oracle attack: decryption algorithm leaks validity of padding 3. Data Authenticity? 10

  48. Necessary Security Level Chosen-ciphertext Confidentiality and Authenticity 11

  49. Necessary Security Level Chosen-ciphertext Confidentiality and Authenticity ⇒ Authenticated Encryption 11

  50. Authenticated Encryption K K 12

  51. Authenticated Encryption K K n 12

  52. Authenticated Encryption K K n AEnc K n 12

  53. Authenticated Encryption K K n n AEnc K n 12

  54. Authenticated Encryption K K n n AEnc K ADec K n ⊥ 12

  55. Authenticated Encryption Security AE security = Confidentiality + Authenticity 13

  56. Authenticated Encryption Security AE security = Confidentiality + Authenticity Simultaneous vs Separate Treatment 13

  57. Authenticated Encryption Security AE security = Confidentiality + Authenticity Simultaneous vs Separate Treatment 13

  58. Authenticity: Intuition K K n AEnc K n 14

  59. Authenticity: Intuition K K n AEnc K n 14

  60. Authenticity: Intuition K K n n AEnc K n 14

  61. Authenticity: Intuition K K n n AEnc K ADec K ⊥ n 14

  62. Authenticity: Formalization n n AEnc K ADec K ⊥ n 15

  63. Authenticity: Formalization N, M N, C’ AEnc K ADec K N, C ⊥ 15

  64. Authenticity: Formalization N, M N, C’ AEnc K ADec K N, C ⊥ ? 15

  65. Authenticity: Formalization ? N, M N, C’ AEnc K ADec K N, C ⊥ ? 15

  66. Authenticity: Adversarial Power Plaintext Control: ? N, M AEnc K N, C 16

  67. Authenticity: Adversarial Power Plaintext Control: Ciphertext-only Random N, M AEnc K N, C 16

  68. Authenticity: Adversarial Power M 1 , M 2 , . . . , M q Plaintext Control: Ciphertext-only Known Plaintext N, M AEnc K N, C 16

  69. Authenticity: Adversarial Power Plaintext Control: Ciphertext-only Known Plaintext Chosen Plaintext N, M AEnc K N, C 16

  70. Authenticity: Adversarial Power Plaintext Control: Ciphertext-only Known Plaintext Chosen Plaintext N, M Nonce Control: Force Uniqueness Allow “Abuse” AEnc K N, C 16

  71. Non-Example: One-time pad K M 1 17

  72. Non-Example: One-time pad K M 1 + C 1 17

  73. Non-Example: One-time pad K M 1 M 2 + + C 1 C 2 17

  74. Non-Example: One-time pad K N 2 M 1 M 2 + + C 1 C 2 17

  75. Non-Example: One-time pad K N 2 M 1 M 2 + + C 1 C 2 K N 2 + C 2 M 2 17

  76. Non-Example: One-time pad C K N 2 + C M 2 Valid? 17

  77. Non-Example: One-time pad K + M M C 17

  78. Non-Example: One-time pad K + M M C K N 2 + C If equal, valid. M 2 M M 17

  79. Non-Example: One-time pad K + M M M’ M’ + C K N 2 + C If equal, valid. M 2 M M 17

  80. Using a Block Cipher M � M C E − 1 E K K M � M ? C 18

  81. Using a Block Cipher N � M C E − 1 E K K N � M ? C 18

  82. Authenticity Only Confidentiality does not imply Authenticity 19

  83. Authenticity Only Confidentiality does not imply Authenticity n n AEnc K ADec K ⊥ ? n 19

  84. Authenticity Only Confidentiality does not imply Authenticity n n Tag K Verify K ⊥ ? n 19

  85. Example: Authentication With Block Cipher M E K T 20

  86. Example: Authentication With Block Cipher Tag K M E K T 20

  87. Example: Authentication With Block Cipher Tag K Verify K T ∗ M M ′ E K E K T ? T ′ = 20

  88. Example: Authentication With Block Cipher Tag K Verify K M 1 ⊕ M 2 M ′ T ∗ E K E K ? T T ′ = 20

  89. Example: Authentication With Block Cipher Tag K Verify K E L ( M 1 ) ⊕ E L ( M 2 ) M ′ T ∗ E K E K ? T ′ T = 20

  90. Example: Authentication With Block Cipher Tag K Verify K E L ( N ) ⊕ E L ( M 1 ) ⊕ E L ( M 2 ) M ′ T ∗ E K E K ? T ′ T = 20

  91. Authentication Algorithm Design N , M PRF K T 21

  92. Authentication Algorithm Design N , M T ′ PRF K T 21

  93. Authentication Algorithm Design N , M T ′ PRF K ? T = 1 0 21

  94. Pseudorandom Functions N , M T ′ PRF K ? T = 1 0 22

  95. Pseudorandom Functions N , M N , M PRF K Random T T 22

  96. Modes of Operation PRF K 23

  97. Modes of Operation PRF K m 1 E K c 1 23

  98. Modes of Operation PRF K m 1 m 2 m 3 m 4 + + + E K E K E K E K E K T 23

  99. Overview 1. Block cipher m 1 E K c 1 24

  100. Overview 1. Block cipher m 1 m 2 m 3 m 4 2. Mode of operation + + + E K E K E K E K E K T c 1 24

Recommend


More recommend