Full Node は Bitcoin の合意規則を独立して適用するソフトウェアです。受信データから有効な状態を導き、接続相手の数や機器ブランドが結論の投票力を増すことはありません。
ノードはヘッダー、Proof of Work、ブロックの連結、UTXO 遷移を検証します。接続時には使用する出力が存在して未使用であり、スクリプトと発行上限が満たされる必要があります。作業量が多ければ別の有効分岐を選べますが、有効性規則は回避できません。 [Bitcoin Core v29.0: validation]
初回は履歴を取得し処理します。Bitcoin Core の assumevalid は条件付きで過去のスクリプト検証を省略でき、assumevalid=0 で無効化できます。AssumeUTXO は承認済みハッシュに合うスナップショットから始め、過去をバックグラウンド検証します。現在状態の利用可能性と歴史検証完了は別です。 [Bitcoin Core v29.0: validation] [Bitcoin Core v29.0: AssumeUTXO]
Pruned ノードは処理後の古いブロックファイルを削除し、現在の UTXO と新ブロックの検証を維持します。アーカイブノードは古いブロックを残します。差は履歴提供や再走査の可用性で、SPV はそもそも同様に全取引と状態を検証しません。 [Bitcoin.org: running a full node]
ウォレットが他社サーバーで支払いを確認し続けるなら、稼働中の自分のノードはその判断を保護しません。実際のデータ源と配信経路を確認します。秘密鍵なしでもノードは動き、保管と署名は別機能です。独立検証だけでは通信メタデータやバックアップの誤りは消えません。 [Bitcoin.org: running a full node] [Bitcoin Core v29.0: RPC security]
P2P はブロックと取引を転送し、RPC はアプリにノードや場合によってウォレットの操作を許します。受信 P2P ポートを開くことと RPC 公開は異なります。Bitcoin Core は RPC を公共インターネットへ露出させないよう勧め、ローカル認証に cookie を使います。 [Bitcoin Core v29.0: RPC security]
getblockchaininfo のネットワーク、blocks、headers、initialblockdownload を確認し、getchainstates でスナップショットと背景検証を区別します。緑のアイコンや接続数だけでは完全検証の証明になりません。最後にウォレットの接続先と先端の鮮度を確認します。 [Bitcoin Core v29.0: AssumeUTXO] [Bitcoin Core v29.0: validation]
理解を深めるには、この項目とあわせて次もお読みください Bitcoin, Timechain / Blockchain, トランザクション, UTXO, Proof of Work. 次の項目からも参照されています Bitcoin, Satoshi Nakamoto, Timechain / Blockchain, Proof of Work.
01Full Node は bitcoin を採掘しますか?+
それ自体では採掘しません。Full Node はブロックとトランザクションを検証します。マイニングは候補ブロックのヘッダーを繰り返しハッシュする処理です。両方の役割は併用できますが、技術的には異なります。
02ブロックチェーン全体を永久に保存する必要がありますか?+
いいえ。Pruning は処理済みの古いブロックファイルを削除し、現在の UTXO 状態と運用に必要な新しいデータを保持します。容量を節約するために検証を省く仕組みではありません。これとは別に、assumevalid は所定の条件で古いスクリプト検証を省略できます。AssumeUTXO は snapshot を読み込み、履歴をバックグラウンドで検証します。