See Also
ELI5: Blockchains explained in simple terms
A blockchain is a database formed by a sequence of entries called (you guessed it) blocks. Blockchains have a special characteristic by which any attempt to modify one of its entries would modify the entire chain. It is, therefore, an immutable data structure, which stores blocks in chronological order of insertion. This makes blockchain a […]
bitcoind.cpp – Commented Bitcoin source code
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 instance, tests are a great source of tiny example programs. Then there’s the ubiquitous Bitcoin-Qt client and, of course, bitcoind. All are good options […]
qt/bitcoin.h in Qt Bitcoin Core source code
qt/bitcoin.h pulls the config/bitcoin-config.h definitions that were generated by the configure script during the build process. This header also contains the Qt Q_OBJECT BitcoinCore class which handles 3 signals and provides 2 slots. (If you’re not familiar with Qt, please go here for an intro to slots and signals or here for an explanation about […]
Introduction to our commented Bitcoin source code section
Below you’ll find the main commented Bitcoin source code sections (sorted by section name and filename). Core amount.h – Defines the CAmount typedef, implements minimum and maximum valid amount range check. base58.cpp – The encoding function used for Bitcoin addresses. Base58 removes some potentially ambiguous characters from Base64 so Bitcoin addresses can be written down […]