Bitcoin Toolbox Home
Crypto.BI Toolbox is a set of tools for local blockchain exploration. It uses data from the raw Bitcoin block data files and does not require a network connection, API's and other...
Python Bitcoin blockchain analysis tools
Under the python/ subdirectory at the root of the Toolbox distribution you'll find the ... you guessed it ... Python implementation of blockchain tools.
So, how do you know whi...
init.cpp Bitcoin Core startup source code
This is our first exploration of Bitcoin-specific code in this series of articles.
Until now we've looked at how the Qt system was set up to run the GUI and Bitcoin services in...
Bitcoin Blockchain to MySQL Insertion Tool
Crypto.BI Toolbox comes with a raw .dat block file to MySQL insertion tool called blocks_inserter. To use it, first you’ll need to generate the MySQL schema on your local server by importing scripts/sql/mysql/cryptobitoolbox_bitcoin.sql into your MySQL server. Then you will need to configure Toolbox with the appropriate username, password, host and database so that Toolbox […]
optional.h a pre-C++17 optional type in the Bitcoin source code
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 you can see that lots of sections could use C++ 17 idioms. Let’s keep in mind though that Bitcoin Core is high security software […]
Bitcoin Blockchain to MySQL ETL Tool
Crypto.BI Toolbox comes with an ETL tool that allows you to extract data from the block DAT files and import the blockchain into MySQL. If you got the blocks directory configuration set up correctly, then you can run the ETL tool. Go to the Crypto.BI Toolbox installation directory and run: $ ./toolbox/db/blocks_to_sql > <output_file.sql> This […]
256 Bit Integer commented uint256.cpp from Bitcoin Core source code
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.h standardizes integer type names in an intuitive way. A uint8_t is an 8-bit unsigned integer and a uint64_t is a 64 bit unsigned integer. What you won’t […]
Concepts In This Page
Articles related to Bitcoin programming, payment systems, APIs and related topics.
Articles related to the analysis of blockchain records. Transactions, blocks, addresses among other data objects are of interest in this type of analysis.
C++ programming language - used to implement Bitcoin Core, as well as most first generation cryptocurrencies, high performance Bitcoin miners and other critical software.
Explore software programming topics. Cryptocurrencies, programming languages, tutorials and software development in general.
Source code is the machine logic implemented in a programming language. Fortunately, the most popular cryptocurrencies are open source, allowing us to study their source code.
MySQL is one of the most popular open source relational database management systems available.
Python is a popular scripting language that we use for several blockchain analysis tasks, especially in our Bitcoin Toolbox