pull down to refresh

Many people, myself included, tout the importance of software maintenance in the context of Bitcoin Core. It is easy to throw out "maintenance!" and most people will nod their head in agreement, but I think its helpful to have some examples to understand the depth of this work and risks of not doing it.
There are many categories of maintenance work, today I am just going to zoom in on one: minimizing dependencies.
Recently someone attempted to put in a backdoor into XZ, a library used by softwares in hundreds of millions of computers around the world. Even a couple weeks ago hackers slipped malicious code into dozens of NPM packages that receive millions of downloads each week.
Bitcoin Core and other Bitcoin software are not immune to these kinds of attacks. While Bitcoin Core has a robust culture of code review and testing, Bitcoin Core uses third-party libraries as well. Code from these libraries is run, in addition to Bitcoin Core's code, when you are running your node.
Any bug, vulnerability, or performance issue in these libraries (dependencies) can cause issues for Bitcoin Core. Updates to these dependencies of Bitcoin Core are a potential risk and need to be regularly tracked and reviewed. From a security perspective, these dependencies should also be minimized and eliminated where possible.
Bitcoin Core developers have spent years minimizing the number of dependencies of the project. In some cases replacing them with minimal, in-house alternatives that achieve the same function in order to reduce attack surface.
In this latest Brink blog, we outline the risks of using dependencies as well as several examples of Bitcoin Core removing problematic or unnecessary dependencies of the project.
From a security perspective, these dependencies should also be minimized and eliminated where possible.
this ^
reply
0 sats \ 0 replies \ @kepford 7h
Indeed. Bitcoin is literally money so the stakes are higher than pretty much any project ever.
reply
Nice text, we need a more debian approach and less arch towards bitcoin. Maybe not a great analogy, but I mean thinking a lot more of what there's inside and slow to change/upgrade with new features and modernity.
reply
0 sats \ 1 reply \ @carter 9h
Knots is entirely dependant on Bitcoin Core
reply
0 sats \ 0 replies \ @kepford 7h
Sssh
reply