DE10323033A1 - Load an executable program into a portable data carrier - Google Patents
Load an executable program into a portable data carrier Download PDFInfo
- Publication number
- DE10323033A1 DE10323033A1 DE2003123033 DE10323033A DE10323033A1 DE 10323033 A1 DE10323033 A1 DE 10323033A1 DE 2003123033 DE2003123033 DE 2003123033 DE 10323033 A DE10323033 A DE 10323033A DE 10323033 A1 DE10323033 A1 DE 10323033A1
- Authority
- DE
- Germany
- Prior art keywords
- file
- access right
- data carrier
- loading
- file system
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/468—Specific access rights for resources, e.g. using capability register
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Bei einem Verfahren zum Laden eines ausführbaren Programms (36) in ein Dateisystem (28) eines tragbaren Datenträgers, wobei das Dateisystem (28) eine Mehrzahl unterschiedlicher Zugriffsrechtseinstellungen (44, 58) für die im Dateisystem (28) angelegten Dateien (30) unterstützt, wird das ausführbare Programm (36) während des Ladevorgangs als Datei (30) mit einer ersten Zugriffsrechtseinstellung (44) im Dateisystem (28) gespeichert, und die Zugriffsrechtseinstellung (44, 58) dieser Datei (30) wird nach einem erfolgreichen Abschluß des Ladevorgangs auf eine zweite Zugriffsrechtseinstellung (58) geändert. Ein tragbarer Datenträger und ein Computerprogrammprodukt weisen entsprechende Merkmale auf. Durch die Erfindung kann die Ausführung unvollständig oder fehlerhaft in den Datenträger geladener Programme zuverlässig verhindert werden.In a method for loading an executable program (36) into a file system (28) of a portable data carrier, the file system (28) supporting a plurality of different access rights settings (44, 58) for the files (30) created in the file system (28), the executable program (36) is stored during the loading process as a file (30) with a first access right setting (44) in the file system (28), and the access right setting (44, 58) of this file (30) is opened after a successful completion of the loading process changed a second access right setting (58). A portable data carrier and a computer program product have corresponding features. The invention can reliably prevent the execution of incomplete or incorrectly loaded programs in the data carrier.
Description
Die Erfindung betrifft allgemein das technische Gebiet des Ladens eines ausführbaren Programms in ein Dateisystem eines tragbaren Datenträgers, wobei das Dateisystem eine Mehrzahl unterschiedlicher Zugriffsrechtseinstellungen unterstützt. Ein tragbarer Datenträger im Sinne des vorliegenden Dokuments kann insbesondere eine Chipkarte (Smart Card) in unterschiedlichen Bauformen oder ein Chipmodul sein.The Invention relates generally to the technical field of loading a executable Program in a file system of a portable data carrier, wherein the file system has a number of different access rights settings supported. On portable disk In the sense of the present document, a chip card (Smart Card) in different designs or a chip module.
Tragbare Datenträger werden mit immer mehr Speicherplatz und immer größerer Rechenleistung hergestellt. In einem internen Forschungsprojekt der Giesecke & Devrient GmbH wird gegenwärtig untersucht, inwieweit ein UNIX®-artiges Betriebssystem in einem modernen tragbaren Datenträger implementiert werden kann. In diesem Zusammenhang ist insbesondere eine Implementierung des unter der Marke Linux® bekannten Betriebssystems vorgesehen. Das Buch "Understanding the Linux Kernel" von D. P. Bovet und M. Cesati, O'Reilly Verlag, 2. Auflage, Dezember 2002, enthält eine detaillierte technische Beschreibung dieses Betriebssystems.Portable data carriers are being manufactured with more and more storage space and ever greater computing power. An internal research project of Giesecke & Devrient GmbH is currently investigating the extent to which a UNIX ® -like operating system can be implemented in a modern portable data carrier. In this context, an implementation of the operating system known under the Linux ® brand is planned. The book "Understanding the Linux Kernel" by DP Bovet and M. Cesati, O'Reilly Verlag, 2nd edition, December 2002, contains a detailed technical description of this operating system.
Allgemein sind bereits tragbare Datenträger mit einer Funktionalität zum Laden von ausführbarem Programmcode während des Einsatzes des Datenträgers bekannt. Solche Datenträger sind beispielsweise in Kapitel 5.10 des Buches "Handbuch der Chipkarten" von W. Rankl und W. Effing, Carl Hanser Verlag, 3. Auflage, 1999, Seiten 252–281, beschrieben.Generally are already portable with a functionality for loading executable program code while the use of the data carrier known. Such media are, for example, in Chapter 5.10 of the book "Handbuch der Chipkarten" by W. Rankl and W. Effing, Carl Hanser Verlag, 3rd edition, 1999, pages 252-281.
Das Laden von Programmcode in einen Datenträger, der ein UNIX-artiges Betriebssystem aufweist, erscheint auf den ersten Blick wenig problematisch, weil das Betriebssystem die benötigten Funktionen grundsätzlich bereitstellt. Schwierigkeiten ergeben sich jedoch insbesondere durch die Tatsache, daß die Stromversorgung des tragbaren Datenträgers und die Kommunikationsverbindung mit einem externen Terminal jederzeit unterbrochen oder gestört werden können. Findet zum Zeitpunkt der Unterbrechung oder Störung gerade ein Ladevorgang statt, dann wird das geladene Programm möglicherweise unvollständig oder fehlerhaft im Datenträger gespeichert. Wenn ein solches Programm ausgeführt werden würde, könnte dies zumindest ein undefiniertes und gegebenenfalls sogar ein die Sicherheit des Datenträgers kompromittierendes Verhalten zur Folge haben.The Loading program code into a disk that is a UNIX-like operating system appears at first glance to be less problematic because the operating system the required Functions basically provides. However, difficulties arise in particular from the fact that the Power supply to the portable data carrier and the communication link be interrupted or disturbed at any time with an external terminal can. If a charging process is taking place at the time of the interruption or malfunction, then the loaded program may become incomplete or incorrectly stored in the data carrier. When such a program will be run would, could this is at least an undefined and possibly even a die Disk security result in compromising behavior.
Es ist daher Aufgabe der Erfindung, einen Mechanismus bereitzustellen, durch den die Ausführung unvollständig oder fehlerhaft in den Datenträger geladener Programme zuverlässig verhindert werden kann. Vorzugsweise soll dieser Mechanismus nur geringen zusätzlichen Verwaltungsaufwand benötigen. In bevorzugten Ausgestaltungen soll die Erfindung ferner eine Möglichkeit bereitstellen, durch die unvollständig oder fehlerhaft geladene Programme leicht erkannt und gelöscht werden können.It the object of the invention is therefore to provide a mechanism through which the execution incomplete or incorrectly loaded in the disk Programs reliable can be prevented. This mechanism should preferably only little additional Need administrative effort. In preferred embodiments, the invention is also a possibility provide by the incomplete or incorrectly loaded Programs easily recognized and deleted can be.
Erfindungsgemäß wird diese Aufgabe ganz oder zum Teil gelöst durch ein Verfahren gemäß Anspruch 1, einen tragbaren Datenträger gemäß Anspruch 8 und ein Computerprogrammprodukt gemäß Anspruch 9. Die abhängigen Ansprüche betreffen bevorzugte Ausgestaltungen der Erfindung.According to the invention Task completely or partially solved by a method according to claim 1, a portable disk according to claim 8 and a computer program product according to claim 9. The dependent claims relate to preferred embodiments of the invention.
Die Erfindung geht von der Grundüberlegung aus, eine im Dateisystem des Datenträgers bereits vorhandene Funktionalität, mit der unterschiedliche Zugriffsrechte auf die im Dateisystem enthaltenen Dateien eingestellt werden können, auch zur Lösung der erfindungsgemäßen Aufgabe zu nutzen. Es ergibt sich somit eine vorteilhafte Synergie, weil der Ladezustand des Programms mit äußerst geringem Verwaltungsaufwand im Dateisystem abgebildet werden kann.The Invention is based on the basic idea one in the file system of the disk existing functionality, with the different access rights to the files contained in the file system can be set also to solve the task according to the invention to use. This results in an advantageous synergy because the state of charge of the program with extremely little administrative effort can be mapped in the file system.
Erfindungsgemäß ist vorgesehen, daß das ausführbare Programm während des Ladevorgangs als Datei mit einer ersten Zugriffsrechtseinstellung im Dateisystem gespeichert wird, und daß die Zugriffsrechtseinstellung dieser Datei nach einem erfolgreichen Abschluß des Ladevorgangs auf eine zweite Zugriffsrechtseinstellung geändert wird. Grundsätzlich ist in diesem Zusammenhang nur erforderlich, daß sich die erste und die zweite Zugriffsrechtseinstellung voneinander unterscheiden. In bevorzugten Ausgestaltungen werden jedoch die Zugriffsrechtseinstellungen "passend" gewählt, nämlich derart, daß die erste Zugriffsrechtseinstellung das Schreiben in die Datei, nicht aber deren Ausführung gestattet, und daß die zweite Zugriffsrechtseinstellung die Ausführung der Datei gestattet.According to the invention, that the executable program while the loading process as a file with a first access right setting stored in the file system, and that the access right setting this file after a successful loading to a second access right setting is changed. Basically is in this context it is only necessary that the first and the second Differentiate access rights setting from each other. In preferred configurations however, the access rights settings are selected "appropriately", namely such that the first access right setting writing to the file, not but their execution allowed, and that the second access right setting allows the execution of the file.
Ein unvollständiger Ladevorgang wird vorzugsweise daran erkannt, daß die während des Ladevorgangs beschriebene Datei noch die erste Zugriffsrechtseinstellung aufweist, obwohl der Ladevorgang bereits – offensichtlich erfolglos – beendet worden ist. Eine derartige Überprüfung kann beispielsweise bei jedem Hochfahren des Datenträgers nach einem Spannungsausfall und/oder bei jedem Versuch der Ausführung eines Programms erfolgen. Als unvollständig erkannte Dateien werden dann vorzugsweise aus dem Dateisystem gelöscht.On incomplete Charging process is preferably recognized by the fact that the described during the charging process File still has the first access right setting, though the loading process already - obviously unsuccessful - ended has been. Such a review can for example, every time the data carrier is started up after a power failure and / or every attempt to execute a program. As incomplete recognized files are then preferably deleted from the file system.
Wie eingangs bereits erwähnt, weist der Datenträger vorzugsweise ein UNIX-artiges Betriebssystem auf. Die dort üblicherweise verwendeten Dateisysteme umfassen für jede Datei ein einstellbares Lesezugriffsrecht, ein einstellbares Schreibzugriffsrecht und ein einstellbares Ausführungsrecht. Diese Rechte sind üblicherweise für den Eigentümer der Datei, eine mit dem Dateieigentümer assoziierte Benutzergruppe und alle anderen Benutzer getrennt einstellbar. Die Erfindung ist jedoch nicht auf Betriebs- und Dateisysteme beschränkt, die genau diese Zugriffsrechtsstruktur vorsehen. Vielmehr kann die Erfindung bei jedem Betriebs- und Dateisystem eingesetzt werden, das unterschiedliche erste und zweite Zugriffsrechtseinstellungen für zumindest einige Dateien zuläßt.As already mentioned at the beginning, the data carrier preferably has a UNIX-like operating system. The file systems usually used there include a configurable for each file res read access right, an adjustable write access right and an adjustable execution right. These rights can usually be set separately for the owner of the file, a user group associated with the file owner and all other users. However, the invention is not restricted to operating systems and file systems which provide precisely this access right structure. Rather, the invention can be used with any operating and file system that allows different first and second access right settings for at least some files.
Grundsätzlich kann die Erfindung in allen Phasen des Lebenszyklus des Datenträgers eingesetzt werden. Besonders bevorzugt dient die Erfindung jedoch zum Laden von Programmcode in einen Datenträger, dessen Initialisierung und Personalisierung bereits abgeschlossen sind und der sich bei einem Benutzer im Einsatz befindet. In diesem Fall wird das Laden von Programmcode in den Datenträger oft auch als "Nachladen" bezeichnet.Basically can the invention is used in all phases of the life cycle of the data carrier become. However, the invention is particularly preferably used for charging of program code in a data carrier, its initialization and personalization have already been completed and the at is in use by a user. In this case, the loading of program code in the data carrier often referred to as "reloading".
Das erfindungsgemäße Computerprogrammprodukt kann ein körperliches Medium mit gespeicherten Programmbefehlen sein, beispielsweise ein Halbleiterspeicher oder eine Diskette oder eine CD-ROM. Das Computerprogrammprodukt kann jedoch auch ein nicht-körperliches Medium sein, beispielsweise ein über ein Computernetzwerk übermitteltes Signal. Insbesondere kann das Computerprogrammprodukt ein Ladeprogramm enthalten, das im Zuge der Herstellung oder der Initialisierung oder der Personalisierung oder der Anwendung eines tragbaren Datenträgers in diesen eingebracht wird.The Computer program product according to the invention can be a physical Medium with stored program instructions, for example a Semiconductor memory or a floppy disk or a CD-ROM. The computer program product can also be a non-physical Medium, for example an over a computer network transmitted Signal. In particular, the computer program product can be a loading program included in the course of manufacturing or initialization or the personalization or application of a portable storage device in this is introduced.
In bevorzugten Ausgestaltungen weisen der Datenträger und/oder das Computerprogrammprodukt Merkmale auf, die den oben beschriebenen und/oder den in den abhängigen Verfahrensansprüchen genannten Merkmalen entsprechen.In preferred embodiments have the data carrier and / or the computer program product Features that correspond to those described above and / or those mentioned in the dependent method claims Match characteristics.
Weitere Merkmale, Vorteile und Aufgaben der Erfindung gehen aus der folgenden genauen Beschreibung eines Ausführungsbeispiels und mehrerer Ausführungsalternativen hervor. Es wird auf die schematischen Zeichnungen verwiesen, in denen zeigen:Further Features, advantages and objects of the invention will appear from the following detailed description of an embodiment and several alternative versions out. Reference is made to the schematic drawings in show them:
Der
in
Im
Speicher
Im
nicht-flüchtigen
Speicher
Das
Betriebssystem
Das
in den Datenträger
Der
Ablauf eines fehlerfreien Ladevorgangs ist in
Das
interne Ladeprogramm
Im
Anschluß an
die Initialisierungsphase
Bei
einem fehlerfreien Ladevorgang ist das ausführbare Programm
In
einer Abschlußphase
Wenn
in der Abschlußphase
Falls
das interne Ladeprogramm
Eine
derartige sofortige Säuberung
des Dateisystems
Wenn
der Datenträger
Alternativ
oder zusätzlich
zu der gerade beschriebenen Überprüfung des
Dateisystems
Claims (9)
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE2003123033 DE10323033A1 (en) | 2003-05-20 | 2003-05-20 | Load an executable program into a portable data carrier |
| PCT/EP2004/005365 WO2004104916A2 (en) | 2003-05-20 | 2004-05-18 | Loading an executable program into a portable data carrier |
| EP04739254A EP1629379A2 (en) | 2003-05-20 | 2004-05-18 | Loading an executable program into a portable data carrier |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE2003123033 DE10323033A1 (en) | 2003-05-20 | 2003-05-20 | Load an executable program into a portable data carrier |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| DE10323033A1 true DE10323033A1 (en) | 2004-12-23 |
Family
ID=33461832
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE2003123033 Ceased DE10323033A1 (en) | 2003-05-20 | 2003-05-20 | Load an executable program into a portable data carrier |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP1629379A2 (en) |
| DE (1) | DE10323033A1 (en) |
| WO (1) | WO2004104916A2 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102012008147A1 (en) * | 2012-04-24 | 2013-10-24 | Tobias Volk | Radio frequency identification (RFID) transponder has memory that is organized in RFID tag file system which is provided with own file allocation table that manages files independently, so as to read or delete files |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1834911B (en) * | 2005-03-14 | 2010-04-28 | 华为技术有限公司 | Method of realizing program loading operation |
| CN101833464A (en) * | 2010-04-16 | 2010-09-15 | 深圳市五巨科技有限公司 | Method and device for sectionally loading application programs by mobile terminal |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6856993B1 (en) * | 2000-03-30 | 2005-02-15 | Microsoft Corporation | Transactional file system |
| US7299463B2 (en) * | 2001-09-28 | 2007-11-20 | Intel Corporation | Method for atomically updating a plurality of files |
-
2003
- 2003-05-20 DE DE2003123033 patent/DE10323033A1/en not_active Ceased
-
2004
- 2004-05-18 WO PCT/EP2004/005365 patent/WO2004104916A2/en not_active Ceased
- 2004-05-18 EP EP04739254A patent/EP1629379A2/en not_active Ceased
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE102012008147A1 (en) * | 2012-04-24 | 2013-10-24 | Tobias Volk | Radio frequency identification (RFID) transponder has memory that is organized in RFID tag file system which is provided with own file allocation table that manages files independently, so as to read or delete files |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2004104916A2 (en) | 2004-12-02 |
| EP1629379A2 (en) | 2006-03-01 |
| WO2004104916A3 (en) | 2005-05-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69809527T2 (en) | External storage device and data processing method | |
| EP1611510B1 (en) | Controlled execution of a program used for a virtual machine on a portable data carrier | |
| DE102007008651A1 (en) | Chip card and method for activating a chip card function | |
| EP3308278B1 (en) | Method for updating personalization data | |
| EP3224756B1 (en) | Method for installing software on a chip card by means of an installation machine | |
| DE10323033A1 (en) | Load an executable program into a portable data carrier | |
| EP2524333B1 (en) | Method for providing a secure counter on a terminal | |
| EP3329415B1 (en) | Chipcard with a main and a persistent application allows an update of the main application without changes to the user data stored in the persistens application | |
| EP1492008B1 (en) | Error event handling during installation of an application program in a portable data carrier | |
| EP1308842B1 (en) | Method and device for the management of a memory device | |
| DE10247794B4 (en) | Managing a failed trial counter in a portable disk | |
| EP1365363B1 (en) | Method for carrying out a data transaction by means of a transaction device which consists of a main- and a separable auxiliary component | |
| DE10328238B4 (en) | Method for loading smart cards with initialization and / or personalization data | |
| EP3271825B1 (en) | Method for storing user data in a document | |
| DE102023102191A1 (en) | Installing an operating system in a processor device, in particular a security module | |
| EP2573677B1 (en) | Data exchange between applications | |
| DE10301969A1 (en) | Memory defragmentation, especially with a portable data carrier | |
| DE102004058882A1 (en) | Generating program code in a load format and providing executable program code | |
| EP2012280A2 (en) | Portable data carrier and method for personalising a portable data carrier | |
| DE102014224186B4 (en) | Procedure for reloading an application onto a document | |
| EP4517570A1 (en) | Method and system for verifying the integrity of a rule engine database | |
| DE102013014187A1 (en) | Method and device for transmitting information | |
| EP1922618A1 (en) | Method for executing a succession of very similar commands in a portable data storage medium | |
| DE102012020782A1 (en) | Management of data elements in a stack | |
| DE102014110990A1 (en) | Method for changing the control data of a chip card and chip card system |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law | ||
| R016 | Response to examination communication | ||
| R002 | Refusal decision in examination/registration proceedings | ||
| R003 | Refusal decision now final |
Effective date: 20121003 |