CentOS 7でGnuPGを使用した自己署名公開鍵の生成と送信

CentOS 7でGnuPGを使用した自己署名公開鍵の生成と送信

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

おすすめ記事