-
Technisches
Gebiet
-
Die
vorliegende Erfindung betrifft ein Zahlungsverfahren in einer Datenübertragungsanordnung
und eine Vorrichtung zur Durchführung
dieses Verfahrens.
-
Stand der
Technik
-
In
einer Datenübertragungsanordnung
muss ein Benutzer die von einem Anwendungsserver geleisteten Dienstleistungen
bezahlen. Undifferenzierte Abonnementmodelle sind zu sehr vereinfacht,
um in dieser Hinsicht zufrieden stellend zu sein und können nicht
den Wert der Daten wiedergeben, die einem Benutzer für eine bestimmte
Transaktion geliefert werden. Ferner ist die Tatsache, dass ein
Benutzer bei jedem Server, den er anwählt, ein Abonnement abschließen muss,
der Spontaneität
seiner Käufe nicht
gerade förderlich.
-
Aufgrund
der geringen Preise der im Allgemeinen angebotenen Dienstleistungen
sollte aber die Zahlungsinfrastruktur nicht zu kostspielig sein.
Somit kommen Lösungen,
in denen der Server seinem Benutzer direkt seine Dienstleistungen
in Rechnung stellt (herkömmliche
Zahlungsweise oder elektronische Zahlung), nicht in Frage. Daher
das Interesse an den „Zahlungsservern" oder „Kioskservern", an die die Anwendungsserver
die Zahlungsabwicklung und die Einholung der offenen Beträge vergeben. Durch
diese Art von Lösungen
kann ein Benutzer sich mit einem Anwendungsserver verbinden, ohne dass
er zuvor für
diesen ein Abonnement abgeschlossen hätte, wobei der Benutzer auch
seine Anonymität
gegenüber
diesem Server bewahrt: der Anwendungsserver braucht keine Informationen über die
Identität
des Benutzers mehr.
-
Ein
Beispiel für
einen Kioskserver ist insbesondere das Minitel (eingetragenes Warenzeichen) und
die Rufnummern 3615 und 3614. Der Kioskserver wird dann im Zeitbetrieb
betrieben: der Kioskserver multipliziert die Dauer der Verbindung
Benutzer/Server mit dem Stufensatz und berechnet dem Benutzer die
so ermittelte Summe.
-
Um
eine größere Flexibilität zu erzielen,
kann die Ermittlung des Betrages nach dem wert der Information definiert
werden, die der Anwendungsserver dem Benutzer geliefert hat. Um
die Zustimmung des Benutzers einzuholen, wird dann in folgender
weise vorgegangen:
- – der Anwendungsserver verlangt
von dem Benutzer einen bestimmten Betrag;
- – ist
der Benutzer einverstanden, so gibt er dem Kioskserver den Auftrag,
diesen Betrag dem Anwendungsserver zu zahlen;
- – der
Kioskserver bucht diesen Betrag vom Konto des Benutzers ab und schreibt
diesen auf das Konto des Anwendungsservers gut;
- – der
Kioskserver sendet dem Anwendungsserver eine Zahlungsbestätigung,
entweder unmittelbar oder über
den Benutzer.
-
Dieser
Zahlungsansatz jedoch wirft das Problem der Anonymität gegenüber dem
Kioskserver auf, der, aufgrund seiner Funktionen, alle Gepflogenheiten
und Gewohnheiten der Benutzer kennt. Auch wenn der Kioskserver von
einer institutionellen Organisation betrieben wird, so besteht doch
das Problem der nicht bewahrten Anonymität und somit eines Eingriffs
in das Privatleben einer Person.
-
Eine
Schrift aus dem Stand der Technik mit dem Titel „Untraceable Electronic Cash" von David Chaum,
Amos Fiat und Moni Naor (Proceedings of Crypto '88, Lecture Notes in Computer Science,
volume 403, Springer Verlag, Seiten 319 bis 327) betrifft eine Lösung für eine anonyme
Zahlungsweise.
-
Das
Prinzip dieser Zahlung ist folgendes:
- – ein Benutzer
kauft bei seiner Bank elektronisches Geld;
- – dieser
Benutzer gibt dieses Geld bei Händlern aus;
- – jeder
Händler
wird von der Bank ausgezahlt.
-
Im
Einzelnen können
diese Geschäfte
auf folgende Weise beschrieben werden: das Wort „Münze" bezeichnet von der Bank ausgegebene
Daten, die eine elektronische Signatur umfassen und einen festgelegten
Wert haben (zum Beispiel von 1 Franc).
-
Die
Ladung erfolgt so:
- 1 – der
Benutzer bittet die Bank um eine 1 Franc-Münze.
- 2 – die
Bank bucht diesen 1 Franc von dem Konto des Benutzers ab und schickt
diese Münze
dem Benutzer.
-
Diese
beiden Schritte können
mehrmals wiederholt werden, wenn mehrere Münzen benötigt werden.
-
Die
Zahlung erfolgt dann so:
- 3 – der Händler verlangt vom Benutzer
m Euro.
- 4 – der
Benutzer schickt dem Händler
m Münzen.
- 5 – der
Händler überprüft die Münzen und
speichert diese.
-
Zu
einem späteren
Zeitpunkt erfolgt die Auszahlung auf folgende Weise:
- 6 – der Händler übersendet
der Bank die gespeicherten Münzen;
- 7 – die
Bank überprüft die Münzen, addiert
die Beträge
und zahlt den Händler
aus.
-
In
dieser Schrift aus dem Stand der Technik werden für die Zahlung
zwei Möglichkeiten
beschrieben:
Für
die Zahlung werden in dieser Schrift aus dem Stand der Technik zwei
Fälle beschrieben:
- – eine „Off-Line"-Zahlung: der Händler und
der Benutzer sind während
der Geschäftsabwicklung nicht
mit der Bank verbunden. Zur Erläuterung
der Art und Weise, in der der Händler
sich vergewissern kann, dass die elektronische Münze vom Benutzer nicht bereits
benutzt wurde oder vom Händler
vervielfältigt
wurde, werden zwei Verfahren vorgeschlagen:
- • eine
Münze ist
nur einmal verwendbar; wird diese mehrmals verwendet, so wird bei
der Auszahlung eine Information preisgegeben, die es der Bank ermöglicht,
den betrügerischen
Benutzer zu identifizieren; dies wird durch eine besondere Struktur
der Daten in der elektronischen Münze ermöglicht und setzt voraus, dass
die Bank alle bereits ausgezahlten Münzen aufbewahrt,
- • um
eine physische Sicherheit zu erzielen, verwendet der Benutzer eine
Chipkarte, einen unfälschbaren
Gegenstand, dessen Verhalten von dem Benutzer nicht geändert werden
kann, und der die gleiche Münze
niemals wieder verwendet;
- – eine „On-Line"-Zahlung: bei der
Geschäftsabwicklung
zwischen dem Händler
und dem Benutzer nimmt der Händler
bei 5 Kontakt mit der Bank auf, um sich zu vergewissern, dass die
ihm übermittelte
Münze noch
nicht verwendet wurde. Auch hier muss die Bank alle bereits ausgezahlten Münzen behalten.
-
Zunächst haben
die Transaktionen einen unbekannten Wert, so dass die Bank dem Benutzer Münzen gibt,
die einen vorbestimmten Betrag darstellen, und es dem Benutzer obliegt,
die erforderliche Anzahl zu verwenden, um den Händler zu bezahlen. Eine derartige
Vorgehensweise ist also umständlich
und es besteht das Problem, dass nicht immer der passende Betrag übermittelt
werden kann.
-
Diese
Lösung
ist also sehr verschieden von einem System, das einen Kioskserver
verwendet.
-
In
dieser Lösung
muss eine Datei mit all den Münzen
angelegt werden, die seit Entstehen dieses elektronischen Zahlungssystems
ausgezahlt wurden; dadurch ist diese Datei sehr umfangreich ist.
-
Eine
Patentanmeldung WO-A-95/04417 beschreibt kryptographische Mittel,
die in einem eine geschützte Übertragung
von beglaubigten Informationen ermöglichenden elektronischen System
von drei Arten von Teilnehmern verwendet werden. Dies erfolgt über ein
Protokoll mit blinder Signatur in Verbindung mit einem Testprotokoll.
Durch die blinde Signatur kann die beglaubigende Partei die Daten
in beglaubigte Informationen verschlüsseln, die dann an eine empfangende
Partei derart geliefert werden, dass sie von dieser empfangenden
Partei nicht geändert
oder verfälscht
werden können.
Anhand des Testprotokolls können
die Parteien verschiedene Merkmale bezüglich der in ihren beglaubigten
Informationen verschlüsselten
Daten beweisen.
-
Diese
Patentanmeldung zitiert den bekannten Stand der Technik, insbesondere
das von Chaum entwickelte Konzept der blinden Signatur, die durch das
Patent US-A-4 759 063 geschützt
wird. Durch dieses Konzept kann eine von einer Instanz signierte Information
erhalten und verwendet werden, wobei diese Information dem Benutzer,
der sie beantragt hat, aber nicht der Instanz bekannt ist. Stellt
diese Information eine elektronische Münze dar, so darf sie nur einmal
benutzt werden. Es gibt keine Möglichkeit, die
Vervielfältigung
von elektronischen Daten zu verhindern; so muss also die Wiederverwendung
einer bereits benutzten elektronischen Münze die Identität des Betrügers aufdecken.
So muss also ein Protokoll, mit dem eine Information blind signiert
werden kann, die Angaben enthalten, die es ermöglichen, einen betrügenden Benutzer
festzustellen. Im Stand der Technik wird eine Information, die alle
Angaben enthält, die
zur Identifizierung des Benutzers, dem sie vermittelt wurde, notwendig
sind, häufig
als „gut
gebildet" bezeichnet.
A priori widersprechen sich aber „blind" und „gut gebildet". Ein so genanntes „Cut-and-choose"-Verfahren löst diesen
anscheinenden Widerspruch auf: die Information ist zwar nicht bekannt,
es ist aber sichergestellt, dass sie eine bestimmte Eigenschaft
besitzt.
-
In
dieser Patentanmeldung wird ein „restrictive blind signature
scheme" angegeben,
das leistungsfähiger
ist, als das bereits erwähnte „Cut-and-choose"-Verfahren. Die „credential" genannte signierte
Information wird so gestaltet, dass sie nur ein Mal verwendet werden
kann. Diese unterschriebene Information kann auch mit einer Menge, beispielsweise
mit dem Betrag kombiniert werden. All dies ist auf ein „Off-Line" Zahlungssystem anwendbar,
das mit elektronischen Münzen
oder Schecks arbeitet.
-
Bei
einer Zahlung mittels Münzen
oder Schecks gibt es also drei involvierte Parteien: die Bank B,
der Benutzer U, der Händler
(Shop) S. U kann einem Händler
S beispielsweise eine Zeitung bezahlen, U kann aber auch einen Informationsanbieter
S bezahlen, den er über
seinen Computer im INTERNET in Anspruch nimmt.
-
Im
Falle von elektronischen Münzen
handelt es sich um eine elektronische Umschreibung der Münzen bzw.
Geldscheine, die im Alltag verwendet werden. Folgende Geschäfte werden
zwischen diesen verschiedenen Parteien abgewickelt:
- • U
(sein Computer bzw. seine Karte) wird mit Münzen aufgeladen, die er speichert:
dieser Vorgang erfolgt zwischen U und B. Diese Münzen haben einen festgelegten
wert, so zum Beispiel 1$. Durch das Protokoll kann eine derartige
Münze geladen
werden, wobei diese die oben erläuterte Eigenschaft
der Anonymität
(blinde Signatur) besitzt, und auch überprüfen, ob sie gut gebildet ist, das
heißt,
ob sie die Identität
von U beinhaltet. Es versteht sich, dass die Bank diese Identifikation kennen
muss, um vom Konto von U den Betrag der von ihm gekauften Münzen abzubuchen.
- • Bezahlung
eines Händlers
S durch U: ist U im Besitz der Münzen,
so kann er diese für
seine Käufe
verwenden. So ist also das Protokoll ein nicht wieder verwendbarer
Nachweis von Wissen, dass U Daten bezüglich einer 1$-Münze gespeichert
hat. Die Zahlung ist von der Wiederaufladung voll-kommen abgekoppelt,
wobei letztere im Vorfeld erfolgen muss, damit U über die
erforderliche Menge an Münzen
verfügt.
Dieser Vorgang erfolgt lediglich zwischen U und S.
- • S übergibt
die Münzen
an B: S hat also Münzen (bzw.
vielmehr Nachweis von Wissen um diese Münzen) angesammelt, die er von
seinen Kunden erhalten hat. Mit einem – in der WO-A-95/04417 nicht
näher erläuterten – Protokoll
leert er die von ihm gesammelten Münzen, damit B den entsprechenden
Betrag seinem Konto gutschreibt. Die Bank muss überprüfen, ob diese nicht wieder
verwendet wurden (diese Überprüfungen werden
in dieser Schrift auch nicht näher
erläutert).
Entdeckt die Bank, dass eine Münze
mehrfach verwendet wurde (Nachweise von Wissen), so genügt eine einfache
Verarbeitung, um die Identität
desjenigen U aufzudecken, der diese Münzen gekauft und ausgegeben
hat.
-
Im
Falle von elektronischen Schecks handelt es sich um einen Ansatz,
der sich von dem der elektronischen Münzen leicht unterscheidet.
Die dabei verwendeten Protokolle sind aber sehr ähnlich. Die Benutzung ist einfacher.
Die Münzen
haben einen festgelegten Wert (zum Beispiel von 1$). Will man beispielsweise
9$ zahlen, so müssen
neun Münzen verwendet
werden. Bei den Schecks wird der Betrag erst bei Verwendung der
Münze bestimmt.
In dem oben angegebenen Beispiel wird also U nur einen Scheck über 9$ ausstellen.
- • U
kauft einen Scheck für
einen Höchstbetrag
M. Dieser Betrag M wird in den den Scheck darstellenden Informationen
eingefügt
(wie bei den Münzen).
Durch das Protokoll kann diese Aufladung in einer Weise erfolgen,
die der Ladung einer Münze mit
einem Betrag M sehr ähnlich
ist. M wird von dem Konto von U abgehoben.
- • Zum
Bezahlen eines von S geforderten Betrags m verwendet U einen Scheck
mit einem Höchstbetrag
M = m. Das Protokoll ist der Zahlung mittels einer Münze sehr ähnlich,
nur dass hier der Nachweis von Wissen zudem noch den Parameter m
aufweist. S übergibt
B die Schecks, die er erhalten hat (bzw. die Nachweise von Wissen über diese
Schecks): Die Vorgehensweise ist der der Münzen ähnlich.
- • Zwischen
U und B muss ein zusätzliches
Geschäft
stattfinden, bei dem U der Differenzbetrag M–m auf sein Konto erstattet
wird.
-
Diese
Patentanmeldung WO-A-95/04417 beschreibt auch die Verwendung von „tamper
resistant"-Modulen,
wodurch, aufgrund der Ausgestaltung der Maschine (Chipkarte bzw.
Computer), die diese Münzen
bzw. Schecks enthält,
und der Eröffnung
eines anonymen Kontos, das dadurch geschaffen wird, dass zwischen
U und B ein Pseudonym vereinbart wird, bei dem U B seine Identität nicht
verrät,
gewährleistet
wird, dass U den gleichen Scheck bzw. die gleiche Münze nicht
zwei Mal verwenden kann.
-
Aufgabe
der vorliegenden Erfindung hingegen ist ein Verfahren eines Austauschs
zwischen einem Benutzer, einem Kioskserver und einem Anwendungsserver,
der das Problem der Anonymität
löst. Diese
Anonymität
besteht mit Bezug auf den Kioskserver aber nicht mit Bezug auf die
Netze (deren es mehrere geben mag), die sich zwischen den Benutzern
und den Servern befinden. Diese Netze müssen die Netzanschriften dieser
verschiedenen involvierten Parteien kennen. Im Übrigen können diese Anschriften variieren:
was dann zum Beispiel der Fall ist, wenn der Benutzer reist.
-
Darstellung der Erfindung
-
Die
vorliegende Erfindung wird durch die angehängten Ansprüche definiert.
-
Die
vorliegende Erfindung betrifft ein Verfahren zur Zahlung, in einer
Datenübertragungsanordnung,
von Beträgen,
die ein Benutzer für
die von einem Anwendungsserver geleisteten Dienstleistungen zu zahlen
hat, dadurch gekennzeichnet, dass es die folgenden Schritte umfasst:
- – der
Anwendungsserver sendet dem Benutzer eine Aufforderung für einen
bestimmten Betrag;
- – der
Benutzer gibt einem Zahlungsserver bzw. Kioskserver den Auftrag,
die Zahlung dieses bestimmten Betrages vorzunehmen;
- – der
Zahlungsserver belastet das Konto des Benutzers mit dem bestimmten
Betrag und sendet dem Benutzer einen elektronischen Scheck, der dem
bestimmten Betrag entspricht;
- – der
Benutzer überprüft diesen
elektronischen Scheck, ändert
ihn, damit der Zahlungsserver ihn nicht erkennt, und sendet ihn
an den Anwendungsserver;
- – der
Anwendungsserver überprüft diesen
elektronischen Scheck und speichert diesen; und dass, in darauf
folgenden Schritten:
- – der
Anwendungsserver dem Zahlungsserver mindestens einen gespeicherten
elektronischen Scheck übermittelt;
- – der
Zahlungsserver jeden der empfangenen elektronischen Schecks überprüft und dem
Anwendungsserver den aus diesen Schecks aufgelaufenen Betrag zahlt.
-
In
dem technischen Zusammenhang der Datenübertragungsnetzwerke und der
Zahlungs- bzw. Kioskserver betrifft das erfindungsgemäße Verfahren eine
Organisation der Zahlungsfunktion aufgrund von „elektronischen Schecks", deren grundlegende
Gestaltung definiert ist. Dieser Ansatz ermöglicht die vollständige Anonymität der Handlungen
des Benutzers.
-
Ein „Scheck" bezeichnet eine
elektronische Dateneinheit, die von einem Zahlungsserver gesendet
wird. Er umfasst eine elektronische Signatur und hat einen bestimmten
Wert. Vorteilhafterweise enthält
ein Scheck eine Information bezüglich
seines Betrages und seines Datums, sowie einen Zufallswert.
-
Vorteilhafterweise
betrifft die Überprüfung im siebten
Schritt die Signatur der Schecks, die Abwesenheit eines identischen
Schecks in der Datei der erhaltenen Schecks und die Aktualisierung
dieser Datei durch Hinzufügung
dieses neuen Schecks.
-
Vorteilhafterweise
können
die Schecks, die nach dem Schritt der Übertragung an den Zahlungsserver
mindestens eines elektronischen Schecks, der vom Anwendungsserver
gespeichert wird, erhalten wurden, nicht mit denen korreliert werden,
die im Schritt der Zusendung eines elektronischen Schecks durch
den Zahlungsserver an den Benutzer gesendet werden, wobei dies durch
die Änderung
des Schritts erfolgt, in dem der Scheck an den Anwendungsserver
geschickt wird, wodurch die Anonymität des Benutzers bewahrt bleibt.
-
Die
Anwendungsserver können
ihre Schecks mit einer bestimmten Periodizität sammeln, die beispielsweise
unter einer Woche liegt.
-
In
einer ersten Variante können
mit dem erfindungsgemäßen Verfahren
die möglicherweise
auftretenden Störungen
zwischen der Zahlung und der Übergabe
von elektronischen Daten anhand von zwei Mitteln behoben werden,
dies obwohl die Anonymität
ein wichtiges Merkmal eines derartigen Verfahrens ist:
- – die
vom Anwendungsserver an den Benutzer gesandte Information kann verschlüsselt sein.
Der Entschlüsselungsschlüssel wird
bei der Belastung des Kontos des Benutzers von dem Kioskserver berechnet
und an den Benutzer gesandt. Der Anwendungsserver signiert das,
was er dem Benutzer sendet, wodurch Übertragung und Übergabe synchronisiert
sind. So kann der Anwendungsserver seine Sendung an den Benutzer
nicht mehr rückgängig machen,
um seine Zahlung zu erhalten, ohne diesem die Dienstleistung zu übermitteln,
das heißt
ohne ihm eine verwertbare Information zu schicken. Er schützt die
Integrität
seiner Sendung (um zu vermeiden, dass der Benutzer die Information
in der Absicht verfälscht,
hinterher den gezahlten Betrag zurückzufordern). Der Kioskserver
ist der „Richter", der im Falle einer
Störung über unwiderlegbare
kryptographische Elemente verfügt,
anhand derer er den Schuldigen ermitteln kann.
- – die Übergabe
von Daten an den Benutzer durch den Anwendungsserver erfolgt nach
dem Empfang des Schecks des Benutzers, wobei sich der Server vor
der Zahlung durch eine elektronische Signatur verpflichtet, die
Information zu übergeben.
Dadurch wird einem Betrug durch den Nutzer entgegengewirkt. Der
Anwendungsserver verpflichtet sich bezüglich der Information, die
er dem Benutzer liefern wird, erst nach erfolgter Zahlung durch
eine Signatur.
-
Im
Gegensatz zu dem in der eingangs genannten Schrift aus dem Stand
der Technik beschriebenen System werden in dem Kioskserveransatz
die Ladung und die Zahlung miteinander verbunden, da sie gleichzeitig
erfolgen: der Nutzer, der Anwendungsserver und der Kioskserver sind „On-Line". Dies vereinfacht
die Problematik der Überprüfung, ob die
Münzen
von dem Benutzer vervielfältigt
worden sind: ein von dem Anwendungsserver gewählter Zufallswert verhindert,
dass der Benutzer die zu einem früheren Zeitpunkt erhaltenen
Signaturdaten des Anwendungsservers wieder verwendet. Der Benutzer kennt
den Betrag, der von dem Anwendungsserver gefordert wird; das Problem,
den passenden Betrag zu haben, ist gelöst.
-
Das
Problem einer Vervielfältigung
der Schecks durch den Anwendungsserver wird dadurch gelöst, dass
dem Betrag eine Zeiterfassung hinzugefügt wird, die während der
Geschäftsabwicklung
von dem Kioskserver kontrolliert wird. Da die Münzen unmittelbar nach deren
Kauf durch den Benutzer des Kioskservers ausgegeben werden, braucht
der Kioskserver eine Überprüfung auf
doppelte Ausgabe lediglich über
einen Zeitraum, der dem Zeitraum zwischen zwei Auszahlungen entspricht,
durchzuführen.
-
Die
Erfindung betrifft ebenfalls eine Vorrichtung zur Durchführung dieses
Verfahrens, in der mindestens ein Kioskserver, mindestens ein Anwendungsserver über ein
Kommunikationsnetz mit zumindest einem Benutzer in Verbindung steht.
Durch die Methoden zur blinden Signa tur können in den signierten Informationen
der Betrag und das Datum sichtbar belassen werden, so dass im Verhältnis zu den
herkömmlichen
Verfahren eine wesentliche Vereinfachung erzielt werden kann.
-
Kurze Beschreibung
der Zeichnungen
-
Die 1 bis 3 stellen
das erfindungsgemäße Verfahren
dar;
-
Die 4 und 5 stellen
zwei bekannte Verfahren dar;
-
Die 6 bzw. 7 stellen
zwei Varianten des erfindungsgemäßen Verfahrens
dar.
-
Detaillierte
Beschreibung von Ausführungsformen
-
Die
Vorrichtung zur Durchführung
des erfindungsgemäßen Verfahrens,
wie sie in 1 dargestellt ist, umfasst einen
Kioskserver K, Anwendungsserver A1 bis Am und Benutzer U1 bis Un,
die alle mit einem Kommunikationsnetz miteinander verbunden sind.
-
Das
besagte Verfahren ist ein Zahlungsverfahren in einer Datenübertragungsanordnung,
in der die Anonymität
des Benutzers gegenüber
dem Kioskserver gewahrt bleibt. Wird einer der Benutzer mit U, einer
der Anwendungsserver mit A und der Kioskserver mit K bezeichnet,
so kann die Anonymität
anhand von zwei Regeln definiert werden:
- – Regel
1: dem Anwendungsserver A muss der Benutzer U unbekannt bleiben;
- – Regel
2: dem Kioskserver K darf nicht bekannt sein, dass der Benutzer
U den Server A verwendet (bzw. verwendet hat).
-
Dies
darf jedoch den Anwendungsserver nicht daran hindern, für seine
dem Benutzer dargebotenen Dienstleistungen bezahlt zu werden. Es
versteht sich, dass die Regel 1 dann keinen Sinn macht, wenn der
Anwendungsserver die Identität
des Benutzers verlangt und der Benutzer ihm diese Identität mitteilt.
Ganz allge mein aber soll die Regel 1 befolgt werden. Regel 2 dient
dem Schutz des Privatlebens der Kunden. Sie soll so verstanden werden,
dass der Kioskserver keinerlei Möglichkeit
haben soll, die Identifizierungen der von den Benutzern gewählten Anwendungen
wieder herzustellen.
-
Es
wird davon ausgegangen, dass der Benutzer ein nicht anonymes Zahlungsmittel
verwendet, da im umgekehrten Fall die Anonymität der Geschäftsabwicklungen zwischen dem
Benutzer/dem Server/dem Kioskserver dem verwendeten Zahlungssystem
inhärent
ist.
-
Die
Fälle,
in denen die Erfindung zur Anwendung kommen kann, sind somit:
- – die
Zahlung mit einer Bankkarte oder einer Abonnementkarte;
- – das
einfache Abonnement: für
den Zugang zum Kioskserver hat der Benutzer lediglich ein Passwort,
das er erhalten hat, als er sein Abonnement zum Kioskserver abschloss.
-
Bei
einer Geschäftsabwicklung
wird also dem Kioskserver der Benutzer und seine Identität idU bekannt
gegeben, das heißt
es wird dem Betreiber des Kioskservers die Nummer der Bankkarte
bzw. die Abonnementnummer des Benutzers bekannt gegeben.
-
Es
gibt dann verschiedene Möglichkeiten
eines Anschlusses:
- – eine erste Möglichkeit
bietet sich dann an, wenn die Gateway-Funktion Benutzer/Server (Hash-Funktion,
Anpassung der Übertragungen und
Protokolle) und die Kioskfunktion zusammenfallen. Schematisch kann
dieser Fall wie folgt dargestellt werden:
U ------- K --------
A
-
In
diesem Fall kann Regel 2 nicht eingehalten werden, da der Kioskserver
K die Verbindung mit dem Anwendungsserver A herstellen muss und
dafür seine
Identität wissen
muss;
- – in
einer zweiten schematisch dargestellten Möglichkeit
U ------- A
-------- K
muss der Anwendungsserver die Verbindung mit dem
Kioskserver herstellen; wenn der Kioskserver hierfür nicht
den Anwendungsserver wissen muss, so ist diese Anschlusslösung mit
Regel 2 kompatibel. Gleichermaßen
kann Regel 1 befolgt werden, aber, da der Anwendungsserver sich
zwischen dem Benutzer und dem Kioskserver befindet, müssen die
Identitätsdaten
des Benutzers (idU) zwischen dem Benutzer und dem Kioskserver verschlüsselt werden;
- – eine
dritte Möglichkeit
kann wie folgt schematisch dargestellt werden:
-
Hier
ist offensichtlich, dass diese Lösung
mit beiden Regeln 1 und 2 kompatibel ist. Diese Lösung setzt
nicht zwei unterschiedliche aus dem Benutzer hervor gehende Übertragungsleitungen
voraus. Eine gleiche physische Verbindung kann mehrere Kanäle enthalten,
wobei jeder Kanal für
einen anderen Empfänger
bestimmt ist. Wenn sie mit den angemessenen Transportprotokollen
ausgestattet sind, bieten zahlreiche Netzwerke diese Möglichkeiten:
so in Frankreich Transpac (eingetragenes Warenzeichen), Itineris
(eingetragenes Warenzeichen)....
-
Im
weiteren Verlauf der Beschreibung wird diese letzte Anschlussmöglichkeit
beispielhaft in Betracht gezogen. Auch die zweite Möglichkeit
könnte herangezogen
werden, wenn die entsprechenden Bedingungen eingehalten werden.
-
Wie
in 2 dargestellt, können die erfindungsgemäßen Geschäfte durch
die Abfolge der folgenden Schritte beschrieben werden:
- 1 – Der Server
A sendet dem Benutzer U eine Anfrage für eine bestimmte Summe (Block 11).
- 2 – Der
Benutzer U gibt dem Kioskserver K den Auftrag, diese Summe zu besorgen
(Block 12).
- 3 – Der
Kioskserver K belastet das Konto des Benutzers U mit dieser Summe:
der Kioskserver K sendet dem Benutzer U einen elektronischen Scheck über diese
Summe (Block 13).
- 4 – Der
Benutzer U überprüft diesen
Scheck, ändert diesen
ab, damit der Zahlungsserver diesen nicht wieder erkennt und sendet
ihn dem Anwendungsserver A (Block 14).
- 5 – Der
Server A überprüft und speichert
diesen Scheck (Block 15).
-
Zu
einem späteren
Zeitpunkt (Test 18):
- 6 – übermittelt der Anwendungsserver
A die gespeicherten Schecks dem Kioskserver K (Block 16).
- 7 – überprüft der Kioskserver
K die Schecks, addiert die Beträge
und bezahlt den Server A (Block 17).
-
Der
Begriff „elektronischer
Scheck" wurde in Anlehnung
an einen herkömmlichen
Scheck gewählt und
bezeichnet eine Einheit aus elektronischen oder numerischen Daten,
die vom Kioskserver gesendet wird und insbesondere eine elektronische
Signatur umfasst und einen vereinbarten Wert aufweist. Dieser Scheck
stellt für
den Anwendungsserver eine Zahlungsgarantie dar. Der Server A speichert
diesen Scheck und wird ihn später
dem Kioskserver K vorlegen, um seinerseits bezahlt zu werden.
-
Der
Scheck ist eine Signatur des Kioskservers für den Betrag m. Um Problemen
einer Wiederverwendung vorzubeugen, enthält er auch einen Zufallswert
c, der in Schritt 1 vom Anwendungsserver gewählt wird und dem Benutzer geschickt
wird.
-
Wenn
in den in 2 dargestellten Geschäften ein
Zufallswert c verwendet wird, so tritt ein Anonymitätsproblem
auf, da der Kioskserver dann, anhand dieses Zufallwertes c, das
Geschäft
in Schritt 2 zwischen dem Benutzer und dem Kioskserver und das Geschäft in Schritt
6 mit einem Scheck über
denselben Betrag m und mit derselben Zufallszahl verbinden kann.
Hiermit kann Regel 2 nicht mehr eingehalten werden. Die Information,
die die Anonymität gefährdet, ist
der Zufallswert c: der Betrag m kann verwendet werden, um die Schritte
2 und 6 zu verbinden, wobei in der Praxis der Benutzer seine Zahlung (wie
bei einer Bezahlung mit Münzen
oder Scheinen) in elementare Werte zerstückeln kann. So wird der Betrag
m vorbestimmten Beträgen
entsprechen und es werden zahlreiche Geschäftsabwicklungen den gleichen
Betrag m aufweisen. So kann zum Beispiel der Benutzer den Kioskserver
bitten, ihm einen Scheck über
10 Franc und einen über
1 Franc zu übermitteln,
wenn er einen Betrag von 11 Franc zahlen möchte.
-
Zur
Lösung
dieses Problems verwendet also die Erfindung ein System mit einer
blinden Signatur, dessen Prinzip in dem Artikel mit dem Titel „Blind
Signatures for Untraceable Payments" von David Chaum (Crypto '82, Plenum Press,
New York, 1983, Seiten 199 bis 203) beschrieben ist. Das System
der Erfindung kann durch das in 3 gezeigte
Schema dargestellt werden. Der Betrag m enthält eine Information über den
Betrag des Schecks und das Datum: diese letzte Information ermöglicht es
dem Kiosk, den Anwendungsserver daran zu hindern, bereits verwendete
Schecks noch einmal zu verwenden: der Kioskserver braucht nicht
alle bereits verwendeten Schecks zu speichern, sondern lediglich
zum Beispiel die der laufenden Woche, wenn die Anwendungsserver
ihre Schecks beispielsweise mit einer Periodizität von weniger als einer Woche
sammeln. In Schritt 7 betrifft die Überprüfung also die Signatur Sig
der Schecks, die Abwesenheit eines identischen Schecks in der Datei
der in dieser Woche erhaltenen Schecks und die Aktualisierung dieser
Datei.
-
Aus
dem Stand der Technik sind mehrere Beispiele von blinden Signaturen
bekannt.
-
Ein
sogenanntes RSA-System wird insbesondere in einem Artikel mit dem
Titel „A
Method for Obtaining Digital Signatures and Public-Key Cryptosystems" (Communications
of the ACM, Februar 1978, Seiten 120 bis 126) und in „L'écho des recherches" Nr. 124, 2. Vierteljahr
1986, S. 39, beschrieben und ist ein typisches Beispiel für ein asymmetrisches System.
-
Die
Schemata für
die blinde Signatur mit RSA sind bekannt. Die Berechnungen erfolgen
in Zn (ganze Zahlen modulo n). c wird wie folgt berechnet: c = P(r)·c', wobei r eine Zufallszahl
ist, die zuvor von dem Partner gewählt wird, der die Signatur
des Benutzers verlangt. P ist die öffentliche Umkehrfunktion von
Sig. Angesichts der multiplikativen Eigenschaften von RSA, ist Sig(c)
= r·Sig(c') und somit Sig(c') = Sig(c)/r.
-
In
diesem Schema ist es jedoch nicht möglich, einen blinden Teil c
mit einem nicht blinden Teil m zu kombinieren.
-
Die
Anpassungen an das oben angegebene Allgemeinschema sind also:
- – für den Betrag:
unterschiedliche RSA-Schlüssel für die verschiedenen
Scheckwerte zu haben: so zum Beispiel 1 Franc, 5 Franc, 10 Franc...;
- – für das Datum:
der Kioskserver ändert
in bestimmten Zeitabständen
diese Schlüssel:
im oben genannten Beispiel geschieht dies im Wochenrhythmus.
-
Ein
Artikel mit dem Titel „Efficient
Identification and Signatures for Smart Cards" von C. P. Schnorr (Proceedings of Crypto '89, Lecture Notes
in Computer Science, Band 435, Springer Verlag, Seiten 239 bis 252)
beschreibt ein Signatursystem.
-
Es
werden die folgenden Notationen in Betracht gezogen:
- – n
Primzahl (512 bits); b1, b2 Element
von Zn*, in der Größenordnung
q, groß;
- – s
geheime Zahl bzw. Geheimwert des Kioskservers, die Zn* gehört;
- – p1, p2 öffentliche
Schlüssel
des Kioskservers: p1 = b1 s; p2 = b2 s; h öffentliche
Hash-Funktion, mit Ergebnis in Zq. Alle Potenzberechnungen werden mit
modulo n durchgeführt;
y, c, y', c' werden mit modulo
q berechnet.
-
Wie
in 4 dargestellt, kann das Schnorr-Schema mit einem
von m abhängigen
Generator b verwendet werden: b = b1 mb2. Durch diese Wahl
werden bestimmte Schwächen
einer einfacheren Wahl b = b1 m vermieden,
da bp = (b1 mb2)p und
das Finden von m' und
p', so dass (b1 m'b2)p' =
bp ist, genauso schwer ist wie das Problem
des Logarithmus in Zn.
-
Zur Überprüfung werden
folgende Berechnungen angestellt: b = b1 mb2; p = p1 mp2;
c' = h(a, t', idA); der Test
by' =
t'pc'.
-
Ein
Artikel mit dem Titel „A
Practical Zero-Knowledge Protocol Fitted to Security Microprocessor
Minimizing Both Transmission and Memory" von L. C. Guillou und J. J. Quisquater
("Proceedings Eurocrypt' 88, Springer Verlag,
Lecture Notes in Computer Sciences", Band 330–1988 – Seiten 123–128) beschreibt
ein sogenanntes GQ-Schema, das auf der Schwierigkeit beruht, hohe
ganze Zahlen zu faktorisieren.
-
Es
werden die herkömmlichen
Annahmen und Notationen für
das Schema GQ herangezogen:
- n:
- hohe Zahl, Produkt
von zwei ganzen Zahlen p und q:
- e:
- ganze Primzahl (die
Berechnung in Zn der e-ten Wurzeln ist möglich, wenn p und q bekannt
sind).
- g:
- ist eine öffentliche
Hashingfunktion, mit Ergebnis in Zn; um bestimmte Angriffsmöglichkeiten zu
vermeiden, muss sie so sein, dass h(a)·h(b) # h(a; b) ist, wobei
h eine öffentliche
Hashingfunktion ist, mit Ergebnis in Ze.
- E:
- die unten angegeben
ist, ist die Funktion „ganzer
Teil".
- r
- = E(c' + u/e) beträgt somit
0 oder 1.
-
Alle
Berechnungen mit Potenzierungen werden mit modulo n angestellt.
-
Wie
in 5 dargestellt, kann das Schema GQ mit einer Authentifizierung
V = (g(m))1/e verwendet werden.
-
Die Überprüfung des
Schecks (y', t', a, m) erfolgt durch
Berechnung von I = g(m); c' =
h(a, t', idA); es
wird sichergestellt, dass y'e = t'Ic' ist.
-
Das
erfindungsgemäße Verfahren
hingegen löst
das Problem der Übergabe
der Informationen I, die der Benutzer dem Anwendungsserver abkauft.
In einer Geschäftsabwicklung
mit Datenübertragung, bei
der die Beziehungen zwischen den Partnern entpersonalisiert (durch
die eingangs beschriebenen Protokolle anonymisiert) sind und durch
Maschinen durchgeführt
werden, deren Verhalten a priori verändert werden kann, muss sichergestellt
werden, dass die Unterschlagung, die darin besteht, dass der Benutzer
die Dienstleistung, die er von einem Anwendungsserver erhalten hat,
nicht bezahlt, oder dass ein Anwendungsserver die Dienstleistung
die vom Benutzer bezahlt wurde, nicht leistet, nicht möglich ist.
-
Es
werden zwei erfindungsgemäße Varianten
vorgeschlagen: die erste Variante ist die „natürlichste" und benötigt die gleichen Geschäfte, die
bereits oben im Zusammenhang mit 3 beschrieben wurden;
die zweite Variante trennt die Zahlungsgeschäfte von den Geschäften, die
die Übergabe
von Informationen betreffen.
-
Es
werden dann die folgenden Notationen verwendet:
- – Sk/Pk,
Sa/Pa: geheime und öffentliche
Schlüssel
des Kiosk- und des Anwendungsservers; die öffentlichen Schlüssel sind
allen bekannt, so dass die Signaturen überprüft werden können;
- – I:
Information, die der Anwendungsserver dem Benutzer liefert;
- – I': I durch r chiffriert;
- – r:
Chiffrierschlüssel;
und
- – r': durch Pk chiffrierter
Chiffrierschlüssel:
r' = Pk(r).
-
In
der ersten, in 6 dargestellten Variante wird die
von einem Anwendungsserver an einen Benutzer gesendete Information
I chiffriert und ist somit für
den Benutzer unbrauchbar, wenn dieser nicht den Schlüssel hat.
Der Dechiffrierschlüssel
wird von dem Kioskserver bei der Belastung des Benutzerkontos berechnet
und wird dem Benutzer zurückgesandt. Der
Anwendungsserver signiert das, was er an den Benutzer schickt, so
dass er seine Sendung nicht rückgängig machen
kann (um von dem Benutzer das Geld zu erhalten, ohne ihm die Dienstleistung
geliefert zu haben, das heißt
ohne ihm eine verwertbare Information I geschickt zu haben), und
dass er die Integrität
seiner Sendung schützt
(um zu vermeiden, dass der Benutzer die Information I in der Absicht verfälscht, hinterher
den gezahlten Betrag zurückzufordern).
Der Kioskserver ist der „Richter", der im Falle einer
Störung über unwiderlegbare
kryptographische Elemente verfügt,
anhand derer er den Schuldigen ermitteln kann.
-
Es
können
dann mehrere Betrugsszenarien betrachtet werden:
Wenn der Anwendungsserver
den Benutzer nicht bedienen will.
- – der Betrug
des Anwendungsservers richtet sich auf seine Signatur: der Benutzer
kann dies überprüfen Sa(I', r', c', m). Fällt die Überprüfung negativ
aus, so muss das Geschäft
abgebrochen werden;
- – der
Betrug des Anwendungsservers richtet sich auf den Inhalt der gesendeten
Information I: Sa(I', r', c', m) authentifiziert
die Informationen I',
r', c', m; der Benutzer
kann sich an den Kioskserver wenden, der mit r davon überzeugt
ist, dass die von dem Anwendungsserver geschickte Information unverwertbar
ist.
-
Wenn
der Benutzer den Anwendungsserver nicht bezahlen will:
- – kann
der Benutzer den Betrag, den er vom Kioskserver fordert, ändern. Er
bittet ihn um einen Betrag m1 anstatt m, m1 < m: der Anwendungsserver kann dies
merken und sich beim Kioskserver beschweren; mit r' findet der Kioskserver
die Identität
des Benutzers (idU) wieder; und der Benutzer kann dem Kioskserver
eine Signatur Sa(I', r', c', m1) nicht vorzeigen,
da er ja Sa(I',
r', c', m) erhalten hat;
- – kann
der Benutzer den Kioskserver nicht um diesen Scheck bitten: er verfügt nicht über r, der es
ihm ermöglichen
würde,
I' in I zu verwandeln;
- – kann
der Benutzer dem Anwendungsserver sig(m, c') nicht zurückschicken. Das Konto des Benutzers
wurde aber bereits mit m belastet. Somit ist dies für den Benutzer
kein Betrug, der von Interesse wäre.
Der Anwendungsserver kennt c', r' und r; er beschwert
sich bei dem Kioskserver, der mit r' die Identität des Benutzers (idU) und c wieder
findet. Der Kioskserver findet also all das wieder, was er dem Benutzer
zurückgeschickt
hat; der Benutzer ist somit überführt.
-
Wenn
der Anwendungsserver die erhaltene Zahlung zurückweist:
- – muss der
Anwendungsserver dem Kioskserver c' und r' als Beweis vorlegen. Findet der Kioskserver
mit r' IdU wieder,
so hat der Benutzer den Anwendungsserver tatsächlich bezahlt. Findet der Kioskserver
IdU nicht wieder, so sind die vom Anwendungsserver vorgelegten Beweise
falsch.
-
Die
in dieser Variante erzielte Anonymität kann nur dann erzielt werden,
wenn die Suche nach dem Benutzer zwischen dem Anwendungsserver und
dem Kioskserver nicht ein abgekartetes Spiel ist. Diese Annahme
ist notwendig, um die oben beschriebenen Betrugsmöglichkeiten
verarbeiten zu können.
-
Bezugnehmend
auf die in 7 dargestellte zweite Variante:
die Übergabe
von Informationen I an den Benutzer durch den Anwendungsserver erfolgt, nachdem
dieser den Scheck vom Benutzer erhalten hat; dadurch werden alle
Betrugsmöglichkeiten
vonseiten des Benut zers vereitelt. Der Anwendungsserver verpflichtet
sich hinsichtlich der Information, die er nach erfolgter Zahlung
dem Benutzer übermitteln wird,
durch eine Signatur Sa(I, c',
m).
-
Bei
einem Betrug des Anwendungsservers (Unstimmigkeit zwischen der angegebenen
Signatur Sa und der erhaltenen I, bzw. Nichtübergabe von I durch den Anwendungsserver),
kann sich der Benutzer an den Kioskserver wenden, wobei er hierfür als Beweis
für seine
Redlichkeit den Scheck m, c',
c und Sa (I, m, c')
vorzeigt.
-
Versucht
der Benutzer zu betrügen,
so besteht keine Gefahr für
den Anwendungsserver, da dieser erst dann I liefert, wenn die Zahlung überprüft wurde.