首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何导出专用/保密ASC密钥以解密GPG文件

如何导出专用/保密ASC密钥以解密GPG文件
EN

Stack Overflow用户
提问于 2011-04-08 04:53:24
回答 7查看 185.7K关注 0票数 98

背景:我的老板试着用公共和私有部分向我导出一个ASC密钥,但是只要我得到文件,私有部分就不会加载,也不会解密任何文件。

我们已尝试使用以下命令导出ASC密钥:

GNU Windows应用程序Kleopatra2.1(包含在gpg4win)

  • Windows应用程序隐私助理(包含在gpg4win中)中)

错误:“解密失败。密钥不可用。”

如何正确导出秘密或私有asc密钥以解密gpg文件?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-04-08 06:43:37

您可以使用command-line tool from GPG导出私钥。它可以在Windows-shell上运行。使用以下命令:

代码语言:javascript
复制
gpg --export-secret-keys

使用--export的普通导出不会包含任何私钥,因此您必须使用--export-secret-keys

编辑:

总结我的评论中给出的信息,这是允许您将ID为1234ABCD的特定密钥导出到文件secret.asc的命令:

代码语言:javascript
复制
gpg --export-secret-keys --armor 1234ABCD > secret.asc

您可以使用以下命令找到您需要的ID。ID是第二列的第二部分:

代码语言:javascript
复制
gpg --list-keys

要仅导出一个特定密钥而不是所有密钥,请执行以下操作:

代码语言:javascript
复制
gpg --export-secret-keys keyIDNumber > exportedKeyFilename.asc

keyIDNumber是您尝试导出的所需密钥的密钥id的编号。

票数 192
EN

Stack Overflow用户

发布于 2012-05-23 18:34:47

以上所有回复都是正确的,但可能遗漏了一个关键步骤,您需要编辑导入的密钥并“最终信任”该密钥

代码语言:javascript
复制
gpg --edit-key (keyIDNumber)
gpg> trust

Please decide how far you trust this user to correctly verify other users' keys
(by looking at passports, checking fingerprints from different sources, etc.)

  1 = I don't know or won't say
  2 = I do NOT trust
  3 = I trust marginally
  4 = I trust fully
  5 = I trust ultimately
  m = back to the main menu

并选择5以启用导入的私钥作为您的密钥之一

票数 32
EN

Stack Overflow用户

发布于 2013-05-18 08:55:14

看“黑水鼠”的治疗方法

https://montemazuma.wordpress.com/2010/03/01/moving-a-gpg-key-privately/

如果站点关闭,请参考archive.org备份:

https://web.archive.org/web/20170518155052/https://montemazuma.wordpress.com/2010/03/01/moving-a-gpg-key-privately/

这包括一种相当安全的传输密钥的方式。您可以将该建议放入如下所示的shell脚本中,以供重复使用。

首先从显示的列表中获取所需的KEYID

代码语言:javascript
复制
$ gpg -K

从结果列表中,记下传输所需的KEYID (秒后面的8个十六进制)。

然后在第一个帐号上调用测试过的shell keys.asc "export_private_key“,并生成您的pubkey.gpg +keys.asc。随后在第二个帐户"import_private_key“上调用。以下是他们使用cat (复制和粘贴内容)显示的内容:

代码语言:javascript
复制
$ cat export_private_key 
gpg -K
echo "select private key"
read KEYID
gpg --output pubkey.gpg --export $KEYID
echo REMEMBER THE COMING PASS-PHRASE
gpg --output - --export-secret-key $KEYID | \
   cat pubkey.gpg - | \
   gpg --armor --output keys.asc --symmetric --cipher-algo AES256
ls -l pubkey.gpg keys.asc
####################  E X P O R T _ P R I V A T E _ K E Y  #####################

现在,通过某种方式将"pubkey.gpg“(如果需要)和私有"keys.asc”转移到第二个帐户,并调用下面显示的程序。

代码语言:javascript
复制
$ cat import_private_key 
gpg --no-use-agent --output - keys.asc | gpg --import
###################  I M P O R T _ P R I V A T E _ K E Y  ######################

奥特的精神“应该是这样的”。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5587513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档