GNU Privacy Guard

GNU Privacy Guard (GnuPG, GPG) とは、Pretty Good Privacy (PGP) の別実装として、GPL に基づいた暗号化ソフトである。 OpenPGP 規格 (RFC 4880) に完全準拠しているが、古い PGP との互換性は完全ではない。 GnuPG の開発は ヴェルナー・コッホ(Werner Koch) によって始められた。現在では David Shaw と Timo Schulz も加わっている。また、g10 Code が Werner Koch と Timo Schulz を資金面で援助している。 バージョン 1.0.0 は 1999 年にリリースされ、それ以降 2002 年の 1.2.0 や 2004 年の 1.4.0 のように、安定版は最初の小数部分が偶数になるバージョンでリリースされている。 一方、 S/MIME 機能の導入を目的とした別系列の開発版が 1.9 系列として開発が進められていた。この系列は2006年11月23日に 2.0 としてリリースされた。 2014年11月、楕円曲線暗号のサポートなど新しいOpenPGP規格に準拠した 2.1 系列がリリースされた。 2.0 系列、2.2/2.1 系列と並行して 1.4 系列のサポートは継続しており、1.4 系列は 2.2/2.1 系列あるいは 2.0 系列と同時にインストール、独立して運用することが可能である。2.2/2.1 系列と 2.0 系列を同時にインストールすることはできない。 2018年1月現在、GnuPG には 2 つの系列が存在する。 "modern" (2.2): 最新の開発系列であり、楕円曲線暗号など新機能を実装している。2017年8月28日に、2.2.0として新たな安定版となった。初版リリースは2014年11月6日。 "classic" (1.4): 旧来のスタンドアロン版。古いシステムや組み込み用途に適している。初版リリースは2004年12月16日。 既にサポートが終了した系列は 3 つ存在する。 2.0 系列: 初版リリースは2006年11月13日。最終版は2016年3月31日リリースの2.0.30。 1.2 系列: 初版リリースは2002年9月22日、最終版は2004年10月26日リリースの1.2.6。 1.0 系列: 初版リリースは1999年9月7日、最終版は2002年4月30日リリースの1.0.7。 GnuPG は数多くの OS に含められてきた。 また、GUI のフロントエンドも開発されており、KMail や Evolution といった電子メールクライアントに統合されたものや、 KDE の KGpg や GNOME の Seahorse のように単独のアプリケーションもある。これらフロントエンドの多くは GnuPG 開発者が用意した GPGME (GnuPG Made Easy) ライブラリを利用している。 GUIフロントエンドの例 WinPT（Windows用） GnuPG Shell（Linux/Windows用） KGpg、Seahorse（Linux用） 電子メールクライアントの例 Enigmail（Linux/macOS/Windows用、Mozilla ThunderbirdおよびSeamonkey用アドオン） KMail、Evolution（Linux用） 統合パッケージ（GnuPGとGUIフロントエンド・電子メールクライアントの一括インストール） Gpg4win（Windows用） GPGTools（macOS用） GnuPG は、特許で制限されているアルゴリズムを含めていない。 このため従来の GnuPG では、PGP の過去のバージョンで標準で用いられていた International Data Encryption Algorithm (IDEA) を使うことができず、使用にはプラグインが必要であったが、各国における IDEA の特許切れに伴い、1.4.13/2.0.20 から IDEA が含まれるようになった。これは、過去のコンテンツの署名検証、復号および古いPGPからGnuPGへの移行といった互換性維持のための最低限のサポートであり、既定では新しい鍵の作成における選択肢には現れない。 RSA は 2000 年に特許が切れたため、1.0.3 から含まれるようになった。 また、1.4.10/2.0.12 より Camellia も含まれるようになった。 GnuPG 2.0.26および1.4.18において対応しているアルゴリズムは以下の通りである。 公開鍵暗号 RSA（1.0.3 より） ElGamal DSA 共通鍵暗号 IDEA（1.4.13/2.0.20 より） 3DES CAST5 Blowfish AES-128, AES-192, AES-256 Twofish Camellia-128, Camellia-192, Camellia-256（1.4.10/2.0.12 より） 暗号学的ハッシュ関数 MD5 SHA-1 RIPEMD-160 SHA-256, SHA-384, SHA-512, SHA-224 圧縮形式 無圧縮 ZIP ZLIB BZIP2 2.2/2.1系列では楕円曲線暗号 (楕円曲線DSA (ECDSA)、楕円曲線ディフィー・ヘルマン鍵共有 (ECDH)、エドワーズ曲線デジタル署名アルゴリズム (EdDSA)) に対応する。 ^ a b “Release Notes”. GnuPG. 2014年11月6日閲覧。 ^ Werner Koch (2018年12月14日). “[Announce] GnuPG 2.2.12 released”. gnupg.org. 2018年12月24日閲覧。 ^ Werner Koch (2018年6月11日). “[GnuPG 1.4.23 released] ... to address the recently published local side channel attack CVE-2017-7526.”. gnupg.org. 2018年12月24日閲覧。 ^ a b c Werner Koch (2014年11月6日). “[Announce] GnuPG 2.1.0 "modern" released”. gnupg.org. 2014年11月6日閲覧。 ^ Werner Koch (2017年8月28日). “[Announce] GnuPG 2.2.0 released”. gnupg.org. 2017年9月21日閲覧。 ^ Werner Koch (2006年11月13日). “[Announce] GnuPG stable 1.4 released”. gnupg.org. 2004年12月16日閲覧。 ^ Werner Koch (2006年11月13日). “[Announce] GnuPG 2.0 released”. gnupg.org. 2014年1月30日閲覧。 ^ Werner Koch (2016年3月31日). “[Announce] GnuPG 2.0.29 released”. gnupg.org. 2016年4月1日閲覧。 ^ Werner Koch (2002年9月6日). “[Announce]GnuPG 1.2 released”. gnupg.org. 2014年11月6日閲覧。 ^ Werner Koch (2004年8月26日). “[Announce] GnuPG 1.2.6 released”. gnupg.org. 2014年11月6日閲覧。 ^ Werner Koch (2002年4月30日). “[Announce] GnuPG 1.0.7 released”. gnupg.org. 2014年11月6日閲覧。 ^ 欧州および日本：2011年5月16日、アメリカ合衆国：2012年1月7日 ^ “[Announce] GnuPG 1.4.13 released” (英語). Werner Koch (2012年12月20日). 2013年5月17日閲覧。 ^ GnuPG 2.0 系列 で用いられる Libgcrypt がバージョン 1.5.2 で IDEA をサポートし、これが GnuPG 2.0.20 に組み込まれたため。 “[Announce] Libgcrypt 1.5.2 released” (英語). Werner Koch (2013年4月18日). 2013年5月17日閲覧。 ^ “GnuPG 1.4.13 released” (英語). Werner Koch (2012年12月21日). 2013年5月19日閲覧。 ^ “GnuPG 1.0.3 released” (英語). Werner Koch (2000年9月20日). 2013年5月17日閲覧。 ^ “GnuPG 1.4.10 released” (英語). Werner Koch (2009年9月2日). 2012年12月30日閲覧。 The GNU Privacy Guard - GnuPG.org （英語） GNU Privacy Guard講座 （日本語） GnuPG-Mini-Howto [リンク切れ]