gpg --gen-key
生成された手順を入力すると、CentOS 7端末でGPGキーペアを生成できることがわかりますが、生成された公開鍵が自己署名されたことをどのように確認しますか?生成されたキーをリモートコンピュータに電子メールで送信するにはどうすればよいですか?
次のように、コマンドラインでmailxを使用して添付ファイルを含む電子メールを送信できることを知っています。
echo "this is the body of the email" | mailx -s"Subject" -a public.key [email protected]
ただし、切り捨てられたmailxコードはファイル内のキーを使用できると仮定します。実際、キーはキーリングにロックされており、それにアクセスするには追加の構文が必要です。
編集する
@HaukeLagingのアドバイスに従いました。新しいキーを生成したがgpg --list-sigs
コマンドラインに入力すると、次の結果が表示されます。
/home/username/.gnupg/pubring.gpg
-----------------------------------------
pub 4096R/CODE1 2015-02-04
uid User Name <[email protected]>
sig 3 CODE1 2015-02-04 User Name <[email protected]>
sub 4096R/CODE2 2015-02-04
sig CODE1 2015-02-04 User Name <[email protected]>
次のキーコードのうち公開鍵は何ですか?秘密鍵は何ですか?誤って秘密鍵を誰にでも送信したくありません。
編集#2
EDIT#1に対する@HaukeLagingの答えに基づいて、以下を試しました。
`sudo gpg --armor --export CODE1 >/home/username/my_public_cert.asc`
cd /home/username/
ただし、ANDを実行すると、結果は空のファイルになりますls -al
。
返品、
gpg --list-packets /home/username/my_public_cert.asc
~につながるgpg: processing message failed: Unknown system error
gpg --armor --export CODE1 >/home/username/my_public_cert.asc
空のファイルが生成されるのはなぜですか?
答え1
自己署名
OpenPGP 証明書は複数のコンポーネントで構成されます。
いつも:
- 正確に1つの主キー
- 1つ以上のユーザーID(UID)
通常:
- 少なくとも一人の子供
マスターキーを除くすべてのコンポーネントはマスターキーで署名され、証明書の一部になります。自己署名コンポーネントを含まない証明書(GnuPGを使用)を生成することはできません。この状況を解決するには、後で自己署名を削除する必要があります。
以下を実行して署名を表示できます。
gpg --list-sigs
または
gpg --with-colons --list-sigs
電子メールに証明書を添付する
証明書を添付する前に、証明書をファイルにエクスポートする必要があります。
gpg --armor --export $key_id >my_cert.asc
または
gpg --armor --output my_cert.asc --export $key_id
答え2
まずエクスポートする公開鍵を見つけます。
gpg - 公開鍵リスト
「pub」と表示された行を見ると、公開鍵の種類と番号が表示されます。たとえば、
バー1024D/5000280F 2009-07-10
この番号を使用して以下をエクスポートします。
gpg --armor --export 5000280F > klaatu_pubkey.asc
動作していることを確認してください。
catklaatu_pubkey.asc
空でない限り、ファイルを友達に送信できます。
PGPモデルは信頼ネットワークに基づいているため、人々が使用できるように公開鍵を世界に公開することをお勧めします。最も簡単な方法は、キーサーバーに公開することです。
gpg --export send-keys 5000280F --keyserverkeys.fedoraproject.org
キーサーバーは定期的に互いにミラーリングされているため、キーが伝播され署名された電子メールを受信した人は、キーサーバーネットワークからリリースキーをダウンロード/インポートできます。
答え3
私が知る限り、自己署名はPKIで意味があります。 PGP / GPGは信頼ネットワークと呼ばれる別の概念を使用します。したがって、あなたはあなたの通信員から公開鍵に署名し、彼/彼女の鍵に署名する必要があります。