Bitcoin Forum
April 20, 2019, 03:16:50 AM *
News: Latest Bitcoin Core release: 0.17.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 4 5 6 7 8 »  All
  Print  
Author Topic: [ANN] chainsnort (live transaction monitoring and fingerprinting tool)  (Read 24275 times)
flatfly
Legendary
*
Offline Offline

Activity: 1022
Merit: 1002


View Profile
December 16, 2013, 07:06:09 PM
Last edit: September 05, 2014, 04:45:51 PM by flatfly
 #1

This command-line tool displays transactions as they are happening on the blockchain.
It's similar to a network trace, but for blockchain activity. It has the ability to automatically flag large transfers.  It can be useful in identifying interesting patterns in transactions.

Warning: watching the live blockchain action can be hypnotic!

Features:
- Print new transactions to the console, in the following format:
   UTC Time, Total Amount (sum of all outputs), Main recipient, Transaction Fee
- Big (50+ BTC) transactions and extreme fees are flagged.
- Also shows "new block" events, with the corresponding block reward
- No private keys, admin privileges, or credentials of any sort are needed.
- 100% Python -> runs fine on OS X, Linux, Windows and Android!
- NEW August 2014: transaction type guessing engine  (in private beta build only)
- Low-latency encrypted websocket connections
- Extremely light on resources and bandwidth
 
I will be adding new features and parameters on a regular basis.


The current data source is the blockchain.info websocket API. Direct local bitcoind support, while a little more complex, could also be implemented in case there is enough demand for that.

Many thanks for your support - donations will help me continue development!

As a little bonus, you will be treated to a colorful ASCII easter egg (in the Windows build only, for now), if chainsnort sees a tip being sent to my tip jar [1111127SpvabYpoeDoiz5L7QPkfiSh2Q] - The easter egg changes depending on the size of the transaction Smiley

I also have a separate edition with some features that are useful for forensic and technical investigation purposes. I'm not releasing it at the moment but PM me if interested.


Screenshots:






Latest public version: 0.43.3

OS X and Linux

Just copy and paste into a terminal:

1/ curl -o websocket.py https://raw.github.com/liris/websocket-client/master/websocket.py

2/ curl -o chainsnort.py https://gist.github.com/flatfly/8253870/raw/9733e34e469e1bcd8d0ae13565ade4eaa0490618/gistfile1.py

3/ python chainsnort.py


Windows build

Download

Please do leave some feedback or send a tip if you like this tool. Highly appreciated!


Legal stuff:
I share the source code of chainsnort for educational and reviewing purposes only. If you plan to reuse portions of the code in commercial, academic or government projects, please contact me.
                    
Also, I am developing this on my free time and with a VERY limited budget, so i welcome any donations. Also, all donators are entitled to a special color edition of chainsnort.  (Proper website coming soon)



SHA1: ac7c67d48d4f11aff93c4c8a5e3c304f9097d578

GPG signature for Windows executable:

Code:
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (MingW32)

iEYEABECAAYFAlLSrX4ACgkQ0dQqIfkZdf7H2wCgqhxvqnr9bAEuuemn0DruGjxF
c54An0NNSZOj4l72Z8RWpydTdkNlUVHc
=/Bo1
-----END PGP SIGNATURE-----


Source code for all platforms (Windows, Linux, OS X, Android): available at this gist.

1111127SpvabYpoeDoiz5L7QPkfiSh2Q. Only donate if you have a reason to.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1555730210
Hero Member
*
Offline Offline

Posts: 1555730210

View Profile Personal Message (Offline)

Ignore
1555730210
Reply with quote  #2

1555730210
Report to moderator
betyourbits
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile WWW
December 16, 2013, 09:31:54 PM
 #2

This is very cool! What kind of uses do you think it will serve? For traders?
carajillu
Hero Member
*****
Offline Offline

Activity: 578
Merit: 500


View Profile
December 18, 2013, 11:58:27 PM
 #3

Cool!
flatfly
Legendary
*
Offline Offline

Activity: 1022
Merit: 1002


View Profile
December 19, 2013, 11:49:38 PM
 #4

Optimized buffer size to drastically reduce bandwidth usage.

1111127SpvabYpoeDoiz5L7QPkfiSh2Q. Only donate if you have a reason to.
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 21, 2013, 07:27:39 PM
 #5

Wow

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 12:00:55 PM
 #6

server='https://blockchain.info' ssl?

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 12:01:36 PM
 #7

Error in cygwin, but works without

$ python chainwatch.py
ChainWatch v0.35:  52789 confirmed transactions in last 24 hours - 0.61 tx/sec


ValueError: zero length field name in format

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 12:25:07 PM
 #8

How are you making the beep? I can't find it in the code :/

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
flatfly
Legendary
*
Offline Offline

Activity: 1022
Merit: 1002


View Profile
December 22, 2013, 12:32:37 PM
 #9


on my to-do list!

1111127SpvabYpoeDoiz5L7QPkfiSh2Q. Only donate if you have a reason to.
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 12:33:02 PM
 #10


It redirects anyway

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
flatfly
Legendary
*
Offline Offline

Activity: 1022
Merit: 1002


View Profile
December 22, 2013, 12:33:58 PM
 #11

Error in cygwin, but works without

$ python chainwatch.py
ChainWatch v0.35:  52789 confirmed transactions in last 24 hours - 0.61 tx/sec


ValueError: zero length field name in format


Perhaps you have a different version of Python in cygwin?
ChainWatch uses Python 2.7.

1111127SpvabYpoeDoiz5L7QPkfiSh2Q. Only donate if you have a reason to.
flatfly
Legendary
*
Offline Offline

Activity: 1022
Merit: 1002


View Profile
December 22, 2013, 12:34:27 PM
 #12

How are you making the beep? I can't find it in the code :/

Code:
print '\a'
Smiley

1111127SpvabYpoeDoiz5L7QPkfiSh2Q. Only donate if you have a reason to.
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 12:35:48 PM
 #13

How are you making the beep? I can't find it in the code :/

Code:
print '\a'
Smiley

crazy

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 12:37:02 PM
 #14

yup

$ python --version
Python 2.6.7

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
flatfly
Legendary
*
Offline Offline

Activity: 1022
Merit: 1002


View Profile
December 22, 2013, 02:38:41 PM
Last edit: January 03, 2014, 05:51:36 PM by flatfly
 #15

Updated to version 0.384 (see code in OP).

Changes:
- some transactions were occasionally missing - fixed
- cleaner timestamp ordering
- lower network usage
- terminal color output for OS X, Linux and Windows  (this feature is for donators only)



Note: Do not tweak the various timer and buffer values unless you like playing with fire.
You might get your IP address banned from blockchain.info.

1111127SpvabYpoeDoiz5L7QPkfiSh2Q. Only donate if you have a reason to.
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 02:56:30 PM
 #16

How'd you know I changed the sleeps Huh

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
flatfly
Legendary
*
Offline Offline

Activity: 1022
Merit: 1002


View Profile
December 22, 2013, 03:16:50 PM
 #17

How'd you know I changed the sleeps Huh

Just a hunch... Smiley

1111127SpvabYpoeDoiz5L7QPkfiSh2Q. Only donate if you have a reason to.
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 03:43:29 PM
 #18

Wow

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
flatfly
Legendary
*
Offline Offline

Activity: 1022
Merit: 1002


View Profile
December 22, 2013, 10:37:19 PM
Last edit: December 24, 2013, 05:42:51 PM by flatfly
 #19

Next thing to be added: the fee paid for each transaction is worked out based on the total inputs and outputs and displayed in the right-most column. It gives you a quick insight into what people are paying to get their coins transferred. The color version will flag outliers in red.

Preview:


1111127SpvabYpoeDoiz5L7QPkfiSh2Q. Only donate if you have a reason to.
bitpop
Legendary
*
Offline Offline

Activity: 2464
Merit: 1045


https://keybase.io/bitpop


View Profile WWW
December 22, 2013, 10:37:57 PM
 #20

The best

Reputation  |  PGP  |  DigitalOcean  |  TorGuard  |  Ethereum Classic
Bitcoin: 3DSh6AnmvBpDJFUz2mnLirMLmTMcFs9nDm
Bitmessage: BM-2cXN9j8NFT2n1FxDVQ6HQq4D4MZuuaBFyb
Pages: [1] 2 3 4 5 6 7 8 »  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!