Monacoin core based Bitcoin 0.20 の論点整理 (3) [訂正あり
つづき。
Ⓜ
モナコインのベースブランチを Litecoin から Bitcoin に移すに際しては、単に技術的というよりも、政治的というか思想的というか文化的な要素にも変容が求められます。
そのなかで、割と大きいものが RBF (Replace By Fee) です。
これがどんな機能なのか。日本語でのクリプトコイン系技術情報発信に定評のある安土さんのブログで、完璧な解説を読めます。 (ありがたい)
仕様である BIP-125 も明確で、技術的には合理です。
しかしながら、この機能、Bitcoin と Bitcoin Cash とが分裂に至った遠因にもなっている、政治的というか思想的というか文化的いうか…の諍いのタネでもあります。
Ⓜ
対立の軸は「0-conf の扱い」です。0-conf は割と知られた概念かもしれませんが、ここで軽く復習しておきます。
送金トランザクションは、マイナーがブロックに纏め皆が認めた時点で、その正当性がとりあえず確定します。現実にはブロックの巻き戻しが有り得ますが、とりあえず、確定します。これを承認(confirmation / conf)と呼びます。採掘が進むと、上にブロックが積まれた数だけ承認回数が増えます。承認回数が多いブロックに含まれるトランザクションは、確率的に、覆る可能性が減っていきます。これが、ブロックチェーンの仕組みです。
承認が行われる前のトランザクションは、各ノードは mempool と呼ばれる領域に貯め置かれます。mempool にあるトランザクションは1回も承認を受けていないので 0 承認… 0-conf と呼ばれます。
復習、終わり。
Ⓜ
現在の Bitcoin core の開発者の主流は「0-conf は、チェーンに取り込まれておらず、どんな不正も起こり得るので信じてはいけないし、利便性のためなら上書きを起こすのも合理的である」という立場です。その上で「10分の承認間隔を待てないようなユースケースでは、Lightning Network や Liquid サイドチェーンのような、即時送金向けソリューションを使え」という解を提案しています。
現在の Bitcoin は、SoV (価値の保存)とかデジタル・ゴールドとか、送金手段よりも価値記録手段の側面で注目を浴びているように思えます。経済的な観点で昨今の価格高騰を見れば、判断は正しかったかもしれません。
一方、Bitcoin Cash 側の主流は「複雑なソリューションを使えというのは、開発者の奢りである。0-conf も広く捉えれば Bitcoin のネットワークなのだから安全便利に使えて然るべきである」あたりです。Cash 側はさらに分裂していたりして、もう何が主流なのか分かりづらくなっていますが、0-conf での利用を危険に晒すような変更に対し敏感なのは、だいたい一緒でしょう。
RBF は、悪用すると、0-conf のトランザクションを使った2重支払いを引き起こせます。対面決済など、Bitcoin の平均承認時間10分を待てない決済の場面は少なくないので、Cash 側として大問題なわけです。また「もともと Satoshi が構想していた Bitcoin は送金ソリューションだった」という見方はできます。よって、Cash 側の言い分にも理があるようにも思えます。
技術的に明確ならば、判断をつけやすいのですが。この手の解釈問題は宗教みを帯びてくるので、甚だ面倒です。特に宗教みを帯びている「信者」たちの扱いが。
Ⓜ
さて、現行のモナコインのベースである Litecoin はといいますと。これまた(モナコインにとっては)面倒なことに、Cash 寄りです。あるバージョン(たぶん 0.17) からデフォルトで RBF を無効化するパッチが当たっています。
さらに面倒なことに、Litecoin は、行う気になれば RBF が可能で、引きづられてモナコインも RBF が可能です。ネットワーク上にある全ての採掘ノードが同意すれば事実上の RBF 禁止はできますが、それを強制しなくてよいのが、トラストレス P2P の強みです。強みを捨てるだけの正義が RBF 嫌悪の側にあるか否か…。
Ⓜ
…というわけで、取りうる解は概ね 2 つに別れます。
宗教論争に巻き込まれないよう、引き続き RBF 無効化パッチは当てておく。monad など core 以外のノードのソースコード保守コストは騰がるが、それは心の平安のために必要なコストとして諦める。
モナコインのネットワークでは、実質 RBF が可能なので、無駄な RBF 無効化パッチは取り去る。0-conf のリスクを周知したほうが、使う側も保護される。モナコインの平均承認時間 90 秒を待てないソリューションが有望なら、Lighting Network を推進しよう。
これまたどちらを選んでも正解な気がするので…悩ましい。