加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

pgp – 如何在不使用本地存储的情况下从gpg中获取私钥(在?/ .gpg

发布时间:2020-12-14 00:34:00 所属栏目:Linux 来源:网络整理
导读:Subj:如何在不使用本地存储的情况下(在?/ .gpg下)从gpg获取私钥? 该解决方案不满足要求: $gpg --import priv.key $gpg --export $KEYID pub.key $gpg --delete-secret-and-public-key $KEYID 解决方法 我不明白为什么你对你已经提出的解决方案不满意,但如
Subj:如何在不使用本地存储的情况下(在?/ .gpg下)从gpg获取私钥?

该解决方案不满足要求:

  $gpg --import priv.key
  $gpg --export $KEYID >pub.key
  $gpg --delete-secret-and-public-key $KEYID

解决方法

我不明白为什么你对你已经提出的解决方案不满意,但如果由于某种原因你真的想避免弄乱你的个人密钥,我可以提供其他的东西:

gtmp=$(mktemp -d)
gpg --homedir $gtmp --import key
gpg --homedir $gtmp --export key > pub.gpg
rm -rf $gtmp

或者作为方便的BASH功能:

# Requires keyfile as 1st argument; optional 2nd argument is output file
gpg_priv_to_pub(){
  g=$(mktemp -d)
  infile=$1
  [[ $# > 1 ]] && outfile=$2 || outfile=${1%.*}_pub.gpg
  gpg --homedir $g --import "$infile" 2>/dev/null
  KEYID=$(gpg --homedir $g -k --with-colons | awk -F: '/^pub/{print $5}')
  gpg --homedir $g --export $KEYID > "$outfile"
  rm -rf $g
  echo "Public key $KEYID extracted from '$infile' and saved to '$outfile'"
  }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读