Counterpartyの環境構築が大変という話

技術メモ

暗号通貨の独自通貨を作ろうとするとEthereumが有名で簡単ですが、BitcoinでもCounterpartyというプラットフォームを使えば簡単にできるんです。

簡単にCounterpartyの原理を説明すると
Bitcoinのプラットフォームでやりとりしているトランザクションに特定のデータを余分に追加して
その特定のデータを参照、追加、更新などをすることができるようになります。
この特定のデータに独自通貨の情報を含めることができる仕組みがCounterpartyにはあるため、簡単に独自通貨が作れます。

IndieSquareWalletとかで簡単に独自通貨作れたりします。作り方は以下記事参考にしてください。

Sponsored Link


Counterpartyの環境構築が大変だという話

ところでCounterpartyの環境構築しようとするとかなり大変です。
そもそも構成として以下のようなものが必要になってきます。

redis, mongodb, bitcoind(addrindex), counterblock, counterwallet, counterparty-lib, counterparty-cli

repository分けすぎ感があるんですよねぇ、、、追ってくの大変大変。

ただ、自分の場合以下点も手こずった原因だと思われます。

– bitcoin v0.15 でcounterpartyを動かしてみたかった
– コマンド一発で環境構築ができる federatednode を使わなかった

上記にノード構築方法記載があるんですが、、、これで動かしてしまうと仕組みよくわからないんですよね汗

何が一番はまったかって、ドキュメントが基本v0.13ベースで記載があったのでv0.15対応しようとすると色々の地雷を踏みまくりました。

当初、bitcoindを改造しないといけないと思っていました。以下上記ページからの抜粋ですが

bitcoind: Reference Bitcoin implementation, used by counterparty-server to sync to the Bitcoin blockchain. We use the addrindex branch, as it has additional functionality

このaddrindexというオプションがついたbitcoindじゃないといけないって話だったんで

https://github.com/bitcoin/bitcoin/compare/0.15…btcdrak:addrindex-0.14

この辺りをみながら改造していったんです。
特に詰まることなく改造できたんですが、addrindexを追加したことによりsearchrawtransactionsというRPCメソッドを追加することになるんですが、こいつがcounterparty-libというcounterparty本体のserverからアクセスすると、bitcoindが何もログ履かずに停止すると、、、

で、bitcoin-addrindexのコミットのコメントを見ると、、、

indexed-serverを使え?だと・・・?

よくわからないので最新の情報を求めてCounterpartyのForumをみて行くと


のページに

NOTE: Up to counterparty-lib 9.55.4, pay attention to the requirement to install a patched Bitcoin Core! After counterparty-lib 9.55.4, it is expected that the stock version of Core 0.15.0+ can be used in combination with Counterparty indexd-server.

と書いてあるではありませんか。

なんで、indexed-serverは当初bitcoindを改造するからいらないものと思っていたんですが、これv0.15以上は使わないとだめだと。
これにあたり、counterparty-lib、counterblock、counterparty-cliをindexedブランチが用意されていてそちらに修正しないとダメなんです。

これもうちょっとgithubのREADMEやらドキュメントのわかりやすい位置に書いて欲しいな、、、

まとめ

まだ、環境構築成功していないですが、v0.15以上のbitcoinを使ってcounterpartyを使う場合は、indexed-serverを使うようにしましょう!

Sponsored Link

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

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

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

コメントを残す

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

CAPTCHA


Ethereum(イーサリアム)
Ethereumの開発用ツールリストが公開されていた!

ALISのCTO石井さんがつぶやいてたんですが とてもありがたい #Ethereum 開発ツールの一 …

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が流行っているので、試しに日本の都道府県を …