<Desc/Clms Page number 1>
Die vorliegende Erfindung betrifft ein System zur Durchführung des elektronischen Zahlungsverkehrs an Bankautomaten (wie z. B. Geldausgabeautomaten), Point-of-Sale-Terminals und Automaten jeder Art, bei dem alle sicherheitsrelevanten Daten in Chipkarten und Sicherheitsmodulen geschützt verwaltet werden, wichtige anwendungsspezifischen Daten in Terminalkarten oder Chipkarten verwaltet werden, die auch die Schlüssel dieser Anwendung verwahren und die Terminals über eine oder mehrere Chipkartenleseeinheiten für Terminalkarten verfügen, sodass sie dahingehend konzipiert sein konnen, dass eine Erweiterung des Systems um zusätzliche Anwendungen sehr einfach durch Stecken weiterer Terminalkarten erfolgen kann.
Der hier beschriebene elektronische Zahlungsverkehr nützt die integrierten Sicherheitsmechanismen von Mikroprozessorkarten, um sowohl für den Kunden als auch für den Systembetreiber höchste Sicherheit gewährleisten zu können. Dabei wird jedoch darauf geachtet, dass trotz aller Sicherheitsvorkehrungen der schnelle und reibungslose Ablauf des Zahlungsverkehrs nicht beeinträchtigt wird.
Derartige Systeme sind in vielen Publikationen (z. B. The ESPRIT Projekt CAFE - High Security Digital Payment Systems ; D. Chaum : Untraceable Electronic Mail, Return Adresses, and Digital Pseudonyms ; A. Beutelspacher, T. Hueske, A. Pfau : Kann man mit Bits bezahlen ?) beschrieben, patentiert (z. B. US 4 961 142 A, DE 4 126 809 A1, EP 0 439 609 A1, EP 0 616 447 A2, WO 96/26586 A1) und z. B. in CEN EN 1546 in einer Norm dargestellt. In diesen Publikationen werden Online- und Offline-orientierte Systeme beschrieben, die meist nicht mit anderen Systemen kombinierbar sind.
Ausserdem enthalten die offline-orientierten Systeme oftmals zentrale Kontrollmechanismen, die aber auf keine eigenen (rein zentralen) Schlüsseln basieren. Die Erfindung verringert bzw. eliminiert die Nachteile dieser Systeme und sie erlaubt es, die Verfügbarkeit zu erhöhen.
Die EP 0 439 609 A 1 enthält ein System mit Magnetstreifenkarten, die keine elektronischen Unterschriften erzeugen können. Dieses Patent unterscheidet sich deshalb schon wesentlich vom im Anmeldungsgegenstand beschriebenen Zahlungsverkehrssystem, das im Anspruch 1 von zwei elektronischen Unterschriften ausgeht, die durch Kundenkarten erzeugt werden. Alle weiteren Ansprüche beziehen sich auf Anspruch 1. Die EP 0 616 447 A2 und die WO 96/26586 A1 enthalten Systeme mit asymmetrischer Kryptographie. Diese Systeme benötigen zwei Schlüssel (die ein zusammengehöriges Schlüsselpaar bilden), wovon einer davon öffentlich und der andere geheim ist. Ein Schlüssel wird zur Verschlüsselung, der andere zur Entschlüsselung benötigt.
Die vorliegende Patentanmeldung benötigt in der Kundenkarte ebenso zwei Schlussel Es werden aber beide Schlüssel zur Erzeugung der elektronischen Unterschrift (d. h. zur Verschlüsselung) benutzt und nicht ein Schlüssel zur Verschlüsselung und einer zur Entschlüsselung. Diese beiden Schlüssel können gegenseitig nicht abgeleitet werden (stehen also in keinem gegenseitigen Bezug und bilden auch kein Schlüsselpaar) und sind von keiner PIN abhängig. Die Existenz zweier unabhängiger Schlüssel basiert beim Anmeldungsgegenstand auf der Idee, dass eine elektronische Unterschrift dezentral und eine zentral überprüft werden kann.
Auch die anderen oben angegebenen Patente und die Norm CEN 1546 verwenden keine zwei elektronischen Unterschriften zur Absicherung von Transaktionen. Sie unterscheiden sich deshalb schon wesentlich vom im Anmeldungsgegenstand beschriebenen Zahlungsverkehrssystem, das im Anspruch 1 von zwei elektronischen Unterschriften ausgeht, die durch Kundenkarten erzeugt werden. Alle weiteren Ansprüche beziehen sich auf Anspruch 1.
Im Anmeldungsgegenstand sind alle wichtigen Daten (personenbezogene Daten, Schlüssel, in Chipkarten und in Sicherheitsmodulen an Zentralrechnern geschützt. Der Zugriff auf diese Daten ist nur mit Kenntnis der entsprechenden Schlüssel und nach gegenseitiger Authentifikation zwischen Kundenkarte und Terminalkarte (bzw. Sicherheitsmodul am Zentralrechner) möglich.
Die Authentifikation zwischen den beiden Chipkarten erfolgt mittels symmetrischer oder asymmetrischer Verschlüsselung, wobei sowohl statische als auch dynamische Authentifikation vorgesehen sind. Authentifikation mit statischer asymmetrischer Verschlüsselung bedeutet, dass vereinbarte Datenfelder der Kundenkarte, die von der Terminalkarte frei gelesen werden können, zum Zeitpunkt der Kartenausgabe asymmetrisch verschlüsselt werden und dieser Wert (Zertifikat) in der Karte gespeichert wird. Bei der Authentifikation übergibt die Kundenkarte der Terminalkarte diese vereinbarten Werte und das Zertifikat. Die Terminalkarte entschlüsselt das Zertifikat und vergleicht das Ergebnis gegen die angelieferten Datenfelder.
Bei der dynamischen asymmetrischen Ver-
<Desc/Clms Page number 2>
schlüsselung wird zum Zeitpunkt der Authentifikation von der Terminalkarte eine Zufallszahl bzw. eine ständig veränderte Zahl (z. B. Zähler) an die Kundenkarte übertragen, von dieser mittels eines asymmetrischen Algorithmus (z. B. RSA) verschlüsselt und dieser Wert an die Terminalkarte zurückgeschickt. Die Terminalkarte entschlüsselt den rückgemeldeten Wert und vergleicht den errechneten Wert mit der zuvor übertragenen Zahl.
Ebenso wird grosser Wert auf leichte Erweiterbarkeit gelegt, vor allem, dass es bei einer Erweiterung des Systems zu keinen Änderungen der Terminals und/oder des Zahlungsablaufes kommt.
Im Hinblick auf die Erweiterbarkeit, aber auch aus sicherheitstechnischen Gründen, erfolgt das Erkennen einer unterstützten bzw. die Ablehnung einer unbekannten Anwendung sowie die Verwaltung der Schlüssel nicht im Terminal sondern durch eine Terminaikarte. Diese Terminalkarte ist ebenfalls eine Chipkarte und besitzt ihre eigene Sicherheitslogik. Die Terminals verfügen über einen Chipkartenieser für die Kundenkarten und ein oder mehrere Chipkartenleser (Chipkartenkontaktiereinheiten) für Terminalkarten, die aus Platzgründen auch als Plug-In ausgeführt sein können.
Die Erweiterung um zusätzliche Applikationen (z. B. weitere Geldbörsen) erfolgt unter anderem durch das Stecken zusätzlicher Terminalkarten, die die Schlüssel und Daten dieser Applikationen beinhalten und verwalten. Ebenso kann die Umstellung von einer Kartengeneration auf die nächste durch das Stecken einer weiteren Terminalkarte erfolgen, sodass für die Dauer der Umstellung zwei Terminalkarten die selbe Anwendung, jedoch unterschiedliche Kundenkarten, servicieren (eine Terminalkarte für die auslaufende Kartengeneration und eine Terminalkarte für die neuen Kundenkarten).
Die Erfindung zeichnet sich vor allem durch spezielle Sicherheitsmerkmale aus.
Ein Sicherheitsmerkmal ist der Schutz aller Daten, die zwischen Terminal und Zentralrechner übertragen werden. Dieser Schutz tritt bereits im Terminal und in der Terminalkarte in Kraft und zeichnet sich durch die Verwendung eines 2-Schlüssel-Systemes aus. Die Daten werden zudem mindestens doppelt gespeichert (bei der elektronischen Geldbörse alle Summensätze und die letzten n Einzeitransaktionen, bei Offline-POS alle Transaktionen), um bei Ausfall einer Komponente ein "Recovery" durchführen zu können. Die Sicherheit und Integrität der Daten wird durch die Verwendung von zwei elektronischen Unterschriften, die mit unterschiedlichen Schlüsseln der Kundenkarte erzeugt werden, gewährleistet.
Zur Erzeugung der elektronischen Unterschriften kann jeder dafür geeignete kryptografische Algorithmus benutzt werden (sowohl symmetrische Verfahren wie z. B. der DES-Algorithmus als auch asymmetrische Verfahren wie z. B. RSA oder DSS).
Von diesen beiden elektronischen Unterschriften kann eine bereits im Terminal überprüft werden, da sie mit einem lokalen (dezentralen) Schlüssel generiert wird, der auch der Terminalkarte bekannt ist bzw. von dieser aus anderen Schlüsseln ein- oder mehrstufig ermittelt werden kann. Für die zweite Unterschrift wird ein zentraler Schlüssel verwendet, der nur am Zentralrechner bekannt ist bzw. dessen Ableitung von einem Masterkey nur am Zentralrechner nachvollzogen werden kann, da auch der zugehörige Masterkey nur dort bekannt ist. Sie kann daher erst im Rechenzentrum überprüft werden und bietet so einen zusätzlichen, erhöhten Schutz gegen Fälschungen von Transaktionen, da selbst bei Kenntnis des dezentralen Schlüssels (korruptes Terminal) keine korrekt unterschriebene Transaktion an den Zentralrechner übermittelt werden kann.
Der Datensatz, der von der Kundenkarte (KK) an das Terminal geschickt wird, hat unter anderem folgenden Aufbau :
Transaktionsdaten (Kartennr, Betrag,...), lokale Unterschrift (KK), zentrale Unterschrift (KK)
Die Unterschrift mit dem lokalen Schlüssel wird vor Ort in der Terminalkarte geprüft und nicht an den Zentralrechner übermittelt.
Dafür wird jede Transaktion (bei Geldbörsenzahlungen der Summensatz des jeweiligen Geldbörsenpools = Verrechnungskonto) von der Terminalkarte unterschrieben, wobei ein zentraler Schlüssel verwendet wird. Wurde bei einer Geldbörsenzahlung eine Einzeltransaktion (Kontrolle) erzeugt, so wird auch diese von der Terminalkarte (TK) unterschrieben. Jede Transaktion, die am Zentralrechner eingereicht wird, ist somit durch zwei Unterschriften mit zentralen Schlüsseln gesichert.
Transaktionsdaten (Kartennr., Betrag,...), zentrale Unterschrift (KK), zentrale Unterschrift (TK)
Jede lokale Summe eines Geldbörsenpools wird nur von der Terminalkarte des Händlers unter Verwendung eines zentralen Schlüssels unterschrieben.
Transaktionsdaten (Zähler, Währung,...), lokale Geldbörsenpoolsumme, zentrale Unterschrift
<Desc/Clms Page number 3>
(TK)
Somit werden bei Geldbörsenzahlungen eine bzw. drei (wenn eine Einzeltransaktion erzeugt wurde) elektronische Unterschriften (zentraler Schlüssel der Terminalkarte auf Poolsumme, zentraler Schlüssel der Kundenkarte auf Einzeltransaktion, zentraler Schlüssel der Terminalkarte auf Einzeltransaktion) erzeugt.
Bei der Anwendung "elektronische Geldbörse" werden aus Kostengründen (und aus Gründen der Anonymität bei Geldbörsenzahlungen) je zugeordnetem Geldbörsenpool (Verrechnungskonto, das z. B. einer Bank zugeordnet ist) nur Summenzähler um den zu bezahlenden Betrag erhöht und von der Terminalkarte unterschrieben. Diese Summentransaktion wird immer erzeugt, da im Falle eines Terminalsystemzusammenbruches die letzte Summentransaktion notwendig ist. Zur Erhöhung der Sicherheit und der Kontrolle werden zufällig bzw. durch Systemparameter gesteuert Einzeltransaktionen erzeugt (müssen von der Kundenkarte und der Terminalkarte unterschrieben werden) und gespeichert.
Zusätzlich merkt sich die Karte die letzten n Transaktionen je Anwendung (elektronische Geldbörse, POS, ATM) in Logfiles, sodass auch der Karteninhaber über ein Beweismittel für bzw. gegen die Rechtmässigkeit von Transaktionen verfügt. Er wird somit einerseits nicht mehr die Rechtmässigkeit korrekt verbuchter Transaktionen bestreiten, kann andererseits aber auch beweisen, wenn eine Abbuchung zu Unrecht erfolgte.
Ein System kann eventuell mehrere "Geldbörsen pools" enthalten, in denen das elektronische Geld "geladen" wird. In diesem Fall müssen auch die Terminals die einzelnen Bezahlungen für die entsprechenden Pools trennen, d. h. pro Pool einen eigenen Summenzähler und eigene Summentransaktionen erzeugen.
Auf Seite der Kundenkarte wird die Sicherheit durch eine mindestens doppelte Speicherung des Geldbörsensaldos gesteigert, wobei der Saldo mindestens einmal in Form eines Betrages in der Karte steht. Die Kontrolle des Saldos erfolgt durch einen verschlüsselten Wert, der von der Karte intern bei jeder korrekten Transaktion (Laden oder Bezahlen) aus dem Geldbetrag errechnet wird und extern (Terminal, Zentralrechner) überprüft werden kann. Dadurch können sowohl Manipulationen am Betrag als auch der Abbruch einer Geldbörsentransaktion zu einem kritischen Zeitpunkt erkannt werden, da in solchen Fällen Saldo und Kontrollwert nicht übereinstimmen.
Das Datum für den Kontrollwert kann nur von der Karte selbst oder mit Kenntnis der entsprechenden Schlüssel beschrieben werden, sodass bei einer Manipulation des Saldos kein korrekter Kontrollwert in der Karte stehen kann. Eine Differenz zwischen Saldo und Kontrollwert kann nur durch einen Absturz des Terminals zwischen Abbuchung des Betrags vom Saldo und Erzeugung des Kontrollwerte verursacht werden, wenn das Terminal daraufhin nicht mehr in Betrieb geht oder die Korrekturfunktion der Terminalkarte nicht erfolgreich aufgerufen werden kann. Im Fall einer Unstimmigkeit zwischen Saldo und Kontrollwert kann aufgrund der Einträge im Logfile der
EMI3.1
gen soll.
Einen zusätzlichen Schutz gegen Manipulationen stellen die Einträge im Ladetransaktionslogfile dar. Sie werden bei jeder Geldbörsenladung vom Zentralrechner mit einer asymmetrischen Unterschrift (z. B. RSA) versehen angeliefert und von der Karte ins Logfile übernommen. Aufgrund der Unterschrift kann jedes Terminal, das den zugehörigen öffentlichen Schlüssel kennt, überprüfen, ob die letzte Geldbörsenladung von einem bestimmten Zentralrechner (Sicherheitsmodul) autorisiert wurde und somit korrekt erfolgte. allgemeine Transaktionsdaten, asymmetr. Unterschrift (Zähler, Geldbörsenaldo, Ladewert,...)
Zusätzlich können der Geldbörsensaldo und der Transaktionszähler (Einzeltransaktionen) aufgrund der Einträge im Ladetransaktionslogfile der Karte auf ihre Plausibilität geprüft werden.
Diese Prüfung kann bei jeder Transaktion erfolgen, sollte jedoch zumindest bei jeder Ladetransaktion vorgenommen werden. Weiters werden die zufällig erzeugten Einzeltransaktionen (enthalten Geldbörsensaldo) bei den Einreichungen gegen die zuletzt erfolgte Ladetransaktion auf ihre Plausibilität geprüft, wobei Transaktionszähler und Geldbörsensaldo der letzten Ladung mit den aktuellen Werten der Karte verglichen werden und dabei auch alle anderen vorliegenden Einzeltransaktionen der Karte berücksichtigt werden.
Die Erfindung zeichnet sich auch dadurch aus, dass auf der Terminalkarte neben einer Wäh-
<Desc/Clms Page number 4>
rung noch mehrere "Währungen" für geschlossene Geldbörsen und im Terminal eine Währungstabelle für offene Geldbörsen anderer Länder angegeben werden können. Eine Währung ist die Hauptwährung (in der Regel die Landeswährung). Beim Bezahlvorgang wird zuerst von der Termi- nalkarte überprüft, ob die Währung der Kundenkarte mit der der Terminalkarte oder mit einer "Währung" für geschlossene Geldbörsen der Terminalkarte übereinstimmt. Wenn hier eine Übereinstimmung vorliegt, kann bezahlt werden. Ohne Übereinstimmung muss auf eine andere im Terminal eingebaute Terminalkarte oder eine Online im Zugriff stehende Terminalkarte umgeschaltet werden.
Wenn die Währung der Kundenkarte nicht die Hauptwährung darstellt, muss die Währung der Kundenkarte in der Währungstabelle enthalten sein, ansonsten wird die Kundenkarte abgelehnt.
Die Währungstabelle ist in der Regel im Terminal gespeichert (und nicht in der Terminalkarte), da verschiedene Währungen oft verschiedene Terminalkarten erfordern. Sie enthält die aktuellen Kurse der angegebenen Währungen. Mit Hilfe der Währungstabelle kann mit der Kundenkarte stets in der eigenen Währung bezahlt werden, auch wenn sie im Ausland verwendet wird. Wenn die Währung der Kundenkarte nicht mit der Hauptwährung des Terminals übereinstimmt, sollte das Terminal den Zahlungsbetrag in beiden Währungen anzeigen.
EMI4.1
dienen nur für geschlossene Geldbörsen).
PATENTANSPRÜCHE :
1. System zur Durchführung des elektronischen Zahlungsverkehrs an Bankautomaten (wie z.B. Geldausgabeautomaten), Point-of-Sale-Terminals und Automaten jeder Art, bei dem alle sicherheitsrelevanten Daten in Chipkarten und Sicherheitsmodulen geschützt verwaltet werden, wichtige anwendungsspezifischen Daten in Terminalkarten oder Chipkarten ver- waltet werden, die auch die Schlüssel dieser Anwendung verwahren und die Terminals über eine oder mehrere Chipkartenieseeinheiten für Terminalkarten verfügen, sodass sie dahingehend konzipiert sein können, dass eine Erweiterung des Systems um zusätzliche
Anwendungen sehr einfach durch Stecken weiterer Terminalkarten erfolgen kann, da- durch gekennzeichnet,
dass der Sicherheitsmechanismus zum Schutz von Transaktio- nen durch Verwendung elektronischer Unterschriften sich dadurch auszeichnet, dass jede
Transaktion von der Kundenkarte zweimal unterschrieben wird und zwar unter Verwen- dung von zwei auf der Karte gespeicherten Schlüsseln, die nicht gegenseitig abgeleitet werden können und bei denen es sich um einen "dezentral verwalteteten Offline-Schlüs- sel" und um einen "zentral verwalteten Online-Schlüssel" handelt, wobei die Unterschrift mit dem dezentralen Schlüssel vor Ort Im Terminal überprüft wird, was eine sofortige Ab- lehnung einer Transaktion durch das Terminal ermöglicht und wobei die Unterschrift mit dem zentral verwalteten Schlüssel erst am Zentralrechner verifiziert werden kann,
sodass selbst durch manipulierte Terminalsoftware mit Kenntnis oder Korrumpierung des dezent- ralen Schlüssels eine manipulierte Transaktion am Zentralrechner als verfälscht erkannt wird.