Hacker News new | past | comments | ask | show | jobs | submit login

BlockSci is an academic research project at Princeton, but we're committed to maintaining it as open-source software, and we hope it's more broadly useful. If you're interested in using it or contributing to it, here's a list of ideas that we'd love to see implemented.

1. Create a Block Explorer. BlockSci would make a good backend for a block explorer website, because it would benefit from the built-in analysis library, with features like address clustering and parsing multisignature scripts.

2. Support more blockchains. BlockSci supports several blockchains, but there are limitations detailed in the paper [1]. For example, currently we don’t support any script operations not found in Bitcoin. Supporting more altcoins/blockchains would make BlockSci more useful.

3. Identify cold wallets and associated usage patterns. Cold wallet addresses could be identified by various patterns on the blockchain such as infrequent large withdrawals. After identifying these addresses, there are many interesting questions to ask such as studying the rate of deposits vs withdrawals.

4. Improve clustering heuristics. BlockSci’s address linking is based on the two heuristics from the Fistful of Bitcoins paper [2]. These heuristics have known limitations, leading to false positives and negatives; there’s a lot of room for improvement here.

5. Extract hidden messages. There are many messages encoded into the Bitcoin blockchain ranging from Wikileaks cables to Rickrolls [3]. We can find them if we can guess how they are encoded. But can we automatically extract and decode these hidden messages, say, by looking for address strings that look non-random?

[1] https://arxiv.org/pdf/1709.02489.pdf

[2] https://cseweb.ucsd.edu/~smeiklejohn/files/imc13.pdf

[3] http://www.righto.com/2014/02/ascii-bernanke-wikileaks-photo...


I am interested in contributing to making a Block explorer. You guys have something like this https://blockexplorer.com/ in mind? Is it Ok if I use React? I guess django for the backend.

It is great to see a project like this being open-sourced. There are so proprietary blockchain analysis services with closed-source software.

How do you handle forks and reorganizations? Can the software detect these and adjust its database to match?

Is the underlying data updated in realtime?

One of the authors here. It can be used for realtime analysis. The data is updated using a parser program which performs incremental updates. Adding a single block is extremely rapid. Running this repeatedly (for instance using a cron job) will keep the data up to date. I'm planning on adding a daemon mode in the next version to simplify the process of live updates.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact