Data preparation
Last updated
Last updated
Preparing the block headers is relatively straightforward. We wrote a script in Rust that requests data from a Bitcoin full node via RPC, starting from the genesis block. The script retrieves and interprets block data (hash, height, version, preHash, nextHash, merkleRoot, time, bits, nonce, difficulty, chainwork). Using preHash, it fetches subsequent blocks in a chain request manner. The data is saved into an SQLite file. After running the script, we compare the data with another set obtained from a different Bitcoin full node. Once verified, the SQLite DB file is finalised and uploaded for public download and verification.
Welcome to download and verify the block header data : Block headers prior to 840,000
We compiled the Bitcoin (v27.1) code on three machines, starting full nodes to synchronise with the Bitcoin mainnet. One node was modified to stop block synchronisation at height 839,999, while the other two nodes continued to sync to the latest block.
We selected three popular open-source projects: ElectrumX, bitcoin-utxo-dump, and rusty-blockparser. Each project was used to read block records from the data sources, extracting necessary fields such as height, address, txid, vout, value, and scriptPubKey. This process resulted in approximately 170 million records, which were ultimately stored in our Clickhouse database. We use this script to transfer data from ElectrumX to clickhouse.
We used SQL to aggregate and summarise the data, comparing the theoretical total Bitcoin output at block height 839,999 with the actual data. A cross-comparison was performed between the three methods to verify address and balance data consistency. Once all methods produced consistent results, we confirmed the data's integrity and readiness for upload.
By following these meticulous steps, we ensured the reliability and accuracy of the UTXO data and block headers for the exSat network initialization. This collaborative effort demonstrates our commitment to transparency and precision in blockchain data management.
Welcome to download and verify the UTXO data : UTXO data prior to 840,000