Angenommen, Alice und Bob möchten einen Vertrag über das Internet abschliessen. Beide setzen hierzu ihre digitalen Signaturen unter den
Vertragstext und sollten nun eigentlich die signierten Kopien austauschen. Beide scheuen aber das Risko, die eigene Kopie zuerst
abzuschicken -- die andere Partei könnte dann ja einfach ihre Unterschrift zurückhalten und damit alleine entscheiden, ob und wann
der Vertrag gelten soll.
Dieses Problem wird durch sogenannte ''faire`` Vertragsabschlussprotokolle gelöst: diese stellen sicher, dass entweder Alice und Bob
einen gültigen Vertrag erhalten, oder keine/r von beiden.
Wir stellen ein faires, effizientes und beweisbar sicheres Protokoll zum Vertragsabschluss vor, das im Gegensatz zu allen früheren
Protokollen auch auf asynchronen Netzen funktioniert. Unser Protokoll ist optimistisch, d.h. es benötigt eine dritte Partei, aber nur
für die Fälle, in denen eine der beiden Vertragsparteien versucht, die andere zu betrügen. (Protokolle ganz ohne dritte Partei haben
notwendigerweise eine relativ grosse Fehlerwahrscheinlichkeit, d.h. sind für praktische Belange untauglich.)
Durch eine Variante von überprüfbarer Verschlüsselung (verifiable encryption) erreichen wir, dass der Vertragsabschluss
für die Anwendung transparent stattfindet: es können zwei beliebige, vorgegebene digitale Signaturen ausgetauscht werden, etwa
zwei DSS Signaturen.
Nach demselben Prinzip lassen sich auch andere Austauschprobleme fair und effizient lösen, z.B. Certified Mail (Nachricht gegen
Quittung). Ein Prototyp für Vertragsabschluss und Certified Mail wird derzeit am IBM Forschungslaboratorium Zürich entwickelt.