new techniques for searching di ff erential trails in
play

New Techniques for Searching Di ff erential Trails in Keccak Guozhen - PowerPoint PPT Presentation

New Techniques for Searching Di ff erential Trails in Keccak Guozhen Liu, Weidong Qiu, Yi Tu Nanyang Technological University, Singapore Shanghai Jiao Tong University, China 3-Round Di ff erential Trail Core Search of Keccak Permutation 1 / 21


  1. New Techniques for Searching Di ff erential Trails in Keccak Guozhen Liu, Weidong Qiu, Yi Tu Nanyang Technological University, Singapore Shanghai Jiao Tong University, China 3-Round Di ff erential Trail Core Search of Keccak Permutation 1 / 21

  2. Overview Introduction 1 Brief Description of Keccak -f[1600] Previous Works on Di ff erential Trail Search New 3-Round Trial Core Search Strategy 2 Classification of Search Space Ideal Improvement Assumption General Search Algorithm Summary of Search Result 3-Round Di ff erential Trail Core Search of Keccak Permutation 2 / 21

  3. Introduction Brief Description of Keccak -f[1600] Keccak -f[1600] - the SHA3 Permutation Keccak -f[1600] permutation uses XOR, AND and NOT operations in its round function. The state size is 1600 bits, organized as a 5 × 5 array of 64-bit lanes with ( x, y, z ) coordinates. Each round consists of 5 steps, i.e., the linear θ , ρ , π , ι operation, and the nonlinear χ . R = ι ◦ χ ◦ π ◦ ρ ◦ θ 2 4 rounds. 3-Round Di ff erential Trail Core Search of Keccak Permutation 3 / 21

  4. Introduction Brief Description of Keccak -f[1600] Round Function of Keccak -f[1600] R = ι ◦ χ ◦ π ◦ ρ ◦ θ y z z x θ step adds two columns to current bit position (x,y,z). column sum c [ x ][ z ] = � 4 y =0 a [ x ][ y ][ z ] a [ x ][ y ][ z ] = c [ x − 1][ z ] ⊕ a [ x ][ y ][ z ] ⊕ c [ x + 1][ z − 1] 3-Round Di ff erential Trail Core Search of Keccak Permutation 4 / 21

  5. Introduction Brief Description of Keccak -f[1600] Round Function of Keccak -f[1600] R = ι ◦ χ ◦ π ◦ ρ ◦ θ ρ step: lane-level rotation. It rotates the 64 bits of each lane by a specific o ff set , which is determined by the coordinates [x,y] of the lane. 3-Round Di ff erential Trail Core Search of Keccak Permutation 5 / 21

  6. Introduction Brief Description of Keccak -f[1600] Round Function of Keccak -f[1600] R = ι ◦ χ ◦ π ◦ ρ ◦ θ π step: permutation on lanes. It rearranges the 25 bits of each slice. a [ y ][2 x + 3 y ][ z ] = a [ x ][ y ][ z ] . 3-Round Di ff erential Trail Core Search of Keccak Permutation 6 / 21

  7. Introduction Brief Description of Keccak -f[1600] Round Function of Keccak -f[1600] R = ι ◦ χ ◦ π ◦ ρ ◦ θ χ is the only nonlinear component. It is a row wise 5-bit Sbox. 3-Round Di ff erential Trail Core Search of Keccak Permutation 7 / 21

  8. Introduction Brief Description of Keccak -f[1600] Round Function of Keccak -f[1600] R = ι ◦ χ ◦ π ◦ ρ ◦ θ ι step: add a round constant to the state Add a round-dependent constant to the first lane to destroy the symmetry. Since it has no e ff ect on this kind of di ff erential trail search, we ignore it. 3-Round Di ff erential Trail Core Search of Keccak Permutation 8 / 21

  9. Introduction Previous Works on Di ff erential Trail Search Previous Results on Exhaustive Trail Search of Keccak -f[1600] Di ff erential Propagation Analysis from [DVA12] 3-round trails with propagation weight below T 3 = 36 are searched completely. Lower bound of 6-round trails is 74. New techniques for trail search [MDVA17] 3-round trail cores with threshold propagation weight T 3 = 45 are searched exhaustively. Lower bound on propagation weight of 4/5/6-round trails are improved accordingly. Our results We set T 3 = 53 for our search strategy. There is no theoretical proof for a satisfactory lower bound, but we indeed found many new trail cores. 3-Round Di ff erential Trail Core Search of Keccak Permutation 9 / 21

  10. New 3-Round Trial Core Search Strategy Classification of Search Space θ Property and 3-Round Trail Core Column Parity p of state α is the parity of all columns, i.e., p = P ( α ) . In CP Kernel and out CP Kernel. If p = 0 , θ has no e ff ect on α , α is called in CP Kernel denoted as | K | , otherwise, it’s out CP Kernel, denoted as | N | . We use parity and Kernel to represent column parity and column y z parity kernel. z x 3-round trail core χ λ λ β 0 ��� α 1 − → β 1 − → α 2 − → β 2 A 3-round trail core is denoted by ( α 1 , α 2 ) or ( β 1 , β 2 ) . Target 3-round trail cores The 3-round trail core ( β 1 , β 2 ) with propagation weight w rev ( α 1 ) a + w ( β 1 ) + w ( β 2 ) ≤ T 3 . a w rev ( α 1 ) refers to the optimal weight of β 0 which can propagate to α 1 3-Round Di ff erential Trail Core Search of Keccak Permutation 10 / 21

  11. <latexit sha1_base64="wru6bG+JPhHs0P57svuamOHSbA=">ACmXicfZHLSsNAFIYn8V5vVcGNm2ARXJVMFXThwgtKcaVoVWhKOJlOm6GTCzMnagl9J5/FnW/jtI2gRjw8P/83lnCVQqPrflj2zOzc/MLiUmV5ZXVtvbqx+aCTDHeYolM1FMAmksR8xYKlPwpVRyiQPLHYHAxzh+fudIie9xmPJOBP1Y9AQDNJZfNApiH4rveqRD9EUCp5yT1pTujCyAs4ljIWCt8dFRz9h6Nljn5xjX+4RplrfHEHfrXm1t1JOWVBC1EjRd341Xevm7As4jEyCVq3qZtiJweFgk+qniZ5imwAfR528gYIq47+aSzI2fPOF2nlyizYnQm7ncih0jrYRSYnRFgqH9nY/OvrJ1h7iTizjNkMdselEvkw4mznhMTlcozlAOjQCmhHmrw0JQwNAMs2KaQH9/uSweGnXq1untYe30vGjHItkhu2SfUHJETkmT3JAWYda2dWJdWlf2jn1mN+3r6VbKpgt8qPsu08nEdEL</latexit> <latexit sha1_base64="wru6bG+JPhHs0P57svuamOHSbA=">ACmXicfZHLSsNAFIYn8V5vVcGNm2ARXJVMFXThwgtKcaVoVWhKOJlOm6GTCzMnagl9J5/FnW/jtI2gRjw8P/83lnCVQqPrflj2zOzc/MLiUmV5ZXVtvbqx+aCTDHeYolM1FMAmksR8xYKlPwpVRyiQPLHYHAxzh+fudIie9xmPJOBP1Y9AQDNJZfNApiH4rveqRD9EUCp5yT1pTujCyAs4ljIWCt8dFRz9h6Nljn5xjX+4RplrfHEHfrXm1t1JOWVBC1EjRd341Xevm7As4jEyCVq3qZtiJweFgk+qniZ5imwAfR528gYIq47+aSzI2fPOF2nlyizYnQm7ncih0jrYRSYnRFgqH9nY/OvrJ1h7iTizjNkMdselEvkw4mznhMTlcozlAOjQCmhHmrw0JQwNAMs2KaQH9/uSweGnXq1untYe30vGjHItkhu2SfUHJETkmT3JAWYda2dWJdWlf2jn1mN+3r6VbKpgt8qPsu08nEdEL</latexit> <latexit sha1_base64="wru6bG+JPhHs0P57svuamOHSbA=">ACmXicfZHLSsNAFIYn8V5vVcGNm2ARXJVMFXThwgtKcaVoVWhKOJlOm6GTCzMnagl9J5/FnW/jtI2gRjw8P/83lnCVQqPrflj2zOzc/MLiUmV5ZXVtvbqx+aCTDHeYolM1FMAmksR8xYKlPwpVRyiQPLHYHAxzh+fudIie9xmPJOBP1Y9AQDNJZfNApiH4rveqRD9EUCp5yT1pTujCyAs4ljIWCt8dFRz9h6Nljn5xjX+4RplrfHEHfrXm1t1JOWVBC1EjRd341Xevm7As4jEyCVq3qZtiJweFgk+qniZ5imwAfR528gYIq47+aSzI2fPOF2nlyizYnQm7ncih0jrYRSYnRFgqH9nY/OvrJ1h7iTizjNkMdselEvkw4mznhMTlcozlAOjQCmhHmrw0JQwNAMs2KaQH9/uSweGnXq1untYe30vGjHItkhu2SfUHJETkmT3JAWYda2dWJdWlf2jn1mN+3r6VbKpgt8qPsu08nEdEL</latexit> <latexit sha1_base64="wru6bG+JPhHs0P57svuamOHSbA=">ACmXicfZHLSsNAFIYn8V5vVcGNm2ARXJVMFXThwgtKcaVoVWhKOJlOm6GTCzMnagl9J5/FnW/jtI2gRjw8P/83lnCVQqPrflj2zOzc/MLiUmV5ZXVtvbqx+aCTDHeYolM1FMAmksR8xYKlPwpVRyiQPLHYHAxzh+fudIie9xmPJOBP1Y9AQDNJZfNApiH4rveqRD9EUCp5yT1pTujCyAs4ljIWCt8dFRz9h6Nljn5xjX+4RplrfHEHfrXm1t1JOWVBC1EjRd341Xevm7As4jEyCVq3qZtiJweFgk+qniZ5imwAfR528gYIq47+aSzI2fPOF2nlyizYnQm7ncih0jrYRSYnRFgqH9nY/OvrJ1h7iTizjNkMdselEvkw4mznhMTlcozlAOjQCmhHmrw0JQwNAMs2KaQH9/uSweGnXq1untYe30vGjHItkhu2SfUHJETkmT3JAWYda2dWJdWlf2jn1mN+3r6VbKpgt8qPsu08nEdEL</latexit> New 3-Round Trial Core Search Strategy Classification of Search Space Classification of 3-Round Trail Core χ 0 χ 1 χ 2 λ λ λ α 0 → β 0 → α 1 → β 1 → α 2 → β 2 → α 3 − − − − − − According to whether α 1 and α 2 are in Kernel , 3-round trail cores can be classified into 4 1 categories. | K | K | trail cores, both α 1 and α 2 are in Kernel. | N | K | and | N | N | trail cores, with always α 1 out Kernel. (In our work, trail cores with either of the features are covered by the same strategy.) | K | N | trail cores with only α 2 in Kernel. For the last two cases, the search strategy are quite similar. But for | N | K | and | N | N | trails, the 2 trail core search starts from out Kernel α 1 , and from out Kernel α 2 for | K | N | trails. 3-Round Di ff erential Trail Core Search of Keccak Permutation 11 / 21

  12. New 3-Round Trial Core Search Strategy Classification of Search Space Search strategy for | K | K | trail cores First prepare all the theoretical candidate β 1 structures for in Kernel α 1 with m orbitals 1 . Store 1 them in a look up table. According to β 1 can propagate to α 1 which is in Kernel through λ − 1 = ρ − 1 ◦ π − 1 , construct the 2 possible α 1 Based on the relationship between α 1 and β 1 , filter α 1 , and extend forward by one round to obtain 3 the target three round trails 1 A group of 2 active bits in the same column is called an orbital 3-Round Di ff erential Trail Core Search of Keccak Permutation 12 / 21

  13. New 3-Round Trial Core Search Strategy Classification of Search Space An Example - | K | K | Trail Search Algorithm 4 orbitals at α 1 propagate to 3 slices at β 1 with { 3,3,2 } pattern From the look up table, we enumerate all the possible valid slice for z ′ 1 to obtain p ′′ 1 , p ′′ 2 and p ′′ 3 . Through λ − 1 = θ − 1 ◦ ρ − 1 ◦ π − 1 , p 1 , p 2 , and p 3 are determined. Then q 1 , q 2 , q 3 can be enumerated according to the orbital relation. Through π ◦ ρ ◦ θ , q ′′ 3 is determined. According to the valid 2-bit slices stored in the look up table, p ′′ 4 can be obtained, so p 4 is fixed, after that, q 4 can be enumerated according to the orbital relation. Until now, all the four orbitals with 8 bits are determined. Then we filter α 1 by checking q ′′ 1 , q ′′ 2 and q ′′ 4 are all at slice z ′ 2 or not and they result in in kernel slice at α 2 or not. Extend one round to get the target three round trail cores. 3-Round Di ff erential Trail Core Search of Keccak Permutation 13 / 21

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