Investor's wiki

ソフトフォーク

ソフトフォーク

##ソフトフォークとは何ですか?

ブロックチェーンテクノロジーでは、ソフトフォークは、以前に有効だったトランザクションブロックのみが無効になるソフトウェアプロトコルへの変更です。古いノードは新しいブロックを有効として認識するため、ソフトフォークは下位互換性があります。この種のフォークでは、すべてのノードをアップグレードして新しいバージョンに同意する必要があるハードフォークとは対照的に、マイナーの大部分だけが新しいルールを適用するためにアップグレードする必要があります。

##ソフトフォークの使用法を理解する

多くの場合、新しいトランザクションタイプはソフトフォークとして追加でき、参加者(送信者や受信者など)とマイナーが新しいトランザクションタイプを理解している必要があります。これは、新しいトランザクションを(特別な形式の)「誰にでも支払う」トランザクションとして古いクライアントに表示させ、トランザクションが新しいルールで検証されない限り、これらのトランザクションを含むブロックを拒否することに鉱夫に同意させることによって行われます。これは、pay-to-scriptハッシュ(P2SH)がビットコインに追加された方法です。

<!-EBEA97D1328C14134D5D1DA0AA69478A->

アップグレードされていないノードを使用している鉱夫が、ノードが知らない新しいコンセンサスルールに違反した場合、ブロックチェーンの一時的な分岐が原因でソフトフォークが発生することもあります。

ソフトフォークは、コンセンサスを維持するためにノードをアップグレードする必要はありません。新しいソフトフォークインルールを持つすべてのブロックも古いルールに従うため、古いクライアントはそれらを受け入れます。ソフトフォークは、定義上、有効なブロックのセットのみが有効なプレフォークの適切なサブセットになることを許可するため、ハードフォークなしで元に戻すことはできません。ユーザーがポストソフトフォーククライアントにアップグレードし、何らかの理由でマイナーの大多数がプレソフトフォーククライアントに戻った場合、ポストソフトフォーククライアントのユーザーは、ブロックが発生するとすぐにコンセンサスを破ります。クライアントの新しいルール。ソフトフォークが機能するためには、マイニングパワーの大部分がフォークを認識するクライアントを実行している必要があります。新しいルールを受け入れるマイナーが多いほど、ネットワークはフォーク後の安全性が高くなります。鉱山労働者の3/4がフォークを認識している場合、作成された1/4ブロックは、新しいルールに従うことが保証されません。これらの1/4ブロックは、新しいルールを認識していない古いノードに対して有効ですが、新しいノードによって無視されます。

ソフトフォークは、特にビットコインおよびイーサリアムブロックチェーンで使用されており、下位互換性のある新しいアップグレードされた機能を実装しています。