Hi
Another transcript that may be of interest to this list. Carl Dong recently did
an excellent short video explaining the libbitcoinkernel project in Bitcoin
Core. The transcript is here:
https://btctranscripts.com/chaincode-labs/2022-04-12-carl-dong-libbitcoinkernel/
As he explains in the video libbitcoinkernel is the latest attempt to extract
the consensus engine out of Bitcoin Core. There are many motivations for doing
this. Obviously disagreements between the consensus engines of nodes across the
network can lead to catastrophic forks. This boundary between what is part of
consensus and what is not has occasionally been blurred in the past and for the
most security critical part of Bitcoin Core (and Bitcoin generally) this is
clearly unacceptable. This is not a criticism of anyone in the past,
unravelling Satoshi's spaghetti code and the entanglement between the consensus
engine and the rest of the codebase has been a decade long task, requires
extreme care and is by no means completed.
As well as leading to some consensus bugs in older versions of Bitcoin Core,
the leaky consensus abstraction has made it difficult for alternative
implementations to be built in other languages and with different RPCs etc
without risking falling out of consensus with Bitcoin Core.
This is clearly an ambitious long term project but the first PR in the series
was recently merged [1] and Carl explains his thinking on the future direction
of this project in the video and on the linked issue.
[1]: https://github.com/bitcoin/bitcoin/issues/24303
--
Michael Folkson
Email: michaelfolkson at [protonmail.com](http://protonmail.com/)
Keybase: michaelfolkson
PGP: 43ED C999 9F85 1D40 EAF4 9835 92D6 0159 214C FEE3
_______________________________________________
bitcoin-dev mailing list
bitcoin-dev@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev