programmingbitcoin
programmingbitcoin copied to clipboard
Repository for the book
Like mainnet, the testnet block explorer appears to be down. Would it be possible for you to note the explorer you are running so users can bring up private instances...
Can two points on the curve $P2$ be multiplied together, such as $P2 \times P3$?
On page 83 (chapter 4 under "Address Format", there is this code: def encode_base58_checksum(b): return encode_base58(b + hash256(b)[:4]) I believe the data should be hashed twice before extracting the checksum....
In Chapter 4, "Address", we learned how to generate P2PKH addresses. But how do we generate P2TR addresses? Is there any references?
I'm working through this exercise and it's been some time. I want to move forwards to Ch 8 but I really want to get this solution to work. First thing...
As of now, May 26th, I can't reach `testnet.programmingbitcoin.com` on port 18333 anymore. The server isn't responding.
Section "Bare Multisig" doesn't mention that public keys and signatures used as arguments to `OP_CHECKMULTISIG` need to be in the matching order. In particular, I am referring to the proposed...
In the handshake code on page 183 of the book, in the line with the numbered comment 3, the `and` should be an `or`. Also, I note that in answers.py...
The given answer for `op_checkmultisig` in Chapter 8 has a bug where the last signature is never verified: ``` def op_checkmultisig(stack, z): ... try: points = [S256Point.parse(sec) for sec in...
Programming Bitcoin (first edition) Chapter 5, pg 92: The second dot point says 555 -> xfd2b02. However, the encode_varint function returns the correct value 0xfd02. I believe this may only...