ブロックチェーン取引の検証方法

Author logo
Patrick Dike-Ndulue
• • 更新
Post image

ブロックチェーン取引の検証方法には、いくつかのコンセンサスメカニズム(合意形成アルゴリズム)が存在します。もっともよく知られているのはProof of Work(PoW)で、BitcoinやLitecoinなど多くのブロックチェーンで普及しました。近年では、EthereumのようにProof of Stake(PoS)など新しい方式も広く使われています。

いずれの方式であっても、コンセンサスメカニズムはネットワーク上のすべてのノードが同じひとつのブロックチェーンを共有していることを保証します。

ハッシュ関数とは?

ハッシュ関数はブロックチェーンの中核となる暗号技術です。これは、どんな入力データでも一定の長さの文字列(ハッシュ値)に変換する数学的な関数です。ハッシュは一方向性で、元のデータに戻すことはできません。

特に重要なのは、元データのほんの1ビットでも変更すると、ハッシュ値全体がまったく異なるものになる点です。これにより、改ざんがネットワーク上ですぐに検知されます。

簡単に言えば、新しい取引はコンセンサス(合意)によってブロックチェーンに追加されます。つまり、取引が恒久的なものとなる前に、ネットワークの大多数のノードがその正当性を認める必要があります。

マイニングの流れ:ステップごとに解説

仮想通貨ウォレットで取引を開始すると、その情報はネットワーク上のすべてのマイニングノード(またはバリデーター)にブロードキャストされ、mempool(未確認取引の一時保管場所)に入ります。各ノードは、これらの未確認取引をまとめて「ドラフトブロック」を作成し、検証またはマイニングを行います:
 

1. 集約とハッシュ化: ドラフトブロック内のすべての取引が暗号的にまとめられます。このデータは、直前の(確定済み)ブロックのハッシュ値と組み合わされ、安全にチェーンとして連結されます。
 

2. パズルの解決: ノードは生成されたハッシュ値をネットワークの現在のDifficulty(難易度)と比較します。Difficultyは、計算されたハッシュ値が満たすべき目標値です。ハッシュ値がこの目標を下回れば、マイナーはブロックのマイニングに成功します。上回った場合は、nonce(ナンス)と呼ばれる変数を少しずつ変更しながら再計算を繰り返します。これを1秒間に何百万回も実行します。
 

3. ブロックのブロードキャスト: ノードが新しいブロックのマイニングに成功すると、すぐに他のノードすべてにそのブロックを送信します。他のマイナーは直ちに自分の作業を止め、勝者のブロックを検証し、自分のブロックチェーンに追加して次のドラフトブロックの作成に移ります。新しいブロックがネットワーク全体に反映されると、その中のすべての取引が正式に検証されたとみなされます。

簡単に言えば、新しい取引リストを作成するには、バリデーターが複雑な数学的問題を総当たりで解く必要があります。成功すると取引はブロックチェーンに記録され、ネットワーク全体が次のブロックへと進みます。

ブロックチェーン検証のイメージ図

セキュリティと二重支払い問題

これらの高度な暗号技術は、ネットワーク攻撃を防ぐために設計されています。代表的なリスクが「二重支払い攻撃」です。たとえば、攻撃者が仮想通貨を送金し、その取引をブロードキャストした後、同じ仮想通貨を別の場所でも使えるように改ざんしたブロックチェーンを秘密裏に作成しようとするケースです。
 

攻撃者が改ざんしたブロックチェーンをノードに流すと、一時的に「Aに送金されたバージョン」と「Bに送金されたバージョン」という2つの矛盾したブロックチェーンが存在することになります。
 

コンセンサスメカニズムは「最長チェーンルール」によってこの問題を自動的に解決します。分岐したチェーンを検出したノードは、常にブロック数が少なく累積計算量が小さい短い方のチェーンを破棄します。二重支払いを成立させるには、攻撃者がネットワーク全体よりも速く偽ブロックを継続して生成し続けなければなりません。膨大な計算能力が必要なため、現実的にも経済的にもほぼ不可能です。
 

なぜ取引の承認回数が重要なのか

システムは非常に高い安全性を持っていますが、まれに一部のノードが正規のブロックよりも先に改ざんブロックを受信してしまう可能性もあります。このリスクを排除するため、サービス側は「承認回数」(取引が記録されたブロックの後に追加されたブロック数)を基準にしています。
 

新しいブロックが追加されるたびに、取引は台帳の中でさらに深く埋め込まれ、セキュリティが強化されます。日常的な少額取引であれば1〜3回の承認で十分ですが、数百万ドル規模の取引では、取引の完全な不可逆性を確保するため、取引所やサービスが数十回の承認を待ってから資金を確定します。

簡単に言えば、新しい取引は分散型ネットワーク上のコンピューターによって検証されます。数学的パズルの難易度と合意形成の仕組みにより、取引の改ざんは事実上不可能となっています。

Author logo
著者 Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.

Author logo
レビュー担当者 Patrick Dike-Ndulue

Senior editor covering crypto, onchain equities, and technology.