gnupg - 从 GnuPG 导出公钥失败,错误代码为 "WARNING: nothing exported"

标签 gnupg pgp openpgp

我是 PGP 新手,我正在尝试使用 GnuPG 通过 this tutorial 生成 PGP 私钥.

基本上,我在命令提示符下键入以下命令(在管理员模式下):

  1. gpg --gen-key
  2. 输入以下所有命令: enter image description here

  3. 然后我输入命令:

    gpg --armor --output pubkey.txt --export 'Encryption purpose'
    

但得到一个

WARNING: nothing exported

消息。

有人可以告诉我我做错了什么吗?

此外,我将使用 PGP 来加密 Web 应用程序下载文件。我计划创建一个 Web 应用程序,它将生成一个包含需要加密的随机数的文件(在 PGP 中)。然后,为了解密,我计划创建一个独立的应用程序,该应用程序将使用私钥解密文件。所以我的问题是:

  1. 是否可以从生成私钥的原始计算机中提取私钥以供其他计算机使用,以便其他计算机也可以使用独立应用程序使用私钥来解密文件原来的电脑?

  2. 如果这是不可能的,我如何与解密独立应用程序共享所有计算机的私钥(因为据我所知,独立应用程序需要“一个”私钥来解密文件)?我应该使用多个私钥吗?如何实现?

最佳答案

此错误是由 --export 参数与 gpg --list-keys 中列出的任何用户 ID(通常是电子邮件地址)不匹配引起的。

解决方案是运行:

  1. gpg --gen-key

记下您用于生成 key 的电子邮件(例如somename@example.com)。然后将其插入 gpg:

  • gpg --armor --output mypublic.key --export 'somename@example.com'
  • 此外,在 Ubuntu 中,现在似乎 gpg2 是首选,因此请使用例如 gpg2 --gen-key

    关于gnupg - 从 GnuPG 导出公钥失败,错误代码为 "WARNING: nothing exported",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32475460/

    相关文章:

    pgp - 是否将 GnuPG 子 key 而不是主 key 发送到 key 服务器?

    python - 官方 Python GPG 签名 key - 它在哪里? -GPG : using RSA key FC624643487034E5

    windows - Android Studio 和 Git - 如何对我的提交进行 GPG 签名?

    python - 使用 Python 对多部分电子邮件进行 PGP 签名

    javascript - 无法使用 gnupg 解密 openpgpjs (JS) 加密的 pgp 消息(通过 PHP 的 Ubuntu GPG)

    docker - 如何在 Docker 容器中使用 GnuPG,因为它缺少熵?

    windows - 如何获取 gpg-agent 的配置选项? (在 Windows 版 Git 上)

    batch-file - 批处理脚本GPG解密

    linux - Linux 中的 PGP 加密

    java - PGP加密和解密使用