How Does SHA-256 Work?
Why Hacker News recommends it
Commenters call it clear enough to implement the algorithm from, and teachers use it in courses.
What it is
A step-by-step animated explanation of how SHA-256 works, from padding and message schedule to the compression function and final hash, with source code for the animations.
Recommended by 3 HN commenters across 3 different months, 2020 to 2022.
What Hacker News said
Strong rec 7373737373 · 2022-03 · on “The SHA-256 Project: learn how hash functions work by implementing one yourself”
I found this video to be an excellent explanation and sufficient to implement the algorithm: [this video] Code: [LINK] This site contains a nice visualization: [LINK]
Recommends 1_player · 2020-05 · on “Show HN: SHA-256 Animation”
Here's the author doing an in-depth explanation of how SHA-256 works using this code: [this video] I'm halfway through, but looks very well done, thanks!
Recommends oconnor663 · 2022-02 · on “Show HN: SHA-256 explained step-by-step visually”
Oh this is great. When we taught SHA-256 last semester, we linked to this YouTube video: [this video] . Next time we do it, we'll probably link to both. Having several different ways to visualize the same thing is very helpful, and I like that this one moves quickly. A couple of details missing from this visualization are how you pad a message to be a multiple of the block size, and how you chain blocks together to form a longer message. In the pseudocode at [LINK] , that's the "Pre-processing (Padding)" part and the "for each chunk" loop just below it. I get why you'd want to leave those things out, since they're not really the interesting part, and the screen is already pretty packed as it is.
Cites newscracker · 2020-05 · on “Show HN: SHA-256 Animation”
This looks great, though it requires quite sometime to go through it (and figure out what could possibly be understood by someone with knowledge of programming and bit wise operators, and what can just be skipped because it’s something only cryptographers can understand). If someone were to make a slower video explaining it with all the sections from this dissection, that’d be even more awesome. Edit: Seems like the author created a video for this — [this video] (thanks to 1_player’s comment at [LINK] ) On a tangent, here’s an animation (by someone else) explaining AES encryption — [LINK] (thanks to harrigan’s comment at [LINK] )