我需要生成一个 PGP 公钥/私钥。我以前从未这样做过。我已阅读文档,但给出的示例与我在计算机上看到的不符。
我用gnupg.
我运行命令列出公钥
gpg --list-keys --keyid-format LONG
我得到了这样的结构。
pub rsa2048/123456789101112A 2000–01-01 [SC] [expires: 2000-01-01]
ABCD1234ABCD1234ABCD1234ABCD1234ABCD1234
uid [ultimate] Firstname Surname <email@gmail.com>
sub rsa2048/ABCDEFGHIJKLMNO1 2000-01-01 [E] [expires: 2000-01-01]
Run Code Online (Sandbox Code Playgroud)
然后我运行一个命令来获取密钥
gpg --list-secret-keys --keyid-format LONG
我得到了相同的结构
sec rsa2048/123456789101112A 2000–01-01 [SC] [expires: 2000-01-01]
ABCD1234ABCD1234ABCD1234ABCD1234ABCD1234
uid [ultimate] Firstname Surname <email@gmail.com>
ssb rsa2048/ABCDEFGHIJKLMNO1 2000-01-01 [E] [expires: 2000-01-01]
Run Code Online (Sandbox Code Playgroud)
这里的不同之处在于pub、sub、sec和ssb标签,但内容完全相同。
生成的每个示例中的公钥私钥是哪个?
'rsa2048/'( 示例中为123456789101112A)之后pub或sec第一行中的序列是公钥吗?然后下一行中较长的序列(示例中为ABCD1234ABCD1234ABCD1234ABCD1234ABCD1234)是匹配的私钥?
或者公钥是pub或sec第一行中'rsa2048/'之后的序列( 示例中为123456789101112A),然后匹配的私钥是'rsa2048/'之后的sub或ssb行(ABCDEFGHIJKLMNO1)例子)?
小智 2
当您列出密钥时,pub始终是您的公钥,它可以被视为您的“主”密钥。与它(这个“主”密钥)相关联,您有一个私钥。任何其他密钥(sub、ssb 等)都是私有的子密钥。为了了解sec, sub, ssb&的含义pub,您可以阅读这篇文章:
gnupg - What do 'ssb' and 'sec' Mean in gpg's output
我希望这可以解决您的“问题”。