DE69022610T2 - Verfahren zum Chiffrieren von übertragenen Daten, das einen Einheitsschlüssel anwendet. - Google Patents

Verfahren zum Chiffrieren von übertragenen Daten, das einen Einheitsschlüssel anwendet.

Info

Publication number
DE69022610T2
DE69022610T2 DE69022610T DE69022610T DE69022610T2 DE 69022610 T2 DE69022610 T2 DE 69022610T2 DE 69022610 T DE69022610 T DE 69022610T DE 69022610 T DE69022610 T DE 69022610T DE 69022610 T2 DE69022610 T2 DE 69022610T2
Authority
DE
Germany
Prior art keywords
terminal
dynamic key
key
host
host computer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69022610T
Other languages
English (en)
Other versions
DE69022610D1 (de
Inventor
Martin M Atalla
Ralph R Bestock
Webster D Hopkins
Jae-Young Kim
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tandem Computers Inc
Original Assignee
Tandem Computers Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tandem Computers Inc filed Critical Tandem Computers Inc
Application granted granted Critical
Publication of DE69022610D1 publication Critical patent/DE69022610D1/de
Publication of DE69022610T2 publication Critical patent/DE69022610T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1016Devices or methods for securing the PIN and other transaction-data, e.g. by encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Small-Scale Networks (AREA)

Description

  • Die Erfindung betrifft das Gebiet der Verarbeitung von elektronischen Transaktionen und insbesondere ein Verfahren zum Codieren von Nachrichten auf einem herkömmlichen Computernetz- werk zwischen einer Vielzahl von entfernten Terminals und einem Hostrechner, welcher eine Verschlüsselungstechnik verwendet, wobei ein eindeutiger Schlüssel von dem Hostrechner für jedes Terminal oder für jede Transaktion oder eine ausgewählte Anzahl von Transaktionen durch dieses Terminal erzeugt wird.
  • Mit dem Aufkommen der elektronischen Verarbeitung von finanziellen Transaktionen wurde eine nicht vorhersehbare Revolution der Art, auf welche geschäftliche Transaktionen durchgeführt werden, ausgelöst. Transaktionen, welche zuvor die physische Übergabe von Geld oder Handelspapieren, wie Bankschecks, erfordert haben, werden nun elektronisch unter Einsatz von Computern ausgeführt.
  • Während der vergangenen Jahre ist die elektronische Verarbeitung von finanziellen Transaktionen immer üblicher geworden. Normale Verbraucher können nun Lebensmittel, Benzin und Flugzeugtickets unter Verwendung einer automatisierten Bankkarte oder einer Kreditkarte kaufen, welche an diese von ihren jeweiligen Banken ausgegeben wurde. Durch Einsatz der elektronischen Verarbeitung von Geldtransaktionen zum Kaufen solcher Waren und Dienstleistungen übertragen die Verbraucher elektronisch Guthaben von ihrer eigenen Bank oder ihrem Kreditkonto zu dem Konto des jeweiligen Verkäufers. Die elektronische Verarbeitung von Geldtransaktionen macht es also überflüssig, daß der Verbraucher Bargeld oder Scheck mit sich trägt. Die Verarbeitung von elektronischen Finanztransaktionen, so wie sie in Zusammenhang mit ihrem üblichen Einsatz für den Verbraucher realisiert ist, wird im allgemeinen auf eine von zwei Weisen umgesetzt.
  • Die erste, üblichste Realisierung der Bearbeitung von elektronischen Finanztransaktionen ist der Geldautomat (Automated Teller Machine), der (in der englischen Sprache) allgemein als ATM bezeichnet wird. Während der vergangenen Jahre hat sich der Einsatz von Geldautomaten so stark ausgeweitet, daß er praktisch zu einer unverzichtbaren Einrichtung wurde, welche Bankkunden inzwischen als eine normale Bankdienstleistung erwarten. Geldautomaten sind normalerweise 24 Stunden am Tag zugänglich, und sie sind üblicherweise im Bankgebäude oder in Gegenden angeordnet, wo sich Verbraucher aufhalten, beispielsweise in Einkaufszentren oder an Flughäfen. Der Bankkunde kann den Geldautomaten verwenden, um die meisten routinemäßigen Banktransaktionen durchzuführen, wie Einzahlungen und Auszahlungen, Überprüfungen des aktuellen Kontostands, Zahlungen mit Kreditkarte und dergleichen.
  • Der zweitüblichste Realisierung der Bearbeitung von elektronischen Finanztransaktionen ist der Verkaufsterminal (Point- of-Sale Terminal), der (in der englischen Sprache) allgemein als POS-Terminal bezeichnet wird. Zur Zeit werden Verkaufs- Terminals am häufigsten an Tankstellen und in Lebensmittelläden angetroffen. Anstatt für ihre Einkäufe mit einem Scheck oder mit Bargeld zu bezahlen, verwenden die Verbraucher ihre elektronische Scheckkarte oder Kreditkarte, um ihre Einkäufe zu "bezahlen", indem sie elektronisch Gelder von ihrem eigenen Konto auf das Konto des Verkäufers übertragen. Verbraucher können also einkaufen und reisen, ohne daß sie eine große Menge Bargeld mit sich tragen müssen, um ihre Einkäufe zu machen.
  • Die Bearbeitung elektronischer Finanztransaktionen hat jedoch eine große Vielzahl von Sicherheitsproblemen geschaffen, welche auf diesem Gebiet einzigartig sind. Während die Bearbeitung von elektronischen Finanztransaktionen sehr wünschenswert ist, weil mit ihr nicht mehr notwendig ist, Bargeld für Einkäufe bei sich zu haben, und eine sehr effiziente Art zum Durchführen von Transaktionen ohne menschliche Zwischenschaltung ist, sind Sicherheitsbedenken von größter Wichtigkeit, da das Potential für einen Mißbrauch beträchtlich ist. Nicht autorisierte Personen, welche im Handel üblicherweise als "Widersacher" bezeichnet werden, könnten Zugang zu den Verarbeitungssystemen für die elektronischen Finanztransaktionen erhalten und eine große Vielzahl von schädlichen räuberischen Transaktionen durchführen. So, wie ein Tresor von großer Bedeutung für den Schutz von Währungen und Geschäftspapieren ist, ist also ein effektives Mittel zum Sichern der elektronischen Verarbeitungssysteme für Finanztransaktionen auf dem Gebiet der Bearbeitung von elektronischen Finanztransaktionen genauso wichtig.
  • Bei den meisten vorhandenen Verarbeitungssystemen für elektronische Finanztransaktionen gibt die Bank oder eine andere Einrichtung, die Karten ausgibt, an den Kunden eine Karte aus, die magnetisch mit der Kontonummer des Benutzers codiert wurde. Ferner gibt die Bank an den Kunden eine persönliche Geheimnummer oder Geheimzahl (PIN) aus oder ermöglicht dem Kunden, diese Geheimnummer zu wählen, die nur dem Kunden bekannt ist und dazu verwendet wird, den Zugang des Kunden zu einem Verarbeitungssystem für elektronische Finanzübertragungen zum Zeitpunkt einer gegebenen Transaktion zu autorisieren. Normalerweise merkt sich der Kunde die Geheimnummer. Die Geheimnummer und die Karte ermöglichen dem Kunden den Zugang zu dem System und geben ihm, wenn sie von der Person richtig eingesetzt werden, den erwünschten Zugang zu dem System.
  • Wenn ein Kunde eine elektronische Transaktion in einem derartigen System nach dem Stand der Technik durchführen will, gibt er seine Geheimnummer bei dem Geldautomaten oder dem Verkaufsterminal ein, bevor er mit der Transaktion fortfährt. Der Bankautomat oder der Verkaufsterminal liest ferner die Karte der Person, welche die Geheimnummer eingegeben hat. Normalerweise würde dann eine Überprüfung der Identität durch einen Vergleich der Geheimnummer oder einer anderen von der Geheimnummer abgeleiteten Zahl und der Kontonummer des Kunden mit den Unterlagen der Einrichtung, welche die Karte ausgegeben hat, durchgeführt. Daher muß die Geheimnummer, welche normalerweise die Grundlage für diesen Überprüfungsvorgang bildet, von dem Geldautomaten oder dem Verkaufsterminal zu einer entfernten Verarbeitungsstation für deren Verarbeitung übertragen werden.
  • Obwohl das oben beschriebene Karten- und Geheimnummernsystem einen gewissen Schutz vorsieht, ist dieses System allein nicht ausreichend sicher, die Unversehrtheit des Verarbeitungssystem für die elektronische Finanztransaktion zuverlässig zu erhalten.
  • Das System ist verletzbar, wenn beispielsweise die Geheimnummer selbst unverschlüsselt zu einer entfernten Verarbeitungsstation übertragen wird. Ein Widersacher, welcher die Übertragungsleitungen oder andere Verbindungskanäle überwacht, könnte die Geheimnummer auffangen und unter Verwendung dieser Information einen nicht autorisierten Zugang zu den Konten des Kunden erhalten. Es ist daher nachteilig, die Geheimnummer von dem Geldautomaten oder dem Verkaufsterminal zu der entfernten Verarbeitungsstation zu übertragen, zumindest nicht in unverschlüsselter Form.
  • Demzufolge wird bei vielen vorhandenen Systemen die Geheimnummer von dem Geldautomaten oder dem Verkaufsterminal in verschlüsselter Form übertragen. Bei einem derartigen System wird die Geheimnummer unter Verwendung einer vorgegebenen Zahl verschlüsselt, die als ein "Schlüssel" bekannt ist, um eine verschlüsselte Geheimnummer zu erzeugen. Theoretisch ist damit die Geheimnummer sicher, wenn sie zu der entfernten Verarbeitungsstation übertragen wird, weil sie unter Verwendung eines Schlüssels verschlüsselt wurde, der nur der Einrichtung bekannt ist, welche die Karte ausgibt. Wenn jedoch ein Widersacher den Schlüssel herausfindet, ist das System nicht mehr sicher, weil die Geheimnummer ermittelt werden kann, wenn der Verschlüsselungsprozeß umgekehrt werden kann.
  • Eine unauthorisierte Aneignung des Schlüssels ist ein spezielles Problem beim Einsatz von Verkaufsterminals. Bei Verkaufsterminals sitzt der Schlüssel normalerweise in dem Terminal selbst, um eine Verschlüsselung vor Ort zu ermöglichen, bevor die Geheimnummer übertragen wird. Da die Verkaufsterminaleinheiten normalerweise tragbar sind, besteht ein erhebliches Risiko, daß der Terminal gestohlen und/oder auseinandergenommen wird und der Schlüssel ermittelt wird. Unter diesen Bedingungen wird das System wiederum verletzbar, weil ein Widersacher den Schlüssel dazu verwenden könnte, andere übertragene verschlüsselte Geheimnummern zu entschlüsseln.
  • Es sind auch verbesserte Datenübertragungs-Verschlüsselungssysteme nach dem Stand der Technik bekannt, bei denen ein eindeutiger Schlüssel für jede Transaktion zwischen einem Hostrechner und einem speziellen Terminal verwendet wird (siehe WO-A-81/02655). Bei einem derartigen System weist jedes Terminal 21 eindeutige Schlüsselregister auf, in denen die eindeutigen Schlüssel gespeichert sind. In diesem System stehen daher insgesamt 2²¹ eindeutige Schlüssel zur sequentiellen Verwendung durch das Terminal zur Verfügung, um die zwischen diesem und dem Hostrechner übertragenen Daten zu codieren. Ein solches System ist sehr speicheraufwendig, weil es einen sehr großen nicht-flüchtigen Speicher in jedem der Terminals benötigt, um die Vielzahl der verwendeten Schlüssel zu speichern. Das Hostsystem speichert einen eindeutigen Hostschlüssel, der zum Decodieren der Vielzahl von Übertragungen von den in diesem System eingesetzten Terminals verwendet wird. Die zum Codieren der Übertragung eingesetzte Folge von eindeutigen Schlüssein wird also vollständig von jedem einzelnen Terminal und nicht von dem Hostrechner gesteuert.
  • Bei diesem System nach dem Stand der Technik, wird ein spezieller Schlüssel, nachdem er einmal von dem Terminal zum Codieren einer speziellen Datenübertragung verwendet wurde, abgeworfen, und der nächste Schlüssel in der Folge wird für die nächste Datenübertragung verwendet. Die Anzahl der Transaktionen ist also mit der Anzahl der in dem flüchtigen Speicher des Terminals gespeicherten Schlüssel verknüpft. Die Anzahl der Transaktionen ist auf 2N begrenzt, wobei N die maximale Anzahl der Schlüsselregister ist, welche in dem Speicher zur Verfügung stehen. Ferner macht in praktischer Hinsicht der erforderliche große nicht-flüchtige Speicher solche Systeme teurer in der Herstellung, weil die Kosten für nicht flüchtige Speicherchips, welche in den Terminals verwendet werden, hoch sind.
  • Ein weiterer Nachteil solcher Systeme ist, daß dann, wenn einmal alle eindeutigen Schlüssel in den Terminal verbraucht sind, das Terminal von seiner entfernten Position abgerufen werden muß, um die Schlüssel auszuwechseln. Das Terminal muß also in regelmäßigen Abständen, abhängig von der Häufigkeit seines Einsatzes, aus der Umgebung abgeholt werden, um die eindeutigen Schlüssel austauschen zu können. Ferner müssen dann, wenn aus Sicherheitsgründen der Schlüssel des Hostsystems geändert werden soll, alle in den entfernten Terminals verwendeten Schlüssel geändert werden. Da dies wiederum das Abrufen aller Terminals aus ihren entfernten Postionen erfordern würde, ist eine solche Anderung des Schlüssels des Hostsystems nur schwer durchführbar.
  • Die EP-A-0 272 230 offenbart den Austausch eines Anfangs-Mastercodes, der zuvor in einem Schlüsselbankspeicher gespeichert wurde, durch einen willkürlich gewählten neuen Mastercode, der in einer mit der Schlüsselbank verbundenen Sicherheitseinrichtung erzeugt wird.
  • Es ist daher eine Aufgabe der vorliegenden Erfindung, ein Datenverschlüsselungsystem vorzusehen, bei dem der Verschlüsselungsschlüssel nicht durch Überwachung der vergangenen Transaktionen entdeckt werden kann.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, ein Datenverschlüsselungssystem vorzusehen, bei dem eine Vielzahl von Verschlüsselungsschlüsseln von dem Hostrechnersystem als ein Funktion eines einzelnen Masterschlüssels in dem Hostsystem erzeugt werden, wodurch diese in entfernten Terminals gespeicherten Verschlüsselungsschlüssel mit neuen eindeutigen Schlüssein nach jeder Transaktion oder periodisch, je nach Vorgabe des Hostrechners, von dem Hostsystem aktualisiert werden können.
  • Es ist eine weitere Aufgabe der vorliegenden Erfindung, ein Datenverschlüsselungssystem vorzusehen, welches für jede sichere Datenübertragung zwischen einem speziellen Terminal und einem Hostsystem einen anderen Verschlüsselungsschlüssel vorsieht.
  • Es eine weitere Aufgabe der Erfindung, ein sicheres Verschlüsselungssystem vorzusehen, welches eine minimale Menge an nicht-flüchtigen Rechenspeicher benötigt.
  • Es ist eine weitere Aufgabe der Erfindung, ein Verschlüsselungssystem vorzusehen, dessen Verschlüsselungsschlüssel gegen den nicht autorisierten körperlichen Zugriff auf ein entferntes Terminal gesichert sind.
  • Es ist eine weitere Aufgabe der Erfindung, ein Verschlüsselungssystem vorzusehen, bei dem eine Vielzahl von Verschlüsselungsschlüsseln als eine Funktion eines einzelnen in dem Hostrechner gespeicherten Masterschlüssels erzeugt werden und bei dem diese Vielzahl von Verschlüsselungsschlüsseln durch Änderung des einzelnen in dem Hostrechner gespeicherten Masterschlüssels geändert werden können.
  • Die Erfindung sieht ein Verfahren zum Verschlüsseln von Daten für eine Übertragung zwischen einem Hostrechner und jedem von mehreren entfernten Terminals in einem Netzwerk vor. Es wird ein Verfahren zum periodischen Erzeugen eines eindeutigen dynamischen Verschlüsselungsschlüssels für jeden der mehreren Terminals vorgesehen, wozu ein Systemkeimschlüssel verwendet wird, der nur in dem Hostrechner vorhanden ist. Der dynamische Verschlüsselungsschlüssel wird zur Verwendung durch das Terminal beim Verschlüsseln von Daten, welche zu dem Hostrechner übertragen werden, und zum Entschlüssein von Daten, welche von dem Hostrechner empfangen werden, erzeugt. Das Verfahren umfaßt das Speichern des zuvor von dem Hostrechner für dieses Terminal erzeugten dynamischen Schlüssels bei diesem Terminal.
  • Das Verfahren gemäß eines ersten Aspekts der Erfindung umfaßt ferner die folgenden Verfahrensschritte:
  • Empfangen einer Anforderung für einen neuen dynamischen Schlüssel von einem der Terminals durch den Hostrechner, wobei die Anforderung des neuen dynamischen Schlüssels einen vorgegebenen Terminalidentifikator für dieses Terminal aufweist,
  • Bestimmen des zuvor für dieses Terminal von dem Host erzeugten dynamischen Schlüssels, wobei der zuvor von dem Host erzeugte dynamische Schlüssel momentan in dem Terminal gespeichert ist, Erzeugen eines neuen dynamischen Schlüssels für das Terminal als eine Funktion des Keimschlüssels und des vorgegebenen Terminalidentifikators für das Terminal in dem Hostrechner,
  • Verschlüsseln des neuen dynamischen Schlüssels in dem Hostrechner unter Verwendung des zuvor von dem Hostrechner erzeugten dynamischen Schlüssels,
  • Übertragen des verschlüsselten neuen dynamischen Schlüssels von dem Hostrechner zu dem Terminal,
  • Entschlüsseln des neuen dynamischen Schlüssels in dem Terminal unter Verwendung des dynamischen Schlüssels, der zuvor von dem Hostrechner erzeugt wurde und momentan in dem Terminal gespeichert ist.
  • Weitere Aspekte und Ausführungsformen der Erfindung sind in den nachfolgenden Ansprüchen 2 bis 21 definiert.
  • In den Figuren zeigen:
  • Fig. 1 ein Flußdiagramm des bevorzugten Verfahrens zum Erzeugen eines dynamischen Anfangsschlüssels in dem Hostrechner für ein gegebenes entferntes Terminal, das mit dem Hostrechner verbunden ist, und zum Bewirken der Installation des dynamischen Anfangsschlüssels in dem entfernten Terminal,
  • Fig. 2 ein Flußdiagramm des bevorzugten Verfahrens zum Durchführen der ersten Benutzertransaktion zwischen einem der entfernten Terminals und dem Hostrechner,
  • Fig. 3 ein Flußdiagramm des bevorzugten Verfahrens zum Durchführen der n-ten Benutzertransaktion zwischen einem der entfernten Terminals und dem Hostrechner,
  • Fig. 4 eine schematische Darstellung des bevorzugten Verfahrens zum Erzeugen des dynamischen Schlüssels KDTn,
  • Fig. 5 eine schematische Darstellung, welche zeigt wie verschiedene Verschlüsselungsschlüssel erzeugt werden, die bei dem bevorzugten Verfahren zum Verschlüsseln und Entschlüssein der verschiedenen Arten von Daten verwendet werden, welche zwischen dem Hostrechner und einem der entfernten Terminals übertragen werden.
  • Mit Bezug auf die beigefügten Zeichnungen ist im folgenden das bevorzugte Verfahren gemäß dieser Erfindung beschrieben.
  • Fig. 1 ist ein Flußdiagramm, welches die Schritte abbildet, die in einer Schlüsselinitialisierungseinheit (-Terminal) (KIU) 15, dem Hostrechner 20 und in jedem der mehreren entfernten Terminals 10, welche mit dem Hostrechner und der KIU verbunden sind, zum Initialisieren des Terminals 10 mit seinem ersten dynamischen Schlüssel vorgenommen werden.
  • Bei der bevorzugten Ausführungsform hat die Schlüsselinitialisierungseinheit (KIU) die Funktion, den dynamischen Anfangsschlüssel KDT&sub0; zu erzeugen und in das Terminal zu laden. Die KIU-Einrichtung ist bei einer von dem Host und den Terminals getrennten, physisch sicheren Stelle angeordnet, um weitere Sicherheit für das Netzwerk zu schaffen. Der Fachmann auf diesem Gebiet wird erkennen, daß die durch die KIU gesicherte Funktion auch von dem Hostrechner durchgeführt werden könnte.
  • Das Verfahren von Fig. 1 beginnt mit der Installationsfolge 11 des Terminals 10, die ausgeführt werden muß, bevor das Terminal 10 angeschlossen werden kann. Bei der Installationsfolge 11 muß eine minimale Anzahl von erforderlichen Datenelementen in dem Terminal installiert werden. Diese Installation kann während der Herstellung des Terminals oder durch einen Endverbraucher des Host/Terminal-Netzwerks durchgeführt werden. Im zweiten Fall kann der Netzwerk-Überwacher, wie eine Bank oder eine Sparkasse oder Kreditanstalt, seine eigene spezielle Gruppe von erforderlichen Daten installieren. Die minimalen Daten, welche bei der bevorzugten Ausführungsform in der Installationsfolge 11 in dem Terminal 10 gespeichert werden müssen, umfassen eine Terminalidentifikationsnummer (TIN) für das Terminal, eine Transaktionsnummer (XSN) für das Terminal und einen anfänglichen Kommunikationsschlüssel (initial communication key; ICK) für das Terminal, welcher für alle von dem Hostrechner bedienten Terminals gleich ist. Zusätzlich werden vorzugsweise auch eine Anzahl von variablen Nummern in dem Terminal 10 gespeichert, deren Funktion sich aus der Erläuterung der Fig. 2 ergibt.
  • Ebenso werden auch die Anfangsinstallationsfolgen 21 und 22 in dem Hostrechner 20 und der KIU 15 benötigt. Wie die Anfangsinstallationsfolge 11 für das Terminal 10, können die Anfangsinstallationsfolge 21 für den Host 20 und die Folge 22 für die KIU 15 bei der Herstellung oder durch die Überwachungsperson des Host/Terminal-Netzwerksystems durchgeführt werden. Die Mindestdaten, welche bei der Installationsfolge 21 gemäß der bevorzugten Ausführungsform dieses Verfahrens in dem Hostrechner 20 gespeichert werden müssen, umfassen einen oder mehrere System-Keimschlüssel (SEED.l, SEED.r), welche bei der bevorzugten Ausführungsform von dem Hostrechner verwendet werden, um eine Reihe von dynamischen Schlüsseln für jedes Terminal, wie unten erläutert, zu erzeugen&sub1; wobei ein Schlüssel für jede Transaktion oder eine Gruppe von Transaktionen vorgesehen wird, wenn eine Anforderung nach einem neuen dynamischen Schlüssel von einem der Terminals in dem Netzwerk empfangen wird. Zusätzlich werden auch während der Installationsfolge 21 veränderliche Nummern in dem Hostrechner 20 gespeichert, die äquivalent zu den Eingaben in das Terminal 10 bei der Anfangsinstallationsfolge 11 sind. Auch bei der Installationsfolge 22 werden Keimschlüssel und äquivalente variable Nummern in die KIU 15 eingegeben. Zusätzlich wird der anfängliche Kommunikationsschlüssel (ICE), welcher bei der Folge 11 in das Terminal 10 eingegeben wird, bei der Folge 22 in die KIU 15 eingegeben.
  • Wenn einmal die Anfangsinstallationsfolgen 11 und 22 in der KIU 15 und jedem Terminal 10 in dem Netzwerk abgeschlossen sind, kann das einzelne Terminal Ti bei 12 initialisiert und angeschlossen werden. Das in Fig. 1 abgebildete Verfahren zum Initialisieren der Terminals in dem Netzwerk wird für jedes Terminal Ti durchgeführt, wobei (i) eine ganze Zahl zwischen 1 und X ist und wobei X gleich der gesamten Anzahl der Terminals in dem Netzwerk entspricht. Während des Initialisierungsschrittes 12 sendet das Terminal 10 eine Schlüsselanforderung an die KIU 15. Der Initialisierungsschritt 12 wird im allgemeinen durchgeführt, sobald das Terminal bei seiner entfernten Position installiert ist.
  • Der Initialisierungsschritt 12 umfaßt die Übertragung einer Schlüsselanforderung für Ti. Die Schlüsselanforderung umfaßt Daten, welche Ti gegenüber der KIU identifizieren. Bei Empfang der ersten Schlüsselanforderung von dem Terminal 10 erzeugt die KIU 15 sodann bei einem Schritt 24 gemäß dem in Fig. 4 beschriebenen Verfahren den KDT&sub0;, wobei Fig. 4 die Erzeugung eines dynamischen Schlüssels KDTN für ein spezielles Terminal beschreibt. Die Datenfolge bei dem bevorzugten Verfahren, welche von dem Terminal 10 bei Anforderung eines Schlüssels von der KIU 15 bei der Initialisierung 12 des Terminals gesendet wird, umfaßt die Terminalidentifikationsnummer (TIN), welche dem Terminal zugeordnet ist, und die Transaktionsfolgenummer (XSN) für das Terminal. Vorzugsweise beginnt die XSN für ein gegebenes Terminal bei 000 und wird bei jeder von dem Terminal durchgeführten Transaktion um eins inkrementiert. Der Fachmann auf diesem Gebiet erkennt jedoch, daß jede Art der Nummerierung aufeinanderfolgender Transaktionen wie eine Folge funktioniert. Zusätzlich umfaßt bei dem bevorzugten Verfahren dieser Erfindung die Datenkette (Data String) auch die Übertragung von 8 Bits mit dem Wert FF (hex) am Anfang der Datenkette, um eine Datenübertragung von insgesamt 64 Bit vorzusehen.
  • Beim Empfang dieser Daten durch die KIU 15 erzeugt der Host den KDT&sub0; bei einem Schritt 24 gemäß dem mit Bezug auf Fig. 4 beschriebenen Verfahren. Wie mit Bezug auf Fig. 4 noch mit weiteren Einzelheiten beschrieben wird, werden die Eingangsdaten, welche die TIN und die XSN umfassen, über eine Anzahl von Verschlüsselungsschritten verarbeitet, um einen eindeutigen KDT&sub0; für das Terminal 10 zu erzeugen.
  • Nachdem KDT&sub0; bei 24 erzeugt worden ist, wird er dann bei 26 von der KIU 15 unter Verwendung des ICK als dem Verschlüsselungsschlüssel verschlüsselt. Das Kryptogramm, welches diese Verschlüsselung ausdrückt, ist mit EICK[KDT&sub0;] bezeichnet. Nach der Verschlüsselung von KDT&sub0; durch die KIU 15 bei 26 wird der verschlüsselte KDT&sub0; zu dem Terminal 11 übertragen.
  • Die Verschlüsselung von Daten kann unter Verwendnung eines Verschlüsselungsalgorithmus wie dem NBS-Algorithmus (NBS = National Bureau of Standards), durchgeführt werden, der eine von dem Handelsministerium der USA anerkannte staatliche Informationsverarbeitungsnorm ist. Derselbe normierte NBS-Algorithmus kann später dazu verwendet werden, die verschlüsselten Daten zu entschlüsseln, um die Daten in ihrer originalen Form wieder aufzufinden.
  • Bei Verwendung des ICK, der während der Installationsfolge 11 eingegeben wurde, kann das Terminal 10 beim Schritt 16 den KDT&sub0; entschlüsseln, um den KDT&sub0; wiederherzustellen. Dieser erste dynamische Schlüssel wird dann zur Verwendung bei der Verschlüsselung und Entschlüsselung nachfolgender Übertragungsdaten mit dem Host 20 gespeichert.
  • Fig. 2 zeigt das Flußdiagramm eines bevorzugten Verfahrens zur Realsierung der ersten Transaktion zwischen einem Terminal 10, das mit dem anfänglichen dynamischen Schlüssel KDT&sub0; initialisiert wurde, und dem Hostrechner 20.
  • Die Kommunikation mit dem Hostrechner wird im allgemeinen von dem Terminal 10 ausgelöst, wenn ein Benutzer des entfernten Terminals eine Transaktion durchführen will. Der Benutzer wird üblicherweise seine oder ihre Kreditkarte in das Terminal einführen und gleichzeitig eine persönliche Identifikationsnummer (PIN) oder Geheimnummer eingeben, um die Transaktion zu beginnen. Die Kreditkarte weist üblicherweise einen Magnetstreifen auf, der an ihrer Rückseite befestigt ist und auf dem die Hauptkontonummer (PAN) des Benutzers gespeichert ist oder alternativ eine Benutzerseriennummer (USN) gespeichert ist, welche Informationen erhält, mit der das Hostterminal auf die Geheimnummer des Benutzers wirken kann, um die Transaktion zuzulassen, welche der Benutzer durchführen möchte.
  • Nachdem die Daten bei 30 von einem Benutzer eingegeben worden sind, erzeugt das Terminal 10 einen PIN-Block 32 über eine vorbestimmte Folge von Schritten, welche üblicherweise die Geheimnummer (PIN) mit der PAN oder der USN kombiniert. Jede der üblichen Verfahren zum Erzeugen dieses PIN-Blocks, das im Stand der Technik anerkannt ist, kann hierfür verwendet werden. Zwei gut bekannte Verfahren sind beispielsweise die Verkettung und die Exklusiv-ODER-Verknüpfung der Geheimnummer und der PAN/USN, um den PIN-Block zu bilden. Das Terminal 10 erzeugt dann einen variablen Verschlüsselungsschlüssel, KPE&sub0;, bei 31. Bei dem bevorzugten Verfahren kann eine beliebige Anzahl von variablen Anfangsschlüsseln erzeugt werden, welche zum Codieren der Datenübertragung verwendet werden, die zum Durchführen spezieller Transaktionen eingesetzt werden. Solche variablen Schlüssel umfassen einen anfänglichen PIN-Verschlüsselungsschlüssel (KPE&sub0;) zur Verwendung bei der Verschlüsselung einer Geheimzahl (PIN) eines Benutzer des Terminals, einen Schlüssel-Verschlüsselungsschlüssel (KEK&sub0;), der zum Entschlüssein eines späteren von dem Host erzeugten dynamischen Schlüssel verwendet wird, und einen Nachrichtenschlüssel (KMSG&sub0;), der zum Verschlüsseln anderer Datenübertragungen zwischen dem Terminal und dem Host verwendet wird. Wie vollständiger mit Bezug auf Fig. 5 beschrieben sein wird, werden die variablen Nummern, welche bei der Anfangsinstallationsfolge 11 von Fig. 1 eingegeben werden, dazu verwendet, diese variablen Schlüssel zu erzeugen, und sie müssen lediglich zwischen dem Host und einem speziellen Terminal Ti äquivalent sein. Eine solche Konfiguration würde erfordern, daß einzelne Gruppen von variablen Nummern für jedes Terminal 10 in dem Netzwerk in dem Host 20 gespeichert werden, wodurch ein großer Speicher in dem Host erforderlich würde. Ein Vorteil dieser Konfiguration ist, daß sie eine größere Sicherheit bei der Datenübertragung schaffen würde. Alternativ wird bei einer zweiten Konfiguration in Betracht gezogen, eine gemeinsame Gruppe von variablen Nummern für alle Terminals 10 vorzusehen, wodurch nur eine Gruppe von variablen Nummern in dem Host 20 gespeichert werden muß.
  • Der PIN-Block wird dann mit dem anfänglichen PIN-Verschlüsselungsschlüssel (KPE&sub0;) verschlüsselt, der wie oben erläutert erzeugt wurde. Der Fachmann auf diesem Gebiet wird dabei erkennen, daß jeder Schlüssel dazu verwendet werden kann, in diesem Stadium den PIN-Block zu verschlüsseln, einschließlich dem dynamischen Anfangsschlüssel KDT&sub0;. Bei dem bevorzugten Verfahren dieser Erfindung wird jedoch der variable KPE&sub0; dazu verwendet, zusätzliche Sicherheit für die Übertragung der Geheimnummer des Benutzers zu dem Host vorzusehen. Wenn einmal bei 34 die Verschlüsselung des PIN-Blocks abgeschlossen ist, werden die Daten, welche durch das Kryptogramm EKPE(0) [PB] dargestellt werden, bei 36 zu dem Host 20 übertragen.
  • Der Host 20 befindet sich dann in einem Zustand, in dem er eine Transaktionsanforderung von dem anfordernden Terminal (RTi) bei 33 erwartet. Der Host 20 muß dann den speziellen KDT&sub0; ermitteln, der an das Terminal 10 ausgegeben werden soll.
  • Zwei Alternativen zum Ermitteln von KPE&sub0; durch den Host 20 werden in dieser Erfindung betrachtet. Bei einer Alternative kann das Hostsystem den momentanen dynamischen Schlüssel für jedes Terminal Ti in dem Netzwerk in einem nicht-flüchtigen Speicher speichern. Bei Empfang des verschlüsselten PIN-Blocks bei 33 von dem Terminal 10 kann der Host den momentanen dynamischen Schlüssel für das Terminal 10, welches bei 35 eine Transaktion anfordert (RT), aus dem Speicher abrufen und zum Erzeugen von KPE&sub0; bei 37 oder anderer Variablen, je nach Bedarf, verwenden. Bei diesem Verfahren wäre für jeden speziellen dynamischen Schlüssel, der erzeugt und an jedes Terminal Ti in dem Netzwerk ausgegeben wird, eine eindeutige Speicherregisteradresse in dem Host erforderlich. Bei einer zweiten Alternative wird die Verwendung der momentanen Eingangsdaten (TIN//SEQ-Nummer) von dem Terminal Ti, welches eine Transaktion anfordert (RT), in Betracht gezogen, um erneut den speziellen KDT&sub0; bei 35 zu erzeugen, der zuvor an das Terminal 10 ausgegeben wurde. Wenn der Host 20 einmal den KDT&sub0; auf diese Weise ermittelt hat, kann er danach den KPE&sub0; bei 37 und andere variable Schlüssel nach Bedarf erzeugen. Der Host verwendet dann den KPE&sub0; zum Entschlüssein des PIN-Blocks beim Schritt 38.
  • Wenn der PIN-Block einmal entschlüsselt wurde, verarbeitet der Host dann den PIN-Block bei 40, um zu ermitteln, ob die eingegebene Geheimnummer (PIN) und die PAN/USN übereinstimmen, wodurch angezeigt wird, daß die vom Kunden angeforderte Transaktion genehmigt werden sollte. Das Verfahren, mit dem das Hostsystem die jeweilige Transaktion überprüft, besteht üblicherweise aus einem Vergleich der eingegebenen Geheimnummer, oder einer Variation dieser in Form des PIN-Blocks, mit der PAN des Kunden oder mit einer PIN-Überprüfungsnummer, die entweder in dem Host 20 gespeichert oder als ein Teil des PIN- Block codiert und übertragen wird. Diese Überprüfungsverfahren sind im Stand der Technik allgemein bekannt. Wenn der Host 20 ermittelt, daß die Geheimnummer und die PAN/USN nicht übereinstimmen, kann der Host ein Signal übertragen, das dem Terminal anzeigt, die Transaktion abzulehnen, bei 42. Wenn der Host 20 ermittelt, daß die Geheimnummer und die PAN/USN übereinstimmen, kann der Host bei 54 seine Zustimmung an das Terminal 10 übermitteln (abhängig davon, ob ein neuer dynamischer Schlüssel gemäß der Ermittlung durch den Host bei dem Schritt 48 erforderlich ist), wodurch dem Terminal 10 erlaubt wird, die Transaktion zu verarbeiten, bei 46. Wenn das Zulassen der Transaktion übertragen wird, 44, kann ein variabler Schlüssel, wie der KMSG&sub0;, dazu verwendet werden, die zwischen dem Host 20 und dem Terminal 10 gesendeten Daten zu verschlüsseln.
  • Nach Beendigung des Transaktionsvorgangs durch den Host 20 ermittelt der Host dann, ob ein neuer dynamischer Schlüssel erzeugt werden soll, bei 48. Gemäß dem bevorzugten Verfahren wird die Genehmigung der Transaktion zu dem Terminal gesendet, wenn der Host ermittelt, daß kein neuer KDT erforderlich ist. Der Fachmann auf diesem Gebiet wird erkennen, daß erfindungsgemäß vorgesehen sein kann, beim Schritt 48 einen neuen KDT zu erzeugen, wenn die Transaktion beim Schritt 40 von dem Host nicht zugelassen wird, obwohl Fig. 2 zeigt, daß der Host beim Schritt 40 eine spezielle Transaktion zuläßt, bevor er zum Schritt 48 weitergeht und einen neuen KDT erzeugt.
  • Das Erzeugen eines neuen dynamischen Schlüssels durch den Host kann so programmiert werden, daß es wahlweise bei einer beliebigen Anzahl von regelmäßigen oder unregelmäßigen Intervallen vorgenommen wird. Der Host könnte beispielsweise so programmiert werden, daß er einen neuen dynamischen Schlüssel für jede Transaktion erzeugt und somit die Werte für alle Variablen KPE, KEK und KMSG bei jeder Transaktionsanforderung durch ein Terninal 10 verändert. Alternativ könnte die Erzeugung eines dynamischen Schlüssels bei jeder 10-ten Transaktion, bei jeder 100-ten Transaktion oder täglich oder monatlich vorgenomnen werden. Wenn der Host ermittelt, daß nach einer bestimmten Transaktion kein neuer dynamischer Schlüssel erzeugt werden muß, geht der Host bei 49 zum Schritt 33 zurück und wartet auf die nächste Übertragung einer Transaktionsanforderung von dem Terminal 10.
  • Wenn der Host ermittelt, daß ein neuer dynamischer Schlüssel benötigt wird, erzeugt der Host 20 einen neuen dynamischen Schlüssel KDT&sub1; bei 50 unter Verwendung der Information, die von dem Terminal 10 zu dem Host übertragen wird, welches diese spezielle Transaktion des Benutzers angefragt hat. Wie mit Bezug auf Fig. 4 beschrieben, umfaßt das bevorzugte Verfahren zum Erzeugen eines neuen dynamischen Schlüssels die Verwendung der TIN und einer Folgenummer, welche von einem speziellen Terminal übertragen wurde, sowie einen irreversiblen Entschlüsselungs/Verschlüsselungs-Algorithmus, um einen eindeutigen dynamischen Schlüssel für das spezielle Terminal Ti zu erzeugen.
  • Wenn der Host 20 einmal den KDT&sub1; erzeugt hat, ermittelt der Host dann den KEK&sub0; bei 51 unter Verwendung des KDT&sub0;. Der KEK&sub0; ist ein variabler Verschlüsselungsschlüssel, der zum Verschlüsseln von KDT&sub1; verwendet wird, bevor dieser zu dem Terminal 10 übertragen wird. Der KDT&sub0; kann von dem Hostrechner auf die oben beschriebene Weise ermittelt werden. Wenn er einmal verschlüsselt ist, wird der KDT&sub1; zum dem Terminal 10 bei 54 in der Form von EKEK(0) [KDT&sub1;] zusammen mit der Genehmigung der Transaktion übertragen.
  • Wenn dieser verschlüsselte KDT&sub1; von dem Terminal 10 empfangen wurde, bei 53, ermittelt das Terminal zunächst, ob der Host 20 einen neuen dynamischen Schlüssel übertragen hat. Wenn kein neuer KDT übertragen wurde, kann das Terminal mit der Verarbeitung der Transaktion 46 weitermachen. Wenn ein neuer KDT übertragen wurde, muß das Terminal den KEK&sub0; unter Verwendung des gespeicherten Wertes von KDT&sub0; erzeugen, bei 55. Der KEK&sub0; wird dann zum Entschlüsseln des neuen dynamischen Schlüssels KDT&sub1; verwendet, bei 56. Der KDT&sub1; wird dann im Schritt 58 in dem Terminal 10 anstelle des KDT&sub0; gespeichert. Sobald der KDT&sub1; gespeichert ist, kann das Terminal 10 ihn für nachfolgende Transaktionen verwenden, um neue Variablen KED&sub1;, KPE&sub1; und KMSG&sub1; zu erzeugen. Nach dem Speichern des KDT fährt das Terminal bei der bevorzugten Ausführungsform mit der Verarbeitung der Transaktion fort, bei 46.
  • Fig. 3 ist ein Flußdiagramm, welches eine nachfolgende Transaktion (n) darstellt, bei der ein neuer dynamischer Schlüssel unter Verwendung der Dateninformation erzeugt werden kann, welche von einem Terminal zu dem Host unter Verwendung des momentanen dynamischen Schlüssels KDTn übertragen wurde. In Fig. 3 ist der momentane dynamische Schlüssel als KDTn definiert, wobei n eine ganze Zahl ist, welche die Nummer des dynamischen Schlüssels definiert, der zuvor von dem Hostrechner für dieses spezielle Terminal 10 erzeugt wurde. n + 1 bezeichnet somit den nächsten dynamischen Schlüssel, der von dem Hostrechner erzeugt werden soll (z.B. für KDT&sub0;, KDTn + 1 = KDT&sub1;; für KDT&sub1;, KDTn + 1 = KDT&sub2;; ...). Zur besseren Übersichtlichkeit sind die Schritte, welche gleich denen von Fig. 2 sind, mit entsprechenden Bezugszeichen bezeichnet.
  • Wie bei der mit Bezug auf Fig. 2 beschriebenen Anfangstransaktion gibt der Benutzer oder die Benutzerin seine oder ihre Kreditkarte und Geheimzahl ein, bei 30, um dem Terminal 10 die Information zu liefern, welche es zum Erzeugen des PIN-Blocks 32 benötigt. Das Terminal 10 erzeugt dann den KPEn aus dem gespeicherten dynamischen Schlüssel KDTn, wobei KDTn der letzte dynamische Schlüssel war, der von dem Hostrechner übertragen wurde. Der PIN-Block wird dann unter Verwendung des KPEn verschlüsselt, bei 64. Diese Information wird zu dem Host 20 übertragen, bei 66.
  • Der Host 20 empfängt die Daten, bei 33, und ermittelt dann den KDTn, bei 65, auf eine der beiden alternativen Weisen, welche oben mit Bezug auf Fig. 2 beschrieben wurden. Der Host verwendet dann den KDTn zum Erzeugen des KPEn, bei 67, der zum Verschlüsseln der Daten, welche von dem Terminal 10 empfangen wurden, bei 68, verwendet wird. Sobald der Host den entschlüsselten PIN-Block hat, bei 68, führt der Host alle notwendigen Schritte durch, bei 40, um zu ermitteln, ob die Transaktion des Kunden zugelassen werden soll oder nicht, wie oben mit Bezug auf Fig. 2 beschrieben wurde. Wenn er die Transaktion nicht zuläßt, sendet der Host 20 ein Signal zum Terminal 10, mit dem er die Transaktion versagt, bei 42. Wenn der Host die Transaktion zuläßt, entscheidet der Host anschließend, bei 48, ob ein neuer dynamischer Schlüssel erforderlich ist. Wenn nicht, geht der Host, bei 49, zum Schritt 33 zurück und wartet auf die nächste Übertragung von Transaktionsdaten von einem Terminal 10 und sendet seine Zustimmung, bei 74, zu dem Terminal 10, wodurch dem Terminal 10 erlaubt wird, die Transaktion beim Schritt 46 abzuwickeln.
  • Wie bei der Anfangstransaktion, welche oben mit Bezug auf Fig. 2 beschrieben wurde, kann ein neuer dynamischer Schlüssel KDTn beim Schritt 48 erzeugt werden, selbst wenn die Transaktion im Schritt 40 abgelehnt wurde. Ferner kann der Host seine Zustimmung 74 übertragen, so daß das Terminal 10 die Transaktion abwickeln kann, bevor er ermittelt, ob ein neuer dynamischer Schlüssel benötigt wird, beim Schritt 48. Wenn ein neuer dynamischer Schlüssel benötigt wird, erzeugt der Host den KDTn + 1 bei 70. Sobald KDTn + 1 erzeugt ist, erzeugt der Host KEKn, bei 71, unter Verwendung des KDTn auf die oben beschriebene Weise. Der Host verschlüsselt dann den KDTn + 1 mit dem KEKn bei 72. Sobald dieser verschlüsselt ist, überträgt der Host den verschlüsselten KDTn + 1, bei 74, zu dem Terminal 10 in der durch das Kryptogramm EKEKn[KDTn + 1] dargestellten Form.
  • Bei Empfang durch das Terminal 10, ermittelt das Terminal dann, ob ein neuer KDT erzeugt worden ist, bei 53. Wenn ja, bei 75, erzeugt das Terminal den KEKn unter Verwendung des gespeicherten Wertes von KDTn. KEKn wird dann zum Entschlüsseln des KDTn + 1 verwendet, bei 76. Wenn KDTn + 1 von dem Terminal 10 entschlüsselt wurde, kann das Terminal den KDTn + 1 bei 78 speichern und danach neue variable Schlüssel KEKn + 1, KPEn + 1 und KMSGn + 1 erzeugen, welche je nach Bedarf von den nachfolgenden Transaktions-Übermittlungen von und zu dem Host 20 gebraucht werden. Schließlich wird die Transaktion bei 46 abgewickelt.
  • Fig. 4 ist ein schematisches Diagramm, das zeigt, wie ein dynamischer Schlüssel KDTn aus der Information erzeugt wird, welche von einem Terminal 10 zu dem Host 20 übertragen wird. Fig. 4 zeigt eine binäre Datenkette von 64 Bit, bei 80, welche in Folge 8 Bit zur Darstellung von FF hex, 32 Bits zur Darstellung der Terminalidentifikationsnummer (TIN) und 24 Bit zur Darstellung der Folgenummer umfaßt. Die TIN gemäß der bevorzugten Ausführungsform besteht aus einer Kundennummer, welche den speziellen Besitzer oder die Bedienungsperson des Host/- Terminal-Netzwerkes identifiziert und einer speziellen Terminalklassifikationsnummer, welche für das Terminal in dem Netzwerk eindeutig ist. Der Fachmann auf diesem Gebiet wird erkennen, daß auch jede andere Zusammensetzung der TIN im Bereich dieser Erfindung liegt. Die Folgenummer aus 24 Bits der bevorzugten Ausführungsform besteht im allgemeinen aus der Transaktionsnummer XSN für das Terminal, es könnte jedoch auch eine andere Art der Identifikation aufeinander folgender Transaktionen anstelle der bei der bevorzugten Ausführungsform verwendeten XSN eingesetzt werden. Die 8 Bits für FF hex, welche am Anfang der Datenkette stehen, sind bei der bevorzugten Ausführungsform vorgesehen, damit die Datenkette insgesamt 64 Bit umfaßt. Der Fachmann auf diesem Gebiet erkennt jedoch, daß diese Zahl weggelassen werden kann, ohne den Bereich der Erfindung zu verändern. Ferner erkennt der Fachmann auf diesem Gebiet, daß eine Datenkette von 64 Bit kein wesentlicher Bestandteil der Lösung der Aufgabe der Erfindung ist.
  • Die Daten, bei 80, werden zunächst bei 82 mit einem ersten Keimschlüssel, SEED.l verschlüsselt. Das Ergebnis aus dieser ersten Verschlüsselung wird dann, bei 84, mit den Anfangsdaten, bei 80, exklusiv-ODER-verknüpft. Das Ergebnis dieser Exklusiv-ODER-Verknüpfung wird dann, bei 86, unter Verwendung eines zweiten Keimschlüssels, SEED.r, entschlüsselt. Das Ergebnis dieser Entschlüsselung wird dann, bei 88, mit dem Ergebnis der Exklusiv-ODER-Verknüpfung bei 84 exklusiv-ODER-verknüpft. Das Produkt dieser Exklusiv-ODER-Verknüpfung bei 88 wird dann wiederum bei 90 mit dem ersten Keimschlüssel SEED.l verschlüsselt. Das Produkt der Verschlüsselung 90 wird dann wiederum bei 92 mit dem Ergebnis der Exklusiv-ODER-Verknüpfung bei 88 exklusiv-ODER-verknüpft. Das Produkt dieser Exklusiv- ODER-Verknüpfung 92 ist der dynamische Schlüssel.
  • Der Fachmann auf diesem Gebiet wird erkennen, daß das spezielle mit Bezug auf Fig. 4 beschriebene Verfahren nur ein Weg zum Erzeugen des dynamischen Schlüssels KDTn ist. Der Bereich dieser Erfindung umfaßt dabei jeden irreversiblen Verschlüsselungsalgorithmus, der auf die Daten angewendet werden könnte, um einen eindeutigen dynamischen Schlüssel zur Verwendung in dem oben beschriebenen Verschlüsselungssystem zu erzeugen.
  • Fig. 5 ist eine schematische Darstellung, welche die Erzeugung der variablen Schlüssel KPEn + 1, KEKn + 1 und KMSGn + 1 nach der Erzeugung eines neuen dynamischen Schlüssels KDTn + 1 zeigt. Bei der bevorzugten Ausführungsform dieser Erfindung werden vier der ersten 8 Bits der 64 Bit langen Datenkette, die den KDTn + 1 umfaßt, mit einer eindeutigen 4 Bit langen variablen Nummer exklusiv-ODER-verknüpft um eine der Variablen KPEn + 1, KEKn + 1 oder KMSGn + 1 zu erzeugen. Abweichend hiervon könnten die Variablen eine beliebige Anzahl von Bits umfassen, die alle mit dem 8-Bit-Abschnitt des KDTn + 1 verbunden werden können. Die 4 Bit langen variablen Nummern, die bei der bevorzugten Ausführungsform zum Erzeugen von jeweils KPE, KEK oder KMSG verwendet werden, können auch für alle KPE, KEK und KMSG, in allen Terminals, die gleichen sein, oder sie können für jedes Terminal in dem System unterschiedlich definiert sein, wie oben mit Bezug auf Fig. 2 erläutert wurde.
  • In Fig. 5 ist der 64 Bit lange dynamische Schlüssel KDTn + 1 bei 90' gezeigt. Um den KPEn + 1, zu bilden, werden vier der ersten 8 Bits in dem 64 Bit langen Datenstring, der den KDTn + 1 umfaßt, bei 92' mit der 4 Bit langen variablen Nummer KPE bei 93 exklusiv-ODER-verknüpft. Das Ergebnis dieser Exklusiv-ODER- Verknüpfung bei 92' ist der KPEn + 1, der bei 100 gezeigt ist. Obwohl diese Figur das zweite bis fünfte Bit des KPEn + 1 als Bits darstellt, welche durch die Exklusiv-ODER-Verknüpfung im Schritt 92' verändert wurden, liegt es innerhalb dem Bereich dieser Erfindung, auch jede andere Kombination der ersten 8 Bits des KDTn + 1 oder eine Kombination aus 8-Bit-Abschnitten des Schlüssels bei 90' zu variieren, um einen variablen Schlüssel KPEn + 1 zu erzeugen.
  • Ähnlich werden die variable Nummer KEK bei 95 und die variable Nummer KMSG bei 97 mit dem KDTn + 1 bei 94 bzw. 96 exklusiv- ODER-verknüpft, um KEKn + 1', der bei 101 gezeigt ist, und KMSGn + 1', der bei 102 gezeigt ist, zu erzeugen. Wiederum liegt es im Bereich der Erfindung, auch beliebige andere vier der ersten 8 Bits des KDTn + 1 oder eine Kombination aus 8-Bit-Abschnitten des Schlüssels bei 90 mit den 4 Bit langen variablen Nummern, bei 95 für KEK und bei 97 für KMSG, exklusiv-ODER-zu verknüpfen, um den KEKn + 1 und den KMSGn + 1 zu erzeugen.
  • Obwohl hier bevorzugte Ausführungsformen des Verfahrens gemäß der vorliegenden Erfindung gezeigt und beschrieben wurden, können sich Alternativen und Äquivalente des Verfahrens für den Fachmann auf diesem Gebiet ergeben, und der Bereich der vorliegenden Erfindung soll nur durch die folgenden Ansprüche bestimmt werden.

Claims (21)

1. Verfahren zum Verschlüsseln von Daten für eine 0n-Line- Datenübertragung zwischen einem Hostrechner (20) und jedem von mehreren entfernten Terminals (10), wobei ein eindeutiger dynamischer Schlüssel (KDT) periodisch für jedes Terminal erzeugt wird, wozu ein System-Keimschlüssei (SEED.L, SEED.R) verwendet wird, der nur in dem Hostrechner vorhanden ist, wobei der dynamische Schlüssel für das Terminal zum Verschlüsseln von Daten, welche zu dem Hostrechner übertragen werden, und zum Entschlüsseln von Daten, welche von dem Hostrechner empfangen werden, nutzbar ist, wobei jedes Terminal ferner eine Vorrichtung zum Speichern eines zuvor erzeugten dynamischen Schlüssels für dieses Terminal aufweist, mit den folgenden Verfahrensschritten:
a) Empfangen (33) einer Anforderung eines neuen dynamischen Schlüssels von einem der Terminals bei dem Hostrechner, wobei die Anforderung des neuen dynamischen Schlüssels einen vorgegebenen Terminalidentifikator (TIN) für dieses Terminal aufweist,
b) Bestimmen (35) des zuvor für dieses Terminal von dem Host erzeugten dynamischen Schlüssels (KDT&sub0;) in dem Hostrechner, wobei der zuvor von dem Host erzeugte dynamische Schlüssel momentan in dem Terminal gespeichert ist,
c) Erzeugen (50) eines neuen dynamischen Schlüssels (KDT&sub1;) für das Terminal als eine Funktion des Keimschlüssels und des vorgegebenen Terminalidentifikators für das Terminal in dem Hostrechner,
d) Verschlüsseln (52) des neuen dynamischen Schlüssels (KDT&sub1;) in dem Hostrechner unter Verwendung des zuvor von dem Hostrechner erzeugten dynamischen Schlüssels,
e) Übertragen (54) des verschlüsselten neuen dynamischen Schlüssels von dem Hostrechner zu dem Terminal,
f) Entschlüsseln (56) des neuen dynamischen Schlüssels (KDT&sub1;) in dem Terminal unter Verwendung des dynamischen Schlüssels (KDT&sub0;), der zuvor von dem Host erzeugt wurde und momentan in dem Terminal gespeichert ist.
2. Verfahren nach Anspruch 1, gekennzeichnet durch die Verfahrensschritte:
g) Verschlüsseln (34) von Daten in dem Terminal unter Verwendung des neuen dynamischen Schlüssels und Übertragen der verschlüsselten Daten zu dem Host,
h) Entschlüsseln (38) der verschlüsselten Daten in dem Host unter Verwendung des neuen dynamischen Schlüssels und
i) Speichern (58) des neuen dynamischen Schlüssels in dem Terminal anstelle des zuvor von dem Host erzeugten dynamischen Schlüssels.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß in dem Hostrechner und dem Terminal eine Vielzahl von Transaktionsdaten-Verschlüsselungsschlüsseln (KPE, KEK, KMSG) erzeugt wird, welche eine Vielzahl von Varianten verwenden, daß die Vielzahl von Varianten für das Hostsystem und das Terminal gleich ist, und daß die Vielzahl von Varianten die Vielzahl von Transaktionsdaten-Verschlüsselungsschlüsseln als eine Funktion des neuen dynamischen Schlüssels (KDT&sub1;) erzeugt.
4. Verfahren nach Anspruch 2 oder 3, dadurch gekennzeichnet, daß die Schritte a) bis i) für jede Transaktion wiederholt werden.
5. Verfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, daß die Schritte a) bis i) wahlweise in vorgegebenen Intervalen wiederholt werden.
6. Verfahren nach einem der Ansprüche 3 bis 5, dadurch gekennzeichnet, daß einer der mehreren Transaktions-Verschlüsselungsschlüssel (KPE) zum Verschlüsseln der Daten in dem Terminal verwendet wird.
7. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß die Anforderung des neuen dynamischen Schlüssels eine Transaktionsnummer (XSN) für das Terminal umfaßt.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß der neue dynamische Schlüssel (KDT&sub1;) von dem Host als eine Funktion des Keimschlüssels (SEED.L, SEED.R) und des vorgegebenen Terminalidentifikators (TIN) für das Terminal und der Transaktionsnummer (XSN) für das Terminal erzeugt wird.
9. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß der Hostrechner und die mehreren Terminals ein Kartenaktivierungs- und PIN-Auswahlsystem umfassen.
10. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß der Hostrechner und die mehreren Terminals ein System für die elektronische Übertragung von Fonds umfassen, das Verkaufspunkt-Terminals aufweist.
11. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß der Hostrechner und die mehreren Terminals ein automatisiertes Bankterminal-Netzwerk umfassen.
12. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß der dynamische Schlüssel (KDT) aus einer Dateneingabe-Zeichenfolge von 64 Bit besteht.
13. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, daß ein oder mehrere zusätzliche Keimschlüssel (SEED.L, SEED.R) zum Erzeugen des neuen dynamischen Schlüssels vorgesehen werden.
14. Verfahren nach Anspruch 13, dadurch gekennzeichnet, daß jeder der Keimschlüssel über eine Eingabevorrichtung des Hostrechners wahlweise veränderbar ist.
15. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß die zwischen dem Hostrechner und dem einen der mehreren Terminals übertragenen Transaktionsdaten mit den Transaktionsdaten-Verschlüsselungsschlüsseln (KPE, KEK, KMSG) verschlüsselt werden.
16. Verfahren nach Anspruch 15, dadurch gekennzeichnet, daß die Transaktionsdaten-Verschlüsselungsschlüssel mindestens einen Schlüssel-Verschlüsselungsschlüssel (KEK) und einen PIN-Verschlüsselungsschlüssel (KPE) umfassen.
17. Verfahren nach Anspruch 16, dadurch gekennzeichnet, daß die Mittel zum Erzeugen der Varianten (90', 92', 93-97', 100-102) mehrere Variantennummern (93, 95, 97) umfassen, wobei jede der mehreren Variantennummern einem der mehreren Transaktionsdaten-Verschlüsselungsschlüsseln (KPE, KEK, KMSG) entsprechen.
18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, daß die Mittel zum Erzeugen der Varianten Mittel (92', 94, 96) zur exklusiven Oder-Verknüpfung jeder der mehreren Variantennummern (93, 95, 97) mit dem ersten dynamischen Schlüssel aufweisen, wodurch jeder der entsprechenden Vielzahl von Transaktionsdaten-Schlüsseln gebildet wird.
19. Verfahren nach Anspruch 18, dadurch gekennzeichnet, daß die Variantennummern (93, 95, 97) aus einer Dateneingabe von 4 Bit bestehen, und daß die Mittel (92', 94, 96) zur exklusiven Oder-Verknüpfung der Variantennummern mit dem ersten dynamischen Schlüssel diese Eingabe von 4 Bit mit 4 Bit exklusiv Oder-verknüpft, welche unter den ersten 8 Bit der Eingabezeichenfoige des dynamischen Schlüssels auswählt werden.
20. Verfahren zur Sicherstellung der On-Line-Übertragung von Daten zwischen einem Hostrechner (20) und einem von mehreren entfernten Terminals (10), insbesondere gemäß einem der vorangehenden Ansprüche, wobei ein eindeutiger Verschlüsselungsschlüssel (E) für jede Übertragung der Daten zwischen dem Hostrechner und dem einen der mehreren Terminals verwendet wird, der eindeutige Verschlüsselungsschlüssel als eine Funktion eines eindeutigen dynamischen Schlüssels (KDT) abgeleitet wird, der unter Verwendung eines System-Keimschlüssels (SEED.L, SEED.R) erzeugt wurdem welcher nur in dem Hostrechner vorhanden ist, wobei mehrere eindeutige dynamische Schlüssel als eine Funktion dieses Keimschlüssels erzeugt werden können, und wobei N eine endliche ganze Zahl ist, die größer oder gleich 1 ist und die Anzahl der eindeutigen dynamischen Schlüssel definiert, die als eine Funktion des Keimschlüssels erzeugt werden, und wobei das Erzeugen dieses eindeutigen dynamischen Schlüssels programmierbar ist, so daß es zu vorausgewählten Intervalen auftritt, mit den folgenden Verfahrensschritten:
a) Erzeugen (67) eines n-ten dynamischen Schlüssels (KDTn) für einen der mehreren Terminals in dem Hostrechner, wobei der n-te dynamische Schlüssel eine Funktion des Keimschlüssels und eines vorgegebenen Terminalidentifikators (TIN) für den einen der mehreren Terminals ist,
b) Verschlüsseln (72) des n-ten dynamischen Schlüssels in dem Hostrechner unter Verwendung des (n-1)ten dynamischen Schlüssels (KDTn-1), wobei der (n-1)te dynamische Schlüssel in dem einen der mehreren Terminals gespeichert wird,
c) Übertragen (74) des verschlüsselten n-ten dynamischen Schlüssels von dem Hostrechner zu dem einen der mehreren Terminals,
d) Entschlüsseln (76) des n-ten dynamischen Schlüssels in dem Terminal unter Verwendung des (n-1)ten dynamischen Schlüssels, der in diesem einen der mehreren Terminals gespeichert ist,
e) Verschlüsseln (64) von Daten in dem einen der mehreren Terminals unter Verwendung des n-ten dynamischen Schlüssels und Übertragen (66) der verschlüsselten Daten zu dem Host,
f) Entschlüsseln (68) der verschlüsselten Daten in dem Rost unter Verwendung des n-ten dynamischen Schlüssels.
21. Verfahren zum Verschlüsseln von Daten für eine On-Line- Datenübertragung zwischen einem Hostrechner (20) und jedem von mehreren entfernten Terminals (10), wobei ein eindeutiger dynamischer Schlüssel (KDT) periodisch für jedes Terminal erzeugt wird, wozu ein System-Keimschlüssel (SEED.L, SEED.R) verwendet wird, der nur in dem Hostrechner vorhanden ist, wobei der dynamische Schlüssel für das Terminal zum Verschlüsseln von Daten, welche zu dem Hostrechner übertragen werden, und zum Entschlüsseln von Daten, welche von dem Hostrechner empfangen werden, nutzbar ist, wobei jedes Terminal ferner eine Vorrichtung zum Speichern eines zuvor erzeugten dynamischen Schlüssels für dieses Terminal aufweist, mit den folgenden Verfahrensschritten:
a) Senden (36) einer Anforderung eines neuen dynamischen Schlüssels zu dem Hostrechner, wobei die Anforderung des neuen dynamischen Schlüssels mindestens eine Terminal-Identifikationsnummer (TIN) für dieses Terminal und eine Terminal-Transaktionsnummer (XSN) für dieses Terminal umfaßt,
b) Empfangen (55) eines verschlüsselten neuen dynamischen Schlüssels von dem Hostrechner, wobei der neue dynamische Schlüssel (KDT&sub1;) als eine Funktion der Anforderung des neuen dynamischen Schlüssels erzeugt wird, und wobei der neue dynamische Schlüssel von dem Host mit einem vorher erzeugten dynamischen Schlüssel verschlüsselt wird,
c) Entschlüsseln (56) des neuen dynamischen Schlüssels in dem Terminal unter Verwendung des zuvor von dem Host erzeugten dynamischen schlüssels, der momentan in dem Terminal gespeichert ist,
d) Verschlüsseln (34) von Daten in dem Terminal unter Verwendung des neuen dynamischen Schlüssels und Übertragen (34) der verschlüsselten Daten zu dem Host,
e) Entschlüsseln (38) der verschlüsselten Daten in dem Host unter Verwendung des neuen dynamischen Schlüssels und
f) Speichern (58) des neuen dynamischen Schlüssels in dem Terminal anstelle des zuvor von dem Host erzeugten dynamischen Schlüssels.
DE69022610T 1989-03-14 1990-02-27 Verfahren zum Chiffrieren von übertragenen Daten, das einen Einheitsschlüssel anwendet. Expired - Fee Related DE69022610T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US07/323,485 US4933971A (en) 1989-03-14 1989-03-14 Method for encrypting transmitted data using a unique key

Publications (2)

Publication Number Publication Date
DE69022610D1 DE69022610D1 (de) 1995-11-02
DE69022610T2 true DE69022610T2 (de) 1996-05-02

Family

ID=23259404

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69022610T Expired - Fee Related DE69022610T2 (de) 1989-03-14 1990-02-27 Verfahren zum Chiffrieren von übertragenen Daten, das einen Einheitsschlüssel anwendet.

Country Status (6)

Country Link
US (1) US4933971A (de)
EP (1) EP0387599B1 (de)
JP (1) JPH0334641A (de)
AU (1) AU617598B2 (de)
CA (1) CA2010450C (de)
DE (1) DE69022610T2 (de)

Families Citing this family (103)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5485370A (en) 1988-05-05 1996-01-16 Transaction Technology, Inc. Home services delivery system with intelligent terminal emulator
US5572572A (en) 1988-05-05 1996-11-05 Transaction Technology, Inc. Computer and telephone apparatus with user friendly interface and enhanced integrity features
CA2011396C (en) * 1989-03-03 1995-01-03 Kazue Tanaka Cipher-key distribution system
CA2053261A1 (en) * 1989-04-28 1990-10-29 Gary D. Hornbuckle Method and apparatus for remotely controlling and monitoring the use of computer software
WO1990013865A1 (en) * 1989-04-28 1990-11-15 Softel, Inc. Method and apparatus for remotely controlling and monitoring the use of computer software
US5870724A (en) 1989-12-08 1999-02-09 Online Resources & Communications Corporation Targeting advertising in a home retail banking delivery service
JP3114991B2 (ja) * 1990-11-30 2000-12-04 株式会社東芝 データ通信システム
US5146498A (en) * 1991-01-10 1992-09-08 Motorola, Inc. Remote key manipulations for over-the-air re-keying
JP3310989B2 (ja) * 1991-02-08 2002-08-05 株式会社東芝 データ通信方式
JP2901767B2 (ja) * 1991-02-08 1999-06-07 株式会社東芝 暗号通信システム及び携帯可能電子装置
US5228084A (en) * 1991-02-28 1993-07-13 Gilbarco, Inc. Security apparatus and system for retail environments
JP2881628B2 (ja) * 1991-05-27 1999-04-12 富士通株式会社 排他制御システムおよび端末装置
NL9101796A (nl) * 1991-10-25 1993-05-17 Nederland Ptt Werkwijze voor het authenticeren van communicatiedeelnemers, systeem voor toepassing van de werkwijze en eerste communicatiedeelnemer en tweede communicatiedeelnemer voor toepassing in het systeem.
US7028187B1 (en) 1991-11-15 2006-04-11 Citibank, N.A. Electronic transaction apparatus for electronic commerce
US5453601A (en) 1991-11-15 1995-09-26 Citibank, N.A. Electronic-monetary system
US5557518A (en) 1994-04-28 1996-09-17 Citibank, N.A. Trusted agents for open electronic commerce
US5272752A (en) * 1992-03-16 1993-12-21 Scientific-Atlanta, Inc. Authorization code lockout mechanism for preventing unauthorized reception of transmitted data
FR2693334B1 (fr) * 1992-07-01 1994-09-23 Trt Telecom Radio Electr Procédé de communication protégée entre trois protagonistes, et dispositifs impliqués par sa mise en Óoeuvre.
US5297208A (en) * 1992-08-05 1994-03-22 Roger Schlafly Secure file transfer system and method
AUPM350794A0 (en) * 1994-01-25 1994-02-17 Dynamic Data Systems Pty Ltd Funds transaction device
US6088797A (en) * 1994-04-28 2000-07-11 Rosen; Sholom S. Tamper-proof electronic processing device
US5799087A (en) 1994-04-28 1998-08-25 Citibank, N.A. Electronic-monetary system
US5619572A (en) * 1994-06-16 1997-04-08 Motorola, Inc. Method and apparatus for providing secure communications for a requested call
US5517567A (en) * 1994-08-23 1996-05-14 Daq Electronics Inc. Key distribution system
US5864683A (en) * 1994-10-12 1999-01-26 Secure Computing Corporartion System for providing secure internetwork by connecting type enforcing secure computers to external network for limiting access to data based on user and process access rights
US5636280A (en) * 1994-10-31 1997-06-03 Kelly; Tadhg Dual key reflexive encryption security system
US6044154A (en) * 1994-10-31 2000-03-28 Communications Devices, Inc. Remote generated, device identifier key for use with a dual-key reflexive encryption security system
US5644710A (en) * 1995-02-13 1997-07-01 Eta Technologies Corporation Personal access management system
US5710889A (en) * 1995-02-22 1998-01-20 Citibank, N.A. Interface device for electronically integrating global financial services
US5548649A (en) * 1995-03-28 1996-08-20 Iowa State University Research Foundation Network security bridge and associated method
US5757924A (en) * 1995-09-18 1998-05-26 Digital Secured Networks Techolognies, Inc. Network security device which performs MAC address translation without affecting the IP address
GB2306860A (en) * 1995-10-24 1997-05-07 Motorola Inc Encryption/decryption system encrypts data using encrypted key
US5796832A (en) 1995-11-13 1998-08-18 Transaction Technology, Inc. Wireless transaction and information system
US5870473A (en) * 1995-12-14 1999-02-09 Cybercash, Inc. Electronic transfer system and method
US5745576A (en) * 1996-05-17 1998-04-28 Visa International Service Association Method and apparatus for initialization of cryptographic terminal
US6240513B1 (en) 1997-01-03 2001-05-29 Fortress Technologies, Inc. Network security device
EP0958682B1 (de) 1997-02-07 2004-04-21 Salbu Research and Development (Proprietary) Limited Gesichertes paketfunknetzwerk
JPH10229392A (ja) * 1997-02-13 1998-08-25 Rohm Co Ltd 認証システムおよび認証方法
US6041411A (en) * 1997-03-28 2000-03-21 Wyatt; Stuart Alan Method for defining and verifying user access rights to a computer information
US6282522B1 (en) 1997-04-30 2001-08-28 Visa International Service Association Internet payment system using smart card
US6128387A (en) * 1997-05-19 2000-10-03 Industrial Technology Research Institute Method and system for using a non-inversible transform and dynamic keys to protect firmware
US6105008A (en) * 1997-10-16 2000-08-15 Visa International Service Association Internet loading system using smart card
US6021391A (en) * 1998-03-03 2000-02-01 Winbond Electronics Corp. Method and system for dynamic data encryption
US6848050B1 (en) 1998-04-16 2005-01-25 Citicorp Development Center, Inc. System and method for alternative encryption techniques
US6490353B1 (en) 1998-11-23 2002-12-03 Tan Daniel Tiong Hok Data encrypting and decrypting apparatus and method
US6397307B2 (en) 1999-02-23 2002-05-28 Legato Systems, Inc. Method and system for mirroring and archiving mass storage
US6668246B1 (en) * 1999-03-24 2003-12-23 Intel Corporation Multimedia data delivery and playback system with multi-level content and privacy protection
US20020019814A1 (en) 2001-03-01 2002-02-14 Krishnamurthy Ganesan Specifying rights in a digital rights license according to events
US6829708B1 (en) 1999-03-27 2004-12-07 Microsoft Corporation Specifying security for an element by assigning a scaled value representative of the relative security thereof
US7319759B1 (en) 1999-03-27 2008-01-15 Microsoft Corporation Producing a new black box for a digital rights management (DRM) system
US6985583B1 (en) * 1999-05-04 2006-01-10 Rsa Security Inc. System and method for authentication seed distribution
US7908216B1 (en) 1999-07-22 2011-03-15 Visa International Service Association Internet payment, authentication and loading system using virtual smart card
US7729986B1 (en) 1999-07-30 2010-06-01 Visa International Service Association Smart card transactions using wireless telecommunications network
US7669233B2 (en) 1999-09-10 2010-02-23 Metavante Corporation Methods and systems for secure transmission of identification information over public networks
FR2799078A1 (fr) * 1999-09-27 2001-03-30 Jacky Montiel Ensemble de protocoles permettant l'authentification rapide pour des systemes transactionnels de commerce d'informations et de services sur internet
US6442696B1 (en) * 1999-10-05 2002-08-27 Authoriszor, Inc. System and method for extensible positive client identification
GB2355819A (en) * 1999-10-26 2001-05-02 Marconi Comm Ltd Authentication of data and software
WO2001052471A1 (en) * 2000-01-14 2001-07-19 Microsoft Corporation Producing a new black box for a digital rights management (drm) system
AU2000269232A1 (en) 2000-01-14 2001-07-24 Microsoft Corporation Specifying security for an element by assigning a scaled value representative ofthe relative security thereof
US7353209B1 (en) 2000-01-14 2008-04-01 Microsoft Corporation Releasing decrypted digital content to an authenticated path
US20020095344A1 (en) * 2001-01-12 2002-07-18 Mares John F. Accounting and business transaction method and system
US7159114B1 (en) * 2001-04-23 2007-01-02 Diebold, Incorporated System and method of securely installing a terminal master key on an automated banking machine
US7110986B1 (en) 2001-04-23 2006-09-19 Diebold, Incorporated Automated banking machine system and method
US7415609B1 (en) 2001-04-23 2008-08-19 Diebold, Incorporated Automated banking machine system and method
US7280658B2 (en) * 2001-06-01 2007-10-09 International Business Machines Corporation Systems, methods, and computer program products for accelerated dynamic protection of data
US7239708B2 (en) 2001-06-27 2007-07-03 Microsoft Corporation Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US6948073B2 (en) 2001-06-27 2005-09-20 Microsoft Corporation Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US20030118188A1 (en) * 2001-12-26 2003-06-26 Collier David C. Apparatus and method for accessing material using an entity locked secure registry
JP2004186814A (ja) * 2002-11-29 2004-07-02 Fujitsu Ltd 共通鍵暗号化通信システム
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
US7506161B2 (en) * 2003-09-02 2009-03-17 Authernative, Inc. Communication session encryption and authentication system
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
US7805611B1 (en) * 2004-12-03 2010-09-28 Oracle America, Inc. Method for secure communication from chip card and system for performing the same
US8370638B2 (en) * 2005-02-18 2013-02-05 Emc Corporation Derivative seeds
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US7627125B2 (en) * 2005-06-23 2009-12-01 Efunds Corporation Key loading systems and methods
US7894606B2 (en) * 2005-11-28 2011-02-22 Panasonic Electric Works Co., Ltd. Systems and methods for facilitating secure key distribution to an embedded device
US7765373B1 (en) * 2006-06-27 2010-07-27 Siliconsystems, Inc. System for controlling use of a solid-state storage subsystem
US8108692B1 (en) 2006-06-27 2012-01-31 Siliconsystems, Inc. Solid-state storage subsystem security solution
US10091648B2 (en) 2007-04-26 2018-10-02 Qualcomm Incorporated Method and apparatus for new key derivation upon handoff in wireless networks
EP2179533B1 (de) * 2007-08-14 2015-09-16 Triton Systems of Delaware, LLC Verfahren und system zur sicheren fernübertragung eines master-schlüssels für eine automatisierte bankschaltermaschine
US8565436B2 (en) * 2008-12-15 2013-10-22 Ebay Inc. Secure self managed data (SSMD)
US8356184B1 (en) 2009-06-25 2013-01-15 Western Digital Technologies, Inc. Data storage device comprising a secure processor for maintaining plaintext access to an LBA table
DE102010034976A1 (de) * 2010-08-20 2012-02-23 Hella Kgaa Hueck & Co. Anordnung zur Berechtigungskontrolle, insbesondere für Kraftfahrzeuge
GB201105765D0 (en) 2011-04-05 2011-05-18 Visa Europe Ltd Payment system
KR101340770B1 (ko) * 2011-04-18 2013-12-11 주식회사 팬택 전자 기기, 전자 기기의 사용자 입력 데이터의 보안 방법 및 장치
CN102170355A (zh) * 2011-04-27 2011-08-31 北京深思洛克软件技术股份有限公司 信息安全设备中远程升级密钥管理方法
US9305142B1 (en) 2011-12-19 2016-04-05 Western Digital Technologies, Inc. Buffer memory protection unit
CA2931093A1 (en) * 2013-12-19 2015-06-25 Visa International Service Association Cloud-based transactions methods and systems
US9922322B2 (en) 2013-12-19 2018-03-20 Visa International Service Association Cloud-based transactions with magnetic secure transmission
CN106465112A (zh) 2014-05-21 2017-02-22 维萨国际服务协会 离线认证
US20170262546A1 (en) * 2014-07-30 2017-09-14 Hewlett Packard Enterprise Development Lp Key search token for encrypted data
US9775029B2 (en) 2014-08-22 2017-09-26 Visa International Service Association Embedding cloud-based functionalities in a communication device
WO2018013431A2 (en) 2016-07-11 2018-01-18 Visa International Service Association Encryption key exchange process using access device
EP3488373A4 (de) 2016-07-25 2020-02-26 Mobeewave Inc. System und verfahren zur authentifizierung einer komponente einer elektronischen vorrichtung
US11386412B1 (en) 2018-04-12 2022-07-12 Wells Fargo Bank, N.A. Authentication circle management
US11481837B1 (en) 2018-04-12 2022-10-25 Wells Fargo Bank, N.A. Authentication circle management
US10943308B1 (en) 2018-05-03 2021-03-09 Wells Fargo Bank, N.A. Systems and methods for pervasive advisor for major expenditures
DE102018005861A1 (de) * 2018-07-25 2020-03-12 Giesecke+Devrient Mobile Security Gmbh Verfahren zum Anonymisieren einer PAN eines Karteninhabers
US11569979B2 (en) 2019-06-05 2023-01-31 Sameer KHANNA Cryptographic systems with variable layout cryptography
US11991400B2 (en) 2022-07-15 2024-05-21 Bank Of America Corporation Device for executing audio cryptology in real-time for audio misappropriation prevention

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4182933A (en) * 1969-02-14 1980-01-08 The United States Of America As Represented By The Secretary Of The Army Secure communication system with remote key setting
US4238853A (en) * 1977-12-05 1980-12-09 International Business Machines Corporation Cryptographic communication security for single domain networks
US4238854A (en) * 1977-12-05 1980-12-09 International Business Machines Corporation Cryptographic file security for single domain networks
US4227253A (en) * 1977-12-05 1980-10-07 International Business Machines Corporation Cryptographic communication security for multiple domain networks
US4386234A (en) * 1977-12-05 1983-05-31 International Business Machines Corp. Cryptographic communication and file security using terminals
US4203166A (en) * 1977-12-05 1980-05-13 International Business Machines Corporation Cryptographic file security for multiple domain networks
US4193131A (en) * 1977-12-05 1980-03-11 International Business Machines Corporation Cryptographic verification of operational keys used in communication networks
US4408203A (en) * 1978-01-09 1983-10-04 Mastercard International, Inc. Security system for electronic funds transfer system
US4259720A (en) * 1978-01-09 1981-03-31 Interbank Card Association Security system for electronic funds transfer system
US4218738A (en) * 1978-05-05 1980-08-19 International Business Machines Corporation Method for authenticating the identity of a user of an information system
US4365110A (en) * 1979-06-05 1982-12-21 Communications Satellite Corporation Multiple-destinational cryptosystem for broadcast networks
US4369332A (en) * 1979-09-26 1983-01-18 Burroughs Corporation Key variable generator for an encryption/decryption device
US4317957A (en) * 1980-03-10 1982-03-02 Marvin Sendrow System for authenticating users and devices in on-line transaction networks
US4423287A (en) * 1981-06-26 1983-12-27 Visa U.S.A., Inc. End-to-end encryption system and method of operation
US4578530A (en) * 1981-06-26 1986-03-25 Visa U.S.A., Inc. End-to-end encryption system and method of operation
US4488001A (en) * 1981-12-17 1984-12-11 Ncr Corporation Intellectual properties protection device
US4605820A (en) * 1983-11-10 1986-08-12 Visa U.S.A. Inc. Key management system for on-line communication
US4885778A (en) * 1984-11-30 1989-12-05 Weiss Kenneth P Method and apparatus for synchronizing generation of separate, free running, time dependent equipment
FR2600189B1 (fr) * 1986-06-16 1991-02-01 Bull Cp8 Procede pour faire authentifier par un milieu exterieur un objet portatif tel qu'une carte a memoire accouplee a ce milieu
FR2601795B1 (fr) * 1986-07-17 1988-10-07 Bull Cp8 Procede pour diversifier une cle de base et pour authentifier une cle ainsi diversifiee comme ayant ete elaboree a partir d'une cle de base predeterminee, et systeme pour la mise en oeuvre
SE452082B (sv) * 1986-12-15 1987-11-09 Inter Innovation Ab Manoverenhet for datakommunikation
FR2612315A1 (fr) * 1987-03-13 1988-09-16 Trt Telecom Radio Electr Procede pour simultanement lire a distance et certifier une information presente dans une memoire d'un support electronique
US4850017A (en) * 1987-05-29 1989-07-18 International Business Machines Corp. Controlled use of cryptographic keys via generating station established control values
JP2698588B2 (ja) * 1987-11-13 1998-01-19 株式会社東芝 携帯可能電子装置

Also Published As

Publication number Publication date
DE69022610D1 (de) 1995-11-02
CA2010450C (en) 1998-08-18
AU5124990A (en) 1990-09-20
EP0387599A2 (de) 1990-09-19
EP0387599A3 (en) 1993-12-22
US4933971A (en) 1990-06-12
CA2010450A1 (en) 1990-09-14
EP0387599B1 (de) 1995-09-27
JPH0334641A (ja) 1991-02-14
AU617598B2 (en) 1991-11-28

Similar Documents

Publication Publication Date Title
DE69022610T2 (de) Verfahren zum Chiffrieren von übertragenen Daten, das einen Einheitsschlüssel anwendet.
DE69019037T2 (de) Mehrebenen-Sicherheitsvorrichtung und -verfahren mit persönlichem Schlüssel.
DE69215501T2 (de) Werttransfersystem
DE69829938T2 (de) Verfahren zum Einführen von elektronischem Geld für einen Emittent mit elektronischen Saldo-Zählern, entsprechende Vorrichtung und Speicherelement mit gespeichertem Programm zur Durchführung des Verfahrens
DE69014817T2 (de) System zum Bezahlen oder Transferieren von Informationen mit einer als Geldbörse dienenden elektronischen Speicherkarte.
DE69204696T2 (de) Rechteaustausch-Verfahren zwischen Mikroprozessorkarten.
DE19539801C2 (de) Überwachung von Transaktionen mit Chipkarten
DE2645564C2 (de) Automatischer Geldausgeber
DE69607041T2 (de) Verfahren zum geschützten elektronischen zahlungsmittels
DE69601787T2 (de) Verfahren zum elektronischen bezahlen bei der durchführung von kauf-transaktionen in einem rechnernetzwerk
DE69814406T2 (de) Tragbare elektronische vorrichtung für systeme zur gesicherten kommunikation und verfahren zur initialisierung der parameter
DE2527784C2 (de) Datenübertragungseinrichtung für Bankentransaktionen
DE69521156T2 (de) Verfahren zum Authentisieren eines Schalterterminals in einem System zur Durchführung von Überweisungen
DE69831769T2 (de) System und Verfahren zur Kontrolle bzw. Überwachung
DE69011877T2 (de) Transaktionszustimmungssystem.
DE69623893T2 (de) Ein gesichertes Chiffrierprotokoll verwendendes Wertspeichersystem
DE69636457T2 (de) Gesichertes kommunikationssystem mit vernetzten geheimcodes
DE69101257T2 (de) Verfahren zur Erlangung einer geschätzten Klarbeglaubigung in verteilten Informationssystemen.
DE69531711T2 (de) Sichere Geldübertragungstechniken mit Chipkarten
DE2901521C2 (de)
DE69636101T2 (de) Aufzeichnung eines verschlüsselten datenpakets zur verwendung in einem ferntransaktionsdatensystem
DE69830993T2 (de) Elektronische transaktion und chipkarte für eine elektronische transaktion
DE112007002744T5 (de) Gesicherte finanzielle Transaktionen
EP0030381B1 (de) Verfahren und Vorrichtung zur Erzeugung und späteren Kontrolle von gegen Nachahmung, Verfälschung und Missbrauch abgesicherten Dokumenten und Dokument zu dessen Durchführung
DE3319919A1 (de) Schutzsystem fuer intelligenz-karten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee