GPG
Aus Palita
Dieser Artikel bietet dir eine kurze Einführung und Anleitung in die Verschlüsselungstechnik GPG (Gnu Privacy Guard), welches den OpenPGP-Standard (PGP = Pretty good Privacy) ersetzt.
Schlicht erklärt kannst du mit GPG Daten verschlüsseln, also z.B. Text, Dateien, Bilder, E-Mails etc.
Auf technischer Ebene wird dafür sowohl ein privater, als auch ein öffentlicher Schlüssel verwendet, es handelt sich also um ein asymetrisches Verschlüsselungsverfahren. Dieser Schlüssel ist sowas wie eine (teils zufällig, teils mit einem speziellen Algorithmus generierte) Folge von Klein- & Großbuchstaben, Ziffern und Zeichen - fast alles, was eine Tastatur zu bieten hat. Dieser Schlüssel hat eine Größe von (durchschnittlich) 1024 Bits, also 1 Kibibyte (es sind auch kleinere bzw. größere Schlüsseldateien möglich, 1024 ist ein guter Mittelwert für Performance und Sicherheit).
Im weiteren kannst du entweder Hier ein paar Informationen zu GPG lesen, oder direkt zum Wesentlichen kommen und dir durchlesen, wie du die Verschlüsselungstechnologie für den Alltag benutzt (und installierst, konfigurierst etc.).
Inhaltsverzeichnis |
Anleitungen
- Windows-NutzerInnen lesen hier: GPG/Windows,
- Linux-NutzerInnen lesen hier: GPG/Linux,
- Mac-NutzerInnen lesen hier: GPG/Mac,
- Terminal-NutzerInnen lesen hier: GPG/Terminal (Betriebssystemunabhängig)
um eine Anleitung zum Installieren und Benutzen zu bekommen.
Zur Geschichte
GnuPG stammt ja wie beschrieben von PGP ab und kann PGP ersetzen. Warum man nun GnuPG benutzt, hat den Grund, dass es wegen US-Exportbeschränkungen bei Verbreitung starker Kryptographie nicht wirklich möglich ist, den Programmcode für nicht US-Länder offenzulegen (und du vertraust selbstverständlich keinen Programmen, vor allem sicherheitsrelevanten Programmen, von denen du nicht weißt, was sie genau tun.[1]). Also hat man einfach einen Klon von PGP - nämlich GPG - geschrieben, der außerhalb der USA entwickelt wird.
Zur Funktion
Die nachfolgenden Absätze enthalten detailliertere Informationen zu GPG. Diese musst du dir nicht zwingend durchlesen, um eine grobes Verständnis für GPG zu erlangen.
Da GnuPG (fast) kompatibel zu PGP ist, hat es auch die gleichen Funktionen, natürlich unter anderem das Verschlüsseln und Entschlüsseln von Nachrichten.
Grundsätzlich gibt es zwei unterschiedliche Arten der Verschlüsselung; die symmetrische und die asymmetrische.
Symmetrische Verschlüsselung
Bei der symmetrischen Verschlüsselung benutzen beide TeilnehmerInnen (Sender und Empfänger) den selben geheimen Schlüssel. Ein besonders einfaches Beispiel für einen symmetrischen Schlüssel ist die Verschiebung des Alphabets (dabei handelt es sich um einen einfachen Substitutionsschlüssel). Jeder Buchstabe im Alphabet wird dabei durch einen anderen Buchstaben durch Verschiebung ersetzt (zum Beispiel A durch D, B durch E, C durch F usw.). Der geheime Schlüssel ist in diesem Fall das Wissen darum, um wie viele Buchstaben verschoben werden soll. Symmetrische Verschlüsselung eignet sich nicht, wenn sich die Kommunikationspartner nicht oder nicht gut kennen, oder wenn sie keine Möglichkeit haben, persönlich Kontakt aufzunehmen. Denn damit überhaupt eine gesicherte Kommunikation zustande kommen kann, müssen ja zunächst die Schlüssel ausgetauscht werden. Und damit dies sicher ist, müsste man die Schlüssel zunächst verschlüsseln. Die Katze beißt sich in den Schwanz.
Asymmetrische Verschlüsselung
Asymmetrische Verfahren funktionieren etwas anders. Wie der Name schon andeutet, werden hier für das Senden und das Empfangen unterschiedliche Schlüssel verwendet, die allerdings zusammenhängen. Asymmetrische Verfahren sind gewissermaßen Einbahnstraßen, die nur in einer Richtung funktionieren.
Jede TeilnehmerIn muss für den Empfang von Nachrichten ein sogenanntes Schlüsselpaar besitzen, das aus einem öffentlichen und einem geheimen Schlüssel besteht. Um die folgenden Beschreibungen deutlicher zu machen, nehmen wir zwei Personen an, die sich Nachrichten schicken wollen: Birgit und Alex. Weiter nehmen wir an, dass Alex Nachrichten an Birgit senden will.
Der öffentliche Schlüssel wird für das Verschlüsseln von Nachrichten benutzt und ist allen TeilnehmerInnen bekannt, die an die SchlüsselbesitzerIn (in diesem Fall also Birgit) Nachrichten senden wollen (also auch Alex). Wenn Birgit möchte, kann sie diesen Schlüssel auf ihrer eigenen Webseite ausstellen, per Email verschicken oder auf extra dafür vorgesehenen Servern ablegen. Um nun eine derart verschlüsselte Nachrichten wieder entschlüsseln zu können, benötigt Birgit einen zweiten, den geheimen Schlüssel. Dieser ist ausschließlich der EmpfängerIn der Nachricht bekannt und darf niemals in falsche Hände geraten.
Mit dem geheimen Schlüssel ist es Birgit außerdem möglich eine Signatur für die von ihr verschickten Nachrichten zu erstellen. Diese Signatur kann Alex mit dem öffentlichen Schlüssel überprüfen, und so feststellen, dass die Nachricht auch wirklich von Birgit kommt.
Nun kommt GnuPG ins Spiel. Neben dem Ver- und Entschlüsseln von Nachrichten dient das Programm dazu, alle für eine erfolgreiche Kommunikation benötigten Schlüssel zu verwalten. Man kann mit GnuPG neue Schlüssel hinzufügen, nicht mehr benötigte entfernen und sich alle Informationen zu den einzelnen Schlüsseln anzeigen lassen. Schließlich kann man mit GnuPG natürlich neue Schlüsselpaare erzeugen. Nebenbei bemerkt (weil man immer wieder auf diese Begriffe stößt) verwaltet GnuPG die Daten in sogenannten Schlüsselbunden (unterteilt in geheime und öffentliche). In der Regel muss man sich darum aber nicht kümmern, wenn man nicht mehrere solcher Schlüsselbunde verwenden möchte.
- ^ Artikel über OpenSource