Giter Club home page Giter Club logo

bitcoin-sniffer's Introduction

Bitcoin P2P Network Sniffer v0.0.2

BTC Sniffer is a Python script based on an early version of jgarzik / pynode ( https://github.com/jgarzik/pynode ) that connects to any node on the Bitcoin Network and trigger the following events:

  • new_block_event(block): Triggered when a Block is found
  • new_tx_event(tx): Triggered when a Transactions is found

The purpose of BTC Sniffer is to add an easy way to listen to Bitcoin Network events and facilitate extensions without having to alter any bitcoind's code, making it easy to upgrade you bitcoind node without having to rewrite your extensions.

IMPORTANT: BTC Sniffer doesn't do any validation, it just trust the node it connects for that, so if you use it on production, make sure you connect to a node you trust.

The best possible scenario is having BTC Sniffer listening to a local bitcoind node, since we can assume you can trust your own node. But tecnicly, it can connect to any node on the network ( http://blockchain.info/connected-nodes )

See how it works

Here is an example of the script output:

MacBook-Pro:bitcoin-sniffer sebicas$ ./sniffer.py

 Bitcoin Network Sniffer v0.0.2
 -------------------------------------------------------------------------
 Connecting to Bitcoin Node IP # 173.242.112.53:8333
 Connected & Sniffing :)

- Valid TX: b5d7c8cc5928cf9eb1d2b1707bea117b068ced9cf658ad720390078c4e393c4c

     To: 16PMf9Yi1hy9C1nCiWfiXNoPNaHaC6ipBK BTC: 12.33436000
     To: 1AimQmFs6dkd1dFPopcZ8VC7Sc5HJGYfKk BTC: 0.00016000

 - Valid TX: 81cf6efd753db1a1695297f95262838804aa9124da52a1000d4d0456bbd84654

     To: 1J9G5VnQyShSzetZNmE9bFFSWmnTfedb3q BTC: 1.54410000
     To: 1LdXRVAATSYRVuherLi3gB7HpmPaPTpLh7 BTC: 0.01560000

 - Valid TX: cd62bdabe87f4bfed98f1de6fc78a0f273e23aafc3ff89d7fccf5891fe4ad4e3

     To: 1K4y7R89JzhWe42uH6cubAJ8A8APk9mCqE BTC: 34.99941317
     To: 1BRyszipKLfwj44r85wEVRW7BUCrgofbgd BTC: 3.00000000

 - Valid Block: 00000000000003f57d766770ac6015a661542d5b7ba34b84d89aa80da5d2f294

 - Valid TX: c75be564867cb0aa2d9c7ba8628f28fe0e9c05938d39336007c2a18aa91a0f6e

     To: 1FBqPQg3VsybSTLw5gpNhTg4N1jikSRW4X BTC: 47.28058819
     To: 1KXarmngRew1kr3tHj4RnBJNpcEtJxiBZL BTC: 0.06800000

 - Valid TX: 66a3afd0a246a42d780e245e8eab9c4314c2919dcccbef1f90bff62b4fcfd4c4

     To: 1MUjNPQVk3eztHXbkwCwuD249P1CjQL7Hc BTC: 0.01008070
     To: 1KRSKQb4zAn2WoYrNpHUChbaJB1MuK3gMj BTC: 0.00022020
     To: 1DgT9ugHk5rXvg53osVKFJxyt9Mijw6QYF BTC: 0.00100000
     To: 1CZ1voXst65eWxisDgoEKwCJ37opnDHG3d BTC: 0.00061325
     To: 1C28Zz49eYJrrweQNC33nBVFrEUb23kiyP BTC: 0.00013165

Use Case Examples

You can use BTC Sniffer to easily:

  1. Push notifications to an external messaging server ( Amazon SNS, ZeroMQ, RabbitMQ, etc )
  2. Store real time transactions on any database format you want ( MySQL, MongoDB, etc )
  3. Use sockets to display real time stream of network events on your website
  4. Create a real time charts and statistics

And anything else you can think of. :)

Aditional Resources

Contributing

  1. Fork it.
  2. Create a branch (git checkout -b my_markup)
  3. Commit your changes (git commit -am "Added Snarkdown")
  4. Push to the branch (git push origin my_markup)
  5. Create an [Issue][1] with a link to your branch
  6. Enjoy a refreshing orange juice and wait

Colaborators

Thanks to the following colaborators:

bitcoin-sniffer's People

Contributors

sebicas avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.