A basic implementation of SHA-256 This isn't the fastest implementation on Scratch, but it's fast enough for what I plan. I don't guarantee correctness but I've tested this a bit. This only works on strings containing any of the 95 printable ASCII characters, but could relatively easily be modified to work with a list of bytes. The round constants are calculated using Scratch code and stored in a LUT. Should this LUT ever be recalculated, the round constants will likely be correct, but this is not guaranteed since different browsers may produce slightly different results for exp and log. However, I have already calculated them on my machine, so this shouldn't be necessary unless the LUTs are accidentally modified. https://github.com/983/SHA-256 https://en.wikipedia.org/wiki/SHA-2