GnuPG
1.4で新たに追加された機能
これはGnuPGのソースアーカイブに含まれるhighlights-1.4.txtを翻訳したものです。
これはGnuPG 1.2からGnuPG 1.4の変更点の簡潔な概要です。
全ての変更点のリストはGnuPGに同梱されているNEWSファイルをご覧ください。
このドキュメントはNEWSファイルを元にしているため、これはハイライトのハイライトであると言えます。
アップグレードの際にはRFC-2440、OpenPGP標準が現在更新されていることに注意してください。
2440bis-12での最新の更新はすでにGnuPG 1.4において取り込まれています。
アルゴリズムの変更
OpenPGPは多数の暗号化、ハッシュ、圧縮アルゴリズムをサポートしており、OpenPGPの更新に伴い、GnuPG
1.4では1.2とは多少異なったアルゴリズムをサポートしています。
SHA256、SHA384、SHA512の読み込み、書き込みがサポートされました。
BZIP2圧縮アルゴリズムの読み込み、書き込みがサポートされました。
MD5の脆弱性(多数の場所で議
論されたように)が発見されたため
MD5はOpenPGPでの使用では非推奨となります。 GnuPG
1.4では互換性のために使用することは可能ですが警告を表示します。
TIGER/192のサポートが打ち切られました。
これはTIGER/192のクオリティにの問題の表明として受け止められるわけではなく、更新されたOpenPGPにおいてあまり使用されていないアルゴ
リズムがサポートされなくなりましたが、TIGER/192もその一つとなります。
これはElgamalの署名及びElgamal署名鍵にも当てはまり、これらもOpenPGP及びGnuPGから取り外されました。
これはDSAとDSSと併用されるElgamal署名、またはElgamal暗号と混同しないように注意してください。
Elgamal署名はGnuPG以外ではサポートされていることがまれでした。 Elgamal暗号は引き続き
OpenPGP及びGnuPGでサポートされます。
非常に古い(1.0以下の)バージョンで生成されたElgamal鍵にはOpenPGPに矛盾する標準に準拠しないものを生成することができました。
最近のバージョンでこれを生成することはできませんでしたが、1.2ではこれらを使用することが可能で
した。 GnuPG 1.4においてはこの鍵、及び(準拠していない)メッセージは使用できないようになっています。
ビルド時に使用するアルゴリズムを指定できます。 これは組み込みシステムなどでサイズの制限があり、より小さなバイナリを生成するために使用できます。
鍵サーバーの変更点
GnuPG 1.4においては公開鍵サーバーの操作がプラグイン、もしくはヘルパーアプリケーションで可能です。
これにより、パッケージする人がサポートする鍵サーバータイプを追加、削除することができます。
HTTP、Finger経由で入手できるようになりました。
これによりhttp://www.jabberwocky.com/key.asc"や"finger.wk@g10code.com"などの指定ができ
るようになりました。
LDAP鍵サーバーヘルパーにより、古いNAIのLDAP鍵サーバー及び、最近のLDAPサーバーに記録されるOpenPGPへの登録、呼び出し、検索が
できるようになりました。 これはPGPが使用する方法と互換性があるため、どちらでもLDAPサーバーを共有して使用することができます。
LDAP鍵サーバーヘルパーはPGP社の新しいGlobal Directoryサービスも使用できます。
使用するLDAPライブラリがTLS上でのLDAPアクセス、もしくはLDAPSをサポートしている場合はGnuPGはこれを認識し、サポートします。
TLS、LDAPSの使用はGnuPG自体のセキュリティを向上するものではありませんが、一定の鍵配布スキームにおいては有用になるかもしれません。
HTTP基本認証はHKPとHTTP鍵サーバー機能をサポートし、これらはプロクシ経由、直接アクセスが可能です。
HKP鍵サーバープラグインは鍵サーバーによって使用されることのある新しい機械的に読み込み可能な鍵リストフォーマットを使用することができます。
IPv6がHKPとHTTP公開鍵サーバーアクセスに使用できます。
HKP鍵サーバーが複数のDNSレコード(例えばpubkeys.pgp.netは複数のサーバーのアドレスを世界中に持っています。)全てのDNSアド
レスレコードを成功するまで試行します。 これにより一つのサーバーが停止している場合にアクセスを停止するのを防ぎます。
DNS SRVレコードはHKP鍵サーバーの参照に使用され、管理者によるロードバランスを可能にし、また鍵サーバーのポートを自動的に選択します。
タイムアウトが鍵サーバープラグインでサポートされました。 これにより、ユーザーは待機時間の上限を指定することができます。
優先鍵サーバーURL
優先鍵サーバーサポートが追加されました。 ユーザーは--edit-keyコマンドのkeyserverコマンドで指定することができます。
--keyserver-option
honor-keyserver-urlが使用される場合(これは標準となっています。)--refresh-keysコマンドを実行した場合に優先鍵
サーバーが使用されます。
--sig-keyserver-urlオプションを使用して、署名の受信者がどこで公開鍵をダウンロードできるかを指定することができます。
公開鍵を検証する場合に、honor-keyserver-url及びauto-key-retrieveが指定されている場合はこのURLを使用して鍵
を入手します。
信用署名
GnuPG
1.4はOpenPGPの信用署名をサポートしており、ユーザーが信用レベルとその距離を指定することができ、これによりユーザーが他のユーザーに対し証
明能力を委託することができ、またこれらをユーザーIDを正規表現で制限するなどが可能かもしれません。
信用モデル
GnuPG 1.4ではいくつかの方法で信用を見ることができます。
クラシック−クラシックなPGP信用モデルで、各々が相互的に鍵に署名することにより信用(有効度)を上昇させ、鍵がその本人のものであることを証明しま
す。 これはGnuPG 1.2における標準です。
恒常−全ての信用確認を解除し、全ての鍵の有効性を最大にします。
直接−ユーザーが鍵の有効性を指定します。
PGP−PGP7及び8で使用されている方法で、クラシックな信用の上に信用署名を載せた形になります。 これはGnuPG 1.4での標準です。
OpenPGPスマートカード
GnuPG 1.4ではOpenPGP
スマートカー
ドをサポートします。
秘密鍵を完全に、または一部のみを収納することができます。 これは主鍵、及び副鍵
で使用することができます。
他の興味深い機能
Security-Enhanced
Linuxを使用する場合は--enable-selinux-
supportを使用することにより、GnuPGがそのファイルを自己処理(秘密鍵を秘密鍵を読み込む以外の理由で読み込む)といったような動作を回避し
ます。 これによりSELinuxカーネルのACLを記述するのをシンプルにします。
Readlineはシステムがreadlineライブラリを提供する場合に使用できます。
GnuPGはパスフレーズ、もしくは秘密鍵両方で復号できるメッセージを作成することができるようになりました。
このメッセージは--symmetric --encryptもしくは--symmetric --sign --encryptで生成できます。
--list-optionsと--verify-optionsによりユーザーが鍵のリストと署名の検証がどのように表示されるかを指定できるようにな
り、これらには写真の表示、優先鍵URL、各ユーザーIDの計算された有効性などが指定できます。
--primary-keyringオプションにより、新しい鍵をどこにインポートするかを指定できます。
--hidden-recipientもしくは-Rコマンドは暗号化の際にそのユーザーの識別を取り払います。
これは--throw-keyidと同様の機能ですがユーザーごとに使用できる点で異なります。
完全なアルゴリズム名(3DES, SHA1, ZIPなど)が短いアルゴリズム名(S2, H2,
Z1)が使用される際に、GnuPG上で置き換えて使用することができます。
--keyid-formatオプションによりshort (99242560), long(DB698D7199242560), 0xshort
(0x99242560) 0xlong (0xDB698D7199242560)鍵表示が行えます。
これによりユーザーが表示したい方法で表示を指定することができます。
これは長期的な使用には推奨されませんが、GnuPG 1.2.xとGnuPG 1.4を乗り換え目的で同時に実行することができます。
これを助けるために、GnuPG
1.4はまず、-1.4が指定されている設定ファイルを読み込もうとし、そして標準の設定ファイルを読み込もうとします。
例として1.4はまずgpg-conf-1.4、gpg.conf-1の読み込みを試行し、その後に標準のgpg.confを読み込みます。
翻訳:斉藤英樹
GNU
Privacy Guard講座