Bitcoin Source Code

consensus/merkle.cpp – Commented Bitcoin Source Code by José Fonseca
In this article we take a look at one of the most important components of block validation and overall blockchain integrity: the Merkle Root derivation process. While it's one o...
uint256.cpp – Commented Bitcoin Core source code by José Fonseca
If you've developed systems in C or C++ before then you're probably familiar with the stdint.h (cstdint for C++) typedefs. Since there'a lot of variation between platforms, stdint....
optional.h – Commented Bitcoin source code by José Fonseca
optional.h is a stub that'll likely get removed from Bitcoin Core at a future date when C++ 17 gets formally adopted for the entire project. By reading the Bitcoin Core sources ...
noui.cpp – Commented Bitcoin Core source code by José Fonseca
We began our exploration of the Bitcoin Core source code from the Qt graphical user interface on down. We saw how the Qt signals and slots mechanism was used to handle signals f...
dummywallet.cpp – Commented Bitcoin Core source code by José Fonseca
We mentioned in a previous Bitcoin Core source code article that bitcoind can be compiled without wallet support. Why would anyone do that? Historically there were 2 main fun...
base58.cpp – Commented Bitcoin Source Code by José Fonseca
Base58 encoding is responsible for the most visible part of Bitcoin Core since it's the most significant part of the algorithm that generates the addresses we use to send and recei...
chainparams.cpp – Commented Bitcoin Source Code by José Fonseca
In this article we'll take a look at one of the better known Bitcoin Core source files. Why is chainparams.* known to so many crypto developers? Because since 2011 or so, bas...
rpc/server.cpp – Commented Bitcoin Source Code by José Fonseca
We now dive into one of the most exciting components of the Bitcoin Core source code. The RPC subsystem interconnects the connection manager, wallets, the storage subsystem and,...
amount.h – Commented Bitcoin Source Code by José Fonseca
amount.h is one of simplest source files in Bitcoin Core. In fact we can paste it in it entirety and discuss it afterwards: /** Amount in satoshis (Can be negative) */typedef...
bitcoind.cpp – Commented Bitcoin source code by José Fonseca
As mentioned in the Bitcoin-Qt commented source code post, there are several approaches one can take to step into the Bitcoin source in approximately the same order as it runs. For...