bitcoin p2pのやりとりをログに表示する 〜 cloud9で無料で環境整える

技術メモ

bitcoin p2pの生ログを見る方法を教えてもらったので構築方法を記載しておく。

環境構築

cloud9というサイトを教えてもらったのでここで環境構築する。
初期設定はこちら -> Cloud9の使い方と便利機能!最強プログラミング開発環境(IDE)

Workspace name に任意の名前を入れ、Clone from Git or Mercurial URL に https://github.com/bitpay/bitcore-p2p を指定する。
また、Choose a template で Nodeを指定して、Create Workspace ボタンを押す

以下の画面がでて

ワークスペースが表示される。
ここでしたのタブで「npm install」とうつと関連ライブラリのインストールが始まる。

その後、index.js を以下のように変更する。また、下記の「127.0.0.1」の部分は公開されているbitcoinのfullnodeを指定する。
あまり外部の公開されているfullnodeを探してアクセスすると迷惑になるのでできる限り自前のサーバーにアクセスがよいが、、、、

ちなみに、fullnode は https://bitnodes.21.co/nodes/?q=Japan のサイトで検索できる。

var bitcore = require('bitcore-lib');
bitcore.P2P = require('./lib');

module.exports = bitcore.P2P;

var Peer = bitcore.P2P.Peer;

var peer = new Peer({host: '127.0.0.1'});

peer.on('ready', function() {
  // peer info
  console.log(peer.version, peer.subversion, peer.bestHeight);
});

peer.on('disconnect', function() {
  console.log('connection closed');
});

peer.on('inv', function(message) {
  console.log('inv');
});

peer.on('tx', function(message) {
  console.log('inv');
});

peer.connect();

その後、Run すると inv をメッセージをやりとりした際に inv が出力される。

peer.on('inv', function(message) {

を増やしていけば、各メッセージの内容を受け取ることができる。
もう少しこの辺りに変更加えて、生ログなどを見ていこうと思う。

Sponsored Link

ビットコイン(Bitcoin)、イーサリアム(Ethereum)、リップル(Ripple)、ネム(NEM)などの仮想通貨を買うならZaifがおすすめです。

特に国内でETHを購入するなら、アルトコインでも板取引に対応しているZaif(ザイフ)が割安なのでよいですよ。

コメントはまだありません

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA


Ethereum(イーサリアム)
Error: The contract code couldn’t be stored, please check your gas amount.

ALISのICOソースのzeppelinバージョンを1.2から1.8にあげようとしたときにはまったエ …

Dapps
日本の都道府県を所有できるDApps & ERC721 のサンプルを公開してみました

最近、Ethereum上でカードなどを所有できるdAppsが流行っているので、試しに日本の都道府県を …

Ethereum(イーサリアム)
TX doesn’t have the correct nonce – Metamask

EthereumのdAppsを作ろうとしていてはまったのでメモ。 Metamaskを使用して支払いを …