::Tips & Tricks / Web, Mail & News / PGP/GnuPG / 1 Einführung Seite drucken
  der verein   projekte   veranstaltungen   hilfestellung   tips & tricks   fun   
 
  
  grundsätzliches
  
  fenstermanager
  
  WEB, MAIL & NEWS
 mozilla drucker
 firefox optimieren
 pgp/gnupg
 newssystem mit linux
  
  multimedia
  
  novell/suse
  
  gentoo
  
  verschiedenes
  
  links


home
sitemap
suche
login
hilfeforum
impressum



Finde uns auf:
 

1.1 Die Geschichte von PGP und OpenPGP

Ein gewisser Philip R. Zimmermann entwickelte PGP (Pretty Good Privacy) Anfang der neunziger Jahre, nachdem im US-Senat eine Beschlussvorlage einging, dass in jede Verschlüsselungssoftware oder Hardware eine Hintertür eingebaut werden sollte, so das der Staat mitlesen kann. Seit 1991 sind verschiedene Versionen verfügbar. Die ersten Versionen waren illegal (zumindest in den USA) benutzbar, da sie US-Patentrechte für Public-Key-Cryptography verletzten. Darüber hinaus gelten für alle US-Versionen US-Exporteinschränkungen; die Programme dürfen also nicht ausgeführt werden.

 

Erst seit 1994 dürfen US-Bürger PGP für den privaten Gebrauch frei benutzen, während bei einem kommerziellen Einsatz eine Lizenz von der Firma ViaCrypt erworben werden muss.

 

Um damals in Europa eine internationale Version von PGP 2.6 entwickeln zu können, und dabei die Exportbeschränkungen zu umgehen,hat man den Code gedruckt und als Buch verkauft. Diese Version durfte aber nicht in den USA benutzt werden. Zum Glück sind beide Versionen kompatibel.

 

Dies gilt in den Grundzügen auch noch heute, jedoch ist es nicht mehr illegal, doch dennoch verwendet PGP patentierte RSA Algorithmen zur Verschlüsselung. Aber es gibt einen Ausweg, denn das OpenPGP Projekt hat einen mittlerweile komplett mit PGP 7.0 kompatiblen, nicht patentierten Algorithmus entwickelt, der es jedermann ermöglicht ohne an Lizensbedingungen zu denken PGP zu nutzen, ob privat oder kommerziell. Dies ist wohl auch Zimmermann zu verdanken, der die OpenPGP Alliance im Januar 2001 gründete.

 


1.2 Wie Funktioniert PGP ?

Nun OpenPGP ist eine asymmetrische Verschlüsselung, das heisst, das nicht Sender und Empfänger den gleichen Schlüssel brauchen, um die Nachricht zu Verschlüsseln bzw. Entschlüsseln.

 

Ein symmetrisches Verschlüsselungsverfahren setzt voraus, dass Sender und Empfänger ein gewisses Codewort verwenden, und wenn 3 Leute miteinander verschlüsselt kommunizieren wollen werden bereits 3 verschiedene Codeworte gebraucht, bei 4 – 6, bei 10 bereits 45 und bei 100 Personen würden schliesslich 4950 Codeworte gebraucht werden. ( a=(n-1)/2*n für die Mathe Entosiasten unter euch ;-) ) (man müsste also praktisch unter jeder Verschlüsselten E-Mail das Passwort in Klartext schreiben)

 

Da dies nicht wirklich eine sinnvolle Anwendung bei so vielen Personen ist, hat man die asymmetrische Verschlüsselung entwickelt. Dieses Prinzip teil den Schlüssel in 2 Teile, dem privaten Schlüssel der bei PGP zum Signieren und Entschlüsseln verwendet wird und der öffentliche Schlüssel, mit dem eine Signatur überprüft wird, bzw Daten verschlüsselt werden. Dabei ist zu beachten, dass Daten die mit einem öffentlichen Schlüssel verschlüsselt wurden NUR mit dem DAZUGEHÖRIGEN privatem Schlüssel wieder entschlüsselt werden können. Das heisst aber auch, das derjenige der Daten mit einem öffentlichen Schlüssel einer anderen Person verschlüsselt, diese Daten unter keinen Umständen wieder entschlüsseln kann.

 

Aus diesem Grund es es ratsam, die Daten zusätzlich nochmal mit seinem eigenen öffentlichen zu verschlüsseln, um die Daten später evtl nochmal entschlüsseln zu können. Hier ermöglicht PGP auch Daten für mehrere Empfänger zu verschlüsseln ( mit mehreren öffentlichen schlüsseln ). Da dadurch ja sämtliche Daten mehrfach verschlüsselt werden müsste ( für jedem Empfänger ein mal), hat man sich einen kleinen Trick ausgedacht, den die Datei wird nicht wirklich mit dem öffentlichen Schlüssel verschlüsselt, sondern es wird ein Temporärer Schlüssel erzeugt, mit dem die Daten verschlüsselt werden. Dieser muss aber mitgesendet werden, damit der/die Empfänger überhaupt die Daten entschlüsselt können, und daher wird nur der Schlüssel mehrfach mit den entsprechenden öffentlichen Schlüsseln der Empfänger verschlüsselt und an die verschlüsselte Datei angehängt. ( wer genaueres wissen will, der sollte sich mal die RFC2440 mal genauer angucken :-) )


1.3 Das Web of Trust

Bei jedem Public Key (öffentlicher Schlüssel) Verfahren ist die Authentizität (Echtheit) der Public Keys ein Problem. Ein kleines Beispiel: Bob erhält von Carol eine elektronisch unterschriebene Mail. Um die Unterschrift zu prüfen, braucht Bob Carols öffentlichen Schlüssel.

 

Eine Mail an pgp-public-keys@keys.ch.pgp.net mit dem Subject GET carol@error-42.de liefert ihm ihren public key. Aber ist das wirklich ihr public key? Mallory könnte einen Key mit dem Namen Carol erzeugt und auf dem Keyserver deponiert haben.

 

Bob muss nun die Echtheit dieses public keys überprüfen. Dazu hat Bob verschiedene Möglichkeiten, z.B:

 

- Bob sucht im öffentlichen Telefonbuch nach Carols Telefonnummer, ruft sie an und läßt sich von ihr ihre Schlüsseldaten geben. Bob geht bei Carol vorbei, läßt sich ihren Ausweis zeigen und die Schlüsseldaten geben.

 

- Bob schaut, ob er jemanden kennt, der ihre Identität elektronisch bestätigt.

 

Die ersten beiden Möglichkeiten sind aufwendig und zum Teil undurchführbar (wenn der Key z.B. einer Person weit weg gehört). Die Dritte ist dagegen relativ einfach.

 

- Jeder Schlüssel ist in genau einer Vertrauenstufe. Hat ein Schlüssel einen anderen Schlüssel signiert, wird anhand der Vertrauensstufe bestimmt, ob der signierte Schlüssel als gültig anerkannt wird. Es gibt drei Stufen des Vertrauens, die man Schlüsseln von anderen Leuten entgegenbringen kann:

 

- Vollständiges Vertrauen

- Teilweises Vertrauen

- Mißtrauen

 

Um das ganze etwas verwirrender zu machen, gibt es auch noch 3 Stufen der Gültigkeit:

 

- gültig

- Teilweise gültig

- Ungültig

 

Als Beispiel:

Bobs Schlüsselring enthält Alices Schlüssel. Bob hat Alices Schlüssel für gültig befunden und dies dadurch bestätigt, daß er Alices Schlüssel unterschreibt. Bob weiß, daß Alice sehr gründlich vorgeht, wenn sie die Schlüssel anderer Leute unterschreibt. Deswegen stattet Bob Alices Schlüssel mit vollständigem Vertrauen aus. Wenn Alice jetzt einen anderen Schlüssel signiert, ist dieser in Bobs Schlüsselring gültig.

 

PGP verlangt einen komplett oder zwei teilweise vertrauenswürdige Schlüssel, um einen Schlüssel als gültig zu akzeptieren.

 

Aus diesen verschiedenen Schlüsseln baut sich nun ein Netzwerk auf das sogenannte „Web of Trust“. Da es in diesem Netz nicht zwingend Instanzen geben muß, die eine große Menge von Schlüssel unterschreiben, kann der Weg von einem Schlüssel zum nächsten so weit sein, das man keine Möglichkeit findet, einen Schlüssel zu überprüfen.