Posted by Anthony Towns
Nov 8, 2022/03:20 UTC
On October 26, 2022, a discussion was held among Bitcoin developers regarding the mapping table between 1-byte IDs and commands. Three possible solutions were presented: the first being using the BIP process to introduce a fixed initial table with future BIPs introducing new messages and mapping entries, the second being maintaining a purely local and hardcoded internal mapping of "message string C has id Y" where Y is capped by the number of commands implemented, and the third option being not having a fixed table at all and negotiating the mapping dynamically. The last option would require up to 3kB of initial setup to inform peers what mappings will be used. The developers proposed starting with the first approach with the mapping table managed by the BIP process directly. However, if collisions become a concern due to parallel proposals or a growing number of messages, they may switch to approach three differentially. The use of a novel 1-byte message was also discussed, and it was suggested that unless something is done to introduce the message first, it should not be used. It was recommended against reserving a byte for one-shot messages and avoiding it for existing one-shot messages.
TLDR
We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.
We'd love to hear your feedback on this project?
Give Feedback