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

Reply via email to