対立の図式は複雑、残る懸念は11月の2MBハードフォーク

 改めて8月1日危機を乗り越えた経緯を振り返ると、Core Devとマイナーの対立の構図が解決したとはいえない。また、対立の内容は単純な二項対立ではなくもっと複雑である。(1)開発者コミュニティの主流(Core Dev)と(2)有志(UASF推進派)、(3)ビッグブロック派の主流(ニューヨーク合意派)と(4)一部有志(Bitcoin Cash派)という、少なくとも4グループの活動が絡み合っている。

 ニューヨーク合意派と開発者コミュニティの間では、個人どうしがTwitterで激しく議論することは繰り返されているものの、正式な交渉チャンネルは存在しない。この複雑な対立の構図が短期的に解消されることは考えにくい。

 そんな中、次の懸念はニューヨーク合意で計画された11月のハードフォークだ。これまでの経緯が示唆するように、各陣営、特にマイナーが現時点で表明している方針をそのまま貫くとは断言できず、思ってもみなかった展開が、駆け引きの中から生まれることもあり得る。

 現在、ビットコイン開発者コミュニティは、この11月のハードフォークに反対する態度を明らかにしている。大きな理由は、ビットコイン開発者コミュニティが考える開発の進め方に大きく反すること。もう1つの理由は、ニューヨーク合意がビットコイン開発者コミュニティを無視した形で進められていることだ。

 ビットコイン開発者コミュニティによる声明文は、ニューヨーク合意に基づき開発が進んでいるクライアントソフトウエア「SegWit2x(btc1)」を名指しで批判している。その主な内容は下記の通りである。

(1) ビットコインのコンセンサスルール(ブロック生成のアルゴリズム)の更新は、慎重に進めるべき。SegWit2xには多くの反対意見がある。

(2) SegWit仕様の有効化と2Mバイトのハードフォークは結びつかない。

(3) SegWit2xにはリプレイ攻撃対策がない。

 また、ビットコインのクライアントソフトウェアであるBitcoin Coreでは、8月に入りSegWit2xの成果物である「btc1」との通信を遮断する修正を施している。UASF運動を先導した、前出のSamson Mow氏も、Twitterで11月のハードフォーク中止を呼びかけるツイートを書き込んでいる。

 実際、SegWit2xの実装であるbtc1の開発リポジトリを見ると、本家ビットコインに比べ投入されている開発者リソースが乏しいことは一目瞭然だ。9月1日時点で見ると、最新の修正が実施されたのは7月22日。つまり1カ月以上にわたり修正がない。またネットワーク上で動いているノード数は、多数派のBitcoin Coreが5000〜6000ノードなのに対して、SegWit2x(btc1)ノードは160ノード程度と少ない。この数字を見ると、ニューヨーク合意に参加する各社は、btc1を使わず、従来のビットコインのクライアントソフトウエアにBIP91を組み合わせることで、SegWit有効化を行ったものと考えられる。

 ビットコイン開発者コミュニティがSegWit2xを批判している大きな理由は、「11月」とスケジュールを固定したハードフォークには準備不足に伴う混乱の懸念があることだ。従来、ビットコインの開発者コミュニティは新機能を綿密に検討、テストした上で適用してきた。ところがSegWit2xの開発リソースは乏しく、開発実態には疑問符が付く。また、SegWit2xはリプレイ攻撃と呼ぶ一種の不正への対策をしないままハードフォークしようとしている。このままハードフォークを実施すると、ソフトウエアの不具合やリプレイ攻撃により、大きな損害が発生する懸念もある。

 以上が記事執筆時点までの事実の推移である。ここで筆者の視点から一連の出来事を整理したい。

(1) Samson Mow氏が主張するように、UASFはSegWit の有効化を実現する役割を果たした。

(2) bitFlyer加納裕三氏が指摘するように、ニューヨーク合意はUASFによる混乱回避に実効性があった。

(3) Bitcoin Cashは、UASF回避の騒動に乗じて新たな仮想通貨を立ち上げる動きだった。

(4) ビットコイン開発者コミュニティは、ニューヨーク合意の成果として登場したソフトウエアSegWit2xへの大きな懸念を表明している。

(5) この懸念を受けてSamson Mow氏は11月のハードフォーク中止を訴えている。