[wilhelmtux-discussion] Digitale Signatur:Begrenzte Haltbarkeit

Dietrich Feist dietrich.feist at mw.iap.unibe.ch
Don Jun 26 19:02:00 CEST 2003


Hallo Tobias,

> scheinbar aber doch. wie kann ich beweisen, dass der key wirklich 
> damals gültig war und ich nix manipuliert habe?

Ok, wegen Zeitmangel hier nur ganz stichwortartig. Das ist hier ja keine
Liste über Kryptographie:

A und B besitzen ein von beiden elektronisch signiertes Dokument, das
nach einiger Zeit in einem Rechsstreit als Beweismittel herhalten soll.
Inzwischen sind aber die damals verwendeten Zertifikate abgelaufen.
Trotzdem können Sie das überprüfen, denn

- A und B haben jeweils mit dem Dokument D eine Kopie der öffentlichen
  Schlüssel aller Zertifikate archiviert, die bei der Unterzeichnung
  im Spiel waren:

  - ZA (Zertifikat von A)
  - CAA (Zertifikat der authorisierten Zertifizierungsstelle für ZA)
  - ZB (Zertifikat von B)
  - CAB (Zertifikat der authorisierten Zertifizierungsstelle für ZB)

Damit kann jeder vor Gericht beweisen, dass er eine unveränderte Kopie
von D besitzt. Wichtige Informationen über das Dokument, wie etwa das
Datum der Unterschrift etc. sind ebenfalls mit ZA und ZB signiert und
damit nicht fälschbar.

Jetzt sind natürlich sowohl ZA als auch ZB inzwischen abgelaufen. Was
heisst das? Mit einem abgelaufenen Zertifikat kann man keine neuen
Unterschriften generieren, so lange man nicht das Datum am Rechner
zurückstellt (und das liesse sich z.B. mit einem ewigen Logfile auch
noch verhindern). Es ist aber problemlos lesbar und vernichtet sich
nicht etwa selbst wie die Bänder bei Mission Impossible. Trotzdem hätte
keiner von beiden Teilnehmern die Möglichkeit gehabt, mit irgendwelchen
Tricks eine veränderte Kopie von D zu produzieren. Dazu hätte er nämlich
auch noch den geheimen Schlüssel der anderen Partei gebraucht.

Woher wissen wir nun, dass ZA und ZB zum Zeitpunkt der Unterschrift
gültig waren? Ganz einfach: die Gültigkeitsdauer der Zertifikate ZA und
ZB wurde bei ihrer Erstellung bereits eingetragen und mit Hilfe von CAA
und CAB bestätigt. Dadurch kann auch keiner der Teilnehmer an der
Gültigkeitsdauer seines Zertifikats manipulieren. Die Besitzer von CAA
und CAB sind per Gesetz (zumindest in Deutschland) dazu verpflichtet,
gewisse Zertifizierungsregeln einzuhalten und für die Richtigkeit der
Angaben in den Zertifikaten einzustehen. Von daher kann man auch
nachweisen, ob ZA und ZB zum Zeitpunkt der Unterzeichnung gültig waren.

Wenn A behauptet, es hätte sein Zertifikat ZA vor der Unterzeichnung
bereits zurückgezogen. Um das zu beweisen, müsste es ein - ebenfalls von
CAA signiertes und datiertes Revocation-Zertifikat RA geben. Dann
bleiben zwei mögliche Fälle:

1. A hat D mit ZA unterzeichnet, obwohl es vorher bereits ZA
   zurückgezogen und damit für ungültig erklärt hat. Zum Beweis legt
   es RA vor. Ich bin kein Jurist, aber für mich klingt das wie
   Urkundenfälschung, arglistige Täuschung oder Betrug (wenn B dadurch
   ein Schaden entstanden ist).

2. A behauptet zwar, ZA vorher zurückgezogen zu haben, kann aber RA
   nicht vorweisen bzw. das Datum von RA ist später als die Unter-
   zeichnung von D. In diesem Fall ist das für D ohne Belang.

Kompliziertere Fälle mit gestohlenen Zertifikaten etc. und ihren
juristischen Folgen überlasse ich den Juristen.

> gibt's eigentlich irgendwo verständliche literatur zum thema wie 
> diese keys funktionnieren? ich war bis heute der meinung das 
> verstanden zu haben, aber du hast mich ja eines besseren belehrt...

Schneier, Bruce: Applied cryptography
Menezes, Alfred J.: Handbook of applied cryptography
Mollin, R. A.: Introduction to Cryptography

Das Buch on Menezes ist eher was für Mathematiker, zumindest sollte man
keine Angst vor Formeln haben Wer mehr über die Theorie wissen will,
kommt am besten zu meinem Vortrag bei der LugBE am 17.7.in Bern. 

Viele Grüsse,

Dietrich