GnuPG Teil 0x1: Erzeugung eines Schlüsselpaares
Auf NerdsHeaven.de präsentieren wir dir starke Deals & Angebote im Bereich Technik und Gadgets. Installiere dir jetzt unsere Android oder iOS App, um keine Knaller-Angebote mehr zu verpassen.
OS und Programm:
Eigentlich alle OS die GnuPG unterstützen (hier: Linux)
Was ist GnuPG und warum schreiben wir darüber?
„GnuPG is the GNU project’s complete and free implementation of the OpenPGP standard as defined by RFC4880. GnuPG allows to encrypt and sign your data and communication, features a versatile key management system as well as access modules for all kinds of public key directories. GnuPG, also known as GPG, is a command line tool with features for easy integration with other applications. A wealth of frontend applications and libraries are available. Version 2 of GnuPG also provides support for S/MIME.“ [1,2]
GnuPG ist verdammt gut dokumentiert, also warum schreiben wir nun darüber? Ganz einfach, weil es immer noch genug Leute gibt, die sich einer Sensibilisierung hinsichtlich ihrer Privatsphäre entziehen wollen. Ein jeder der hiermit erreicht wird und mal ein wenig zum Nachdenken angeregt wird (und sei es nur zur Fehlersuche in diesem Artikel ^^) ist ein Erfolg.
Das ganze ist als Reihe (bestehend aus einer unbekannten Anzahl an Teilen, aber mehr als 3) aufgebaut, um so nicht zuviele Infos auf einmal auf euch einprasseln zu lassen. Zudem ist das hier auch als Gedächtnisstütze für alte Menschen wie Kay gedacht
Schlüsselerzeugung:
Zuerst installiert ihr euch die passende Software:
Arch Linux
[willi@maja ~]$ sudo pacman -S gnupg
Debian/Ubuntu usw.
[willi@maja ~]$ sudo aptget install gnupg
Auf die Konfiguration der Installation gehe ich in einem anderen Teil ein.
Nun erzeugen wir ein Schlüsselpaar für die Mailaddy [email protected]. Alle Eingaben sind im Folgenden BLAU und FETT markiert. Die Bedeutung der Eingabe lässt sich im Regelfall aus dem Kontext bzw. Fließtext ermitteln .
Noch ein Wort zur Schlüssellänge und welche Art des Schlüssels gewählt werden soll. Macht euch schlau (z.B. unter [1]) was gerade als sicher gilt und welche Kombis möglich sowie sinnvoll sind.
Als Ablaufdatum empfiehlt sich schon mal die voraussichtliche Gültigkeit eurer Mailaddy in die Überlegung mit einzubeziehen.
[willi@maja ~]$ gpg --gen-key
Bitte wählen Sie, welche Art von Schlüssel Sie möchten:
(1) RSA und RSA (voreingestellt)
(2) DSA und Elgamal
(3) DSA (nur signieren/beglaubigen)
(4) RSA (nur signieren/beglaubigen)
Ihre Auswahl? 1
RSA-Schlüssel können zwischen 1024 und 4096 Bit lang sein.
Welche Schlüssellänge wünschen Sie? (2048) 4096
Die verlangte Schlüssellänge beträgt 4096 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
GnuPG erstellt eine User-ID um Ihren Schlüssel identifizierbar zu machen.
Ihr Name ("Vorname Nachname"): Biene Maja
Email-Adresse: [email protected]
Kommentar: Maja die Bummsebiene
Sie haben diese User-ID gewählt:
"Biene Maja <[email protected]>"
Ändern: (N)ame, (K)ommentar, (E)-Mail oder (F)ertig/(A)bbrechen? F
Sie benötigen eine Passphrase, um den geheimen Schlüssel zu schützen.
<<< NUN WIRD EUER PW ABGEFRAGT >>>
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.
gpg: Schlüssel 12345678 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: 2 signiert: 0 Vertrauen: 0-, 0q, 0n, 0m, 0f, 2u
pub 4096R/12345678 2013-12-04
Schl.-Fingerabdruck = 304B FA5C 4F17 DAE8 B1FA AA20 78FA 1FAE 6C1C 628A
uid Biene Maja <[email protected]>
sub 4096R/9ABCDEF0 2013-12-04
Abschließend schauen wir mal, ob alles geklappt hat (Auflisten der/des geheimen und öffentlichen Schlüssel im Schlüsselbund):
[willi@maja ~]$ gpg --list-secret-keys
/home/willi/.gnupg/secring.gpg
-----------------------------------
sec 4096R/12345678 2013-12-04
uid Biene Maja <[email protected]>
ssb 4096R/9ABCDEF0 2013-12-04
[willi@maja ~]$ gpg --list-keys
/home/willi/.gnupg/pubring.gpg
-----------------------------------
pub 4096R/12345678 2013-12-04
uid Biene Maja <[email protected]>
sub 4096R/9ABCDEF0 2013-12-04
Die Schlüssel ID ist hierbei entweder die Mailaddy oder der Vor+Nachname oder der 8-stellige Code (hier bspw.: 12345678) hinter der Schlüsselstärke (hier: 4096).
Abschließend noch ein kleiner Nachtrag. Nur weil ihr selber ein Schlüsselpaar erzeugt, heißt dies nicht, dass eure Identität damit bestätigt ist. Gesetzt dem Fall ihr ladet euren öffentlichen Schlüssel auf einen der Keyserver und macht ihn somit für jedermann sichtbar, wer bestätigt dann, dass ihr wirklich Biene Maja seid?
Die Lösung des Problems besteht in der Nutzung von Zertifizierungsstellen. Hier wird über einen eindeutigen Nachweis (Perso usw.) die Verbindung zu eurem Schlüssel hergestellt und dieser beglaubigt. Dafür müsst ihr noch nicht einmal Kohle aufwenden, denn beispielsweise der Heise Verlag bietet diesen Service kostenlos an [3].
Wo gehts weiter?
Teil 0x2 Hinzufügen einer weiteren Mail-Adresse
Teil 0x3 Ändern der primären UID
Quellen:
[2] http://www.ietf.org/rfc/rfc4880.txt
[3] http://www.heise.de/security/dienste/Krypto-Kampagne-2111.html