多くの暗号初心者がブロックチェーンがどのようにデータの完全性を検証しているのか理解していないことに気づきました。これが問題の核心です — すべては80年代の暗号学者ラルフ・メルクルが考案した天才的なアイデアに基づいています。



メルカツリーは、基本的に大量のデータが偽造されていないことや破損していないことを効率的に検証する方法です。特に分散型ネットワークにおいて、異なる参加者が独立して情報の正確性を確認する必要がある場合に重要です。

50GBのファイルをダウンロードしていると想像してください。その全体を一度に検証する代わりに、ファイルをいくつかの部分に分割します — 例えば、0.5GBずつの100部分に分けるとします。各部分はハッシュ関数を通じてハッシュ化されます。その後、これらのハッシュをペアにして再びハッシュ化します。この操作を繰り返し、最終的に一つのハッシュ、つまりメルカツリーのルートハッシュが得られます。この一つのハッシュが、巨大なファイル全体をコンパクトに表現します。

なぜこれがそんなに便利なのか?もし一つでもビットが変われば、ルートハッシュは全く異なるものになります。そして最も素晴らしいのは、何かが破損した場合でも、間違った部分だけを素早く見つけ出せることです。全体を再検証する必要はありません。

ビットコインでは、この技術は同じ原理で動作しています。各ブロックにはメルカツリーが含まれており、葉はすべてのトランザクションのハッシュです。このツリーのルートはブロックのヘッダーに記録されます。マイナーが有効なブロックを探すとき、すべてのトランザクションを再ハッシュする必要はなく、ヘッダーのパラメータだけを変更すれば良いのです。メルカツリーはこれらをコンパクトな形式に圧縮します。

もう一つの興味深い用途は、軽量クライアント向けです。リソースが限られていて、全てのブロックチェーンを保存できない場合でも、メルカ証明を要求できます。これは、あなたの特定のトランザクションが特定のブロックに含まれていることを証明するものです。全体を検証する代わりに、いくつかのハッシュだけを計算すれば良いのです。サトシ・ナカモトはこの仕組みを、オリジナルのビットコインドキュメントで簡易的な支払い検証として説明しています。

メルカツリーがなければ、ブロックはもっと大きく、重くなっていたでしょう。ネットワークは遅くなり、ノードはより多くのメモリを必要としたでしょう。これは、ブロックチェーンを実用的にした基本的なアイデアの一つです。暗号技術はあらゆる場所で使われていますが、メルカツリーはこの分野で最もエレガントで有用な概念の一つです。
原文表示
このページには第三者のコンテンツが含まれている場合があり、情報提供のみを目的としております(表明・保証をするものではありません)。Gateによる見解の支持や、金融・専門的な助言とみなされるべきものではありません。詳細については免責事項をご覧ください。
  • 報酬
  • コメント
  • リポスト
  • 共有
コメント
コメントを追加
コメントを追加
コメントなし