What are the properties derived from the fact that a hash function is indifferentiable from a random oracle?

  • 2
    $\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-sushi Sep 27 '14 at 17:49
  • $\begingroup$ This question is high on Google returns, so it is my research. $\endgroup$ – Brain2000 May 14 '19 at 13:05

The concept of indistinguishability from random is one of the most important in cryptography. Not only for hash functions, but for most cryptographic primitives, if not all.

Generally speaking, its importance relies on the fact that something which is not indistinguishable from random might be leaking some private information. Thus an attack might be derived from such a distinguisher. On the other hand, something that is indistinguishable from random surely is not leaking any private information.

Regarding the special case of hash functions, you must have in mind that many security proofs for cryptographic protocols assume the use of a random oracle during some step of the protocol. In practice, hash functions are used for this purpose. However, as you might know, hash functions are not exactly equivalent to random oracle. But if we can show that they are indistinguishable from each other, then the intended security proof would hold as if a random oracle was used.

Note: As e-sushi mentioned, I am pretty sure there are plenty of material on the web regarding this topic. Please, for the good of the community, make a research before asking here. (Y)


Not the answer you're looking for? Browse other questions tagged or ask your own question.