カテゴリー別アーカイブ: 【マイニング】

【SEGWITの状況についての基礎理解と再整理をしてみました(UASF/SEGWIT2X)】

Segwitのデプロイ関係を、もういちど簡潔にわかりやすく解説してみようと思う。

プロトコルの仕様それ自体、デプロイメントメソッド、推進体制、この3つがごっちゃになっているので、非常にわかりにくい。これを切り分けて整理する。

まず、プロトコルの仕様

  • BIP141 (Segwit)

これが、Segwitのプロトコルの仕様である。コア開発チーム主導で策定&実装された。BIP141= オリジナルのSegiwitと解釈してよい。BIP141自体の導入には現在はほぼ誰も反対をしておらず、コミュニティの大多数の同意が得られたと解釈されている。

もめているのは、デプロイメント方法(デプロイとは、アクティベート同義)。これには、3つ提案がある。

  • BIP9
  • BIP148 (UASF)
  • BIP91

BIP9とは、ソフトフォークをデプロイを効率&安全にできるようにするために導入された新方法。ブロックの中にversion bitsという情報を含ませこれをシグナルすることで、しきい値をもうけてアクティベートさせることができる。

version bitsは1から29まであり、29種類のソフトフォークを同時並行でデプロイ可能である。

Segwitはこの機能を用い、version bits=1のフラグを用い95%でアクティベートという設定になっている。

しかしご存知の通り、Segiwtのアクティベートはされていない。

次に、前提として重要な部分を理解したい。

・一旦はじまった BIP9 versionbits=1 のデプロイ自体を変更することは極めて困難。

というもの。

一旦、versionbits 1 を取り下げて、再度値を設定しなおしたり、別のversionbtsを使って、しきい値を下げたものを並行して投票にかければいいかと思いきや、これは難しい。

Segwitは、プロトコルの多くの部分に変更を加える大規模な改修であり、同様の機能のソフトフォークの別のコードを並行してデプロイすることは不可能である。このため、しきい値そのものを下げるなどをするには、11/15日のversion bits 1の期限切れの後に、再デプロイという形になる。

11/15日まで待てないので、BIP148と、BIP91が考案された。

これは、デプロイ方式を2階建てにしようというものだ。もともとのBIP9/bits 1は変更せず、しかしながら、bits 1をシグナルしないとペナルティを食らうようにして、bits 1をシグナルせざる得ない状況に追い込もうということである。

bits1をシグナルせざる得ない状況とはつまり、

  • bits 1 をシグナルしていないブロックは無効ブロックとして破棄するという追加ルール(ソフトフォーク)をデプロイする・・(1)

ということである。

さて、この(1)を実現する仕様に、BIP148、BIP91の2つがある。異なる点はこれ自体のデプロイ方法にある

BIP148(UASF)は、フラッグデイ・デプロイで、8/1という期日が来たら(1)のルールが強制適用されるというもの

BIP91は、(1)のルールを適用するために、BIP9を再度用い、version bis 4にて、80%のしきい値で、マイナー投票を行うというもの。80%に成功すると、(1)のルールが適用される。

BIP148と91は、適用方法がちがうものの、ゴールは(1)ルールの適用であることは同じで、結果は同じになる。そして、(1)が適用されると、BIP9-bits1が95%になり、Segiwitがデプロイされる結果になる。

整理すると、

BIP148/91 → BIP 9 bits1 → BIP 141 (segwit)

という構造になっている。

これらの話とは別に、2Mハードフォークがある。2Mハードフォークに関しても、いくつかの提案(BIP)が存在している状況だ。

最後が推進体制。ソフトウェアの名前である。開発体制とも大体一緒。これは3つある。

  • Bitcoin Core
  • Segwit2x
  • (Bitcoin Unlimited)

それぞれに支持する方法が違う。図にしたほうがわかりやすいので図にする。

開発・推進体制・ソフトウェア名 BIP141(Segwit) BIP141のデプロイ方法 2Mハードフォーク
BIP9 BIP148 BIP91
Bitcoin Core 賛成 賛成 容認 否定しない 反対
Segwit2x 賛成 反対 反対 賛成 賛成
Bitcoin Unlimited 反対 反対 反対 反対 賛成

Segiwit2xは、わかりにくいが、これは新ソフトウェアの名前で、これにどのような仕様を含めるかというのは別の問題である(決まっていない)。今のところ、BIP141のオリジナルSegwitと、BIP91が、Segwit2xに含まれるようだ。  2017.6.25現在記事

google_plustwitterFacebook

友だち追加数
人生の旅人 時貞のブログへ

Instagram

メルマガ購読・解除
人生の旅人 時貞のメルマガ


バックナンバー
powered by まぐまぐトップページへ