"P2P VPN"とは何か？

Napsterを覚えている方や、メディアファイルをトレントでダウンロードしたことがある方は、「P2P」という言葉に馴染みがあるかもしれません。あまり知られていないかもしれませんが、P2P（ピア・ツー・ピア）ネットワークには、コミュニケーション、共同研究、物理的リソースの共有など、幅広い応用が存在します。では、P2Pネットワークは具体的にどのように機能し、VPN（仮想プライベートネットワーク）とどう関係しているのでしょうか？

技術的には、「P2P」と「VPN」はどちらもネットワークの一種ですが、目的は異なります。P2Pは分散型のリソース共有を目的とし、VPNはデータの匿名化を目的としています。ここでその違いを明確にしておきたいと思います。「P2P VPN」を市場で探しているなら、あまり多くは見つからないかもしれませんが、ご心配なく。基本的に探しているのは「分散型VPN（dVPN）」です。というのも、P2PもdVPNもどちらも分散型だからです。

幸いなことに、dVPNは現在市販されており、従来のVPNよりも強力なプライバシー保護を提供しています。多くの主流のVPNサービスが私たちのデータを集中管理するため、それがデータ漏洩、サイバー攻撃、政府の開示要求に対して脆弱になるという問題があります。しかし、dVPNは分散型のルーティングアーキテクチャを持つことで、これらのリスクを回避することができます。厳密に言えば「P2P」や「P2P VPN」ではないものの、非常に似た利点を持っています。

この記事では、P2Pネットワークがクライアント間のモデルでどのように機能するのか、分散型ネットワークにおけるP2Pの革新がどのように新しいdVPNの道を開いたのか、そして両者をどのように最適に組み合わせることで最高のプライバシーを実現できるかを解説していきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3672851/cc73863b-522a-c881-a88e-8699f56a9f91.png)

# P2Pネットワークとは？
P2Pは「ピア・ツー・ピア」の略で、分散型ネットワークを指します。このネットワークでは、各「ピア」（ユーザー）はクライアントであると同時にサーバーでもあります。P2Pのデータ交換は、ユーザーのデータをルーティングする中央サーバーを必要としません。代わりに、複数の分散型のピアがリソースを提供し、他のユーザー（ピア）にアクセスさせたり、利用させたりします。これにより、オンライン上のリソース共有がより共同的な形で実現されます。

P2Pネットワークで共有できるリソースの種類は非常に多岐にわたります。単にデータファイルやコミュニケーション、情報だけでなく、音楽やビデオファイルもよく知られた共有リソースの一例です。また、コンピュータの処理能力やデジタルストレージ、ネットワーク帯域幅といった、より複雑なリソースも共有可能です。

# P2Pネットワークの例
P2Pアーキテクチャは、さまざまなデジタルタスクに応用されています。

ファイル共有プラットフォーム：かつて存在したNapsterや、現在も活躍しているトレントプログラムが最も有名なP2Pプラットフォームです。The Pirate Bayは厳密にはP2Pネットワークではなく、トレントのインデックスサイトであり、独自の「トラッカー」や「スウォーム」を使ってユーザーにメディアをリンクしていました。

ブロックチェーン技術：P2Pネットワークの原則を応用して、安全で透明性があり、不変の記録保持手段を提供します。特に、ブロックチェーンのセキュリティ機能は、台帳が分散化され、暗号化されていること、そして数学的アルゴリズムとコンセンサスメカニズムによって信頼が確保されていることに基づいています。

暗号通貨：ビットコインに代表される暗号通貨は、ブロックチェーンインフラを活用して、匿名性を高めた分散型の財務取引台帳を提供します。

通信プラットフォーム：Skypeは当初P2Pネットワークに基づいていましたが、後にクラウドサービスを利用した一部中央集権化されたハイブリッドモデルを採用しました。Invisible Internet Project（I2P）、RetroShare、Tox、Matrixなども、P2Pネットワーク上で完全または部分的に暗号化されたメッセージングおよびファイル共有機能を提供しています。

分散コンピューティングプロジェクト：SETI@homeのようなプロジェクトは、世界中の何千ものボランティアが提供するコンピュータの処理能力を動員し、単一のコンピュータでは解決できない複雑な計算問題を共同で解決しています。

# P2Pネットワークの仕組み
P2P（ピア・ツー・ピア）ネットワークの仕組みは、リソース共有、分散化、そして平等性の原則に基づいていますが、実際にはプラットフォームごとに異なる形で実行されています。

### リソース共有
P2Pネットワークの参加者（ピア）は、自分が持っているリソースや能力を公開し、他のネットワーク参加者が利用できるようにします。たとえば、P2Pトレントネットワークを使用する際、ユーザーが映画、アルバム、または本をダウンロードしようとすると、トレントプログラムはネットワーク上で共有している他のユーザーを探し、そのリソースをダウンロードできるようにします。ダウンロードは、多くのソースから同時に分割されたデータとして行われます。

より複雑なモデルとしては、Seti@homeプロジェクトがあります。これは、世界中のボランティアのコンピュータ処理能力を利用して、地球外生命を探すための電波信号を解析するというものです。P2Pネットワークによって、個々のコンピュータの処理能力をはるかに超えた作業を実現しています。最近では、Web3におけるAkashのような分散型コンピューティングマーケットプレイスも登場し、未使用のCPUパワーを他のユーザーに提供することで、コストを削減しています。この分散型サービスは、ブロックチェーンによって取引が支えられ、クラウドを通じて運営されています。

### 分散型ネットワーク
P2Pネットワークは、基本的に何らかの形で分散されていますが、その度合いはネットワークの運用や目的によって異なります。完全に分散されたネットワークには、中央サーバーや優先的な調整ポイントがなく、ピアだけで構成されています。たとえば、トレントの場合、一つのリソースを一つのピアから得るのではなく、複数のピアから同時に取得するため、データの分配は自動的に分散されます。

一部のP2Pネットワークは、スケーラビリティを管理するために、ブロックチェーンやノードレジストリのような中央集権的なポイントを使用することもあります。

### 平等なピアモデル
原則として、P2Pネットワークの参加者は平等と見なされます。つまり、誰でも他のピアと同様にリソースにアクセスできるべきです。しかし、すべてのP2Pネットワークでこの平等性が保証されているわけではなく、特定のピアに特権が与えられる場合もあります。たとえば、質の高いファイルを多く共有するピアや、高い共有統計を持つピアは、ダウンロード優先権などの特典を受けることがあります。

いずれにせよ、P2Pネットワークはクライアント-サーバーモデルではありません。ピアユーザー（クライアント）は、中央プラットフォーム（サーバー）を介してリソースを共有・利用・アクセスするわけではありません。Netflixで映画を見る場合、データはNetflixの中央データベースを通じて提供されますが、P2Pネットワークでは、各ピアがサーバーでありクライアントでもあるため、他のピアから直接リソースを受け取り、逆に提供することも可能です。

## P2Pの利点と欠点
P2Pネットワークの分散型構造には、いくつかの利点と対応する課題があります。

### レジリエンス（回復力）
利点: P2Pネットワーク自体はセキュリティサービスではありませんが、分散型の構造により、データベースの障害や攻撃に対する耐性が向上します。1つのピアが攻撃された場合でも、ネットワーク内の他のピアに影響が及ぶとは限りません。また、多くのP2Pネットワークは、ピア間の通信を暗号化しており、外部からのデータ傍受を困難にしています。

欠点: P2Pトラフィックの暗号化は、ネットワーク上の活動が追跡され、IPアドレスを通じて本人にリンクされることを防ぎません。また、中央管理がないため、マルウェアやウイルスに対して脆弱である可能性があり、サイバー攻撃も発生しやすいです。たとえば、Sybil攻撃では、多くの偽ピアを作成してネットワークの制御を握り、Eclipse攻撃では、悪意あるピアが他のピアとの信頼関係を築き、徐々にネットワークを乗っ取ります。

### コスト
利点: 未使用のストレージや帯域幅などのリソースをネットワークに公開することで、ユーザーは個別の中央集権的なサービス（クラウドストレージなど）を使用する必要がなくなり、コスト削減が可能です。また、P2Pでは、商業的なメディアファイルなどの無料リソースにアクセスできることもあります。

欠点: 高いリソースを共有するユーザーは、システムやCPUの負荷が増加する可能性があります。また、著作権のある素材を無料で共有することには倫理的な問題もあります。さらに、ボランティアで参加するピアに対して、彼らの貢献度をどのように公平に評価するかという問題もあります。

### スピード
利点: P2Pネットワークは、特にメディアのダウンロード時に、複数のピアから同時にデータパケットを受け取るため、速度が最適化されることがあります。1つのピアが遅延した場合、他のピアがその役割を補完します。

欠点: ダウンロード以外の場合、単一のピアを経由するデータルーティングでは、遅延が発生する可能性があります。また、ネットワークの分散度合いや規模によっては、性能が最適化されず、遅延が生じることがあります。

# では、P2P VPNとは何か？
P2P VPNとは、基本的にクライアントのトラフィックを分散型のピア・ツー・ピア（P2P）アーキテクチャを介してルーティングする仮想プライベートネットワーク（VPN）のことです。しかし、市場に「P2P VPN」と呼べるものはほとんど存在せず、ユーザーが実際に探しているのは**分散型VPN（dVPN）**です。P2P VPNとdVPNの違いはほとんどなく、どちらも分散型ネットワークを使用しています。

### P2P VPNはdVPN
P2PネットワークとVPNは、元々異なる目的を持つサービスです。P2Pネットワークは、ネットワーク参加者（ピア）間で情報やリソースを共有するための分散型ネットワークです。一方、VPNはユーザーのデータを暗号化し、そのデータをVPNのサーバーを通じてインターネットに接続させることで、オンラインでのプライバシーを保護するサービスです。VPNはユーザーのIPアドレスをVPNサーバーのものに置き換えることで、匿名性を高めます。

しかし、P2P VPNの仕組みを理解するためには、まずその動作原理を理解する必要があります。

### P2P VPNの仕組み
P2P VPNは、従来のVPNと同様に、まずユーザーのデバイス上でデータを暗号化します。その後、そのトラフィックを他のクライアント（ピア）のネットワークを介してルーティングします。従来のVPNでは、トラフィックはプロバイダーのサーバーを経由しますが、P2P VPNでは他のピアのコンピュータを経由することでIPアドレスがマスクされます。多くの従来のVPNはクライアント-サーバーモデルを採用しており、ユーザーデータがプロバイダーの中央サーバーに集中するため、データ漏洩やサイバー攻撃のリスクがあります。一方で、P2P VPNは分散型ネットワークを採用しているため、このような中央サーバーに依存した脆弱性を避けることができます。

P2P VPNでは、ユーザーのトラフィックがclient-client (or peer-to-peer)モデルに従ってルーティングされます。具体的には、P2P VPNを使用する際、トラフィックは他のピアのコンピュータを経由して目的地に向かいます。これにより、他のピアの帯域幅が他のユーザーのトラフィックのルーティングに利用され、IPアドレスを隠蔽する効果があります。この分散型の仕組みは、中央集権的なサーバーの脆弱性を回避する助けとなりますが、同時にいくつかのリスクも伴います。

# P2P VPNは安全ですか？利点と欠点
dVPN（P2Pベースかどうかにかかわらず）に頼るとき、ユーザーの関心は通常、オンライン活動のセキュリティ、プライバシー、匿名性です。これは十分な理由がありますが、パフォーマンスも重要な要素です。そのため、どのタイプのdVPNを使用するかを検討する際には、VPNがユーザーのニーズにどのように応えるかを考慮することが重要です。

残念ながら、「P2P VPN」製品の市場履歴は十分ではないため、学ぶべきことが少ないです。したがって、既知のP2Pネットワークの強みと弱みを、新しくプライバシーに焦点を当てたdVPN（NymVPNのように、ミックスネットに基づいているもの）と比較して、これらの問題に対処する方法を考えます。

## セキュリティ
P2P VPN: P2Pネットワークは元々、ピアトラフィックのデフォルト暗号化プロトコルを提供していませんでした。ピアツーピア間のユーザーデータのエンドツーエンドの送信に暗号化がない場合、ユーザーデータの内容は経路上で妥協される可能性があります。ただし、質の高いP2Pネットワークでは、現在、ピアツーピア交換を保護するために暗号化が含まれていることがよくあります。しかし、P2Pネットワークは依然としてマルウェア感染、標的型サイバー攻撃、悪意のあるピアがトラフィックを制御する可能性、そして法執行機関による監視で悪名高いです。

ミックスネットVPN: VPNが提供する暗号化プロトコルの種類は重要な考慮事項です。一部は他よりも弱いです。NymVPNは、ユーザーデータが複数回暗号化される高度な多層オニオン暗号化を使用しています。データが2〜5のノード（P2P用語では「ピア」）を通過するとき、次にデータを送信する場所を示すために、1つの暗号化層のみが削除されます。これにより、エンドツーエンドの暗号化が保証され、悪意のあるノードがユーザーデータやトラフィック、IPアドレスを誤って扱う可能性が取り除かれます。

## プライバシーと匿名性
P2P VPN: VPNの分散化の程度は重要です。データがパブリックウェブにアクセスする前に、1つのピアを通過するだけであれば、そのピアはIPアドレスとメタデータを公開するターゲットサーバーになります。これらの場合、個々のピアが自分のサーバーを通じてユーザートラフィックを完全に記録するのを防ぐ手段は不明です。これにより、従来のVPNが抱えるデータ漏洩やデータを狙ったサイバー攻撃と同様の脆弱性が残ります。P2Pネットワークの通信は、ユーザーのメタデータがオンライン活動を追跡するために高度な監視によって分析される際にもパフォーマンスが劣ることが知られています。

ミックスネットVPN: 真のユーザープライバシーとオンライン匿名性には、高度なVPNアーキテクチャが必要です。NymVPNはデフォルトでマルチホップであるため、データの集中化や漏洩のリスクが大幅に低減されます。分散型かつマルチホップネットワーク全体でデータ分析をさらに複雑にするために、データはノードを通過する際に他のユーザートラフィックと混ざります。さらに、偽のデータパケットがネットワークを通じて流通し、ネットワークトラフィックを分析する試みを混乱させます。

## パフォーマンス
P2P VPN: ファイル共有において、P2Pはスピードを向上させ、レイテンシを回避できます。しかし、これは特に単一のホップ（1つのピア）のVPNサービスにどのように変換されるかは不明です。ユーザーが帯域幅が圧倒されている単一のピアを経由してルーティングされる場合、VPNクライアントには多くのレイテンシが想像できます。

ミックスネットVPN: Nymでは、ユーザーがVPNを使用する際のニーズは異なることを認識しています。ユーザーは、ブラウジング、ストリーミング、通信など、何をしても一般的なオンラインプライバシーを望むかもしれませんが、敏感な仕事の通信など、特定のトラフィックに対して強力なプライバシーが必要な場合もあります。Nymの高速2ホップdVPNモードは、ユーザーが強化されたセキュリティとスピードでインターネットをナビゲートできるようにし、選択したタスクには比類のないセキュリティの5ホップミックスネットモードを選択できます。ゲームのように、最適な速度と接続が必要な特定の活動は、NymVPNを完全にバイパスするように設定できます。このようにVPNの分割トンネリングの価値について詳しく読んでみてください。

# プライバシーを求めるなら、ミックスネットを選ぼう
デジタル製品に関する用語は混乱を招くことがあります。しかし、オンラインプライバシーを保護するためのツールを見つける際には、そうあるべきではありません。もし「P2P VPN」のようなものを探していて見つからなかった場合でも心配しないでください。それは単に分散型VPN（Web 2.0の用語で言えば）です。

VPNを選ぶ際の最大のリスクは、従来のメインストリームVPNに戻ってしまうことです。彼らのサーバーにおけるユーザーデータの集中化は、メタデータの漏洩に限らず、ユーザーデータの開示を求める政府の要求など、深刻なプライバシーリスクをもたらします。私たち全員に必要なのは、世界的なプライバシー要件に応えるよう新たに設計されたVPNです。

一般的なオンラインプライバシーや匿名性が必要な場合でも、特定の敏感なコンテンツに対してより強力な保護が必要な場合でも、NymVPNは、必要に応じてウェブ全体で活動を保護するための包括的かつ柔軟なツールです。


# 参考リンク

- [Nym公式サイト](https://nymtech.net/)
- [Nymのミキシングネットワーク - Wikipedia](https://ja.wikipedia.org/wiki/Nymミックスネット)
- [Nymホワイトペーパー](https://nymtech.net/nym-whitepaper.pdf)
- [分散型VPN と中央集権型VPN:違いの全て](https://note.com/koko_crypto/n/n71fe7e92b68a)
- [ミックスネットとは何か？ VPNによる比類なきオンラインプライバシー](https://note.com/koko_crypto/n/n302e7516f691?magazine_key=m0129d65e3526)
- [Sphinx暗号-Nymを支える匿名データフォーマット](https://qiita.com/pseudonym2/items/107cf005e9cab0b165b6)
- [ココナッツ認証（Coconut Credentials）とは？- プライバシーを保護するゼロ知識証明技術](https://qiita.com/pseudonym2/items/b2739ae32f4fb29de0b6)

# コミュニティ

- [Nym日本コミュニティ - Telegram](https://t.me/nymjapanese)
- [Nym日本コミュニティ - Discord](https://discord.com/invite/nym)
- [Nym日本コミュニティ - LINEオープンチャット](https://line.me/ti/g2/0YGYYq4EoQZ8fL5FYQmqU4O9SRuE_a6YX19GtA?utm_source=invitation&utm_medium=link_copy&utm_campaign=default)

- [Nymプロジェクト日本語アカウント - X](https://x.com/nymproject_jp)