Background
Have you ever considered how we verify the authenticity of certain messages? We use a One Way Function called Hashing. Basically, we take anything, and convert it to a seemingly random (but entirely deterministic) string.
Thereโs also the desire for a collision resistant function. What does that mean? A function that makes it really hard to find two messages and such that .
For what?
Itโs used for a lot:
- File integrity when downloading something (you can compare your hash to the sites)
- Password verification - instead of storing plaintext passwords - you store their hashes.