SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
SHA3
Reporter: Jyun-Yao Huang (allen501pc@gmail.com)
Date: June 4th, 2013
1SHA3
Outline
• Introduction
• SHA3
• Security Analysis
• Experiments
• Conclusion
2SHA3
Introduction
• In 2005, Wang et al. introduced serious concerns about the
security of SHA-1.
• NIST opened a public competition on November 2, 2007, to
develop a new cryptographic hash algorithm (referred to as
SHA-3) to augment the hash algorithms specified in Federal
Information Processing Standard (FIPS) 180-2, Secure Hash
Standard
• 1st -round: 51 candidates in 2008.
• 2nd-round: 14 candidates in 2009.
• 3rd -round: 5 candidates in 2010.
SHA3 3
Introduction: Keccak wins!
• Keccak (Bertoni, G., Daemen, J., Peeters, M., Van Assche, G.)
announced as the SHA-3 winner on October 2, 2012
SHA3 4
Table 1: The five final candidates of SHA3
The Keccak Team
• Michaël Peeters, Guido Bertoni, Gilles Van Assche and Joan Daemen.
SHA3 5
Introduction: The Beginning Ideas of Keccak
• RADIOGATUN [NIST 2nd Work shop, 2006]
• Variable-length output
• Expressing security claim: non-trivial exercise
• But, neither did third-party cryptanalysis
• NIST SHA-3 deadline approaching …
• U-turn: design a sponge with strong permutation f
• Sponge functions
• closest thing to a random oracle with a finite state
• Sponge construction calling random permutation
SHA3 6
SHA3
• Sponge Construction
• Keccak Functions
• Keccak-f Permutation
• The algorithms of each operations
SHA3 7
Sponge Construction
• SPONGE[f, pad, r]
• f: fixed-length permutation which operates b bits.
• pad: padding rule which is denoted by M||pad[b](|M|), where M is the sign
of message.
• r: bit rate.
• c:capacity equals to b – r and c<b
SHA3 8
Sponge Construction(2)
SHA3 9
Absorbing Phase
Squeezing Phase
KECCAK Functions
• By default, c=576 , b=1600, nr=24.
SHA3 10
The KECCAK-f permutation(1)
• KECCAK([ ] ) is a family of sponge functions that use as
a building block a permutation from a set of 7 permutations.
• The 7 permutations indicated by KECCAK-f[b], where b=25×2l
and l ranges from 0~6. KECCAK-f[b] is a permutation over .
• Three dimension array on state a over GF(2), namely a[5][5][w],
where w = 2l.
• a[x][y][z]: x, y Z5 and z Zw.
• The mapping between bits of s and a is
• The 7 permutations(b): {25, 50, 100, 200,400, 800, 1600}
SHA3 11
Keccak-f State
SHA3 12
The KECCAK-f permutation(2)
• KECCAK-f[b] is an iterated permutation with a number of
rounds R, indexed by 0 to nr-1
SHA3 13
Algorithm of θ
• Without θ, the KECCAK-f function would not provide
diffusion of any significance.
• High average diffusion and low gate count: 2 XORs per bit.
SHA3 14
Algorithm of θ
SHA3 15
Algorithm of ρ
SHA3 16
Algorithm of π
SHA3 17
Algorithm of χ
• χ is the only non-linear mapping in Keccak-f.
• It could be implementable in parallel computing.
• It has algebraic degree 2, but the inverse may not be degree 2.
SHA3 18
Algorithm of ι
• It is aimed at disrupting symmetry.
• Without it, the round function would be translation-invariant in
the z direction and all rounds would be equal making Keccak-f
subject to attacks exploiting symmetry such as slide attacks.
SHA3 19
The KECCAK-f permutation(3)
• Addition and multiplications are in GF(2) except RC[ir].
• are defined as the output of LFSR(linear
feedback shift register.)
• Note that nr = 12 + 2l
SHA3 20
The all procedures
SHA3 21
The all procedures (cont.)
SHA3 22
The all procedures (cont.)
SHA3 23
The candidates of SHA3
SHA3 24
SecurityAnalysis
• Immunity of Generic Attacks:
• Given capacity c, the success probability is lower than
1- exp(-N(N+1)2-(c+1)) with N the number of calls to the underlying
permutation or its reverse. If 1<< N << 2c/2, this bounds simplifies to
2-(c+1)N2.
• The zero-sum distinguisher distinguisher for all 24 rounds has
the complexity of 21579
SHA3 25
Experiments: Hardware
• In Intel 8051 8-bits processor, 8-bits data bus, a 16-bit address
bus and 512 bytes RAM: 128 bytes for lower internal RAM,
128 bytes for higher internal RAM and 256 bytes of external
RAM (indirect access only)
SHA3 26
Experiments: My Experiment
• Platform
• CPU: i5-2450m RAM: 8GB
• Programming language : Microsoft C#
• Testing Data: the message with 1, 10, 100 million bytes.
• It runs 10 times and extracts the average values.
• Algorithms for testing: MD5, SHA256, SHA3-512
27SHA3
Case(bytes) MD5 SHA256 SHA3-512
1 million 1.56001 31.20007 118.56019
10 million 35.88007 110.7602 1180.92206
100 million 352.56065 1098.24191 12124.34128
Table 2: The experimental result in milliseconds
Conclusions
• SHA3 is the next hash function in the future. It can provide a
secure scheme which provides the closest thing to a random
oracle with a finite state.
• It’s more slower than SHA256.
• However, it provides a good hardware design architecture to
make manufactures implement it.
SHA3 28
Reference
• Bertoni, G., Daemen, J., Peeters, M., Van Assche, G.: Keccak
sponge function family main document,
http://keccak.noekeon.org/Keccak-main-2.1.pdf
• Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van
Assche,” The Keccak sponge function family”,
http://keccak.noekeon.org/
• Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van
Assche,” Keccak implementation overview”,
http://keccak.noekeon.org/
SHA3 29
Appendices: Zero-Sum Distinguisher
SHA3 30

Mais conteúdo relacionado

Mais procurados

Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)DUET
 
Triple Data Encryption Standard (t-DES)
Triple Data Encryption Standard (t-DES) Triple Data Encryption Standard (t-DES)
Triple Data Encryption Standard (t-DES) Hardik Manocha
 
SHA- Secure hashing algorithm
SHA- Secure hashing algorithmSHA- Secure hashing algorithm
SHA- Secure hashing algorithmRuchi Maurya
 
Double DES & Triple DES
Double DES & Triple DESDouble DES & Triple DES
Double DES & Triple DESHemant Sharma
 
AES-Advanced Encryption Standard
AES-Advanced Encryption StandardAES-Advanced Encryption Standard
AES-Advanced Encryption StandardPrince Rachit
 
Cs8792 cns - unit iv
Cs8792   cns - unit ivCs8792   cns - unit iv
Cs8792 cns - unit ivArthyR3
 
DES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationDES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationsarhadisoftengg
 
AES KEY EXPANSION .pptx
AES KEY EXPANSION .pptxAES KEY EXPANSION .pptx
AES KEY EXPANSION .pptxAhmudulHassan
 
What is AES? Advanced Encryption Standards
What is AES? Advanced Encryption StandardsWhat is AES? Advanced Encryption Standards
What is AES? Advanced Encryption StandardsFaisal Shahzad Khan
 
Transposition cipher
Transposition cipherTransposition cipher
Transposition cipherAntony Alex
 
Cryptographic Hashing Functions
Cryptographic Hashing FunctionsCryptographic Hashing Functions
Cryptographic Hashing FunctionsYusuf Uzun
 
Message Authentication
Message AuthenticationMessage Authentication
Message Authenticationchauhankapil
 
Diffie hellman key exchange algorithm
Diffie hellman key exchange algorithmDiffie hellman key exchange algorithm
Diffie hellman key exchange algorithmSunita Kharayat
 
Topic20 The RC4 Algorithm.pptx
Topic20 The RC4 Algorithm.pptxTopic20 The RC4 Algorithm.pptx
Topic20 The RC4 Algorithm.pptxUrjaDhabarde
 

Mais procurados (20)

Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)Secure Hash Algorithm (SHA-512)
Secure Hash Algorithm (SHA-512)
 
Hashing
HashingHashing
Hashing
 
Triple Data Encryption Standard (t-DES)
Triple Data Encryption Standard (t-DES) Triple Data Encryption Standard (t-DES)
Triple Data Encryption Standard (t-DES)
 
Hash Function
Hash Function Hash Function
Hash Function
 
SHA- Secure hashing algorithm
SHA- Secure hashing algorithmSHA- Secure hashing algorithm
SHA- Secure hashing algorithm
 
Double DES & Triple DES
Double DES & Triple DESDouble DES & Triple DES
Double DES & Triple DES
 
AES-Advanced Encryption Standard
AES-Advanced Encryption StandardAES-Advanced Encryption Standard
AES-Advanced Encryption Standard
 
Cs8792 cns - unit iv
Cs8792   cns - unit ivCs8792   cns - unit iv
Cs8792 cns - unit iv
 
DES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentationDES (Data Encryption Standard) pressentation
DES (Data Encryption Standard) pressentation
 
AES KEY EXPANSION .pptx
AES KEY EXPANSION .pptxAES KEY EXPANSION .pptx
AES KEY EXPANSION .pptx
 
What is AES? Advanced Encryption Standards
What is AES? Advanced Encryption StandardsWhat is AES? Advanced Encryption Standards
What is AES? Advanced Encryption Standards
 
Hash function
Hash function Hash function
Hash function
 
IP Security
IP SecurityIP Security
IP Security
 
Hash crypto
Hash cryptoHash crypto
Hash crypto
 
Transposition cipher
Transposition cipherTransposition cipher
Transposition cipher
 
Cryptographic Hashing Functions
Cryptographic Hashing FunctionsCryptographic Hashing Functions
Cryptographic Hashing Functions
 
Message Authentication
Message AuthenticationMessage Authentication
Message Authentication
 
Rc4
Rc4Rc4
Rc4
 
Diffie hellman key exchange algorithm
Diffie hellman key exchange algorithmDiffie hellman key exchange algorithm
Diffie hellman key exchange algorithm
 
Topic20 The RC4 Algorithm.pptx
Topic20 The RC4 Algorithm.pptxTopic20 The RC4 Algorithm.pptx
Topic20 The RC4 Algorithm.pptx
 

Destaque

The SHA Hashing Algorithm
The SHA Hashing AlgorithmThe SHA Hashing Algorithm
The SHA Hashing AlgorithmBob Landstrom
 
The MD5 hashing algorithm
The MD5 hashing algorithmThe MD5 hashing algorithm
The MD5 hashing algorithmBob Landstrom
 
Fungsi Hash & Algoritma SHA-256 - Presentation
Fungsi Hash & Algoritma SHA-256 - PresentationFungsi Hash & Algoritma SHA-256 - Presentation
Fungsi Hash & Algoritma SHA-256 - PresentationAditya Gusti Tammam
 
Hash Function & Analysis
Hash Function & AnalysisHash Function & Analysis
Hash Function & AnalysisPawandeep Kaur
 
Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Hash Functions, the MD5 Algorithm and the Future (SHA-3)Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Hash Functions, the MD5 Algorithm and the Future (SHA-3)Dylan Field
 
Routing algorithm
Routing algorithmRouting algorithm
Routing algorithmfarimoin
 

Destaque (11)

The SHA Hashing Algorithm
The SHA Hashing AlgorithmThe SHA Hashing Algorithm
The SHA Hashing Algorithm
 
Secure hashing algorithm
Secure hashing algorithmSecure hashing algorithm
Secure hashing algorithm
 
MD5Algorithm
MD5AlgorithmMD5Algorithm
MD5Algorithm
 
The MD5 hashing algorithm
The MD5 hashing algorithmThe MD5 hashing algorithm
The MD5 hashing algorithm
 
Md5
Md5Md5
Md5
 
Fungsi Hash & Algoritma SHA-256 - Presentation
Fungsi Hash & Algoritma SHA-256 - PresentationFungsi Hash & Algoritma SHA-256 - Presentation
Fungsi Hash & Algoritma SHA-256 - Presentation
 
Hash Function & Analysis
Hash Function & AnalysisHash Function & Analysis
Hash Function & Analysis
 
Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Hash Functions, the MD5 Algorithm and the Future (SHA-3)Hash Functions, the MD5 Algorithm and the Future (SHA-3)
Hash Functions, the MD5 Algorithm and the Future (SHA-3)
 
Hash Function
Hash FunctionHash Function
Hash Function
 
Secure Hash Algorithm
Secure Hash AlgorithmSecure Hash Algorithm
Secure Hash Algorithm
 
Routing algorithm
Routing algorithmRouting algorithm
Routing algorithm
 

Semelhante a Sha3

Chaotic substitution box design for block ciphers
Chaotic substitution box design for block  ciphersChaotic substitution box design for block  ciphers
Chaotic substitution box design for block ciphersHammad Haleem
 
Practical attacks on commercial white-box cryptography solutions
Practical attacks on commercial white-box cryptography solutionsPractical attacks on commercial white-box cryptography solutions
Practical attacks on commercial white-box cryptography solutionsLINE Corporation
 
Overview on Cryptography and Network Security
Overview on Cryptography and Network SecurityOverview on Cryptography and Network Security
Overview on Cryptography and Network SecurityDr. Rupa Ch
 
Chap06 block cipher operation
Chap06 block cipher operationChap06 block cipher operation
Chap06 block cipher operationNam Yong Kim
 
trojan detection
trojan detectiontrojan detection
trojan detectionSRI NISHITH
 
Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks, arXiv e-...
Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks, arXiv e-...Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks, arXiv e-...
Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks, arXiv e-...ssuser2624f71
 
Cycle’s topological optimizations and the iterative decoding problem on gener...
Cycle’s topological optimizations and the iterative decoding problem on gener...Cycle’s topological optimizations and the iterative decoding problem on gener...
Cycle’s topological optimizations and the iterative decoding problem on gener...Usatyuk Vasiliy
 
00868 sg brief-intro-to-information-theory
00868 sg brief-intro-to-information-theory00868 sg brief-intro-to-information-theory
00868 sg brief-intro-to-information-theorypunithkumar M B
 
Challenging Web-Scale Graph Analytics with Apache Spark
Challenging Web-Scale Graph Analytics with Apache SparkChallenging Web-Scale Graph Analytics with Apache Spark
Challenging Web-Scale Graph Analytics with Apache SparkDatabricks
 
Challenging Web-Scale Graph Analytics with Apache Spark with Xiangrui Meng
Challenging Web-Scale Graph Analytics with Apache Spark with Xiangrui MengChallenging Web-Scale Graph Analytics with Apache Spark with Xiangrui Meng
Challenging Web-Scale Graph Analytics with Apache Spark with Xiangrui MengDatabricks
 
Smit_Patel_Layout_Design_Resume_Final
Smit_Patel_Layout_Design_Resume_FinalSmit_Patel_Layout_Design_Resume_Final
Smit_Patel_Layout_Design_Resume_FinalSMIT A. PATEL
 
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Hemant Jha
 
ImplementingCryptoSecurityARMCortex_Doin
ImplementingCryptoSecurityARMCortex_DoinImplementingCryptoSecurityARMCortex_Doin
ImplementingCryptoSecurityARMCortex_DoinJonny Doin
 
Random access scan
Random access scan Random access scan
Random access scan Harish Peta
 
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...Javed Barkatullah
 
CH3_Gate Level Minimization.pdf
CH3_Gate Level Minimization.pdfCH3_Gate Level Minimization.pdf
CH3_Gate Level Minimization.pdfSanjoySana2
 
1 Cryptography Introduction_shared.ppt
1 Cryptography Introduction_shared.ppt1 Cryptography Introduction_shared.ppt
1 Cryptography Introduction_shared.pptssuser0cd7c9
 

Semelhante a Sha3 (20)

Chaotic substitution box design for block ciphers
Chaotic substitution box design for block  ciphersChaotic substitution box design for block  ciphers
Chaotic substitution box design for block ciphers
 
Practical attacks on commercial white-box cryptography solutions
Practical attacks on commercial white-box cryptography solutionsPractical attacks on commercial white-box cryptography solutions
Practical attacks on commercial white-box cryptography solutions
 
Overview on Cryptography and Network Security
Overview on Cryptography and Network SecurityOverview on Cryptography and Network Security
Overview on Cryptography and Network Security
 
Chap06 block cipher operation
Chap06 block cipher operationChap06 block cipher operation
Chap06 block cipher operation
 
trojan detection
trojan detectiontrojan detection
trojan detection
 
Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks, arXiv e-...
Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks, arXiv e-...Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks, arXiv e-...
Weisfeiler and Leman Go Neural: Higher-order Graph Neural Networks, arXiv e-...
 
lec16-memory.ppt
lec16-memory.pptlec16-memory.ppt
lec16-memory.ppt
 
20141105 asfws-norx-slides
20141105 asfws-norx-slides20141105 asfws-norx-slides
20141105 asfws-norx-slides
 
Cycle’s topological optimizations and the iterative decoding problem on gener...
Cycle’s topological optimizations and the iterative decoding problem on gener...Cycle’s topological optimizations and the iterative decoding problem on gener...
Cycle’s topological optimizations and the iterative decoding problem on gener...
 
00868 sg brief-intro-to-information-theory
00868 sg brief-intro-to-information-theory00868 sg brief-intro-to-information-theory
00868 sg brief-intro-to-information-theory
 
Challenging Web-Scale Graph Analytics with Apache Spark
Challenging Web-Scale Graph Analytics with Apache SparkChallenging Web-Scale Graph Analytics with Apache Spark
Challenging Web-Scale Graph Analytics with Apache Spark
 
Challenging Web-Scale Graph Analytics with Apache Spark with Xiangrui Meng
Challenging Web-Scale Graph Analytics with Apache Spark with Xiangrui MengChallenging Web-Scale Graph Analytics with Apache Spark with Xiangrui Meng
Challenging Web-Scale Graph Analytics with Apache Spark with Xiangrui Meng
 
Smit_Patel_Layout_Design_Resume_Final
Smit_Patel_Layout_Design_Resume_FinalSmit_Patel_Layout_Design_Resume_Final
Smit_Patel_Layout_Design_Resume_Final
 
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
Vlsiphysicaldesignautomationonpartitioning 120219012744-phpapp01
 
ImplementingCryptoSecurityARMCortex_Doin
ImplementingCryptoSecurityARMCortex_DoinImplementingCryptoSecurityARMCortex_Doin
ImplementingCryptoSecurityARMCortex_Doin
 
Random access scan
Random access scan Random access scan
Random access scan
 
Salsa20 Cipher
Salsa20 CipherSalsa20 Cipher
Salsa20 Cipher
 
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
GOLDSTRIKETM 1: COINTERRA’S FIRST GENERATION CRYPTO-CURRENCY PROCESSOR FOR BI...
 
CH3_Gate Level Minimization.pdf
CH3_Gate Level Minimization.pdfCH3_Gate Level Minimization.pdf
CH3_Gate Level Minimization.pdf
 
1 Cryptography Introduction_shared.ppt
1 Cryptography Introduction_shared.ppt1 Cryptography Introduction_shared.ppt
1 Cryptography Introduction_shared.ppt
 

Sha3

  • 1. SHA3 Reporter: Jyun-Yao Huang (allen501pc@gmail.com) Date: June 4th, 2013 1SHA3
  • 2. Outline • Introduction • SHA3 • Security Analysis • Experiments • Conclusion 2SHA3
  • 3. Introduction • In 2005, Wang et al. introduced serious concerns about the security of SHA-1. • NIST opened a public competition on November 2, 2007, to develop a new cryptographic hash algorithm (referred to as SHA-3) to augment the hash algorithms specified in Federal Information Processing Standard (FIPS) 180-2, Secure Hash Standard • 1st -round: 51 candidates in 2008. • 2nd-round: 14 candidates in 2009. • 3rd -round: 5 candidates in 2010. SHA3 3
  • 4. Introduction: Keccak wins! • Keccak (Bertoni, G., Daemen, J., Peeters, M., Van Assche, G.) announced as the SHA-3 winner on October 2, 2012 SHA3 4 Table 1: The five final candidates of SHA3
  • 5. The Keccak Team • Michaël Peeters, Guido Bertoni, Gilles Van Assche and Joan Daemen. SHA3 5
  • 6. Introduction: The Beginning Ideas of Keccak • RADIOGATUN [NIST 2nd Work shop, 2006] • Variable-length output • Expressing security claim: non-trivial exercise • But, neither did third-party cryptanalysis • NIST SHA-3 deadline approaching … • U-turn: design a sponge with strong permutation f • Sponge functions • closest thing to a random oracle with a finite state • Sponge construction calling random permutation SHA3 6
  • 7. SHA3 • Sponge Construction • Keccak Functions • Keccak-f Permutation • The algorithms of each operations SHA3 7
  • 8. Sponge Construction • SPONGE[f, pad, r] • f: fixed-length permutation which operates b bits. • pad: padding rule which is denoted by M||pad[b](|M|), where M is the sign of message. • r: bit rate. • c:capacity equals to b – r and c<b SHA3 8
  • 10. KECCAK Functions • By default, c=576 , b=1600, nr=24. SHA3 10
  • 11. The KECCAK-f permutation(1) • KECCAK([ ] ) is a family of sponge functions that use as a building block a permutation from a set of 7 permutations. • The 7 permutations indicated by KECCAK-f[b], where b=25×2l and l ranges from 0~6. KECCAK-f[b] is a permutation over . • Three dimension array on state a over GF(2), namely a[5][5][w], where w = 2l. • a[x][y][z]: x, y Z5 and z Zw. • The mapping between bits of s and a is • The 7 permutations(b): {25, 50, 100, 200,400, 800, 1600} SHA3 11
  • 13. The KECCAK-f permutation(2) • KECCAK-f[b] is an iterated permutation with a number of rounds R, indexed by 0 to nr-1 SHA3 13
  • 14. Algorithm of θ • Without θ, the KECCAK-f function would not provide diffusion of any significance. • High average diffusion and low gate count: 2 XORs per bit. SHA3 14
  • 18. Algorithm of χ • χ is the only non-linear mapping in Keccak-f. • It could be implementable in parallel computing. • It has algebraic degree 2, but the inverse may not be degree 2. SHA3 18
  • 19. Algorithm of ι • It is aimed at disrupting symmetry. • Without it, the round function would be translation-invariant in the z direction and all rounds would be equal making Keccak-f subject to attacks exploiting symmetry such as slide attacks. SHA3 19
  • 20. The KECCAK-f permutation(3) • Addition and multiplications are in GF(2) except RC[ir]. • are defined as the output of LFSR(linear feedback shift register.) • Note that nr = 12 + 2l SHA3 20
  • 22. The all procedures (cont.) SHA3 22
  • 23. The all procedures (cont.) SHA3 23
  • 24. The candidates of SHA3 SHA3 24
  • 25. SecurityAnalysis • Immunity of Generic Attacks: • Given capacity c, the success probability is lower than 1- exp(-N(N+1)2-(c+1)) with N the number of calls to the underlying permutation or its reverse. If 1<< N << 2c/2, this bounds simplifies to 2-(c+1)N2. • The zero-sum distinguisher distinguisher for all 24 rounds has the complexity of 21579 SHA3 25
  • 26. Experiments: Hardware • In Intel 8051 8-bits processor, 8-bits data bus, a 16-bit address bus and 512 bytes RAM: 128 bytes for lower internal RAM, 128 bytes for higher internal RAM and 256 bytes of external RAM (indirect access only) SHA3 26
  • 27. Experiments: My Experiment • Platform • CPU: i5-2450m RAM: 8GB • Programming language : Microsoft C# • Testing Data: the message with 1, 10, 100 million bytes. • It runs 10 times and extracts the average values. • Algorithms for testing: MD5, SHA256, SHA3-512 27SHA3 Case(bytes) MD5 SHA256 SHA3-512 1 million 1.56001 31.20007 118.56019 10 million 35.88007 110.7602 1180.92206 100 million 352.56065 1098.24191 12124.34128 Table 2: The experimental result in milliseconds
  • 28. Conclusions • SHA3 is the next hash function in the future. It can provide a secure scheme which provides the closest thing to a random oracle with a finite state. • It’s more slower than SHA256. • However, it provides a good hardware design architecture to make manufactures implement it. SHA3 28
  • 29. Reference • Bertoni, G., Daemen, J., Peeters, M., Van Assche, G.: Keccak sponge function family main document, http://keccak.noekeon.org/Keccak-main-2.1.pdf • Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche,” The Keccak sponge function family”, http://keccak.noekeon.org/ • Guido Bertoni, Joan Daemen, Michaël Peeters and Gilles Van Assche,” Keccak implementation overview”, http://keccak.noekeon.org/ SHA3 29