A new node communication protocol is arriving in the next version of Bitcoin Core. What advantages does it offer, and how will it improve Bitcoin?
Current limitations
Bitcoin nodes communicate and exchange information with each other through a peer-to-peer communication protocol, with the aim of reaching consensus on the state of the blockchain. The current version of the P2P protocol, while having strong resistance to censorship features, has some critical drawbacks:
- An attacker who massively monitors all transactions occurring on the network can use the metadata of transactions to obtain information that should remain confidential, such as the source of a transaction (i.e., the node that executed the broadcast) and the time it was created.
- Connections begin with a fixed sequence of bytes that are easily identifiable, which can be used by governments and internet network operators to carry out censorship activities or eclipse attacks on users and miners.
- Since communications between nodes are not encrypted, governments, ISPs, and WiFi network operators can carry out a man-in-the-middle attack that allows them to intercept messages between nodes and trace them without having to connect to the relevant peers. This makes monitoring node activity and violating their privacy relatively cheap for an attacker.
The P2P network is a crucial component of Bitcoin (the same white paper emphasizes the P2P nature of the protocol in its title). It often doesn’t get much attention and is overshadowed by discussions about the consensus layer, which tend to be much more heated among enthusiasts and professionals. Therefore, it’s vital that there be innovation on the P2P network side to strengthen it and eliminate its flaws where possible. With this aim, the proposal for a second version of the P2P communication protocol on Bitcoin described in the Bitcoin Improvement Proposal (BIP) 324 was born, first published in March 2019 by developer Jonas Schnelli.
The improvements
BIP 324 aims to make the above-described attacks more difficult, which doesn’t mean they become impossible but certainly more expensive and less effective. To achieve this, BIP 324 provides the following improvements:
- Make communications between peers encrypted, making it impossible to observe the content of a message through man-in-the-middle attacks.
- The bytestream of communications is made pseudorandom, making it difficult to easily identify a Bitcoin transaction within an internet connection and making it impossible for observers on the network to monitor node activity.
- Furthermore, the bytestream becomes customizable, so a message on the Bitcoin network can be disguised as if it were part of other internet protocols. In this way, a firewall can no longer effectively block Bitcoin communications (such as block propagation).
It’s important to note that even with BIP 324, it remains possible for an attacker to continue monitoring and censoring, but it becomes exponentially more expensive as they would need to set up many Bitcoin nodes and open many connections with other peers. Moreover the attacker could also be easily detected by the victims if appropriate checks are in place.
To facilitate its adoption, BIP 324 remains backward compatible with the older nodes that continue to use the previous version of the communication protocol. It is also easily upgradable thanks to versioning, thus leaving the door open for potential future improvements, such as introducing authenticated messages. The update will also not require additional resources to run a node, allowing Bitcoin to maintain its decentralization trade-offs.
Innovation without soft forks
Innovations like BIP 324 might seem boring and unexciting, but it’s the combination of all these small improvements over the years that makes Bitcoin safer and more resilient than any alternative. It allows the protocol to keep its promises of privacy and resistance to censorship. Often the focus is only on innovations that require a soft fork as they tend to stimulate public debate more and promise the enabling of new use cases previously impossible. While new features that can add value to Bitcoin without compromising its security are certainly welcome, improvements that reinforce the guarantees on Bitcoin’s core features are equally important to ensure the project’s long-term success.
BIP 324 also shows that Bitcoin development won’t stop when the consensus protocol becomes ossified but will continue with improvements and optimizations on various fronts as long as it remains in use.