GPG¶
Key erzeugen¶
gpg --default-new-key-algo rsa4096 --gen-key
Bei Real name anschliessend Vor und Nachname eingeben z. B. Max Mustermann, entsprechend die E-Mail-Adresse.
Anschliessend eine Passphrase vergeben und speichern.
Key-Id auslesen¶
Um die Key-Id auszulegen setze die SEARCH entsprechend auf deine Mailadresse und führe folgenden Befehl aus:
SEARCH= && export GPG_KEY=$(gpg --list-secret-keys --keyid-format LONG -K $SEARCH | grep sec | awk 'BEGIN {FS=" "}; {print $2}' | awk 'BEGIN {FS=" "}; {print $1}' | awk 'BEGIN {FS="/"}; {print $2}') && echo $GPG_KEY
Nachdem du diesen Command ausgeführt hast wurde dir der Key entsprechend in GPG_KEY als Umgebungsvariable für die aktuelle Shell gesetzt und zusätzlich ausgegeben. Die Umgebungsvariable findet bei den nachfolgenden Commands noch Verwendung. Wenn das nicht klappt kannst du sie manuell auslesen bei sec rsa4096/XXXX, die Übersicht hierfür gibts damit:
gpg --list-secret-keys --keyid-format LONG
GPG-Key publishen (optional)¶
Falls du deinen öffentlichen Teil deines GPG-Key hochladen möchtest geht das ziemlich simpel mit folgendem Kommando:
gpg --send-keys $GPG_KEY
Git den GPG-Key mitteilen¶
Damit Git entsprechend unsere Commits signieren kann, müssen wir ihm noch mitteilen welchen Key wir nutzen möchten:
git config --global user.signingkey $GPG_KEY
Git den GPG-Key mitteilen¶
Damit Git entsprechend unsere Commits signieren kann, müssen wir ihm noch mitteilen welchen Key wir nutzen möchten:
git config --global user.signingkey $GPG_KEY
Wenn du Commits signieren möchtest, musst du entweder immer -S angeben oder du teilst Git mit das er es bei jedem Commit automatisch tun soll:
git config --global commit.gpgsign true
Git-Hoster den GPG-Key mitteilen¶
Um entsprechend dem GIt-Hoster den GPG-Key mitzuteilen benötigen wir den öffentlichen Key, diesen erhältst du mit folgendem Command:
gpg --armor --export $GPG_KEY