VPN実装
WireGuard
- 安全
- 使いやすい
- シンプル
https://blog.symdon.info/posts/1615012512/
クロスプラットフォーム
以下の環境をサポートしている。
- Windows、
- macOS
- BSD
- iOS
- Android
利用可能な暗号化プロトコル
- Noiseプロトコルフレームワーク
- Curve25519
- ChaCha20
- Poly1305
- BLAKE2
- SipHash24
- HKDF
などが利用可能。
保守的で合理的な選択を行い、暗号学者によってレビューされている。
なぜハイパフォーマンスなのか?
- 非常に高速な暗号化プリミティブWireGuardがLinuxカーネル内に存在する。
適正
- スマートフォンなどの小型の組み込みデバイス。
- 完全にロードされたバックボーンルーター。
シンプルさ
- 非常に単純な公開キーを交換することでVPN接続が確立される。
- 残りはすべてWireGuardによって透過的に処理される。
機能
- IPアドレス間をローミングできる。
設計思想
- 実装の容易さ。
- シンプルさ。
- 非常に数行のコードで簡単に実装でき、セキュリティの脆弱性を簡単に監査できるようになっている。
- 単一の個人が包括的にレビューできるようになっている。
定義に対する考え方
- テクニカルホワイトペーパー。
- プロトコルを明確に定義するアカデミックリサーチペーパー。
- および各決定に使用された徹底的な考慮事項。
Linux FreeS/WAN
- Linux FreeS/WANはIPSecの実装の一つ。
- 最後のバージョンは2.06(2004/04/22リリース)。
- https://www.freeswan.org/ending_letter.htmlでプロジェクトの終了が宣言されている。
OpenVPN
strongSwan
- IPSec実装。
- GPLv2 license。
- FreeS/WANをフォークしX.509パッチを当てた実装をもとに開始。
Libreswan
https://github.com/libreswan/libreswan
あまり活発ではないように見える。
- Openswanからフォークしたプロジェクト。
- Openswanの名前の商標に関する訴訟をうけてOpenswanを名前変更した。
Openswan
SoftEther
Pritunl
FreeLan
Linux FreeS/WANの系譜
OpenswanとLibreswanの繋がりがいまいちわからない。
Linux FreeS/WAN --|--- Openswan ----------- Openswan | | / | -- Libreswan / | -------------------------- strongSwan