some cryptanalytic results on triad
play

Some Cryptanalytic Results on TRIAD Abhishek Kesarwani IIT Madras, - PowerPoint PPT Presentation

Some Cryptanalytic Results on TRIAD Abhishek Kesarwani IIT Madras, India INDOCRYPT 2019 16 December 2019 (Joint work Santanu Sarkar and Ayineedi Venkateswarlu) Outline 2 Introduction TRIAD adopts Trivium -like Structure Attacks on Trivium


  1. Some Cryptanalytic Results on TRIAD Abhishek Kesarwani IIT Madras, India INDOCRYPT 2019 16 December 2019 (Joint work Santanu Sarkar and Ayineedi Venkateswarlu)

  2. Outline 2 Introduction TRIAD adopts Trivium -like Structure Attacks on Trivium -like ciphers Our Contribution Conclusion

  3. ◮ Call for Lightweight Cryptographic Algorithms

  4. ◮ Call for Lightweight Cryptographic Algorithms ◮ Total 56 candidates selected for Round 1

  5. ◮ Call for Lightweight Cryptographic Algorithms ◮ Total 56 candidates selected for Round 1 ◮ TRIAD [2] is one of them

  6. TRIAD Family 4 TRIAD TRIAD-AE TRIAD-HASH Triad-SC Triad-MAC ◮ TRIAD-AE provides authenticated encryption with associated data

  7. TRIAD Family 4 TRIAD TRIAD-AE TRIAD-HASH Triad-SC Triad-MAC ◮ TRIAD-AE provides authenticated encryption with associated data ◮ TRIAD-HASH follows the extended sponge based construction

  8. TRIAD Family 5 TRIAD TRIAD-AE TRIAD-HASH Triad-SC Triad-MAC ◮ TRIAD-AE provides authenticated encryption with associated data ◮ TRIAD-HASH follows the extended sponge based construction

  9. TRIAD adopts Trivium -like Structure

  10. TRIAD - AE Vs Trivium

  11. TRIAD - AE Vs Trivium State size 256 bits 288 bits

  12. TRIAD - AE Vs Trivium State size 256 bits 288 bits Key size 128 bits 80 bits

  13. TRIAD - AE Vs Trivium State size 256 bits 288 bits Key size 128 bits 80 bits Nonce/IV size 96 bits 80 bits

  14. TRIAD - AE Vs Trivium State size 256 bits 288 bits Key size 128 bits 80 bits Nonce/IV size 96 bits 80 bits Initialization 1024 round 1152 round

  15. TRIAD - AE Vs Trivium State size 256 bits 288 bits Key size 128 bits 80 bits Nonce/IV size 96 bits 80 bits Initialization 1024 round 1152 round Type AEAD - AEAD - Authenticated encryption with associated data

  16. Attacks on Trivium -like ciphers

  17. Cube Attack 9 ◮ Introduced by Dinur and Shamir [3] in 2009

  18. Cube Attack 9 ◮ Introduced by Dinur and Shamir [3] in 2009 ◮ Attempts to guess atleast one bit of secret key

  19. Cube Attack 9 ◮ Introduced by Dinur and Shamir [3] in 2009 ◮ Attempts to guess atleast one bit of secret key ◮ With complexity less than the brute-force attack

  20. Cube Attack 9 ◮ Introduced by Dinur and Shamir [3] in 2009 ◮ Attempts to guess atleast one bit of secret key ◮ With complexity less than the brute-force attack ◮ Cube attacks are closely related to higher order differential attacks

  21. Cube Attack 9 ◮ Introduced by Dinur and Shamir [3] in 2009 ◮ Attempts to guess atleast one bit of secret key ◮ With complexity less than the brute-force attack ◮ Cube attacks are closely related to higher order differential attacks ◮ Cube attacks use algebraic rather than statistical techniques to find the secret key

  22. Cube Tester 10 ◮ Introduced by Aumasson et. al [1] in 2009

  23. Cube Tester 10 ◮ Introduced by Aumasson et. al [1] in 2009 ◮ Cube testers detect non-random behavior rather than performing key extraction

  24. Cube Tester 10 ◮ Introduced by Aumasson et. al [1] in 2009 ◮ Cube testers detect non-random behavior rather than performing key extraction ◮ Cube tester distinguishes a given cipher from a truly random scenario

  25. Cube Tester 10 ◮ Introduced by Aumasson et. al [1] in 2009 ◮ Cube testers detect non-random behavior rather than performing key extraction ◮ Cube tester distinguishes a given cipher from a truly random scenario ◮ Cube testers are based on efficient testing properties

  26. Cube Tester 10 ◮ Introduced by Aumasson et. al [1] in 2009 ◮ Cube testers detect non-random behavior rather than performing key extraction ◮ Cube tester distinguishes a given cipher from a truly random scenario ◮ Cube testers are based on efficient testing properties Distinguisher Non-randomness (control over the public variables only) (control over the public and private variables both)

  27. Structure of TRIAD-AE 11 z t = f ( K, IV ), where f is a Boolean function

  28. Cube and Superpoly 12 Example ◮ f ( k 1 , k 2 , k 3 , n 1 , n 2 , n 3 ) = k 1 + k 1 k 2 n 1 + k 3 n 1 n 2 + n 1 n 2

  29. Cube and Superpoly 12 Example ◮ f ( k 1 , k 2 , k 3 , n 1 , n 2 , n 3 ) = k 1 + k 1 k 2 n 1 + k 3 n 1 n 2 + n 1 n 2 ◮ Rewrite f as term ���� f ( k 1 , k 2 , k 3 , n 1 , n 2 , n 3 ) = ( k 3 + 1) n 1 n 2 +( k 1 + k 1 k 2 n 1 ) � �� � superpoly

  30. Cube and Superpoly 12 Example ◮ f ( k 1 , k 2 , k 3 , n 1 , n 2 , n 3 ) = k 1 + k 1 k 2 n 1 + k 3 n 1 n 2 + n 1 n 2 ◮ Rewrite f as term ���� f ( k 1 , k 2 , k 3 , n 1 , n 2 , n 3 ) = ( k 3 + 1) n 1 n 2 +( k 1 + k 1 k 2 n 1 ) � �� � superpoly ◮ { n 1 , n 2 } involved in term are referred as cube variables

  31. Cube and Superpoly 12 Example ◮ f ( k 1 , k 2 , k 3 , n 1 , n 2 , n 3 ) = k 1 + k 1 k 2 n 1 + k 3 n 1 n 2 + n 1 n 2 ◮ Rewrite f as term ���� f ( k 1 , k 2 , k 3 , n 1 , n 2 , n 3 ) = ( k 3 + 1) n 1 n 2 +( k 1 + k 1 k 2 n 1 ) � �� � superpoly ◮ { n 1 , n 2 } involved in term are referred as cube variables ◮ Observe � f ( · ) = k 3 + 1 = superpoly { n 1 ,n 2 }∈ F 2 2

  32. Algebraic Degree 13 ◮ The no. of variables in the highest order monomial with non-zero coefficient

  33. Algebraic Degree 13 ◮ The no. of variables in the highest order monomial with non-zero coefficient Ex. The algebraic degree of f w.r.t. IV as variable is 2

  34. Algebraic Degree 13 ◮ The no. of variables in the highest order monomial with non-zero coefficient Ex. The algebraic degree of f w.r.t. IV as variable is 2 ◮ Cryptographic primitives with low algebraic degree are vulnerable to many attacks

  35. Algebraic Degree 13 ◮ The no. of variables in the highest order monomial with non-zero coefficient Ex. The algebraic degree of f w.r.t. IV as variable is 2 ◮ Cryptographic primitives with low algebraic degree are vulnerable to many attacks Question: Can we do the algebraic calculation?

  36. Algebraic Degree 13 ◮ The no. of variables in the highest order monomial with non-zero coefficient Ex. The algebraic degree of f w.r.t. IV as variable is 2 ◮ Cryptographic primitives with low algebraic degree are vulnerable to many attacks Question: Can we do the algebraic calculation? Answer: It is a hard problem.

  37. Algebraic Degree 13 ◮ The no. of variables in the highest order monomial with non-zero coefficient Ex. The algebraic degree of f w.r.t. IV as variable is 2 ◮ Cryptographic primitives with low algebraic degree are vulnerable to many attacks Question: Can we do the algebraic calculation? Answer: It is a hard problem. Since after sufficient no. of rounds, a well-designed stream cipher has complicated expression

  38. Our Contribution

  39. Our Contribution 15 ◮ We give an algorithm which iteratively approximates the algebraic degree of TRIAD-AE

  40. Our Contribution 15 ◮ We give an algorithm which iteratively approximates the algebraic degree of TRIAD-AE ◮ We provide a method to search good cube

  41. Our Contribution 15 ◮ We give an algorithm which iteratively approximates the algebraic degree of TRIAD-AE ◮ We provide a method to search good cube ◮ We observe some cubes in the reduced version of the cipher

  42. Approximation of Algebraic Degree of TRIAD-AE 16 Let A t , B t and C t be the corresponding states of NFSRs 1 A , B and C (resp. of length n A , n B and n C ) at clock t given by 1 Non-linear feedback shift registers

  43. Approximation of Algebraic Degree of TRIAD-AE 16 Let A t , B t and C t be the corresponding states of NFSRs 1 A , B and C (resp. of length n A , n B and n C ) at clock t given by A t = ( a t , a t − 1 , . . . , a t − n A +1 ) , B t = ( b t , b t − 1 , . . . , b t − n B +1 ) , C t = ( c t , c t − 1 , . . . , c t − n C +1 ) . And the corresponding feedback functions are given by a t = c t − i 1 · c t − i 2 ⊕ l A ( s ( t − 1) ) , b t = a t − j 1 · a t − j 2 ⊕ b t − j 3 · c t − j 3 ⊕ l B ( s ( t − 1) ) , c t = b t − k 1 · b t − k 2 ⊕ l C ( s ( t − 1) ) , 1 Non-linear feedback shift registers

  44. Approximation of Algebraic Degree of TRIAD-AE 16 Let A t , B t and C t be the corresponding states of NFSRs 1 A , B and C (resp. of length n A , n B and n C ) at clock t given by A t = ( a t , a t − 1 , . . . , a t − n A +1 ) , B t = ( b t , b t − 1 , . . . , b t − n B +1 ) , C t = ( c t , c t − 1 , . . . , c t − n C +1 ) . And the corresponding feedback functions are given by a t = c t − i 1 · c t − i 2 ⊕ l A ( s ( t − 1) ) , b t = a t − j 1 · a t − j 2 ⊕ b t − j 3 · c t − j 3 ⊕ l B ( s ( t − 1) ) , c t = b t − k 1 · b t − k 2 ⊕ l C ( s ( t − 1) ) , where 1 ≤ j 1 < j 2 < n A and j 2 < j 3 < n B = n C . 1 Non-linear feedback shift registers

  45. Algorithm 1 17 ◮ To estimate the degree of b t , calculate the degree of quadratic and linear part separately and take their max

  46. Algorithm 1 17 ◮ To estimate the degree of b t , calculate the degree of quadratic and linear part separately and take their max ◮ Handle 4 different cases for clock t ◮ ( t − j 1 ) ≤ 0

  47. Algorithm 1 17 ◮ To estimate the degree of b t , calculate the degree of quadratic and linear part separately and take their max ◮ Handle 4 different cases for clock t ◮ ( t − j 1 ) ≤ 0 ◮ 1 + j 1 ≤ t ≤ j 2

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