From f6fa901a0906fc6ba8c6d851060d646c3049f8ea Mon Sep 17 00:00:00 2001 From: johannst Date: Fri, 18 Dec 2020 23:42:29 +0000 Subject: deploy: b7f4aee7a60b03db06475f2a017706494d9a2d44 --- tools/gpg.html | 316 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 316 insertions(+) create mode 100644 tools/gpg.html (limited to 'tools/gpg.html') diff --git a/tools/gpg.html b/tools/gpg.html new file mode 100644 index 0000000..5a4fea3 --- /dev/null +++ b/tools/gpg.html @@ -0,0 +1,316 @@ + + + + + + gpg - Notes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + + + +
+
+

gpg(1)

+
gpg
+  -o|--output                 Specify output file
+  -a|--armor                  Create ascii output
+  -u|--local-user <name>      Specify key for signing
+  -r|--recipient              Encrypt for user
+
+

Generate new keypair

+
gpg --full-generate-key
+
+

List keys

+
gpg -k / --list-key               # public keys
+gpg -K / --list-secret-keys       # secret keys
+
+

Edit keys

+
gpg --edit-key <KEY ID>
+
+

Gives prompt to modify KEY ID, common commands:

+
help         show help
+save         save & quit
+
+list         list keys and user IDs
+key <N>      select subkey <N>
+uid <N>      select user ID <N>
+
+expire       change expiration of selected key
+
+adduid       add user ID
+deluid       delete selected user ID
+
+addkey       add subkey
+delkey       delete selected subkey
+
+

Export & Import Keys

+
gpg --export --armor --output <KEY.PUB> <KEY ID>
+gpg --import <FILE>
+
+

Search & Send keys

+
gpg --keyserver <SERVER> --send-keys <KEY ID>
+gpg --keyserver <SERVER> --search-keys <KEY ID>
+
+

Encrypt (passphrase)

+

Encrypt file using passphrase and write encrypted data to <file>.gpg.

+
gpg --symmetric <file>
+
+# Decrypt using passphrase
+gpg -o <file> --decrypt <file>.gpg
+
+

Encrypt (public key)

+

Encrypt file with public key of specified recipient and write encrypted +data to <file>.gpg.

+
gpg --encrypt -r foo@bar.de <file>
+
+# Decrypt at foos side (private key required)
+gpg -o <file> --decrypt <file>.gpg
+
+

Signing

+

Generate a signed file and write to <file>.gpg.

+
gpg --sign -u foor@bar.de <file>
+
+# Verify
+gpg --verify <file>
+
+# Extract content from signed file
+gpg -o <file> --decrypt <file>.gpg
+
+
+

Without -u use first private key in list gpg -K for signing.

+
+

Files can also be signed and encrypted at once, gpg will first sign the +file and then encrypt it.

+
gpg --sign --encrypt <file>
+
+

Signing (detached)

+

Generate a detached signature and write to <file>.asc. +Send <file>.asc along with <file> when distributing.

+
gpg --detach-sign --armor -u foor@bar.de <file>
+
+# Verify
+gpg --verify <file>.asc <file>
+
+
+

Without -u use first private key in list gpg -K for signing.

+
+

Abbreviations

+
    +
  • sec secret key
  • +
  • ssb secret subkey
  • +
  • pub public key
  • +
  • sub public subkey
  • +
+

Keyservers

+
    +
  • http://pgp.mit.edu
  • +
  • http://keyserver.ubuntu.com
  • +
  • hkps://pgp.mailbox.org
  • +
+ +
+ + +
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- cgit v1.2.3