Difference between revisions of "CubeHash"
(References sorted) |
m (→Building blocks: dashes added) |
||
(9 intermediate revisions by 3 users not shown) | |||
Line 45: | Line 45: | ||
A description of the tables is given [http://ehash.iaik.tugraz.at/wiki/Cryptanalysis_Categories#Individual_Hash_Function_Tables here]. | A description of the tables is given [http://ehash.iaik.tugraz.at/wiki/Cryptanalysis_Categories#Individual_Hash_Function_Tables here]. | ||
+ | Recommended security parameters: r/b = '''16/32''' (n=224,256); '''16/32''' (n=384,512) | ||
=== Hash function === | === Hash function === | ||
− | Here we list results on the | + | Here we list results on the hash function according to the NIST requirements. The only allowed modification is to change the security parameter. |
− | + | {| border="1" cellpadding="4" cellspacing="0" class="wikitable sortable" style="text-align:center" | |
− | |||
− | {| border="1" cellpadding="4" cellspacing="0" class="wikitable" style="text-align:center" | ||
|- style="background:#efefef;" | |- style="background:#efefef;" | ||
| Type of Analysis || Hash Size (n) || Parameters/Variants || Compression Function Calls || Memory Requirements || Reference | | Type of Analysis || Hash Size (n) || Parameters/Variants || Compression Function Calls || Memory Requirements || Reference | ||
+ | |- | ||
+ | | style="background:greenyellow" | preimage || 384,512 || r/32 || 2<sup>383.7</sup> || - || [http://eprint.iacr.org/2010/273.pdf Ferguson,Lucks,McKay] | ||
+ | |- | ||
+ | | preimage || 384,512 || r/33 || 2<sup>257.6</sup> || - || [http://eprint.iacr.org/2010/273.pdf Ferguson,Lucks,McKay] | ||
|- | |- | ||
| collision || 512 || 7/64 || 2<sup>203</sup> || - || [http://eprint.iacr.org/2009/382.pdf Brier,Khazaei,Meier,Peyrin] | | collision || 512 || 7/64 || 2<sup>203</sup> || - || [http://eprint.iacr.org/2009/382.pdf Brier,Khazaei,Meier,Peyrin] | ||
Line 86: | Line 89: | ||
| preimage || 512 || r/4 || 2<sup>496</sup> || - || [http://ehash.iaik.tugraz.at/uploads/6/6c/Cubehash.pdf Khovratovich,Nikolic',Weinmann] | | preimage || 512 || r/4 || 2<sup>496</sup> || - || [http://ehash.iaik.tugraz.at/uploads/6/6c/Cubehash.pdf Khovratovich,Nikolic',Weinmann] | ||
|- | |- | ||
− | | style="background:greenyellow" | preimage || 512 || | + | | style="background:greenyellow" | preimage || 512 || r/1 (round 1) || 2<sup>511</sup> || 2<sup>508</sup> || [http://ehash.iaik.tugraz.at/uploads/6/6c/Cubehash.pdf Khovratovich,Nikolic',Weinmann] |
|- | |- | ||
− | | style="background:greenyellow" | preimage || all || | + | | style="background:greenyellow" | preimage || all || r/b || 2<sup>513-4b</sup> || - || [http://eprint.iacr.org/2008/486.pdf Aumasson,Meier,Naya-Plasencia,Peyrin] |
|- | |- | ||
− | | collision || all || | + | | collision || all || r/b || 2<sup>521-4b-log b</sup> || - || [http://cubehash.cr.yp.to/submission/generic.pdf submission document] |
|- | |- | ||
− | | preimage || all || | + | | style="background:greenyellow" | preimage || all || r/b || 2<sup>522-4b-log b</sup> || - || [http://cubehash.cr.yp.to/submission/generic.pdf submission document] |
|- | |- | ||
|} | |} | ||
Line 103: | Line 106: | ||
Note that these results assume more direct control or access over some internal variables (aka. free-start, pseudo, compression function, block cipher, or permutation attacks). | Note that these results assume more direct control or access over some internal variables (aka. free-start, pseudo, compression function, block cipher, or permutation attacks). | ||
− | {| border="1" cellpadding="4" cellspacing="0" class="wikitable" style="text-align:center" | + | {| border="1" cellpadding="4" cellspacing="0" class="wikitable sortable" style="text-align:center" |
|- style="background:#efefef;" | |- style="background:#efefef;" | ||
| Type of Analysis || Hash Function Part || Hash Size (n) || Parameters/Variants || Compression Function Calls || Memory Requirements || Reference | | Type of Analysis || Hash Function Part || Hash Size (n) || Parameters/Variants || Compression Function Calls || Memory Requirements || Reference | ||
− | |- | + | |- |
− | | observations || hash || all || || || | + | | quantum preimage || hash || 512 || || 2<sup>192</sup> || - || [http://eprint.iacr.org/2008/506.pdf Leurent] |
+ | |- | ||
+ | | distinguisher || permutation|| all || 14 rounds || 2<sup>812</sup> || - || [http://eprint.iacr.org/2010/535.pdf Ashur,Dunkelman] | ||
+ | |- | ||
+ | | distinguisher || permutation|| all || 11 rounds || 2<sup>470</sup> || - || [http://eprint.iacr.org/2010/535.pdf Ashur,Dunkelman] | ||
+ | |- | ||
+ | | observations || hash || all || || - || - || [http://eprint.iacr.org/2010/262.pdf Kaminsky] | ||
+ | |- | ||
+ | | observations || hash || all || || - || - || [http://eprint.iacr.org/2009/407.pdf Bloom,Kaminsky] | ||
|- | |- | ||
| multi-collision || hash || all || || 2<sup>513-4b</sup> || - || [http://eprint.iacr.org/2008/486.pdf Aumasson,Meier,Naya-Plasencia,Peyrin] | | multi-collision || hash || all || || 2<sup>513-4b</sup> || - || [http://eprint.iacr.org/2008/486.pdf Aumasson,Meier,Naya-Plasencia,Peyrin] | ||
|- | |- | ||
− | | observations || permutation|| all || || | + | | observations || permutation|| all || || - || - || [http://eprint.iacr.org/2008/486.pdf Aumasson,Meier,Naya-Plasencia,Peyrin] |
|- | |- | ||
|} | |} | ||
Line 117: | Line 128: | ||
<bibtex> | <bibtex> | ||
− | @misc{ | + | @misc{cubehashLeu10, |
+ | author = {Gaëtan Leurent}, | ||
+ | title = {Quantum Preimage and Collision Attacks on CubeHash}, | ||
+ | howpublished = {Cryptology ePrint Archive, Report 2010/506}, | ||
+ | year = {2010}, | ||
+ | url = {http://eprint.iacr.org/2010/506.pdf}, | ||
+ | note = {\url{http://eprint.iacr.org/}}, | ||
+ | abtract = {In this short note we show a quantum preimage attack on CubeHash-normal-512 with complexity 2^192. This kind of attack is expected to cost 2^256 for a good 512-bit hash function, and we argue that this violates the expected security of CubeHash. The preimage attack can also be used as a collision attack, given that a generic quantum collision attack on a 512-bit hash function require 2^256 operations, as explained in the CubeHash submission document. | ||
+ | This attack only use very simple techniques: we use the symmetry properties of CubeHash which were already described in the submission document and have been analyzed in detail later, together with Gover's algorithm which is also discussed in the submission document.} | ||
+ | } | ||
+ | </bibtex> | ||
+ | |||
+ | <bibtex> | ||
+ | @misc{cubehashAD10, | ||
+ | author = {Tomer Ashur and Orr Dunkelman}, | ||
+ | title = {Linear Analysis of Reduced-Round CubeHash}, | ||
+ | howpublished = {Cryptology ePrint Archive, Report 2010/535}, | ||
+ | year = {2010}, | ||
+ | url = {http://eprint.iacr.org/2010/535.pdf}, | ||
+ | note = {\url{http://eprint.iacr.org/}}, | ||
+ | abtract = {Recent developments in the field of cryptanalysis of hash functions has inspired NIST to announce a competition for selecting a new cryptographic hash function to join the SHA family of standards. One of the 14 second-round candidates is CubeHash designed by Daniel J. Bernstein. CubeHash is a unique hash function in the sense that it does not iterate a common compression function, and offers a structure which resembles a sponge function, even though it is not exactly a sponge function. In this paper we analyze reduced-round variants of CubeHash where the adversary controls the full 1024-bit input to reduced-round CubeHash and can observe its full output. We show that linear approximations with high biases exist in reduced-round variants. For example, we present an 11-round linear approximation with bias of 2^{−235}, which allows distinguishing 11-round CubeHash using about 2^{470} queries. We also discuss the extension of this distinguisher to 12 rounds using message modification techniques. Finally, we present a linear distinguisher for 14-round CubeHash which uses about 2^{812} queries.} | ||
+ | } | ||
+ | </bibtex> | ||
+ | |||
+ | <bibtex> | ||
+ | @misc{cubehashFLM10, | ||
+ | author = {Niels Ferguson and Stefan Lucks and Kerry A. McKay}, | ||
+ | title = {Symmetric States and their Structure: Improved Analysis of CubeHash}, | ||
+ | howpublished = {Cryptology ePrint Archive, Report 2010/273}, | ||
+ | year = {2010}, | ||
+ | url = {http://eprint.iacr.org/2010/273.pdf}, | ||
+ | note = {\url{http://eprint.iacr.org/}}, | ||
+ | abtract = {This paper provides three improvements over previous work on analyzing CubeHash, based on its classes of symmetric states: (1) We present a detailed analysis of the hierarchy of symmetry classes. (2) We point out some flaws in previously claimed attacks which tried to exploit the symmetry classes. (3) We present and analyze new multicollision and preimage attacks. For the default parameter setting of CubeHash, namely for a message block size of b = 32, the new attacks are slightly faster than 2^384 operations. If one increases the size of a message block by a single byte to b = 33, our multicollision and preimage attacks become much faster – they only require about 2^256 operations. This demonstrates how sensitive the security of CubeHash is, depending on minor changes of the tunable security parameter b. } | ||
+ | } | ||
+ | </bibtex> | ||
+ | |||
+ | <bibtex> | ||
+ | @misc{cubehashKam10, | ||
+ | author = {Alan Kaminsky}, | ||
+ | title = {Cube Test Analysis of the Statistical Behavior of CubeHash and Skein}, | ||
+ | howpublished = {Cryptology ePrint Archive, Report 2010/262}, | ||
+ | year = {2010}, | ||
+ | url = {http://eprint.iacr.org/2010/262.pdf}, | ||
+ | note = {\url{http://eprint.iacr.org/}}, | ||
+ | abstract = {This work analyzes the statistical properties of the SHA-3 candidate cryptographic hash algorithms CubeHash and Skein to try to find nonrandom behavior. Cube tests were used to probe each algorithm's internal polynomial structure for a large number of choices of the polynomial input variables. The cube test data were calculated on a 40-core hybrid SMP cluster parallel computer. The cube test data were subjected to three statistical tests: balance, independence, and off-by-one. Although isolated statistical test failures were observed, the balance and off-by-one tests did not find nonrandom behavior overall in either CubeHash or Skein. However, the independence test did find nonrandom behavior overall in both CubeHash and Skein. } | ||
+ | } | ||
+ | </bibtex> | ||
+ | |||
+ | <bibtex> | ||
+ | @misc{cubehashBK09, | ||
author = {Benjamin Bloom and Alan Kaminsky}, | author = {Benjamin Bloom and Alan Kaminsky}, | ||
title = {Single Block Attacks and Statistical Tests on CubeHash}, | title = {Single Block Attacks and Statistical Tests on CubeHash}, | ||
howpublished = {Cryptology ePrint Archive, Report 2009/407}, | howpublished = {Cryptology ePrint Archive, Report 2009/407}, | ||
year = {2009}, | year = {2009}, | ||
+ | url = {http://eprint.iacr.org/2009/407.pdf}, | ||
note = {\url{http://eprint.iacr.org/}}, | note = {\url{http://eprint.iacr.org/}}, | ||
abstract = {This paper describes a second preimage attack on the CubeHash cryptographic one-way hash function. The attack finds a second preimage in less time than brute force search for these CubeHash variants: CubeHash $r$/$b$-224 for $b > 100$; CubeHash$r$/$b$-256 for $b > 96$; CubeHash$r$/$b$-384 for $b > 80$; and CubeHash$r$/$b$-512 for $b > 64$. However, the attack does not break the CubeHash variants recommended for SHA-3. The attack requires minimal memory and can be performed in a massively parallel fashion. This paper also describes several statistical randomness tests on CubeHash. The tests were unable to disprove the hypothesis that CubeHash behaves as a random mapping. These results support CubeHash's viability as a secure cryptographic hash function.}, | abstract = {This paper describes a second preimage attack on the CubeHash cryptographic one-way hash function. The attack finds a second preimage in less time than brute force search for these CubeHash variants: CubeHash $r$/$b$-224 for $b > 100$; CubeHash$r$/$b$-256 for $b > 96$; CubeHash$r$/$b$-384 for $b > 80$; and CubeHash$r$/$b$-512 for $b > 64$. However, the attack does not break the CubeHash variants recommended for SHA-3. The attack requires minimal memory and can be performed in a massively parallel fashion. This paper also describes several statistical randomness tests on CubeHash. The tests were unable to disprove the hypothesis that CubeHash behaves as a random mapping. These results support CubeHash's viability as a secure cryptographic hash function.}, |
Latest revision as of 09:46, 9 November 2010
1 The algorithm
- Author(s): Dan Bernstein
- Website: http://cubehash.cr.yp.to/
- NIST submission package:
- round 1: CubeHash.zip
- round 2: CubeHash_Round2.zip
Daniel J. Bernstein - CubeHash specification (2.B.1)
- ,2009
- http://cubehash.cr.yp.to/submission2/spec.pdf
BibtexAuthor : Daniel J. Bernstein
Title : CubeHash specification (2.B.1)
In : -
Address :
Date : 2009
Daniel J. Bernstein - CubeHash parameter tweak: 16 times faster
- ,2009
- http://cubehash.cr.yp.to/submission/tweak.pdf
BibtexAuthor : Daniel J. Bernstein
Title : CubeHash parameter tweak: 16 times faster
In : -
Address :
Date : 2009
Daniel J. Bernstein - CubeHash Specification (2.B.1)
- ,2008
- http://cubehash.cr.yp.to/submission/spec.pdf
BibtexAuthor : Daniel J. Bernstein
Title : CubeHash Specification (2.B.1)
In : -
Address :
Date : 2008
2 Cryptanalysis
We distinguish between two cases: results on the complete hash function, and results on underlying building blocks.
A description of the tables is given here.
Recommended security parameters: r/b = 16/32 (n=224,256); 16/32 (n=384,512)
2.1 Hash function
Here we list results on the hash function according to the NIST requirements. The only allowed modification is to change the security parameter.
Type of Analysis | Hash Size (n) | Parameters/Variants | Compression Function Calls | Memory Requirements | Reference |
preimage | 384,512 | r/32 | 2383.7 | - | Ferguson,Lucks,McKay |
preimage | 384,512 | r/33 | 2257.6 | - | Ferguson,Lucks,McKay |
collision | 512 | 7/64 | 2203 | - | Brier,Khazaei,Meier,Peyrin |
collision | all | 4/48 | example (237) | - | Brier,Khazaei,Meier,Peyrin |
collision | all | 4/64 | example (234) | - | Brier,Khazaei,Meier,Peyrin |
collision | all | 3/64 | example (224) | - | Brier,Khazaei,Meier,Peyrin |
collision | 512 | 2/2 | 2196 | - | Brier,Khazaei,Meier,Peyrin |
collision | 512 | 5/64 | 2231 | - | Brier,Peyrin |
collision | all | 3/64 | 289 | - | Brier,Peyrin |
collision | 512 | 4/3 | 2207 | - | Brier,Peyrin |
collision | 384,512 | 4/4 | 2189 | - | Brier,Peyrin |
collision | all | 2/3 | 246 | - | Brier,Peyrin |
collision | 512 | 2/4 | example | - | Brier,Peyrin |
collision | 512 | 1/45, 2/89 | example | - | Dai |
collision | 512 | 2/120 | example | - | Aumasson |
preimage | 512 | r/8 | 2480 | - | Khovratovich,Nikolic',Weinmann |
preimage | 512 | r/4 | 2496 | - | Khovratovich,Nikolic',Weinmann |
preimage | 512 | r/1 (round 1) | 2511 | 2508 | Khovratovich,Nikolic',Weinmann |
preimage | all | r/b | 2513-4b | - | Aumasson,Meier,Naya-Plasencia,Peyrin |
collision | all | r/b | 2521-4b-log b | - | submission document |
preimage | all | r/b | 2522-4b-log b | - | submission document |
2.2 Building blocks
Here we list results on underlying building blocks, and the hash function modified by other means than the security parameter.
Note that these results assume more direct control or access over some internal variables (aka. free-start, pseudo, compression function, block cipher, or permutation attacks).
Type of Analysis | Hash Function Part | Hash Size (n) | Parameters/Variants | Compression Function Calls | Memory Requirements | Reference |
quantum preimage | hash | 512 | 2192 | - | Leurent | |
distinguisher | permutation | all | 14 rounds | 2812 | - | Ashur,Dunkelman |
distinguisher | permutation | all | 11 rounds | 2470 | - | Ashur,Dunkelman |
observations | hash | all | - | - | Kaminsky | |
observations | hash | all | - | - | Bloom,Kaminsky | |
multi-collision | hash | all | 2513-4b | - | Aumasson,Meier,Naya-Plasencia,Peyrin | |
observations | permutation | all | - | - | Aumasson,Meier,Naya-Plasencia,Peyrin |
Gaëtan Leurent - Quantum Preimage and Collision Attacks on CubeHash
- ,2010
- http://eprint.iacr.org/2010/506.pdf
BibtexAuthor : Gaëtan Leurent
Title : Quantum Preimage and Collision Attacks on CubeHash
In : -
Address :
Date : 2010
Tomer Ashur, Orr Dunkelman - Linear Analysis of Reduced-Round CubeHash
- ,2010
- http://eprint.iacr.org/2010/535.pdf
BibtexAuthor : Tomer Ashur, Orr Dunkelman
Title : Linear Analysis of Reduced-Round CubeHash
In : -
Address :
Date : 2010
Niels Ferguson, Stefan Lucks, Kerry A. McKay - Symmetric States and their Structure: Improved Analysis of CubeHash
- ,2010
- http://eprint.iacr.org/2010/273.pdf
BibtexAuthor : Niels Ferguson, Stefan Lucks, Kerry A. McKay
Title : Symmetric States and their Structure: Improved Analysis of CubeHash
In : -
Address :
Date : 2010
Alan Kaminsky - Cube Test Analysis of the Statistical Behavior of CubeHash and Skein
- ,2010
- http://eprint.iacr.org/2010/262.pdf
BibtexAuthor : Alan Kaminsky
Title : Cube Test Analysis of the Statistical Behavior of CubeHash and Skein
In : -
Address :
Date : 2010
Benjamin Bloom, Alan Kaminsky - Single Block Attacks and Statistical Tests on CubeHash
- ,2009
- http://eprint.iacr.org/2009/407.pdf
BibtexAuthor : Benjamin Bloom, Alan Kaminsky
Title : Single Block Attacks and Statistical Tests on CubeHash
In : -
Address :
Date : 2009
Eric Brier, Shahram Khazaei, Willi Meier, Thomas Peyrin - Linearization Framework for Collision Attacks: Application to CubeHash and MD6
- ,2009
- http://eprint.iacr.org/2009/382.pdf
BibtexAuthor : Eric Brier, Shahram Khazaei, Willi Meier, Thomas Peyrin
Title : Linearization Framework for Collision Attacks: Application to CubeHash and MD6
In : -
Address :
Date : 2009
Eric Brier, Shahram Khazaei, Willi Meier, Thomas Peyrin - Real Collisions for CubeHash-4/48
- ,2009
- http://ehash.iaik.tugraz.at/uploads/5/50/Bkmp_ch448.txt
BibtexAuthor : Eric Brier, Shahram Khazaei, Willi Meier, Thomas Peyrin
Title : Real Collisions for CubeHash-4/48
In : -
Address :
Date : 2009
Eric Brier, Shahram Khazaei, Willi Meier, Thomas Peyrin - Real Collisions for CubeHash-4/64
- ,2009
- http://ehash.iaik.tugraz.at/uploads/9/93/Bkmp_ch464.txt
BibtexAuthor : Eric Brier, Shahram Khazaei, Willi Meier, Thomas Peyrin
Title : Real Collisions for CubeHash-4/64
In : -
Address :
Date : 2009
Eric Brier, Shahram Khazaei, Willi Meier, Thomas Peyrin - Attack for CubeHash-2/2 and collision for CubeHash-3/64
- ,2009
- http://ehash.iaik.tugraz.at/uploads/3/3a/Peyrin_ch22_ch364.txt
BibtexAuthor : Eric Brier, Shahram Khazaei, Willi Meier, Thomas Peyrin
Title : Attack for CubeHash-2/2 and collision for CubeHash-3/64
In : -
Address :
Date : 2009
Eric Brier, Thomas Peyrin - Cryptanalysis of CubeHash
- ,2009
- http://thomas.peyrin.googlepages.com/BrierPeyrinCubehash.pdf
BibtexAuthor : Eric Brier, Thomas Peyrin
Title : Cryptanalysis of CubeHash
In : -
Address :
Date : 2009
Wei Dai - Collisions for CubeHash1/45 and CubeHash2/89
- ,2008
- http://www.cryptopp.com/sha3/cubehash.pdf
BibtexAuthor : Wei Dai
Title : Collisions for CubeHash1/45 and CubeHash2/89
In : -
Address :
Date : 2008
Jean-Philippe Aumasson - Collision for CubeHash2/120-512
- ,2008
- http://ehash.iaik.tugraz.at/uploads/a/a9/Cubehash.txt
BibtexAuthor : Jean-Philippe Aumasson
Title : Collision for CubeHash2/120-512
In : -
Address :
Date : 2008
Dmitry Khovratovich, Ivica Nikolic', Ralf-Philipp Weinmann - Preimage attack on CubeHash512-r/4 and CubeHash512-r/8
- ,2008
- http://ehash.iaik.tugraz.at/uploads/6/6c/Cubehash.pdf
BibtexAuthor : Dmitry Khovratovich, Ivica Nikolic', Ralf-Philipp Weinmann
Title : Preimage attack on CubeHash512-r/4 and CubeHash512-r/8
In : -
Address :
Date : 2008
Jean-Philippe Aumasson, Eric Brier, Willi Meier, María Naya-Plasencia, Thomas Peyrin - Inside the Hypercube