WO2006133934A1 - Verfahren zum betreiben eines tragbaren datenträgers - Google Patents

Verfahren zum betreiben eines tragbaren datenträgers Download PDF

Info

Publication number
WO2006133934A1
WO2006133934A1 PCT/EP2006/005750 EP2006005750W WO2006133934A1 WO 2006133934 A1 WO2006133934 A1 WO 2006133934A1 EP 2006005750 W EP2006005750 W EP 2006005750W WO 2006133934 A1 WO2006133934 A1 WO 2006133934A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
data carrier
portable data
specific key
content
Prior art date
Application number
PCT/EP2006/005750
Other languages
English (en)
French (fr)
Inventor
Michael Baldischweiler
Thorsten Ulbricht
Original Assignee
Giesecke & Devrient Gmbh
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 Giesecke & Devrient Gmbh filed Critical Giesecke & Devrient Gmbh
Priority to EP06754379A priority Critical patent/EP1904980A1/de
Publication of WO2006133934A1 publication Critical patent/WO2006133934A1/de

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/357Cards having a plurality of specified features
    • G06Q20/3576Multiple memory zones on card
    • G06Q20/35765Access rights to memory zones

Definitions

  • the invention relates to a method for operating a portable data carrier. Furthermore, the invention relates to a portable data carrier.
  • a secret data can be stored in the portable data carrier, for example, a secret key, a personal secret number, a personal secret code for resetting the portable data carrier after its blocking, etc.
  • the pointer is influenced by an attack, for example by a strong UV irradiation of the portable data carrier, in such a way that it points to a memory location other than the intended one, this has the consequence that data which are not intended for this purpose can be accessed via the Input / output process associated interface are output.
  • a portable data carrier that has a multitasking operating system, several processes are simultaneously executed, such as input / output processes, cryptographic processes or applications. This may result, for example, in the event that manipulation of a pointer used by an input / output process causes data of an application to be output in an inadmissible manner. If these data are stored in plain text, there is a risk of misuse. However, this danger can also exist with data that is stored in encrypted form, since these are usually decrypted after reading from the memory.
  • a plurality of files with an encrypted file content are created in a memory of the portable data carrier.
  • the file contents of the individual files are encrypted in different ways, so that each decryption requires a file-specific key.
  • a process running in the portable data carrier is given the associated file-specific key for accessing the file content of one of the files.
  • the invention has the advantage that an access of the process to the data provided for it in a simple manner is possible and thereby access to other data is reliably prevented.
  • the other data is reliably protected even if, as a result of a manipulation, access takes place at the storage location of this other data.
  • the file-specific keys are preferably stored in the memory of the portable data carrier and are therefore available to the portable data carrier at any time.
  • the file-specific keys are each generated and stored when encrypting the file contents.
  • the process may be provided with information regarding the storage location at which the file content is stored and / or information regarding the size of the file content.
  • the transfer of the file-specific key and / or the information relating to the storage location and / or the information relating to the size of the file content can be protected by a temporarily valid key. Alternatively or additionally, this transfer can be carried out in several steps.
  • the handover is preferably controlled by an operating system kernel.
  • the file-specific key and / or the information regarding the storage location and / or the information relating to the size of the file content are preferably taken from the file whose file contents are provided with access by the process. This simplifies the management and assignment of the individual parameters.
  • the file-specific key and / or the information regarding the storage location and / or the information regarding the size of the file content may be taken from a file header which is embodied as a separate area of the file on the file contents of which access is provided by the process. This has the advantage that the file header is usually provided anyway and contains information regarding the file.
  • each file that is created is preferably created with an encrypted file content.
  • the process to enable access to the file content may be an input / output process for inputting and / or outputting data through a portable data medium interface. Such a process is particularly critical to spying because it transmits data to the outside world.
  • the portable data carrier according to the invention has a memory in which a plurality of files are stored with an encrypted file content.
  • the file contents of the individual files are encrypted in different ways, so that each decryption requires a file-specific key.
  • the portable data carrier according to the invention has an operating system kernel for transferring the respective file. specific key to a process running in the portable data carrier for accessing the file content of the respective file.
  • the portable data carrier according to the invention has a multi-tasking operating system which allows a simultaneous execution of several processes.
  • the portable data carrier according to the invention is designed as a chip card.
  • FIG. 1 is a highly simplified block diagram for an embodiment of a portable data carrier
  • Fig. 2 is a simplified representation of an operating state of the portable data carrier
  • Fig. 3 is a flow chart illustrating the flow of output of the file contents by the input / output process.
  • a portable data carrier 1 shows a highly simplified block diagram for an exemplary embodiment of a portable data carrier 1, in which the method according to the invention can be used. It is to be regarded as a portable data carrier 1 in the context of the invention, a computer system in which the resources, ie memory resources and / or computing capacity (computing power) are limited, z.
  • a smart card smart card, microprocessor chip card
  • a token or a chip module for installation in a smart card or in a token.
  • the portable data carrier 1 can have any standardized or non-standardized shape, for example the shape of a flat chip card without standard or according to a standard such as ISO 7810 (eg ID-1, ID-OO, ID-000) or a voluminous token.
  • the portable data carrier 1 has a processor unit 2, which controls the functional sequences of the portable data carrier 1 and is also referred to as a central processing unit, abbreviated CPU. Furthermore, the portable data carrier 1 has an interface 3 for inputting and outputting data and a memory 4.
  • the memory 4 consists of a permanent memory 5, a nonvolatile memory 6 and a volatile memory 7. Alternatively, another structure of the memory 4 is possible.
  • the processor unit 2 is connected to the interface 3, the permanent memory 5, the nonvolatile memory 6 and the volatile memory 7.
  • the interface 3 is used for communication with external devices, which can be handled by a contacting contact of the portable data carrier 1 and / or contactless.
  • non-volatile memory 5 data is stored, which remain unchanged during the entire lifespan of the portable data carrier 1.
  • data is used in the following very general in the sense of any information, regardless of their content and it is, for example, programs, parameters, personal information, keys, etc. subsumed.
  • the operating system of the portable data carrier 1 is stored in the non-volatile memory 5.
  • the volatile memory 7 serves as a working memory for the processor unit 2, so that secret data, for example, when performing calculations in the volatile memory 7 are cached.
  • the memory contents are retained only as long as the portable data carrier 1 is supplied with an operating voltage.
  • the non-volatile memory 6 can be rewritten over and over again during the life of the portable data carrier 1. The respective memory content is maintained even if the portable data carrier 1 is not supplied with the operating voltage.
  • the nonvolatile memory 6 for example, additions to the operating system, application software, keys, personal data, etc. are stored.
  • the portable data carrier 1 is operated in a multitasking mode in which a plurality of processes are executed simultaneously.
  • an input / output process 8 and an application 9 are shown, which run simultaneously.
  • an operating system kernel 10 is shown, which controls the data exchange between the processes, here between the application 9 and the input / output process 8.
  • the input / output process 8 handles the data transfer via the interface 3 of the portable data carrier 1.
  • the output of data via the interface 3 is of interest.
  • the application 9 allows the use of the portable data carrier 1 for a designated purpose.
  • the application 9 has a file system with a plurality of files 11, each consisting of a file header 12 and a file body 13.
  • the file body 13 contains the actual file content, ie the user data.
  • the file content may be, for example, data needed to run the application 9.
  • the file stored in encrypted form wherein a decryption using the key noted in the file header 12 key is possible.
  • the file contents of the individual files 11 are each encrypted in different ways, so that each file header 12 contains a different key. With this key, only the file content of the associated file body 13 can be decrypted. The file content of the other files 11 can not be decrypted with this key.
  • the input / output process 8 outputs the file content of the active file 11 of the application 9 via the interface 3 of the portable data carrier 1 in plain text.
  • the relevant procedure will be explained with reference to FIG. 3.
  • Fig. 3 is a flow chart showing the procedure of outputting the file contents by the input / output process 8.
  • the flowchart processing starts with step S1 where the operating system kernel 10 holds the file content decrypting key and the initial address pointer and the length of the file body 13 is determined from the associated file header 12.
  • Step S1 is followed by a step S2, in which the operating system kernel 10 transfers the information determined from the file header 12 to the input / output process 8.
  • This transfer is preferably secured with a session key in order to prevent manipulation and / or spying.
  • the session key is only during one Operating phase of the portable data carrier 1 valid. In the next phase of operation, a new session key will be agreed.
  • Step S2 is followed by a step S3 in which the input / output process 8, beginning with the starting address of the file body 13, which is determined by the pointer transferred in step S2 and the file body 13 transferred in step S2, is the file content read.
  • a step S4 is executed, in which the file content is decrypted using the key given in step S2.
  • the step S4 is followed by a step S5 in which the clear text of the file content determined in step S4 is output via the interface 3 of the portable data carrier 1.
  • the procedure described ensures that the file content that is read out by the input / output process 8 can not be read by any other process in a content-conclusive manner. Even if another process would do a read at the correct memory address, the resulting file content would not be usable because it is in encrypted form and the other process does not have the key needed for decryption.
  • the input / output process 8 via the interface 3 outputs other data in plain text than the designated file content. Even if an attacker managed to change by a disturbance, for example an intensive UV irradiation, the pointer given to the input / output process 8 or the transferred length of the file body 13, he could not Spying on data. Although the input / output process 8 would then read out data outside the intended file body 13. However, since these data are encrypted differently than the file contents for which the key was handed over to the input / output process 8, the input / output process 8 can not correctly decrypt the illegally read data and accordingly outputs unusable data via the interface 3 of the portable Disk 1 off.

Abstract

Die Erfindung betrifft ein Verfahren zum Betreiben eines tragbaren Datenträgers (1). Beim erfindungsgemäßen Verfahren werden in einem Speicher (4) des tragbaren Datenträgers (1) mehrere Dateien (11) mit einem verschlüsselten Dateiinhalt angelegt. Die Dateiinhalte der verschiedenen Dateien (11) werden auf unterschiedliche Weise verschlüsselt, so dass für eine Entschlüsselung jeweils ein dateispezifischer Schlüssel erforderlich ist. Einem im tragbaren Datenträger (1) ablaufenden Prozess wird für einen Zugriff auf den Dateiinhalt einer der Dateien (11) der zugehörige dateispezifische Schlüssel übergeben.

Description

Verfahren zum Betreiben eines tragbaren Datenträgers
Die Erfindung betrifft ein Verfahren zum Betreiben eines tragbaren Datenträgers. Weiterhin betrifft die Erfindung einen tragbaren Datenträger.
Bei vielen Einsatzgebieten von tragbaren Datenträgern, wie beispielsweise im Bereich des Zahlungsverkehrs oder bei Zugangskontrollen usw., ist es sehr wichtig, dass im tragbaren Datenträger vorhandene geheime Daten nicht ausgespäht werden können. Als geheime Daten können im tragbaren Datenträger beispielsweise ein geheimer Schlüssel, eine persönliche Geheimzahl, ein persönlicher Geheimcode zum Zurücksetzen des tragbaren Datenträgers nach dessen Sperrung usw. abgelegt sein.
Es ist bereits bekannt, geheime Daten zum Schutz vor Ausspähversuchen in verschlüsselter Form zu speichern und durch einen Entschlüsselungsmechanismus zu entschlüsseln, bevor sie der Prozessoreinheit des tragbaren Datenträgers zur Verfügung gestellt werden. Ebenso ist es auch möglich, die Übertragungsstrecke zwischen den Untereinheiten des tragbaren Datenträgers abzusichern, wobei die Daten dann in den Untereinheiten im Klartext vor- liegen können. Der Zugriff auf die Daten wird in der Regel mit Hilfe von Zeigern ermöglicht, die jeweils auf den Speicherplatz der Daten verweisen. Ein solcher Zeiger kann beispielsweise einem Ein-/ Ausgabeprozess übergeben werden, der die Daten daraufhin von dem Speicheplatz, der durch den Zeiger bestimmt wird über eine dem Ein-/ Ausgabeprozess zugeordnete Schnittstelle des tragbaren Datenträgers ausgibt. Wenn der Zeiger durch einen Angriff, beispielsweise durch eine starke UV-Bestrahlung des tragbaren Datenträgers, so beeinflusst wird, dass er auf eine andere als die vorgesehene Speicherposition verweist, hat dies zur Folge, dass Daten, die nicht dafür vorgesehen sind, über die dem Ein-/ Ausgabeprozess zugeordnete Schnitt- stelle ausgegeben werden. Bei einem tragbaren Datenträger, der über ein Multitasking-Betriebssystem verfügt, werden gleichzeitig mehrere Prozesse, wie beispielsweise Ein- / Ausgabeprozesse, kryptographische Prozesse oder Anwendungen ausgeführt. Dies kann beispielsweise zur Folge haben, dass bei einer Manipulation eines von einem Ein-/ Ausgabeprozess verwendeten Zeigers unzulässiger Weise Daten einer Anwendung ausgegeben werden. Wenn diese Daten im Klartext abgespeichert sind, besteht somit die Gefahr einer missbräuchlichen Verwendung. Diese Gefahr kann allerdings auch bei Daten bestehen, die in verschlüsselter Form abgespeichert sind, da diese in der Regel nach dem Auslesen aus dem Speicher entschlüsselt werden.
Es ist daher Aufgabe der Erfindung, den Betrieb eines tragbaren Datenträgers möglichst sicher zu gestalten und insbesondere das Ausspähen von Daten, die im tragbaren Datenträger gespeichert sind, zu verhindern.
Diese Aufgabe wird durch ein Verfahren mit der Merkmalskombination des Anspruchs 1 und einen tragbaren Datenträger gemäß Anspruch 14 gelöst.
Beim erfindungsgemäßen Verfahren zum Betreiben eines tragbaren Daten- trägers werden in einem Speicher des tragbaren Datenträgers mehrere Dateien mit einem verschlüsselten Dateiinhalt angelegt. Die Dateiinhalte der einzelnen Dateien werden auf unterschiedliche Weise verschlüsselt, so dass für eine Entschlüsselung jeweils ein dateispezifischer Schlüssel erforderlich ist. Einem im tragbaren Datenträger ablaufenden Prozess wird für einen Zugriff auf den Dateiinhalt einer der Dateien der zugehörige dateispezifische Schlüssel übergeben.
Die Erfindung hat den Vorteil, dass ein Zugriff des Prozesses auf die dafür vorgesehenen Daten in einfacher Weise möglich ist und dabei ein Zugriff auf andere Daten zuverlässig verhindert wird. Die anderen Daten sind selbst dann zuverlässig geschützt, wenn infolge einer Manipulation ein Zugriff am Speicherort dieser anderen Daten erfolgt.
Die dateispezifischen Schlüssel werden vorzugsweise im Speicher des tragbaren Datenträgers gespeichert und stehen somit dem tragbaren Datenträger jederzeit zur Verfügung. Insbesondere werden die dateispezifischen Schlüssel jeweils bei der Verschlüsselung des Dateiinhalts erzeugt und gespeichert.
Zusätzlich zum dateispezifischen Schlüssel kann dem Prozess eine Information bezüglich des Speicherorts, an dem der Dateiinhalt gespeichert ist und/ oder eine Information bezüglich der Größe des Dateiinhalts übergeben werden. Zur Abwehr von Manipulations- oder Ausspähversuchen kann die Übergabe des dateispezifischen Schlüssels und/ oder der Information bezüg- lieh des Speicher orts und/ oder der Information bezüglich der Größe des Dateiinhalts durch einen temporär gültigen Schlüssel abgesichert werden. Alternativ dazu oder zusätzlich kann diese Übergabe in mehreren Schritten durchgeführt werden. Die Übergabe wird vorzugsweise von einem Betriebssystemkern gesteuert.
Der dateispezifische Schlüssel und/ oder die Information bezüglich des Speicherorts und/ oder die Information bezüglich der Größe des Dateiinhalts werden vorzugsweise der Datei entnommen, auf deren Dateiinhalt ein Zugriff durch den Prozess vorgesehen ist. Dies vereinfacht die Verwaltung und Zuordnung der einzelnen Parameter. Insbesondere kann der dateispezifische Schlüssel und/ oder die Information bezüglich des Speicherorts und/ oder die Information bezüglich der Größe des Dateiinhalts einem Dateiheader entnommen werden, der als ein separater Bereich der Datei ausgebildet ist, auf deren Dateiinhalt ein Zugriff durch den Prozess vorgesehen ist. Dies hat den Vorteil, dass der Dateiheader in der Regel ohnehin vorgesehen ist und Informationen bezüglich der Datei enthält.
Um einen möglichst lückenlosen Schutz zu gewährleisten, wird vorzugswei- se jede Datei, die angelegt wird, mit einem verschlüsselten Dateiinhalt angelegt. Bei dem Prozess, dem ein Zugriff auf den Dateiinhalt ermöglicht werden soll, kann es sich beispielsweise um einen Ein-/ Ausgabeprozess zum Eingeben und/ oder Ausgeben von Daten über eine Schnittstelle des tragbaren Datenträgers handeln. Ein derartiger Prozess ist im Hinblick auf ein Ausspähen besonders kritisch, da er Daten nach außen übermittelt.
Im Rahmen des erfindungsgemäßen Verfahrens kann vorgesehen sein, dass im tragbaren Datenträger mehrere Prozesse gleichzeitig ablaufen und ein dateispezifischer Schlüssel für eine Datei, die einem dieser Prozesse zuge- ordnet ist, einem anderen Prozess übergeben wird. Auf diese Weise kann ein kontrollierter Datenaustausch zwischen unterschiedlichen Prozessen ermöglicht werden. Ebenso ist es mit dem erfindungsgemäßen Verfahren auch möglich, mehrere Prozesse, die im tragbaren Datenträger gleichzeitig ablaufen, voneinander abzuschotten. Hierzu wird jeder dateispezifische Schlüssel jeweils nur dem Prozess zur Verfügung gestellt, dem die zum jeweiligen dateispezifischen Schlüssel gehörige Datei zugeordnet ist.
Der erfindungsgemäße tragbare Datenträger weist einen Speicher auf, in dem mehrere Dateien mit einem verschlüsselten Dateiinhalt abgelegt sind. Die Dateiinhalte der einzelnen Dateien sind auf unterschiedliche Weise verschlüsselt, so dass für eine Entschlüsselung jeweils ein dateispezifischer Schlüssel erforderlich ist. Weiterhin weist der erfindungsgemäße tragbare Datenträger einen Betriebssystemkern zur Übergabe des jeweiligen datei- spezifischen Schlüssels an einen im tragbaren Datenträger ablaufenden Pro- zess für einen Zugriff auf den Dateiinhalt der jeweiligen Datei auf.
Insbesondere weist der erfindungsgemäße tragbare Datenträger ein Multi- tasking-Betriebssystem auf, das eine gleichzeitige Ausführung mehrerer Prozesse erlaubt. In einem bevorzugten Ausführungsbeispiel ist der erfindungsgemäße tragbare Datenträger als eine Chipkarte ausgebildet.
Die Erfindung wird nachstehend anhand der in der Zeichnung dargestellten Ausführungsbeispiele erläutert.
Es zeigen:
Fig. 1 ein stark vereinfachtes Blockschaltbild für ein Ausführungsbeispiel eines tragbaren Datenträgers,
Fig. 2 eine vereinfachte Darstellung eines Betriebszustands des tragbaren Datenträgers und
Fig. 3 ein Flussdiagramm zur Veranschaulichung des Ablaufs bei der Ausgabe des Dateiinhalts mittels des Ein-/ Ausgabeprozesses.
Fig. 1 zeigt ein stark vereinfachtes Blockschaltbild für ein Ausführungsbeispiel eines tragbaren Datenträgers 1, bei dem das erfindungsgemäße Verfah- ren angewendet werden kann. Dabei ist als ein tragbarer Datenträger 1 im Sinn der Erfindung ein Rechnersystem anzusehen, bei dem die Ressourcen, d. h. Speicherressourcen und/ oder Rechenkapazität (Rechenleistung) begrenzt sind, z. B. eine Chipkarte (Smart Card, Mikroprozessor-Chipkarte) oder ein Token oder ein Chipmodul zum Einbau in eine Chipkarte oder in ein Token. Der tragbare Datenträger 1 kann eine beliebige standardisierte oder nicht standardisierte Gestalt haben, beispielsweise die Gestalt einer flachen Chipkarte ohne Norm oder nach einer Norm wie z.B. ISO 7810 (z.B. ID- 1, ID-OO, ID-000) oder die eines volumigen Tokens.
Der tragbare Datenträger 1 weist eine Prozessoreinheit 2 auf, welche die Funktionsabläufe des tragbaren Datenträgers 1 steuert und auch als Central Processing Unit, abgekürzt CPU, bezeichnet wird. Weiterhin weist der tragbare Datenträger 1 eine Schnittstelle 3 zur Ein- und Ausgabe von Daten und einen Speicher 4 auf. Beim dargestellten Ausführungsbeispiel besteht der Speicher 4 aus einem Permanentspeicher 5, einem nichtflüchtigen Speicher 6 und einem flüchtigen Speicher 7. Alternativ dazu ist auch ein anderer Aufbau des Speichers 4 möglich. Die Prozessoreinheit 2 ist mit der Schnittstelle 3, dem Permanentspeicher 5, dem nichtflüchtigen Speicher 6 und dem flüch- tigen Speicher 7 verbunden. Die Schnittstelle 3 dient der Kommunikation mit externen Geräten, die durch eine berührende Kontaktierung des tragbaren Datenträgers 1 und/ oder kontaktlos abgewickelt werden kann.
Im Permanentspeicher 5 sind Daten abgelegt, die während der gesamten Le- bensdauer des tragbaren Datenträgers 1 unverändert erhalten bleiben. Dabei wird der Begriff Daten im folgenden sehr allgemein im Sinne beliebiger Informationen unabhängig von deren Inhalt verwendet und es werden darunter beispielsweise Programme, Parameter, personenbezogene Angaben, Schlüssel usw. subsumiert. Insbesondere ist im Permanentspeicher 5 das Be- triebssystem des tragbaren Datenträgers 1 gespeichert.
Der flüchtige Speicher 7 dient als Arbeitsspeicher für die Prozessoreinheit 2, so dass geheime Daten beispielsweise bei der Durchführung von Berechnungen im flüchtigen Speicher 7 zwischengespeichert werden. Im flüchtigen Speicher 7 bleibt der Speicherinhalt nur solange erhalten, wie der tragbare Datenträger 1 mit einer Betriebspannung versorgt wird.
Der nichtflüchtige Speicher 6 kann während der Lebensdauer des tragbaren Datenträgers 1 immer wieder neu beschrieben werden. Der jeweilige Speicherinhalt bleibt auch dann erhalten, wenn der tragbare Datenträger 1 nicht mit der Betriebsspannung versorgt wird. Im nichtflüchtigen Speicher 6 sind beispielsweise Ergänzungen zum Betriebssystem, Anwendungssoftware, Schlüssel, personenbezogene Daten usw. abgelegt.
Fig. 2 zeigt eine vereinfachte Darstellung eines Betriebszustands des tragbaren Datenträgers 1. Der tragbare Datenträger 1 wird in einem Multitasking- Betrieb betrieben, in dem mehrere Prozesse gleichzeitig ausgeführt werden. Beispielhaft sind ein Ein-/ Ausgabeprozess 8 und eine Anwendung 9 darge- stellt, die gleichzeitig ablaufen. Außerdem ist ein Betriebssystemkern 10 dargestellt, der den Datenaustausch zwischen den Prozessen, hier zwischen der Anwendung 9 und dem Ein-/ Ausgabeprozess 8, steuert. Der Ein- / Ausgabeprozess 8 wickelt die Datenübertragung über die Schnittstelle 3 des tragbaren Datenträgers 1 ab. Im folgenden ist insbesondere die Ausgabe von Daten über die Schnittstelle 3 von Interesse. Die Anwendung 9 ermöglicht die Nutzung des tragbaren Datenträgers 1 für einen vorgesehenen Einsatzzweck. Hierzu weist die Anwendung 9 ein Dateisystem mit mehreren Dateien 11 auf, die jeweils aus einem Dateiheader 12 und einem Dateibody 13 bestehen. Im Dateiheader 12 sind jeweils ein Dateiname, ein Zeiger auf eine Anfangsadresse des Dateibody 13, eine Angabe bzgl. der Länge des Dateibody 13, ein dem Dateibody 13 zugeordneter Schlüssel usw. vermerkt. Der Dateibody 13 enthält den eigentlichen Dateiinhalt, d. h. die Nutzdaten. Bei dem Dateiinhalt kann es sich beispielsweise um Daten handeln, die für die Ausführung der Anwendung 9 benötigt werden. Dabei ist der Dateiin- halt in verschlüsselter Form gespeichert, wobei eine Entschlüsselung mit Hilfe des im Dateiheader 12 vermerkten Schlüssels möglich ist. Die Dateiinhalte der einzelnen Dateien 11 sind jeweils auf unterschiedliche Weise verschlüsselt, so dass jeder Dateiheader 12 einen anderen Schlüssel enthält. Mit die- sem Schlüssel kann jeweils nur der Dateiinhalt des zugehörigen Dateibody 13 entschlüsselt werden. Der Dateiinhalt der anderen Dateien 11 kann mit diesem Schlüssel nicht entschlüsselt werden.
Neben den dargestellten Prozessen können noch weitere Prozesse ausge- führt werden, wie beispielsweise weitere Ein-/ Ausgabeprozesse 8, weitere Anwendungen 9 oder beispielsweise kryptographische Prozesse, die jeweils aus Gründen der Übersichtlichkeit nicht dargestellt sind.
Im dargestellten Betriebszustand gibt der Ein-/ Ausgabeprozess 8 den Datei- inhalt der aktiven Datei 11 der Anwendung 9 über die Schnittstelle 3 des tragbaren Datenträgers 1 im Klartext aus. Die diesbezügliche Vorgehensweise wird anhand von Fig. 3 erläutert.
Fig. 3 zeigt ein Flussdiagramm zur Veranschaulichung des Ablaufs bei der Ausgabe des Dateiinhalts mittels des Ein-/ Ausgabeprozesses 8. Der Durchlauf des Flussdiagramms beginnt mit einem Schritt Sl, in dem der Betriebssystemkern 10 den Schlüssel zur Entschlüsselung des Dateiinhalts sowie den Zeiger auf die Anfangsadresse und die Länge des Dateibody 13 aus dem zugehörigen Dateiheader 12 ermittelt. An Schritt Sl schließt sich ein Schritt S2 an, in dem der Betriebssystemkern 10 die aus dem Dateiheader 12 ermittelten Angaben an den Ein-/ Ausgabeprozess 8 übergibt. Diese Übergabe wird bevorzugt mit einem Session Key abgesichert, um Manipulationen und/ oder ein Ausspähen zu verhindern. Der Session Key ist jeweils nur während einer Betriebsphase des tragbaren Datenträgers 1 gültig. In der nächsten Betriebsphase wird ein neuer Session Key vereinbart.
Ebenso ist es auch möglich, die Übergabe der aus dem Dateiheader 12 ermit- telten Angaben an den Ein-/ Ausgabeprozess 8 auf mehrere Teilschritte zu verteilen, um einen potentiellen Angriff zu erschweren. Auf Schritt S2 folgt ein Schritt S3, in dem der Ein-/ Ausgabeprozess 8 beginnend mit der Anfangsadresse des Dateibody 13, die durch den in Schritt S2 übergebenen Zeiger festgelegt wird und bis zu der in Schritt S2 übergebene Länge des Datei- body 13 den Dateiinhalt liest. Danach wird ein Schritt S4 ausgeführt, in dem der Dateiinhalt mit Hilfe des in Schritt S2 übergebenen Schlüssels entschlüsselt wird. An Schritt S4 schließt sich ein Schritt S5 an, in dem der in Schritt S4 ermittelte Klartext des Dateiinhalts über die Schnittstelle 3 des tragbaren Datenträgers 1 ausgegeben wird.
Durch die beschriebene Vorgehensweise wird sicher gestellt, dass der Dateiinhalt, der vom Ein-/ Ausgabeprozess 8 ausgelesene wird, von keinem anderen Prozess inhaltserschließend gelesen werden kann. Selbst wenn ein anderer Prozess einen Lesevorgang an der richtigen Speicheradresse durchführen würde, wäre der dadurch ermittelte Dateiinhalt nicht verwertbar, da dieser in verschlüsselter Form vorliegt und der andere Prozess nicht über den für die Entschlüsselung benötigten Schlüssel verfügt.
Außerdem wird durch die beschriebene Vorgehensweise verhindert, dass der Ein-/ Ausgabeprozess 8 über die Schnittstelle 3 andere Daten im Klartext ausgibt als den dafür vorgesehenen Dateiinhalt. Selbst wenn es einem Angreifer gelänge durch eine Störung, beispielsweise eine intensive UV- Bestrahlung, den an den Ein-/ Ausgabeprozess 8 übergebenen Zeiger oder die übergebene Länge des Dateibody 13 zu ändern, könnte er dadurch keine Daten ausspähen. Zwar würde der Ein-/ Ausgabeprozess 8 dann Daten außerhalb des vorgesehenen Dateibody 13 auslesen. Da diese Daten aber andersartig verschlüsselt sind als der Dateiinhalt, für den dem Ein- / Ausgabeprozess 8 der Schlüssel übergeben wurde, kann der Ein- /Ausgabeprozess 8 die unzulässiger Weise gelesenen Daten nicht korrekt entschlüsseln und gibt dementsprechend unbrauchbare Daten über die Schnittstelle 3 des tragbaren Datenträgers 1 aus.
In analoger Weise wie für den Ein-/ Ausgabeprozess 8 und die Anwendung 9 beschrieben kann auch ein Datenaustausch zwischen anderen Prozessen erfolgen. Dabei ist durch die erfindungsgemäße Vorgehensweise jeweils sichergestellt, dass jeder Prozess auch bei einem Manipulationsversuch durch einen Angreifer sich jeweils nur diejenigen Daten eines anderen Prozesses im Klartext beschaffen kann, die der Betriebssystemkern 10 hierfür explizit vor- sieht.
Im Rahmen der Erfindung ist es auch möglich, mehrere Prozesse, die vom tragbaren Datenträger 1 gleichzeitig ausgeführt werden, gegeneinander abzuschotten. Hierzu werden die Schlüssel der Dateien 11, die einem Prozess zugeordnet sind, jeweils keinem anderen Prozess zur Verfügung gestellt.
Dies bedeutet, dass kein Prozess den Dateiinhalt einer Datei 11 entschlüsseln kann, die einem anderen Prozess zugeordnet ist.

Claims

P a t e n t a n s p r ü c h e
1. Verfahren zum Betreiben eines tragbaren Datenträgers (1), wobei in einem Speicher (4) des tragbaren Datenträgers (1) mehrere Dateien
(11) mit einem verschlüsselten Dateiinhalt angelegt werden, dadurch gekennzeichnet, dass
- die Dateiinhalte der einzelnen Dateien (11) auf unterschiedliche Weise verschlüsselt werden, so dass für eine Entschlüsselung jeweils ein dateispezifischer Schlüssel erforderlich ist und
- einem im tragbaren Datenträger (1) ablaufenden Prozess für einen Zugriff auf den Dateiinhalt einer der Dateien (11) der zugehörige dateispezifische Schlüssel übergeben wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die dateispezifischen Schlüssel im Speicher (4) des tragbaren Datenträgers (1) gespeichert werden.
3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch ge- kennzeichnet, dass die dateispezifischen Schlüssel jeweils bei der
Verschlüsselung des Dateiinhalts erzeugt und gespeichert werden.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass dem Prozess eine Information bezüglich des Spei- cherorts, an dem der Dateiinhalt gespeichert ist und/ oder eine Information bezüglich der Größe des Dateiinhalts übergeben wird.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Übergabe des dateispezifischen Schlüssels und/ oder der Information bezüglich des Speicherorts und/ oder der - 2 -
Information bezüglich der Größe des Dateiinhalts durch einen temporär gültigen Schlüssel abgesichert wird.
6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch ge- kennzeichnet, dass die Übergabe des dateispezifischen Schlüssels und/ oder der Information bezüglich des Speicherorts und/ oder der Information bezüglich der Größe des Dateiinhalts in mehreren Schritten durchgeführt wird.
7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Übergabe des dateispezifischen Schlüssels und/ oder der Information bezüglich des Speicherorts und/ oder der Information bezüglich der Größe des Dateiinhalts von einem Betriebssystemkern (10) gesteuert wird.
8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der dateispezifische Schlüssel und/ oder die Information bezüglich des Speicherorts und/ oder die Information bezüglich der Größe des Dateiinhalts der Datei (11) entnommen wird, auf deren Dateiinhalt ein Zugriff durch den Prozess vorgesehen ist.
9. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass der dateispezifische Schlüssel und/ oder die Information bezüglich des Speicherorts und/ oder die Information be- züglich der Größe des Dateiinhalts einem Dateiheader (12) entnommen wird, der als ein separater Bereich der Datei (11) ausgebildet ist, auf deren Dateiinhalt ein Zugriff durch den Prozess vorgesehen ist. - 3 -
IQ. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass jede Datei (11), die angelegt wird, mit einem verschlüsselten Dateiinhalt angelegt wird.
11. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass es sich bei dem Prozess um einen Ein- / Ausgabeprozess (8) zum Eingeben und/ oder Ausgeben von Daten . über eine Schnittstelle (3) des tragbaren Datenträgers (1) handelt.
12. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass im tragbaren Datenträger (1) mehrere Prozesse gleichzeitig ablaufen und ein dateispezifischer Schlüssel für eine Datei (11), die einem dieser Prozesse zugeordnet ist, einem anderen Prozess übergeben wird.
13. Verfahren nach einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass im tragbaren Datenträger (1) mehrere Prozesse gleichzeitig ablaufen und jeder dateispezifische Schlüssel jeweils nur dem Prozess zur Verfügung gestellt wird, dem die zum jeweiligen dateispezifi- sehen Schlüssel gehörige Datei (11) zugeordnet ist.
14. Tragbarer Datenträger, mit einem Speicher (4), in dem mehrere Dateien (11) mit einem verschlüsselten Dateiinhalt abgelegt sind, dadurch gekennzeichnet, dass - die Dateiinhalte der einzelnen Dateien (11) auf unterschiedliche Weise verschlüsselt sind, so dass für eine Entschlüsselung jeweils ein dateispezifischer Schlüssel erforderlich ist und
- ein Betriebssystemkern (10) zur Übergabe des jeweiligen dateispezifischen Schlüssels an einen im tragbaren Datenträger (1) ablaufenden - 4 -
Prozess für einen Zugriff auf den Dateiinhalt der jeweiligen Datei (11) vorgesehen ist.
15. Tragbarer Datenträger nach Anspruch 14, dadurch gekennzeichnet, dass er ein Multitasking-Betriebssystem aufweist, das eine gleichzeitige Ausführung mehrerer Prozesse erlaubt.
16. Tragbarer Datenträger nach einem der Ansprüche 14 oder 15, dadurch gekennzeichnet, dass er als eine Chipkarte ausgebildet ist.
PCT/EP2006/005750 2005-06-15 2006-06-14 Verfahren zum betreiben eines tragbaren datenträgers WO2006133934A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP06754379A EP1904980A1 (de) 2005-06-15 2006-06-14 Verfahren zum betreiben eines tragbaren datenträgers

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102005027709.8 2005-06-15
DE200510027709 DE102005027709A1 (de) 2005-06-15 2005-06-15 Verfahren zum Betreiben eines tragbaren Datenträgers

Publications (1)

Publication Number Publication Date
WO2006133934A1 true WO2006133934A1 (de) 2006-12-21

Family

ID=36855913

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2006/005750 WO2006133934A1 (de) 2005-06-15 2006-06-14 Verfahren zum betreiben eines tragbaren datenträgers

Country Status (3)

Country Link
EP (1) EP1904980A1 (de)
DE (1) DE102005027709A1 (de)
WO (1) WO2006133934A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2947596A1 (de) 2014-05-20 2015-11-25 Giesecke & Devrient GmbH Verfahren zum betreiben eines sicherheitsmoduls sowie ein solches sicherheitsmodul
US9647984B2 (en) 2010-08-05 2017-05-09 Gemalto Sa System and method for securely using multiple subscriber profiles with a security component and a mobile telecommunications device

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1074906A1 (de) 1999-08-05 2001-02-07 Sony Corporation Kartenförmige Halbleiter-Speichervorrichtung und Verfahren zu deren Betrieb
FR2849233A1 (fr) 2002-12-24 2004-06-25 Trusted Logic Procede de securisation des systemes informatiques par confinement logiciel
EP1667077A2 (de) * 2004-11-29 2006-06-07 Sony Corporation Datenspeicherungsvorrichtung, Datenverarbeitungsverfahren, Aufzeichnungsmedium und Programm

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4051510B2 (ja) * 1998-07-16 2008-02-27 ソニー株式会社 データ記憶装置およびデータ記憶方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1074906A1 (de) 1999-08-05 2001-02-07 Sony Corporation Kartenförmige Halbleiter-Speichervorrichtung und Verfahren zu deren Betrieb
FR2849233A1 (fr) 2002-12-24 2004-06-25 Trusted Logic Procede de securisation des systemes informatiques par confinement logiciel
EP1667077A2 (de) * 2004-11-29 2006-06-07 Sony Corporation Datenspeicherungsvorrichtung, Datenverarbeitungsverfahren, Aufzeichnungsmedium und Programm

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP1904980A1 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9647984B2 (en) 2010-08-05 2017-05-09 Gemalto Sa System and method for securely using multiple subscriber profiles with a security component and a mobile telecommunications device
EP2947596A1 (de) 2014-05-20 2015-11-25 Giesecke & Devrient GmbH Verfahren zum betreiben eines sicherheitsmoduls sowie ein solches sicherheitsmodul
DE102014007382A1 (de) 2014-05-20 2015-12-17 Giesecke & Devrient Gmbh Verfahren zum Betreiben eines Sicherheitsmoduls sowie ein solches Sicherheitsmodul

Also Published As

Publication number Publication date
DE102005027709A1 (de) 2006-12-21
EP1904980A1 (de) 2008-04-02

Similar Documents

Publication Publication Date Title
DE69635868T2 (de) Verfahren und vorrichtung zum kryptographisch gesteuerten betrieb eines zusatzgeräts
DE69531082T2 (de) Verfahren und Vorrichtung mit einem Verschlüsselungskopfteil, die es ermöglicht, Software zu erproben
EP1360644B1 (de) Sicherheitsmodul mit flüchtigem speicher zur speicherung eines algorithmuscodes
DE69731338T2 (de) Verfahren und System zum sicheren Übertragen und Speichern von geschützter Information
DE4339460C1 (de) Verfahren zur Authentifizierung eines Systemteils durch ein anderes Systemteil eines Informationsübertragungssystems nach dem Challenge-and Response-Prinzip
EP0965076A1 (de) Elektronische datenverarbeitungseinrichtung und -system
EP1883906B1 (de) Tragbarer datenträger mit sicherer datenverarbeitung
EP2864871B1 (de) Verfahren und vorrichtung zum austausch des betriebssystems eines ressourcenbeschränkten tragbaren datenträgers
EP1321888B1 (de) Verfahren zur Erhöhung der Sicherheit von Schaltkreisen gegen unbefugten Zugriff
WO2006133934A1 (de) Verfahren zum betreiben eines tragbaren datenträgers
EP2562670B1 (de) Verfahren zur Durchführung eines Schreibzugriffs, Computerprogrammprodukt, Computersystem und Chipkarte
EP1844467A1 (de) Tragbarer datenträger mit wasserzeichen-funktionalität
EP2060988B1 (de) Sicherheitsmodul
AT509336B1 (de) Chipkarte mit autorun-funktion
DE19705620C2 (de) Anordnung und Verfahren zur dezentralen Chipkartenidentifikation
DE60216106T2 (de) Geschützte lesung von rechnerbefehlen in einem datenverarbeitungssystem
DE4420970A1 (de) Entschlüsselungseinrichtung von Entschlüsselungsalgorithmen und Verfahren zur Durchführung der Ver- und Entschlüsselung derselben
DE10162310A1 (de) Verfahren und Anordnung zur Übertragung von Signalen von erzeugenden Funktionseinheiten an verarbeitende Funktionseinheiten elektrischer Schaltungen
DE19634712C2 (de) Vorrichtung und Verfahren zum geschützten Übertragen und Darstellen elektronisch publizierter Dokumente
DE102004052101B4 (de) Verfahren und Vorrichtung zur Entschlüsselung breitbandiger Daten
EP1288768A2 (de) Intelligenter Dongle
DE4423565C1 (de) Krypto-Schaltkreis
DE19931047A1 (de) Verfahren zum Sichern von Daten in einer Maschine zum Testen elektronischer Bauteile
EP1460510B1 (de) Verfahren zur sicheren Kommunikation zwischen einer Datenverarbeitungsanlage und einer Sicherheitseinrichtung
EP0910841B1 (de) Informationsübermittlungssystem

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

WWE Wipo information: entry into national phase

Ref document number: 2006754379

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2006754379

Country of ref document: EP