<p>Your last word is wrong (pun intended)</p>
<p>Everything is correct, except you took the wrong word for 11111110101 (2037). Remember bip39 words list starts with 0, but normally lists are presented starting with 1, so you must compensate.</p>
<p>zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo wrong</p>

CC BY-SA 4.0
2024-12-18T23:17:34.717Z
Wow, I would not have thunk that.  Since the index starts at zero and the list starts at one, I knew I had to shift the answer by one.  I just went the wrong direction.  It still is not obvious.  But I was so WRONG lol.  Thanks.
rghollenbeck
CC BY-SA 4.0
2024-12-18T14:52:38.403Z
2024-12-18T14:52:38.403Z
bordalix
<p>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 &quot;zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo wrist&quot; but that is not right.  Ian Coleman's web page says the correct answer is not &quot;wrist&quot; and Sparrow Wallet says &quot;wrist&quot; is not a valid checksum.  Where have I swerved off the road?</p>

<mnemonic-seed><sha256><checksum>
Seed Phrase checksum
rghollenbeck
# Seed Phrase checksum

(Asked by: username_0 on 2024-12-18)

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?

**Tags:** mnemonic-seed, sha256, checksum


---

## 1 answers

### Answer by username_1 on 2024-12-18. Score: 1 | Accepted answer

Your last word is wrong (pun intended)

Everything is correct, except you took the wrong word for 11111110101 (2037). Remember bip39 words list starts with 0, but normally lists are presented starting with 1, so you must compensate.

zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo zoo wrong

> **Comments:**
> **username_0**: Wow, I would not have thunk that.  Since the index starts at zero and the list starts at one, I knew I had to shift the answer by one.  I just went the wrong direction.  It still is not obvious.  But I was so WRONG lol.  Thanks.  

---

