This guide explains BIP 53 Disallow 64-byte transactions in plain English. It covers the problem behind the BIP, why it matters and whether the proposal is part of Bitcoin today.
TL;DR
- What it is: BIP 53 is a Draft consensus soft-fork proposal to disallow transactions whose serialization without witness data is exactly 64 bytes. That length can be interpreted as two 32-byte Merkle-tree child hashes, creating ambiguity in Bitcoin’s transaction commitment and risks for block handling or simplified-payment-verification proofs.
- Why it matters: BIP 53 proposes a narrow rule to remove a structural Merkle ambiguity. Its simplicity does not remove deployment risk: implementations must count the exact serialization and distinguish local relay policy from activated consensus.
- Current position: BIP 53 is a Draft consensus soft-fork proposal to disallow transactions whose serialization without witness data is exactly 64 bytes.
BIP 53 Disallow 64-byte transactions in simple English
BIP 53 Disallow 64-byte transactions: A 64-byte transaction serialization can resemble two 32-byte hashes used as a Merkle node, complicating the distinction between a leaf transaction and internal tree data.
Simple example
A node operator is checking BIP 53 Disallow 64-byte transactions. The proposed validation change rejects a transaction serialized to exactly 64 bytes after excluding witness data.
Key terms in plain English
- BIP:
- Bitcoin Improvement Proposal: a document describing a proposed rule, standard or process. Its status must be checked separately.
- Bitcoin Core:
- Widely used software that validates Bitcoin and can provide wallet, network and operator tools.
- RPC:
- A command that software sends to a node to request information or a local action.
- Consensus:
- The shared rules full nodes use to decide whether blocks and transactions are valid.
- Node:
- A computer running Bitcoin software that checks data and communicates with other peers.
Status
BIP 53 is Draft, Specification, at the consensus soft-fork layer. It is not a currently enforceable mainnet transaction rule unless separately activated.
Exact rule
The proposed validation change rejects a transaction serialized to exactly 64 bytes after excluding witness data. It does not set a broad minimum transaction size.
Merkle ambiguity
A 64-byte transaction serialization can resemble two 32-byte hashes used as a Merkle node, complicating the distinction between a leaf transaction and internal tree data.
Block effects
The BIP analyses invalid- and valid-transaction block malleability cases arising from Bitcoin’s duplicate-last-node and mutation handling.
Light clients
A crafted 64-byte transaction can weaken assumptions behind an SPV inclusion proof with substantially less work than finding a SHA256 collision.
Policy boundary
Bitcoin Core relay and RPC mitigations have existed since 2018. A miner can choose different policy, so only activated consensus would make rejection universal.
How specialists test it
Developers test the proposal with made-up data on an isolated test network. They check normal cases and deliberately invalid cases. Different implementations should reach the same result before anyone relies on the proposal.
Frequently asked questions
What is the main point of BIP 53 Disallow 64-byte transactions?
BIP 53 Disallow 64-byte transactions: A 64-byte transaction serialization can resemble two 32-byte hashes used as a Merkle node, complicating the distinction between a leaf transaction and internal tree data.
For BIP 53 Disallow 64-byte transactions, what should a beginner know about status?
BIP 53 is Draft, Specification, at the consensus soft-fork layer. It is not a currently enforceable mainnet transaction rule unless separately activated.
For BIP 53 Disallow 64-byte transactions, what should a beginner know about exact rule?
The proposed validation change rejects a transaction serialized to exactly 64 bytes after excluding witness data.
For BIP 53 Disallow 64-byte transactions, what should a beginner know about merkle ambiguity?
A 64-byte transaction serialization can resemble two 32-byte hashes used as a Merkle node, complicating the distinction between a leaf transaction and internal tree data.
Conclusion
BIP 53 proposes a narrow rule to remove a structural Merkle ambiguity. Its simplicity does not remove deployment risk: implementations must count the exact serialization and distinguish local relay policy from activated consensus.
Primary sources
Check the current specification status and the documentation for the exact implementation you operate before moving production funds or changing a mining node.
Join the ASIC Mining Discussion
Members can read and join the discussion
Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.
Membership helps us protect the discussion from spam and keep answers useful.