Consensusとは何ですか?
Consensusはブロックチェーンが唯一の正しい記録に合意する仕組みです。多くの独立した参加者が同じデータを確認し、管理者なしで一つの版に合意します。声の大きい人ではなく、記録(レシート)が真実を決めるグループチャットのようなものと考えてください。
Consensusは、すべての参加者がすべての取引に同意することを意味する、というわけではありません。ほとんどのネットワークは先に進むための合意閾値を設けているため、参加者の一部がオフラインや不機嫌でも処理は続行されます。
Consensusの仕組み
公開ネットワーク上で支払いが移動する様子を想像してください。管理者はいません。皆が従うルールだけです。
- Step 1: ウォレットから取引に署名して送信します。
- Step 2: それは多くの ノード(コンピュータ) に広がり、署名や残高を検証し、二重支払い を防ぎます。
- Step 3: 設計によっては、マイナーや (バリデーター) があなたの取引を含むブロックを提案して投票します。
- Step 4: 十分な正直な参加者が提案されたブロックがルールに従っていると合意すると、それを次のブロックとして確定します。
- Step 5: ウォレットは確認の蓄積を確認し、リスクが下がり状態が更新されます。そういうことです。
なぜConsensusが重要か
お金やデータは、信頼性を担保するために審判を必要とすべきではないからです。
- 利点: オープンな検証により信頼が築かれ、手数料や仲介者を最小限に抑えます。
- 視点: 設計によっては速度と分散性・セキュリティを天秤にかけます。これは スケーラビリティ に直接関係します。
- 関連性: 支払い、DeFi、NFT、ゲーム、DAOの投票などで触れるでしょう。
大きな金額を移す前に、チェーンが推奨する確認数やファイナリティの時間を確認してください。少し待つだけでトラブルを避けられることがあります。
Consensusの主な特徴
以下はプライベートなデータベースと異なる点です:
- 合意: 独立した参加者が同じ台帳の見解を共有します。
- セキュリティ: 不正には実際のコストや難しい協調が必要です。
- ファイナリティ: 十分に深くなれば、ブロックを遡って取り消すことは極めて起きにくくなります。
- 公開性: 誰でも検証でき、多くのネットワークで参加が許されています。
バリエーション
チェーンごとに異なる方式が選ばれ、それぞれ特徴があります。
- Proof of work: 参加者が計算資源を使ってブロックを生成し、確率的なファイナリティを与えます。
- Proof of stake: ステーカーが資金をロックし、ブロックを提案・承認し、不正にはペナルティがあります。
- BFT families: 参加者がラウンドごとに投票をやり取りし、再編成の懸念を減らして迅速なファイナリティを目指します。
- Hybrids: 組み合わせや場合によってはオフチェーンのロールアップを使い、結果をベースチェーンにアンカーします。
ファイナリティの所要時間や確認の意味はチェーンによって異なります。ビットコインの6回の確認とイーサリアムの2エポックは同じではありません。
例
イーサリアムでは、送金は数秒でブロックに含まれ、その後2エポックでブロックは最終扱いとなり資金は確定します。
豆知識
80年代の論文で提示された有名なビザンチン将軍問題が多くの設計に影響を与えました。サトシの工夫は、真実を現実のコストに結びつけて、不正より正直でいる方が安くつくようにした点です。
まとめ
結論としては、仲介者なしでコードによって合意され公に確認される信頼の仕組みです。
