new techniques for trail bounds and application to
play

New techniques for trail bounds and application to differential - PowerPoint PPT Presentation

New techniques for trail bounds and application to differential trails in Keccak Silvia Mella 1 , 2 Joan Daemen 1 , 3 Gilles Van Assche 1 1 STMicroelectronics 2 University of Milan 3 Radboud University Fast Software Encryption March 5-8, 2017


  1. New techniques for trail bounds and application to differential trails in Keccak Silvia Mella 1 , 2 Joan Daemen 1 , 3 Gilles Van Assche 1 1 STMicroelectronics 2 University of Milan 3 Radboud University Fast Software Encryption March 5-8, 2017 S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 1 / 31

  2. Outline 1 Introduction 2 Generating trails 3 Scanning space of trails in Keccak - f 4 Experimental results 5 Conclusions S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 2 / 31

  3. Introduction Outline 1 Introduction 2 Generating trails 3 Scanning space of trails in Keccak - f 4 Experimental results 5 Conclusions S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 3 / 31

  4. Introduction Differential trails Differential trails in iterated mappings ◮ Trail: the sequence of differences after each round ◮ DP(Q): fraction of pairs that exhibit q i differences S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 4 / 31

  5. Introduction Differential trails Differential trails and weight w = − log 2 ( DP ) ◮ The weight is the number of binary conditions that a pair must satisfy to exhibit q i differences ◮ If independent conditions and w ( Q ) < b : #pairs( Q ) ≈ 2 b − w ( Q ) S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 5 / 31

  6. Introduction Differential trails Trail extension Given a trail, we can extend it ◮ forward: iterate over all differences R -compatible with q 5 ◮ backward: iterate over all differences R − 1 -compatible with q 1 Extension can be done recursively S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 6 / 31

  7. Introduction Differential trails Trail extension Given a trail, we can extend it ◮ forward: iterate over all differences R -compatible with q 5 ◮ backward: iterate over all differences R − 1 -compatible with q 1 Extension can be done recursively S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 6 / 31

  8. Introduction Differential trails Trail extension Given a trail, we can extend it ◮ forward: iterate over all differences R -compatible with q 5 ◮ backward: iterate over all differences R − 1 -compatible with q 1 Extension can be done recursively S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 6 / 31

  9. Introduction Differential trails Trail extension Given a trail, we can extend it ◮ forward: iterate over all differences R -compatible with q 5 ◮ backward: iterate over all differences R − 1 -compatible with q 1 Extension can be done recursively S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 6 / 31

  10. Introduction Differential trails Trail cores ◮ Minimum reverse weight: w rev ( q 1 ) � min q 0 w ( q 0 , q 1 ) ◮ Can be used to lower bound set of trails ◮ Trail core: set of trails with q 1 , q 2 , . . . in common S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 7 / 31

  11. Introduction Goals of this work Goals of this work ◮ Present general techniques to generate trails ◮ Improve bounds of differential trails in Keccak - f ◮ By extending the space of trails in Keccak - f that can be scanned with given computation resources rounds Keccak - f [200] Keccak - f [400] Keccak - f [800] Keccak - f [1600] 2 8 8 8 8 3 20 this work this work 32 4 46 this work this work this work 5 this work this work this work this work 6 this work this work this work this work S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 8 / 31

  12. Generating trails Outline 1 Introduction 2 Generating trails 3 Scanning space of trails in Keccak - f 4 Experimental results 5 Conclusions S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 9 / 31

  13. Generating trails Second-order approach Generation of n-round trails of weight ≤ T First-order approach � T � Starting from 1-round differentials with weight ≤ n Second-order approach � 2 T � Starting from 2-round trails with weight ≤ n Fact The number of 2-round trails with weight ≤ 2 L is much smaller than the number of 1-round differentials with weight ≤ L . Example: AES AES has more than 10 11 round differentials with weight ≤ 15, but no 2-round trail with weight ≤ 30 S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 10 / 31

  14. Generating trails Tree traversal Generating 2-round trails as tree traversal ◮ 2-round trails are arranged in a tree ◮ Children are generated by adding groups of active bits without removing bits already added ◮ Pruning by lower bounding the weight of a node and its children S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 11 / 31

  15. Scanning space of trails in Keccak - f Outline 1 Introduction 2 Generating trails 3 Scanning space of trails in Keccak - f 4 Experimental results 5 Conclusions S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 12 / 31

  16. Scanning space of trails in Keccak - f Keccak - f Keccak - f Operates on 3D state: Round function with 5 steps: ◮ θ : mixing layer ◮ ρ : inter-slice bit transposition ◮ π : intra-slice bit transposition ◮ χ : non-linear layer state y ◮ ι : round constants z # rounds: 12 + 2 ℓ for width b = 2 ℓ 25 x ◮ 12 rounds in Keccak - f [25] ◮ (5 × 5)-bit slices ◮ 24 rounds in Keccak - f [1600] ◮ 2 ℓ -bit lanes ◮ parameter 0 ≤ ℓ < 7 S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 13 / 31

  17. Scanning space of trails in Keccak - f Keccak - f Keccak - f Operates on 3D state: Round function with 5 steps: ◮ θ : mixing layer ◮ ρ : inter-slice bit transposition ◮ π : intra-slice bit transposition ◮ χ : non-linear layer slice y ◮ ι : round constants z # rounds: 12 + 2 ℓ for width b = 2 ℓ 25 x ◮ 12 rounds in Keccak - f [25] ◮ (5 × 5)-bit slices ◮ 24 rounds in Keccak - f [1600] ◮ 2 ℓ -bit lanes ◮ parameter 0 ≤ ℓ < 7 S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 13 / 31

  18. Scanning space of trails in Keccak - f Keccak - f Keccak - f Operates on 3D state: Round function with 5 steps: ◮ θ : mixing layer ◮ ρ : inter-slice bit transposition ◮ π : intra-slice bit transposition ◮ χ : non-linear layer row y ◮ ι : round constants z # rounds: 12 + 2 ℓ for width b = 2 ℓ 25 x ◮ 12 rounds in Keccak - f [25] ◮ (5 × 5)-bit slices ◮ 24 rounds in Keccak - f [1600] ◮ 2 ℓ -bit lanes ◮ parameter 0 ≤ ℓ < 7 S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 13 / 31

  19. Scanning space of trails in Keccak - f Keccak - f Keccak - f Operates on 3D state: Round function with 5 steps: ◮ θ : mixing layer ◮ ρ : inter-slice bit transposition ◮ π : intra-slice bit transposition ◮ χ : non-linear layer column y ◮ ι : round constants z # rounds: 12 + 2 ℓ for width b = 2 ℓ 25 x ◮ 12 rounds in Keccak - f [25] ◮ (5 × 5)-bit slices ◮ 24 rounds in Keccak - f [1600] ◮ 2 ℓ -bit lanes ◮ parameter 0 ≤ ℓ < 7 S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 13 / 31

  20. Scanning space of trails in Keccak - f Keccak - f Properties of θ + = column parity θ e ff ect combine ◮ The θ map adds a pattern, that depends on the parity, to the state. ◮ Affected columns are complemented ◮ Unaffected columns are not changed S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 14 / 31

  21. Scanning space of trails in Keccak - f Keccak - f The parity Kernel + = column parity θ effect combine ◮ θ acts as the identity if parity is zero ◮ A state with parity zero is in the kernel (or in | K | ) ◮ A state with parity non-zero is outside the kernel (or in | N | ) S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 15 / 31

  22. Scanning space of trails in Keccak - f Trails in Keccak - f Differential trails in Keccak - f Round: linear step λ = π ◦ ρ ◦ θ and non-linear step χ ◮ a i fully determines b i = λ ( a i ) ◮ χ has degree 2: w ( b i − 1 ) independent of a i ◮ Minimum reverse weight: w rev ( a 1 ) � min b 0 w ( b 0 ) S. Mella, J. Daemen, G. Van Assche New techniques for trail bounds and application to differential trails in Keccak 16 / 31

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