重要なポイント
プルーフ・オブ・ワーク (PoW) は、デジタル決済システムにおける二重支払いを防ぐために作成されたコンセンサス メカニズムです。
PoW は、ブロックチェーンに新しいトランザクション ブロックを追加し、新しい暗号通貨単位を作成するマイニング プロセスの重要な部分です。
ビットコインや他の多くの暗号通貨は、ブロックチェーン ネットワークとデータを保護する方法として PoW を使用しています。
導入
簡単に言うと、プルーフ オブ ワーク (PoW) は、デジタル決済システムでの二重支払いを防ぐために作成されたメカニズムです。ビットコインや他の多くの暗号通貨は、ブロックチェーン ネットワークとデータを保護する方法として PoW を使用しています。このようなメカニズムは、複数の当事者が互いに信頼関係を持たなくても合意に達するため、コンセンサス アルゴリズムまたはコンセンサス メカニズムと呼ばれることがよくあります。
プルーフ・オブ・ワークは最初に登場したコンセンサスアルゴリズムであり、プルーフ・オブ・ステーク (PoS) と並んで最も重要なアルゴリズムの 1 つです。PoW は 2008 年のビットコインのホワイトペーパーでサトシ・ナカモトによって導入されましたが、テクノロジー自体はそれよりずっと前から考え出されていました。
Adam Back 氏の HashCash は、暗号通貨以前の時代のプルーフ オブ ワーク アルゴリズムの初期の例です。メールを送信する前に送信者に少量の計算を要求することで、受信者はスパムを軽減できます。この計算は正当な送信者にとっては実質的にコストがかかりませんが、大量にメールを送信する人にとってはすぐにコストがかさみます。
二重支出とは何ですか?
二重支出は、同じ資金が複数回使われる場合に発生します。この用語は、デジタルマネーの文脈でのみほぼ独占的に使用されます。結局のところ、同じ物理的な現金を 2 回使うことは難しいでしょう。
今日コーヒーを買うとき、レジ係に現金を渡すと、おそらくレジにその現金が閉じ込められるでしょう。道の向こうのコーヒーショップに行って、同じ請求書で別のコーヒーを買うことはできません。しかし、デジタル キャッシュ システムでは、それが可能になる可能性があります。
コピー アンド ペースト コマンドを使用する前に、コンピューター ファイルを複製したことがあるはずです。同じファイルを何十人もの人にメールで送信するのも簡単です。デジタル マネーは単なるデータであるため、同じ単位を別の場所にコピーして使用するなど、二重支出を防ぐ必要があります。二重支出を防止できないデジタル決済システムは、すぐに崩壊します。
二重支出についてさらに詳しく知りたい場合は、「二重支出の説明」をご覧ください。
プルーフ・オブ・ワークはなぜ必要なのか?
ブロックチェーン技術に関する弊社の記事を読んだことがあるなら、暗号通貨のユーザーが常にネットワークにトランザクションをブロードキャストしていることをご存知でしょう。ただし、これらのトランザクションはすぐに有効とみなされるわけではありません。有効とみなされるのは、トランザクションが確認されてブロックチェーンに追加されたときだけです。
たとえば、ビットコイン ブロックチェーンは、すべてのユーザーが閲覧できる公開トランザクション データベース (台帳) として機能します。次のように想像してください。あなたと 3 人の友人が、ビットコインのトランザクションを追跡するためのメモ帳を持っています。誰かが価値を転送したいときはいつでも、次のように書き留めます。
アリスはボブに 5 BTC を支払い、ボブはキャロルに 2 BTC を支払います。
ただし、トランザクションを実行するたびに、資金の出所となるトランザクションを参照します。したがって、ボブがキャロルに 2 BTC を支払う場合、エントリは実際には次のようになります。
ボブは、アリスとの以前の取引から得た 2 BTC をキャロルに支払います。
これで、BTC の単位を追跡する方法ができました。ボブがキャロルに送った同じ 2 BTC を使用して別のトランザクションを実行しようとすると、全員がすぐに気付くでしょう。その 2 BTC はすでに使用されているため、グループはトランザクションをメモ帳に追加することを許可しません。
さて、これは小さなグループではうまく機能するかもしれません。全員がお互いを知っているので、おそらくどの友人がメモ帳に取引を追加するかについて合意するでしょう。10,000 人の参加者のグループが必要な場合はどうでしょうか? メモ帳のアイデアは拡張性に欠けます。誰も知らない人に管理を任せたいとは思わないからです。
ここで、Proof of Work が登場します。Proof of Work は、ユーザーが権利のないお金を使わないようにします。ゲーム理論と暗号化の組み合わせを使用することで、PoW アルゴリズムは、システムのルールに従って誰でもブロックチェーンを更新できるようにします。
PoW はどのように機能しますか?
上記の例のメモ帳がブロックチェーンだと想像してください。ただし、トランザクションを 1 つずつ追加するのではなく、ブロックにまとめます。トランザクションをネットワークに通知し、ブロックを作成するユーザーが候補ブロックにトランザクションを含めます。候補ブロックが確認済みブロックになったとき、つまりブロックチェーン データベースに追加されたときにのみ、トランザクションが有効であるとみなされます。
トランザクションを検証し、新しいブロックを追加するプロセスはマイニングと呼ばれます。これは費用がかかり困難ですが、やりがいもあります。ブロック報酬は、ユーザーからのトランザクション手数料とプロトコルによって作成された新しいビットコインで構成されます。
プルーフ・オブ・ワークのメカニズムでは、マイナー(ブロックを作成するユーザー)が、パズルの解答が見つかるまで候補ブロックのデータをハッシュするために、電力や計算能力などのリソースを投資する必要があります。
ブロックのデータをハッシュ化するということは、ハッシュ関数に渡してブロック ハッシュを生成することを意味します。ブロック ハッシュは「指紋」のように機能します。つまり、入力データの ID であり、各ブロックに固有のものです。
つまり、マイナーは保留中のトランザクションを検証して収集し、候補ブロックに整理し、ブロックのデータをハッシュ関数に渡して有効なハッシュを作成する必要があります。候補ブロックの有効なハッシュを見つけることができれば、それをネットワークにブロードキャストし、ブロックをブロックチェーンに追加して、マイニング報酬を収集します。
マイナーが候補ブロックとハッシュをネットワークにブロードキャストすると、他のネットワーク参加者はハッシュ処理を繰り返して、出力が実際に有効であることを確認します。
有効なハッシュを見つけるには数え切れないほどのハッシュ試行が必要ですが、生成されたハッシュが正しいかどうかは誰でも簡単に確認できます。ハッシュ関数に同じ入力 (ブロック データ) を送信し、出力が同じかどうかを確認するだけです。
プルーフ オブ ワークでは、ハッシュが特定の条件に一致するデータを提供する必要があります。しかし、その方法がわかりません。唯一の選択肢は、データをハッシュ関数に渡して条件に一致するかどうかを確認することです。一致しない場合は、データを少し変更して別のハッシュを取得する必要があります。データ内の 1 文字を変更するだけでも結果がまったく異なるため、出力がどうなるかを予測することはできません。
その結果、ブロックを作成する場合は、推測ゲームをしていることになります。通常は、追加したいすべてのトランザクションの情報とその他の重要なデータを取得し、それらをすべてハッシュします。ただし、データセットは変更されないため、可変の情報を追加する必要があります。そうしないと、常に同じハッシュが出力されます。この可変データは、ナンスと呼ばれます。これは試行ごとに変更される数値であるため、毎回異なるハッシュが得られます。
まとめると、マイニングとは、ブロックチェーン データを収集し、特定のハッシュが見つかるまで nonce とともにハッシュ化するプロセスです。プロトコルで設定された条件を満たすハッシュが見つかった場合、新しいブロックをネットワークにブロードキャストする権利が得られます。この時点で、ネットワークの他の参加者は、新しいブロックを含めるようにブロックチェーンを更新します。
今日の主要な暗号通貨では、条件を満たすのは非常に困難です。ネットワーク上のハッシュ レートが高くなるほど、有効なハッシュを見つけるのが難しくなります。これは、ブロックがすぐに見つからないようにするためです。
ご想像のとおり、大量のハッシュを推測しようとすると、コンピューターに多大な負担がかかります。計算サイクルと電力を無駄にしているのです。しかし、有効なハッシュが見つかった場合、プロトコルによって暗号通貨が報酬として与えられます。
これまでにわかっていることをまとめてみましょう:
マイニングは難しくて費用もかかりますが、ネットワークにセキュリティを提供します。
有効なブロックを生成できたマイナーには、新しく発行された暗号通貨と取引手数料が報酬として与えられます。
有効なハッシュの生成には時間がかかりますが、他のユーザーはハッシュ処理を繰り返すことでその有効性を簡単に確認できます。
ここまでは順調です。しかし、不正行為をしようとしたらどうなるでしょうか? 不正なトランザクションを大量にブロックに入れて有効なハッシュを生成するのを阻止するものは何でしょうか?
ここで、公開鍵暗号化が登場します。この記事では詳しく説明しません。公開鍵暗号化とは? で、包括的な概要を確認してください。簡単に言うと、ユーザーが使用しようとしている資金を移動する権利があるかどうかをユーザーが確認できるようにする、巧妙な暗号化トリックがいくつかあるということです。
トランザクションを作成するときは、署名します。ネットワーク上の誰でも、署名と公開鍵を比較して、一致するかどうかを確認できます。また、資金を実際に使用できるかどうか、入力の合計が出力の合計よりも大きいかどうか(つまり、持っている以上の金額を費やしていないかどうか)も確認します。
無効なトランザクションを含むブロックは、ネットワークによって自動的に拒否されます。不正行為を試みることさえコストがかかります。報酬なしで自分のリソースを無駄にすることになります。
そこにプルーフ オブ ワークの素晴らしさがあります。不正行為は高くつきますが、正直に行動すれば利益が得られます。合理的なマイナーは投資に対する見返りを求めるので、収益をもたらす可能性が高い方法で行動することが期待できます。
プルーフ・オブ・ワーク(PoW)とプルーフ・オブ・ステーク(PoS)
PoW 以外にも多くのコンセンサス アルゴリズムがありますが、最も人気のあるものの 1 つは Proof of Stake (PoS) です。このコンセプトは 2011 年に遡り、Ethereum や他のいくつかのプロトコルに実装されています。
プルーフ オブ ステーク システムでは、マイナーがバリデーターに置き換えられます。マイニングは行われず、ハッシュを推測する競争もありません。代わりに、ユーザーはランダムに選択されます。選択された場合は、ブロックを提案 (または「偽造」) する必要があります。ブロックが有効であれば、ブロックのトランザクションの手数料で構成された報酬を受け取ります。
ただし、誰でも選択できるわけではありません。プロトコルは、いくつかの要素に基づいてユーザーを選択します。資格を得るには、参加者はステークをロックする必要があります。ステークとは、ブロックチェーンのネイティブ通貨の所定の量です。ステークは保釈金のように機能します。被告が裁判を逃れないように多額の金銭を差し出すのと同じように、バリデーターは不正行為を阻止するためにステークをロックします。不正行為をした場合、ステーク(またはその一部)が差し押さえられます。
プルーフ・オブ・ステークにはプルーフ・オブ・ワークに比べていくつかの利点があります。最も注目すべきは二酸化炭素排出量が少ないことです。PoSでは高出力のマイニングファームが必要ないため、消費される電力はPoWのほんの一部にすぎません。
とはいえ、PoS には PoW と同じ実績はありません。無駄が多いと思われるかもしれませんが、マイニングは 10 年以上にわたって実戦でテストされてきた唯一のコンセンサス アルゴリズムです。ビットコインの PoW は、開始以来、数兆ドル相当のトランザクションを保護してきました。PoS が PoW のセキュリティに匹敵するかどうかを確実に判断するには、ステーキングを長期的に適切にテストする必要があります。
終わりに
プルーフ オブ ワークは二重支払い問題に対する最初の解決策であり、信頼性が高く安全であることが証明されています。ビットコインは、同じ資金が二重に使われるのを防ぐために中央集権的な組織は必要ないことを証明しました。暗号化、ハッシュ関数、ゲーム理論を巧みに利用することで、分散環境の参加者は金融データベースの状態について合意することができます。
参考文献
暗号通貨マイニングとは何ですか?どのように機能しますか?
公開鍵暗号とは何ですか?
ブロックチェーンのコンセンサスアルゴリズムとは何ですか?
免責事項:このコンテンツは、いかなる表明または保証もなく、一般的な情報および教育目的のみで「現状のまま」提供されます。財務、法律、その他の専門的なアドバイスとして解釈されるべきではなく、特定の製品またはサービスの購入を推奨することを意図したものでもありません。適切な専門アドバイザーから独自のアドバイスを求める必要があります。記事が第三者寄稿者によって寄稿されている場合、表明された見解は第三者寄稿者のものであり、必ずしもBinance Academyの見解を反映するものではないことにご注意ください。詳細については、こちらで完全な免責事項をお読みください。デジタル資産の価格は変動する可能性があります。投資の価値は下がったり上がったりする可能性があり、投資した金額が戻ってこない可能性があります。投資の決定はお客様自身の責任であり、Binance Academyはお客様が被る損失について責任を負いません。この資料は、財務、法律、その他の専門的なアドバイスとして解釈されるべきではありません。詳細については、利用規約とリスク警告をご覧ください。

