メインコンテンツへスキップ

イーサリアム上のプライバシー

プライバシーは個人の安全にとって不可欠であるだけでなく、自由の礎であり、分散化の重要な保証 (opens in a new tab)でもあります。プライバシーにより、人々は自分自身を表現し、他者とトランザクションを行い、自由にコミュニティを組織することができます。しかし、他のすべてのブロックチェーンと同様に、イーサリアムの公開台帳はプライバシーの確保を困難にしています。

イーサリアムは設計上、透明性を持っています。すべてのオンチェーンでの行動は、誰でも見ることができます。イーサリアムは、現実世界の身元ではなく公開鍵に活動をリンクさせることで仮名性を提供していますが、活動のパターンを分析することで、機密情報が明らかになり、ユーザーが特定される可能性があります。

イーサリアムにプライバシー保護ツールを組み込むことで、不必要な情報の露出を制限しつつ、人々、組織、機関が安全にやり取りできるようになります。これにより、エコシステムはより安全になり、より幅広いユースケースにとって実用的なものになります。

Privacy is existential

Peter Van Valkenburgh makes the case that privacy is not merely a feature but an existential requirement for Ethereum's neutrality and trustlessness, drawing on legal battles over Tornado Cash, MEV, and validator liability.

トランスクリプト付きで視聴 

書き込みのプライバシー

デフォルトでは、イーサリアムに書き込まれるすべてのトランザクションは公開され、永続的に残ります。これには、ETHの送金だけでなく、ENS名の登録、POAPの収集、NFTの取引なども含まれます。支払いや投票、身元確認といった日常的な行動によって、意図しない第三者にあなたの情報が漏れる可能性があります。これらの行動のプライバシーをより高めるのに役立つツールやテクニックがいくつかあります。

ミキシング・プロトコル(または「ミキサー」)

ミキサーは、多くのユーザーのトランザクションを共有の「プール」に入れ、後で新しいアドレスに引き出しを行わせることで、送信者と受信者のリンクを断ち切ります。入金と引き出しが混ざり合うため、観察者がそれらを結びつけることははるかに困難になります。

例: PrivacyPools (opens in a new tab)Tornado Cash (opens in a new tab)

シールド・プール

シールド・プールはミキサーに似ていますが、ユーザーがプール内で資金をプライベートに保持し、送金できるようにします。入金と引き出しのリンクを単に曖昧にするだけでなく、シールド・プールは継続的なプライベートな状態を維持し、多くの場合、ゼロ知識証明によって保護されます。これにより、プライベートな送金やプライベートな残高などを構築することが可能になります。

例: Railgun (opens in a new tab)Aztec (opens in a new tab)、Nightfall

ステルス・アドレス

ステルス・アドレス (opens in a new tab)は、各送信者に対して、あなただけが開けることができる固有の使い捨て私書箱を提供するようなものです。誰かがあなたに暗号資産を送るたびに、それは新しいアドレスに送られるため、それらすべての支払いがあなたのものであることを他の誰にも知られることはありません。これにより、支払い履歴のプライバシーが保たれ、追跡が困難になります。

例: UmbraCash (opens in a new tab)FluidKey (opens in a new tab)

その他のユースケース

プライベートな書き込みを探求している他のプロジェクトには、PlasmaFold (opens in a new tab)(プライベートな支払い)や、MACI (opens in a new tab)およびSemaphore (opens in a new tab)(プライベートな投票)のようなシステムがあります。

これらのツールは、イーサリアム上でプライベートに書き込みを行うための選択肢を広げますが、それぞれにトレードオフがあります。一部のアプローチはまだ実験段階であり、コストや複雑さを増大させるものもあります。また、ミキサーのようなツールは、使用方法によっては法的または規制上の監視を受ける可能性があります。

読み取りのプライバシー

イーサリアム上の情報(ウォレットの残高など)を読み取ったり確認したりする場合、通常はウォレット・プロバイダー、ノード・プロバイダー、またはブロック・エクスプローラーなどのサービスを経由します。ブロックチェーンの読み取りをこれらのサービスに依存しているため、彼らはあなたのリクエストとともに、IPアドレスや位置情報などのメタデータも見ることができます。同じアカウントを何度も確認していると、これらの情報がつなぎ合わされ、あなたの身元と活動がリンクされる可能性があります。

独自のイーサリアム・ノードを実行すればこれを防ぐことができますが、完全なブロックチェーンを保存して同期することは、依然としてコストがかかり、ほとんどのユーザー、特にモバイル・デバイスのユーザーにとっては非現実的です。

プライベートな読み取りを探求しているプロジェクトには、Private Information Retrieval (opens in a new tab)(PIR、検索内容を明かさずにデータを取得する)、zkID (opens in a new tab)(ゼロ知識証明を用いたプライベートな身元確認)、vOPRF (opens in a new tab)(Web3でWeb2アカウントを仮名で使用する)、vFHE (opens in a new tab)(暗号化されたデータ上で計算を行う)、およびMachinaIO (opens in a new tab)(機能を維持しながらプログラムの詳細を隠す)などがあります。

証明のプライバシー

プライバシー保護証明は、不必要な詳細を明かすことなく、何かが真実であることを示すためにイーサリアム上で使用できるツールです。例えば、次のようなことができます。

  • 生年月日をすべて共有することなく、18歳以上であることを証明する
  • ウォレット全体を明かすことなく、NFTやトークンの所有権を証明する
  • 他の個人情報を公開することなく、メンバーシップ、報酬、または投票の資格を証明する

これらのツールのほとんどは、ゼロ知識証明のような暗号技術に依存していますが、課題は、日常的なデバイスで実行できるほど効率的で、あらゆるプラットフォームに移植可能であり、かつ安全なものにすることです。

証明のプライバシーを探求しているプロジェクトには、Client Side Proving (opens in a new tab)(ZK証明システム)、TLSNotary (opens in a new tab)(ウェブ上のあらゆるデータの真正性証明)、Mopro (opens in a new tab)(モバイルのクライアント側証明)、Private Proof Delegation (opens in a new tab)(トラスト前提を回避する委任フレームワーク)、およびNoir (opens in a new tab)(プライベートで検証可能なコンピューティングのための言語)などがあります。

プライバシー用語集

匿名 (Anonymous): データからすべての識別子が永久に削除された状態でやり取りを行い、情報を個人まで遡って追跡することを不可能にすること

暗号化 (Encryption): 正しい鍵を持つ人だけが読み取れるようにデータをスクランブルするプロセス

完全準同型暗号 (opens in a new tab) (FHE): 暗号化されたデータを復号することなく、直接計算を実行する方法

識別不可能な難読化 (opens in a new tab) (iO): プログラムやデータを使用可能な状態に保ちながら、解読不能にするプライバシー技術

マルチパーティ計算 (opens in a new tab) (MPC): 複数の当事者が、それぞれのプライベートな入力を公開することなく、共同で結果を計算できるようにする手法

プログラマブル暗号技術 (Programmable Cryptography): データの共有、検証、または公開の方法とタイミングを制御するために、ソフトウェアでカスタマイズできる柔軟でルール駆動型の暗号技術

仮名 (Pseudonymous): 個人識別子の代わりに、固有のコードや番号(イーサリアムのアドレスなど)を使用すること

選択的開示 (Selective Disclosure): 必要なものだけを共有する機能(例:ウォレットの履歴全体を明かすことなく、NFTを所有していることを証明する)

リンク不能性 (Unlinkability): ブロックチェーン上の別々の行動が、同じアドレスに結び付けられないようにすること

検証可能性 (Verifiability): イーサリアム上のトランザクションや証明を検証するなど、他者が請求が真実であることを確認できるようにすること

検証可能な委任 (Verifiable Delegation): 証明の生成などのタスクを他の当事者(例:重い暗号技術のためにサーバーを使用するモバイル・ウォレット)に割り当てつつ、それが正しく行われたことを検証できるようにすること

ゼロ知識証明 (ZKP): 元のデータを明かすことなく、情報が真実であることを証明できる暗号プロトコル

ZKロールアップ (ZK Rollup): トランザクションをオフチェーンでバッチ処理し、有効性証明をオンチェーンに提出するスケーラビリティ・システム。デフォルトではプライベートではありませんが、コストを削減することで(シールド・プールのような)効率的なプライバシー・システムを可能にします。

リソース

  • Privacy Stewards of Ethereum (opens in a new tab) (PSE): エコシステムのプライバシーに焦点を当てたイーサリアム財団の研究開発ラボ
  • Web3PrivacyNow (opens in a new tab): オンラインでの人権を保護し推進する人々、プロジェクト、および連携組織のネットワーク
  • WalletBeat (opens in a new tab): ウォレット、その機能、実践、および特定の標準へのサポートの包括的なリストを提供することを目指す、イーサリアム・ウォレットの評価サイト
  • Zk-kit (opens in a new tab): さまざまなプロジェクトやゼロ知識プロトコルで再利用できるライブラリ(アルゴリズム、ユーティリティ関数、データ構造)のセット
  • Privacy Apps - イーサリアム上で実行される厳選されたプライバシー・アプリケーションのリストを発見できます。