web-dev-qa-db-ja.com

GnuPGは私の公開鍵を共有するときに鍵IDを要求しますが、それは何ですか?

GnuPGを使用して公開鍵を生成しました。 --list-keysで確認できます

$  gpg --list-keys
/Users/mertnuhoglu/.gnupg/pubring.gpg
-------------------------------------
pub   4096R/CB3AF6E6 2015-12-24 [expires: 2016-12-23]
uid                  Mert Nuhoglu <[email protected]>
sub   4096R/0D6B756F 2015-12-24 [expires: 2016-12-23]

キーサーバーで共有したい。 このチュートリアル は、次のコマンドを使用する必要があると言っています。

gpg --send-keys 'Your Name' --keyserver hkp://subkeys.pgp.net

そのコマンドを使用しますが、次のエラーが発生します。

$  gpg --send-keys 'Mert Nuhoglu' --keyserver hkp://subkeys.pgp.net
gpg: "Mert Nuhoglu" not a key ID: skipping
gpg: "--keyserver" not a key ID: skipping
gpg: "hkp://subkeys.pgp.net" not a key ID: skipping

key idとは正確に何ですか?

20
Mert Nuhoglu

OpenPGPユーザーID

OpenPGPのユーザーIDは、名前や電子メールアドレスなどのエンティティにキーを接続するために使用されます。これらは、キーサーバー上のキーを検索し、それらをユーザー/電子メールアドレスと照合するために使用されます。

ユーザーIDはキーサーバーによってチェックされないことに注意してください。必ず自分で確認してください!

OpenPGPキーID

OpenPGPキーID(およびフィンガープリント)は、キーの要求や送信などのいくつかのアクションを実行するとき、または所有権を確認するときに、キーを参照するために使用されます。たとえば、別の信頼できるチャネルでキーの所有者とフィンガープリントを交換して、キーがキーの所有者であると主張する人物に本当に属していることを確認します。

OpenPGP(v4)キーIDは、公開キーとキー作成タイムスタンプから計算された識別子です。それらから、ハッシュサムが計算されます。 16進数でエンコードされたバージョンは、キーのfingerprintと呼ばれます。最後の(下位)16文字は長いキーIDと呼ばれ、最後の8文字だけをとる場合は短いキーID。私自身の公開鍵の例:

fingerprint: 0D69 E11F 12BD BA07 7B37  26AB 4E1F 799A A4FF 2279
long id:                                    4E1F 799A A4FF 2279
short id:                                             A4FF 2279

主公開鍵のIDは、鍵サイズの後のpub行で参照されます。あなたの場合、短い鍵IDはCB3AF6E6です。

pub   4096R/CB3AF6E6 2015-12-24 [expires: 2016-12-23]

8バイトの短いキーIDは十分に大きな値のスペースを提供しないことに注意してください。これは 衝突攻撃によって重複キーを簡単に生成すること です。短いキーIDの代わりに 少なくとも長いキーIDを使用 を使用し、ソフトウェアがキーを処理するときは常にフィンガープリント全体を参照します。

ハッシュ合計の導出方法の詳細については、 RFC 4880、OpenPGP、12.2のキーIDとフィンガープリント を参照してください。非推奨のOpenPGP v3キー。

鍵サーバーからの鍵の送受信

キーサーバーとの間でキーを送受信するには、完全なキーIDまたはフィンガープリントを使用する必要があります。 GnuPGはここではユーザーIDを受け付けませんman gpgから:

--send-keys key IDs
    Similar to --export but sends the keys to a keyserver.  Fingerprints may be
    used instead of key IDs. [...]
 --recv-keys key IDs
    Import the keys with the given key IDs from a keyserver. [...]

最初にユーザーID(またはその一部)を検索する場合は、gpg --search-keysを使用します。これにより、最初にキーサーバーに名前が照会され、後で取得するキーを尋ねる何らかの種類のアシスタントが提供されます(したがって、選択したキーに対して--recv-keysが自動的に実行されます)。

 --search-keys names
     Search the keyserver for the given names. Multiple names given here will be
     joined together to create the search string for the keyserver. [...]
20
Jens Erat

キーIDとは正確には何ですか?

CB3AF6E6のようなパーツ。 GPGは、メールアドレスを使用してキーを参照することも受け入れます。

3
Lie Ryan