Keccak follows a sponge construction. Can we say that Keccak employs a compression function? Generally speaking, for sponge constructions, can we say that there is an underlying compression function?
-
$\begingroup$ I’ve told you before and I’ll gladly tell you again: We expect you to do a significant amount of research before asking here, including searching this site for related Q&As that might shed light on your question. At worst it will help you frame a better question; at best it’ll answer it. So, What research have you done? Where did you hit a problem? What exactly isn’t clear to you in relation to hash functions and random oracles? Please, try to put a bit of quality in your questions. In case of doubt, read How do I ask a good question?. $\endgroup$– e-sushiCommented Sep 27, 2014 at 17:53
1 Answer
The sponge construction does not have a compression function in the sense of traditional hash constructions like Merkle–Damgård. Instead, it operates using a permutation function $f$ which "mixes" or "absorbs" the input into the state of the algorithm. Strictly speaking, it does take an input larger than the output it produces, but this function is actually reversible and so is not comparable to one-way compression functions like in MD5 or SHA-1.
-
$\begingroup$ Thank you. What about other hash functions like Md6, Skein, Shabal, Blake... ? $\endgroup$– Dingo13Commented Sep 27, 2014 at 17:22
-
$\begingroup$ @Dingo13 Blake and Skein are not MD constructions, but they still use a kind of compression function. Compared with a basic compression function, the most significant difference is the addition of a tweak, which is used to uniquely mark each block and to signal the end of the input message. $\endgroup$ Commented Sep 28, 2014 at 19:09