| wikis | index


GPG

tutorial

gpg --edit-key 6A349802CE04AC5938B8EBAAA695F6D49054E917
passwd
save

gpg --output revocation-certificate.asc --gen-revoke 6A349802CE04AC5938B8EBAAA695F6D49054E917

key management

gpg --list-keys
gpg --list-secret-keys

gpg --gen-key                           # make a new key
gpg --export-secret-keys --armor 6A349802CE04AC5938B8EBAAA695F6D49054E917 > ./my-priv-gpg-key.asc
gpg --import ./my-priv-gpg-key.asc
gpg --edit-key <KEY_ID>
gpg> trust

gpg --keyserver hkp://pgp.mit.edu --send-keys 6A349802CE04AC5938B8EBAAA695F6D49054E917

encryption & decryption

gpg --armor --symmetric message.txt     # symmetric, armor (=ASCII output)
gpg --version                           # get cypher algos
gpg --sign --symmetric message.txt      # encrypt + sign

# asymmetric. first find and import key, then encrypt
gpg --keyserver pgp.mit.edu --search-keys uzak@mailbox.org
gpg --armor --encrypt --recipient uzak@mailbox.org message.txt

gpg -d message.txt.asc                  # decrypt

sign

gpg --clearsign message.txt             # for plaintext
gpg --sign message.txt                  # generates binary output

gpg --verify message.txt.asc            
gpg --decrypt message.txt.asc           # also verifies signature

# asymmetric encrypt and sign
gpg --sign --encrypt --recipient uzak@mailbox.org message.txt

detached signatures

gpg --detach-sign message.txt
gpg --verify message.txt.sig
gpg --verify message.txt.sig message.txt    # explicit message filename