Practical overview
When it fits
Use it when your analysis starts from local Bitcoin Core blk*.dat files and you need streamed raw data rather than a hosted explorer interface.
Who it is for
- Developers and analysts working with local Bitcoin block files.
- Users building offline workflows for inspecting scripts, headers, transaction counts, or output values.
Documented uses
- Extract block headers or scripts from local Bitcoin data files.
- Count transactions, inputs, and outputs.
- Produce output height-and-value records for downstream analysis.
- Filter headers to the best chain before using a whitelist to exclude other blocks.
Requirements & limits
The repository declares an MIT license. The README warns that the project is not actively maintained.
- Requires local block data and the parser tools; the documented examples use shell pipelines.
- Transforms write raw binary output rather than hexadecimal.
- Orphan blocks are included unless excluded with a whitelist.
- The README exposes thread, memory, transform, and whitelist options.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Extract scripts from the local best-chain blockchain data
Use the documented parser pipeline to filter block headers into a best-chain whitelist, then export scripts for those blocks.
Before you start
- Local Bitcoin Core block files matching
~/.bitcoin/blocks/blk*.dat. - The
parserandbestchainCLI tools available in the working directory.
Steps
Pipe the block files into
parserwith transform-t0to output unordered 80-byte block headers, then pipe those headers intobestchainand save the whitelist aschain.dat:cat ~/.bitcoin/blocks/blk*.dat | ./parser -t0 | ./bestchain > chain.dat.Pipe the block files into
parserwith-j4 -t1 -wchain.datand redirect standard output to~/.bitcoin/scripts.dat:cat ~/.bitcoin/blocks/blk*.dat | ./parser -j4 -t1 -wchain.dat > ~/.bitcoin/scripts.dat.
Expected outcome
A `chain.dat` best-chain filter file and a `scripts.dat` file containing scripts from the filtered blocks, with each script prefixed by a uint16_t length.
Guide limitations
- The project warns that it is not actively maintained and should be used with caution.
- Parser transform output is raw binary, not hex.
- The parser skips bitcoind-allocated zero-byte gaps and includes orphan blocks unless a whitelist omits them.
- The documented pipeline assumes the named block-file path and parser tools are available; build or installation steps are not documented.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 17 October 2026
- Original website title
- bitcoinjs/fast-dat-parser · Official homepage title · retained in its source language

