尝试导入朋友的公共 OpenPGP 密钥 - 但没有任何反应,我看不到密钥

尝试导入朋友的公共 OpenPGP 密钥 - 但没有任何反应,我看不到密钥

奇怪的问题:我的一个朋友向我发送了他的公共 OpenPGP 密钥。

我尝试了以下操作:

方法 1

  • 将他的 OpenPGP 密钥块粘贴到 .txt 文件中
  • 启动海马并点击文件>导入
  • 选择 .txt 文件
  • 点击导入
  • 什么都没有发生,没有错误消息,没有反馈,也无法在 seahorse 中的 PGP Keys 下看到密钥

方法 2

在终端中我运行以下命令:

sudo gpg --import key.txt

没有错误消息。但我仍然无法在任何地方看到密钥。

当我尝试使用 Thunderbird 中的 Enigmail 解密朋友发送给我的测试电子邮件时,我被告知找不到相应的密钥。

我正在使用 Ubuntu 14.04 LTS。

任何建议都将不胜感激。

更新:

:public key packet:
    version 4, algo 1, created 1341176567, expires 0
    pkey[0]: [2048 bits]
    pkey[1]: [17 bits]
    keyid: 92729696A35FA089
:user ID packet: "John Do <[email protected]>"
:signature packet: algo 1, keyid 93729646B35FA089
    version 4, created 1341176567, md5len 0, sigclass 0x13
    digest algo 2, begin of digest 49 e6
    hashed subpkt 2 len 4 (sig created 2012-07-01)
    hashed subpkt 27 len 1 (key flags: 03)
    hashed subpkt 11 len 5 (pref-sym-algos: 9 8 7 3 2)
    hashed subpkt 21 len 5 (pref-hash-algos: 8 2 9 10 11)
    hashed subpkt 22 len 3 (pref-zip-algos: 2 3 1)
    hashed subpkt 30 len 1 (features: 01)
    hashed subpkt 23 len 1 (key server preferences: 80)
    subpkt 16 len 8 (issuer key ID 93729646B35FA089)
    data: [2047 bits]
:public sub key packet:
    version 4, algo 1, created 1341176567, expires 0
    pkey[0]: [2048 bits]
    pkey[1]: [17 bits]
    keyid: 91C2606F92AC4FBA
:signature packet: algo 1, keyid 93729646B35FA089
    version 4, created 1341176567, md5len 0, sigclass 0x18
    digest algo 2, begin of digest 36 aa
    hashed subpkt 2 len 4 (sig created 2012-07-01)
    hashed subpkt 27 len 1 (key flags: 0C)
    subpkt 16 len 8 (issuer key ID 93729646B35FA089)
    data: [2047 bits]

答案1

导入密钥

您要导入的密钥是一个普通的公共 OpenPGP 密钥,没有什么特殊之处,所以应该不会有任何问题。

我想你遇到了两个不同的问题。

  1. 使用 Seahorse GUI

    对于导入密钥,您做对了所有事情。但默认情况下,Seahorse 仅显示您自己的密钥(即您拥有私钥的密钥)。单击“查看”和“显示任何内容”可查看公钥。

  2. 使用命令行

    sudo gpg --import <file将导入到 root 的 GnuPG 密钥环中,这可能不是您想要实现的。通过省略以下内容,导入到您的用户密钥环中sudo

    gpg --import key.txt
    

    之后,应该可以看到运行

    gpg --list-keys

    无论如何,很可能您已经成功导入它了。

私钥和公钥

你遇到的另一个问题似乎是对公钥/私钥加密的理解。有了上面列出的密钥,你将不是能够解密邮件,你需要私人的密钥来解密消息。公钥只能用于加密向其他人发送消息(并验证其他人的签名),但不能解密使用该公钥加密的消息。

如果您想使用 OpenPGP(或一般的公钥/私钥加密,例如使用 S/MIME)与朋友交换消息,你们每个人都应该生成自己的密钥对。现在交换公钥。如果您想向朋友发送消息,请使用他的公钥加密消息,现在他将能够使用他的私钥解密消息。反之亦然。

答案2

您必须使用 sudo 在终端中尝试以下操作:

  wget -o- (path and key.txt | sudo apt-add key (gpg)

这样也许能很好地发挥作用。

相关内容