Understanding Hashes
The fundamentals of hash functions: hash values, the avalanche effect, preimage resistance, second-preimage resistance and collision resistance.
Calculate hash values. Understand algorithms. Try out cryptography directly in your browser.
Get to know hash functions, from the fundamentals to concrete algorithms.
Follow the technical relationships step by step.
Explore cryptographic concepts yourself with interactive tools.
The fundamentals of hash functions: hash values, the avalanche effect, preimage resistance, second-preimage resistance and collision resistance.
How secure are hash functions really? This covers the birthday paradox, collision attacks, security strengths, and what 128, 256 or 512 bits mean in practice.
How do concrete hash algorithms actually work? Here I break down procedures such as SHA-256 and SHA-512 step by step and look at their internal structure.
You can use your own input, compare algorithms, and observe what happens inside a hash function.
Enter any text and follow the complete path through SHA-256: from UTF-8 input through padding and message schedule to the 64 compression rounds and the finished hash value.
Change just one character of your input and observe how much the resulting hash value changes.
How quickly do collisions occur as the possible hash space shrinks? Try out the birthday effect yourself.
Use the same input for both algorithms and compare block size, word size, padding, message schedule, compression rounds and the resulting hash value.
New to hash functions?
Start with What Is a Hash Function? and work your way through the fundamentals from there.
Already know the basics?
Under Understanding Security you'll find collisions, preimages, birthday attacks, and the question of how secure hash functions really are.
Want to know what happens inside the algorithm?
Under Algorithms I break down SHA-256, SHA-512 and other procedures step by step.
Just looking for a specific term? The Glossary has the most important terms explained briefly.