セグウィットとは何ですか?
Segregated Witness (SegWit) は、2015 年に開発されたアップグレードされたプロトコルです。この概念は、ブロックチェーン ネットワークが現在直面しているスケーラビリティの問題を解決するために導入されました。
平均して、ビットコイン ネットワークは 10 分ごとに新しいブロックを検証し、各ブロックには複数のトランザクションが含まれます。このように、ブロックサイズは各ブロックで確認できるトランザクション数に直接影響します。現在、ビットコイン ブロックチェーンは 1 秒あたり約 7 件のトランザクションを処理できます。
Segregated Witness の主なアイデアは、署名がトランザクション データと一緒に保存されないようブロック データを再編成することです。言い換えれば、SegWit のアップグレードには、トランザクション データからバリデータ (署名) を分離することが含まれています。これにより、より多くのトランザクションを 1 つのブロックに保存できるようになり、ネットワークのトランザクション スループットが向上します。
1 秒あたり約 7 件のトランザクションしか処理できないため、ビットコインのトランザクションは完了するまでに時間がかかることがあります。 1 秒あたり数千件のトランザクションを処理できる従来の決済ソリューションや金融ネットワークよりもはるかに遅いです。
Segregated Witness は、ビットコイン開発者の Pieter Wuille と他の Bitcoin Core 貢献者によって 2015 年に開発およびアップグレードされました。 2017 年 8 月に、Segregated Witness のアップグレードがビットコイン ネットワーク上のソフト フォークとして実装されました。
現在、ビットコインやライトコインなど、Segregated Witness プロトコルを使用するいくつかの暗号通貨プロジェクトがあります。プロトコルのアップグレードにより、トランザクション速度やブロック容量の向上など、多くの利点がもたらされます。さらに、SegWit は、いわゆるトランザクションの順応性の問題 (後述) を解決します。
Segwit の主な利点は何ですか?
容量を増やす
SegWit の最大の利点の 1 つは、ブロック容量の増加です。トランザクション入力から署名データを削除することで、より多くのトランザクションをブロックに保存できます。
トランザクションは、入力と出力という 2 つの主要な部分で構成されます。基本的に、入力には送信者のパブリック アドレスが含まれ、出力には受信者のパブリック アドレスが含まれます。ただし、送信者は資金を転送したことを証明する必要があり、デジタル署名を使用する必要があります。
SegWit を使用しないと、署名データがブロックの最大 65% を占める可能性があります。 Segregated Witness を使用すると、トランザクションの入力から署名データが削除されます。これにより、有効ブロック サイズが 1 MB から約 4 MB に増加します。
Segwit は単にブロック サイズを増やすだけではないことに注意してください。むしろ、これはブロック サイズの制限を増やすことなく (ハード フォークが必要となる) 有効なブロック サイズを増やすエンジニアリング ソリューションです。具体的には、実際のブロック サイズは 1 MB のままですが、有効なブロック サイズは 4 MB に制限されます。
さらに、Segregated Witness ではブロックの重みの概念も導入されています。ブロックの重みは、ブロック サイズの代替概念として考えることができます。基本的に、ブロック重みは、入力フィールドの一部ではなくなったトランザクション データ (1 MB) と署名データ (最大 3 MB) を含む、すべてのブロック データを含む測定単位です。
トランザクション速度の向上
Segregated Witness は、より多くのトランザクション ブロックを保存できることに加えて、ブロックチェーンに大量のトランザクション データが保存されるため、トランザクション速度も向上します。ブロックの生成時間が同じでも、より多くのトランザクションをブロックに収容できるため、TPSは高くなります。
トランザクション速度の向上は、ビットコイン ネットワークでのトランザクション コストの削減にも役立ちます。 Segwit の導入前は、各取引手数料はほとんどが 30 ドルを超えていました。しかし、SegWit の導入により、トランザクション コストはトランザクションあたり 1 ドルに大幅に削減されました。
トランザクションの順応性の修正
ビットコインが直面しているもう 1 つの大きな問題は、トランザクション署名の改ざんです。署名が改ざんされると、二者間のトランザクションが侵害される可能性があります。ブロックチェーンに保存されているデータは事実上不変であるため、無効なトランザクションはブロックチェーンに永続的に保存されます。
SegWit を使用すると、署名はトランザクション データの一部ではなくなり、このデータが変更される可能性がなくなります。この修正は、レイヤー 2 プロトコルやスマート コントラクトなど、ブロックチェーン コミュニティ内のさらなるイノベーションをサポートします。
SegWit とライトニング ネットワーク
トランザクションのスケーラビリティの問題を修正するには、レイヤー 2 プロトコルを開発する必要があります。簡単に言えば、レイヤー 2 プロトコルは、ビットコインなどのブロックチェーン上に構築された新しいプラットフォームまたは製品です。最も人気のあるレイヤー 2 プロトコルの 1 つは、オフチェーン、オフライン決済ネットワークであるライトニング ネットワークです。
ライトニング ネットワークは、ビットコイン ネットワーク上で実行される第 2 層プロトコルです。ライトニング ネットワークの主な目的は、より短期間でより多くのトランザクションの確認をサポートし、それによってユーザーに迅速なトランザクションを提供することです。トランザクションはオフチェーンで収集され、ビットコイン ネットワークによる最終処理のために効果的にバッファリングされます。
ライトニング ネットワークはもともとビットコイン用に開発されました。ただし、他のいくつかの暗号通貨およびブロックチェーン プロジェクトもこのテクノロジーの実装に取り組んでいます。これにより、検証時間が短縮されるだけでなく、スケーラビリティの問題に対するソリューションの開発も促進されます。
SegWit と SegWit2x
SegWit はソフト フォーク アップグレードであり、下位互換性をサポートします。言い換えれば、SegWit を更新していないビットコイン ノードは引き続きトランザクションを処理できます。ただし、SegWit2x (S2X) と呼ばれる別の実装可能なバージョンの SegWit があり、これにはハード フォークのアップグレードが必要です。
SegWit と SegWit2x の主な違いは、後者にはトランザクションのバッチ処理への変更だけでなく、ブロック サイズの増加 (1MB から 2MB へ) も含まれていることです。それにもかかわらず、ブロック サイズが大きくなると、より多くのデータを処理する必要があるため、ノード オペレーターとマイナーの負担が増加します。
もう 1 つの大きな違いは、SegWit 提案がビットコイン コミュニティによってサポートされ、実装されていることです。これにより、ユーザー起動ソフト フォークを表す UASF の概念も生まれました。
一方、SegWit2x は、ビットコインを管理する基本ルールへの大幅な変更を提案しています。しかし、開発者がその採用と実装について合意に達することができなかったため、SegWit2x は最終的に停止されました。
ネストされた SegWit とネイティブ SegWit の違い (bech32)
簡単に言えば、ネイティブ SegWit (bech32 とも呼ばれる) は、ネストされた SegWit の更新バージョンです。 bech32 アドレスはトランザクション速度を向上させ、より優れたエラー検出メカニズムを提供し、トランザクション手数料も削減します。さらに、bech32 アドレスは小文字で表記されているため、読みやすくなっています。非 SegWit (つまり、レガシーとも呼ばれる元のビットコイン アドレス)、ネストされた SegWit、および SegWit (bech32) アドレス間のトランザクションは完全に互換性があることに注意してください。ただし、すべての取引所と暗号通貨ウォレットが SegWit をサポートしているわけではないため、SegWit をサポートしていないアドレスに資金を直接送金することはできません。 Binance はすでに BTC の入出金用に SegWit アドレスをサポートしています。詳細については、SegWit FAQ を参照してください。
要約する
SegWit の実装は、分散コミュニティによってサポートおよび実装されているビットコイン プロトコルのメジャー アップグレードを意味し、さらに魅力的なものになります。
SegWit の開始により、ビットコインやその他のブロックチェーン ネットワークに関連する問題、特にスケーラビリティにおける重要なステップを効果的に解決できます。 SegWit と第 2 層プロトコルの組み合わせにより、ブロックチェーン ネットワークは、より高い効率とより低いコストで大量のトランザクションを処理できます。
SegWit は強力で革新的なソリューションですが、まだ完全には実装されていません。現在、ビットコイン アドレスの約 53% が SegWit プロトコルを使用しています。

