
ビットコインで最も重要な特性は何ですか?
TechFlow厳選深潮セレクト

ビットコインで最も重要な特性は何ですか?
ビットコインとは何か?そして、どのような存在を目指すべきなのか?
執筆:Jameson Lopp
翻訳:BTC Study
ビットコインとは何か? すでに多くの人がこの問いに答えを出していますが、私はその探求が永遠に終わらないと考えています。ビットコインはいったい何を目指すべきなのか? 最前線の研究や議論が、ビットコインプロトコルの進化の方向性を決めていくのです。
初心者にとって、どの提案が実際に採用される可能性が高いのかを見極めるのは難しいかもしれません。なぜなら、ビットコインのプロトコル変更には数多くの暗黙のルールがあるからです。それらのルールは、哲学的なものもあれば、工学的・セキュリティ面を重視したものもあり、あるいはその両方を兼ね備えたものもあります。
コンセンサスは命令や支配ではない
ビットコインシステムには権力機関のような存在はなく、ここで述べる原則たちも絶対的な権威を持つわけではなく、筆者自身およびエコシステム内の他の参加者からの観察に基づくものです。
-
ビットコインは、参加者の間で継続的にコンセンサスを自動発見するシステムです。人間による合意を、マシンによる合意を通じて実行します。
-
コンセンサスが失敗すれば、参加者はビットコインシステムを信用しなくなり、結果としてシステム全体が崩壊します。
-
コンセンサスコードの変更は、可能な限り避けるべきです。
-
ユーザーの同意なしに、強制的にプロトコルの変更を受け入れさせることはすべきではありません。つまり、受け入れたいユーザーが自由に参加できるようにすべきであり、受け入れたくないユーザーを強制的に退出させるべきではありません。
-
したがって、ソフトウェアクライアントは自動更新してはいけません。それは本来ユーザーが持つべき権利を、開発者の手に移してしまう行為だからです。
-
ビットコインは本質的に分散型ネットワークであるため、すべてのユーザーが常にプロトコルの変更を注視していると仮定することはできません。
では、どうやってビットコインを変えていけばよいのでしょうか? コンセンサスコードを変更する前に、まず人間レベルでの合意を形成する必要があります。ここに掲載されている記事は、ビットコイン改善提案(BIP)のプロセスについて詳しく説明しています。このプロセスは完璧ではなく、コンセンサス形成は非常に複雑なプロセスです。
Johnson Lau氏はある記事で、フォーク(マシンコンセンサスを変える手段)の種類について詳細に解説しており、Paul Sztorc氏はさらに掘り下げて、異なるフォークが持つ強制性の違いを分析しています。
過去のビットコインプロトコルの変更は、どのような方法で行われてきたのでしょうか?
誰がプロトコル変更の提案を受け入れたり拒否したりする権限を持っているのでしょうか? 開発者の目的は「概ねの合意(rough consensus)」を得ることです。つまり、100%の参加者の同意が必要というわけではありませんが、提案は十分に検討されなければなりません。
ビットコインエコシステム内での変更提案に対する支持の度合いは、どのように測るべきでしょうか? 開発者は、その提案によって影響を受ける可能性のある参加者たちと協議を行います。開発プロセスに関心を持つ人は誰でも、メーリングリスト、コードリポジトリ、ソーシャルメディアなどを通じて貢献できます。
最後に、プロトコルのガバナンスは、事前に定義されたトップダウン方式で行われるものではありません。むしろ従来のガバナンスモデルとは正反対に、ビットコインのガバナンスはボトムアップ方式を採用しています。
信頼最小化
「ビットコインは、中央集権的な仕組みに依存せず、ユーザーに金融の自律性を与える点で、伝統的な(貨幣)システムよりも価値があります。ビットコインは、信頼に依存してしか機能しないという伝統的貨幣の根本的な問題を解決しようとしています。信頼が悪いとは言いませんが、信頼はシステムを脆弱かつ不透明なものにし、運用コストを高くします。信頼が破綻すればシステムは崩壊し、信頼の選別は不平等や閉鎖的な独占を生み出し、正当なアクセスを妨げる信頼のボトルネックを引き起こします。」
「暗号学的証明と分散型ネットワークを通じて、ビットコインは信頼コストを可能な限り削減し、置き換えようとします。根本的には、現時点の技術では、スケーラビリティと分散性の間にトレードオフがあります。システムの運用コストが高すぎると、個人が独自にルールを実行できず、第三者にルールの執行を任せざるを得なくなります。もしビットコインブロックチェーンのリソース消費量が現在の技術を大きく超えれば、既存システムに対して競争力を失い、検証コストが高すぎて多くのユーザーが負担できなくなることで、再び信頼がシステムに持ち込まれることになります。スループットが低く、取引効率が悪ければ、紛争解決のためにブロックチェーンにアクセスするコストが高くなり、信頼が復活するでしょう。」
―― Greg Maxwell
ビットコイン開発者のMatt Corallo氏もまた、信頼最小化の重要性を強調しています:
「ビットコインが持つ多くの特徴の中で、『信頼不要性』(オープンソースソフトウェアの実行以外に、誰かや何かを信じる必要がない状態)は依然として最も重要な要素です。より具体的には、人々がビットコインに興味を持つ主な理由は、特定の第三者個人または連合体を信じたくないという欲求に帰着します。これは広く知られていることですが、信頼不要性がなぜ重要なのか(そしてそれがどのような形で現れるのか)を理解することは、ビットコイン技術の開発や改良において極めて重要です。」
本稿で紹介する他のビットコインの原則の多くは、信頼最小化という要求に根ざしています。これらの原則は、低信頼性への欲求から生まれ、その達成を目標としています。100%完全な信頼不要状態に到達することは不可能です。なぜなら、誰もがネットワークとやり取りするために使用するすべてのソフトウェアやハードウェアを審査するリソースを持つわけではないからです。しかし、それに非常に近づくことは可能です。そうすることで、公開的かつ利害が一致する参加者が、生態系に害を及ぼすような共謀を行う可能性はないと、確信できるようになります。
分散化
ビットコインのようなオープンシステムにおいて、ネットワークが特定の個人や独占的連合体によって操作されるほど中央集権化されてしまうと、前述の理想的特性は維持できなくなります。分散化 は目的ではなく手段です。権力をできるだけ広範に分散させることで、特定の実体に対する信頼を最小限に抑えることができます。なぜなら、誰も私たちがシステムを使うことを妨げられないことが保証されるからです。
「多くの人は、電子マネーは90年代以来試みられた企業がすべて失敗していることから、成功しないと思い込んでいます。しかし、私が明確にしたいのは、これらの電子マネーシステムが失敗した原因は一つだけ、すなわち中央集権的な管理にあるということです。我々は、信頼に依存しない分散型システムを構築しようとする初めての試みなのです。」
―― 中本聡
以下は、中央集権化の潜在的な測定次元であり、定量的に評価するのは困難です:
-
取引所
-
開発者
-
ソフトウェアクライアント
-
マイニングプール
-
マイニングソフトウェア
-
高収益ノード
-
広義の価値所有の分布
-
プライベートキーを自分で管理しているユーザーの割合
-
自らノードを運営して台帳を監査しているユーザーの割合
上記のいずれかの指標が高度に中央集権化しているからといって、システム全体が中央集権化しているとは限りません。しかし、システムの強さはその最も弱い部分によって決まるため、システムに変更を加える際には、いずれの次元にも権力集中の傾向を生じさせないよう慎重に配慮すべきです。
検閲耐性
誰一人として、他人がビットコインネットワークとやり取りすることを阻止したり、有効な取引の承認を無期限に遅らせたりする権利を持ってはなりません。マイナーは取引の承認を自由に選択できますが、高い手数料を支払った有効な取引は、合理的なマイナーによって最終的に承認されます。
擬似匿名性
ビットコインを所有または使用する際に、公式な身分証明書を提示する必要はありません。この原則は、システム自体がユーザーを追跡しないため、「汚染された」取引を識別することが難しくなり、検閲耐性と同質性を強化します。また、この原則は拡大解釈すると、システムがそのユーザーが人間であることを要求しないことも含みます。
オープンソース
ビットコインクライアントのソースコードは、いつでも誰でも閲覧、修正、複製、共有できるように公開されていなければなりません。ビットコインの価値は、システムの透明性と監査可能性にあります。システムを完全に監査できるからこそ、特定の実体が誠実であると信じる必要がなくなるのです。経済的インセンティブにより、エコシステムの参加者は誠実に行動します。なぜなら、不正をすれば罰せられると知っているからです。もしシステムとやり取りするために使用されるコード自体がユーザーによって監査できないのであれば、そのコードによる監査機能に一体どんな意味があるでしょうか?
オープンコラボレーション
誰でも個別に研究や開発を行うことはできますが、特に後方互換性のないプロトコル変更は、陰で企てるのではなく、公開して推進すべきです。ビットコインは人類共通の財産であるため、あらゆる改善提案は公に一般の審査を受けるべきです。ビットコイン改善提案(BIP)プロセスを通じて変更を提唱することは推奨されますが、強制ではありません。なぜなら、それを強制できる権力機関が存在しないからです。
自発的な組織活動自体に伴う問題や、そこから生じる力関係によって、特定の人やグループが支配者であるように見えるかもしれませんが、それは錯覚です。
許可不要
ゲートキーパーは、取引者、ノード、マイナーなどとしてネットワークに参加することを誰にも阻止できません。これは信頼最小化、検閲耐性、擬似匿名性の恩恵です。
法的中立性
ビットコインの開発は、いかなる国や地域の法律も考慮しません。他のインターネットプロトコルと同じです。ビットコインは規制に合わせるのではなく、規制当局がビットコイン技術によって可能になった機能に対応を考える必要があります。
同質性
健全なマネーにとって、同質性は重要な特性です。各ユーザーが受け取ったビットコインが「汚れてい」るかどうかを分析する必要があれば、ビットコインシステムの有用性は大幅に低下します。
すべてのUTXOは、使用されるときに平等であるべきです。残念ながら現状はそうではなく、「犯罪活動に関連する」とされる「汚れ」たUTXOを追跡するサービスが既に存在します。この差別的扱いの副作用として、無実のユーザーが「汚れ」たUTXOから数回転送されたUTXOを使用しただけで逮捕される可能性があります。
同質性にはプライバシーが必要です。プライバシーとは、膨大なユーザー群の中から特定の取引の所有者を第三者が特定できない状態のことです。問題は、ビットコインユーザーのプライバシーは多くの既知の脅威にさらされていることです。そのため、現行のビットコインは完全な同質性からはまだ遠い状態です。
前方互換性
ビットコインでは、署名はするがブロードキャストしない取引が許容されています。したがって、署名済みだが未ブロードキャストの取引はすべて有効と見なされ、後からブロードキャスト可能です。タイムロック付き取引はその好例です。これは相続や遅延処理が必要なシナリオに適しています。このルールを変更すると深刻な影響が出ます。多数の未ブロードキャスト取引が突然無効になる可能性があり、ユーザーが過去に依拠していたルールが破られれば、経済的損失を被ることになります。誰もその責任を負いたがらないでしょう。
実際、ビットコインが前方互換性を堅持しているおかげで、ユーザーはプロトコルに対して強い信頼を持っています。誰もが自分のビットコインを守るための任意の措置を思いつき、展開でき、許可を得る必要はありません。プロトコルルールに従っていれば、最悪の場合でもノードがその取引を転送しないだけです。
リソース使用の最小化
検証コストを低く抑えるため、ブロックスペースは希少資源です。したがって、大量のブロックスペースを占有することは誰にとっても高価になります。重要な原則として、UTXOを「消費」することを奨励し、「生成」することを奨励しないことです。UTXOアキュムレータがUTXO肥大化問題を解決できれば、この原則は変わるかもしれません。
検証は低コストであるべきです。これにより、より多くのユーザーがシステムの監査を負担可能になり、信頼最小化が促進されます。検証コストが低いと、リソース枯渇攻撃のコストも大幅に上がります。ビットコインは、安価な無効ブロックを迅速に拒否するメカニズムを提供しています。これはハッシュキャッシュの基本原理であり、攻撃者がスパムを作成するには高コストがかかります。ノードは、ブロック内の取引を同期する前に、80バイトのブロックヘッダーをダウンロードして、作業量証明を取得し、迅速かつ正確に検証できます。
さらに、複雑な操作の検証に必要な最小限のデータのみをオンチェーンに保存し、複雑な操作自体を直接オンチェーンで保存・実行しないことを優先すべきです。
検証 > 計算
これはリソース使用最小化の原則に属します。理想としては、複雑なロジックを実行する必要があるのはごく少数の人だけです。ネットワーク上で完全検証ノードを運営する他の人々は、ロジックの各ステップを逐一追う必要はなく、正しい実行が保証されていればよいのです。完全性よりも正しさが重要です。
「ブロックチェーンに、得意なことをさせよう。」
―― Andrew Poelstra
あらゆるシステムにとって、最高の最適化は計算を実行しないことです。ブロックチェーンの長所は、監査目的でタイムスタンプ付きデータを保存できることです。すべての参加者に、自分に関係のない取引のロジックを計算させることよりも、関係者だけが検証可能な計算の証明を保存すれば十分です。
収束
任意の2つのビットコインクライアントが同じ正直なピアノードに接続していると仮定すると、最終的には同じブロックチェインの先端に収束すべきです。反例として、Bitcoin ABC が提案した最大10ブロックのチェイン再編成ルールはこの原則を破っています。その結果、ネットワーク分断や遮断が発生すると、影響を受けたマイナーは別のチェインを継続して採掘し続けます。ネットワークが再結合しても、2つのフォークは累積作業量証明が最も大きいチェインに収束しません。
すべての取引操作は決定的でなければなりません。システム状態が同一であれば、取引は一通りの方法でのみ実行され、外部要因が計算に影響を与えてはなりません。同様に、異なる2台のマシンでスクリプトが異なる動作をしてはなりません。唯一の解決策は隔離です。スマートコントラクトや取引は、非決定的要因から独立していなければなりません。
プロトコルの変更により、チェイン再編成によって取引が無効化されるリスクがあってはなりません。取引操作は決定的であるだけでなく、ステートレスであるべきです。例えば、2010年のOP_BLOCKNUMBER 提案。
再編成後に取引が無効になる可能性のあるオペコードを提案する人もいます。こうした提案は通常、前方互換性を確保するためOP_CLTVを使って再設計されるよう求められます。しかし、場合によっては無駄だったり非現実的だったりします。ある取引が100ブロック以内にブロックに取り込まれないようにするオペコードを導入する案もあります。これはコインベース取引やOP_CSVで100ブロックのタイムロックを設定するのと似ています。
取引の不変性
あるブロックが与えられたとき、その後に続くブロックが多いほど、そのブロックがチェイン再編成によって孤立ブロックになる可能性は低くなります。ビットコインプロトコルは任意の長さのチェイン再編成を許容していますが、長すぎる再編成は破壊的です。一部のソフトウェアやノードが適切に処理できない可能性があるためです。さらに、100ブロックを超える再編成は、すでに支出されたコインベース取引を無効化し、その価値を破壊するため、より大きな破壊力を持ちます。
技術的には不変性を保証することはできませんが、累積された作業量証明が十分に大きければ、取引をロールバックするコストが極めて高くなることを保証できます。
DoS攻撃への耐性
リモートのピアノードが、ローカルノードの過剰なリソース消費を引き起こすメッセージを送信してはなりません。しかし、SPVブルームフィルタの導入により、この原則は破られています。攻撃者はこの機能を利用して、ターゲットのピアノードに大量のブロックデータをスキャンさせ、ディスクI/Oを大量に消費させることができます。ここをクリックして「meisbehav」と検索すると、多くのDoS対策ルールが確認できます。悪意ある振る舞いにはスコアが付けられ、あるピアのスコアが上限を超えると、あなたのノードは接続を切断し、被害を防ぎます。
レースコンディションの回避
システムの挙動が、制御不能なイベントの順序やタイミングに依存する場合、レースコンディションが発生します。ビットコインのような分散型許可不要システムでは、イベントは予測不能であることが多いです。UTXOモデルはこれを回避するのに役立ちます。なぜなら、出力は一度しか使用できないからです。取引出力の状態は二値的です(使用済みまたは未使用)。
これが、取引がシステム状態に依存してはならないもう一つの理由です。チェイン再編成中に状態が変化すれば、レースコンディションや複雑性が生じる可能性があるからです。
堅牢性
-
長期的には、通貨は安定しているべきです。
-
変化に対しては慎重な態度を取るべきです。システムリスクをできる限り低く抑えつつ、人々が自分たちが適切だと思う方法でシステムを使い続けられるようにするためです。
-
ユーザーが積極的にシステムの問題に対処すると期待すべきではありません。だからこそ、私たちは慎重に行動し、問題を未然に防ぐべきなのです!
堅牢性とは一体何を意味するのでしょうか? それは社会的スケーラビリティを保証するのに役立ちます。
ビットコインが成功した秘訣は、高いエネルギー消費と低い計算スケーラビリティという代償を払い、より貴重な特性である社会的スケーラビリティを獲得したことにある。
―― Nick Szabo
多くの人間が運営するシステムには、ルールの執行が恣意的であったり、個人の判断に左右されやすかったりするという根本的な問題があります。これにより、システムの信頼性が損なわれます。
会計士、規制当局、調査官、警察、弁護士といった従来の人間による金融システム保護の代わりに、コンピュータサイエンスを利用できれば、手動操作による弱いセキュリティの局所的システムを、自動化された強力なセキュリティのグローバルシステムに変えることができる。
―― Nick Szabo
インセンティブの整合性
ビットコインが機能するのは、システムルールが参加者に誠実さを促すインセンティブを与えているからです。理論的には、マイナーはチェイン再編成を通じて二重支払い攻撃を行うことができますが、これは莫大なハードウェアと電力コストをかけて自らの利益を損なうことになります。マイナーにとって、リソースをブロックチェーンの保護に使うほうがはるかに有益です。
固定化
一般的に、エコシステムが成長するにつれて、基盤となるプロトコルを変更することはますます難しくなると考えられています。ユーザー層の立場や動機が多様化するにつれ、議論を呼ばない変更が少なくなるためです。そのため、改善はビットコインを基盤とする他のレイヤーで起きる可能性が高いです。
変えられないコンセンサス
-
発行上限2100万を超えるビットコインの発行。精度/分割可能性は増える可能性があるが、所有比率は変わらないままにする必要がある。
-
中央集権化を必然的に進めるルールの導入。例えば、すべてのブロックが中央集権的組織の署名を必要とするルールの追加など。
-
デマルレージ(「失われた」または「一度も使われていない」と判断されたビットコインを削除または再分配すること)。客観的には、あるUTXOが特定期間使用されていないからといって、その秘密鍵が失われたと断定することはできません。本稿執筆時点で、約100万以上のビットコインが失われた可能性がありますが、実際に確認された消失・焼却済みのBTCは約5,000BTC程度です。
相反する原則
同質性(プライバシー)を向上させることで供給量の監査ができなくなるのは不可能です。同様に、監査性を犠牲にしてまで同質性を高めることも議論の余地があります。
時には、ネットワークを保護する目的で特定のUTXOの使用を禁止したいと思うこともあります。例えば、量子攻撃に対して脆弱なP2PK形式のビットコインなどです。こうした提案は議論を呼びますが、メリットが圧倒的に大きい場合はユーザーが受け入れる可能性があります。
ビットコインが提供する有効性は恒久的ではありません。なぜなら、コインベース取引の前にチェイン再編成が発生する可能性があるからです。つまり、新しいビットコインが創造される前の段階です。コインベース取引の100ブロック確認ルールは、このような事態を回避するのに役立ちます。執筆時点で、ビットコインメインネットではブロック深度が1を超える再編成は極めて稀です。
最後に、ビットコインエコシステム内で衝突が生じる主な理由の一つは、ビットコインがすべての人のニーズを同時に満たすことができないことです。そうでなければ、多くの重要な原則が両立しないため、ビットコインは衰退してしまうでしょう。例えば:
-
全システムの検証コストと取引コストの両方を低く保つこと
-
豊富な機能を持つプログラミング言語を使いながら、攻撃面を小さく保つこと
協調的進化
ユーザーが今後もビットコイン取引を信頼し使い続けるためには、ビットコインコミュニティは、広範な合意が得られた場合にのみ変更を行うという原則を堅持しなければなりません。一方で、ビットコインが停滞しないようにするためには、コミュニティは他人を傷つけず、システムに利益をもたらす変更に対して合意する意思を持つ必要があります。重要なのは、可能な限り、ビットコインのさまざまな用途における有用性を損なわず、かつ利点をもたらす変更はすべて実施されるべきだということです。
―― Matt Corallo
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News













