Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Huh, I realize I don’t know the answer to this seemingly simple question. Are all 256 bit vectors valid sha-256 hashes?


Yes.

In a secure hash function, all output bits are without bias. So all combinations exist.


Sounds like the ideal. Can we prove that sha256 has this property?


Probably not. The point of a cryptographic hash function is to be resistant to analysis.

Can we prove it has the much simpler property that toggling one bit of the input will, on average, toggle half of the bits in the output? (Probably not.)


Depends how you define "prove"

If you calculate a billion sha256 hashes and look at the results you'll have an even enough distribution to say it's proven, but, it's not "mathematically" proven.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: