Bitcoin Forum
April 25, 2024, 04:12:41 AM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Crypto.BI Toolbox - Explore blocks, transactions and addresses locally  (Read 708 times)
cryptobi (OP)
Copper Member
Newbie
*
Offline Offline

Activity: 5
Merit: 64


View Profile WWW
December 20, 2019, 01:21:50 AM
Merited by ABCbits (23), malevolent (15), mindrust (10), joniboini (6), suchmoon (4), o_e_l_e_o (4), Heisenberg_Hunter (2)
 #1

Hi, I've developed a simple set of tools to explore blocks, TX's and addresses locally, without the need for an external API.

Here's a sample using test data* :



How it Works

It imports raw block files (blkXXXXX.dat) files into a local database using a C++ layer that is linked straight to Bitcoin Core.

After the data is imported you can write any sort of query you wish, build custom apps on top of it and so on.

Use Any DB

The database interface is abstracted into a DAO layer so you can easily implement a different underlying DB like Neo4J or Cassandra. Right now I've been playing with it using MySQL. The MySQL layer is functional in this initial release.

Python Scripted

A separate Python implementation is provided so you can explore the local DB using some example scripts.

Since most of these functions don't access low level Bitcoin Core functions, this part of Toolbox is independent from the C++ code.

You can roll your own Python scripts easily by simply writing code around the DAO. A base implementation of the DAO is provided. Other language interfaces can be easily implemented by using the Python layer as a prototype.

E.g. This reference implementation can be easily extended to run analysis using Spark or Hadoop, for example.

In Sync with Bitcoin Core

By linking the C++ tree straight to Bitcoin Core, the code is always up to date with the latest BIP's, new block formats, forks, etc.

Code / Docs / Meta

Github

Documentation / Toolbox Home

License : MIT

Hope you enjoy playing with it!
Regards, Jose


* Perhaps you noticed that the genesis block didn't display any transactions on the provided screenshot. That's because during my first tests the genesis block was inserted by hand and not parsed from blk files, so it was left empty on my test data (TX data not imported). Don't worry, when you import the blk files Satoshi's very first coins will be shown correctly.

1714018361
Hero Member
*
Offline Offline

Posts: 1714018361

View Profile Personal Message (Offline)

Ignore
1714018361
Reply with quote  #2

1714018361
Report to moderator
Transactions must be included in a block to be properly completed. When you send a transaction, it is broadcast to miners. Miners can then optionally include it in their next blocks. Miners will be more inclined to include your transaction if it has a higher transaction fee.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714018361
Hero Member
*
Offline Offline

Posts: 1714018361

View Profile Personal Message (Offline)

Ignore
1714018361
Reply with quote  #2

1714018361
Report to moderator
1714018361
Hero Member
*
Offline Offline

Posts: 1714018361

View Profile Personal Message (Offline)

Ignore
1714018361
Reply with quote  #2

1714018361
Report to moderator
1714018361
Hero Member
*
Offline Offline

Posts: 1714018361

View Profile Personal Message (Offline)

Ignore
1714018361
Reply with quote  #2

1714018361
Report to moderator
AltcoinBuilder
Copper Member
Jr. Member
*
Offline Offline

Activity: 85
Merit: 5


View Profile WWW
December 20, 2019, 09:11:50 AM
Last edit: December 20, 2019, 10:17:20 AM by AltcoinBuilder
 #2

nice! thanks for sharing.
is this an offline tool and we should updated dat files right?
cryptobi (OP)
Copper Member
Newbie
*
Offline Offline

Activity: 5
Merit: 64


View Profile WWW
December 20, 2019, 10:42:37 AM
 #3

nice! thanks for sharing.
is this an offline tool and we should updated dat files right?

Hi, thanks for your comment.

Yep, offline tool.

But Bitcoin Core, of course, must be online in order to receive newer blocks.

Toolbox itself doesn't use the Internet at all, you can run the analysis on a separate computer/cluster/etc.

songsunling
Member
**
Offline Offline

Activity: 112
Merit: 11


View Profile
December 20, 2019, 01:33:57 PM
 #4

Great!

will this support bch or bsv in the future?
AussieHash
Hero Member
*****
Offline Offline

Activity: 692
Merit: 500



View Profile
December 20, 2019, 09:37:24 PM
 #5

Nice work 👍
taserz
Sr. Member
****
Offline Offline

Activity: 801
Merit: 293


Created AutoTune to saved the planet! ~USA


View Profile
December 21, 2019, 06:51:11 AM
 #6

This might be one of the best open source projects to explore the block chain in years!

Autotune Firmware for S19 and S19j! Overclock, Underclock, AutoTuning. Asic.to The MOON Increased hashrate, improved power efficiency 30w/TH up to 85th/s!!Mining bitcoin since 2011 • Best nerd decision of my life
R.I.U. iol
Newbie
*
Offline Offline

Activity: 15
Merit: 2


View Profile
December 21, 2019, 09:50:21 AM
 #7

This is really nice. Is there screenshots?
Pmalek
Legendary
*
Offline Offline

Activity: 2744
Merit: 7095



View Profile
December 22, 2019, 07:48:19 AM
 #8

Is there screenshots?
Read the documentation that is posted in the OP.
From https://crypto.bi/tape/toolbox/ you can reach the getting started guide > https://crypto.bi/tape/readme/


.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
cryptobi (OP)
Copper Member
Newbie
*
Offline Offline

Activity: 5
Merit: 64


View Profile WWW
December 26, 2019, 02:29:37 AM
 #9

New tool added to the Toolbox:  Encrypted Cloud Backups (ECB)

https://crypto.bi/tape/ecb/

ECB mangles filenames and uses strong encryption before sending your files to Amazon S3. Even if the repository leaked somehow or was hacked, it's impossible to know what the files are because their filenames and content look like random noise.

I used to use this to back up wallet.dat and other sensible files without using their real names.

cryptobi (OP)
Copper Member
Newbie
*
Offline Offline

Activity: 5
Merit: 64


View Profile WWW
January 09, 2020, 06:20:01 PM
 #10

Just pushed a commit for toolbox/db/blocks_updater

This tool should be kept running in the background while Bitcoin Core runs. It'll insert missing blocks, TX's, inputs and outputs into the local DB as they are committed to the block files.

Docs: https://crypto.bi/tape/updater/

DougM
Full Member
***
Offline Offline

Activity: 173
Merit: 120


View Profile
June 10, 2020, 01:22:30 AM
 #11

Just pushed a commit for toolbox/db/blocks_updater

This tool should be kept running in the background while Bitcoin Core runs. It'll insert missing blocks, TX's, inputs and outputs into the local DB as they are committed to the block files.

Docs: https://crypto.bi/tape/updater/

Very intriguing!  Unfortunately most of the links for tape are currently broken.  Are you still working on this project?

For example these are all broken:
https://crypto.bi/tape/toolbox/
https://crypto.bi/tape/readme/
https://crypto.bi/tape/python/
https://crypto.bi/tape/python/
unsigned_long_long
Jr. Member
*
Offline Offline

Activity: 39
Merit: 6


View Profile
June 13, 2020, 05:22:19 PM
 #12

Nice work!

I will try this out since I'm already running a node and I don't like using block explorers.

Roughly how many extra disk space does it use? I presume it needs to store an index of addresses.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!