ノードとは、ブロックチェーンソフトを実行しチェーンの維持に参加するあらゆるコンピュータや機器です。ブロックチェーン全体を、本部がなく無数の参加者が共同で維持する巨大な公共台帳と思い描けます。各ノードはそのうちの一つで、台帳のコピーを保存し、記帳と照合に参加する参加者です。ノードの核心的な仕事は2つ。一つは保存——ブロックチェーンの台帳データのコピーを保持(フルノードはチェーンの完全な記録を保存)。もう一つは検証——ネットワークに新しい取引やブロックが現れると、ノードはルールに従い正当か、チェーンの歴史と整合するか確認し、正当なら受け入れ、そうでなければ拒否します。ノードを理解することが、分散化が実際に何の上で動くかを真に理解することです。
なぜノードはブロックチェーンの生命線なのでしょうか。皆がよく口にする「分散化」という言葉の物理的基盤がノードだからです。従来の銀行台帳は中央サーバーにあり、銀行が支配し、理論上は変更できます。しかしブロックチェーンの台帳は、世界中の何千もの相互に独立したノードが同時に各自1コピー保存します。新しい取引のたびに、これらのノードが各自検証し、コンセンサスルールで合意します。これは2つの重要な特性をもたらします。第一に単一障害点がない——いくつかのノードを停止しても他が残り、チェーンは通常通り動きます。第二に改ざんが困難——台帳を密かに変えるには、大多数のノードを同時に破るか欺かねばならず、十分に分散したノードを持つチェーンではほぼ不可能です。だからノードの数と分散度が、チェーンの分散化と安全性を直接決めます。
ノードは一種類だけではなく、一般にいくつかの型に分かれます。フルノードはブロックチェーンの完全な記録をダウンロードし検証し、各取引とブロックが準拠するか独立に確認する、分散化と安全の屋台骨です。ライトノードは部分的なデータだけを保存しフルノードの情報に依存し、リソースの限られた機器(スマホウォレットなど)に適します。さらに、異なるコンセンサス機構の下では、新しいブロックを生成するマイナーノードやバリデーターノードがあります。一般ユーザーにとって、ウォレットを使い取引所で取引するとき、実は裏で何らかのノードと対話していますが、自分でノードを動かす必要はありません。ただ、自分のフルノードを動かせば、第三者を信頼せずチェーンの状態を独立に検証でき、「信頼するな、検証せよ」の精神の最も徹底した実践です。
ノードを理解することは、一般ユーザーにいくつかの実際的な意味を持ちます。第一に「分散化の度合い」という評価軸を把握する:公開チェーンを調べるとき、ノードがどれだけあり、いくつの国と運営者に分散しているかは、本当に分散しているか、名目上の分散か(実際は少数のノードが支配)を判断する重要な手がかりです。第二に、第三者への信頼を理解する:ウォレットやサービスで残高を確認し取引を送るとき、通常それらが提供するノードを通します。誰も信頼せず独立に検証したいなら、自分のノードに接続する必要があります。第三に、ネットワークの回復力を理解する:チェーンのノードが多く分散しているほど、単一の政府、会社、攻撃者が停止や制御をするのが困難です。ノードの概念を判断の枠組みに入れれば、チェーンが安全か、本当に分散しているか評価するとき、プロジェクトの主張を鵜呑みにするのでなく、確かな根拠を持てます。
対照でノードの意味を理解しましょう。まず従来の銀行を考えます。預金残高は銀行の中央サーバーに記録されます。この台帳は銀行が独占的に保管し、見える数字は銀行が告げるものです。理論上、銀行のシステムが誤るか内部で改ざんされても、自分で真偽を検証するのは難しく、信頼するしかありません。
さてブロックチェーンを見ます。あるチェーンが今、世界で1万のノードを稼働させ、各国に分散し異なる人や機関が維持しているとします。あなたの送金取引が送られた後、これらのノードに配信され、各ノードが同じルールで正当か独立に確認し、正当な取引だけが皆が認める台帳に入り、この台帳は1万のノードに同一のコピーが各自保存されます。
さて誰かがあなたの残高記録を密かに変えたいとします。銀行の世界では、その1つの中央サーバーを破るか内部を買収すればよい。しかしこのチェーンでは、この1万の独立し相互照合するノードの大多数を同時に破るか欺かねばならず、さもなくば他の誠実なノードが即座に記録の不一致を見つけ拒否します。この「多数、分散、相互照合」の構造こそ、ノードがブロックチェーンに与える安全の本質であり、ノードの数と分散度がなぜこれほど重要か分かります。
ノードの数と「完全な検証」の背後には、ブロックチェーンの有名なトレードオフが潜みます。台帳をより多く、より分散したノードが各自保存し検証させると、分散化と安全が大幅に高まりますが、代償は効率です。世界中の大量のノードを同期させ、各取引を検証させると、自然に速度が制限されスループットが限られます。逆に、高速・高スループットを追い、検証を少数の高性能ノードに集中させると、速度は上がりますが分散化が犠牲になり、少数のノードが支配し、検閲耐性と安全性が低下します。これがブロックチェーンのトリレンマ(分散化、安全、拡張性の同時達成が困難)の核心です。ノードがそこで果たす役割を理解すれば、異なるチェーンがノードの敷居やブロック速度で異なるトレードオフをする理由が分かります。