VPN プロトコルの比較: PPTP vs. L2TP vs. OpenVPN vs. SSTP vs. IKEv2
ガイ・フォークス
(匿名のエキスパートたちからの多様なヒントを提供)
VPN 暗号化技術のほとんどがアメリカ標準技術研究所によって開発・認証されていることは周知のことですが、エドワード・スノードンの暴露からは、NSA が長年に渡りこの技術を破壊し覆そうとしてきたことが示され、いささかショッキングなことです。このことは必然的に「VPN 技術は本当に安全なのか?」疑問を生じさせます。この答えを見つけるために、私たちはついにこの記事を書くことにしました。
VPN プロトコルとその長所・短所の違いを論じることから始めて、暗号化技術を含むメインテーマに進み、NSA の暗号化標準に対する攻撃が世界中の多数のVPN ユーザーにどのような影響を与えたかを見ていきます。
PPTP
マイクロソフト社によって設立された事業共同体によって開発された「ポイント・ツー・ポイント・トンネリング」は、ダイアルアップ・ネットワークにバーチャル・プライベート・ネットワークを作成し、その初期からVPN の標準的なプロトコルであり続けています。Windows によってサポートされた最初のVPN プロトコルであるPPTP は、多様な認証方法によってセキュリティを提供します。「MS_CHAP v2」は、最も一般的なものです。
VPN が可能な全てのデバイスとプラットフォームが、PPTP を標準で利用可能です。そのセットアップは比較的簡単なので、VPN プロバイダーと企業の双方にとって第1の選択肢であり続けています。また、実装に必要な計算コストが低いので、今日最速のVPN プロトコルとなっています。
しかし現在、通常128ビット暗号化を使用していますが、セキュリティの脆弱性が多々あり、破嚢されていないMS-CHAP v2 認証が最も重大である可能性があります。このため、PPTP は2日以内に破ることが可能です。さらに、欠陥はマイクロソフトがパッチしていますが、このハイテクの巨人自身が、SSTP かL2TP の使用を推奨しています。
このようにPPTP は安全とは言えないので、PPTP 暗号通信をNSA が解読していることはほぼ確実です。驚くほどではありません。さらに心配なのは、セキュリティの専門家によってPPTP が安全なプロトコルだと考えられていた時期にNSA が解読した膨大な古いデータを保有(あるいは、そうしようとしている)していることです。
長所
- 高速。
- ほとんど全てのプラットフォームにクライアントがビルトイン。
- セットアップが簡単。
短所
- NSA によって破られている。
- 不完全な安全性。
L2TP と L2TP/IPsec
「レイヤー 2 トンネル・プロトコル」は、他のVPN プロトコルと違い、プライバシーの提供がないというか、トラフィックを暗号化しません。このため、転送前にデータを暗号化するIPsec プロトコルを一緒に実装して、プライバシーとセキュリティを提供するのが通例です。最近のVPN 対応デバイスとOS は全て、 L2TP/IPsec を備えています。セットアップはPPTP と同程度に早くて簡単ですが、問題が起きるかもしれません。このプロトコルは「UDP port 500」を使用しますが、これはNAT ファイアウォールによって簡単にブロックされてしまいます。そのため、ファイアウォールと共に使用するにはポート転送が必要になるかもしれません。
IPsec 暗号化に関しては大きな脆弱性はありません。適正に実装すれば安全かもしれません。しかし、エドワード・スノードンの暴露は、NSA が解読していることを強く示唆しています。 電子フロンティア財団の設立メンバーであり、セキュリティの専門家であるジョン・ギルモアは、このプロトコルがNSA によって意図的に弱められているようだと主張しています。 Moreover, since the LT29/IPsec プロトコルはデータを2重に覆うので、SSL ベースのソシューションに対して効果的ではなく、そのため、他のプロトコルよりわずかに低速です。
長所
- 通常、安全と見なされる。
- 最近の全てのデバイスとOS で利用可能。
- 簡単セットアップ
短所
- OpenVPNより遅い。
- おそらくNSA によって破られている。
- 特定のファイアウォールとともに使用すると問題がある可能性。
- NSA が意図的にこのプロトコルを弱めているらしい。
OpenVPN
比較的新しいオープンソースの技術、OpenVPN は、SSLv3/TLSv1 プロトコルと OpenSSL ライブラリーを、他のテクノロジーとともに使用し、信頼性が高く強力なVPN ソリューションを提供します。このプロトコルは細かく設定可能で、UDP ポート使用で最大限の力を発揮しますが、別のポートで動作するように設定することも可能です。Google その他の類似サービスがこれをブロックすることは非常に困難です。
このプロトコルのもう一つの大きな利点は、そのOpenSSL ライブラリーが、3DES, AES, Camellia, Blowfish, CAST-128などの多様な暗号アルゴリズムをサポートすることです。ほとんどのVPN プロバイダーが使用しているのは、Blowfish かAES ですが。OpenVPN は、128ビット Blowfish 暗号化をビルトインで装備しています。通常では安全だと考えられていますが、よく知られた弱点がいくつかあります。
暗号化については、AES が最新技術で、「ゴールド標準」だと考えられています。既知の弱点はないため、米国政府機関が「機密」データを保護するために採用したのです。データのブロックサイズがBlowfish が64ビットなのに対し、こちらは128ビットなので、より大きなファイルをBlowfish よりも比較的容易に扱うことができます。とは言え、どちらも 今では広く問題点が知られているかもしれないNIST 認証暗号なので、いくつか問題があります。それを以下で見ていきます。
まず始めに、OpenVPN の実行速度は暗号化レベル次第ですが、通常はIPsec よりも高速です。今では、ほとんどのVPN サービスの既定のVPN 接続はOpenVPN ですが、まだ全てのプラットフォームでサポートされてはいません。しかし、Android とiOS を含む多くのサードパーティのソフトウェアでサポートされています。
セットアップでは、L2TP/IPsec や PPTP と比べて少々複雑です。ジェネリックのOpenVPN ソフトウェアが使用されている場合には特にそうです。クライアントをダウンロードしてインストールしなければならない上に、追加の設定ファイルも探す必要があります。いくつかの VPN プロバイダーは、カスタマイズ済みのVPN クライアントを提供することで、この設定問題に対処しています。
しかし、全ての要素を考慮し、エドワード・スノードンの情報を考えると、OpenVPN は、NSA によって弱体化されたり、破られたりしていないようです。一時キーを利用しているため、NSA の攻撃に対して「免疫」があるとも考えられます。誰もNSA の能力を知りませんが、理論と証拠が、強力な暗号と組み合わせたOpenVPNだけ が安全なVPN だと強く示唆しています。
長所
- ほとんどのファイアウォールをかいくぐる能力を持つ。
- 細かく設定可能。
- オープンソースなので、バックドアのために厳しく吟味できる。
- 多様な暗号アルゴリズムに対応。
- 高いセキュリティ。
短所
- セットアップが少々難しいことがある。
- サードパーティのソフトウェアが必要。
- PCへの対応は優秀、モバイル対応は改善の余地あり。
SSTP
マイクロソフト社のWindows Vista SP1で導入された「セキュア・ソケット・トンネリング」は、今では、SEIL、Linux、およびRouterOS で利用できるものの、まだ多くはWindows で利用されています。「SSL v3」を使用するため、OpenVPN と似た長所を持ち、例えば、NATファイアウォール問題を防止します。SSTP は、安定して使いやすいVPN プロトコルで、それは多分にWindows と一体化されているからです。
しかし、これはマイクロソフト社の所有物です。このハイテクの巨人はNSA に協力してきた歴史があり、Windows OS にはバックドアがあるのではないかという憶測もあるぐらいですから、他のプロトコルほど信用がありません。
長所
- ほとんどのファイアウォールを回避する能力を持つ。
- セキュリティ・レベルは暗号化次第だが、通常は安全。
- Windows OS と一体化。
- マイクロソフト社のサポート。
短所
- マイクロソフト社の所有物であるため、バックドアの検証ができない。
- Windows のみのプラットフォームでのみ動作。
IKEv2
IPsec ベースのトンネリング・プロトコルである「インターネット・キー・エクスチェンジ・バージョン2」は、Cisco社 とMicrosoft社 によって開発され、Windows の第7世代以降に搭載されています。これは、Linux その他のプラットフォームに対応し、Blackberry のデバイスをサポートします。
マイクロソフト社のVPN 接続については、インターネット接続が一時的に切断された時に自動でVPN 接続を再確立することに優れています。モバイル機器のユーザーは IKEv2 から大きな恩恵を受けます。標準で提供される「モビリティ・アンド・マルチホーミング」プロトコルは、ネットワークの変更を非常に円滑にします。加えて、Blackberry ユーザーにも優秀です。users, as IKEv2 は、Blackberry のデバイスをサポートする数少ないプロトコルの1つだからです。IKEv2 は、IPsec と比べると少数のプラットフォームでしか使えませんが、安定性、セキュリティ、パフォーマンスの点で優秀だと考えられています。
長所
- 非常に安全 – 3DES, AES, AES 256 など、多様な暗号をサポート。
- Blackberry デバイスもサポート。
- 接続切断、ネットワーク切替の際の再接続が特に安定。
- 少なくともユーザー側はセットアップが簡単。
- L2TP, PPTP、SSTP よりも比較的高速。
短所
- サポートしているプラットフォームが限定的。
- 使用される「UDP port 500」は、SSL ベースの SSTP や OpenVPN と比べてブロックされやすい。
- オープンソースの実装ではない
- サーバー側では、IKEv2 の実装は複雑で、2,3の問題が起こることがある。
問題点
暗号化を理解するためには、多くの重要な概念を理解する必要があります。以下でその全てを論じます。
暗号化キーの長さ
暗号解読にかかる時間を決める最も大雑把な要因は、キーの長さであることが知られています。これは、暗号に使用されている「1」と「0」の実際の数です。同様に、徹底的なキー・サーチ(あるいはブルート・フォース攻撃)は、暗号に対する最も粗っぽい攻撃です。この攻撃では、正解を見つけるまであらゆる組み合わせを試します。キーの長さに関しては、VPN で使用される暗号化レベルは、128ビットから256ビットです。データ認証や応答確認には高レベルが使用されますが、256ビット暗号化は128ビット暗号化よりも優れているということなのでしょうか?
さて、正解を得るために、いくつかの数字を見ていきましょう:
- 128ビット・キー暗号を確実に解読するには、3.4×10の38乗回の操作が必要です。
- 256ビット・キー暗号を確実に解読するには、128ビット暗号の場合の2の128乗倍の計算パワーが必要です。
- 256ビット暗号を総当たりで解読するには、3.31×10の65乗回の操作が必要で、これは、宇宙にある原子の総数にほぼ等しい数です。
- 2011年の最速コンピューター、富士通製「京」の計算速度は、マックスで10.51ペタフロップス(1秒間に1京510兆回の浮動小数点計算を行う)です。この計算速度で考えると、128ビットAESキー暗号を総当たりで解読するのにおよそ10億年かかることになります。
- 2013年の世界最速コンピューター、中国の国防科学技術大学の「天河2号」の最大計算速度は、33.86ペタフロップスです。これは「京」の3倍速く、128ビットAESキーを同様の方法で解く時間は、およそ10億年の3分の1です。
エドワード・スノードンの暴露以前には、128ビット暗号化は総当たり式では破ることはできず、今後100年以上破れないと広く信じられていました。しかし、NSA が持つ膨大なリソースを考えると、世界中の技術者やシステム管理者は暗号キーのを長くしました。米政府が重要なデータの保護に256ビット暗号化を使用していることは注目すべきです(通常のデータには128ビットが使用されています)。さらに、使用されるメソッド=AES は、問題を起こす可能性があります。
暗号(サイファー)
暗号(サイファー)は、暗号化(エンクリプション)で用いられる数学的アルゴリズムです。弱いアルゴリズムはハッカーに対し脆弱で、簡単に破られます。今のところ、Blowfish と AES が最も一般的な暗号で、VPN でよく見かけるものです。また、SHA-1 とSHA-2 がハッシュ機能としてデータ認証に使用されている所では、RSA が暗号化キーの暗号化と解読に使用されます。
現在は、AES がVPN 用に最も安全な暗号だと広く考えられています。米政府が採用したことが信頼感と人気を高めています。ところが、この信頼性が誤認であると信じさせる根拠があるのです。
NIST(アメリカ国立標準技術研究所)
SHA-1, SHA-2, RSA および AES は全てアメリカ国立標準技術研究所(NIST)によって開発・認証されました。これはNSA と非常に近い関係にある団体です。今私たちは、NSA が暗号化標準にバックドアを仕掛けたり弱体化させようと組織的に働いてきたことを知っていますので、NIST のアルゴリズムの整合性に関して疑問が生じるのはきわめて当然です。
NIST はこれまでも不適切な行い(例えば、故意に暗号化技術を弱めること)を否定し、将来の暗号化技術に人々を参加させることで信用をアピールしようとしてきましたが、NSA は、NIST 認証暗号化技術をかいくぐったことで、また、公開の開発プロセスを妨害し、検知されないバックドアを導入してアルゴリズムを弱体化させたことを、ニューヨークタイムズ紙から非難されています。
2013年9月17日、不信感はさらに裏付けられました。RSA セキュリティ社が、NSA によって故意に仕組まれた欠陥のため、特定の暗号化アルゴリズムの利用をやめるように利用者に知らせたのです。
さらに、NIST が作成した暗号化標準「Dual EC DRBG」は、長年安全でないと信じられています。このことは、2006年にオランダの工科大学も指摘しています。しかし、こうした懸念に関わらず、NIST が業界をリードし、業界はしぶしぶ従います。これは主に、米政府と契約するにはNIST のスタンダードに従うことが事実上必須だからです。
NIST のスタンダードが世界中でビジネスでも、VPN などのプライバシーに関わる業界でも普遍的であると考えられていますから、背筋が寒くなるものがあります。多くのものがこのスタンダードに依存しているので、暗号化の専門家も、この問題に取り組みたがりません。これをやった唯一の会社「Silent Circle」は、自社の「Silent Mail」サービスの終了を決定し、2013年11月にNIST スタンダードからの離脱を表明しました。
BestVPN がこの問題を報じたため、革新的な小さなVPN プロバイダー、LiquidVPN は、非NIST 暗号の実験を始めました。しかし、この方向に動いているVPN プロバイダーは、私たちが知る限りこれだけです。そのため、その時が来るまでは、現在最高の暗号化標準である256ビットAES 暗号化を利用しなければならないでしょう。
RSA キー暗号化を攻撃するNSA
エドワード・スノードンの暴露のひとつは、暗号名「Chessy Name」というプログラムが、GCHQ のスーパーコンピューターによって破られている可能性がある「certificate」と呼ばれる暗号化キーを選び出すために開発されていた、というものでした。このことは、一般的に1024ビット暗号化によって保護されているこれらの認証が、考えられているより弱く、簡単に解読でき、GCHQ やNSA の予測よりも速く解読できることを強く示唆しています。いったん解読されると、全データを解読する恒久キーによって、過去と未来の全交信があらわになります。
結果として、一時キーと認証に依存するいくつかの暗号化は破られているものと考えなければなりません。これには、TLS と SSL も含まれます。これは、HTTPS の全トラフィックに多大な影響を与えるでしょう。しかし、良い知らせもあります。一時キーを変更する OpenVPN は、この影響を受けないはずです。なぜか?毎回新規のキーが生成されるため、信用を確立する機会を承認しないからです。
もぢ誰かが認証のプライベート・キーを入手したとしても、交信の解読は不可能です。中間者攻撃(MitM)を使えば、OpenVPN 接続を標的にすることができるでしょうが、ターゲットが特定され、さらにプライベート・キーが無力化されている必要があります。 Since the news became public that the GHCQ と NSA が1024ビット暗号化を解読できるというニュースが公表されたので、多くのVPN プロバイダーが暗号化を2048ビットや、さらに4096ビットに格上げしました。
完全な転送秘密主義
さらに良い知らせは、この問題の解決策は、TLS やSSL 接続でも、ウェブサイトが、毎回のセッションの度に完全に新規のプライベート暗号化キーを生成する完璧な転送秘匿システムを実装すれば、それほど難しくないということです。残念ながら、今のところ、完全転送秘匿システムを実装している主要なインターネット会社はGoogle だけです。
この記事の結論として、エドワード・スノードンの言葉を借りたいと思います。つまり、暗号化は有効で、暗号システムは、セキュリティを強化しています。では、この記事から何を知るべきか?簡単です! OpenVPN は最も安全なプロトコルであり、VPN プロバイダーは、セキュリティを強化していくはずだということです。NIST のスタンダードから離脱すれば最高ですが、それにはまだ待たなければならないでしょう。
- PPTP は全く安全ではありません。NSA によって無力化されており、マイクロソフトもこれを放棄しました。ですから、これは避けるべきです。対応プラットフォームの広さとセットアップの簡単さを魅力的だと思うなら、L2TP/IPsec を使えば、同様の利点とかなりましなセキュリティを得られることを思い出してください。
- 重要性のない利用では、NSA によってひどく弱体化・無力化されてはいても、L2TP/IPsec は正しいVPN でしょう。追加のソフトウェアを必要としない手軽なセットアップを求めるなら、そして、OpenVPN のサポートがまちまちな携帯デバイスを利用する場合には特に、このプロトコルは有用です。
- 全プラットフォームにサードパーティのソフトウェアのダウンロード・インストールする必要がありますが、OpenVPN があらゆるニーズに最高のVPN であることは議論の余地がありません。高速、安全で信頼性が高い、 セットアップに少し時間がかかりますが、ウェブ利用時の最高のセキュリティとプライバシーを考えればその価値はあります。
- IKEv2 も、オープンソース実装ならば高速で安全なプロトコルです。特にモバイルユーザーにとっては、インターネット接続が切断された時に自動的に再接続する機能があります。加えて、Blackberry デバイスをサポートする数少ないプロトコルのひとつなので、Blackberry には最善の選択です。
- SSTP は、OpenVPN と同等の利点を提供しますが、Windows だけです。このため、他のVPN プロトコルよりもWindows OS と一体化されています。しかし、その制約のためにVPN プロバイダーからのサポートは限定的です。また、マイクロソフト社はNSA を長期に渡り良好な協力関係を保ってきたので、私たちはSSTP を信用しません。
結論として、できる限り OpenVPN を利用すべきです。携帯デバイス向けには、IKEv2 がよい選択です。手軽なソリューションとしては、 L2TP は十分ですが、 OpenVPN のモバイル・アプリが普及しつつあることを考えると、やはり、OpenVPN が望ましいでしょう。