DE60013518T2 - Versicherte Personalisierung von Chipkarten - Google Patents

Versicherte Personalisierung von Chipkarten Download PDF

Info

Publication number
DE60013518T2
DE60013518T2 DE60013518T DE60013518T DE60013518T2 DE 60013518 T2 DE60013518 T2 DE 60013518T2 DE 60013518 T DE60013518 T DE 60013518T DE 60013518 T DE60013518 T DE 60013518T DE 60013518 T2 DE60013518 T2 DE 60013518T2
Authority
DE
Germany
Prior art keywords
personalization
descriptor
data
application
chip card
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 - Lifetime
Application number
DE60013518T
Other languages
English (en)
Other versions
DE60013518D1 (de
Inventor
Harmut Droege
Volker Gottschalk
Juergen Haardoerfer
Albert Schaal
Markus Weinlaender
Martin Witzel
Dr. Rainer Woerz
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.)
Siemens AG
International Business Machines Corp
Original Assignee
Siemens AG
International Business Machines Corp
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 Siemens AG, International Business Machines Corp filed Critical Siemens AG
Priority to DE60013518T priority Critical patent/DE60013518T2/de
Publication of DE60013518D1 publication Critical patent/DE60013518D1/de
Application granted granted Critical
Publication of DE60013518T2 publication Critical patent/DE60013518T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/355Personalisation of cards for use
    • G06Q20/3552Downloading or loading of personalisation data
    • 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/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/357Cards having a plurality of specified features
    • G06Q20/3576Multiple memory zones on card
    • G06Q20/35765Access rights to memory zones

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Accounting & Taxation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)
  • Credit Cards Or The Like (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Description

  • Diese Erfindung betrifft ein Verfahren zur Initialisierung und Personalisierung einer Chipkarte und eine Chipkarte zu diesem Zweck.
  • Der Herstellungsprozess von Chipkarten beinhaltet zwei Phasen, die mit dem Laden von Daten in die Karte zusammenhängen, nämlich die Initialisierung und die Personalisierung.
  • Während der Initialisierung werden die später benötigten Strukturen, beispielsweise Dateien und Verzeichnisse und die Korrelation zwischen diesen, im Speicher der Chipkarte erzeugt. Außerdem werden Daten in die Chipkarte geladen, wobei diese für alle Karten in einer gegebenen Reihe oder Fertigungsperiode gleich sind. Bezüglich der Initialisierung hat die Geschwindigkeit einen erheblichen Einfluss auf die Kosten.
  • Während der Personalisierung werden geheime und/oder kartenspezifische Daten in die Chipkarte geladen. Falls beispielsweise die Nummer der die Karten ausgebenden Organisation, die für alle Karten gleich ist, zum Zeitpunkt der Initialisierung aufgezeichnet wurde, so wird zum Zeitpunkt der Personalisierung beispielsweise die für die Karte spezifische Kreditkartennummer in den Speicher der Karte programmiert. In diesem Fall besteht eine wichtige Bedingung darin, dass eine Personalisierung nur für jene Datenfelder möglich sein darf, die dafür vorgesehen sind, personalisiert zu werden. Es muss gewährleistet sein, dass die Daten an die richtige Stelle geschrieben werden, d.h. nur in die Felder, die zum Zeitpunkt der Initialisierung zum Personalisieren von Daten reserviert wurden. Um diese Bedingung zu erfüllen, werden während der Initialisierung sogenannte Platzhalter in den Speicher der Chipkarte geladen. Wenn Personalisierungsdaten sodann zu einem Feld übertragen werden, das während der Personalisierung für solche Daten vorgesehen ist, werden zusätzliche Daten zusammen mit den Personalisierungsdaten an die Chipkarte weitergeleitet. Diese zusätzlichen Daten werden sodann mit den im Platzhalter gespeicherten Daten verglichen. Falls die beiden Datensätze gleich sind, werden die Personalisierungsdaten in den Speicher der Chipkarte geschrieben. Eine Prüfung dieser Art ist jedoch nicht robust genug, um die Möglichkeit eines missbräuchliche Verwendung auszuschließen. Es sind Chipkarten bekannt, auf denen eine Vielzahl von Chipkartenanwendungen gespeichert sind. Eine Chipkartenanwendung ist ein Dienst, den die Chipkarte bereitstellen kann, beispielsweise eine Zahlungsfunktion (Chipkartenanwendung A) oder eine elektronische Fahrerlaubnis (Chipkartenanwendung B). Um während der Personalisierung der Chipkarte Sicherheit zu garantieren, ist es notwendig, dass die Chipkartenanwendungen zum Zeitpunkt der Personalisierung voneinander getrennt sind, d.h., dass sichergestellt wird, dass nur der Anbieter der Chipkartenanwendung A in der Lage ist, die Chipkartenanwendung A zu personalisieren, oder mit anderen Worten, in der Lage ist, Daten für die Chipkartenanwendung A in die Karte zu laden. Das Gleiche gilt für den Anbieter der Chipkartenanwendung B und für alle anderen Chipkartenanwendungen. Bis heute wurde in keinem Chipkartenpersonalisierungssystem eine sichere Trennung zwischen Chipkartenanwendungen zum Zeitpunkt der Personalisierung erreicht.
  • Das Dokument WO-A-9940548 beschreibt ein Verfahren zur Initialisierung und Personalisierung einer Chipkarte, wobei Daten für mindestens eine Chipkartenanwendung in den Datenspeicher der Chipkarte übertragen werden, das die folgenden Schritte umfasst:
    • – während der Initialisierung: Schreiben von Deskriptoren für eine Chipkartenanwendung in den Datenspeicher der Chipkarte,
    • – während der Personalisierung: Übertragen der Personalisierungsdaten für eine Chipkartenanwendung zur Chipkarte, Schreiben der Personalisierungsdaten in den Datenspeicher der Chipkarte im Speicher.
  • Die Aufgabe der vorliegenden Erfindung ist die Bereitstellung eines Verfahrens zur verbesserten Initialisierung und Personalisierung von Chipkarten und einer Chipkarte zu diesem Zweck.
  • Gemäß der Erfindung wird diese Aufgabe mittels der in den unabhängigen Ansprüchen beschriebenen Merkmale erfüllt.
  • Gemäß der vorliegenden Erfindung werden Datenstrukturen auf der Chipkarte erzeugt, die es ermöglichen, dass die zur Chipkarte zu übertragenden Daten zum Zeitpunkt der Personalisierung eindeutig den einzelnen Chipkartenanwendungen und folglich den Anbietern dieser Anwendungen zugewiesen werden. Dies schafft eine sichere und zuverlässige Trennung zwischen den Chipkartenanwendungen zum Zeitpunkt der Personalisierung. Die vorliegende Erfindung macht es unmöglich, dass Personalisierungsdaten während der Personalisierung in Datenfelder geschrieben werden, die beispielsweise von den Anbietern von Chipkartenanwendungen nicht zu diesem Zweck vorgesehen sind. Die vorliegende Erfindung ermöglicht eine robuste Personalisierung der Felder für Personalisierungsdaten, die zum Zeitpunkt der Initialisierung als solche definiert wurden, wobei nur die zu diesem Zweck vorgesehenen Positionen im Speicher der Chipkarte personalisiert werden können. Es wird kein zusätzlicher Speicherplatz im Speicher der Chipkarte benötigt, um die vorliegende Erfindung in die Praxis umzusetzen. Gleichzeitig kann die für eine Personalisierung dieser Art erforderliche Initialisierung im Vergleich zu herkömmlichen Initialisierungsverfahren ohne Geschwindigkeitsverlust ausgeführt werden.
  • Im Folgenden wird die Erfindung mit Bezugnahme auf bevorzugte Ausführungsformen ausführlicher beschrieben. Die Zeichnungen zeigen Folgendes:
  • 1 ist eine Darstellung, die das Layout einer Chipkarte mit einem Datenspeicher und einzelnen Speicherblöcken zeigt.
  • 2 ist eine Darstellung, die das Layout von zwei Personalisierungsdeskriptoren (personalization descriptors) (PDs) und die Logikverbindung zwischen diesen gemäß der vorliegenden Erfindung zeigt.
  • 3 ist eine Darstellung, die das Layout eines Anwendungsdeskriptors (application descriptor) (AD) und zweier Personalisierungsdeskriptoren (PDs) und die Logikverbindungen zwischen diesen gemäß der Erfindung zeigt.
  • 4 zeigt den Datenspeicher einer Chipkarte nach der Initialisierung gemäß der Erfindung.
  • 5 zeigt den Datenspeicher einer Chipkarte während der Personalisierung gemäß der Erfindung, und
  • 6 ist ein Flussdiagramm für einen Personalisierungsvorgang gemäß der vorliegenden Erfindung.
  • 1 zeigt eine Chipkarte 100, wie sie in einer bevorzugten Ausführungsform der vorliegenden Erfindung verwendet wird. Die fragliche Chipkarte ist eine sogenannte intelligente Karte oder anders ausgedrückt eine Chipkarte mit einem Prozessor 101, einem Datenspeicher 102 und Software, beispielsweise dem Chipkartenbetriebssystem. In diesem Fall wird der Datenspeicher 102 der Chipkarte 100 vorzugsweise von einer Speicherverwaltungseinrichtung (memory manager) verwaltet, die sich auf der Chipkarte 100 befindet und die beispielsweise Teil des Chipkartenbetriebssystems ist. Die Speicherverwaltungseinrichtung unterteilt den Datenspeicher 102 auf der Chipkarte 100 in einzelne Speicherblöcke 103. Diese Aufteilung wird vorzugsweise dynamisch ausgeführt, d.h. entsprechend dem von den einzelnen Betriebssystemfunktionen oder Chipkartenanwendungen benötigten Speicherplatz. Jeder Speicherblock 103 hat eine physische Adresse, die von der Speicherverwaltungseinrichtung verwaltet wird. Da diese Adressen von der aktuellen Version des Chipkartenbetriebssystems, von der verwendeten Chipkartenhardware und von anderen zufälligen Bedingungen abhängen, werden in der bevorzugten Ausführungsform Relativzeiger (offsets) verwendet. Falls ein Bereich im Speicher 102 der Chipkarte 100 initialisiert werden muss, um beispielsweise eine Datei zu erzeugen, wird ein freier Speicherblock 103 zugewiesen, und bei Bedarf werden mittels eines Chipkartenbefehls, zum Beispiel CREATE FILE, Daten in diesen geschrieben. Um zu ermöglichen, dass Daten in einen bestimmten Bereich im Block 103 geschrieben werden, wird vorzugsweise ein Relativzeiger verwendet, der sich beispielsweise auf den Beginn von Block 103 bezieht. Die Verwendung von relativen Speicheradressen ermöglicht ein Umgehen der durch hardwarespezifische, physische Speicheradressen auferlegten Einschränkungen.
  • Im Folgenden wird eine Beschreibung der Initialisierung gegeben, die als Vorbereitung für die Personalisierung der Chipkarte 100 dient.
  • Während der Initialisierung wird ein sogenannter Personalisierungsdeskriptor (PD) in jede Position in einem Speicherblock 103 geschrieben, der für die Zwischenspeicherung eines Feldes von Personalisierungsdaten vorgesehen ist. 2 zeigt das Layout eines PD 200. Jeder Personalisierungsdeskriptor enthält ein Relativzeigerfeld NEXT 203. Außerdem kann jeder Personalisierungsdeskriptor ein Längenfeld LEN 201 und ein Statusfeld FLAG 202 enthalten. Um andere Personalisierungseigenschaften zu definieren, ist es möglich, andere zusätzliche Felder einzufügen.
  • Falls zur Personalisierung einer Chipkartenanwendung mehr als ein Personalisierungsdatensatz übertragen werden muss, werden zu diesem Zweck im Laufe der Initialisierung Speicherpositionen im Datenspeicher 102 der Chipkarte 100 durch andere PDs reserviert. Das Relativzeigerfeld NEXT 203 des PD 200 gibt die Position, d.h. die Speicheradresse, eines weiteren PD 210 an. Mittels des Relativzeigerfeldes 203 werden die benötigten PDs 200, 210 in PD-Listen organisiert, so dass es eine Reihe von PDs 200, 210 usw. in einer die für den Personalisierungsprozess festgelegten Reihenfolge gibt. Vom organisatorischen Standpunkt aus werden die PDs 200, 210 usw. in diesem Fall in derselben Reihenfolge miteinander verbunden, in der die Personalisierungsdaten während der anschließenden Personalisierung zur Chipkarte 100 übertragen werden. Um anzuzeigen, dass die PD-Liste keine weiteren Elemente enthält oder dass sie nur aus einem einzigen Element besteht, kann beispielsweise der Inhalt des Relativzeigerfeldes 203 des letzten PD auf null gesetzt werden. 2 zeigt, wie zwei PDs, in diesem Fall PD1 und PD2, verbunden werden, um eine PD-Liste zu bilden. Wie oben beschrieben wird, bedeutet die Verwendung von relativen Speicheradressen, dass die Einschränkungen von physischen Adressen vermieden werden können, was insbesondere vorteilhaft ist, wenn rückwirkende Änderungen an der Chipkartenhardware oder am Betriebssystem vorgenommen werden müssen.
  • Um die Robustheit der Personalisierung zu erhöhen, kann das zusätzliche Längenfeld LEN 201 eingeführt werden. Im Längenfeld LEN 201 des PD 200 wird die Länge, zum Beispiel in Byte, des Feldes für Personalisierungsdaten angegeben, die die Position des PD 200 einnehmen, zu dem das Längenfeld 201 während der nachfolgenden Personalisierung gehört.
  • Die Länge eines PD 200, der während der Initialisierung in den Datenspeicher 102 geschrieben wird, ist vorzugsweise kleiner als diejenige des Feldes von Personalisierungsdaten, die anschließend übertragen werden. Die Länge eines PD kann beispielsweise 4 Byte betragen, wohingegen diejenige eines Feldes von Personalisierungsdaten beispielsweise 40 Byte betragen kann. Es ist jedoch gleichermaßen möglich, dass ein PD 200 dieselbe Länge wie sein zugeordnetes Feld von Personalisierungsdaten hat. Die Einführung des Längenfeldes 201 ermöglicht es, dass ein Schutz gegen die Zerstörung der initialisierten Speicherstrukturen erhalten wird.
  • Zur Bereitstellung einer noch höheren Sicherheit während der Personalisierung kann das zusätzliche Statusfeld FLAGS 202 eingeführt werden. Das Statusfeld 202 eines PD 200 wird zur Speicherung verschiedener als Markierungen bekannter Statusbits verwendet, die angeben, welche Eigenschaften die Personalisierungsdaten aufweisen müssen, die zum Zeitpunkt der Personalisierung an die Stelle des PD 200 geschrieben werden müssen. Beispielsweise kann auf diese Weise angegeben werden, ob die Personalisierungsdaten verschlüsselt/unverschlüsselt und/oder signiert/unsigniert sein müssen usw.
  • Die Einführung von erweiterten Personalisierungsdeskriptoren dieser Art ermöglicht die Steuerung des Personalisierungsprozesses auf eine Weise, die für jeden Personalisierungsdatensatz individuell definiert werden kann.
  • Während der Initialisierung wird außerdem für jede Chipkartenanwendung im Speicher 102 der Chipkarte 100 mindestens ein Anwendungsdeskriptor (AD) erzeugt. Da die Chipkartenanwendungen jeweils einem Anbieter zugeordnet werden, werden die ADs ebenfalls den Anbietern der Chipkartenanwendungen zugeordnet. Das Layout eines AD 300 wird in 3 gezeigt.
  • Um eine Identifizierung eines AD 300 zu ermöglichen, enthält dieser einen Anwendungsbezeichner (application designator) 301, der die Chipkartenanwendung kennzeichnet, die unter Verwendung des AD 300 personalisiert werden muss. Der Anwendungsbezeichner 301 wird im Folgenden als Anwendungskennzeichner (application identifier) (AID) bezeichnet. Der AID 301 enthält vorzugsweise den Namen der entsprechenden Chipkartenanwendung und eine eindeutige numerische Kennzeichnung für den AD 300.
  • Außerdem enthält der AD 300 den Relativzeiger ACT 302 für den nächsten zu verarbeitenden PD. Das Relativzeigerfeld 302 wird in diesem Fall so initialisiert, dass es vor dem Beginn der Personalisierung auf den ersten PD 200 in einer PD-Liste zeigt.
  • Außerdem kann der AD 300 andere Daten enthalten, beispielsweise Schlüsseldaten KEY 303 zur Verwendung von verschlüsselten Sicherheitsmechanismen (cryptographic security mechanisms), beispielsweise zur Entschlüsselung von Personalisierungsdaten, die in verschlüsselter Form übertragen wurden, oder zur Überprüfung einer Signatur. Dies ermöglicht es jedem Anbieter von Chipkartenanwendungen, die während der Personalisierung anzuwendenden verschlüsselten Sicherheitsprozeduren individuell zu formulieren.
  • Außerdem kann der AD 300 einen Fehlbedienungszähler (misoperation counter) CNT 304 enthalten, und zur Verbesserung der Robustheit der Personalisierung kann er einen sogenannten Folgenzähler (sequence counter) SEQ 305 enthalten, wobei es sich um einen Zähler handelt, der jedes Mal erhöht wird, wenn ein Personalisierungsdatensatz erfolgreich in den Datenspeicher 102 der Chipkarte 100 eingegeben wurde, und der beispielsweise während der Personalisierung für eine Synchronisierung mit externen Datenbankanwendungen verwendet werden kann.
  • Jeder PD 200, 210 usw. kann nur einer PD-Liste zugewiesen werden, wobei jede PD-Liste ihrerseits einem spezifischen AD 300 und folglich einer Chipkartenanwendung zugewiesen wird. Falls es auf der Chipkarte 100 mehr als eine Chipkartenanwendung gibt, muss es auch mehr als einen PD oder eine PD-Liste geben. Auf diese Weise werden die Chipkartenanwendungen voneinander getrennt. Die beschriebene Art und Weise der Initialisierung, bei der die PDs 200, 210 usw. in Listen organisiert werden und die einzelnen PD-Listen jeweils einem AD 300 zugeordnet werden, bedeutet, dass die Personalisierungsfelder den verschiedenen Anbietern der entsprechenden beteiligten Chipkartenanwendungen eindeutig zugewiesen werden. Da jeder AD 300 nur einer Chipkartenanwendung zugewiesen wird, werden sicherheitsbezogene Daten, beispielsweise die Schlüsseldaten KEY 303, ebenfalls eindeutig einer gegebenen Chipkartenanwendung zugewiesen.
  • Nach den Initialisierungsschritten, die zur Vorbereitung der Personalisierung beschrieben wurden, ist beispielsweise die in 4 gezeigte Speicherbelegung (memory map) zu finden, die außerdem die Logikverbindungen zwischen den einzelnen Elementen zeigt. Als Beispiel wird ein Datenspeicher 102 gezeigt, der zwei Chipkartenanwendungen A und B enthält, denen jeweils ein Anwendungsdeskriptor (ADA 401 und ADB 402) zugewiesen wird. Dem Anwendungsdeskriptor ADA 401 seinerseits sind die Personalisierungsdeskriptoren PDA1 403 und PDA2 404 zugewiesen, und dem Anwendungsdeskriptor ADB 402 sind die Personalisierungsdeskriptoren PDB1 405 und PDB2 406 zugewiesen. Wie in 4 gezeigt wird, besteht ein Vorteil darin, dass beide Anwendungsdeskriptoren 401, 402 und die Personalisierungsdeskriptoren 403, 404, 405, 406 im Datenspeicher 102 der Chipkarte 100 in einer beliebigen Reihenfolge gespeichert werden können.
  • Nach der Beschreibung der Initialisierung der Chipkarte 100 wird nun ihre Personalisierung näher betrachtet, bei der die geheimen und/oder karten- oder benutzerspezifischen Personalisierungsdaten in die Chipkarte 100 geladen werden. Bei der Beschreibung der einzelnen Schritte des Personalisierungsprozesses wird auf 6 Bezug genommen. In der beschriebenen Ausführungsform sind die Felder LEN und FLAGS im Personalisierungsdeskriptor enthalten.
  • Die Personalisierung wird ausgeführt, indem die PD-Liste für jeden AD 401, 402 abgearbeitet wird. Als Beispiel wird hier die Personalisierung einer Chipkartenanwendung A beschrieben. Wie beim Schritt 601 gezeigt wird, wird zu diesem Zweck ein Personalisierungsbefehl der Form PERSONALIZE (AID, erster Personalisierungsdatensatz), der den Kennzeichner AID 301 des der entsprechenden Chipkartenanwendung zugewiesenen AD 401 und einen ersten Personalisierungsdatensatz enthält, zur Chipkarte 100 übertragen, beispielsweise mittels eines die Personalisierung ausführenden Bedieners. Die Übertragung des Kennzeichners AID 301 leitet den Personalisierungsprozess in der Chipkarte 100 ein. Mit Hilfe von Funktionen, die vom Betriebssystem der Chipkarte bereitgestellt werden, wird der AD der Chipkartenanwendung A, die einen entsprechenden Kennzeichner AID aufweist und im vorliegenden Fall (siehe 4) als ADA 401 bezeichnet wird, aus den im Datenspeicher 102 vorhandenen ADs 401, 402 ausgewählt (Schritt 602). Für eine fehlerfreie Personalisierung muss der übertragene Personalisierungsdatensatz die Daten enthalten, die in das entsprechende erste Feld für Personalisierungsdaten geschrieben werden müssen, wobei es sich im vorliegenden Fall um PDA1 403 handelt.
  • Falls die Chipkarte 100 für eine Verwendung vorgesehen ist, bei der nur ein einziger Anwendungsdeskriptor AD benötigt wird, kann auf das Vorhandensein des Kennzeichners AID 301 im Anwendungsdeskriptor und im Personalisierungsbefehl verzichtet werden.
  • Im Schritt 603 erfolgt sodann eine Prüfung in der Chipkarte 100, um festzustellen, ob der Wert im Längenfeld 201 von diesem PD, für den durch das Relativzeigerfeld ACT 302 des ADA 401 ein Positionshinweis gegeben wird, im vorliegenden Fall PDA1 403, gleich der Länge des im Personalisierungsbefehl übertragenen Personalisierungsdatensatzes ist.
  • Ist dies der Fall, wird der Personalisierungsdatensatz im Schritt 604 überprüft, um festzustellen, ob er die im Statusfeld FLAGS 202 des PDA1 403 festgelegten Sicherheitsbedingungen erfüllt. Falls im Statusfeld FLAGS beispielsweise angegeben wird, dass die übertragenen Personalisierungsdaten von einer digitalen Signatur begleitet werden müssen, wird zum Beispiel eine Prüfung der Daten ausgeführt, um festzustellen, ob eine Signatur dieser Art vorhanden ist und ob sie nicht geändert wurde. Die Signatur kann zum Beispiel durch Verwendung von Schlüsseldaten KEY 303 aus dem ADA 401 überprüft werden, die möglicherweise einen geeigneten Signaturschlüssel enthalten. Oder falls im Statusfeld FLAGS beispielsweise angegeben wird, dass die übertragenen Personalisierungsdaten verschlüsselt sein müssen, kann beispielsweise eine Prüfung hinsichtlich dieser Verschlüsselung ausgeführt werden und/oder die Daten können entschlüsselt werden, beispielsweise unter Verwendung von Schlüsseldaten KEY 303 aus dem ADA 401, die möglicherweise einen geeigneten Verschlüsselungsschlüssel (cryptographic key) enthalten. Damit Sicherheitsattribute überprüft werden können, kann der Personalisierungsbefehl Merkmale enthalten, mit deren Hilfe Scheckbeträge und so weiter überprüft werden können. Mit allen im Statusfeld FLAGS definierten Sicherheitskriterien befasst sich vorzugsweise der Schritt 604.
  • Falls die Sicherheitsprüfung erfolgreich durchlaufen wurde, wird das Relativzeigerfeld ACT 302 im ADA 401 im Schritt 605 mit dem im PDA1 403 gespeicherten Relativzeiger NEXT 203 überschrieben. Der Personalisierungsdatensatz (verschlüsselt, falls nötig) wird in die Position im Datenspeicher 102 geschrieben, an der der PDA1 403 gespeichert ist. Da der PDA1 403 folglich überschrieben wird, wird die Speicherkapazität des Datenspeichers optimal ausgenutzt.
  • Falls die zusätzlichen Felder nicht verwendet werden, erfolgt keine Überprüfung der Länge der Personalisierungsdaten und/oder der Sicherheitsbedingungen, und dies bedeutet eine Erhöhung der Geschwindigkeit der Personalisierung. Bei dieser sehr schnellen Personalisierung werden die Personalisierungsdaten einfach in ihrer festgelegten Reihenfolge zur Chipkarte 100 übertragen und in die für sie reservierten Felder geschrieben. Wenn dies erfolgt ist, wird die Trennung zwischen den Anwendungen durch das Prinzip der auf der Grundlage der PDs und ADs verwendeten Adressierung garantiert.
  • Zur Personalisierung gemäß der vorliegenden Erfindung ist es nicht notwendig, irgendwelche Daten außer den eigentlichen Personalisierungsdaten, die sich auf vorhandene Platzhalter (spaceholders) beziehen, (und außer dem Kennzeichner AID 301, wenn mehr als ein Anwendungsdeskriptor vorhanden ist) zur Chipkarte 100 zu übertragen, da alle benötigten Daten und insbesondere die Daten zu den Speicheradressen, die während der Personalisierung verwendet werden müssen, bereits auf der Karte vorhanden sind. Die für den Personalisierungsprozess benötigte Datenübertragungszeit wird entsprechend verringert. Infolgedessen ist die Personalisierung mit einer erheblich höheren Geschwindigkeit als zuvor möglich, insbesondere wenn keine zeitaufwendigen Optionen benutzt werden, beispielsweise den Zähler SEQ 305.
  • Die beschriebenen Arbeitsgänge auf der Chipkarte 100, die während des Initialisierungs- und Personalisierungsprozesses benötigt werden, und insbesondere die Schritte 602 bis 607 und die auszuführenden Prüfungen und Berechnungen werden auf der Chipkarte 100 ausgeführt, indem geeignete Softwareroutinen im Prozessor 101 ausgeführt werden, die beispielsweise im Betriebssystem der Chipkarte realisiert werden können.
  • Falls zum Zeitpunkt der Initialisierung angegeben wurde, dass der erste Personalisierungsdatensatz von einer bestimmten Signatur begleitet werden muss, beispielsweise durch Setzen eines entsprechenden Bits im Statusfeld FLAGS 202 des PDA1 403, kann aufgrund der Sicherheitsprüfung nur eine Person den PDA1 403 überschreiben, die einen Personalisierungsdatensatz zur Chipkarte 100 überträgt, der diese Bedingung erfüllt. Dies schließt die Möglichkeit aus, dass andere PDs 404, 405, 406 versehentlich oder absichtlich überschrieben werden. Da für jeden PD 403, 404, 405, 406 entsprechende Sicherheitsattribute definiert wurden, d.h. für jedes Feld für Personalisierungsdaten, kann die Personalisierung jedes einzelnen Feldes für Personalisierungsdaten zum Zeitpunkt der Initialisierung einzeln gesteuert werden. Und sobald die Sicherheitsattribute definiert wurden, können sie nicht zu einem späteren Zeitpunkt umgangen werden.
  • Alternativ kann, beispielsweise durch ein entsprechendes Steuerbit im Statusfeld FLAGS 202, während der Initialisierung angegeben werden, dass der im Personalisierungsbefehl übertragene Personalisierungsdatensatz kürzer als festgelegt sein kann, d.h., seine Länge kann beispielsweise kleiner als der im Längenfeld LED 201 des entsprechenden PD angegebene Wert sein. Da die Menge von übertragenen Personalisierungsdaten in diesem Fall kleiner ist, kann der Speicherplatz im Datenspeicher 102 der Chipkarte 100, der bereits reserviert wurde, jedoch nicht verwendet wird, mit Stopfbits (stuffing bits) gefüllt werden. Folglich wird die Sicherheitsprüfung in diesem Fall ausgeführt, selbst wenn der übertragene Personalisierungsdatensatz kürzer ist, als zum Zeitpunkt der Initialisierung angegeben wurde.
  • Die Situation im Datenspeicher 102 der Chipkarte 100 wird in 5 gezeigt, in der die logischen Verbindungen zwischen den einzelnen Elementen ebenfalls gezeigt werden. Der Platz des PDA1 403 wurde vom übertragenen Personalisierungsdatensatz 500 eingenommen (in 5 wird die ursprüngliche Position des PDA1 403 mit gestrichelten Linien gezeigt). Das Relativzeigerfeld ACT 302 des ADA 401 zeigt auf den PDA2 404. Die Datenstrukturen (ADB, PDB1, PDB2) für die Chipkartenanwendung B werden nicht verändert.
  • Beim nächsten Personalisierungsbefehl kann der PDR2 404 überschrieben werden, indem beispielsweise ein Personalisierungsbefehl der Form PERSONALIZE (AID, zweiter Personalisierungsdatensatz) verwendet wird. Alternativ wäre es möglich, mit dem Überschreiben des PDB1 405 zu beginnen usw. Es muss beachtet werden, dass die Reihenfolge, in der die zu übertragenden Personalisierungsdatensätze angeordnet sind, die gleiche sein muss, in der die PDs 403, 404, 405, 405 in der gegebenen PD-Liste miteinander verbunden sind. Unterstützend kann hierzu beispielsweise der Zähler SEQ 305 verwendet werden.
  • Sobald alle PDs eines AD überschrieben worden sind, d.h., sobald die PD-Liste keine weiteren Elemente mehr enthält, was durch die Tatsache angezeigt werden kann, dass das Relativzeigerfeld NEXT 203 des letzten PD einen Inhalt von null aufweist, wird der von der entsprechenden Chipkartenanwendung verwendete AD im Schritt 607 gelöscht. Die Chipkartenanwendung wurde vollständig geladen.
  • In einer Ausführungsform der Erfindung wird der Kennzeichner AID 301 nur dann im Personalisierungsbefehl übertragen, wenn ein neuer Anwendungsdeskriptor AD ausgewählt werden muss, beispielsweise wenn der erste Personalisierungsbefehl übertragen wird. Solange kein nachfolgender Personalisierungsbefehl einen Kennzeichner AID 310 enthält, findet die Zuordnung der übertragenen Personalisierungsdaten zum entsprechenden Anwendungsdeskriptor automatisch statt, beispielsweise unter Verwendung entsprechender Funktionen im Betriebssystem der Chipkarte. Nur bei Übertragung eines anderen Kennzeichners AID 301 wird ein entsprechender neuer AD ausgewählt.
  • Die Personalisierung auf der Chipkarte 100 wird unter Verwendung bekannter und beispielsweise vordefinierter Dienste und Routinen ausgeführt, die vom Betriebssystem der Chipkarte bereitgestellt werden, die durch Befehle, zum Beispiel den Personalisierungsbefehl, aufgerufen werden können.

Claims (14)

  1. Verfahren zum Initialisieren und Personalisieren einer Chipkarte (100), wobei Daten für mindestens eine Chipkartenanwendung zum Datenspeicher (102) der Chipkarte (100) übertragen werden, das die folgenden Schritte umfasst während der Initialisierung: – Schreiben von mindestens einem Anwendungsdeskriptor (300) für eine Chipkartenanwendung in den Datenspeicher (102) der Chipkarte (100), wobei der Anwendungsdeskriptor (300) Einzelheiten (302) der Speicheradresse von genau einem Personalisierungsdeskriptor (200) enthält, – Schreiben von mindestens einem Personalisierungsdeskriptor (200) in den Datenspeicher (102) der Chipkarte (100), wobei der Personalisierungsdeskriptor (200) Einzelheiten (203) der Speicheradresse des nächsten Personalisierungsdeskriptors (210) enthält, und während der Personalisierung: – Übertragung der Personalisierungsdaten (500) für eine Chipkartenanwendung zur Chipkarte (100), – Schreiben der Personalisierungsdaten (500) in den Datenspeicher (102) der Chipkarte (100) bei der Speicheradresse, die durch die Einzelheiten (302) im Anwendungsdeskriptor (300) angegeben werden, – Übertragung der Einzelheiten (203) der Speicheradresse des nächsten Personalisierungsdeskriptors (210), die dem ersten Personalisierungsdeskriptor (200) entnommen wurden, zum Anwendungsdeskriptor (300), so dass der nächste Personalisierungsdeskriptor (210) sodann dem Anwendungsdeskriptor (300) zugeordnet wird, – Wiederholung der Schritte der Personalisierung für alle Personalisierungsdaten, die übertragen werden müssen.
  2. Verfahren nach Anspruch 1, wobei der Anwendungsdeskriptor (300) Einzelheiten (302) enthält, die es ermöglichen, dass er eindeutig einer Chipkartenanwendung zugeordnet wird.
  3. Verfahren nach Anspruch 1 oder 2, wobei der Personalisierungsdeskriptor (200) außerdem Einzelheiten (201, 202) enthält, die die Eigenschaften der zu übertragenden Personalisierungsdaten (500) definieren, wobei das Verfahren den folgenden zusätzlichen Schritt umfasst: – Überprüfen der übertragenen Personalisierungsdaten (500), um festzustellen, ob sie den Einzelheiten (201, 202) entsprechen, – und wobei das Schreiben der Personalisierungsdaten (500) in den Datenspeicher (102) der Chipkarte (100) nur stattfindet, falls die Einzelheiten (210, 202) erfüllt werden.
  4. Verfahren nach Anspruch 3, wobei die Personalisierungsdaten (500) mit den Einzelheiten (201, 202) aus diesem Personalisierungsdeskriptor (200) verglichen werden, der dem Anwendungsdeskriptor (300) aktuell zugewiesen wird.
  5. Verfahren nach Anspruch 3 oder 4, wobei die Personalisierungsdaten (500) unter Verwendung von im Anwendungsdeskriptor (300) enthaltenen Daten überprüft werden.
  6. Verfahren nach irgendeinem der Ansprüche 3 bis 5, wobei zu den im Personalisierungsdeskriptor (200, 210) enthaltenen Einzelheiten (201, 202) die Länge (201) der Personalisierungsdaten (500) gehört.
  7. Verfahren nach irgendeinem der Ansprüche 3 bis 6, wobei zu den im Personalisierungsdeskriptor (200, 210) enthaltenen Einzelheiten (201, 202) Sicherheitsbedingungen (202) gehören, die die Personalisierungsdaten (500) erfüllen müssen.
  8. Verfahren nach irgendeinem der Ansprüche 1 bis 7, wobei der Anwendungsdeskriptor (300) einen Zähler (305) enthält, wobei das Verfahren den folgenden zusätzlichen Schritt beinhaltet: – Erhöhen des Zählers (305) jedes Mal, wenn ein Personalisierungsdatensatz erfolgreich in den Datenspeicher (102) der Chipkarte (100) eingegeben wurde.
  9. Chipkarte (100) mit einem Prozessor (101) zum Ausführen von Softwareroutinen, einem Datenspeicher (102) und Softwareroutinen zum Ausführen des Verfahrens nach irgendeinem der Ansprüche 1 bis 8.
  10. Chipkarte nach Anspruch 9, wobei der Datenspeicher (102) vor dem Beginn der Personalisierung der Chipkarte (100) Folgendes enthält: mindestens einen Anwendungsdeskriptor (300) für eine Chipkartenanwendung, wobei dieser Einzelheiten (302) einer Speicheradresse eines Personalisierungsdeskriptors (200) enthält, und mindestens einen Personalisierungsdeskriptor (200), der Einzelheiten (203) einer Speicheradresse des nächsten Personalisierungsdeskriptors (210) enthält.
  11. Chipkarte nach Anspruch 10, wobei der Anwendungsdeskriptor (300) Einzelheiten (301) der ihm zugewiesenen Chipkartenanwendung enthält.
  12. Chipkarte nach Anspruch 10 oder 11, wobei der Anwendungsdeskriptor (300) Daten (303) enthält, die für eine Überprüfung der Personalisierungsdaten (500) verwendet werden können.
  13. Chipkarte nach den Ansprüchen 10 bis 12, wobei der Personalisierungsdeskriptor (200) außerdem Einzelheiten (201, 202) enthält, die die Eigenschaften der zu übertragenden Personalisierungsdaten (500) definieren.
  14. Verfahren nach irgendeinem der Ansprüche 10 bis 13, wobei der Anwendungsdeskriptor (300) einen Zähler (305) enthält, der jedes Mal erhöht wird, wenn ein Personalisierungsdatensatz erfolgreich in den Datenspeicher (102) der Chipkarte (100) eingegeben wird.
DE60013518T 1999-08-19 2000-07-22 Versicherte Personalisierung von Chipkarten Expired - Lifetime DE60013518T2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE60013518T DE60013518T2 (de) 1999-08-19 2000-07-22 Versicherte Personalisierung von Chipkarten

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19939280A DE19939280A1 (de) 1999-08-19 1999-08-19 Sicheres Personalisieren von Chipkarten
DE19939280 1999-08-19
DE60013518T DE60013518T2 (de) 1999-08-19 2000-07-22 Versicherte Personalisierung von Chipkarten

Publications (2)

Publication Number Publication Date
DE60013518D1 DE60013518D1 (de) 2004-10-14
DE60013518T2 true DE60013518T2 (de) 2005-10-13

Family

ID=7918874

Family Applications (2)

Application Number Title Priority Date Filing Date
DE19939280A Withdrawn DE19939280A1 (de) 1999-08-19 1999-08-19 Sicheres Personalisieren von Chipkarten
DE60013518T Expired - Lifetime DE60013518T2 (de) 1999-08-19 2000-07-22 Versicherte Personalisierung von Chipkarten

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE19939280A Withdrawn DE19939280A1 (de) 1999-08-19 1999-08-19 Sicheres Personalisieren von Chipkarten

Country Status (6)

Country Link
US (1) US6971025B1 (de)
EP (1) EP1079339B1 (de)
AT (1) ATE275746T1 (de)
CA (1) CA2315986A1 (de)
DE (2) DE19939280A1 (de)
ES (1) ES2224976T3 (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040122774A1 (en) * 2002-08-02 2004-06-24 Martin Studd Method and system for executing applications on a mobile device
DE10252512A1 (de) * 2002-11-08 2004-05-27 Robert Bosch Gmbh Datenträgerelement sowie damit versehenes Produkt oder Transporthilfsmittel
EP1622098A1 (de) * 2004-07-30 2006-02-01 ST Incard S.r.l. Verfahren zur gesicherten Personalisierung einer IC-Karte
US20080005567A1 (en) * 2006-01-24 2008-01-03 Stepnexus, Inc. Method and system for personalizing smart cards using asymmetric key cryptography
EP1873728B1 (de) * 2006-06-29 2013-11-27 Incard SA Verfahren zur Konfigurierung einer IC-Karte für den Empfang von Personalisierungsbefehlen
DE102006034375A1 (de) * 2006-07-25 2008-01-31 Giesecke & Devrient Gmbh Personalisierung von tragbaren Datenträgern
DE102008050578A1 (de) * 2008-10-06 2010-04-08 Giesecke & Devrient Gmbh Personalisieren von portablen Datenträgern
EP2200253A1 (de) * 2008-12-19 2010-06-23 Gemalto SA Verfahren zur Verwaltung von sensiblen Daten in einem elektronischen Token
DE102010044687A1 (de) * 2010-09-08 2012-03-08 Giesecke & Devrient Gmbh Portabler Datenträger mit Fehlbedienungszähler
CN107463407B (zh) * 2017-08-10 2020-11-06 青岛海信移动通信技术股份有限公司 指纹芯片初始化方法及装置
WO2023202801A1 (de) 2022-04-22 2023-10-26 Giesecke+Devrient ePayments GmbH Verfahren und system zur personalisierung eines sicheren elements
DE102023110087A1 (de) 2022-04-22 2023-10-26 Giesecke+Devrient ePayments GmbH Verfahren und System zur Personalisierung eines sicheren Elements

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4874935A (en) * 1986-03-10 1989-10-17 Data Card Coprporation Smart card apparatus and method of programming same
JPH02214994A (ja) * 1989-02-15 1990-08-27 Hitachi Maxell Ltd Icカード
US5438679A (en) * 1990-11-30 1995-08-01 Casio Computer Co., Ltd. Data storage apparatus having volatile memory and nonvolatile memory and data indication means for indicating memory storing data
DE19536548A1 (de) * 1995-09-29 1997-04-03 Ibm Vorrichtung und Verfahren zur vereinfachten Erzeugung von Werkzeugen zur Initialisierung und Personalisierung von und zur Kommunikation mit einer Chipkarte
US5889941A (en) * 1996-04-15 1999-03-30 Ubiq Inc. System and apparatus for smart card personalization
CA2288824A1 (en) * 1997-03-24 1998-10-01 Marc B. Kekicheff A system and method for a multi-application smart card which can facilitate a post-issuance download of an application onto the smart card
WO1999040548A1 (en) * 1998-02-06 1999-08-12 Mondex International Limited Configuration of ic card
US6390374B1 (en) * 1999-01-15 2002-05-21 Todd Carper System and method for installing/de-installing an application on a smart card

Also Published As

Publication number Publication date
ES2224976T3 (es) 2005-03-16
EP1079339A3 (de) 2001-08-22
DE19939280A1 (de) 2001-02-22
DE60013518D1 (de) 2004-10-14
EP1079339A2 (de) 2001-02-28
CA2315986A1 (en) 2001-02-19
EP1079339B1 (de) 2004-09-08
ATE275746T1 (de) 2004-09-15
US6971025B1 (en) 2005-11-29

Similar Documents

Publication Publication Date Title
DE69127560T2 (de) Gegenseitiges Erkennungssystem
DE69730712T2 (de) Kommunikationssystem mit gesicherter, unabhängiger verwaltung mehrerer anwendungen pro gebraucherkarte, gebraucherkarte und verwaltungsverfahren dafür
DE2837201C2 (de)
DE69205425T2 (de) Gesichertes verfahren zum laden von mehrfachen anwendungen in einer mikroprozessor-speicherkarte.
DE69731338T2 (de) Verfahren und System zum sicheren Übertragen und Speichern von geschützter Information
DE69807210T2 (de) Gesichertes mehrzweckkartensystem und -verfahren
DE69527867T2 (de) Verfahren und Vorrichtung zum Authentifizieren eines Datanträgers, bestimmt zum Zulassen einer Transaktion oder des Zuganges zu einer Dienstleistung oder zu einem Ort; und entsprechender Datenträger
DE3811378C3 (de) Informationsaufzeichnungssystem
DE60210416T2 (de) Speicherkarte
DE68915186T2 (de) Tragbarer elektronischer Apparat.
DE60013518T2 (de) Versicherte Personalisierung von Chipkarten
DE69016765T2 (de) Verfahren zur Erzeugung einer Pseudozufallszahl in einem Datenbearbeitungssystem und ein System zur Ausführung dieses Verfahrens.
EP1065598A1 (de) Verfahren zum Zugriff auf einen Speicher und Speichereinrichtung hierfür
EP1883906B1 (de) Tragbarer datenträger mit sicherer datenverarbeitung
EP0811204B1 (de) Verarbeitung langer nachrichten in einer chipkarte
EP1196902B1 (de) Verfahren zum betreiben eines zur ausführung von nachladbaren funktionsprogrammen ausgebildeten datenträgers
DE69636153T2 (de) Tragbarer Speicherträger und Ausgabesystem dafür
DE19961151A1 (de) Verfahren zum Erstellen und Lesen eines neuen Zertifikatstyps zur Zertifizierung von Schlüsseln
DE19626339A1 (de) Sicheres Laden von Anwendungen und Daten auf Chipkarten
DE69801679T2 (de) Gesichertes speicherverwaltungsverfahren
EP2562670B1 (de) Verfahren zur Durchführung eines Schreibzugriffs, Computerprogrammprodukt, Computersystem und Chipkarte
EP1067482B1 (de) Druckbild
DE19716015A1 (de) Einbringen von Information auf einer Chipkarte
DE19932149A1 (de) System zur Ausführung von Transaktionen
DE102008010792B4 (de) Verfahren für den unmanipulierbaren und abhörsicheren Datei- und Ordnerzugriff

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
R082 Change of representative

Ref document number: 1079339

Country of ref document: EP