読者です 読者をやめる 読者になる 読者になる

bitcoindをtestnetに接続してcounterpartydを起動する

f:id:yzono:20141229191711j:plain

はじめに

これまではbitcoinのmainnetに接続してcounterpartydを起動していましたが、いろいろテストをするとBTCやXCPの消費が無視できない数量になります。また、配当やBetting時にオペレーターが受け取る手数料を確認する時に、ある程度大きい数字でないと確認が難しい場合があります。

今回はbitcoindをtestnetに接続してcounterpartydを起動するまでの手順について書きます。

目次

  • 前提
  • bitcoind起動準備、起動
  • counterparty起動準備、起動

前提

bitcoind、counterpartydのインストールが完了していることを前提とします。過去の記事が参考になります。

プロセスが起動している場合は、プロセスを停止してください。

sudo sv stop counterblockd
sudo sv stop counterpartyd
ps -ef | grep bitcoind
kill -9 PID

bitcoind起動準備、起動

bitcoin.confファイル作成

$ mkdir -p ~/.bitcoin-test/
$ echo -e "rpcuser=rpc\nrpcpassword=1234\nserver=1\ndaemon=1\ntxindex=1\naddrindex=1\ntestnet=1" > ~/.bitcoin-test/bitcoin.conf

起動

$ bitcoind --datadir=/home/xcp/.bitcoin-test

いつものようにしばらく待ちます。mainnetに比べたら短い時間で済むはずです。(2〜3時間で終わりました)

Bitcoin Block Explorerでtestnetのブロックheightが確認できます。

counterparty起動準備、起動

testnetセットアップ

cd /home/xcp/counterpartyd_build
sudo python3 setup.py --with-testnet

起動

sudo sv start counterpartyd-testnet

起動確認

curl http://127.0.0.1:14000/api/ --user rpc:xcppw1234 -H 'Content-Type: application/json; charset=UTF-8' -H 'Accept: application/json, text/javascript' --data-binary '{"jsonrpc":"2.0","id":0,"method":"get_running_info"}'

{"result": {"bitcoin_block_count": 315871, "version_revision": 3, "version_major": 9, "running_testnet": true, "running_testcoin": false, "db_caught_up": false, "last_block": {"block_index": 311219, "block_hash": "00000000a2a3450f6340fc710ab6a33bec35cab38cd5ac2053b2735810c7e231", "difficulty": 1, "ledger_hash": "19ede778fd2e88b9447a7e51cd458221b545964cc6375f041f548dea2bc30e44", "block_time": 1417178568, "txlist_hash": "8edad9aed678a6c8b59598221201fb7d9c68cbb35295f787188abbdeb9d0cfb7", "previous_block_hash": "000000000000009ba74c87b8f6e609043081b2aa9199546eb29bd0907aa54b0f"}, "version_minor": 49, "last_message_index": 9}, "id": 0, "jsonrpc": "2.0"}xcp@tk2-236-27607:~/counterpartyd_build

まとめ

CounterpartyがEthereumからポートしたスマートコントラクトはtestnetでは既に動作するそうです(未確認ですが)。早めに機能を試したい場合はtestnetを使うメリットがあります。

ただしデメリットもあります。例えばBlock ExplorerサービスのBlockscanはtestnetに対応していない? そうですし、Confirmationの時間もmainnetより間隔が長いように見えます。

次回はCounterpartyが提供するGameの機能について書きます。過去のトランザクションを見ると意外にアクティブなので少し楽しみです。