Skip to content

Bitcoin Unlimited 450529: the 1,000,023-byte body #20

Description

@deadmanoz

Summary

data/reported-blocks.jsonl lists block 450529, hash 000000000000000000cf208f521de0424677f7a87f2f278a1042f38d159565f5, mined by the Bitcoin.com pool on 29 January 2017 with Bitcoin Unlimited software and rejected by the network for exceeding 1,000,000 bytes. The pool's statement quotes its log: 1,000,023 bytes, 2,290 transactions, 4,140 legacy sigops. Bitcoin Unlimited's own statement describes the bug.

What is known: the header, recovered from a BlockCypher page captured the same day, hashes correctly and meets its target. The same capture shows the coinbase and the first nineteen transactions. The other 2,270 transactions are missing, so the size cannot be established and bad-blk-length stays a report. Admission needs the complete body whose Merkle root matches the header.

What has been searched

Explorer APIs and Wayback Machine captures beyond that BlockCypher page, Reddit and Twitter discussion from the day, the gocoin project history and Bitcoin Unlimited peers were checked without finding the body. An April 2017 Gocoin commit names the block's binary as a submitblock example file; its author, Piotr Narewski, was asked and no longer has it. Reconstruction was tried: 498,093 random templates drawn from the transactions confirmed at heights 450529 to 450544, then an exact solver over the reported count, size, fees and sigop totals. Selections exist that match every reported total and the archived transaction order, but none reproduces the Merkle root, and the number of selections that satisfy the totals is far too large to enumerate.

The block reached peers before it was rejected, so a node from January 2017 that logged or stored rejected blocks, or the pool's own records, are the likely sources. Anyone who ran Bitcoin Unlimited, Classic or XT at the time may still have it in their block files.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is neededreportedReported invalid; the header or body that would establish it is missing

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions