WireGuard

WireGuard
作者 Jason A. Donenfeld
開発元 Jason A. Donenfeld
リポジトリ
  • git.zx2c4.com/wireguard-linux
ウィキデータを編集
プログラミング
言語
対応OS
種別 Virtual Private Network
ライセンス GNU GPL v2
公式サイト www.wireguard.com ウィキデータを編集
テンプレートを表示
インターネットセキュリティ
プロトコル
キーマネジメント
アプリケーション層
DNS
インターネット層

WireGuardは、フリーかつオープンソースルーティング又はブリッジで安全なポイント・ツー・ポイント接続を作成するための技術であるVirtual Private Network (VPN) の実装であり、アプリケーション及び通信プロトコルである。Linuxカーネル内のモジュールとして実行され、IPsecOpenVPNよりも優れた性能を目指している[2]。WireGuardはJason A. Donenfeldによって書かれ、GNU GPL v2の下で配布されている[3]

特徴

WireGuardは単純で非常に効果的なVPNを提供することを目指している。Ars Technicaのレビューによると、OpenVPNやIPsecなどの一般的なVPN技術は、多くの場合セットアップが困難であり、簡単に切断され[注釈 1]、再接続のネゴシエーションにかなりの時間を要し、古い暗号方式を使用しており、ソースコードが比較的大規模[注釈 2]であることからバグの発見が困難になっていると述べている[4]

WireGuardの設計ではこれらの問題を軽減し、トンネルのセキュリティを強化し、デフォルトで管理しやすくしている。暗号パッケージのバージョン管理を使用することによって、その時点で最も安全と考えられる暗号方式に焦点を当てており、更に、コードベースは約4,000行[注釈 3]となり、セキュリティ監査(英語版)が容易である。Ars Technicaはテストにおいて、代替と比較してWireGuardは安定したトンネルの作成が容易であると報告し、WireGuardの「実用的な」な即時再接続と比較して、代替の長い再接続の遅延に「戻ることは難しい」とコメントした[4]

プロトコル

WireGuardは鍵共有(英語版)にはCurve25519、暗号化にはChaCha20データ認証(英語版)にはPoly1305、ハッシュテーブル鍵にはSipHash(英語版)ハッシュにはBLAKE2sを利用する[3]ネットワーク層IPv4及びIPv6の両方に対応し、4in6(英語版)及び6in4(英語版) (カプセル化) にも対応している[5]

000000002019-05-01-00002019年5月フランス国立情報学自動制御研究所 (INRIA) の研究者は、CryptoVerif(英語版) proof assistant(英語版)を使用して作成されたプロトコルのマシンチェック済み証明を公開した[6]

歴史

コードベースの最初期のスナップショットは000000002016-06-30-00002016年6月30日から存在する[7]。WireGuardの初期の採用者はVPNサービスプロバイダのMullvad(英語版)[8]、AzireVPN[9]、IVPN[10]及びcryptostorm[11]であった。WireGuardはMullvad、Private Internet Access(英語版)、IVPN及びNLnet Foundation(英語版)から寄付を受け取った[12]

000000002018-06-01-00002018年6月の時点で、WireGuardの開発者はソースコードとプロトコルを実験的なものとして扱うことを推奨しており、発見される可能性のある脆弱性のCVEと互換性の有る安定版が未だリリースされていないことを注意した[13][1]

000000002019-12-09-00002019年12月9日、Linuxのネットワーキングスタックの主要メンテナであるDavid Millerは、今後のカーネルのリリースにWireGuardを含めるために、"net-next" メンテナツリーにWireGuardのパッチを受け入れた[14][15][16]000000002020-01-28-00002020年1月28日リーナス・トーバルズはDavid Millerの"net-next" ツリーをマージし、WireGuardがメインラインLinuxカーネルツリーに統合された[17]

反応

オレゴン州選出の上院議員ロン・ワイデン(英語版)は、アメリカ国立標準技術研究所 (NIST) にIPsecやOpenVPNなどの既存の技術の代替としてWireGuardを評価することを推奨している[18]

実装

WireGuardプロトコルの実装:

  • DonenfeldによるCとGoで書かれた初期実装[19]
  • CloudflareのRustで書かれたユーザ空間実装であるBoringTun[20][21]
  • NetBSDの wg(4) ドライバー。Ryota Ozaki によるC言語の実装。[22]

脚注

[脚注の使い方]

注釈

  1. ^ 追加の設定が無い場合。
  2. ^ OpenVPNやIPsecのソースコードは40万行 - 60万行である。
  3. ^ OpenVPNやIPsecの約1%。

出典

  1. ^ a b “Installation”. Edge Security. 2020年2月5日閲覧。
  2. ^ Preneel, Bart; Vercauteren, Frederik, eds (2018-04-26). Applied Cryptography and Network Security. Springer. ISBN 978-3-319-93387-0. https://books.google.com/books?id=UKJfDwAAQBAJ&pg=PA3 
  3. ^ a b Jason A. Donenfeld. “WireGuard: fast, modern, secure VPN tunnel”. 2020年2月6日閲覧。
  4. ^ a b Jim Salter (2018年8月27日). “WireGuard VPN review: A new type of VPN offers serious advantages”. Ars Technica. 2020年2月6日閲覧。
  5. ^ Donenfeld, Jason A. "Introduction & Motivation" (PDF). WireGuard: Next Generation Kernel Network Tunnel (PDF).
  6. ^ “A Mechanised Cryptographic Proof of the WireGuard Virtual Private Network Protocol”. Inria (2019年). 2020年2月6日閲覧。
  7. ^ “Index of /monolithic-historical/”. 2020年2月6日閲覧。
  8. ^ Rob Mardisalu (2019年2月13日). “Mullvad Review”. TheBestVPN.com. 2020年2月6日閲覧。
  9. ^ Rob Mardisalu (2019年2月19日). “AzireVPN Review”. TheBestVPN.com. 2020年2月6日閲覧。
  10. ^ Nick Pestell (2018年12月11日). “Introducing WireGuard, fully automated.”. IVPN Blog. 2020年2月6日閲覧。
  11. ^ “WireGuard support added!”. cryptostorm blog (2019年4月5日). 2020年2月6日閲覧。
  12. ^ Jason A. Donenfeld. “Donations”. 2020年2月6日閲覧。
  13. ^ Jason A. Donenfeld. “About The Project”. 2020年2月6日閲覧。
  14. ^ “net: WireGuard secure network tunnel”. kernel.org. 2020年2月6日閲覧。
  15. ^ “Re: [PATCH net-next v2 net: WireGuard secure network tunnel]”. LKML. 2020年2月6日閲覧。
  16. ^ “[ANNOUNCE WireGuard merged to net-next, on its way to Linux 5.6]”. lists.zx2c4.com. 2020年2月6日閲覧。
  17. ^ “Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next”. kernel.org. 2020年2月6日閲覧。
  18. ^ Michael Larabel (2018年6月30日). “US Senator Recommends Open-Source WireGuard To NIST For Government VPN”. Phoronix. 2020年2月6日閲覧。
  19. ^ Jason A. Donenfeld. “Source Code”. 2020年2月6日閲覧。
  20. ^ Vlad Krasnov (2019年3月27日). “BoringTun, a userspace WireGuard implementation in Rust”. The Cloudflare Blog. 2020年2月6日閲覧。
  21. ^ Michael Larabel (2019年3月28日). “CloudFlare Launches "BoringTun" As Rust-Written WireGuard User-Space Implementation”. Phoronix. 2020年2月6日閲覧。
  22. ^ “wg(4) - NetBSD Manual Pages” (2020年8月20日). 2021年10月21日閲覧。

関連項目

ウィキポータル
関連ポータルのリンク
  • ウィキポータル コンピュータ
  • ウィキポータル FLOSS

外部リンク

  • 公式ウェブサイト
  • WireGuardの技術文書
OpenPGPS/MIME
  • メールサーバーの比較(英語版)
  • 電子メールクライアントの比較(英語版)
  • GnuPG (Gpg4winGPGTools)
  • PGP
  • Enigmail
  • Thunderbird
  • Outlook
  • Apple Mail
  • Claws Mail
  • Autocrypt(英語版)
  • Kontact
  • pretty Easy privacy(英語版)
  • Sylpheed
セキュア通信
OTR(英語版)
  • Adium
  • BitlBee(英語版)
  • Centericq(英語版)
  • ChatSecure
  • climm(英語版)
  • Jitsi
  • Kopete
  • MCabber(英語版)
  • Profanity(英語版)
SSH
TLS/SSL
VPN
ZRTP(英語版)
  • CSipSimple(英語版)
  • Jitsi
  • Linphone(英語版)
  • Jami
  • Zfone(英語版)
P2P
D R A(英語版)
  • Matrix
  • OMEMO(英語版)
    • Conversations(英語版)
    • Cryptocat(英語版)
    • ChatSecure(英語版)
  • Proteus
  • Signalプロトコル
    • Signal
    • WhatsApp
    • TextSecure(英語版)
匿名化
  • Cryptomator
  • GNUnet
  • Java Anon Proxy(英語版)
  • I2P
  • Tor
  • Vidalia(英語版)
  • RetroShare(英語版)
  • Ricochet(英語版)
  • Wickr(英語版)
ディスク暗号化(英語版)
  • ディスク暗号化ソフトウェアの比較(英語版)
  • BitLocker
  • FreeOTFE(英語版)
  • TrueCrypt
  • BestCrypt(英語版)
  • CipherShed
  • CrossCrypt(英語版)
  • Cryptoloop(英語版)
  • DiskCryptor(英語版)
  • dm-crypt(英語版)
  • LUKS
  • DriveSentry(英語版)
  • E4M(英語版)
  • eCryptfs(英語版)
  • FileVault
  • GBDE(英語版)
  • geli(英語版)
  • PGPDisk(英語版)
  • Private Disk(英語版)
  • Scramdisk(英語版)
  • Sentry 2020(英語版)
  • VeraCrypt
ファイルシステム
セキュアOS
Service providers
教育
暗号通貨
Related topics
関連人物
  • カテゴリ カテゴリ
  • コモンズ コモンズ
通信プロトコル
  • SSTP(英語版)
  • IPsec
  • L2TP
  • L2TPv3(英語版)
  • PPTP
  • Split tunneling(英語版)
  • DTLS
  • SSL/TLS
  • tcpcrypt(英語版)
ベンダー主導
  • L2F
  • DirectAccess(英語版)
実装
自由ソフトウェア
プロプライエタリ
  • Avast SecureLine VPN(英語版)
  • Check Point VPN-1
  • Cisco Systems VPN Client(英語版)
  • CyberGhost VPN
  • ExpressVPN
  • HideMyAss!(英語版)
  • Hola(英語版)
  • LogMeIn Hamachi
  • Microsoft Forefront Unified Access Gateway(英語版)
  • NordVPN
  • Private Internet Access(英語版)
  • Proton VPN
  • PureVPN(英語版)
  • SaferVPN(英語版)
  • TunnelBear(英語版)
  • VPN.ht(英語版)
リスク