My favorite way to understand hashing is to type stuff into a tool like this: https://codebeautify.org/sha256-hash-generator

Reply to this note

Please Login to reply.

Discussion

It doesn’t really help to understand why you can’t practically speaking reverse the process. That's why I came up with an analogy with buckets of paints.

Maybe the problem I have with the paint analogy is that it kind of destroys your input, at least as much as you mix.

How about this. A one-way hashing algorithm is like taking a wax impression of a key. This is Harry Potter wax though, so after you’ve made the impression of the keys pattern, the bumps rearrange, and even change size. This rearrangement and changing always happens the same way for the same key. If you have more of the magical wax, you could check to make sure that a new key is the same as the old key by doing another magic wax impression, and then checking the impression after it rearranges. If it matches the first magical impression, you know you have a matching key! But if you only have one of these magical wax key impressions, you can’t make your own new matching key because the bumps are all the wrong size and in the wrong place!