SHA-256 Explained: How the SHA-2 Hash Function Works