GPG & Gopass & Gitlab
GPG and how to use it
Create a Key with ECC
gpg --expert --full-generate-key
- (9) ECC and ECC
- (1) Curve 25519
- 0 = key does not expire (or whatever you prefer!)
- Real name: Max Muster
- Email address: [email protected]
- Comment: -
pub ed25519 2022-09-04 [SC]
256ADFCEBD49C20DFACDCCABADA0F56BC7B20E6E
uid Max Muster (-) <[email protected]>
sub cv25519 2022-09-04 [E]
Public Key
max@host $ gpg
/home/max/.gnupg/pubring.kbx
----------------------------
pub ed25519 2022-09-04 [SC]
256ADFCEBD49C20DFACDCCABADA0F56BC7B20E6E
uid [ultimate] Max Muster (-) <[email protected]>
sub cv25519 2022-09-04 [E]
Private Key
max@host $ gpg -K
/home/max/.gnupg/pubring.kbx
----------------------------
sec ed25519 2022-09-04 [SC]
256ADFCEBD49C20DFACDCCABADA0F56BC7B20E6E
uid [ultimate] Max Muster (-) <[email protected]>
ssb cv25519 2022-09-04 [E]
Export All Keys
ASCII Format
gpg --export --armor > public.key.asc
gpg --export-secret-key --armor > private.key.asc
GPG Format
gpg --output public.gpg --export
gpg --output private.gpg --export-secret-key
Export one Key only
Set Key
keyID=256ADFCEBD49C20DFACDCCABADA0F56BC7B20E6E
ASCII Format
gpg --export --armor > $keyID.pub.key.asc $keyID
gpg --export-secret-key --armor > $keyID.key.asc $keyID
GPG Format
gpg --output $keyID.pub.gpg --export $keyID
gpg --output $keyID.gpg --export-secret-key $keyID
Export to QRCode
gpg --export --armor |qrencode -t UTF8
gpg --export-secret-keys --armor |qrencode -t UTF8
Export QRCode to PNG
qrencode -r $keyID.pub.key.asc -o $keyID.pub.png
qrencode -r $keyID.key.asc -o $keyID.png
Delete private Key without asking!
gpg --yes --batch --delete-secret-key $keyID
Delete both Keys without asking!
gpg --yes --batch --delete-secret-and-public-key $keyID
Key Management
List Keys
max@host $ file *key*
private.key: data
private.key.asc: ASCII text
public.key: data
public.key.asc: PGP public key block
Delete Key
keyID=
gpg --delete-secret-key $keyID
gpg --delete-key $keyID
or delete both without asking!