ブロックチェーン技術ブログ

ブロックチェーン技術専門企業、コンセンサス・ベイスの代表によるビットコインなど暗号通貨やブロックチェーン技術のブログ

Bitcoin Core 0.10.0の主な変更

Bitcoin Core version 0.10.0がリリースされました。

日本時間2015年2月16日です。 主な変更点を簡単にまとめます。

主な変更点

1. ヘッダー・ファースト同期

  • より早いブロックチェインの初期同期
  • 今までは、22G近い、bootstrap.dat をダウンロードして、同期に数日かかっていましたが、2014年12月時点で、27Mのブロックヘッダーを同期するだけでよくなります。(数時間で終わるかと試してみましたが、最新block heightまで1日程かかりました。)

これに伴い以下のRPCが追加、更新

  • getblockchaininfo
  • getpeerinfo
  • getchaintips

2. 動的トランザクション手数料計算

  • 手数料(fee)が、もうハードコードされておらず、デマンドによりスケールする

  • 新たな txconfirmtarget 設定

  • 統計用にdataディレクトリ以下に、fee_estimates.dat ができる

新しいコマンドラインオプション

  • -txconfirmtarget=n
  • -sendfeetransactions

手数料見積もりのための新しいRPCコマンド

  • estimatefee nblocks
  • estimatepriority nblocks

3. RPC アクセスコントロールの変更

-rpcallowip の仕様が変わったので注意です!

0.9.x 以前

-rpcallowip=192.168.1.* というワイルドカード形式

0.10.0

-rpcallowip=192.168.1.0/24 というマスク形式

4. REST インターフェイス

HTTP APIができた。 -rest フラグを利用。 以下のような感じでアクセス

http://localhost:8332/rest/block/HASH.EXT

ドキュメントは、 doc/REST-interface.md を参照

5. RPCサーバ「ウォームアップ」モード

  • RPCサーバが、早く開始される
  • ブロック・インデックスの読み込みなどの初期化前に

6. 署名セキュリティの向上

  • OpenSSLからlibsecp56k1に変更。
  • DERでない署名は禁止

7. ウォッチオンリー・ウォレットのサポート

8. コンセンサス・ライブラリ

  • コンセンサス・ライブラリを同梱
  • libbitcoinconsensus.so (Windowsの場合 .dll)
  • インターフェイスは、bitcoinconsensus.h で定義
  • bitcoinconsensus_verify_script: scriptのverify
  • bitcoinconsensus_version: APIのバージョンを返す

9. P2SHアドレス用のスタンダードScriptルールが緩和

  • isStandard()のルールが、P2SH redemption scriptのために削除
  • n-fo-m OR y

10. bitcoin-tx

11. マイニングと中継ポリシーの向上

  • アップデート時に、stratum mining プロトコルを利用している場合は問題ないが、プールにgetblocktemplate プロトコルを使っている場合は、注意

詳しくは、本家の説明を。

12. BIP 66: 署名用の厳格なDERエンコーディング

  • DER署名でないものを禁止

参考

公式情報