IMHO - in my humble opinion -
Mein Blog zum Thema Privatsphäre, Internet und Humor.

++ Pretty Good Privacy (PGP) ++
 

PGP - darum gehts
Das erste Programm, das es erlaubte, mittels Public-Key-Verschlüsselung auf einem sicheren Weg Daten auszutauschen hiess PGP, wurde im Jahr 1991 publiziert, und existiert heute noch. Es wurde einzig um verschiedene Zusatzfunktionen ergänzt. Neben dem Schutz der Meinungsfreiheit wurde unterdessen also auch dem Komfort die nötige Beachtung geschenkt.

Die theoretische Grundlage
PGP baut darauf, dass es unmöglich ist, innert nützlicher Frist eine grosse Zahl in die Primfaktoren zu zerlegen. Die Primfaktorenzerlegung ist ein mathematisch ungelöstes Problem - und hoffentlich bleibt das auch in Zukunft so.

Primfaktorenzerlegung
Die Primfaktoren von 12 sind 2x2x3=12 (4x3 wäre falsch, weil 4 keine Primzahl ist). Das ganze tönt einfach, aber wenn der Schlüssel 64 Bits hat, dann bedeutet dies, dass man die Zahl 2 hoch 64, also: 18'446'744'073'709'551'616 in ihre Teiler zerlegen muss. Wenn wir ein Bit dazu geben, verdoppelt sich die Zahl. Geben wir nochmals 63 Bits dazu, sind wir bei der Sicherheitsstufe angelangt, die beim Aufrufen einer sicheren Seite (z.B. für Kreditkartenzahlungen) normalerweise zum Zug kommt: 128 Bit-Verschlüsselung.

128-Bit-Verschlüsselung
(2 hoch 128) ergibt (3.4x10 hoch 38), im Jahr 1996 ging man davon aus, dass bei einer Geschwindigkeit von 1'000'000 Schlüssel pro Sekunde alle Schlüssel durchprobiert werden, dann benötigt man 5.4x10 hoch 18 Jahre um alle Schlüssel durchzuprobieren.

Mein PGP-Schlüssel hat übrigens 4'096 Bits, ich kann mir noch nicht einmal vorstellen, wieviele Stellen die Zahl 2 hoch 4'096 hat.

Vor zehn Jahren wurde ein 1'024-Bit-Schlüssel noch als "military grade" eingeschätzt, auch wenn man davon ausgeht, dass sich die Arbeitsgeschwindigkeit der Computer laufend steigert, müssen solche Schlüssel immer noch als sehr sicher gelten. Der Sprung von 1'024 auf 4'096 ist übrigens nicht Faktor vier, denn 1024 Bits x 4 ergibt 1026 Bits (!!).

Public-Key-Encryption
Public Key-Verschlüsselung bedeutet, dass es für jeden Benutzer zwei Schlüssel gibt: einen öffentlichen und eine privaten. Der öffentliche Schlüssel kann ins Internet gestellt oder sonstwie allgemein zugänglich gemacht werden. Jede(r) kann sich den öffentlichen Schlüssel eines Gesprächspartners nehmen und damit eine Meldung verschlüsseln. Die Entschlüsselung bringt nur der Empfänger zustande, weil nur er den das passende Gegenstück zum öffentlichen Schlüssel besitzt, den privaten Schlüssel (Private Key).

So würde es mechanisch funktionieren
Man kann sich das in etwa so vorstellen:

1. ich kaufe mir ein sicheres Schloss
2. den Schlüssel behalte ich
3. das Schloss hänge ich an das Anschlagsbrett im Einkaufszentrum
4. jeder der Lust hat, mir etwas vertrauliches zu senden, kann sich das Schloss ausleihen, die Nachricht in eine kleine Box stecken und diese mit dem Schloss sicher verschliessen
5. nur ich kann die Box anschliessend wieder öffnen

Praktische Probleme
Wie weiss der Absender, dass es sich wirklich um mein Schloss handelt? Vielleicht hat unterdessen jemand mein Schloss vom Anschlagbrett genommen und seines dort hingehängt. Jetzt kann ich die Meldung nicht öffnen, aber der Bösewicht kann es.

Deshalb hat jedes Schloss (jeder öffentliche Schlüssel) eine Prüfsumme, meine Prüfsumme lautet z.B. "B0B5 082A 2E78 D9C1 1127 FE65 573B 262F 8F45 520F". Anhand dieser Prüfsumme kann man - z.B. per Telefon - überprüfen, ob es wirklich mein Schloss ist. Ich kann die Prüfsumme auch auf meine Visitenkarte drucken und jeder dem ich persönlich eine Visitenkarte überreiche, kann sicher sein, dass die Prüfsumme stimmt und kann deshalb auch das Schloss prüfen.

Praktische Anwendung
Die Public-Key-Verschlüsselung wird heute einerseits beim e-mail-Verkehr verwendet, andererseits auch zur Absicherung des Datenverkehrs zwischen einem Webserver und einem Browser (https://....), z.B. bei Onlineshops.

Digitale Unterschrift
Da sich - im Gegensatz zum obigen "mechanischen" Beispiel - diese Prozesse auch umkehren lassen, indem eine Nachricht mit dem privaten Schlüssel unterzeichnet wird und die Unterschrift anschliessend von jedem Benutzer mittels dem öffentlichen Schlüssel geprüft werden kann, haben sich die Anwendungsmöglichkeiten verfielfacht.

Die digitale Unterschrift ermöglicht es Zertifikate herauszugeben und beispielsweise die Identität einer Person, eines Programmteils oder eines Webservers zu prüfen. Microsoft nützt diese digitale Signierung beispielsweise um Gerätetreiber digital zu unterschreiben und damit die geprüften Treiber zu zuertifizieren.

Ein Zertifikat kann aber auch bestätigen, dass der von mir angewählte Webserver auch tatsächlich der Firma gehört, die ich angewählt habe.

Dazu kommen noch viele weitere Anwendungen.

Vertrauensnetzwerk
Beispielsweise kann ich mit meinem privaten Schlüssel einen öffentlichen Schlüssel einer mir bekannten Person unterzeichnen. Jeder der mich kennt und sicher ist, dass er über meinen öffentlichen Schlüssel verfügt, kann dann auch dem öffentlichen Schlüssel vertrauen, den ich unterschrieben habe.

Auf diese Weise kommt PGP ohne eine zentrale Schlüsselausgabestelle aus. Es entsteht ein Netz von Vertrauen.

PKI
Trotzdem sollte es eine sogenannte PKI geben, also eine Public Key Infrastructure. Beispielsweise sollte der Bund eine Zertifizierungsstelle (CA) einrichten, die dann an die Bundesämter und die einzelnen Kantone je ein Zertifikat herausgibt. Diese wiederum können beispielsweise den Gemeinden ein Zertifikat geben, welche wiederum ihren Einwohnern ein Zertifikat geben. Dadurch wird eine elektronische Unterschrift möglich, wobei jeder nur das Zertifika des Bundes prüfen muss, der Rest ist hierarchisch angeordnet und ergibt sich aus dem Vertrauensnetzwerk.

Wenn also Adam aus Adorf TG an Bob aus Bubikon ZH eine e-mail schreibt und diese mit Hilfe seines Zertifikates unterzeichnet, kann die Unterschrift der Gemeinde Aadorf auf diesem Zertifikat mit Hilfe der Unterschrift geprüft werden, die der Kanton auf dem Zertifikat der Gemeinde angebracht hat. Die Unterschrift des Kantons Thurgau wiederum kann mit der Unterschrift des Bundes, die auf dem Zertifikat des Kantons prangt geprüft werden.

Das ist die beste Möglichkeit um sicherzustellen, dass sich niemand als jemand anders ausgibt - was heute im Internet keine grosse Sache ist.

Der Bund versucht es - laut Artikel auf Seite 51 im Tages-Anzeiger vom 4. August 2004 - mit etwas anderem: ein einheitliches Logo muss her.

Es ist schon enttäuschend, dass der Bund anscheinend glaubt, dass eine farbige Grafikdatei zu mehr Sicherheit führt. Dabei würde es die technischen Möglichkeiten bereits geben, eine Infrastruktur aufzubauen, die dann tatsächlich auch Sicherheit bietet.

Signed by root
Mein Highlight des Tages war auf jeden Fall der Anruf aus Kalifornien: Phil Zimmermann, der Erfinder und geistige Kopf von PGP hat mich angerufen um meinen Public Key zu telefonisch zu kontrollieren um ihn anschliessend als vertrauenswürdig zu unterzeichnen.

*DAS* nenne ich einen vertrauenswürdigen Public Key!

Ausserdem haben wir noch über dieses und jenes geplaudert, dabei hat er mir empfohlen Fahrenheit 9/11 schauen zu gehen. Wir waren uns aber darüber einig, dass Michael Moore ein gefährliches Spiel treibt, wenn er den Wahrheitsbegriff immer mehr dehnt.

PS:
Zum Schluss noch eine Präzisierung für die Kenner unter euch: Die von PGP angewandte asymetrische Verschlüsselung wird nur angewandt um den Wegwerfschlüssel zu sichern, mit dem die Daten per symmetrischem Verschlüsselungsverfahren (TripleDES/IDEA/AES/...) verschlüsselt worden sind.

posted by Kaspar on www.imho.ch | direkter Link: Samstag, August 07, 2004 top
        
Frage an Radio Eriwan:

menu of the day
this menu was engineered by ober@zwerg.li
archives

PicoSearch
links
links
Site Page Rank

blog the blog - weBlog & zwerg.li