[解決済み] インポートせずにgpgの鍵の詳細を表示する方法は?
質問
postgresql apt リポジトリの gpg キーのコピーを持っていて、ファイルにある gpg キーの詳細を表示したいのですが、どうすればよいですか。これはキーホルダーにインポートしなくても可能ですか?
解決方法を教えてください。
OpenPGPのキーデータを見るとき、いくつかの詳細レベルがあります。基本的な要約、この要約の機械読み取り可能な出力、個々のOpenPGPパケットの詳細な(そして非常に技術的な)リストです。
鍵の基本情報
OpenPGP の鍵ファイルを簡単に見るには、単にファイル名をパラメータとして渡すか、鍵データを STDIN でパイプで渡します。もしコマンドが渡されなかったら、GnuPGはあなたが何をしたいのか推測しようとします -- そして鍵データの場合、これは鍵の要約を印刷します。
$ gpg a4ff2279.asc
gpg: WARNING: no command supplied. Trying to guess what you mean ...
pub rsa8192 2012-12-25 [SC]
0D69E11F12BDBA077B3726AB4E1F799AA4FF2279
uid Jens Erat (born 1988-01-19 in Stuttgart, Germany)
uid Jens Erat <[email protected]>
uid Jens Erat <[email protected]>
uid Jens Erat <[email protected]>
uid Jens Erat <[email protected]>
uid [jpeg image of size 12899]
sub rsa4096 2012-12-26 [E] [revoked: 2014-03-26]
sub rsa4096 2012-12-26 [S] [revoked: 2014-03-26]
sub rsa2048 2013-01-23 [S] [expires: 2023-01-21]
sub rsa2048 2013-01-23 [E] [expires: 2023-01-21]
sub rsa4096 2014-03-26 [S] [expires: 2020-09-03]
sub rsa4096 2014-03-26 [E] [expires: 2020-09-03]
sub rsa4096 2014-11-22 [A] [revoked: 2016-03-01]
sub rsa4096 2016-02-24 [A] [expires: 2020-02-23]
設定することで
--keyid-format 0xlong
の場合、長いキーIDが表示されます。
の代わりに
安全でないショートキーID
:
$ gpg a4ff2279.asc
gpg: WARNING: no command supplied. Trying to guess what you mean ...
pub rsa8192/0x4E1F799AA4FF2279 2012-12-25 [SC]
0D69E11F12BDBA077B3726AB4E1F799AA4FF2279
uid Jens Erat (born 1988-01-19 in Stuttgart, Germany)
uid Jens Erat <[email protected]>
uid Jens Erat <[email protected]>
uid Jens Erat <[email protected]>
uid Jens Erat <[email protected]>
uid [jpeg image of size 12899]
sub rsa4096/0x0F3ED8E6759A536E 2012-12-26 [E] [revoked: 2014-03-26]
sub rsa4096/0x2D6761A7CC85941A 2012-12-26 [S] [revoked: 2014-03-26]
sub rsa2048/0x9FF7E53ACB4BD3EE 2013-01-23 [S] [expires: 2023-01-21]
sub rsa2048/0x5C88F5D83E2554DF 2013-01-23 [E] [expires: 2023-01-21]
sub rsa4096/0x8E78E44DFB1B55E9 2014-03-26 [S] [expires: 2020-09-03]
sub rsa4096/0xCC73B287A4388025 2014-03-26 [E] [expires: 2020-09-03]
sub rsa4096/0x382D23D4C9773A5C 2014-11-22 [A] [revoked: 2016-03-01]
sub rsa4096/0xFF37A70EDCBB4926 2016-02-24 [A] [expires: 2020-02-23]
pub rsa1024/0x7F60B22EA4FF2279 2014-06-16 [SCEA] [revoked: 2016-08-16]
提供
-v
または
-vv
を使えば、さらに情報を追加することもできます。私はこの場合、パッケージの詳細を表示する方が好きですが(下記参照)。
機械読み取り可能な出力
GnuPGにはコロンで区切られた出力形式もあり、これは簡単にパース可能で、形式も安定しています。その
フォーマットは、GnuPGのドキュメント
doc/DETAILS
ファイル
. この形式を受け取るためのオプションは
--with-colons
.
$ gpg --with-colons a4ff2279.asc
gpg: WARNING: no command supplied. Trying to guess what you mean ...
pub:-:8192:1:4E1F799AA4FF2279:1356475387:::-:
uid:::::::::Jens Erat (born 1988-01-19 in Stuttgart, Germany):
uid:::::::::Jens Erat <[email protected]>:
uid:::::::::Jens Erat <[email protected]>:
uid:::::::::Jens Erat <[email protected]>:
uid:::::::::Jens Erat <[email protected]>:
uat:::::::::1 12921:
sub:-:4096:1:0F3ED8E6759A536E:1356517233:1482747633:::
sub:-:4096:1:2D6761A7CC85941A:1356517456:1482747856:::
sub:-:2048:1:9FF7E53ACB4BD3EE:1358985314:1674345314:::
sub:-:2048:1:5C88F5D83E2554DF:1358985467:1674345467:::
sub:-:4096:1:8E78E44DFB1B55E9:1395870592:1599164118:::
sub:-:4096:1:CC73B287A4388025:1395870720:1599164118:::
sub:-:4096:1:382D23D4C9773A5C:1416680427:1479752427:::
sub:-:4096:1:FF37A70EDCBB4926:1456322829:1582466829:::
GnuPG 2.1.23 以降は
gpg: WARNING: no command supplied. Trying to guess what you mean ...
を使用すると、警告を省略することができます。
--import-options show-only
オプションと
--import
コマンドを使用します(これは
--with-colons
もちろんです)。
$ gpg --with-colons --import-options show-only --import a4ff2279
[snip]
古いバージョンの場合:警告メッセージはSTDERRに出力されるので、STDINを読んで警告から重要な情報を分離すればよいでしょう。
技術的な詳細 OpenPGPのパケットをリストアップする
他のパッケージをインストールせずに
gpg --list-packets [file]
をクリックすると、ファイルに含まれるOpenPGPパケットの情報を見ることができます。
$ gpg --list-packets a4ff2279.asc
:public key packet:
version 4, algo 1, created 1356475387, expires 0
pkey[0]: [8192 bits]
pkey[1]: [17 bits]
keyid: 4E1F799AA4FF2279
:user ID packet: "Jens Erat (born 1988-01-19 in Stuttgart, Germany)"
:signature packet: algo 1, keyid 4E1F799AA4FF2279
version 4, created 1356516623, md5len 0, sigclass 0x13
digest algo 2, begin of digest 18 46
hashed subpkt 27 len 1 (key flags: 03)
[snip]
は
pgpdump [file]
と同じような働きをします。
gpg --list-packets
で、同様の出力を提供しますが、これらのアルゴリズム識別子をすべて読みやすい表現に解決します。おそらくすべての関連するディストリビューションで利用可能です(Debianの派生版では、このパッケージは
pgpdump
ツールそのものと同じです)。
$ pgpdump a4ff2279.asc
Old: Public Key Packet(tag 6)(1037 bytes)
Ver 4 - new
Public key creation time - Tue Dec 25 23:43:07 CET 2012
Pub alg - RSA Encrypt or Sign(pub 1)
RSA n(8192 bits) - ...
RSA e(17 bits) - ...
Old: User ID Packet(tag 13)(49 bytes)
User ID - Jens Erat (born 1988-01-19 in Stuttgart, Germany)
Old: Signature Packet(tag 2)(1083 bytes)
Ver 4 - new
Sig type - Positive certification of a User ID and Public Key packet(0x13).
Pub alg - RSA Encrypt or Sign(pub 1)
Hash alg - SHA1(hash 2)
Hashed Sub: key flags(sub 27)(1 bytes)
[snip]
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン