I have a program that I’m working on, in plain old-fashioned C, where I get the user to flip a coin 128 times. This provides my 128 bits to run through SHA256. The first byte of that hash (leftmost character?) should convert back to binary and append to the initial entropy. This will provide 132 bits to form the 12 seed words. But the last word is never right. Something is wrong with my logic. Can somebody please spot it and let me know what I need to do?? Here is an example. Say the user flipped heads 128 times. That would be 11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111. When I run that through the hash, I get 5ac6a5945f16500911219129984ba8b387a06f24fe383ce4e81a73294065461b. The first (leftmost) character is a hex ‘5’ so I convert that back to binary and get 0101. That makes the now 132 bits 111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111110101. That should give me a seed phrase of “zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo wrist” but that is not right. Ian Coleman’s web page says the correct answer is not “wrist” and Sparrow Wallet says “wrist” is not a valid checksum. Where have I swerved off the road?










