Skip to content

Instantly share code, notes, and snippets.

@yovko
Last active April 17, 2020 14:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save yovko/8f6bd7179eceed8fad2a58ed3ab14c86 to your computer and use it in GitHub Desktop.
Save yovko/8f6bd7179eceed8fad2a58ed3ab14c86 to your computer and use it in GitHub Desktop.

GnuPG notes

Key generation

gpg --full-generate-key
gpg --list-secret-keys --keyid-format LONG
gpg --edit-key 0261567733AE82EA

A simple backup for a PGP secret key

Split the private key in two parts, encrypt each part one by one using simple symmetric encryption with strong password. Dispatch both privatekeyN parts in safe places (usb keys for example).

gpg --export-secret-keys --armor me@somewhere.com > privatekey
split -n 2 privatekey --numeric-suffix privatekey
gpg --symmetric privatekey00
gpg --symmetric privatekey01

Revocation certificate generation

gpg --output ~/revocation.crt --gen-revoke
chmod 600 ~/revocation.crt

Public key sharing

gpg --output ~/mypublic.key --armor --export me@somewhere.com
gpg --send-keys --keyserver keys.openpgp.org AB173AEFA2C0E586357C82610261567733AE82EA
gpg --refresh-keys
gpg --refresh-keys --keyserver keys.openpgp.org

Searching for a key

gpg --keyserver hkps.pool.sks-keyservers.net --search-keys someone@somewhere.com
gpg --fingerprint someone@somewhere.com
gpg --import someones.key
gpg --sign-key someonek@somewhere.com

Encrypting files

gpg --encrypt --sign --armor -r someone@somewhere.com

Decrypting files

gpg --decrypt coded.asc > plain.txt

Sign my new key with my old key

gpg --default-key E8C43461 --sign-key 6AA15948
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment