-
Gebiet der
Erfindung
-
Die
Erfindung betrifft Datenspeicherungsgeräte, und insbesondere betrifft
sie die Herstellung tragbarer, programmierter Datenträger wie
Kreditkarten, Belastungskarten, Kennkarten und andere Transaktionskarten.
-
Hintergrund
der Erfindung
-
Eine
zunehmende Anzahl von Organisationen, die Transaktionskarten an
ihre Benutzer, Kunden oder Angestellten ausgeben, benötigen angepasste
Karten, um den Erfordernissen ihres speziellen Diensts oder ihrer
Anwendung zu genügen.
Diese Organisationen wünschen
es auch, dass die Karten Daten zum Inhaber beinhalten. Bei existierenden
Transaktionskarten werden derartige Daten in einem Magnetstreifen
auf der Rückseite
der Karte codiert, jedoch ist der Umfang der Daten, die durch einen
Magnetstreifen registriert werden können, eingeschränkt. Bei
einer neuen Art von Transaktionskarte ist ein Mikroprozessor-Computerchip im
Kunststoff der Karte eingebettet, wodurch das Datenspeichervermögen der
Karte stark erhöht
ist. Außerdem
können
in verschiedenen Typen der Chips ausgeklügelte, für den Kartenherausgeber spezifische
Anwendungen ausgeführt
werden, und der Chip kann auch eine Art Betriebssystem enthalten.
Transaktionskarten mit eingebetteten Chips werden in der Industrie
als tragbare, programmierte Datenträger, allgemeiner als "Chipkarten" bezeichnet. Der
Chip in einer Chipkarte wird gleichzeitig mit dem Prägen und/oder
Drucken der Oberfläche
der Karte mit Initialisierungs- und/oder Personalisierungsdaten
programmiert.
-
Die
Initialisierungsdaten beinhalten drei Hauptarten von Information:
Anwendungsdaten, Sicherheitsdaten und Druckdaten. Die Anwendungsdaten
gelten für
eine vorgegebene Kartenanwendung für alle Karten, und dazu gehören Anwendungsprogrammcode
und Variable. Die Sicherheitsdaten verhindern betrügerischen Gebrauch
der Karte, und sie sind im Allgemeinen in der Form von "Sicherheitsschlüsseln" vorhanden. Druckdaten,
wie ein Logo, Strichcodes und verschiedene Typen von Zahleninformation
werden auf der Oberfläche der
Karte platziert. Einige oder alle dieser Daten können auch auf der Oberfläche eingeprägt werden.
Es kann auch eine optische Technologie dazu verwendet werden, einen
Teil der Oberfläche
der Karte oder die gesamte zu einem Speicherträger auszubilden, auf den durch
einen geeigneten optischen Leser zugegriffen werden kann.
-
Chipkarten
werden auch durch einen als "Personalisierung" bezeichneten Prozess
mit für
einen individuellen Karteninhaber spezifischer Information programmiert.
Die Personalisierungsinformation ist der Personalisierungsinformation ähnlich,
wie sie aktuell in Nicht-Chipkarten enthalten ist, wie der Name
des Karteninhabers, die Kontonummer, das Kartenablaufdatum und eine
Fotografie. Wegen seiner erhöhten
Speicherkapazität
kann der Chip in einer Chipkarte über die Grundinformation bei
einer standardmäßigen Transaktionskarte
hinaus zusätzliche
Daten enthalten, einschließlich
einer grafischen Wiedergabe der Unterschrift des Individuums, Daten,
die die Typen der Dienstleistung definieren, die der Karteninhaber
in Anspruch nehmen kann, und Überziehungsgrenzen
für diese
Dienste.
-
Der
Chipkarte-Ausgabeprozess muss jede personalisierte Karte und die
Ergebnisse des Personalisierungsprozesses kontrollieren und darüber berichten.
Es müssen
umfangreiche Berichts- und Nachprüfungsdateien aufrechterhalten
werden, um den Erfordernissen zu genügen, ein Verfolgen der Karte
zu unterstützen.
-
Derzeit
muss ein Chipkarte-Ausgabesystem so zugeschnitten werden, dass es
den Erfordernissen einer speziellen Kartenanwendung genügt, die
in einen speziellen Typ einer Chipkarte programmiert wird und sich
unter der Steuerung durch ein spezielles Kartenbetriebssystem befindet,
und um die Daten der Karte so zu formatieren, dass sie mit einem
speziellen Typ eines zum Ausgeben der Karte gewählten Personalisierungsgeräts kompatibel
sind. Das gesamte Ausgabesystem muss immer umkonfiguriert werden,
wenn irgendeine dieser Variablen (Anwendung durch den Herausgeber,
Chipkarte/Kartenbetriebssystem und/oder Personalisierungsgerät) geändert wird,
was die Zeit und die Kosten erhöht,
die beim Herausgeben personalisierter Chipkarten an die Kunden auf
den Kartenherausgeber zukommen. Außerdem fehlt es vielen der
aktuellen Ausgabesysteme an einer entwicklungsfähigen Einrichtung zum Liefern
einer dynamischen Rückkopplung
an den Kartenherausgeber hinsichtlich des Status irgendeiner speziellen
Kartencharge.
-
Ferner
verwenden heutzutage in Gebrauch befindliche Chipkarte-Herausgabesysteme
eine firmenspezifische Vorgehensweise, die entweder vom Kartenhersteller
oder vom Hersteller des Personalisierungsgeräts entwickelt wird. Um die
Verkäufe
der jeweiligen Karten oder des Geräts zu fördern, entwickelt jeder Hersteller
eine einzigartige Personalisierungslösung für eine spezielle Kartenanwendung,
und jede Lösung ist
für einen
speziellen Kartenherausgeber spezifisch. Diese einzigartigen Lösungen sollen
die Leistungsfähigkeit
der Karten oder des Geräts
optimieren, und so erlauben sie keinen umfassenderen, verallgemeinerten Personalisierungsprozess,
der jedes Kartenbetriebssystem und/oder die Arbeit mit jedem beliebigen
Personalisierungsgerät
erlaubt.
-
US-A-4,874,935
offenbart das Programmieren von Chipkarten unter Verwendung eines
auf einem PC laufenden Utilityprogramms zur Schnittstellenbildung
mit einem in der Karte laufenden Steuerungsprogramm zum Eingeben
von Informationen, die zum Erzeugen eines Datenverzeichnisses verwendet
werden, und um Daten einschließlich
personalisierter Benutzerdaten unter Verwendung des Datenverzeichnisses
als Schablone in den Kartenspeicher zu schreiben. Der Prozess stützt sich
darauf, dass die Karte von speziellem Typ ist, da das Steuerungsprogramm
durch eine Programmiereinrichtung in den Mikroprozessor der Karte
programmiert wird, bevor dieser in die Karte eingeschlossen wird.
-
Mit
zunehmendem Bedarf an Chipkarten wird ein Chipkarte-Herausgabesystem
benötigt,
das es den Kartenherausgebern ermöglicht, jeden beliebigen Typ
von Personalisierungsgerät
zu verwenden, um mehrere Typen von Chipkarten, und die zu diesen
gehörigen
Betriebssysteme, zu handhaben und die speziellen Kartenanwendungen
des Kartenherausgebers gemeinsam mit den benötigten Karteninhaberdaten in
beliebige der verschiedenen Typen von Chipkarten einzubetten.
-
Zusammenfassung
der Erfindung
-
Ein
Personalisierungssystem für
Chipkarten unterhält
eine Datenbank, die Kartenanwendungsdaten, Herausgeber-Formatschablonedaten,
Kartenbetriebssystemdaten und Personalisierungsgerätdaten enthält, um es
einem Kartenherausgeber zu ermöglichen,
Kartenanwendungen, Karten und Kartenbetriebssysteme und/oder ein
Personalisierungsgerät
bei einem Kartenherausgabeprozess dynamisch zu ändern, ohne dass es erforderlich
wäre, die
Schnittstelle des Kartenherausgebers für den Herausgabeprozess zu
modifizieren.
-
Das
Personalisierungssystem für
Chipkarten gibt tragbare, programmierte Datenträger, oder Chipkarten, dadurch
aus, dass es als Erstes eine Datenformatkennung, eine Kartenbetriebssystemkennung,
eine Personalisierungsgerätkennung,
eine Anwendungsprogrammkennung oder -kennungen sowie Personalisierungsdaten
für einen
Karteninhaber durch ein Kartenherausgeber-Managementsystem erfasst.
Die Kennungen ermöglichen
es dem System, in einer Datenstruktur, wie einer Datenbank, gespeicherte
Daten zu adressieren und die durch das System benötigten speziellen
Daten für
jede auszugebende Karte zu spezifizieren. Da jeder Kartenherausgeber
seine Personalisierungsdaten verschieden formatiert, und da er über mehrere Datenformate
verfügen
kann, verfügt
das Personalisierungssystem für
Chipkarten über
eine Datenbank von Datenformatschablonen, die es ermöglichen,
mit mehreren Kartenherausgeber-Managementsystemen eine Schnittstelle
zu bilden. Das System erfasst die Formatschablone, die die durch
einen speziellen Kartenherausgeber verwendeten Personalisierungsdaten
definiert aus einem Datensatz in der Datenbank, der durch die Datenformatkennung
identifiziert ist. Das System verwendet die Datenformatschablone
zum Übersetzen
der Programmiersteuerungsbefehle aus dem vom Kartenherausgeber verwendeten
Format in ein internes Format, das durch die Komponenten des Systems
erkannt wird. Das System verwendet die Kartenbetriebssystemkennung
sowie mindestens eine Anwendungsprogrammkennung zum Erfassen von
Programmiersteuerungsbefehlen für
ein Betriebssystem, das vorab in einen in der Karte eingebetteten
Mikroprozessorchip geladen wird, sowie Anwendungsdaten, in Form
von Code und/oder Variablen, für
einen Anwendungsproqrammtyp oder -typen aus der Datenbank. Das System
erfasst auch unter Verwendung der Personalisierungsgerätkennung
die gerätecharakteristischen
Daten für
das Personalisierungsgerät,
das zum Ausgeben der Chipkarte zu verwendet ist. Wenn das System
einmal alle Daten erfasst hat, die zum Ausgeben der Chipkarte benötigt werden, überträgt es die
Programmiersteuerungsbefehle, den Anwendungscode und die Variablen
sowie die übersetzten
Personalisierungsdaten an das durch die gerätecharakteristischen Daten
spezifizierte Personalisierungsgerät.
-
Alternativ
wird keine Datenformatkennung durch den Kartenherausgeber weitergegeben,
da die Datenformatschablone aus Daten im Anwendungsdaten-Datensatz
hergeleitet wird oder da das Personalisierungsformat auf eineindeutige
Weise dem vom System verwendeten internen Format entspricht. Der
Kartenherausgeber kann auch die Datenformatkennung durch den Datensatz
für die
Datenformatschablone ersetzen, so dass das System nicht auf seine
Datenbank von Formatdatensätzen
Bezug nehmen muss.
-
Ein
anderes Merkmal des Chipkarten-Personalisierungssystems ist seine
Kartenmanagementfunktion. Das Chipkarten-Personalisierungssystems
sammelt Information hinsichtlich des Kartenherausgabeprozesses,
und es teilt diese dem Kartenherausgeber-Managementsystem mit.
-
Chipkarten
können über einen
oder mehrere "Sicherheitsschlüssel" verfügen, die
in den Chip programmiert werden, um betrügerischen Gebrauch der Karte
zu verhindern. Die geeigneten Sicherheitsschlüsseldaten werden durch das
Chipkarten-Personalisierungssystems aus durch den Kartenherausgeber,
oder eine andere Sicherheitsquelle, aufrechterhaltenen Sicherheitsschlüssel-Datensätzen erhalten
und dann an das Personalisierungsgerät übertragen. Die Sicherheitsquelle
sorgt auch für
Sicherheitsfunktionen, die vom Chipkarten-Personalisierungssystems dazu verwendet
werden, für
die Unversehrtheit und die Vertraulichkeit der Daten zu sorgen,
während
diese während
des Personalisierungsprozesses für
die Chipkarte an das System und von ihm sowie innerhalb desselben übertragen
werden.
-
Das
Chipkarten-Managementsystem führt
die oben beschriebenen Funktionen mittels einer Reihe von Softwaremodulen
aus, die auf einem Computer oder mehreren Computern abgearbeitet
werden. Ein Modul ist eine Kartenausgabe-Schnittstelle, die die Datenformatkennung,
die Kartenbetriebssystemkennung, die Kennung jedes Personalisierungsgeräts, die
mindestens eine Anwendungsprogrammkennung und die Personalisierungsdaten
für einen
Karteninhaber aus dem Kartenherausgeber-Managementsystem erfasst.
Dann verwendet die Kartenherausgeber-Managementsystemschnittstelle
die Datenformatkennung dazu, die Formatschablone zu erfassen, die
die Personalisierungsdaten definiert, und sie übersetzt die Personalisierungsdaten in
das übliche,
interne Datenformat. Ein Kartenbetriebssystem-Schnittstellemodul
erfasst die Programmiersteuerungsbefehle für den durch die Kartenbetriebssystemkennung
spezifizierten Kartenbetriebssystemtyp. Ein Kartenanwendungs-Schnittstellenmodul
nutzt die mindestens eine Anwendungsprogrammkennung, um zu bestimmen,
welcher mindestens eine Typ von Anwendungsprogramm in der Karte
zu platzieren ist, und es erfasst den spezifizierten Anwendungscode
sowie Variable. Ein Personalisierungsgerät-Schnittstellenmodul ist für die Erfassung
der gerätecharakteristischen
Daten für
den Typ des Personalisierungsgeräts,
wie durch die Personalisierungsgerätkennung gekennzeichnet, zuständig, sowie
ferner zum Übertragen
der Programmiersteuerungsbefehle des Anwendungscodes und der Variablen
sowie der übersetzten
Personalisierungsdaten an das Personalisierungsgerät entsprechend
den durch die gerätecharakteristischen
Daten festgelegten Erfordernissen.
-
Die
Berichts- und Sicherheitsfunktionen werden durch ein Verfolgungs/Berichtsmodul
und ein Sicherheitsschlüssel-Managementmodul
bereitgestellt.
-
Das
Chipkarte-Personalisierungssystem verwendet eine zugrunde liegende
Datenstruktur, wie eine Datenbank, die sich in einem Computerspeichermedium
befindet, um die zum Ausgeben der Chipkarten erforderlichen Daten
zu organisieren. Die Datenstruktur beinhaltet mehrere verschiedene
Typen von Datenelementen, und sie nutzt "Indices" oder "Kennungen" für
schnellen Zugriff auf spezielle Daten. Im System existieren vier
hauptsächliche
Datenelemente: ein Datenformatelement, ein Kartenbetriebssystemelement,
ein Personalisierungselement und ein Personalisierungsgerätelement.
-
Das
Datenformatelement enthält
eine Schablone, die das Format der vom Kartenherausgeber verwendeten
Personalisierungsdaten definiert. Das Datenformatelement kann in
einer Datenbank gespeichert sein, die Datenformatelemente für verschiedene
Kartenherausgeber enthält,
und auf die im Datenformatelement gespeicherte Information wird
mittels der Datenformatkennung zugegriffen. Alternativ kann das
Datenformatelement beim Herausgeben der Karte aus Daten im mindestens
einen Anwendungsprogrammelement hergeleitet werden, so dass die
mindestens eine vom Kartenherausgeber weitergeleitete Anwendungsprogrammkennung das
Datenformat kennzeichnet. Wenn das Datenformat der Personalisierungsdaten
genau dem vom Chipkarte-Personalisierungssystem verwendeten internen
Format entspricht, ist die Datenformatschablone logisch beinhaltet,
wodurch ein virtuelles Datenformatelement für den Herausgabeprozess erzeugt
wird.
-
Das
Kartenbetriebssystemelement enthält
die Programmiersteuerungsbefehle, die Anweisungen für einen
Chipkartechip steuernde Kartenbetriebssystem bilden, und darauf
wird mittels der Kartenbetriebssystemkennung zugegriffen.
-
Das
mindestens eine Anwendungsprogrammelement enthält Anwendungsdaten, wie Programmcode und
Variable, die von den Anwendungen benötigt werden, die verschiedenen
Kartenherausgebern zugeordnet sind; auf die Anwendungsdaten wird
mittels mindestens einer Anwendungsprogrammkennung zugegriffen.
-
Betriebsparameter
für verschiedene
Typen von Personalisierungsgeräten,
die zum Herausgeben von Chipkarten verwendet werden, sind im Personalisierungsgerätelement
gespeichert, und auf sie wird über
eine Personalisierungsgerätkennung
zugegriffen, die dem Typ des während
eines Herausgabelaufs zu verwendenden Personalisierungsgeräts entspricht.
-
Spezielle
Konfigurationen des Chipkarte-Personalisierungssystems unterstützen Kartenherausgeber, die
nicht die vollständige
Flexibilität
des oben beschriebenen Systems benötigen.
-
Das
Chipkarte-Personalisierungssystem berücksichtigt die Schwäche im Stand
der Technik durch Bereitstellen einer zentralisierten Schnittstelle
für Eingaben
und Ausgaben beim Personalisierungsprozess für Chipkarten, wobei es so konzipiert
ist, dass es sich dynamisch an Änderungen
im Herausgabeprozess anpasst.
-
Das
System bildet zu jedem beliebigen Kartenherausgeber-Managementsystem
eine Schnittstelle, es verwaltet die Übertragung von Karteninhaberdaten
und Kartenanwendungen für
das speziell verwendete Personalisierungsgerät, und es sammelt statistische
Information für
Echtzeit- und Offline-Abfragen, um kritische Verwaltungs- und Berichtsfunktionen
zu unterstützen.
Das System hält
eine Datenbank von Herausgeberdatenformaten, Kartenbetriebssystemen,
Kartenanwendungsprogrammen und Typen von Personalisierungsgeräten aufrecht.
Diese Datenbank ermöglicht
es dem System, beliebige Kombinationen oder Permutationen der Daten
zu handhaben, um so für
den Kartenherausgeber die Kosten und die Zeit bei der Vermarktung
zu verbessern. Ferner bildet das System Schnittstellen zu verschiedenen
Kartensicherheitsmethoden, um Betrug zu verringern.
-
Kurze Beschreibung
der Zeichnungen
-
1A ist
ein Blockdiagramm, das einen Herausgabeprozess für Chipkarten repräsentiert,
der ein Chipkarte-Personalisierungssystem beinhaltet.
-
1B ist
ein Funktionsblockdiagramm zu Eingangs- und Ausgangsverbindungen
für das
in der 1A dargestellte Chipkarte-Personalisierungssystem.
-
1C ist
ein Funktionsblockdiagramm, das Softwaremodule und Datenstrukturen
zeigt, wie sie zu einer Ausführungsform
des in der 1B dargestellten Chipkarte-Personalisierungssystems
gehören.
-
2 ist
ein Funktionsblockdiagramm der Ausführungsform der 1C unter
Hinzufügung
eines Sicherheitsmoduls zum Verwalten von für Chipkarten verwendeten Schlüsseln.
-
3 ist
ein Funktionsblockdiagramm einer anderen Ausführungsform des Chipkarte-Personalisierungssystems,
wobei eine Minimalkonfiguration zum Verwalten mehrerer Typen von
Karten und Personalisierungsgeräten
dargestellt ist.
-
4 ist
ein Funktionsblockdiagramm der Ausführungsform der 3 unter
Hinzufügung
eines Moduls zum Verwalten mehrerer Kartenbetriebssysteme.
-
5 ist
das Funktionsblockdiagramm der Ausführungsform der 4 unter
Hinzufügung
des Sicherheitsmoduls.
-
6 ist
das Funktionsblockdiagramm der Ausführungsform der 3 unter
Hinzufügung
eines Moduls zum Verwalten mehrerer Kartenanwendungen.
-
7 ist
das Funktionsblockdiagramm der Ausführungsform der 6 unter
Hinzufügung
des Sicherheitsmoduls.
-
8 ist
ein Flussdiagramm für
Computersoftware auf hoher Ebene, die die Funktionen des Chipkarte-Personalisierungssystems
implementiert.
-
9 ist
ein Funktionsblockdiagramm einer alternativen Ausführungsform
des Chipkarte-Personalisierungssystems unter Verwendung von Softwaremodulen
und Datensätzen.
-
10 ist
ein Flussdiagramm für
Computersoftware auf hoher Ebene, die die Funktionen der Ausführungsform
des in der 9 dargestellten Chipkarte-Personalisierungssystems
implementiert.
-
11 ist
ein Datenfelddiagramm für
einen Kartenrahmenschablone-Datensatz, der bei der Ausführungsform
des in der 9 dargestellten Chipkarte-Personalisierungssystems
verwendet wird.
-
12 ist
ein Datenfelddiagramm für
einen Datenformatschablone-Datensatz, der bei der Ausführungsform
des in der 9 dargestellten Chipkarte-Personalisierungssystems
verwendet wird.
-
13 ist
ein Datenfelddiagramm für
einen Kartenanwendungsdaten-Datensatz, der bei der Ausführungsform
des in der 9 dargestellten Chipkarte-Personalisierungssystems
verwendet wird.
-
14 ist
ein Berichtsformat, das beispielhafte Punkte zeigt, wie sie vom
Chipkarte-Personalisierungssystem verfolgt werden.
-
Beschreibung
der Ausführungsformen
-
In
der folgenden detaillierten Beschreibung der Ausführungsformen
wird auf die beigefügten
Zeichnungen Bezug genommen, die einen zugehörigen Teil bilden und in denen
beispielhaft spezielle Ausführungsformen
dargestellt sind, gemäß denen
die Erfindung ausgeübt
werden kann. Diese Ausführungsformen
sind mit ausreichenden Einzelheiten beschrieben, um es dem Fachmann
zu ermöglichen,
die Erfindung auszuführen, und
es ist zu beachten, dass andere Ausführungsformen verwendet werden
können
und dass konstruktionsmäßige, logische
und elektrische Änderungen
vorgenommen werden können,
ohne vom Grundgedanken und Schutzumfang der vorliegenden Erfindung
abzuweichen. Die folgende detaillierte Beschreibung ist daher nicht in
beschränkendem
Sinn auszulegen, und der Schutzumfang der vorliegenden Erfindungen
ist nur durch die beigefügten
Ansprüche
definiert.
-
Die
vordere Ziffer oder die vorderen Ziffern der Bezugszahlen in den
Figuren entsprechen im Allgemeinen der Figurennummer, mit der Ausnahme,
dass identische Komponenten, die in mehreren Figuren auftreten,
mit denselben Bezugszahlen gekennzeichnet sind.
-
Ausgabe von
Chipkarten
-
Den
meisten sind standardmäßige Transaktionskarten
wie normale Kreditkarten vertraut. Eine Transaktionskarte verfügt im Allgemeinen über Information
zum Karteninhaber, wie den Namen und die Kontonummer, die auf die
Oberfläche
der Karte aufgedruckt und/oder auf ihr eingeprägt sind. Transaktionskarten
enthalten häufig
einen Magnetstreifen, der ebenfalls mit Karteninhaberdaten codiert
ist. Der Prozess des Bedruckens/Prägens/Codierens der Karteninhaberdaten
auf jede Transaktionskarte ist als "Personalisierung" bekannt. Jede Transaktionskarte erfährt auch
einen als "Initialisierung" bekannten Prozess,
bei dem bestimmte Typen von Information, die allen Karten in einer
Charge gemeinsam sind, wie eine Kennung des Kartenherausgebers sowie
die Chargennummer, auf der Karte platziert werden.
-
Eine
Chipkarte unterscheidet sich von einer standardmäßigen Transaktionskarte dadurch,
dass in den Kunststoff der Karte ein Computer-Mikroprozessorchip
eingebettet ist, was das Datenspeichervermögen der Karte stark erhöht. Bei
einigen Typen von Chipkarten lädt
der Kartenhersteller den Chip vorab mit mehreren möglichen
Kartenbetriebssystemen, wobei das Betriebssystem die Programmierung
des Chips während
des Personalisierungsprozesses steuert. Bei bestimmten Typen von
Chips können
zusätzliche,
ausgeklügelte
Kartenanwendungen, die für
den Kartenherausgeber spezifisch sind, ausgeführt werden.
-
Die
Initialisierungsdaten für
eine Chipkarte beinhalten drei Haupttypen an Information: Anwendungsdaten,
Sicherheitsdaten und Druckdaten. Die Anwendungsdaten sind allen
Karten für
eine vorgegebene Kartenanwendung gemeinsam, und sie beinhalten Anwendungsprogrammcodes
sowie Variable, die in den Chip programmiert sind. Die Sicherheitsdaten,
die im Allgemeinen als Sicherheitsschlüssel oder Sicherheitsfunktionen
vorliegen, sorgen für
die Gültigkeit
der Daten auf der Karte, und sie verhindern einen betrügerischen
Gebrauch der Karte. Druckdaten, wie ein Logo, Strichcodes und verschiedene
Typen von Zahleninformation, werden auf die Oberfläche der
Karte gedruckt. Einige oder alle dieser Daten können auch in die Oberfläche eingeprägt werden.
Es kann auch eine optische Technologie verwendet werden, um einen
Teil der Oberfläche
einer Chipkarte zu einem Speicherträger von Daten zu machen, auf
die durch einen geeigneten optischen Leser zugegriffen werden kann.
-
Die
Personalisierungsinformation für
eine Chipkarte ist der Personalisierungsinformation ähnlich,
wie sie aktuell in Nicht-Chipkarten enthalten ist, wie der Name
des Karteninhabers, eine Kontonummer, das Kartenablaufsdatum und
eine Fotografie. Wegen des erhöhten
Speichervermögens
kann der Chip in einer Chipkarte über die Grundinformation einer
standardmäßigen Transaktionskarte
hinaus zusätzliche
Daten enthalten, einschließlich
einer grafischen Wiedergabe der Unterschrift der Einzelperson, Daten,
die die Typen des Diensts definieren, für den der Karteninhaber berechtigt
ist, sowie Überziehungsgrenzen
für diese
Dienste.
-
Chipkarte-Personalisierungssystem
-
Die 1A zeigt
Komponenten eines Herausgabeprozesses für Chipkarten, der eine Ausführungsform
des Chipkarte-Personalisierungssystems gemäß der Erfindung beinhaltet.
Das Chipkarte-Personalisierungssystem 100 empfängt Daten
von einem Kartenherausgeber-Managementsystem 150 (das typischerweise
für den
Kartenherausgeber spezifisch ist), es übersetzt die Daten in einen
Datenstrom, und es gibt diesen an ein Personalisierungsgerät 130 aus,
das die Chipkarten 160 personalisiert. Das Kartenherausgeber-Managementsystem 150 verwaltet
die Kartenherausgeberdaten, und es bestimmt den Typ der herauszugebenden
Karte, die in sie einzubettenden Kartenanwendungen sowie welches
Personalisierungsgerät
dazu zu verwenden ist, die Karte für einen speziellen Karteninhaber
herauszugeben. Das Kartenherausgeber-Managementsystem ist häufig ein
Computerprogramm, wie es in der 1A veranschaulicht
ist, jedoch kann das Chipkarte-Personalisierungssystem 100 Daten
von alternativen Eingabequellen empfangen, wie einer Person, die
die Daten über
eine Telefontastatur eingibt.
-
Das
Chipkarte-Personalisierungssystem 100 ist in der 1A als
in einem Computer abgearbeitetes Softwareprogramm dargestellt. Wie
unten beschrieben, greift das Chipkarte-Personalisierungssystem 100 auf Datensätze in einer
Datenbank zu, die verschiedene Typen von Karten und Kartenbetriebssystemen,
Kartenanwendungen und Personalisierungsgeräten definieren.
-
Die
logischen Funktionen der Software und der Datenbank können in
einem Client/Server-Netzwerk zwischen Computern aufgeteilt sein,
oder sie können
zentral in einem einzelnen Prozessor vorliegen. Die Funktionen können auch über Prozessoren
verteilt werden, die über
standardmäßige Ortsbereichsnetze,
Weitbereichsnetze, spezielle Telefonleitungen oder andere Kommunikationsein richtungen
verbunden sind, die zum losen Koppeln von Prozessoren verwendet
werden. Das Softwareprogramm arbeitet unter einem Betriebssystem
wie Unix, Windows 95(c) oder Windows NT(c) sowie in Workstations gemäß dem Industriestandard
und/oder PC-Hardware.
-
Das
System 100 steuert Kartendrucker, Prägevorrichtungen sowie integrierte
oder hinzugefügte Schnittstellenvorrichtungen
für Chipkarten,
die in der 1A zusammengefasst als Personalisierungssystem 130 dargestellt
sind. Das Personalisierungsgerät 130 repräsentiert
auch Vorrichtungen wie Kartendrucker/Prägegeräte für große Volumen, Kartendrucker/Prägegeräte für kleine
Volumen, automatische Kassiereinrichtungen (ATMs), Kassenplätze, unbeaufsichtigte
Kiosks, PCs, Netzwerkcomputer, sowie Online-Telekommunikationsgeräte. Wegen
der Investitionen in vorhandene Personalisierungsgeräte für Nicht-Chipkarten erwerben viele
Kartenherausgeber nicht völlig
neue Personalisierungsgeräte
für Chipkarten,
sondern stattdessen rüsten sie
ihr vorhandenes Personalisierungsgerät durch eine Schnittstellenvorrichtung
für Chipkarten
auf, das den Chip in der Karte programmiert, während das ältere Gerät die Druck- und Prägefunktionen
ausführt.
Bei einer derartigen Konfiguration kann das Computersystem, das
das Chipkarte-Personalisierungssystem 100, oder den "Host", bildet, physikalisch
mit beiden Geräte
oder nur einem derselben verbunden sein. Im letzteren Fall steuert
der Host das direkt angeschlossene Gerät, während er mit dem anderen über eine
logische Verbindung verfügt.
Die physikalische Verbindung zwischen den Geräten und dem Host variiert entsprechend
dem Hersteller und dem Modell des Geräts. Zu üblichen Industriestandard-Verbindungen
gehören
seriell RS232, SCSI (Small Computer System Interface), Ethernet
und seriell TTL (Transistor-Transistor Logic). Außerdem benötigen einige
Geräte
eine spezielle Busverbindung.
-
Die
Verbindungen zwischen dem Chipkarte-Personalisierungssystem 100 und
dem Kartenverwaltungssystem 150 sowie den Geräten 130 können auch über standardmäßige Ortsbereichsnetze,
Weitbereichsnetze, spezielle Telefonleitungen oder eine andere Fernkommunikations-Infrastruktur,
die zum Übertragen
von Daten verwendet wird, implementiert werden. Die Verwendung derartiger
Fernverbindungen beim Personalisieren von Chipkarten ist im am 09.
Juli 1996 für
Laing et al. erteilten US-Patent Nr. 5,539,857 beschrieben. Dem
Fachmann sind alternative Verbindungen ersichtlich, die sich im
Schutzumfang der Erfindung befinden.
-
Die 1B ist
ein Blockdiagramm einer Ausführungsform
des Chipkarte-Personalisierungssystems, das die logischen Verbindungen
zwischen diesem Chipkarte-Personalisierungssystem 100 und
Funktionen veranschaulicht, wie sie von einer Kartenherausgabeorganisation
zum Herausgeben von Chipkarten verwendet werden. Zu den durch die
Kartenherausgabeorganisation aufrechterhaltenen Karteninhaberdaten
gehört Information
zu jedem einzelnen Karteninhaber, wie der Name, die Kontonummer,
das Kartenablaufdatum und anwendbare Dienste. In der 1B sind
verschiedene Arten zum Eingeben der Karteninhaberdaten in das Kartenherausgeber-Managementsystem 150 als
Karteninhaberdaten 152 gestrichelt dargestellt. Das Kartenherausgeber-Managementsystem 150 kann
die Karteninhaberdaten auf einem Computermedium, wie einem Magnetband,
einer Diskette oder einer CD-ROM, erhalten. Alternativ können die
Karteninhaberdaten 152 über eine
Online-Verbindung wie ein öffentliches
Fernsprechnetz, ein paketvermitteltes Netz, d.h. das Internet, eine Teilnehmerleitung
oder ein Kabel/Satellit-Fernsehsignal
eingegeben werden. Dem Fachmann sind zusätzliche Arten ersichtlich,
gemäß denen
die Karteninhaberdaten 152 und das System 150 eingegeben
werden können.
-
Zusätzlich zum
Kartenherausgeber-Managementsystem 150 verfügt der Karteninhaber
typischerweise über
eine vorhandene Berichtsfähigkeit 154,
zu der das Chipkarte-Personalisierungssystem 100 eine Schnittstelle
bildet, so dass der Kartenherausgeber durch das System 100 aufrechterhaltene
statistische Information durchsehen kann. Eine externe Sicherheitsquelle,
die ebenfalls vom Kartenherausgeber bereitgestellt wird und als
Sicherheitsschlüssel-Manager 111 und
Sicherheitsschlüssel-Datenbank 128 dargestellt
ist, sorgt für
Sicherheitsfunktionen, die in Verbindung mit dem Kartenherausgeber-Managementsystem 150 und
dem Chipkarte-Personalisierungssystem 100 arbeiten. Die 1B veranschaulicht
auch eine alternative Ausführungsform
des Chipkarte-Personalisierungssystems 100, das einen Kartenherausgeber
unterstützt,
der über hinzugefügte Schnittstelleneinrichtungen
für Chipkarten
verfügt.
Das System 100 leitet einen Teil der Personalisierungsinformation
an das ältere
Personalisierungsgerät 130 sowie
den Rest der Daten an einen Nachprozessor 132 in der Schnittstelleneinrichtung 132 für Chipkarten,
der den Chip programmiert. Diese Funktionen werden unten detailliert
erläutert.
-
Die
in den folgenden Figuren dargestellten Ausführungsformen des Softwareprogramms
für das
Chipkarte-Personalisierungssystem 100 funktionieren als
Kombinationen von Codemodulen, wobei jedes Modul einen speziellen
Teil des Heraus gabeprozesses ausführt. Bei diesen Ausführungsformen
werden die Module über
definierte Eingabe- und Ausgabeprogrammaufrufe gekoppelt, und sie
werden auch über
standardmäßige Datenabfragebefehle,
die für
Zugriff auf die in den Datenstrukturen gespeicherten Daten sorgen,
mit den Datenstrukturen gekoppelt. Die Protokolle für Kommunikation
zwischen den Modulen sowie zwischen diesen und den Datenstrukturen
variieren abhängig
von der Sprache, in der die Module geschrieben sind, sowie vom zugrundeliegenden
Datenmanagementsystem, das zum Unterstützen der Datenbank verwendet
wird.
-
Die 1C ist
ein detaillierteres Funktionsblockdiagramm des Chipkarte-Personalisierungssystems 100 der 1B ohne
die externen Sicherheitsfunktionen. Die 1C zeigt
die internen Verbindungen zwischen Softwaremodulen und Datenbank-Datensätzen, die
es dem Chipkarte-Personalisierungssystem 100 ermöglichen,
mehrere Typen von Herausgeberdatenformaten, Kartenbetriebssystemen,
Kartenanwendungen und Personalisierungsgeräten beim Herausgeben von Chipkarten
zu kombinieren.
-
Das
Chipkarte-Personalisierungssystem 100 stellt eine angepasste
Schnittstelle 101 für
ein Kartenherausgeber-Managementsystem 150 bereit. Bei
dieser Ausführungsform
leitet das Kartenherausgeber-Managementsystem 150 Personalisierungsdaten
von einer Karteninhaber-Datenbank 152 an das System 100 weiter.
Jedes Softwaremodul innerhalb des Systems 100 erwartet
es, dass die Personalisierungsdaten in einem speziellen, internen
Format an es weitergeleitet werden. Da die Personalisierungsdaten
in einem durch den Karteninhaber definierten externen Format vorliegen,
das häufig
von den durch die Softwaremodule erwarteten mindestens einen internen
Format verschieden ist, werden die Personalisierungsdaten durch
das System 100 unter Verwendung der Datenformatschablone
in das mindestens eine interne Format übersetzt. Das System 100 kann
die Datenformatschablone über
eine Datenformatkennung erfassen, die vom das System 100 nutzenden
Kartenherausgeber weitergeleitet wird, um einen optionalen Datensatz 120 für eine Datenformatschablone
(in der 1C gestrichelt dargestellt)
zu erfassen, wie es durch eine optionale Verbindung zwischen dem
Datensatz 120 und der Schnittstelle 101 des Kartenherausgeber-Managementsystems
veranschaulicht ist. Alternativ leitet der Kartenherausgeber den
Datensatz zur Datenformatschablone anstelle der Datenformatkennung
an das System 100 weiter. Bei einer anderen Ausführungsform
kann die Datenformatschablone aus den Daten im Kartenanwendungs-Datensatz 129 hergeleitet
werden, der durch eine vom Herausgeber weitergeleitete Anwendungsprogrammkennung spezifiziert
wird, wie es durch eine optionale Verbindung zwischen der Kartenanwendungs-Datenbank 124 und
der Schnittstelle 101 des Kartenherausgeber-Managementsystems
veranschaulicht ist.
-
Bei
einer weiteren, alternativen Ausführungsform der 1C wird
das Chipkarte-Personalisierungssystem 100. dadurch intern
mit Sicherheitsfunktionen versehen, dass solche als Teil des Kartenanwendungs-Datensatzes
in das System geleitet werden.
-
In
der 1C ist auch eine weitere, alternative Ausführungsform
dargestellt, bei der das Format der Personalisierungsdaten mit dem
internen Format übereinstimmt.
Da bei dieser Ausführungsform
keine Übersetzung
zwischen dem externen und dem internen Format erforderlich ist,
ist keine Datenformatschablone erforderlich, so dass der Datensatz 120 des
Datenformats und die Verbindungen zwischen der Schnittstelle 101 des
Kartenherausgeber-Managementsystems und dem Datensatz 120 des
Datenformats und der Datenbank 124 für Kartenanwendungen nicht vorhanden
sind. Der Datensatz 120 des Datenformats kann aus mehreren Tabellen
zusammengesetzt sein, die das System 100 hinsichtlich einer
geeigneten Aufgliederung der Personalisierungsdaten instruieren,
oder es kann eine einfache Liste vorliegen, die die Reihenfolge
angibt, in der die Felder des Datensatzes der Karteninhaberdaten
erscheinen, wie es für
den Fachmann ersichtlich ist. Die verschiedenen, alternativen Prozeduren
zum Bestimmen des Formats der oben beschriebenen Personalisierungsdaten
gelten implizit bei allen hier beschriebenen Ausführungsformen
des Chipkarte-Personalisierungssystems 100.
-
Unter
Verwendung einer durch das Kartenherausgeber-Managementsystem 150 bereitgestellten
Kartenkennung ruft ein Schnittstellemodul 103 des Kartenbetriebssystems
Programmiersteuerungsbefehle, wie sie für das Kartenbetriebssystem 122 für den im
Typ der gerade herausgegebenen Karte eingebetteten Mikroprozessorchip
spezifisch sind, ab. Die Programmiersteuerungsbefehle weisen das
Codieren des Chips mit den vom Kartenherausgeber ausgewählten Personalisierungsdaten
und der mindestens einen Kartenanwendung an.
-
Jede
Kartenanwendung verfügt über Programmcode
und variable Daten, die in der Datenbank als Anwendungsdaten 124 gespeichert
sind und durch eine Anwendungsprogrammkennung identifiziert sind.
Das Kartenherausgeber-Managementsystem 150 leitet einen
oder mehrere Anwendungsprogrammkennungen an das System 100 weiter,
die von einem Schnittstellenmodul 105 für Kartenanwendungen dazu verwendet
werden, die entsprechenden Anwendungsdaten 124 zu erfassen.
-
Das
Personalisierungsgerät,
das der Kartenherausgeber zum Herausgeben der Kartencharge zu verwenden
plant, wird durch eine Personalisierungsgerätkennung definiert. Ein Schnittstellenmodul 107 des
Personalisierungsgeräts
erfasst gerätecharakteristische
Daten 126, wie sie für
den Typ des Personalisierungsgeräts 130 spezifisch
sind, das der Personalisierungsgerätkennung entspricht. Die Schnittstelle 107 des
Personalisierungsgeräts
erfasst auch die Programmiersteuerungsbefehle, den Anwendungscode
und Variable sowie die übersetzten
Personalisierungsdaten, und sie überträgt alle
diese Daten an das Personalisierungsgerät 130, entsprechend
der Spezifikation durch die gerätecharakteristischen
Daten 126, um die Chipkarte auszugeben.
-
Eine
alternative Ausführungsform
des Systems 100 unterstützt
einen Kartenherausgeber, der sein vorhandenes Personalisierungsgerät durch
eine Programmiervorrichtung für
Chipkarten dadurch ausgerüstet
hat, dass die Schnittstelle 107 des Personalisierungsgeräts eine
Untergruppe der übersetzten
Personalisierungsinformation an das ältere Personalisierungsgerät 130 leitet,
während
es den Rest der Daten an einen Nachprozessor 132 in der
Programmiervorrichtung für
Chipkarten leitet.
-
Das
Chipkarte-Personalisierungssystem 100 stellt auch ein Verfolge-/Berichtsmodul, oder
-maschine, 109 bereit, das statistische Information von
den anderen Modulen im System 100 sammelt und diese zur
Ausgabe als ausgedruckte Berichte 154 oder als Eingabeinformation
für eine
Berichtsfunktion im Kartenherausgeber-Managementsystem 150 formatiert.
Da diese statistische Information in Echtzeit gesammelt wird, kann
das Kartenherausgeber-Managementsystem 150 das Verfolge-/Berichtsmodul 109 interaktiv
abfragen, um Statistikdaten zum Chipkarte-Personalisierungssystem
zu erhalten, während
dieses arbeitet. Beispiele für
durch das Verfolge-/Berichtsmodul 109 überwachten Punkte sind in der 14 dargestellt.
-
Bei
einer in der 2 dargestellten alternativen
Ausführungsform
verfügt
das Chipkarte-Personalisierungssystem 100 über eine
Sicherheitsquelle in Form eines Sicherheitsschlüssel-Managementmoduls 111 und einer
Sicherheitsschlüssel-Datenbank 128.
Wenn eine Chipkarte hergestellt wird, schließt der Verkäufer eine Sicherheitsarchitektur
in den Chip ein, um eine unberechtigte Pro grammierung zu verhindern.
Die Implementierung der Sicherheitsarchitektur hähgt im Allgemeinen von der
mindestens einen in den Chip einprogrammierten Anwendung ab. Beispielsweise
wären die
bei einer Anwendung für
gespeicherte Werte programmierten Sicherheitsschlüssel verschieden
von denen, die bei einer Gesundheitsanwendung programmiert werden. Die
Implementierung der Sicherheitsarchitektur variiert auch abhängig vom
Kartentyp: einige Karten benötigen einen
einzelnen Sicherheitsschlüssel,
der eine Chipprogrammierung zulässt,
während
andere mehrere Sicherheitsschlüssel
benötigen,
um eine Chipprogrammierung zuzulassen und zusätzliche Sicherheitsfunktionen auszuüben. Die 2 veranschaulicht
die Grundfunktionen des Sicherheitsschlüssel-Managementmoduls 111 bei einer
Schnittstellenbildung zur Sicherheitsarchitektur auf einer Karte,
die mehrere Sicherheitsschlüssel benötigt.
-
Wie
es in der 2 dargestellt ist, sind die
Sicherheitsschlüsseldaten
in der Sicherheitsschlüssel-Datenbank 128 gespeichert,
die außerhalb
des Chipkarte-Personalisierungssystems 100 vorhanden ist
und vom Kartenherausgeber oder einer anderen Sicherheitsquelle unterhalten
wird. Die Erweiterung des Sicherheitsschlüssel-Managementmoduls 111 zum
Handhaben von mehr oder weniger Sicherheitsschlüsseln und zur Schnittstellenbildung
mit einer durch das Chipkarte-Personalisierungssystem 100 selbstverwalteten
Sicherheitsschlüssel-Datenbank hängt von
der Anwendung, dem Betriebssystem und dem Personalisierungsgerät ab, wie
sie bei einer speziellen Kartenherausgabeanwendung verwendet werden,
wobei dies für
den Fachmann ersichtlich ist.
-
Das
Sicherheitsschlüssel-Managementmodul 111 stellt
auch zusätzliche
Mechanismen bereit, um für eine
Authentifizierung von Sicherheitsschlüsseldaten, die Unversehrtheit
von Daten und die Vertraulichkeit von Daten zu sorgen. Bei einer
Ausführungsform
erfolgt die Authentifizierung von Sicherheitsschlüsseldaten
durch Implementierung verschiedener Verschlüsselungsmethoden. Die Unversehrtheit
von Sicherheitsschlüsseldaten
erfolgt durch Mechanismen einer digitalen Signatur, die öffentliche
Schlüssel
verwenden, um zu gewährleisten,
dass Sicherheitsschlüsseldaten
von gültigen
Quellen gesendet und empfangen werden. Vertraulichkeit der Sicherheitsschlüsseldaten
wird dadurch gewährleistet,
dass die gesendeten Daten mit einem privaten Schlüssel verschlüsselt werden,
der vom Datenempfänger
gemeinsam genutzt wird und den dieser dazu verwendet, die Daten
beim Empfang zu entschlüsseln.
-
Nachdem
das System 100 einen Sicherheitsschlüssel-Datensatz von der Sicherheitsschlüssel-Datenbank 128 empfangen
hat, führt
das Sicherheitsschlüssel-Managementmodul 111,
in Zusammenwirkung mit der Schnittstelle 103 des Kartenbetriebssystems
und der Schnittstelle 105 der Kartenanwendung, die Funktionen der
Authentifizierung des Sicherheitsschlüssels, der Unversehrtheit der
Daten und der Vertraulichkeit der Daten aus. Dann überträgt das System 100 die
Sicherheitsschlüsseldaten
gemeinsam mit den anderen Daten für die Karte über die
Schnittstelle 107 des Personalisierungsgeräts an das
Personalisierungsgerät 130.
-
Bei
einer alternativen Ausführungsform
leitet das Sicherheitsschlüssel-Managementmodul 111 Sicherheitsinformation
an die anderen Module des Chipkarte-Personalisierungssystems 100 weiter.
Beispielsweise können
Teile der Karteninhaberdaten, wie der PIN(Personal Identification
Number)-Code durch das Kartenherausgeber-Managementsystem 150 verschlüsselt werden,
bevor die Daten an das Chipkarte-Personalisierungssystem 100 weitergeleitet
werden. Die Schnittstelle 101 des Kartenherausgeber-Managementsystems ruft
den Verschlüsselungsschlüssel über das
Sicherheitsschlüssel-Managementmodul 111 aus
der Sicherheitsschlüssel-Datenbank 128 ab,
und sie entschlüsselt
die Daten vor der Codierung oder Einprogrammierung des PIN-Codes
in den Magnetstreifen und/oder den Chip.
-
Bei
einer weiteren alternativen Ausführungsform
bildet das Sicherheitsschlüssel-Managementmodul 111 einen
Code"haken" in das Chipkarte-Personalisierungssystem 100,
der für
eine Gateway-Verbindung für eine
externe Sicherheitsquelle sorgt, die die benötigten Sicherheitsfunktionen
liefert. Ein Beispiel für
eine derartige externe Sicherheitsquelle ist ein Sicherheitsmanagerprogramm,
das durch einen Dritten geschrieben ist, der eine Sicherheitsdatenbank
von Sicherheitsschlüsseln
und/oder Sicherheitsfunktionen, ähnlich
der Sicherheitsschlüssel-Datenbank 128,
verwaltet. Die Sicherheitsfunktionen können entweder vom Sicherheitsmanager
ausgeführte
externe Routinen oder Codemodule sein, die von diesem weitergeleitet
werden und dann durch das Chipkarte-Personalisierungssystem 100 ausgeführt werden,
um die benötigten
Sicherheitsfunktionen bereitzustellen, oder eine Kombination von
beidem.
-
Die 3 veranschaulicht
eine Minimalkonfiguration des Chipkarte-Personalisierungssystems 100. Bei
dieser Ausführungsform
sind nur die Schnittstellenmodule 101 des Kartenherausgeber-Managementsystems
und die Schnittstellenmo dule 107 der Personalisierungsgeräte in Software
aktiviert. Diese Ausführungsform
ermöglicht
es dem Kartenherausgeber, das System 100 zum Personalisieren
von Nicht-Chipkarten zu verwenden, um so die Kosten des Vorliegens
zweier getrennter Personalisierungssysteme zu sparen, während er
in die Lage versetzt ist, mehrere Datenformate und mehrere Typen
von Personalisierungsgeräten
zu verwenden. Die 3 veranschaulicht auch eine
zusätzliche,
alternative Ausführungsform,
die über
das Nachfahr-/Berichtsmodul 109 verfügt, wie es oben in Zusammenhang
mit der 1C beschrieben wurde.
-
Bei
noch einer weiteren alternativen Ausführungsform codiert das in der 3 dargestellte
Chipkarte-Personalisierungssystem 100 Daten auf eine optische
Transaktionskarte, wenn ein optisches Codiergerät als Personalisierungsgerät 130 verwendet
wird.
-
Die 9 und 5 zeigen
noch weitere alternative Ausführungsformen,
wie sie implementiert werden, wenn der Kartenherausgeber keine Kartenanwendung
auf den Chip der Chipkarte programmiert. Diese Ausführungsformen
ermöglichen
es dem Kartenherausgeber, mehrere Kartentypen mit der zugehörigen Anzahl
von Betriebssystemen auf mehreren Arten von Personalisierungsgeräten herauszugeben,
ohne dass das Chipkarte-Personalisierungssystem 100 umzukonfigurieren
wäre. Wie
es oben in Zusammenhang mit der 1C beschrieben
wurde, beinhaltet die 4 die Module, die eine Berichts-
und Nachverarbeitung unterstützen.
Die 5 veranschaulicht die Ausführungsformen der 4 unter
Hinzufügung
des Sicherheitsschlüssel-Managementmoduls 111,
das die Schnittstelle 103 des Kartenbetriebssystems mit
Sicherheit bei der Übertragung
an das Personalisierungsgerät 130 versorgt.
-
In ähnlicher
Weise veranschaulichen die 6 und 7 Ausführungsformen
zum Unterstützen
eines Kartenherausgebers, der den Chip auf einer Chipkarte lediglich
als Datenspeicher für
eine Kartenanwendung verwendet, so dass kein im Chip abgearbeitetes
Betriebssystem vorliegt. Das Chipkarte-Personalisierungssystem 100 unterstützt mehrere
Kartenanwendungen für
mehrere Kartentypen, wie sie von mehreren Arten von Personalisierungsgeräten ausgegeben
werden. Die 6 und 7 sind den 4 und 5 mit der
Ausnahme analog, dass das Sicherheitsschlüssel-Managementmodul 111 Sicherheitsschlüssel und/oder Sicherheitsfunktionen
an die Schnittstelle 105 für Kartenanwendungen statt an
die Schnittstelle 103 für
das Kartenbetriebssystem liefert. Die 8 ist ein
Flussdiagramm auf hoher Ebene für
eine Ausführungsform
von Software, die die Funktionen des oben beschriebenen Chipkarte-Personalisierungssystems 100 implementiert.
Die Software erfasst in einem Block 801 eine Personalisierungsgerätkennung
für eine
Charge von durch das Kartenherausgeber-Managementsystem herauszugebenden
Transaktionskarten. Abhängig
vom Typ der herauszugebenden Karten erfasst die Software auch gleichzeitig
mindestens eine Anwendungsprogrammkennung und/oder eine Kennung
des Kartenbetriebssystems. Dann erfasst die Software über eine
der oben beschriebenen Prozeduren die spezielle Datenformatschablone,
die dem Format der Personalisierungsdaten entspricht (Block 803).
In einem Block 805 erfasst das System aus dem durch die
Personalisierungsgerätkennung
spezifizierten Datensatz für
das Personalisierungsgerät
die Geräteeigenschaften
für das
zum Herausgeben der Kartencharge zu verwendende Personalisierungsgerät.
-
Wenn
durch das Kartenherausgeber-Managementsystem eine Kennung für das Kartenbetriebssystem weitergeleitet
wurde (Block 807), ruft die Software die Programmiersteuerungsbefehle
aus dem Datenbank-Datensatz für
das Kartenbetriebssystem entsprechend der Kennung des Kartenbetriebssystems
in einem Block 809 ab. In Blöcken 811 und 813 wird
dieselbe Logik für
eine Kartenanwendung ausgeführt,
um die Anwendungsdaten, wie Code und/oder Variable, aus der Datenbank
abzurufen. Nun hat die Software die gemeinsamen Daten erfasst, wie
sie für
alle Karten in der Charge erforderlich sind, und sie beginnt eine
Schleife durch die Logik abzuarbeiten, die Karten für die einzelnen
Karteninhaber herausgibt.
-
Das
Kartenherausgeber-Managementsystem leitet die Personalisierungsdaten
für einen
einzelnen Karteninhaber an die Software weiter (Block 815),
die die Einzeldaten aus dem durch die Datenformatschablone definierten
Format in ein internes Format übersetzt,
wie es durch die Module des Chipkarte-Personalisierungssystems verwendet
wird (Block 817). Wenn der Kartenchip eine Sicherheitsarchitektur
erhält,
die Sicherheitsschlüssel
benötigt
(Block 819), erfasst die Software die zum Ausführen der
Sicherheitsschlüsselfunktionen
erforderlichen Sicherheitsschlüsseldaten
in einem Block 821 aus der geeigneten Sicherheitsschlüsselquelle.
-
Nun
ist die Software dazu bereit, Daten an das Personalisierungsgerät zu übertragen,
um die Karte zu programmieren. Wenn die Karte durch Sicherheitsschlüssel geschützt ist,
werden die Sicherheitsschlüsselfunktionen
ausgeführt,
und die Sicherheitsschlüsseldaten
werden im Block 823 übertragen.
Dann werden die Programmiersteuerungscodes für das Chipbetriebssystem, falls
anwendbar, übertragen
(Blöcke 825 und 827); als
Nächstes
werden der Anwendungscode und/oder Variable übertragen, falls sie benötigt werden
(Blöcke 829 und 831).
Schließlich
werden die Personalisierungsdaten des Karteninhabers, die in das
interne Format übersetzt
wurden, übertragen
(Block 833).
-
Nachdem
die Daten an die Karte übertragen
wurden, fügt
die Software in einem Block 839 die geeigneten Werte zur
Statistik hinzu, die sie für
das Kartenherausgeber-Managementsystem sammelt. Wenn noch weitere
Karten in derselben Charge zur Ausgabe verblieben sind (Block 841),
kehrt die Software. zum Block 815 zurück und erfasst die Personalisierungsdaten
für den
nächsten
Karteninhaber. Andernfalls ermittelt die Software, ob das Kartenherausgeber-Managementsystem
eine andere Kartencharge herauszugeben hat (Block 893),
und sie kehrt zum Block 801 zurück, um die erforderliche Information
zu erfassen, um den Zyklus für
die neue Charge zu wiederholen. Wenn keine weiteren Karten auszugeben
sind, endet die Software.
-
Die
Mechanismen, durch die das Kartenherausgeber-Managementsystem 150 die
erforderlichen Daten an das Chipkarte-Personalisierungssystem 100 weiterleitet,
und die Reihenfolge, mit der das Chipkarte-Personalisierungssystem
die Daten vom Kartenherausgeber-Managementsystem verarbeitet, können geändert werden,
ohne dass der Schutzumfang der Erfindung verlassen wird. Verschiedene
Anordnungen sind durch die spezielle Umgebung vorgegeben, in der
das System 100 arbeitet, wie es bei der in den 9 und 10 dargestellten
alternativen Ausführungsform
veranschaulicht ist.
-
In
der 9 wirkt ein Sicherheitsmodul 911 für eine Sicherheitsquelle
wie einen Sicherheitsmanager 940 und eine Sicherheitsdatenbank 992,
wie in der 1B mit 111 bzw. 128 dargestellt,
als Gateway in das Chipkarte-Personalisierungssystem 100.
Der Sicherheitsmanager 940 steuert den Zugriff auf die
Sicherheitsdatenbank 992, und er stellt eine Verbindung
in die Sicherheitsgateway 911 her, um die erforderlichen
Sicherheitsfunktionen für
das Chipkarte-Personalisierungssystem 100 auszuführen. Die
Sicherheitsgateway 911 ist mit der Schnittstelle 901 des
Kartenherausgeber-Managementsystems verbunden, was es dieser Schnittstelle 901 ermöglicht,
anzufordern, dass der Sicherheitsmanager 940 Personalisierungsdaten
entschlüsselt,
die vom Kartenherausgeber-Managementsystem 950 in
einem Verschlüsselungsformat
weitergeleitet wurden. Die Sicherheitsgateway 911 ist auch
mit der Schnittstelle 903 für Kartenan wendungen und der
Kartenbetriebsschnittstelle 905 verbunden, so dass sie
die erforderlichen Sicherheitsschlüssel und/oder Sicherheitsfunktionen
an diese Schnittstellen liefern kann, wie es oben in Verbindung
mit der 2 erläutert wurde.
-
Ferner
erfasst die in der 9 dargestellte Ausführungsform
des Chipkarte-Personalisierungssystems 100 die
durch die Anwendungsprogrammkennung spezifizierten Anwendungsdaten 911 vor
dem Erfassen der für
das Kartenbetriebssystem 924 spezifischen Programmiersteuerungsbefehle,
wozu die Kartenkennung verwendet wird. Diese Ausführungsform
erlaubt es, die Personalisierungsdaten und die Anwendungsdaten in
das interne Format zu übersetzen,
bevor die Programmierbefehle für
das Kartenbetriebssystem 924 und die gerätecharakteristischen
Daten 926 abgerufen werden, um so die Verarbeitung jeder
Chipkarte zu beschleunigen.
-
Auf
die Oberfläche
standardmäßiger Transaktionskarten
sind Daten aufgedruckt und eingeprägt, und/oder Daten sind in
einem Magnetstreifen auf der Karte codiert. Bei einer Chipkarte
können
Daten auch in einem internen Speicherbereich innerhalb des Mikroprozessors
abgespeichert werden. Dieselben Daten können auf der Oberfläche der
Karte, im Magnetstreifen und auch im Chipspeicher platziert werden.
Die genaue Konfiguration der Daten in und auf der Karte variiert
abhängig
vom Typ der herausgegebenen Chipkarte und den Erfordernissen des
Kartenherausgebers.
-
Die 10 ist
ein Flussdiagramm auf hoher Ebene der in der in 9 dargestellten
Ausführungsform, und
es veranschaulicht, in Verbindung mit den 11, 12 und 13,
weiter, wie verschiedene Mechanismen dazu verwendet werden können, das
Chipkarte-Personalisierungssystem 100 zu implementieren.
Das Kartenherausgeber-Managementsystem 950 leitet in einem
Block 1001 eine Kartenrahmenschablone weiter, die die Konfiguration
der Chipkarte für
das Chipkarte-Personalisierungssystem 100 definiert.
-
Die 11 veranschaulicht
eine Ausführungsform
des Datenlayouts für
den Datensatz 1100 für
die Kartenrahmenschablone. Die Kennung 1101 des Mikroprozessorchips
und die Kennung 1102 (falls vorhanden) des Kartenbetriebssystems
sind für
den Typ der herauszugebenden Chipkarte spezifisch. Die Hauptdateidefinition 1103 enthält Steuerungsinformation
wie die Chipquelle und das letzte Datum, zu dem der Chip geändert wurde.
Die Systemdateidefinitionen 1104, 1105, 1107 enthalten
Adressen zum Ort der Systemdateien innerhalb des Speichers des Chips.
Die Systemdateien werden vom Kartenbetriebssystem verwendet, und
sie enthalten Information wie mindestens einen PIN-Code für die Karte
und für
Anwendungen, sowie Algorithmustabellen. Bei der in der 11 dargestellten
Ausführungsform
stimmen die Definitionen der Hauptdatei und der Systemdatei mit
denen der Anweisungsnummer 7816-4 der International Standards Organization
(ISO) überein.
-
Die
nächsten
drei Abschnitte des Datensatzes 1100 der Kartenrahmenschablone
legen die Anordnung von Daten auf der Oberfläche und im Magnetstreifen der
Karte fest. Wenn Information auf die Karte zu drucken ist, wie eine
Fotografie 1109 des Karteninhabers, wird der Ort auf der
Oberfläche
der Karte, auf den derartige Daten zu drucken sind, in der Druckschablone
des Datensatzes 1100 der Kartenrahmenschablone an das Kartenherausgeber-Managementsystem 950 weiter
geleitet. In ähnlicher
Weise werden die Orte auf der Oberfläche der Karte zum Einprägen von
Daten in der Prägeschablone
weitergeleitet, und die Anordnung der im Magnetstreifen zu codierenden
Daten wird in der Magnetstreifenschablone weitergeleitet. Die Prägedaten
sind im Datensatz 1100 der Kartenrahmenschablone wie folgt
dargestellt: Name des Karteninhabers (EMName) 1111, Kontonummer
(EMAcct) 1113 und Ablaufdatum (EMXdat) 1115, sowie
Magnetstreifendaten mittels der Kontonummer (MSAcct) 1117 und
des Ablaufdatums (MSXdat) 1119. Die Anzahl der Einzeldaten
in der Druck-, Präge-
und Magnetstreifenschablone variiert abhängig von der vom Kartenherausgeber
gewünschten
Konfiguration der Chipkarte, wie es für den Fachmann ersichtlich
ist.
-
Wenn
es der Kartenherausgeber wünscht,
Kartenanwendungen in den Chip in der Chipkarte zu programmieren,
leitet er die Anwendungsprogrammkennungen in den Abschnitten 1121, 1123, 1125 des
Datensatzes 1100 der Kartenrahmenschablone an das Chipkarte-Personalisierungssystem 100 weiter.
Jeder Anwendung können
spezielle Sicherheitsfunktionen zugeordnet sein (1127, 1129, 1131),
und diese Information wird ebenfalls durch das Kartenherausgeber-Managementsystem 950 weitergeleitet.
Der Datensatz 1100 der Kartenrahmenschablone enthält auch
die Kennung 1123 für
Personalisierungsgeräte,
die für
das Personalisierungsgerät
gilt, das zum Ausgeben der Chipkarten zu verwenden ist.
-
Bei
einer alternativen Ausführungsform
speichert das Chipkarte-Personalisierungssystem 100 allgemein
verwendete Datensätze
für Kartenrahmenschablonen
in einer internen Datenbank, damit das Kartenherausgeber-Managementsystem 900 nur
eine Kennung für
Kartenrahmenschablonen weiterleiten muss, die angibt, welcher Datensatz
einer Kartenrahmenschablone für
eine spezielle Kartencharge zu verwenden ist.
-
Das
Chipkarte-Personalisierungssystem 100 erfasst die Datenformatschablone
für die
Personalisierungsdaten in einem Block 103 von einer vordefinierten
Stelle, die durch den Kartenherausgeber spezifiziert wurde. Wenn
der Kartenherausgeber eine Datenformatkennung an das System 100 weitergeleitet
hat, wird der dieser entsprechende Datensatz der Datenformatschablone
aus der Datenformat-Datenbank 920 abgerufen. Alternativ
kann der Kartenherausgeber den Datensatz der Datenformatschablone
selbst liefern. Wenn weder die Datenformatkennung noch der Datensatz
mit der Datenformatschablone an das System 100 geliefert
wird, wird das Format der Personalisierungsdaten durch die Kartenanwendungsdaten
bestimmt, wie es unten detaillierter erläutert wird.
-
Ein
Beispiel für
einen Datensatz einer Datenformatschablone ist in der 12 dargestellt.
Der Datensatz 1200 einer Datenformatschablone bildet ein
hypothetisches Layout der Datensätze
von Personalisierungsdaten in der Datenbank 952 des Kartenherausgebers,
wobei die Kontonummer 1201 das erste Feld bildet, der Name 1202 des
Kartenherausgebers das zweite Feld bildet und das Ablaufdatum 1205 der
Karte das dritte Feld bildet. Bei einer Ausführungsform sind die Datensätze von
Personalisierungsdaten durch Kommas unterteilte Datensätze, so
dass keine Datenfeldlängen
zum Definieren des Datensatzformats erforderlich sind. So definiert
der in der 12 dargestellte Datensatz 1200 einer
Datenformatschablone vollständig
die Struktur des folgenden Beispiels eines Datensatzes von durch
Kommas abgegrenzten Personalisierungsdaten für das Chipkarte-Personalisierungssystem 100:
133444999922, Mary Jane Smith, 0299.
-
Das
Chipkarte-Personalisierungssystem 100 erfasst die Anwendungsdaten
für die
Kartenanwendung, oder die Anwendungen 922 entsprechend
den Anwendungsprogrammkennungen, falls solche vorliegen, die durch
das Kartenherausgeber-Managementsystem 950 weitergeleitet
wurden, was in einem Block 1007 erfolgt. Wenn keine Anwendungsprogrammkennungen
geliefert werden, erfasst das Chipkarte-Personalisierungssystem 100 Vorgabe-Anwendungsdaten
(Block 1008). Die Vorgabe und/oder die Anwendungsdaten
im mindestens einen Datensatz von Kartenanwendungsdaten, die der
mindestens einen Anwendungsprogrammkennung entsprechen, werden in
die entsprechenden Abschnitte, d.h. 1121, 1123, 1125, sprechen,
werden in die entsprechenden Abschnitte, d.h. 1121, 1123, 1125,
des Datensatzes 1100 der Kartenrahmenschablone eingesetzt.
-
In
der 13 ist eine Ausführungsform des Layouts eines
Datensatzes von Kartenanwendungsdaten dargestellt. Das erste Feld
in diesem Datensatz 1300 von Kartenanwendungsdaten ist
der Anwendungsname 1301. Wie bei anderen Computergestützten Anwendungsprogrammen
verarbeitet eine Kartenanwendung Daten von externen Quellen wie
einem automatischen Kassensatz oder internen Quellen wie Dateien,
die in den Speicher des Mikroprozessors eincodiert sind. Die Verwendung
der Chipkarte sorgt dafür,
dass durch den Mikroprozessor die geeignete Anwendung ausgeführt wird,
und die Anwendung greift ihrerseits auf die internen Dateien zu,
um Daten abzurufen oder zu speichern. Um auf interne Daten zuzugreifen,
enthält
der Datensatz von Kartenanwendungsdaten Zeiger auf Anwendungsdateien
im Chipspeicher (1302, 1305, 1037) sowie
den Ort von Feldern innerhalb der Anwendungsdateien. Einige der
Felder werden mit Daten aus der Datenbank 952 des Karteninhabers
initialisiert, wenn die Karte ausgegeben wird. Die Anwendungsdaten 1300 beinhalten die
Adresse 1303 der im Chipspeicher vorhandenen Karteninhaberdatei,
und sie definieren, dass diese die folgenden drei Felder enthält: den
Namen des Karteninhabers (ICName) 1309, die Kontonummer
(ICAcct) 1311 und das Ablaufdatum (ICXdat) 1313.
Zusätzliche
interne Daten sind in anderen Anwendungsdateien gespeichert, und
das Layout dieser zusätzlichen
Datei ist ebenfalls durch die Anwendungsdaten 1300 definiert.
-
Wenn
der in der Chipkarte eingebettete Chip ein Betriebssystem enthält, wie
es durch den Datensatz der Kartenrahmenschablone spezifiziert ist,
erfasst das Chipkarte-Personalisierungssystem 100 einen
Satz von Programmiersteuerungsbefehlen für das Betriebssystem in einem
Block 1011 von der Datenbank 924 des Kartenbetriebssystems.
Die Programmiersteuerungsbefehle für jedes Betriebssystem beinhalten
Befehle für Funktionen
zum Erzeugen von Dateien im Speicher des Chips und zum Zugreifen
auf sie, zum Lesen und zum Schreiben von Datensätzen in den im Chipspeicher
vorhandenen Dateien, gemeinsam mit Sicherheitsbefehlen, die PIN(Personal
Identification Number)-Codes authentifizieren und Transaktionen
steuern, die im Chip gespeicherte Geldbeträge ändern.
-
Das
Chipkarte-Personalisierungssystem 100 erfasst in einem
Block 113 die gerätecharakteristischen Daten,
die der Kennung des Personalisierungsgeräts im Datensatz der Kartenrahmenschablone
vom Datensatz 926 des Personalisierungs geräts entsprechen.
In den gerätecharakteristischen
Daten ist ein Satz personalisierender Programmiersteuerungsbefehle
enthalten, die den Betrieb des Personalisierungsgeräts steuern. Wie
die Kartenbetriebssysteme, sind die Personalisierungs-Steuerungsbefehle
für den
Verkäufer
des Geräts charakteristisch,
jedoch beinhalten sie typischerweise Befehle, die auf die Verwaltung,
Formatierung und Herstellung von Chipkarten gerichtet sind.
-
Wenn
das Chipkarte-Personalisierungssystem 100 alle zum Definieren
einer Chipkarte erforderlichen Daten erfasst hat, ist es dazu bereit,
Datensätze 952 von
Personalisierungsdaten vom Kartenherausgeber-Managementsystem 950 zu
empfangen. Da jeder Datensatz 952 von Personalisierungsdaten
im Block 1015 geliefert wird, nutzt das Chipkarte-Personalisierungssystem 100 die
Datenformatschablone, falls sie vorhanden ist, dazu, die Personalisierungsdaten
in ein internes Format zu übersetzen,
und die Kartenanwendungsdaten und die Kartenrahmenschablone bilden
die Personalisierungsdaten in Variablen in einem Befehlsskript ab,
das in einem Block 1017 in einer internen Skriptsprache
geschrieben wird. Der Übersetzurrgs-
und Abbildungsprozess wird unten weiter beschrieben. Alternative
Ausführungsformen,
die eine standardmäßige Programmiersprache
wie Basic, Java oder C anstelle der internen Skriptsprache verwenden,
befinden sich innerhalb des Schutzumfangs der Erfindung.
-
Das
Chipkarte-Personalisierungssystem 1019 führt eine Überprüfung auf
Sicherheitserfordernisse für die
verschiedenen Komponenten des Herausgabeprozesses für Chipkarten
aus. Bei der in der 11 dargestellten Ausführungsform
der Kartenrahmenschablone werden die Sicherheitserfordernisse für die Anwendungen
durch den Datensatz 1110 der Kartenrahmenschablone im Block 1019 spezifiziert.
Wenn Sicherheitserfordernisse vorliege, erfasst das Chipkarte-Personalisierungssystem 100 Sicherheitsdaten
und/oder Sicherheitsfunktionen vom Sicherheitsmanager 940,
und es fügt
die Funktionen in einem Block 1021 dem internen Skript hinzu.
Eine alternative Ausführungsform
des Chipkarte-Personalisierungssystems 100 leitet die Kennungen des
Kartenbetriebssystems und des Personalisierungsgeräts, sowie
die Anwendungsprogrammkennung, an den Sicherheitsmanager 940 weiter,
der die zutreffenden Sicherheitsdaten und/oder – funktionen aus der Sicherheitsdatenbank 942 abruft.
Die Sicherheitsfunktionen nutzen typischerweise Daten von zusätzlichen
Quellen, einschließlich
in internen Chipdateien gespeicherten Daten, Personalisierungsdaten 952,
der Datenbank 924 des Betriebssystems, der Datenbank 922 der
Kartenanwendung, in Kombination mit Algorithmustabellen, die im
Chip gespeichert sind oder von einem externen Sicherheitsmodul,
wie dem Sicherheitsmanager 940, geliefert werden, um die
Prozesse der Authentifizierung des Sicherheitsschlüssels, der
Unversehrtheit der Daten, der Vertraulichkeit der Daten sowie andere
Sicherheitsprozesse auszuführen,
wie sie oben in Verbindung mit der 2 beschrieben
sind.
-
Wenn
einmal das interne Befehlsskript abgeschlossen ist, muss es in charakteristische
Programmiersteuerungsbefehle übersetzt
werden, wie sie dem Kartenbetriebssystem (falls vorhanden) und dem
Personalisierungsgerät
eigen sind, damit die Personalisierungsdaten an die Chipkarte übertragen
werden. Bei dieser Ausführungsform
erfolgt die Übersetzung
durch einen Skriptspracheninterpretierer in Blöcken 1025 und 1027 unter
Verwendung der von der Datenbank 924 des Kartenbetriebssystems
und der Datenbank 926 des Personalisierungsgeräts erfassten
Information.
-
In
einem Block 1029 leitet das Betriebssystem 100 der
Chipkarte das interpretierte Skript an das Personalisierungsgerät weiter,
das dann die Programmiersteuerungsbefehle zum Prägen/Drucken, Codieren und Programmieren
der zutreffenden Personalisierungsdaten auf der Oberfläche sowie
in den Magnetstreifen bzw. den Chip der Chipkarte ausführt. Wie
zuvor leitet, wenn der Kartenherausgeber die Wahl getroffen hat,
eine aufrüstende
Programmiervorrichtung für
Chipkarten zur Hinzufügung
zu seinem vorhandenen Personalisierungsgerät zu erwerben, eine alternative
Ausführungsform
des Chipkarte-Personalisierungssystems 100 die Steuerungsbefehle
für das
Prägen
und Codieren an das Personalisierungsgerät 930 sowie den Steuerungsbefehl
für der
Chip an den Nachprozessor 132 in der Programmiervorrichtung
für Chipkarten
weiter.
-
Wenn
der Ausgabeprozess für
eine Karte abgeschlossen ist, erfasst das Chipkarte-Personalisierungssystem 100 den
nächsten
Datensatz von Personalisierungsdaten, wenn weitere Karten desselben
Typs auf die Ausgabe warten (Block 1033). Andernfalls ermittelt
das Chipkarte-Personalisierungssystem, ob eine andere Charge von
Chipkarten eines anderen Typs auf die Ausgabe wartet (Block 1001),
und es startet den Ausgabeprozess erneut durch Erfassen eines neuen
Datensatzes einer Kartenrahmenschablone vom Kartenherausgeber.
-
Das
folgende Beispiel verwendet Beispielsdaten zum weiteren Beschreiben
der Verarbeitung, wie sie durch die in den
9 und
10 dargestellte
Ausführungsform
des Chipkarte-Personalisierungssystems
100 ausgeführt wird.
Das Kartenherausgeber-Managementsystem
950 fordert den
Start des Ausgabeprozesses dadurch an, dass es Folgendes an das
Chipkarte-Personalisierungssystem
100 liefert: einen Datensatz einer
Kartenrahmenschablone, mindestens eine Anwendungsprogrammkennung,
eine Kennung für
das Kartenbetriebssystem, eine Kennung des Personalisierungsgeräts sowie
wahlweise eine Kennung für
eine Datenformatschablone oder einen Datensatz für eine Datenformatschablone.
Bei diesem Beispiel leitet das Kartenherausgeber-Managementsystem
950 einen
unten angegebenen Datensatz einer Anwendungsressourcenschablone
weiter, der die Kennungen enthält.
Das System
100 erfasst eine Datenformatschablone unter
Verwendung einer der Prozeduren, die oben spezifiziert sind und
unten in Verbindung mit beispielhaften Datensätzen von Karteninhaberdaten
detaillierter erläutert
werden.
-
Die
erste Anweisung im Datensatz markiert den Anfang von Information
für eine
spezielle Anwendung, in diesem Fall die Anwendung "A1". Die nächsten vier
Anweisungen definieren die Kennungen für den Datensatz der Kartenrahmenschablone
(DFT), den Kartenanwendungs-Datensatz (CAT), den Datensatz des Kartenbetriebssystems
(CID) und den Datensatz des Personalisierungsgeräts (CPT). Die abschließende Anweisung ist
der Name einer durch das Kartenherausgeber-Managementsystem 950 erzeugten
Datei, die den mindestens einen Datensatz der Karteninhaberdaten
enthält.
Das Kartenherausgeber-Managementsystem 950 nimmt die Karteninhaberdaten
entweder gemäß einer
einzelnen Anfrage oder als 'batch' von Anfragen für auszugebende
Karten auf.
-
Das
System 100 sucht die den Kennungen entsprechenden Datensätze aus
der Datenbank heraus. Dann verwendet das System 100 die
in der Kartenrahmenschablone und der Datenformatschablone enthaltene
Information zum Erstellen eines internen "Skripts", das es später zu den speziellen Befehlen
interpretiert, wie sie im Kartenbetriebssystem und den Datensätzen des
Personalisierungsgeräts
enthalten sind, die das Personalisierungsgerät dazu anweisen, die Personalisierungsdaten
zu verarbeiten und die Karte für
jeden Karteninhaber auszugeben.
-
Zwei
beispielhafte Datensätze 925 von
Karteninhaberdaten sind nachfolgend angegeben.
-
-
In
diesen Datensätzen
platziert das durch den Kartenherausgeber definierte Format den
Namen des Kontos (den Namen des Karteninhabers) im ersten Feld,
gefolgt von der Kontonummer, dem Ablaufdatum, dem Geburtsdatum und
medizinischen Daten.
-
Das
System
100 nutzt die Datenformatschablone zum Interpretieren
jedes Datensatzes
952 von Karteninhaberdaten, wenn dieser
verarbeitet wird. Das System
100 verwendet auch die Datenformatschablone und
die Datensätze
922 der
Kartenanwendung zur Gültigkeitsprüfung für die Daten
952,
um die korrekten Daten und das korrekte Format zu gewährleisten.
Ein Beispiel für
eine Datenformatschablone, die dem Format der oben angegebenen beispielhaften
Karteninhaber-Datensätze entspricht,
ist in der ersten Zeile der unten folgenden Tabelle angegeben. Der
Datensatz der Personalisierungsdaten zu James Smith ist in der Tabelle enthalten,
um die Entsprechung zwischen der Datenformatschablone und den Feldern
des Datensatzes der Karteninhaberdaten zu zeigen. Die Datenformatschablone
setzt jedes Eeld im Karteninhaber-Datensatz mit einer internen Marke,
%1, %2, usw. gleich, die der im System
100 verwendeten
internen Reihenfolge entspricht.
-
Das
oben dargestellte Beispiel repräsentiert
den einfachsten Fall, bei dem die Felder eines Datensatzes 952 von
Karteninhaberdaten in der internen Reihenfolge angeordnet sind,
in der sie durch das Chipkarte-Personalisierungssystem 100 verwendet
werden. Diese eineindeutige Entsprechung bedeutet, dass das System 100 die
Felder der Karteninhaberdaten nicht in die interne Feldreihenfolge übersetzen
muss. Bei einem solchen Fall ist der Datensatz einer Datenformatschablone
unnötig.
Demgemäß leitet
der Kartenherausgeber, bei einer weiteren, alternativen Ausführungsform,
keine Datenformatkennung an das Chipkarte-Personalisierungssystem 100 sondern
stattdessen Hinweisinformation, wie ein Flag, weiter, das das System 100 darüber informiert,
dass keine Datenformatschablone erforderlich ist, da die Felder
der Karteninhaberdaten in eineindeutiger Entsprechung zur internen
Feldreihenfolge stehen. Das System 100 reagiert durch Übergehen des Übersetzungsschritts
auf die Hinweisinformation.
-
Ein
komplizierteres Beispiel wie es als Nächstes dargestellt ist, ist
ein solches, bei dem die Felder des Datensatzes 952 der
Karteninhaberdaten und die Daten innerhalb der Felder der Reihenfolge
nach nicht mit der internen Systemreihenfolge übereinstimmen. In diesem Fall
ist eine Übersetzung
erforderlich.
-
-
Das
System 100 verwendet die Datenformatschablone zum Übersetzen
der Datenfelder in die interne Reihenfolge, wie es oben dargestellt
ist. Die Übersetzung
kann zu einer körperlichen
Umordnung der Datenfelder führen,
oder es kann sich um eine logische Umordnung handeln, bei der die
Datenformatschablone jedesmal dann aufgerufen wird, wenn das System 100 auf
ein Feld im Datensatz der Karteninhaberdaten Bezug nimmt. Für den Fachmann
sind verschiedene Datenformatschablonen ersichtlich, wie auch das
Ersetzen von Tabellen von Feldentsprechungen oder eines Satzes von
Aufteilanweisungen oder andere Mechanismen für die oben zum Veranschaulichen
dieses Beispiels verwendete einfache Tabelle.
-
Der
Datensatz der Kartenrahmenschablone beschreibt die Struktur des
Chips auf der Karte. Beim unten angegebenen Beispiel definiert der
Eintrag $MF ein Stammverzeichnis (3F00), während Einträge $DF eine medizinische Anwendung
(5F20) und eine Rechnungsstellungsanwendung (5F10) definieren. Innerhalb
jedes Verzeichnisses existieren Anwendungs-spezifische Dateien,
die durch Einträge
$EF gekennzeichnet sind, wie 6F00, wo der Kontoname enthalten ist,
und 6F10, wo die Kontonummer enthalten ist. Alle Datei-beschreibenden
Daten befinden sich in der Kartenrahmenschablone, und auf sie wird
zu verschiedenen Zeitpunkten während
des Ausgabeprozesses für
eine Chipkarte Bezug genommen.
-
-
Der
Kartenanwendungs-Datensatz 922 sorgt für eine "Abbildung" der Karteninhaberdaten 952 auf
die durch die Anwendung verwendeten Datenfelder. Der unten dargestellte
beispielhafte Kartenanwendungs-Datensatz 922 verfügt über Dateneinträge, die
mit der Abfolge angeordnet sind, gemäß der sie durch das Chipkarte-Personalisierungssystem 100 verarbeitet
werden.
-
-
Der
Eintrag ICCID enthält
die Chipkennung. Jeder der restlichen Einträge, mit Ausnahme von FMTACCT
sorgt für
eine Abbildung einer "Marke" auf das Feld im
Datensatz 952 des Karteninhabers, der die Information (wie
in der oben angegebenen Datenformatschablone definiert) enthält und den
Typ der Daten im Feld spezifiziert. So repräsentiert die Marke MED1 das
fünfte
Feld im Datensatz 952 der Karteninhaberdaten, und die Daten
liegen im Alpha-Format vor. Der Eintrag FMTACCT zerteilt das zweite
Feld im Datensatz 952 der Karteninhaberdaten, d.h. die
Kontonummer, in Abschnitte, und er fügt Apostrophe zwischen den
Abschnitten ein.
-
Der
Datensatz 924 für
das Kartenbetriebssystem enthält
die zum Programmieren des Chips auf der Karte erforderlichen Programmiersteuerungsbefehle.
Die unten angegebenen beispielhaften Programmiersteuerungsbefehle
für das
Kartenbetriebssystem sind der ISO-Anweisung mit der Nummer 7816-4
entnommen, und es handelt sich nicht um interne, spezifische Befehle
irgendeines speziellen Kartenbetriebssystems.
-
-
Jeder
Eintrag im obigen beispielhaften Datensatz enthält eine Marke gefolgt vom entsprechenden
Befehl in der dem Kartenbetriebssystem eigenen Sprache. Felder variabler
Parameter sind mit "%" gefolgt von einem
Buchstaben gekennzeichnet, und sie werden mit den passenden Karteninhaberdaten
aufgefüllt,
wenn eine jeweilige Karte verarbeitet wird.
-
Der
Datensatz 926 des Personalisierungsgeräts enthält für das Personalisierungsgerät charakteristische
Daten, wie Anweisungen, die die tatsächliche Abfolge und die Schritte
definieren, die zum Fertigstellen einer Karte auf einem speziellen
Personalisierungsgerät
erforderlich sind. Die bei diesem Beispiel verwendeten beispielhaften
Anweisungen sind fiktiv, und sie repräsentieren nicht die internen,
spezifischen Anweisungen für
irgendein spezielles Personalisierungsgerät.
-
-
-
Wenn
eine jeweilige Karte ausgegeben wird, werden die oben dargestellten,
für das
Personalisierungsgerät
charakteristischen Daten seriell in vier Schritten verarbeitet,
die durch die Einträge
definiert sind, denen ein "$" voran geht. Der
Kartenanwendungs-Datensatz 922 wird dazu verwendet, den
Wert der Felder variabler Parameter in jeder Anweisung zu bestimmen.
-
Die
Anweisung $EMBOSS ist ein einzelner Datenstrom, der mit der Steuerungssequenz
#EMB# beginnt, die das Personalisierungsgerät darüber informiert, dass die folgenden
Daten in der Karte eingeprägt werden
sollten. Jedes Datenfeld in der Anweisung ist in einem Paar von
Prozentzeichen eingeschlossen. In diesem Fall ist das erste Datenfeld
FMTACCT, oder das formatierte Kontofeld, wie es im Kartenanwendungs-Datensatz 922 definiert
ist. Das System 100 durchsucht den Kartenanwendungs-Datensatz 922 nach dem
Eintrag FMTACCT, und es erzeugt aus dem zweiten Datenfeld im ersten
beispielhaften Datensatz 952 für den Karteninhaber die Zeichenkette "1265-36830-91245". Das nächste Feld,
NAME, wird dem ersten Datenfeld im Datensatz 952 des Karteninhabers
entnommen. So wird die Prägeanweisung
für den
ersten beispielhaften Datensatz 952 des Karteninhabers
#EMB%1265-36830-91245%%Smith, James%.
-
Die
Anweisung $ENCODE veranlasst das System 100 dazu, die im
Magnetstreifen der Karte zu codierenden Karteninhaberdaten auf dieselbe
Weise wie die Prägeanweisung
zu verarbeiten. In den Befehl werden zusätzliche Steuerzeichen entsprechend
den folgenden IATA(International Air Travel Association)- and ISO-Standards eingefügt. Die
sich ergebende Anweisung ist #ENC#%%%12653683091245'%%Smith, James%.
-
Der
Befehl $IC spezifiziert die im Speicher des Chips zu speichernde
Information. Der Datensatz 924 des Kartenbetriebssystems
wird dazu verwendet, die Anweisungen im Datensatz des Personalisierungsgeräts in die
Programmiersteue rungsbefehle für
das Betriebssystem zu übersetzen.
Eine Steuerungssequenz, #\@#, wird dazu verwendet, das Personalisierungsgerät darüber zu informieren,
dass die folgenden Daten Chipdaten sind. Das erste abzuspeichernde
Feld ist die Chipkennung, ICCID. Das System 100 interpretiert
die Marke WRITE im Datensatz 926 des Personalisierungsgeräts entsprechend
dem Befehl, der durch die Marke WRITE im Datensatz 924 des
Kartenbetriebssystems gekennzeichnet ist. Da im Anwendungsdatensatz 922 für den Eintrag
der Chipkennung kein Versatzwert spezifiziert ist, wird die Vorgabe "0000" in das Feld %O für einen variablen
Parameter geladen. Das Feld %L für
einen variablen Parameter wird auf den Wert des Felds SIZE im Eintrag
$CHIP in der Kartenrahmenschablone gesetzt, d.h. auf "10" oder hexadezimal "0A". Das Feld %D eines
variablen Parameters wird auf den Wert der ICCID, "1234509876" gesetzt. Der sich
ergebende Befehl ist A0D000000A1234509876.
-
Die
nächsten
Befehle veranlassen das Kartenbetriebssystem dazu, den Namen des
Karteninhabers im Kontonamensfeld im Kontenverzeichnis auf dem Chip
abzuspeichern. Das System 100 übersetzt den Befehl SELECT
ACCT in den entsprechenden Befehl für das Kartenbetriebssystem.
Das System 100 lokalisiert den Eintrag SELECT im Datensatz 924 des
Kartenbetriebssystems, den Eintrag ACCT im Datensatz der Kartenrahmenschablone,
und es setzt den spezifizierten Verzeichnispfad für das im
Eintrag ACCT definierte Kontenverzeichnis ein, d.h. "5F10", also für das Feld
%F eines variablen Parameters im im Eintrag SELECT definierten Befehl.
Der sich ergebende Befehl ist A0A40000025F10. In ähnlicher
Weise veranlasst der Befehl SELECT NAME das System 100 dazu,
die Kontennamensdatei "6F00" in das Feld %F eines
variablen Parameters einzutragen. Der sich ergebende Befehl ist
A0A40000026F00. Der abschließende
Befehl in dieser Serie ist der Befehl WRITE. Das System 100 interpretiert
den Befehl WRITE dadurch, dass es in %O den Vorgabewert "0000", in %L den Wert
des Felds SIZE, "30" oder hex "1E", wie durch den Eintrag
NAME im Datensatz der Kartenrahmenschablone einträgt, und
für %D
den Namen des Karterinhabers "Smith,
James", für den ersten
beispielhaften Datensatz 952 der Karteninhaberdaten, einsetzt,
um den Befehl A0D000001ESmith, James~~~~~~~~~ zu erzeugen, wobei
jede "~" eine Leerstelle
repräsentiert,
um den Namen bis auf 30 Zeichen aufzufüllen.
-
Das
System
100 verarbeitet den Rest der Befehle im Datensatz
926 des
Personalisierungsgeräts
auf ähnliche
Weise, um einen zusammenhängenden
Datenstring zu erzeugen, der die Befehle zum Ausgeben einer Karte
für den
ersten beispielhaften Datensatz
952 von Karteninhaberdaten
enthält:
Der Befehl
$PR veranlasst das System
100 dazu, den Befehlsdatenstrom
an das Personalisierungsgerät
zu senden.
-
Die
in den 11, 12 und 13 dargestellten
Datenlayouts und die in Verbindung mit dem obigen Beispiel erörterten
Beispielsdaten sind nur Beispiele, die zum Veranschaulichen der
Funktionen der verschiedenen Ausführungsformen des Chipkarte-Personalisierungssystems 100 verwendet
sind. Für
den Fachmann ist es ersichtlich, dass die Layouts und die Daten
erforderlicherweise durch die Umgebung festgelegt sind, in der sie
verwendet werden.
-
Wie
es für
den Fachmann ebenfalls ersichtlich ist, umfasst das Chipkarte-Personalisierungssystem 100 auch
alternative Ausführungsformen
des Softwareprogramms, bei denen die Funktionen des Systems durch
andere Module als den in den Figuren dargestellten ausgeführt werden.
Das System 100 kann die Daten auf serielle oder parallele
Weise, oder eine Kombination der beiden verarbeiten, ohne dass vom
Grundgedanken oder Schutzumfang der Erfindung abgewichen wird. Das
Softwareprogramm kann in einer von mehreren in weitem Umfang verfügbaren Programmiersprachen
geschrieben werden, und die Module können als Unterroutinen, Untersysteme
oder Objekte, abhängig
von der gewählten
Sprache codiert werden. In ähnlicher
Weise werden vom System 100 verwendete Daten als logische
Datensätze
beschrieben und repräsentiert,
die in einer Datenbank enthalten sind, jedoch ist die Erfindung
nicht auf den beschriebenen Aufbau von Datensätzen beschränkt, noch ist die Verwendung
irgendeines speziellen Typs eines Datenverwaltungssystems nahegelegt.
Relationale Datenbanksysteme von Anbietern wie Oracle, Sybase, Informix
oder Microsoft stellen die erforderliche Infrastruktur zum Verwalten
der zugrundeliegenden Daten im System, sei es zentralisiert oder
verteilt, bereit, jedoch kann eine Ersetzung durch andere organisierende
Datenstrukturen, d.h. indizierte unstrukturierte Dateien, erfolgen,
ohne dass der Schutzumfang der Erfindung verlassen wird.
-
Ferner
sind auch alternative Ausführungsformen
der Erfindung, die das System in Hardware, Firmware, oder einer
Kombination von sowohl Hardware als auch Software implementieren,
als auch die Verteilung der Module und/oder der Da ten auf andere
Weise für
den Fachmann ersichtlich, und sie liegen auch im Schutzumfang der
Erfindung.
-
Es
ist zu beachten, dass die obige Beschreibung veranschaulichend und
nicht beschränkend
sein soll. Dem Fachmann sind nach dem Durchsehen der obigen Beschreibung
viele andere Ausführungsformen
ersichtlich. Der Schutzumfang der Erfindung soll daher unter Bezugnahme
auf die beigefügten
Ansprüche,
entsprechend dem vollen Schutzumfang von Äquivalenten, der derartigen
Ansprüchen
zugesprochen wird, bestimmt sein.