
自分でノードを動かすこと、そして多くの人にはその必要がない理由
財布が残高を見せるたび、それはサーバーから聞いたことを繰り返しています。あなたが見ているのはブロックチェーンではありません。ブロックチェーンについての問いに一台のコンピュータが返した答えを見ていて、その答えを信じて受け入れているのです。
自分でノードを動かすことは、それをやめる方法です。同時に、ふつう語られるより手間がかかり、多くの人にとっては本当に不要でもあります。どちらも本当で、面白いのは自分が線のどちら側にいるかを見定めることです。
ノードとは実際に何か
ノードはブロックチェーンを取り込み、すべての規則を自分で確かめます。署名は有効だったか。何かが二重に使われていないか。各ブロックは難易度の目標を満たしたか。コインベースは正しい報酬を払ったか。
これは採掘ではありません。採掘は新しいブロックを作る競争です。ノードは検証するだけで、この区別が大切なのは、あなたにとって何が真かを決めるのが検証だからです。
要点はそこに尽きます。ノードを動かしていれば、取引が有効かどうかを誰にも尋ねません。あなたの機械が規則から導きます。あるブロックが規則を破っていれば、あなたのノードはそれを拒みます――ほかの何人がそれを受け入れていようと、どのエクスプローラーが何と言おうと。
実際に得られる三つのもの
検証。 合意を自分で確かめます。それが最も効くのは、まさに最も不便なとき――揉めているフォーク、チェーンの分裂、合意の不具合のさなかです。Ravencoin の合意の破綻は、「エクスプローラーが何と言うか」と「規則が何と言うか」が束の間食い違いうる種類の出来事です。ノードはどのチェーンに従うかを当て推量する必要がありません。
プライバシー、そしてこれが過小評価されているものです。 財布が公開サーバーに残高を尋ねるとき、どのアドレスがあなたのものかをそのサーバーに告げています。さらに悪いことに、拡張公開鍵で同期する財布は、その口座が将来使うすべてのアドレスを導く力を手渡してしまいます――チェーン上のプライバシーが避けることで成り立っている、まさにその結びつきです。自分のノードに尋ねれば、告げる相手は誰もいません。自分自身に尋ねているのです。
誰にも拒めない送信。 あなたのノードは、取引を落としかねない役務に預けるのではなく、ピアツーピアの網へ直接告げます。
費用を正直に
保存容量。 履歴を保持する完全なビットコインのノードは数百ギガバイトを占め、毎年増えていきます。刈り込みで大きく減らせますが、刈り込んだノードは履歴を捨てているので、再走査が制限され、インデクサーの供給源にもなれません。
最初の同期。 起源ブロックからチェーンを検証するのは、良い機材で数時間、遅いディスクの Raspberry Pi なら数日かかります。一度きりですが、本当に退屈です。
稼働と手入れ。 止まっているノードは遅れているノードです。戻ってきたとき追いつきますが、そのあいだ財布は待つか、誰かのサーバーに頼ります。ソフトウェアは更新が要り、ディスクは埋まり、合意の変更が出てきます。
誰も言わない壊れ方。 放置されたノードはノードが無いより悪い。数週間遅れていたり、黙って止まっていたり、ほかの皆が受け入れたソフトフォークを拒んだ版で動いていたりすれば、自信満々に間違った答えを返します。自己検証が役に立つのは、検証する側が健全なときだけです。
正直な結論
多くの人はノードを動かすべきではありませんし、それは恥ずかしいことではありません。
利点は、どれだけ保有しているか、どれほど頻繁に取引するか、どのアドレスが自分のものかを第三者に知らせないことをどれだけ大切にするかに比例して増えます。控えめな額を持ち、数か月に一度取引を送る人にとって、ノードは趣味――面白い趣味ではあります――であって、手間に見合う安全の向上ではありません。
本当に値打ちが出てくるのは、失えば手痛い額を持っているとき、第三者があなたの活動の実像を描けるほど頻繁に取引するとき、規制や運用上の理由で独立に検証すべき事業を営んでいるとき、あるいは単に基盤を借りるより持ちたい人であるときです。
自己保管にはノードが必須だと言う人は言い過ぎです。ノードは何も変えないと言う人は言い足りません。それは特定のものを特定の費用で買うのであり、その勘定は人ごとに違います。
SSP が実際にできること
ここからが、話を理屈ではなく具体にする部分です。
SSP はあなたを私たちの基盤に縛りつけません。設定でチェーンごとにバックエンドを上書きできます――node、api、explorer はいずれも編集でき、財布は実行時にあなたの上書きを既定値の上に重ねます。実装には気の利いた細部があります。保存した値が出荷時の既定値とまったく同じなら、保存されるのではなく記憶領域から消されるので、上書きの保管場所には本当の変更だけが残るのです。
ですから自前の基盤を運用しているなら、SSP をそちらへ向け、私たちのものへの問い合わせをやめられます。
さて正直な但し書きです。本物の話なので。UTXO チェーンでは、SSP は素のノードではなく Blockbook 型のインデクサーと話します。bitcoind を動かすだけでは足りず、その上で Blockbook の索引付けも必要になり、これは単純なフルノードより重い――ディスクも、設定も、手入れも増えます。EVM チェーンでは敷居が低く、自前の RPC 端点を指すのは差し替えに近いものです。
「自分のノードを使える」と「自分のノードを使うのは簡単だ」のあいだには本物の隔たりがあり、設定欄が実際より平らな道をほのめかすままにするより、私たちはそれを名指しするほうを選びます。
もう一点はっきりさせておくと、自分でノードを動かして変わるのはチェーンのデータを扱うサーバーから見えるものです。二台の端末が連携するときにリレーが扱うものは変わりません。別々の答えを持つ別々の問いであり、一方を解いても他方は解けません。
試してみたいなら
すべてではなく、最も大切なチェーンから始めてください。つけっぱなしにして構わない、本物の SSD を積んだ機械を使ってください――回転式ディスクでの最初の同期は本当につらいものです。何かを任せる前に、完全に同期させてください。それから財布を一つそちらへ向け、違いに気づくかどうか見てください。
気づかないかもしれませんし、それは正当な結果です。自分の脅威の形について具体的な何かを学んだことになり、それは出発点の抽象よりずっと値打ちがあります。
一度もノードを動かさないとしても、根にある考えは持っておく値打ちがあります。あなたが見てきたどの残高もどこかから来たもので、誰かのサーバーがそれを生んだのです。チェーンを見ていると思い込むのではなく、答えを信じているのだと知っていること――それが値打ちの大半です。ノードを動かすのは、それをやめる選択肢にすぎません。


