Vitalik がフォークとマーケットについて語る
星球君的朋友们
2019-01-19 01:22
本文约3448字,阅读全文需要约14分钟
プロトコル アップグレード メカニズムとしてハード フォークとソフト フォークのどちらを優先すべきかは、ブロックチェーン領域における重要な議論です。

編集者注: この記事は以下から引用しました編集者注: この記事は以下から引用しましたイーサリアム愛好家 (ID: ethfa​​ns) vitalik、著者ヴィタリック・ブテリン、Odailyの許可を得て転載。

副題

ハードフォーク、ソフトフォーク、デフォルトおよび必須

次の図はフォークのタイプを示しています。

画像の説明

図の左側は双方向のハードフォーク、右側は大きいものから小さいものまで、厳密な拡張ハードフォーク、元の合意、ソフトフォークです。

  • ここでは、ソフト フォークとハード フォークの一般的に挙げられる利点をいくつか紹介します。

  • ハードフォークにより、開発者は新しいルールを確保するために注意する必要がなくなるため、プロトコルをアップグレードする際の柔軟性が高まります。

  • ソフトフォークは、ユーザーがブロックチェーン上に留まるためにアップグレードする必要がないため、ユーザーにとってより便利です。

  • ソフトフォークによってブロックチェーンが分割される可能性は低くなります。

ソフト フォークではマイナー/バリデーターの同意のみが必要です (ユーザーがまだ古いルールを使用している場合でも、ノードが新しいルールを使用している場合は、新しいルールで有効なものだけがチェーンに入力されます); ハード フォークではユーザーが次のいずれかを選択する必要があります。同意する。

さらに、ハード フォークに対する主な批判の 1 つは、ハード フォークが「強制的」であるということです。ここでいう強制とは、物理的な力による強制ではなく、ネットワーク効果による強制である。つまり、ネットワークがルールを A から B に変更した場合、たとえあなたが個人的に A を気に入っていたとしても、他のほとんどのユーザーが B を気に入って B に切り替えた場合、他のユーザーと同じネットワークを有効にするためには、たとえそれにもかかわらず、B に切り替える必要があります。あなたの個人はその変更に同意しません。

1.

ハードフォークの支持者は、ネットワークの「悪意のある買収」を達成し、ユーザーをネットワークに「強制」しようとしているとして嘲笑されることがよくあります。さらに、ブロックチェーン分割のリスクにより、ハードフォークスキームは「安全ではない」と言われています。

私の個人的な意見は、これらの批判は見当違いであり、多くの場合本末転倒であると考えています。この点は、イーサリアム、ビットコイン、またはその他のブロックチェーンに特有のものではなく、これらのシステムの普及した性質に由来しており、それらのいずれにも当てはまります。さらに、以下の議論は、物議を醸すプロトコルの変更にのみ適用されます。つまり、少なくとも 1 つのコミュニティ コンポーネント (マイナー/バリデーターおよびユーザー) のメンバーの大多数が変更を承認しない場合、プロトコルの変更が物議を醸さない場合、変更は通常可能です。フォークがどの方法で実装されたとしても、安全に実行できます。

まず、強制の問題について議論しましょう。ハード フォークとソフト フォークはどちらも、一部のユーザーが気に入らない方法でプロトコルを変更する可能性があります。変更が 100% サポートされていない場合、プロトコルの変更は強制されるという問題に直面します。さらに、いずれの場合でも、プロトコル変更の少なくとも一部の反対派が、ネットワーク効果をより重視して大多数のメンバーと歩調を合わせたいため、優先プロトコル ルールを放棄することはほぼ避けられません。したがって、ネットワーク効果の観点からは、両方のタイプのフォークが必須です。

ただし、ハード フォークとソフト フォークには本質的な違いがあります。ハード フォークではユーザーに選択の機会が与えられますが、ソフト フォークではユーザーが「選択」することはできません。ハード フォーク チェーンに参加したいユーザーは、フォーク ルールを実装するソフトウェア パッケージを自分でインストールする必要があります。また、ネットワーク効果を重視するよりもルールの変更に同意しないユーザー ベースは、理論的には単純に古いチェーンに留まることができます。実際には、このようにしてイベントが発生しました。

上記の説明は、厳密に拡張されたハード フォークと双方向ハード フォークに同様に当てはまります。ただし、ソフトフォークの場合、フォークが成功すると、フォーク前のブロックチェーンは存在しなくなります。したがって、ソフトフォークは明らかに制度上、離脱ではなく強制受け入れに偏っていますが、ハードフォークはこの点でその逆です。私自身の道徳的見解では、強制よりも解放を支持しますが、他の人は同意しないかもしれません(最も一般的な議論は、ネットワーク効果が実際に重要であり、「ワンコイン」の存在が重要であるというものですが、より穏やかなバージョンも存在します)。


2.


上記の議論とは別に、ソフト フォークがハード フォークよりも「必須ではない」と考えられる理由を推測しなければならないとしたら、ハード フォークはユーザーにソフトウェア アップデートのインストールを「強制」しているように感じられるからだと思います。ユーザーは「必然的に」何もしません。しかし、この直感は誤解を招きます。重要なのは、個々のユーザーが「ダウンロード」ボタンをクリックするという単純な官僚的な手順を踏む必要があるかどうかではなく、ユーザーが受け入れたくないプロトコル ルールの変更を強制的に受け入れる必要があるかどうかです。この標準によって測定すると、ソフト フォークとハード フォークは最終的に必須ですが、ユーザーの自由を維持する点ではハード フォークの方がわずかに優れています。

次に、非常に議論の多いフォーク、特にマイナー/バリデーターの設定がユーザーの設定と競合するフォークを見てみましょう。ここには 3 つのシナリオがあります: (i) 双方向のハード フォーク、(ii) 厳密に拡張するハード フォーク、(iii) いわゆる「ユーザー起動ソフト フォーク」(UASF)。 4 番目のカテゴリは、マイナーがユーザーの同意なしにソフト フォークをアクティブにする場合です。これについては後で説明します。

まずは双方向ハードフォーク。最良の場合、状況は単純です。 2 つのコインは市場で取引され、トレーダーは 2 つのコインの相対的な価値を決定します。 ETC/ETH の事例から、マイナーは、イデオロギーに関係なく、利益を最大化するために、単純にコイン価格の比率に応じて計算能力を分配する可能性が最も高いという十分な証拠があります。

たとえ一部のマイナーのイデオロギーがどちらかの側に傾いたとしても、価格とハッシュレートの不一致を裁定して両者を一致させようとする他のマイナーはおそらく十分に存在するでしょう。一部のマイナーが特定のチェーンでマイニングを行わないグループを結成しようとすると、裁定空間は人々がそうしないようにするインセンティブを生み出すことになります。

ここには 2 つの特殊なケースがあります。 1 つ目の可能性は、価格の下落によりマイニングの価値は減少したが、難易度調整アルゴリズムが非効率であるため、難易度が一致するレベルまで下がっていない可能性です。この場合、マイニングは採算が合わなくなり、採掘意欲がなくなる可能性があります。難易度がバランスに戻るまでチェーン全体を前に押し続けます。これはイーサリアムには当てはまりませんが、ビットコインには当てはまるかもしれません。したがって、少数派の連鎖はおそらく始まらないでしょう。この状況が良いか悪いかは、強制と脱退についてどう感じるかによって決まることに注意してください。上で書いたことから推測できるように、私は個人的に、少数派チェーンに敵対的なこの種の難易度調整アルゴリズムは悪いと考えています。


3.


2 番目のシナリオは、差が非常に大きい場合、大きいチェーンが小さいチェーンを 51% 攻撃できるというものです。 ETH/ETC を 10:1 に分割しても、そのようなことは起こらなかったので、必然的にそうなる必要はありませんでした。ただし、大規模チェーンのマイナーが離脱よりも力を好み、その好みに従って行動する場合、51% の攻撃シナリオが常に可能です。次に、ハードフォークを厳密に拡張する方法を見てみましょう。 SEHF(Strictly Extended Hard Forkの略)は、フォーク前のチェーンがフォーク後もルール上有効であるという性質があるため、フォークチェーンがフォーク以外のチェーンよりも安価であれば、価格も安くなります。非フォーク チェーン。非フォーク チェーンはコンピューティング能力が低いため、非フォーク チェーンは最終的に元のチェーンのクライアント ルールとフォークされたクライアント ルールによって最長のチェーンとして受け入れられますが、フォークされたチェーンは”。

抹殺されるだろう

このようなフォークには固有の欠点があります。フォークされたチェーンが消滅する可能性が価格に反映され、価格が下がり、チェーンが消滅する可能性が高くなります。この議論は私の意見では非常に強力です。のフォークは、厳密な拡張ではなく、双方向のハードフォークである必要があります。Bitcoin Unlimited の開発者はフォーク後の採用を示唆双方向マニュアルハードフォーク



4.


この問題に対処するには、組み込みの双方向性を使用する方が良いオプションです。たとえば、ビットコインの場合、一部の未使用のオペコードを禁止するルールを追加すると、このオペコードを含む操作をフォークされていないチェーンで実行できます。そのため、フォーク ルールの下では、フォークされていないチェーンはそれ以降永久に無効とみなされます。イーサリアムの場合、状態計算の仕組みのさまざまな詳細により、ほぼすべてのハード フォークが自動的に双方向になります。他のブロックチェーンは、構造の違いにより異なる特性を持つ場合があります。

前述の最後のタイプのフォークは、ユーザーによってアクティブ化されたソフト フォークです。 UASF (User Activated Soft Fork の略) では、ユーザーはマイナーの合意なしにソフト フォーク ルールに切り替えます。経済的利益のため、マイナーが自動的にルール変更に同意することを期待します。多くのユーザーが UASF を実装しない場合、コインは分割され、厳密にスケーリングするハード フォークと同じ状況になります。ただし、これがこの概念の非常に賢くて邪悪な部分ですが、厳密に言うと非常に有害です。ハードフォークのスケーリング ここでは、フォークされたチェーンの「消滅リスク」は、UASF のフォークされたチェーンに強く偏っています。たとえUASFがオプションを提供したとしても、経済的な非対称性を利用してフォークが成功する可能性を高めます(ただし、この傾向は絶対的なものではありません。UASFが不人気であると判断した場合、フォークは成功せず、ブロックチェーンの分裂につながります)。

しかし、UASFは危険です。たとえば、プロジェクトの開発者が、たとえ政治的または技術的に物議を醸したりマイナーが好まないものであっても、すべてのトランザクションを受け入れるこれまで未使用のオペコードを、いくつかの新しいルールに準拠するトランザクションのみを受け入れるオペコードに変換する UASF パッチを作成したいとします。 。マイナーは、賢明で狡猾な反撃方法を持っています。マイナーがアクティブ化するソフト フォークを一方的に実装し、ソフト フォークによって作成された機能を使用するすべてのトランザクションを失敗させることができます。

  • 3 つのルール セットがあるとします。

  • 元のルールでは、オペコード X は常に有効です。

  • オペコード X がトランザクションの残りの部分が新しいルールに準拠する場合にのみ有効となるルール


オペコード X は常に無効なルールです。

(2) は (1) のソフトフォークに関するものであり、(3) は (2) のソフトフォークに関するものであることに注意してください。仮に、(3) を支持する強い経済的圧力があり、ソフトフォークはその目標を達成できません。

星球君的朋友们
作者文库