GnuPG und KeyRing

Aus Siduction Wiki DE
Wechseln zu: Navigation, Suche

Einführung

Um einen Schlüssel erzeugen zu können, ihn von anderen signieren zu lassen, Schlüssel von anderen importieren und Mails oder Dateien verschlüsseln zu können, sind verschiedene Schritte nötig. Einen Einstieg ins Thema pgp findet man sehr gut per Wikipedia.

Schlüsselpaar erzeugen

Im Terminal

gpg --gen-key

ergibt:

gpg (GnuPG) 1.4.9; Copyright (C) 2008 Free Software Foundation, Inc.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

Bitte wählen Sie, welche Art von Schlüssel Sie möchten:
   (1) DSA und Elgamal (voreingestellt)
   (2) DSA (nur unterschreiben/beglaubigen)
   (5) RSA (nur signieren/beglaubigen)
Ihre Auswahl? 1

Das DSA-Schlüsselpaar wird 1024 Bit haben.
ELG-E-Schlüssel können zwischen 1024 und 4096 Bit lang sein.

Welche Schlüssellänge wünschen Sie? (2048)

Die verlangte Schlüssellänge beträgt 2048 Bit. Bitte wählen Sie, wie lange der Schlüssel gültig bleiben soll.
         0 = Schlüssel verfällt nie
      <n>  = Schlüssel verfällt nach n Tagen
      <n>w = Schlüssel verfällt nach n Wochen
      <n>m = Schlüssel verfällt nach n Monaten
      <n>y = Schlüssel verfällt nach n Jahren
Wie lange bleibt der Schlüssel gültig? (0) 0
Schlüssel verfällt nie
Ist dies richtig? (j/N) j

Sie benötigen eine User-ID, um Ihren Schlüssel eindeutig zu machen; das Programm baut diese User-ID aus Ihrem echten Namen, einem Kommentar und Ihrer Email-Adresse in dieser Form auf:
    "Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"

Ihr Name ("Vorname Nachname"): Vorname Nachname
Email-Adresse: Vorname.Nachname@provider.de
Kommentar:
Sie haben diese User-ID gewählt:
    "Vorname Nachname <Vorname.Nachname@provider.de>"

Ändern: (N)ame, (K)ommentar, (E)-Mail oder (F)ertig/(B)eenden? f
Sie benötigen eine Passphrase, um den geheimen Schlüssel zu schützen.

Wir müssen eine ganze Menge Zufallswerte erzeugen.  Sie können dies unterstützen, indem Sie z.B. in einem anderen Fenster/Konsole irgendetwas tippen, die Maus verwenden oder irgendwelche anderen Programme benutzen.
+++++..++++++++++.++++++++++++++++++++++++++++++.+++++++++++++++++++++++++..+++++++++++++++>++++++++++.+++++
Wir müssen eine ganze Menge Zufallswerte erzeugen.  Sie können dies unterstützen, indem Sie z.B. in einem anderen Fenster/Konsole irgendetwas tippen, die Maus verwenden oder irgendwelche anderen Programme benutzen.
++++++++++++++++++++++++++++.....++++++++++++++++++++..+++++>..+++++.+++++>....+++++>+++++.....
[[A^[[D^[[A^[[D.^[[D^[[A.^[[A^[[A.d.fd.d.....as.dsads.........s.sda................as.asd.........................    
.......................................................................dss.fsd.f...........+++++^^^
gpg: Schlüssel FFFFFFFF ist als uneingeschränkt vertrauenswürdig gekennzeichnet. Öffentlichen und geheimen Schlüssel erzeugt und signiert.

gpg: "Trust-DB" wird überprüft
gpg: 3 marginal-needed, 1 complete-needed, PGP Vertrauensmodell
gpg: Tiefe: 0  gültig:   4  unterschrieben:  22  Vertrauen: 0-, 0q, 0n, 0m, 0f, 4u
gpg: Tiefe: 1  gültig:  22  unterschrieben: 148  Vertrauen: 22-, 0q, 0n, 0m, 0f, 0u
gpg: nächste "Trust-DB"-Pflichtüberprüfung am 2009-06-11
pub   FFFF/FFFFFFFF 2009-03-27
  Schl.-Fingerabdruck = E2E2 E2E2 E2E2 E2E2 E2E2 E2E2 E2E2 E2E2
uid                  Vorname Nachname <Vorname.Nachname@provider.de>
sub   2048g/FFFFFFFF 2009-03-27

Eigenen Schlüssel sichern und verwalten

Jetzt sichern wir erstmal deinen Schlüsselsatz. Schlüsselsatz deshalb, da du einen öffentlichen und einen privaten Key hast den privaten darfst nur du haben, den öffentlichen braucht jeder, der mit dir verschlüsselt mailen wil bzw. mit dem du verschlüsselte Nachrichten/ Dokumente, was auch immer, austauschen willst

gpg --export-secret-keys -a UID > users-geheimer.key

UID = die UID von deinem schlüssel

gpg --export -a UID > users-öffentlicher.key

so, nun haben wir gesichert, jetzt bauen wir uns ein revoke (revoke = wiederruf), falls mal das Passwort abhanden gekommen ist oder der private Schlüssel geklaut oder verloren wurde. Da du zur zeit nur ein Schlüsselpaar hast, reicht

gpg --gen-revoke > users-revoke.key

Alle diese keys sind gut und vor allem sicher aufbewahren.

gpg --gen-revoke FFFFFFFF > users-revoke.key
sec  1024D/FFFFFFFF 2009-03-27 Vorname Nachname <Vorname.Nachname@provider.de>
Ein Widerrufszertifikat für diesen Schlüssel erzeugen? (j/N) j
Grund für den Widerruf:
 0 = Kein Grund angegeben
 1 = Hinweis: Dieser Schlüssel ist nicht mehr sicher
 2 = Schlüssel ist überholt
 3 = Schlüssel wird nicht mehr benutzt
 Q = Abbruch
(Wahrscheinlich möchten Sie hier 1 auswählen)
Ihre Auswahl? 1
Geben Sie eine optionale Beschreibung ein. Beenden mit einer leeren Zeile:
> Don't use!
>
Grund für Widerruf: Hinweis: Dieser Schlüssel ist nicht mehr sicher
Don't use!
Ist das OK? (j/N) j

Sie benötigen eine Passphrase, um den geheimen Schlüssel zu entsperren.
Benutzer: "User Vorname <Vorname.Nachname@provider.de>"
1024-Bit DSA Schlüssel, ID FFFFFFFF, erzeugt 2009-03-27

Ausgabe mit ASCII Hülle erzwungen Widerrufszertifikat wurde erzeugt.

Bitte speichern Sie es auf einem Medium, welches sie wegschliessen können; falls Mallory (ein Angreifer) Zugang zu diesem Zertifikat erhält, kann er Ihren Schlüssel unbrauchbar machen. Es wäre klug, dieses Widerrufszertifikat auch auszudrucken und sicher aufzubewahren, falls das ursprüngliche Mediumnicht mehr lesbar ist. Aber Obacht: Das Drucksystem kann unter Umständen eine Kopie anderen Nutzern zugänglich machen.


So diese 3 Key bitte möglichst gut aufbewahren, ok eigentlich braucht nur der geheime in den Panzerschrank.


Schlüssel von anderen importieren

Wir möchten gerne Nachrichten von anderen verifizieren oder Nachrichten an andere verschlüsseln.
Problem:
Wir wissen nicht, ob die Keys, die sie uns vielleicht mal per Mail geschickt haben, auch tatsächlich integer sind, also von ihnen stammen oder $bösewicht die Mail verschickt hat. Darum kann man einen Key signieren: A zeigt B seinen Personalausweis und seinen Key, B bestätigt das und bürgt dafür mit seinem guten Namen (wie der Mann aus der Babynahrungswerbung). Da wir B kennen, trauen wir auch A. Prinzip klar? Ok. B hat jetzt nämlich schon paar Schlüssel in seinem Arsenal, wir möchten die gerne alle haben. Dann holen wir uns jetzt in einem rundumschlag die bekannten öffentlichen schlüssel der anderen e.v. köppe, und zwar so

http://walter.flightshop.de/files/ev-keyring.gpg.tar.bz2

laden und entpacken, dann machen wir den nächsten schritt Jetzt haben wir 'ne Menge Dateien - ich glaube 36 - die mit asc enden. ne ein file ev-keyring.gpg, hatte ja alle in einen ring gehaun

So jetzt importieren wir diese und wir müssen auch irgenwie sagen, das wir ev-keyring.gpg importieren möchten. Es geht ganz simpel

gpg --import ev-keyring.gpg

Randbemerkung: verwenden wir nur --import dann wird unser standad keyring unter .gnupg genommen, als ziel, also geht der Import in den pubring. Dann öffne jetzt mal dein email programm und füge deinen Key dem entsprechenden Mail-Konto zu

Randbemerkung: will man nicht den default nehmen, wie ich z.b. um den ev-keyring.gpg zu bauen, dann ist wie folgt vorzugehen:

gpg --no-default-keyring --keyring /pfad/zu/ev-keyring.gpg --import /pfad/zu/den/schlüsseln/*.asc

asc deshalb, da ich alle Keys mit dieser Endung exportiert habe