Jak získat veřejný klíč ze soukromí v gpg bez použití lokálního úložiště (v ~ / .gpg)?

hlasů
4

Podívejte se na Subj: Jak získat veřejný klíč ze soukromí v gpg bez použití lokálního úložiště (v ~ / .gpg)?

Toto řešení nesplňuje požadavky:

  $ Gpg --import priv.key
  $ Gpg --export $ KEYID> pub.key
  $ Gpg --delete tajný-and-public-key $ KEYID
Položena 05/10/2011 v 13:46
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
7

Nechápu, proč nejste spokojeni s řešením jste již přišel s, ale pokud opravdu chcete z nějakého důvodu, aby se zabránilo hrát s vašimi osobními klíčenek, mohu nabídnout něco jiného:

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

Nebo jako praktickou funkcí 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'"
  }
Odpovězeno 04/03/2012 v 14:44
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more