GnuPG

1) Erstellen eines Schlüssels: Unter Gnome mit Seahorse. Oder auf der Kommandozeile. Siehe hier.

2) Jeder Schlüssel hat ein Ablaufdatum. Man kann jedoch jederzeit den Schlüssel widerrufen. Dazu erzeugt man einen Zertifikatswiderruf:

gpg –armor –output revoke.asc –gen-revoke C51C649A

und importiert den in seinen Schlüsselring:

gpg –import revoke.asc

dann noch das synchronisieren mit dem Schlüsselserver:

gpg –send-keys –keyserver hkp://pgp.mit.edu C51C649A

und schwupps sieht man unter

http://pgp.mit.edu:11371/pks/lookup?search=Daniel+Bungert&op=index&exact=on

Wie kann man den Widerruf bestätigen? Auf der Webseite steht hinter der Info „Widerrufen“ der Zusatz „unbestätigt“.

3) Ein Widerruf kann nicht seinerseits widerrufen werden. Ist also endgültig.

4) Ein paar Gedanken zur Verschlüsselung:

  • Falls jemand an meinen Schlüssel herankommt, kann er ohne Passwort nicht viel machen.
  • Ich unterschreibe eine Datei. Der Schlüssel läuft ab. Der Empfänger kann mittels Keyerver und meinem öffentlichen Schlüssel die Unterschrift prüfen. Ist mein Schlüssel abgelaufen, wird ihm das angezeigt und die Unterschrift ist „offiziell“ nicht mehr gültig. (Richtig?)
  • Wenn ich mit meinem privaten Schlüssel das Ablaufdatum verschiebe und die Änderung an den Schlüsselserver hochlade, wird meine Unterschrift wieder gültig. Das setzen eines Ablaufdatums hilft hier also nicht. Das einzige was helfen wird: den Schlüssel ablaufen lassen bzw. vor Ablauf schon widerrufen und alle Schlüssel löschen. Inklusive Backupkopien, Papierausdrucken usw. . Der (private) Schlüssel darf überhaupt nicht mehr existent sein. Erst dann kann ein abgelaufener oder widerrufener öffentlicher Schlüssel nicht mehr verlängert / verändert werden.
  • Gleiches gilt für Verschlüsselung: Findet jemand alte verschlüsselte Backups und kommt irgendwie an den alten Key und das alte Passwort ran, kann er entschlüsseln. Egal ob der Schlüssel abgelaufen ist. Das Ablaufdatum kann er mit Hilfe des Passwortes ändern. Auch hier einzige 100% Sicherheit. Alle Schlüssel löschen. Schlüsselserver sind hier unrelevant, da ich zum Entschlüsseln nur den privaten Schlüssel brauche. Verschlüsseln wäre mit einem Schlüssel auf einem Schlüsselserver weiter möglich insofern der nicht abgelaufen oder widerrufen wird.

4) Wie unterschreibe ich andere Schlüssel?

  • Zu unterschreibenden Schlüssel importieren.
  • gpg –sign-key <ID des zu unterschreibenden Schlüssels, nicht des eigenen/unterschreibenden>
  • Um den Hinweis „Identität nicht bestätigt“ bei gpg –verbose –verify Nummern.gpg zu vermeiden, muß mindestens ein zweiter, anderer Schlüssel mittels gpg –sign-key –local-user <unterschreibende Schlüssel ID> <zu unterschreibende Schlüssel ID> meinen Schlüssel unterschrieben habe. Das ganze nennt man dann Web of Trust, da es ohne zentrale Vertrauensserver auskommen kann. Diese zentralen Instanzen wie Verisign gibt es natürlich trotzdem. Für das Web of Trust werden von interessierten Privatpersonen und Organisation (CCC u.a.) sogenannte Keysigning Parties organisiert. Da kommt dann jeder mit seinem Key hin, zeigt seinen Ausweis und bekommt die Unterschriften aller anderen Teilnehmer auf seine Unterschrift. Siehe z.B. hier.
  • Update: Doch nicht so einfach wie gedacht. Hatte einfach einen zweiten Schlüssel erzeugt und meinen ersten signiert. Daraufhin war die Fehlermeldung „Identität nicht bestätigt“ weg. Habe dann den zweiten Schlüssel wieder gelöscht. Das hat auch die Unterschrift in meinem ersten Schlüssel gelöscht und dieser war wieder „Identität unbestätigt“. Man braucht scheinbar wirklich eine Unterschrift eines Schlüssels, welche gegen eine bekannte Zertifizierungsstelle / Schlüsselserver geprüft werden kann. D.h. deren öffentlicher Schlüssel lokal im Programm (öffentlicher Schlüssel einer Zertifizierungsstelle; Verisign, Telekom oder CCC) oder dessen öffentlicher Schlüssel auf einem der (bekannten) Schlüsselserver bekannt ist. Bin mir nicht sicher, ob letzteres ausreicht / funktioniert.
  • Update 2: Es geht natürlich auch ohne Schlüsselserver oder Zertifizierungsstellen. Das ist dann das oben bereits angesprochene Web of Trust. dazu müssen alle Schlüssel, bei allen lokal installiert sein. Man ist sozusagen sein eigener Schlüsselserver.
  • Öffentliche Schlüssel importiert man wie private. Eine Ascii-Datei, die halt nicht privaten und öffentlichen enthält, sondern nur den öffentlichen.
  • Da ich mir die Frage gestellt habe und es ausprobiert habe: Wenn ich eines anderen Schlüssel signieren will, brauche ich nur dessen öffentlichen! Eigentlich logisch, war mir nur nicht sicher. Man muß nur den öffentlichen Schlüssel als ASCII-Datei importieren. Dann unterschreiben, den öffentlichen Schlüssel wieder exportieren und an den Absender zurück schicken. Der muß ihn dann wieder importieren und sieht dann meine Unterschrift in seiner. Wenn er meinen öffentlichen Schlüssel noch nicht hat, sollte ich ihm diesen schicken und er sollte ihn vor seinem von mir unterschriebenen importieren.
Advertisements
Dieser Beitrag wurde unter Uncategorized veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Eine Antwort zu GnuPG

  1. Pingback: GPG Kommandoliste Passwortänderung | Daniel's Blog

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s