ビットコインの"外側"のプライバシー
ビットコインでは「プライバシー」がよく話題に上がります。どんな人でも平等に利用できるように、政府や組織や他人に干渉されることなく個人の秘密が守られたマネーにするために、さまざまな取り組みが日々なされています。
これはビットコイン内部の仕組みやビットコイン関連機器で解決できることもありますし、今年7月に行われたConsensus 2022でエドワード・スノデーン氏が議題にしたように、ビットコインに到達するまでのインターネットの利用環境に問題がある場合もあります。
本稿では、プライバシーについて、ビットコイン内部の仕組みから始め、インターネットプロトコルでの取り組みまで見ていきます。
ビットコインのプライバシーモデル
まず初めにビットコインのプライバシーの仕組みをざっとおさらいしておきます。サトシ・ナカモト氏のホワイトペーパーでは「公開鍵による匿名化」がアイディアの核となっていました。

[論文より引用 https://bitcoin.org/bitcoin.pdf]
従来の銀行モデルでは、トランザクションを機関の外へは非公開にすることにより、外部に個人情報が知られないようになっていました。ビットコインでは、不特定多数による検証可能な分散台帳にするためにトランザクションを公開するので、トランザクションとIDを分離することで個人情報を守るようにしています。それが公開鍵セットによる匿名化です。氏名や住所などを用いなくてもただ公開鍵セットで署名検証すれば本人証明できるようにしているわけですね。しかし、これでも公開鍵セットを使い回せばインプットやアウトプットの相関からある程度の残高や取引関係が推測できてしまいます。そのためホワイトペーパーではトランザクションの署名に用いる公開鍵セットを一回限りにすることを推奨しています。
ホワイトペーパー後にも、さらにトランザクション間の関係性を断つためのCoinJoinや、送金者も受金者もその場だけの公開鍵セットを用いて履歴を残さず残高だけを変更するMimbleWimbleなどが開発されています。Layer2であるLightningNetworkでは、送金者は誰に送るかわかるが、受金者は誰から送られたかわからないようになっています。また、送金者も誰に送るかわからないようにするRoute Blindingの仕様検討も進んでいます。
指摘されている問題点
アドレス間の関係解析(セキュリティの脅威モデルでは「相関(Correlation)」と呼ばれます)はよく知られているように、ChainAnalysisなどによる高度なデータ解析が行われています。さらには取引所などが保有している個人情報とアドレスを結びつけることによりさらに豊富なプロファイリング(セキュリティの脅威モデルでは「識別(Identification)」「二次利用(Secondary Use)」と呼ばれます)が可能になります。
冒頭に挙げたConsensus 2022でエドワード・スノデーン氏が議題にしたことも相関や識別に関する問題でしたが、彼が指摘している問題点はさらに"外側"の話になります。
通信内容の暗号化には大きな進展があったと考えているが、メタデータ(通信が行われたことを示す記録)にはまだ懸念が残っている
[記事より引用 https://www.coindeskjapan.com/151600/]
動画: https://www.coindesk.com/videos/main-stage-at-consensus-2022/edward-snowden-on-the-long-road-to-internet-privacy-2/
彼はビットコインを投資ではなく通貨目的で使っているそうですが、通信タイミングの傾向、IPアドレスの記録やパケットなどに含まれる特定情報、フィンガープリントと呼ばれる痕跡情報により個人特定が可能であることが問題として残っていると指摘しています。「プロトコルの匿名性」を実現するために、パケットサイズ、コンテンツ、トークンの場所、パケット間のタイミングなど、同じ属性を持つ複数のプロトコルまたはアプリケーションを用いる必要性にも言及しています。
今年はビットコインの初めの2年間のマイニングが64人だったことを特定したという論文も発表されています。アリッサ・ブラックバーン氏が行った解析手法も主に掲示板やメーリングリストなどに残されている情報とマイニングソフトの起動や実行タイミングなどを突き合わせしていくことで、個人を特定していく手法でした。
記事: https://toyokeizai.net/articles/-/596024?page=4&s=09
論文: https://ericbudish.org/publication/the-economic-limits-of-bitcoin-and-the-blockchain/
スノーデン氏やブラックバーン氏が指摘していることは、もはやビットコイン内部ではなく、インターネットのプライバシーの問題になっています。機密性は、ビットコイン内部のユーザーを匿名にすることだけでは守られないのです。

インターネットの脅威
さて、それではインターネットのプライバシー議論も見ていきましょう。どんな人でも平等に利用できるというフィロソフィーは、何もビットコインだけのものではありません。インターネットでも長年に渡り掲げられ、さまざまな議論とそれによる成果物が積み重ねられてきました。
インターネットには自由があります。パケットを送信するという規則を受け入れる限り、どんなものを含んだパケットもどこにでも送信できます。 [Berners-Lee]
そのためにインターネットにはエンド・トゥー・エンド(E2E)の原則があります。高度な処理はなるべくシステムの末端(エンドシステム)で行い、ネットワーク経路上はなるべく単純な処理のみを行うという原則です。これによりオープンで自由な価値提供だけにフォーカスできるわけです。しかし、それでも端末の接続情報からネットワークの宛先解決、および通信で運ぶパケットやデータ規格は複雑膨大でさまざまなトラストポイントができることは不可避であり、インターネットの監視と検閲は一般的に行われています。主だったものを挙げていきましょう。
IPレベルの監視
- 米国国家安全保障局(NSA)が大量監視機能を使用してTorユーザー全体を特定している。
ISPでの制御
- 中国、ギリシャなどの通信の応答をフィルタして歪めている国がある。
DNSの削除
- DNSの登録者が検閲され、wikileaksドメインの差し押さえや、米国移民税関捜査局(ICE)による違法に運営されている賭博事業のドメイン所有権を米国政府に引き渡すよう強制した。
HTTPの傍受
- クリアテキストを傍受していた国。アメリカ、シリア、リビアなど
P2Pも特定される
- BitTorrentはピアのIPアドレスが公開される。ドイツの法律事務所がその追跡システムを構築している。
VPNの問題
- 商用サービスが多いが、それらのサービスはTorや類似のネットワークと異なり、公衆や学術コミュニティから精査を受けていないため脆弱性が潜む。
- インフラストラクチャが存在する管轄の法律に拘束されること、および特定のユーザーのデータを法的に引き渡さなければならない。
未実現ではありますが今年3月にロシアがインターネットを切り離すという噂も大変話題になりましたが、実は過去にそれに準じた出来事はエジプト(2011年)、シエラレオネとモーリタニア(2018年)などで起こっています。これらを調べると、物理レベル、IPレベル、ルーティングレベル、DNSレベルなど各階層における、通信の傍受と妨害手法がわかります。
インターネットのプライバシー議論
基本的にインターネットの第一世代の技術は傍受されるものです。脆弱性や機密性の問題が広く共有されたらセキュアなものに年月をかけて置き換えられていっています。
- httpからhttpsへ
- DNSからDNSSECへ
- BitTorrentからfreenetへ
インターネット・プロトコル・スイートの技術面に関する標準化団体であるIETF(The Internet Engineering Task Force)ではプロトコル開発にあたり、プライバシーにおいてもさまざまな共有指針(RFC)を策定してきました。これらの文書では、スノーデン氏が指摘しているような問題への取り組みも議論されています。
主だったものを挙げます。いずれも文章主体であり技術に通じていなくても読めるものです。リストの下にいくほど抽象度や俯瞰度が上がります。
RFC 3552 - セキュリティ上の考慮事項に関するRFCテキストを書くためのガイドライン
- 攻撃手法やセキュリティ要件を整理
- https://tex2e.github.io/rfc-translater/html/rfc3552.html
RFC 6973 - インターネットプロトコルのプライバシーに関する考慮事項
- プライバシーの脅威モデルと軽減手法を整理
- https://tex2e.github.io/rfc-translater/html/rfc6973.html
RFC 8280 - 人権プロトコルに関する検討事項の調査
- インターネットにおける人権の脅威モデルと配慮すべき人権の種類を整理
- https://tex2e.github.io/rfc-translater/html/rfc8280.html
インターネットもさまざまなプロトコルやアプリケーションの集合体のため一律に定めることができない点が難しいですが、上記の文書群では開発者たちにプロトコルの設計時に考慮すべき観点を指し示しています。特に重要なのはどこを最低限守るべきかあるいは代替手段を確保するかという論点で、現在も活発に議論されています。また、ビットコインのプライバシーモデルで取り上げた匿名(さらには仮名)はインターネットにおけるプライバシーでも欠かせないものとしてあちこちに登場しますし、相関や識別の詳しい説明も記載されています。
RFC8280はまだまだ調査段階ですが、この中で焦点になっている一つが「暗号化の権利」です。匿名(Anonymity)や仮名(Pseudonymity)がプライバシーに必須の要素であることは言うまでもないですが、ビットコインやSelf Sovereign Identity(SSI)により今後ますますオンラインに上がる機密情報が増えてくると秘密鍵の開示義務または拒否権利の制定がインターネットの人権における最後の砦になってくると個人的には考えています。
否決されましたが米国ワイオミング州では秘密鍵の開示に関して、以下の法案が策定されました。
何人も、公開鍵がデジタル資産、その他の利益または権利に関して必要な情報を利用できないまたは開示できない場合を除き、秘密鍵がアクセスを提供するデジタル資産、その他の利益または権利に関連する本州の民事、行政、立法またはその他の手続きにおいて、秘密鍵を提示したり、秘密鍵を他の者に知らせたりすることを強制されない。本項は、秘密鍵がアクセスを提供するデジタル資産、その他の利益または権利を提示または開示すること、またはデジタル資産、その他の利益または権利に関する情報を開示することを強制する合法的な手続きを禁止するものとは解釈されないものとする。
[資料P240より引用 https://www.fsa.go.jp/policy/bgin/ResearchPaper_NRI_ja.pdf]
特に独裁国においては、この問題がある以上はたとえ技術的に可能だったとしても種々のオフラインデータを無邪気にオンラインに移行することはリスクが大きく慎重に検討すべきことは指摘されることです。
おわりに
ビットコインのプライバシーについて、ビットコイン内部の話だけでなく、ビットコインを利用するためのインターネットまで対象を広げて問題点や動向をまとめました。スノーデン氏が指摘しているように通信やメタデータ(通信が行われたことを示す記録)にも多くの未解決の問題がありますしそれにより解消される問題も大きいです。また、ビットコイナーなら秘密鍵の人権に着目することも欠かせないのではと思い最後に取り上げました。
次の記事
読者になる
一緒に新しい世界を探求していきましょう。
ディスカッション