Alice schickt
y : = encB(decA(x)) an Bob.
Bob bildet
x : = encA(decB(y)) .
Sei f eine unumkehrbare Hashfunktion.
Alice bildet
z : = decA(f (x)) .
Alice schickt < x ,z > an Bob.
Bob vergleicht f (x) mit encA(z) .
Alice würfelt Schecknummer x und Ausblendfaktor r .
Alice schickt
s : = x · encBank(r) zur Bank.
Bank belastet Alice's Konto mit 1,-DM und schickt
z = decBank(s) zurück.
Alice erhält also
(x · r e)d mod
n = (x d · r) mod n .
Alice bildet z/r und verfügt nun über
y : = x d mod
n = decBank(x) .
Alice präsentiert y dem Kaufmann.
Der Kaufmann verifiziert y durch
encBank(y) .
Der Kaufmann schickt y an die Bank.
Die Bank trägt
encBank(y) in die Liste der verbrauchten Schecks ein.
Die Bank schreibt dem Kaufmann 1,- DM gut.
Der Kaufmann schickt die Ware an Alice.
Bob erzeugt selbst sein Schlüsselpaar encB und decB .
Bob besorgt sich persönlich von einem Zertifizierungscenter Z
dessen öffentlichen Schlüssel encZ
und ein Zertifikat
z : = decZ(encB) .
Bob schickt z an Alice.
Alice bildet encZ(z) und erhält somit encB .
Alice kann nun sicher sein, Bob's öffentlichen Schlüssel vor sich zu haben.