[go: up one dir, main page]

DE102010054783B4 - Method for storing a file in a portable storage device - Google Patents

Method for storing a file in a portable storage device Download PDF

Info

Publication number
DE102010054783B4
DE102010054783B4 DE102010054783.2A DE102010054783A DE102010054783B4 DE 102010054783 B4 DE102010054783 B4 DE 102010054783B4 DE 102010054783 A DE102010054783 A DE 102010054783A DE 102010054783 B4 DE102010054783 B4 DE 102010054783B4
Authority
DE
Germany
Prior art keywords
file
data carrier
file content
volatile memory
updated
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.)
Active
Application number
DE102010054783.2A
Other languages
German (de)
Other versions
DE102010054783A1 (en
Inventor
Stefan Eckardt
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.)
Giesecke and Devrient Mobile Security GmbH
Original Assignee
Giesecke and Devrient Mobile Security 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 and Devrient Mobile Security GmbH filed Critical Giesecke and Devrient Mobile Security GmbH
Priority to DE102010054783.2A priority Critical patent/DE102010054783B4/en
Publication of DE102010054783A1 publication Critical patent/DE102010054783A1/en
Application granted granted Critical
Publication of DE102010054783B4 publication Critical patent/DE102010054783B4/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/26Devices for calling a subscriber
    • H04M1/27Devices whereby a plurality of signals may be stored simultaneously
    • H04M1/274Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc
    • H04M1/2745Devices whereby a plurality of signals may be stored simultaneously with provision for storing more than one subscriber number at a time, e.g. using toothed disc using static electronic memories, e.g. chips

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Verfahren zum Speichern einer Datei (10) in einem tragbaren Datenträger (1), wobei die Datei (10) einen Dateideskriptor (11) und einen Dateiinhalt (12) aufweist mit den Verfahrensschritten:- Empfangen (17) eines Dateiinhalts (12) der Datei (10) während des Betriebs des Datenträgers (1) im Datenträger (1); und- Überprüfen (18) eines Attributs (13) der Datei (10), deren Dateiinhalt (12) empfangen wurde, durch den Datenträger (1); dadurch gekennzeichnet, dass der Dateiinhalt (12) in einem flüchtigen Speicherbereich (3) des Datenträgers (1) zur Verwendung während dieses Betriebs des Datenträgers (1) gespeichert wird, wenn die Datei (10) ein bestimmtes Attribut (13) aufweist;- wobei die Datei (10) ein Elementary File eines Dateisystems (8) einer SIM-Karte ist und das bestimmte Attribut (13) das „High Update Activity“ Attribut ist;- wobei der Datenträger (1) ein Teilnehmeridentifikationsmodul für ein Mobilfunknetz (6) ist, dessen Aufbau und Betreiben in der Spezifikation ETSI 3GPP TS 11.11/51.011 oder der ETSI 3GPP TS 31.102 definiert ist.Method for storing a file (10) in a portable data carrier (1), the file (10) having a file descriptor (11) and a file content (12), comprising the method steps:- receiving (17) a file content (12) of the file (10) in the data carrier (1) during operation of the data carrier (1); and- checking (18) an attribute (13) of the file (10) whose file content (12) was received by the data carrier (1); characterized in that the file content (12) is stored in a volatile memory area (3) of the data carrier (1) for use during this operation of the data carrier (1) if the file (10) has a specific attribute (13);- wherein the file (10) is an elementary file of a file system (8) of a SIM card and the specific attribute (13) is the "High Update Activity" attribute;- wherein the data carrier (1) is a subscriber identification module for a mobile radio network (6), the structure and operation of which is defined in the specification ETSI 3GPP TS 11.11/51.011 or the ETSI 3GPP TS 31.102.

Description

Die Erfindung betrifft ein Verfahren zum Speichern einer Datei in einem tragbaren Datenträger, ein Computerprodukt sowie einen tragbaren Datenträger.The invention relates to a method for storing a file in a portable data carrier, a computer product and a portable data carrier.

Bei einem tragbaren Datenträger handelt es sich vorzugsweise um Datenträger mit entsprechenden Sicherheitsfunktionalitäten, wie z.B. Smart Cards, Chipkarten, Token, Massenspeicherkarten, Multimediakarte und/oder um elektronische Identitätsdokumente, wie beispielsweise einem elektronischen Personalausweis, einem Reisepass mit, auf einem Chip gespeicherten maschinenlesbaren Identifikationsdaten einer Person. Beispielsweise wird eine Chipkarte unter dem Begriff tragbarer Datenträger verstanden, wobei das Anwendungsgebiet der Chipkarte sehr vielfältig ist, beispielsweise als Kredit- oder Debit-Bezahlkarte, Gesundheitskarte, Zutrittsberechtigungskarte, Firmenausweis, Identifikationskarte, elektronischer Fahrzeugschein oder Führerschein. Insbesondere wird eine Teilnehmeridentifikationskarte, kurz SIM-Karte, zur Identifikation eines Teilnehmers in einem Mobilfunknetz unter dem Begriff tragbarer Datenträger verstanden. auf.A portable data carrier is preferably a data carrier with corresponding security functions, such as smart cards, chip cards, tokens, mass storage cards, multimedia cards and/or electronic identity documents, such as an electronic ID card, a passport with machine-readable identification data of a person stored on a chip. For example, a chip card is understood under the term portable data carrier, whereby the area of application of the chip card is very diverse, for example as a credit or debit payment card, health card, access authorization card, company ID, identification card, electronic vehicle registration document or driver's license. In particular, a subscriber identification card, or SIM card for short, for identifying a subscriber in a mobile network is understood under the term portable data carrier.

Bei dem Datenträger kann es sich alternativ auch um ein, in ein mobiles Endgerät integriertes Sicherheitselement handeln. Das Sicherheitselement ist insbesondere als Hardwarekomponente ausgestaltet und als ein fest integrierter Bestandteil im mobilen Endgerät angeordnet, wobei es entweder in der Form nicht aus dem mobilen Endgerät entnommen werden kann, beispielsweise als M2M Modul, Co-Prozessor bzw. als vertrauenswürdiger Prozessorteil, wie beispielsweise Trusted Base. Alternativ kann das Sicherheitselement als ein entnehmbares Modul mit Sicherheitsfunktionalität mit dem mobilen Endgerät in verbunden sein, beispielsweise in Form einer Chipkarte, insbesondere einer Subscriber Identification Module, kurz SIM-Karte, Massenspeicherkarte, USB-Token, Massenspeicherkarte, Secure MicroSD-Karte, als Mobilfunknetztoken, z.B. ein UMTS-Surfstick. Alternativ ist das Sicherheitselement als eine Softwarekomponente in Form eines Trusted Platform Moduls als vertrauenswürdiger Teil des Betriebssystemkernels des mobilen Endgerätes bzw. als ein Sicherheitssoftware-Algorithmus ausgestaltet.Alternatively, the data carrier can also be a security element integrated into a mobile device. The security element is designed in particular as a hardware component and arranged as a permanently integrated part in the mobile device, whereby it cannot be removed from the mobile device in this form, for example as an M2M module, co-processor or as a trustworthy processor part, such as a trusted base. Alternatively, the security element can be connected to the mobile device as a removable module with security functionality, for example in the form of a chip card, in particular a Subscriber Identification Module, or SIM card for short, mass storage card, USB token, mass storage card, Secure MicroSD card, as a mobile network token, e.g. a UMTS surf stick. Alternatively, the security element is designed as a software component in the form of a Trusted Platform Module as a trustworthy part of the operating system kernel of the mobile device or as a security software algorithm.

Das Dateisystem eines Datenträgers umfasst gemäß der 5. Auflage des „Handbuch der Chipkarten“ der Autoren Wolfgang Rankl und Wolfgang Effing, nachfolgend als Rankl/Effing bezeichnet, erschienen 2008 beim Carl Hanser Verlag Seite 502 ff im Punkt 13.7 „Dateiverwaltung“ Verzeichnisdateien wie beispielsweise das Master File, kurz MF, oder Dedicated Files (DF) und einzelne Dateien, als Elementary Files, kurz EF, bezeichnet.According to the 5th edition of the “Handbook of Chip Cards” by the authors Wolfgang Rankl and Wolfgang Effing, hereinafter referred to as Rankl/Effing, published in 2008 by Carl Hanser Verlag, page 502 ff in point 13.7 “File Management”, the file system of a data storage device includes directory files such as the Master File, MF for short, or Dedicated Files (DF) and individual files, referred to as Elementary Files, EF for short.

Das Dateisystem ist gemäß Rankl/Effing in einem wieder beschreibbaren nichtflüchtigen Speicherbereich, beispielsweise dem EEPROM oder FLASH-Speicher des tragbaren Datenträgers abgelegt, sodass das Dateisystem auch nach dem Deaktivieren des Datenträgers verfügbar ist. Die Verwaltung und Organisation der Dateien in dem Dateisystem wird vom Betriebssystem des Datenträgers übernommen.According to Rankl/Effing, the file system is stored in a rewritable, non-volatile memory area, for example the EEPROM or FLASH memory of the portable data storage device, so that the file system is available even after the data storage device has been deactivated. The management and organization of the files in the file system is handled by the operating system of the data storage device.

Bei einem objektorientierten Aufbau des Dateisystems weisen die Dateien einen Dateideskriptor auf, auch als Datei-Header bezeichnet, indem alle Informationen über die Datei selbst enthalten sind. Weiterhin weisen die Dateien den Dateiinhalt auf, auch als Datei-Body bezeichnet, indem die Nutzdaten der Datei enthalten sind. Im Dateideskriptor ist wiederum das Attribut der Datei enthalten, welches spezielle Eigenschaften der Datei kennzeichnet. Der Dateideskriptor kann eine feste oder eine variable Länge aufweisen. In an object-oriented file system structure, the files have a file descriptor, also known as the file header, which contains all information about the file itself. The files also have the file content, also known as the file body, which contains the file's payload data. The file descriptor in turn contains the file's attribute, which identifies special properties of the file. The file descriptor can have a fixed or variable length.

Teile des Dateisystems heutiger tragbarer Datenträger können zu Wartungszwecken, Neuerungen, Erweiterungen und/ oder Fehlerbeseitigung nachträglich, das heißt nach Ausgabe des Datenträgers an einen Benutzer aktualisiert werden. Ein Teil des Dateisystems umfasst dabei beispielsweise eine Applikation mit einer Verzeichnisdatei DF und dazugehörigen Dateien EF. Ein Teil des Dateisystems ist beispielsweise eine Applikation zum Erhalt einer beliebigen Funktionalität. Die Änderungen bzw. Aktualisierungen des Dateisystems betreffen dabei die Dateiinhalte einer einzelnen oder mehrerer Dateien in dem Dateisystem bzw. werden nur bestimmte Teile eines Dateiinhalts einer Datei durch aktuelle Teile des Dateiinhalts ersetzt.Parts of the file system of today's portable data storage devices can be updated subsequently, i.e. after the data storage device has been issued to a user, for maintenance purposes, innovations, extensions and/or error correction. One part of the file system includes, for example, an application with a directory file DF and associated files EF. One part of the file system is, for example, an application for maintaining any functionality. The changes or updates to the file system affect the file contents of a single or multiple files in the file system, or only certain parts of a file's file contents are replaced by current parts of the file contents.

Bei heutigen Datenträgern ist die Anzahl der Schreib-/Lesezugriffe im nichtflüchtigen Speicher begrenzt und stark abhängig von der Technologie, in der der nichtflüchtige Speicher gefertigt wurde, dem Herstellungsprozess selbst und der Umwelt, in der der Halbleiterchip betrieben wird. Diese Anzahl sinkt mit zunehmender Leistungsfähigkeit und gleichzeitiger Flächenverkleinerung der Speicherbereiche im Datenträger. Ein Halbleiterchiphersteller garantiert meist eine Mindestanzahl an Schreibzyklen. Typischerweise garantiert ein Hersteller eines EEPROM Speicher zwischen 100 000 und 500 000 Schreibzyklen, bei einem FLASH Speicher werden bis zu 100 000Schreibzyklen garantiert. Ist die garantierte Mindestanzahl Schriebzyklen auf einen Sektor/Block oder in das gleiche Byte in einem Speicherbereich erreicht, wird für die Funktionsfähigkeit des Chips keine Garantie übernommen. Meist ist der Datenträger in der Folge nicht mehr funktionsfähig und muss ersetzt werden.With today's data storage devices, the number of write/read accesses in the non-volatile memory is limited and depends heavily on the technology used to manufacture the non-volatile memory, the manufacturing process itself and the environment in which the semiconductor chip is operated. This number decreases as performance increases and the area of the memory areas in the data storage device decreases. A semiconductor chip manufacturer usually guarantees a minimum number of write cycles. Typically, a manufacturer of EEPROM memory guarantees between 100,000 and 500,000 write cycles, and up to 100,000 write cycles are guaranteed for FLASH memory. If the guaranteed minimum number of write cycles on a sector/block or in the same byte in a memory area is reached, no guarantee is given for the functionality of the chip. In most cases, the The data storage device is no longer functional and must be replaced.

Das Problem verschärft sich, wenn der Datenträger als ein fest integrierter Bestandteil in ein Endgerät eingebracht ist, beispielsweise einem Machine-to-Machine, kurz M2M Module oder eines vertrauenswürdigen Prozessorbereichs. Zum einen sollen derartige Datenträger längere Betriebslaufzeiten aufweisen, zum andere kann der Datenträger nicht auf einfache Weise ausgewechselt werden. Meist muss das gesamte Endgerät ausgetauscht werden.The problem is exacerbated when the data carrier is a permanently integrated component in an end device, for example a machine-to-machine (M2M) module or a trusted processor area. On the one hand, such data carriers are intended to have longer operating times, and on the other hand, the data carrier cannot be easily replaced. In most cases, the entire end device has to be replaced.

Um derartigen Problemen aus dem Weg zu gehen, wird für das Betreiben von nichtflüchtigen Speicherbereichen beispielsweise ein „Wear Leveling“ Verfahren angewendet. Durch dieses Verfahren wird ein ungenutzter oder bislang wenig verwendeter Sektors des nichtflüchtigen Speicherbereichs zum Schreiben des aktualisierten Dateiinhalts verwendet, anstelle einen Sektor nach einem Löschvorgang gleich wieder mit aktualisierten Dateninhalten zu beschreiben. Somit kann die Anzahl von Schreib-/Lesezugriffen effektiv erhöht werden.To avoid such problems, a "wear leveling" process is used to operate non-volatile memory areas. This process uses an unused or previously little-used sector of the non-volatile memory area to write the updated file content, instead of immediately writing updated data content to a sector after a deletion process. This effectively increases the number of read/write accesses.

Alternativ geben die Datenträgerhersteller häufig den Hinweis das Beschreiben des nichtflüchtigen Speichers mittels Software-Routinen, beispielsweise Programmcodeschleifen, aufwendige Registerauswertungen etc., zu umgehen, sodass der nichtflüchtige Speicherbereich seltener beschrieben werden muss, um möglichst hohe Lebenszeiten des Datenträgers zu erreichen. Dabei ist nachteilig, dass sich ein Programmierer von Software für den Datenträger in der Gestaltung seines Softwarecodes einschränken muss, insbesondere die Leistung des Datenträgers durch höhern Rechenaufwand, Programmlaufzeiten und können durch solche Umgehungs-Software-Routinen massiv geschwächt werden.Alternatively, data storage device manufacturers often advise that writing to the non-volatile memory can be avoided using software routines, such as program code loops, complex register evaluations, etc., so that the non-volatile memory area needs to be written to less frequently in order to achieve the longest possible lifespan of the data storage device. The disadvantage of this is that a programmer of software for the data storage device has to limit himself in the design of his software code, in particular the performance of the data storage device can be massively weakened by such bypass software routines due to higher computing effort, program runtimes and can be massively weakened.

DE 10 2004 013 132 B4 beschreibt einen Datenträger, der eine Datenstruktur aufweist, in der mehrere Dateien gespeichert sind. Der Dateikopf repräsentiert den Inhalt der jeweiligen Datei und Kontextinformationen repräsentieren den Inhalt der jeweiligen weiteren Datei, die einen Dateikörper aufweist, der einen Sachbezug zum Inhalt einer geöffneten Datei aufweist. EN 10 2004 013 132 B4 describes a data storage device that has a data structure in which several files are stored. The file header represents the content of the respective file and context information represents the content of the respective further file, which has a file body that has a factual reference to the content of an open file.

DE 199 60 114 A1 beschreibt ein Verfahren zum Speichern von Daten in einer Datei eines Datenspeichersystems, das einen Arbeitsspeicher umfasst, der unmittelbar einem Mikroprozessor zugeordnet ist und in dem von dem Mikroprozessor bei der Ausführung von Datenverarbeitungsprogrammen benötigte Daten gespeichert sind, sowie einen Massenspeicher, der zur Speicherung weiterer Daten vorgesehen ist, wobei die Daten in mindestens zwei unterschiedlichen Fragmenten der Datei gespeichert werden, die separaten Bereichen des Datenspeichersystems zugeordnet sind, und wobei eine Zuordnungsliste gebildet wird, in der die Zuordnung der Dateifragmente zu unterschiedlichen Bereichen des Datenspeichersystems gespeichert ist. Es ist vorgesehen, dass die Daten zumindest zum Teil in Dateifragmenten des Massenspeichers gespeichert werden und dass die Einträge der Zuordnungsliste in dem Arbeitsspeicher gespeichert werden. EN 199 60 114 A1 describes a method for storing data in a file of a data storage system which comprises a working memory which is directly associated with a microprocessor and in which data required by the microprocessor when executing data processing programs is stored, as well as a mass storage device which is provided for storing further data, wherein the data is stored in at least two different fragments of the file which are associated with separate areas of the data storage system, and wherein an allocation list is formed in which the allocation of the file fragments to different areas of the data storage system is stored. It is provided that the data is stored at least in part in file fragments of the mass storage device and that the entries in the allocation list are stored in the working memory.

DE 694 27 070 T2 beschreibt ein Dateiverwaltungssystem zur Verwaltung von Daten einer Mehrzahl von Dateien, die in einem Permanentspeicher geteilt sind, in einer sogenannten IC-Karte, die einen IC-Chip verwendet, der einen Permanentspeicher aufweist und eine Steuereinheit, wie etwa eine CPU zur Steuerung des Permanentspeicher und dergleichen. DE 694 27 070 T2 describes a file management system for managing data of a plurality of files divided in a non-volatile memory in a so-called IC card, using an IC chip having a non-volatile memory and a control unit such as a CPU for controlling the non-volatile memory and the like.

DE 697 25 677 T2 beschreibt Verfahren und Vorrichtungen zum Speichern von geografischen Informationen auf physischen Speichermedien, und insbesondere Verfahren und Vorrichtungen zum Bereitstellen von geografischen Daten auf einem physischen Speichermedium zum Gebrauch in einem computer-basierten Navigationssystem. DE 697 25 677 T2 describes methods and apparatus for storing geographic information on physical storage media, and in particular methods and apparatus for providing geographic data on a physical storage medium for use in a computer-based navigation system.

Wikipedia, Die freie Enzyklopädie. Bearbeitungsstand: 09.07.2010. URL: https://de.wikipedia.org/w/index.php? title=Festplattencache&oldid=76495915 [abgerufen am 18.07.2023] beschreibt einen Festplattencache.Wikipedia, the free encyclopedia. Last edited: 09.07.2010. URL: https://de.wikipedia.org/w/index.php?title=Festplattencache&oldid=76495915 [accessed on 18.07.2023] describes a hard disk cache.

Information technology - AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS). T13/1699-D, revision 6a, American National Standards Institute, Inc. Bearbeitungsstand: 06.09.2008. Archived from the original (PDF) on 6 August 2020. Retrieved 14 December 2020. URL: https://web.archive.org/web/20200806025823/http://www.t13.org/Docu ments/ UploadedDocuments/docs2008/D1699r6a-ATA8-ACS.pdf [abgerufen am 18.07.2023] beschreibt einen ATA/ATAPI-Befehlssatz (ATA8-ACS).Information technology - AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS). T13/1699-D, revision 6a, American National Standards Institute, Inc. Status: September 6, 2008. Archived from the original (PDF) on August 6, 2020. Retrieved December 14, 2020. URL: https://web.archive.org/web/20200806025823/http://www.t13.org/Docu ments/ UploadedDocuments/docs2008/D1699r6a-ATA8-ACS.pdf [accessed on 18.07.2023] describes an ATA/ATAPI command set (ATA8-ACS).

Der Erfindung liegt daher die Aufgabe zugrunde, die Lebenszeit von tragbaren Datenträgern merklich zu erhöhen und insbesondere Schreibzugriffe auf einen nichtflüchtigen Speicherbereich deutlich zu verringern. Dabei sollen aufwendige Umgehungslösungen verhindert werden, sodass ein Programmierer alle Möglichkeiten und Leistungen des Datenträgers nutzen kann. Das Verfahren soll dabei einfach realisierbar und effizient sein.The invention is therefore based on the object of noticeably increasing the service life of portable data storage devices and, in particular, significantly reducing write access to a non-volatile memory area. The aim is to prevent complex workarounds so that a programmer can use all the possibilities and features of the data storage device. The method should be easy to implement and efficient.

Die Aufgabe der Erfindung wird durch die in den nebengeordneten unabhängigen Patentansprüchen beschriebenen Maßnahmen gelöst. Vorteilhafte Ausgestaltungen sind in den jeweils abhängigen Ansprüchen beschrieben.The object of the invention is achieved by the measures described in the independent patent claims. Advantageous Embodiments are described in the respective dependent claims.

Die Aufgabe wird insbesondere durch ein Verfahren zum Speichern einer Datei in einem tragbaren Datenträger gelöst. Dabei weist die Datei einen Dateideskriptor und einen Dateiinhalt auf. In einem ersten Verfahrensschritt wird ein Dateiinhalt der Datei während des Betriebs des Datenträgers empfangen. In einem zweiten Verfahrensschritt wird ein Attribut der Datei durch den Datenträger überprüft, deren Dateiinhalt empfangen wurde. Der Dateiinhalt wird zur Verwendung während dieses Betriebs des Datenträgers in einem flüchtigen Speicherbereich gespeichert, wenn die Datei ein bestimmtes Attribut aufweist. Die Datei ist ein Elementary File eines Dateisystems einer SIM-Karte und das bestimmte Attribut ist das „High Update Activity“ Attribut, wobei der Datenträger ein Teilnehmeridentifikationsmodul für ein Mobilfunknetz ist, dessen Aufbau und Betreiben in der Spezifikation ETSI 3GPP TS 11.11/51.011 oder der ETSI 3GPP TS 31.102 definiert ist.The object is achieved in particular by a method for storing a file in a portable data carrier. The file has a file descriptor and a file content. In a first method step, a file content of the file is received during operation of the data carrier. In a second method step, an attribute of the file whose file content was received is checked by the data carrier. The file content is stored in a volatile memory area for use during operation of the data carrier if the file has a specific attribute. The file is an elementary file of a file system of a SIM card and the specific attribute is the "high update activity" attribute, the data carrier being a subscriber identification module for a mobile radio network, the structure and operation of which is defined in the specification ETSI 3GPP TS 11.11/51.011 or the ETSI 3GPP TS 31.102.

Mit Speichern im flüchtigen Speicherbereich wird insbesondere verstanden, dass die Dateiinhalte nicht weiter in den nichtflüchtigen Speicherbereich transportiert und dort abgespeichert werden. Bis zum Ende der Session wird der Dateiinhalt ausschließlich im flüchtigen Speicherbereich gespeichert. Wird während der Session notwendigerweise dieser Dateiinhalt benötigt, so wird er nicht, wie üblich, aus dem nichtflüchtigen Speicher geladen, sondern direkt aus dem flüchtigen Speicherbereich, beispielsweise dem Arbeitsspeicher RAM, geladen.Saving in the volatile memory area means in particular that the file contents are not transported to the non-volatile memory area and saved there. Until the end of the session, the file contents are stored exclusively in the volatile memory area. If this file content is necessarily required during the session, it is not loaded from the non-volatile memory as usual, but loaded directly from the volatile memory area, for example the RAM.

Auch das Erzeugen neuer Dateien ist in diesem Verfahren umfasst. Wird beispielsweise das Kommando CREATE FILE im Datenträger empfangen und weist die Datei das bestimmte Attribut auf, so wird die Datei ausschließlich im flüchtigen Speicherbereich erzeugt und nach Beenden der Session wieder verworfen.The creation of new files is also included in this procedure. For example, if the CREATE FILE command is received on the data carrier and the file has the specific attribute, the file is created exclusively in the volatile memory area and discarded again after the session ends.

Ein Attribut der Datei eines tragbaren Datenträgers ist insbesondere im Rankl/ Effing unter Punkt 12.9 „Attribute von Dateien“ ab Seite 474 beschrieben. Sie dienen dazu, spezielle Eigenschaften der Datei zu kennzeichnen. Das Attribut ist dabei im Dateideskriptor festgehalten. Dieser Dateideskriptor weist bei objektorientiertem Aufbau einen Zeiger auf den ursprünglichen Dateiinhalt der Datei auf. Dateideskriptor und ursprünglicher Dateiinhalt sind in einem nichtflüchtigen Speicherbereich des Datenträgers gespeichert. Ein bestimmtes Attribut im Sinn der Anmeldung, ist ein Attribut, welches eine bestimmte Eigenschaft der Datei bzw. des Dateiinhalts anzeigt. Diese Eigenschaft der Datei zeigt dem erfindungsgemäßen Verfahren an, dass der Dateiinhalt nach Beenden der Session des Datenträgers verworfen werden kann und somit insbesondere nur im flüchtigen Speicherbereich des Datenträgers abgespeichert wird.An attribute of the file of a portable data storage device is described in particular in Rankl/Effing under point 12.9 "Attributes of files" from page 474. They are used to identify special properties of the file. The attribute is stored in the file descriptor. In an object-oriented structure, this file descriptor has a pointer to the original file content of the file. The file descriptor and the original file content are stored in a non-volatile memory area of the data storage device. A specific attribute in the sense of the application is an attribute that indicates a specific property of the file or the file content. This property of the file indicates to the method according to the invention that the file content can be discarded after the session of the data storage device has ended and is therefore only stored in the volatile memory area of the data storage device.

Der Begriff Betrieb des Datenträgers ist gleichbedeutend mit dem Begriff Session bzw. Sitzung des Datenträgers. Dabei ist der Datenträger mittels eines Endgeräts betriebsfähig gemacht worden, wobei er insbesondere mit einer Stromversorgung und ggf. weiterer versorgender elektrischer Signale, wie Reset, Takt etc. vom Endgerät versorgt wird. Ist der Datenträger in einer Session betriebsfähig und empfängt Dateiinhalte, so sind diese bevorzugt nur in dieser Session verfügbar. Werden die Versorgungssignale seitens des Datenträgers deaktiviert, endet der Betrieb des Datenträgers, die Session ist somit beendet.The term operation of the data carrier is synonymous with the term session of the data carrier. The data carrier has been made operational by means of a terminal device, whereby it is supplied in particular with a power supply and possibly other supplying electrical signals, such as reset, clock, etc. from the terminal device. If the data carrier is operational in a session and receives file contents, these are preferably only available in this session. If the supply signals are deactivated by the data carrier, the operation of the data carrier ends and the session is thus ended.

Erfindungsgemäß ist die Datei somit insbesondere ein Elementary File eines SIM-Karten Dateisystems.According to the invention, the file is thus in particular an elementary file of a SIM card file system.

Erfindungsgemäß ist das bestimmte Attribut das „High Update Activity“ Attribut. Dieses Attribut kennzeichnet Dateien, die sehr häufig aktualisiert werden, wodurch die Lebenszeit der Datenträger bei häufiger Verwendung dieser Dateien rapide abnimmt. Daher warnen Datenträgerhersteller stets davor und raten einem Programmierer davon ab, derartige Dateien überhaupt zu verwenden, obwohl die Verwendung während einer Sitzung des Datenträgers durchaus vorteilhaft ist. Problematisch ist, dass diese Dateien stets im gleichen Sektor des nichtflüchtigen Speichers überschrieben werden, sodass spezielle Speicherzellen übermäßig oft belastete werden, wodurch eine drastische Verkürzung der Betriebsfähigkeit des Datenträgers erzielt ist. Durch das erfindungsgemäße Verfahren wird die Verwendung von Dateien mit diesem Attribut ohne Nachteile möglich, da davon auszugehen ist, dass die Aktualisierung der Dateien keine Relevanz nach Beenden der Session hat und verworfen werden kann.According to the invention, the specific attribute is the "high update activity" attribute. This attribute identifies files that are updated very frequently, whereby the lifespan of the data storage device decreases rapidly when these files are used frequently. Therefore, data storage device manufacturers always warn against this and advise programmers not to use such files at all, although using the data storage device during a session is certainly advantageous. The problem is that these files are always overwritten in the same sector of the non-volatile memory, so that specific memory cells are loaded excessively often, which drastically shortens the operability of the data storage device. The method according to the invention makes it possible to use files with this attribute without disadvantages, since it can be assumed that the update of the files has no relevance after the session has ended and can be discarded.

Gemäß einer Ausführungsform und insbesondere ist der Dateiinhalt ein aktualisierter Dateiinhalt und die Datei ist mit einem ursprünglichen Dateiinhalt in einem nichtflüchtigen Speicherbereich des Datenträgers bereits abgelegt. Ein auf Datenträgern bekanntes Kommando zur Aktualisierung ist das UPDATE BINARY/RECORD, mit dem ein ursprünglicher Dateiinhalt auf einem Datenträger aktualisiert werden kann.According to one embodiment and in particular, the file content is an updated file content and the file is already stored with an original file content in a non-volatile storage area of the data carrier. A known update command on data carriers is UPDATE BINARY/RECORD, with which an original file content can be updated on a data carrier.

Im Sinn der Beschreibung ist unter dem Begriff aktualisierter Dateiinhalt zum einen der Ersatz eines bereits im nichtflüchtigen Speicherbereichs abgespeicherter ursprünglicher Dateiinhalt verstanden. Alternativ ist unter dem Begriff auch verstanden, dass ein nachladbarer Dateiinhalt zusätzlich zu bereits bestehendem Dateiinhalt empfangen wird, der ebenfalls verworfen werden kann, wenn die Session des Datenträgers beendet ist. Der Begriff aktualisierter Dateiinhalt umfasst somit auch nachladbaren Dateiinhalt.In the sense of the description, the term updated file content is understood to mean the replacement of an original file content already stored in the non-volatile memory area. Alternatively, the term is also understood to mean that a reloadable file content in addition to already existing file content, which can also be discarded when the data storage device session is terminated. The term updated file content therefore also includes file content that can be reloaded.

Im Gegensatz zum Stand der Technik, bei dem jegliche Aktualisierung von Dateiinhalten als Sicherung im nichtflüchtigen Speicher abgelegt wird, wird bei dem erfindungsgemäßen Verfahren zunächst ein Attribut überprüft und in Abhängigkeit des Attributs festgelegt, ob ein Speichern im nichtflüchtigen Speicherbereich notwendig ist. Dadurch wird zum einen viel Zeit gespart, die für den Zugriff auf den nichtflüchtigen Speicher benötigt werden würde. Da flüchtige Speicher, beispielsweise RAM-Zellen viel häufiger beschrieben werden können, wird die Lebenszeit des Datenträgers drastisch verlängert.In contrast to the prior art, in which every update of file contents is stored as a backup in the non-volatile memory, the method according to the invention first checks an attribute and, depending on the attribute, determines whether storage in the non-volatile memory area is necessary. This saves a lot of time that would be needed to access the non-volatile memory. Since volatile memories, such as RAM cells, can be written to much more frequently, the lifespan of the data carrier is drastically extended.

Gemäß einer Ausführungsform und in vorteilhafter Weise wird der aktualisierte Dateiinhalt ausschließlich in dem flüchtigen Speicherbereich des Datenträgers gespeichert, sodass der aktualisierte Dateiinhalt beim Deaktivieren des Datenträgers ungesichert verworfen wird. Wird also anhand des Attributs festgestellt, dass eine Aktualisierung des Dateiinhalts nicht notwendig ist, wird der aktualisierte Dateiinhalt nicht im nichtflüchtigen Speicherbereich gespeichert.According to one embodiment and in an advantageous manner, the updated file content is stored exclusively in the volatile storage area of the data carrier, so that the updated file content is discarded without being saved when the data carrier is deactivated. If it is determined from the attribute that an update of the file content is not necessary, the updated file content is not stored in the non-volatile storage area.

Die Erfindung macht von der Tatsache Gebrauch, dass eine Vielzahl von Aktualisierungen von Dateiinhalten nicht dauerhaft abgelegt werden müssen und nur für eine Session des Datenträgers notwendig ist. Daher werden diese Aktualisierungen nur im flüchtigen Speicherbereich abgelegt.The invention makes use of the fact that a large number of updates to file contents do not have to be stored permanently and are only necessary for one session of the data carrier. Therefore, these updates are only stored in the volatile memory area.

Gemäß einer Ausführungsform wird bei einer erneuten Inbetriebnahme des Datenträgers, sprich bei Beginn einer neuen Session, der ursprüngliche Dateiinhalt der Datei aus dem nichtflüchtigen Speicherbereich des Datenträgers geladen.According to one embodiment, when the data carrier is restarted, i.e. when a new session begins, the original file content of the file is loaded from the non-volatile memory area of the data carrier.

Gemäß der Erfindung handelt es sich bei dem Datenträger um ein Teilnehmeridentifikationsmodul für ein Mobilfunknetz. Ein Aufbau und Betreiben derartiger Datenträger ist ausführlich in der Spezifikation ETSI 3GPP TS 11.11/51.011 oder der ETSI 3GPP TS 31.102 beschrieben. In dieser GSM/USIM Spezifikation werden ebenfalls die Dateien definiert, die wiederum ggf. aktualisiert werden.According to the invention, the data carrier is a subscriber identification module for a mobile network. The structure and operation of such data carriers is described in detail in the specification ETSI 3GPP TS 11.11/51.011 or the ETSI 3GPP TS 31.102. This GSM/USIM specification also defines the files, which in turn are updated if necessary.

Gemäß einer Ausführungsform wird beim Überprüfen des Attributs auch der Name der Datei überprüft. Werden Dateiinhalte aktualisiert, um fehlerhafte Dateiinhalte zu entfernen oder um Informationen für einen Benutzer darzustellen, ist es sinnvoll, diese Aktualisierung nicht ungesichert zu verwerfen. Eine Aufzählung der jeweiligen Dateinamen ist der Figurenbeschreibung zu entnehmen.According to one embodiment, the name of the file is also checked when checking the attribute. If file contents are updated to remove incorrect file contents or to display information for a user, it is sensible not to discard this update without saving it. A list of the respective file names can be found in the figure description.

In einer vorteilhaften Ausführungsform ist im Datenträger ein Aktualisierungszähler vorgesehen, der beim Empfang des Dateiinhalts inkrementiert wird, wenn der aktualisierte Dateiinhalt nur im flüchtigen Speicherbereich des Datenträgers abgelegt wird. Der Zählerstand des Aktualisierungszählers ist im nichtflüchtigen Speicherbereich abgelegt, sodass er auch nach Beendigung der Session verfügbar ist. Der Zählerstand ist beispielsweise im Dateideskriptor der Datei abgelegt, dessen aktualisierter Dateiinhalt empfangen wurde und wird beim Überprüfen des Attributs mit abgefragt. Alternativ wird mit jedem aktualisierten Dateiinhalt die Version der Datei mit übermittelt, sodass ein Zugriff auf den nicht flüchtigen Speicherbereich komplett unterbunden werden kann.In an advantageous embodiment, an update counter is provided in the data carrier, which is incremented when the file content is received if the updated file content is only stored in the volatile memory area of the data carrier. The counter reading of the update counter is stored in the non-volatile memory area so that it is also available after the session has ended. The counter reading is stored, for example, in the file descriptor of the file whose updated file content was received and is queried when the attribute is checked. Alternatively, the version of the file is transmitted with each updated file content so that access to the non-volatile memory area can be completely prevented.

In einer vorteilhaften Ausführungsform wird der Zählerstand des Aktualisierungszählers mit einem voreingestellten Wert verglichen. Dabei wird der aktualisierte Dateiinhalt unabhängig vom Attribut der Datei im nichtflüchtigen Speicherbereich gespeichert, wenn der Zählerstand den voreingestellten Wert überschreitet. Der ursprüngliche Dateiinhalt wird vom aktualisierten Dateiinhalt überschrieben. Ein voreingestellter Wert ist dabei x-beliebig. Beispielsweise kann auf diese Weise vorteilhaft erreicht werden, dass jede x-te Aktualisierung im nichtflüchtigen Speicherbereich abgelegt werden kann, sodass die zwischenzeitlich empfangenen anderen neun Aktualisierungen verworfen werden.In an advantageous embodiment, the count of the update counter is compared with a preset value. The updated file content is stored in the non-volatile memory area regardless of the attribute of the file if the count exceeds the preset value. The original file content is overwritten by the updated file content. A preset value can be any value. For example, this can advantageously ensure that every xth update can be stored in the non-volatile memory area, so that the other nine updates received in the meantime are discarded.

In einer vorteilhaften Ausführungsform wird der aktualisierte Dateiinhalt unabhängig vom Attribut immer zunächst im nichtflüchtigen Speicherbereich gespeichert wird, wenn der ursprüngliche Dateiinhalt erstmalig aktualisiert wird. Die meisten Aktualisierungen im Feld sind nur beim ersten Mal von Bedeutung, sodass diese erste Aktualisierung des ursprünglichen Dateiinhalts sinnvoller Weise auch im nichtflüchtigen Speicherbereich abzulegen ist. Alle darauffolgenden Aktualisierungen werden verworfen, da diese nur für die jeweilig laufende Session relevant sind.In an advantageous embodiment, the updated file content is always initially saved in the non-volatile memory area, regardless of the attribute, when the original file content is updated for the first time. Most updates in the field are only relevant the first time, so it makes sense to store this first update of the original file content in the non-volatile memory area. All subsequent updates are discarded, as they are only relevant for the current session.

In einer Ausführungsform wird der aktualisierte Dateiinhalt mittels Over-the-Air Dienst von einer entfernten Mobilfunkinstanz in einem Mobilfunknetz oder durch eine Kommunikationsverbindung mit einem Endgerät in dem Datenträger empfangen. Als Mobilfunknetz wird in dieser Anmeldung eine technische Infrastruktur verstanden, auf der die Übertragung von Signalen für den Mobilfunk stattfindet. Dabei ist im Wesentlichen das Mobilvermittlungsnetz, in dem die Übertragung und Vermittlung der Signale zwischen ortsfesten Einrichtungen und Plattformen des Mobilfunknetzes stattfinden, sowie das Zugangsnetz (auch als Luftschnittstelle bezeichnet), in dem die Übertragung der Signale zwischen einer Mobilfunkantenne und einem mobilen Endgerät stattfindet, zu verstehen. Beispielsweise das „Global System for Mobile Communications“, kurz GSM als Vertreter der sogenannten zweiten Generation oder das General Packet Radio Service, kurz GPRS und Universal Mobile Telecommunications System, kurz UMTS als Vertreter der sogenannten dritten Generation von Mobilfunknetzen seien hier beispielhaft erwähnt, wobei bei der dritten Generation das Mobilvermittlungsnetz um die Fähigkeit einer paketorientierten Datenübertragung erweitert wird, das Funknetz an sich aber unverändert ist.In one embodiment, the updated file content is received by means of an over-the-air service from a remote mobile radio instance in a mobile radio network or through a communication connection with a terminal in the data carrier. In this application, a mobile radio network is understood to be a technical infrastructure on which the transmission of signals for mobile radio takes place. This essentially includes the mobile switching network in which the transmission and switching of the signals between fixed facilities and platforms of the mobile radio network takes place, as well as the access network (also known as the air interface) in which the transmission of signals between a mobile radio antenna and a mobile device takes place. Examples of this include the "Global System for Mobile Communications", or GSM for short, as a representative of the so-called second generation, or the General Packet Radio Service, or GPRS for short, and the Universal Mobile Telecommunications System, or UMTS for short, as representatives of the so-called third generation of mobile radio networks. In the third generation, the mobile switching network is expanded to include the ability to transmit data in packets, but the radio network itself remains unchanged.

Alternativ wird der aktualisierte Dateiinhalt durch eine Kommunikationsverbindung mit einem Endgerät in dem Datenträger empfangen. Dies erfolgt entweder über eine kontaktbehaftete Schnittstelle oder eine kontaktlose Schnittstelle. Das Betriebssystem des Datenträgers ist dabei so ausgelegt, dass die Aktualisierung des Dateiinhalts über das kontaktlose Interface des Datenträgers beispielsweise gemäß einer der ISO/IEC 14443, 15693, 18092 oder kontaktbehaftet gemäß ISO/IEC 7816 oder USB Standard empfangen wird.Alternatively, the updated file content is received via a communication connection with a terminal device in the data carrier. This is done either via a contact interface or a contactless interface. The operating system of the data carrier is designed in such a way that the update of the file content is received via the contactless interface of the data carrier, for example in accordance with one of the ISO/IEC 14443, 15693, 18092 or contact-based in accordance with ISO/IEC 7816 or USB standard.

Der Erfindungsgrundgedanke umfasst weiterhin ein Computerprogrammprodukt, das direkt in den flüchtigen oder nichtflüchtigen Speicher des Datenträgers geladen wird und Softwarecodeabschnitte umfasst, mit denen die vorangegangenen Ausgestaltungen des erfindungsgemäßen Verfahrens ausgeführt werden, wenn das Produkt auf dem Datenträger abläuft.The basic idea of the invention further comprises a computer program product which is loaded directly into the volatile or non-volatile memory of the data carrier and comprises software code sections with which the preceding embodiments of the method according to the invention are carried out when the product runs on the data carrier.

Der Erfindungsgrundgedanke umfasst weiterhin einen tragbaren Datenträger mit einem integrierten Halbleiterschaltkreis. Der Schaltkreis umfasst eine Kommunikationsschnittstelle zum Empfangen eines aktualisierten Dateiinhalts einer Datei, einen flüchtigen Speicherbereich zum Speichern des aktualisierten Dateiinhalts und einen nichtflüchtigen Speicherbereich zum Speichern eines ursprünglichen Dateiinhalts und eines Dateideskriptors der Datei. Der Datenträger weist weiterhin eine Überprüfungseinheit auf, die ein Attribut der Datei und der aktualisierte Dateiinhalt nur im flüchtigen Speicherbereich zur Verwendung während eines Betriebs des Datenträgers gespeichert wird, wenn die Datei ein bestimmtes Attribut aufweist. Der integrierte Halbleiterschaltkreis des Datenträgers umfasst weiterhin einen Aktualisierungszähler, wobei der Aktualisierungszähler inkrementiert wird, wenn der aktualisierte Dateiinhalts (12a) empfangen ist und eine Vergleichseinheit, wobei die Vergleichseinheit den Zählerstand des Aktualisierungszählers mit einem voreingestellten Wert vergleicht. Der ursprüngliche Dateiinhalt im nichtflüchtigen Speicherbereich wird dabei vom aktualisierten Dateiinhalt überschrieben, wenn der Vergleich der Vergleichseinheit ergibt, dass der Zählerstand gleich oder größer als der voreingestellte Wert ist.The basic idea of the invention further comprises a portable data carrier with an integrated semiconductor circuit. The circuit comprises a communication interface for receiving an updated file content of a file, a volatile memory area for storing the updated file content and a non-volatile memory area for storing an original file content and a file descriptor of the file. The data carrier further comprises a checking unit which stores an attribute of the file and the updated file content only in the volatile memory area for use during operation of the data carrier if the file has a certain attribute. The integrated semiconductor circuit of the data carrier further comprises an update counter, wherein the update counter is incremented when the updated file content (12a) is received and a comparison unit, wherein the comparison unit compares the count of the update counter with a preset value. The original file content in the non-volatile memory area is overwritten by the updated file content if the comparison of the comparison unit shows that the counter reading is equal to or greater than the preset value.

Nachfolgend wird anhand von Figuren die Erfindung bzw. weitere Ausführungsformen und Vorteile der Erfindung näher erläutert, wobei die Figuren lediglich Ausführungsbeispiele der Erfindung beschreiben. Gleiche Bestandteile in den Figuren werden mit gleichen Bezugszeichen versehen. Die Figuren sind nicht als maßstabsgetreu anzusehen, es können einzelne Elemente der Figuren übertrieben groß bzw. übertrieben vereinfacht dargestellt sein. The invention and further embodiments and advantages of the invention are explained in more detail below with the aid of figures, whereby the figures merely describe embodiments of the invention. Identical components in the figures are provided with the same reference numerals. The figures are not to be regarded as being to scale; individual elements of the figures may be shown exaggeratedly large or exaggeratedly simplified.

Es zeigen:

  • 1 Das Empfangen eines aktualisierten Dateiinhalts über ein Mobilfunknetz gemäß dem Stand der Technik
  • 2 Ein Blockschaltbild über Funktionseinheiten eines im tragbaren Datenträger eingebrachten Halbleiterschaltkreis gemäß dem Stand der Technik
  • 3 Ein Dateisystem mit Dateien in einer SIM-Karte gemäß dem Stand der Technik
  • 4 Eine objektorientierte Struktur einer Datei bestehend aus Dateideskriptor und Dateiinhalt gemäß dem Stand der Technik
  • 5 Ein Ablaufdiagramm eines erstes Ausführungsbeispiel eines erfindungsgemäßen Verfahrens zum Speichern einer Datei in einem Datenträger
  • 6 Ein alternatives erfindungsgemäßes Ausführungsbeispiel des in 5 gezeigten Ablaufdiagramms
  • 7 Ein alternatives erfindungsgemäßes Ausführungsbeispiel des in 5 und 6 gezeigten Ablaufdiagramms
They show:
  • 1 Receiving an updated file content via a mobile network according to the state of the art
  • 2 A block diagram of functional units of a semiconductor circuit incorporated in the portable data carrier according to the prior art
  • 3 A file system with files in a SIM card according to the state of the art
  • 4 An object-oriented structure of a file consisting of file descriptor and file content according to the state of the art
  • 5 A flow chart of a first embodiment of a method according to the invention for storing a file in a data carrier
  • 6 An alternative embodiment of the invention of the 5 shown flow chart
  • 7 An alternative embodiment of the invention of the 5 and 6 shown flow chart

1 zeigt ein System bestehend aus einem mobilen Endgerät 5 mit einem internen Endgeräteschaltkreis 5a. Im mobilen Endgerät 5 ist weiterhin ein tragbarer Datenträger 1 in Form einer SIM-Karte. Der Datenträger 1 könnte aber auch nach einer der eingangs beschriebenen Art und Weise ausgestaltet und im Endgerät 5 integriert sein. Das Endgerät 5 ist in 1 ein Mobilfunkendgerät und mittels einer Mobilfunkverbindung 6 mit einer entfernten Mobilfunkinstanz 7 in einer Kommunikationsverbindung. Ein Teil der Mobilfunkinstanz 7 ist ein Aktualisierungsserver 7a. Auf der SIM-Karte 1 ist ein nicht dargestelltes Dateisystem, dessen Dateien 10 einen Dateiinhalt 12 aufweisen, der über den Aktualisierungsserver 7a aktualisiert werden kann. Die Aktualisierung des Dateisystems 8 und den darin enthaltenen Dateien 10 in dem SIM 1 erfolgt durch ein Aktualisierungskommando 15, initiiert durch die entfernte Mobilfunkinstanz 7 mittels OTA. Alternativ kann das zum Betrieb des SIM 1 notwendige Endgerät 5 die ausstehende Aktualisierung vornehmen. 1 shows a system consisting of a mobile terminal 5 with an internal terminal circuit 5a. The mobile terminal 5 also contains a portable data carrier 1 in the form of a SIM card. The data carrier 1 could also be designed in one of the ways described above and integrated into the terminal 5. The terminal 5 is in 1 a mobile radio terminal and by means of a mobile radio connection 6 with a remote mobile radio instance 7 in a communication connection. Part of the mobile radio instance 7 is an update server 7a. On the SIM card 1 there is a file system (not shown), whose files 10 have a file content 12 that can be updated via the update server 7a. The file system 8 and the files 10 contained therein are updated in the SIM 1 by an update command 15, initiated by the remote mobile radio instance 7 using OTA. Alternatively, the terminal device 5 required to operate the SIM 1 can carry out the pending update.

Das in 1 gezeigte Endgerät 5 ist beispielsweise ein Smart Phone, ein PDA oder ein alternatives mobiles Endgerät 5. Es ist vorrangig geeignet für eine Mobilfunkverbindung 6 mit einer Mobilfunkinstanz 7. Über eine nicht dargestellte Mobilfunkantenne empfängt das Endgerät 5 den aktualisierten Dateiinhalt 12a als einen Teil des Dateisystems 8 auf der SIM 1. Diese Aktualisierung wird von dem Endgerät 5 an die SIM 1 übertragen. In der SIM 1 wird der ursprüngliche Dateiinhalt 12b durch den aktualisierten Dateiinhalt 12a im nichtflüchtigen Speicherbereich 4b ersetzt. Die Aktualisierung erfolgt dabei in unregelmäßigen Abständen und zu den unterschiedlichsten Zwecken, insbesondere zum Fernwarten, Fehlerbeseitigen, Informationsmitteilung und der gleichen mehr.The 1 The terminal 5 shown is, for example, a smart phone, a PDA or an alternative mobile terminal 5. It is primarily suitable for a mobile radio connection 6 with a mobile radio instance 7. The terminal 5 receives the updated file content 12a as part of the file system 8 on the SIM 1 via a mobile radio antenna (not shown). This update is transmitted from the terminal 5 to the SIM 1. In the SIM 1, the original file content 12b is replaced by the updated file content 12a in the non-volatile memory area 4b. The update takes place at irregular intervals and for a wide variety of purposes, in particular for remote maintenance, troubleshooting, information communication and the like.

In 2 ist ein beispielhaftes Blockschaltbild eines im Datenträger 1 eingebrachten Halbleiterschaltkreises 2 dargestellt. Der Halbleiterschaltkreis umfasst eine zentrale Recheneinheit CPU, zumindest eine Schnittstelle I/O, über die eine kontaktbehaftete und/oder kontaktlose Kommunikationsverbindung zu dem Endgerät 5 ermöglicht ist. Über diese I/O Schnittstelle wird der Datenträger 1 betriebsfähig gemacht, indem die notwendigen Signale, insbesondere die Stromversorgung, der Takt, das Rücksetzsignal und ggf. weitere Datenkanäle übertragen werden. Die Übertragung erfolgt dabei beispielsweise über eine elektrische Leitung oder ein elektromagnetisches Feld.In 2 an example block diagram of a semiconductor circuit 2 incorporated in the data carrier 1 is shown. The semiconductor circuit comprises a central processing unit CPU, at least one I/O interface, via which a contact-based and/or contactless communication connection to the terminal device 5 is enabled. The data carrier 1 is made operational via this I/O interface by transmitting the necessary signals, in particular the power supply, the clock, the reset signal and possibly other data channels. The transmission takes place, for example, via an electrical line or an electromagnetic field.

Der Halbleiterschaltkreis 2 weist weiterhin einen flüchtigen Speicherbereich 3 auf, insbesondere ein Random-Access-Memory, kurz RAM. Dieser Speicher zeichnet sich durch schnelle Zugriffszeiten im Vergleich zu anderen Speichertechnologien und den Verlust des Speicherinhalts bei Wegfall der Stromversorgung aus. Weiterhin ist im Schaltkreis 2 ein nichtflüchtiger Speicherbereich 4 vorgesehen. Dieser Speicherbereich 4 weist einen einfach wieder beschreibbaren nichtflüchtigen Speicher 4a und einen mehrfach wieder beschreibbaren nichtflüchtigen Speicher 4b auf. Der Speicher 4a ist beispielsweise ein Read-Only-Memory, der während einer Produktions- und/oder Personalisierungsphase mit Dateien beschrieben wird, die unveränderbar im Bereich 4a abgelegt sind. Der Speicher 4b hingegen ist mehrfach wieder beschreibbar. Vorrangig wird der Speicherbereich 4b bei heutigen Datenträgern in EEPROM oder FLASH Technologie ausgestaltet.The semiconductor circuit 2 also has a volatile memory area 3, in particular a random access memory, or RAM for short. This memory is characterized by fast access times compared to other memory technologies and the loss of memory content when the power supply fails. A non-volatile memory area 4 is also provided in the circuit 2. This memory area 4 has a non-volatile memory 4a that can be rewritable once and a non-volatile memory 4b that can be rewritable multiple times. The memory 4a is, for example, a read-only memory that is written to during a production and/or personalization phase with files that are stored in an unchangeable manner in the area 4a. The memory 4b, on the other hand, can be rewritable multiple times. The memory area 4b in today's data storage devices is primarily designed using EEPROM or FLASH technology.

Der in 2 dargestellte Datenträger 1 empfängt nun über die I/O Schnittstelle den in 1 erwähnten aktualisierten Dateiinhalt 12a in Form von APDU und übermittelt diesen aktualisierten Dateiinhalt 12b an die Recheneinheit CPU. Die CPU wiederum hat in gewissem Rahmen Zugriffsrechte auf den flüchtigen Speicherbereich 3 sowie die nichtflüchtige Speicherbereiche 4a und 4b. Gemäß dem Stand der Technik und der in der Einleitung erwähnten GSM und ETSI Spezifikationen wird nach Empfang der aktualisierten Dateiinhalte 12a veranlasst, dass der aktualisierte Dateiinhalt 12a in den nichtflüchtigen mehrfachbeschreibbaren Speicherbereich 4b gespeichert wird.The 2 The data carrier 1 shown now receives the data in 1 mentioned updated file content 12a in the form of APDU and transmits this updated file content 12b to the CPU. The CPU in turn has, to a certain extent, access rights to the volatile memory area 3 and the non-volatile memory areas 4a and 4b. According to the state of the art and the GSM and ETSI specifications mentioned in the introduction, after receiving the updated file content 12a, the updated file content 12a is stored in the non-volatile, rewritable memory area 4b.

In 3 ist ein beispielhaftes Dateisystem 8 gemäß dem Stand der Technik dargestellt. Das Dateisystem weist ein Master File, MF und zwei Dedicated Files DF1, DF2 als Verzeichnisdateien 9 auf. Hierarchisch untergeordnet weist jedes DF zwei Elementary Files EF1, EF2 bzw. EF3, EF4 auf, die im Folgenden als Dateien 10 bezeichnet werden. In 3 gestrichelt dargestellt kann eine Verzeichnisdatei DF1 eine weitere Verzeichnisdatei DF3 beinhalten, die wiederum Elementary Files EF5, EF6 beinhaltet. Werden nun während im Rahmen eines Aktualisierungskommandos 15 aktualisierte Dateiinhalte 12a für die Dateien EF1, EF2 empfangen, so werden die ursprünglichen Dateiinhalte 12b durch die aktualisierten Dateiinhalte 12a im Rahmen der Aktualisierung 15 ersetzt, sozusagen die Dateiinhalte 12b mit den Dateiinhalten 12a überschrieben. Da dieser Dateiinhalt 12 immer auf dem gleichen Sektor des mehrfach beschreibbaren Speicherbereichs 4b ist, wird dieser Sektor eventuell öfter beschrieben, als andere Sektoren, die nur gelesen werden, wobei irgendwann die maximale Schreibzugriffszahl erreicht ist. Somit schmälern diese Sektoren des Speicherbereichs 4b die Lebenszeit des Datenträgers 1 und führen insbesondere zu dessen Nichtbetriebsfähigkeit. Speziell bei fest eingebrachten Datenträgern 1 im Endgerät 5 kann dies zu massiven Kosten führen, da ein Austausch des Datenträgers 1 aufwendig ist.In 3 an exemplary file system 8 according to the prior art is shown. The file system has a master file, MF, and two dedicated files DF1, DF2 as directory files 9. Hierarchically subordinate, each DF has two elementary files EF1, EF2 or EF3, EF4, which are referred to below as files 10. In 3 shown in dashed lines, a directory file DF1 can contain another directory file DF3, which in turn contains elementary files EF5, EF6. If updated file contents 12a for the files EF1, EF2 are received as part of an update command 15, the original file contents 12b are replaced by the updated file contents 12a as part of the update 15, so to speak, the file contents 12b are overwritten with the file contents 12a. Since this file content 12 is always in the same sector of the rewritable storage area 4b, this sector may be written to more often than other sectors that are only read, whereby the maximum number of write accesses is reached at some point. These sectors of the storage area 4b therefore reduce the lifespan of the data carrier 1 and in particular lead to it becoming inoperable. This can lead to massive costs, especially in the case of permanently installed data carriers 1 in the terminal device 5, since replacing the data carrier 1 is complex.

In 4 wird nun eine objektorientierte Struktur einer Datei 10 gezeigt. Dabei ist ein Dateideskriptor 11 gezeigt. Der Deskriptor 11, auch als Dateiheader bezeichnet, beinhaltet die verwaltungstechnisch relevanten Informationen des eigentlichen Dateiinhalts 12. Der Dateideskriptor 11 weist an einer ein Attribut 13 auf, welches die Eigenschaft der Datei 10 kennzeichnet. Als Attribut 13 gibt es insbesondere das WORM-Attribut, eine Kennzeichnung dafür, dass die entsprechende Datei 10 nur einmal geschrieben, aber mehrfach gelesen werden darf. Ein weiteres Attribut 13 ist das EDC-Attribut, eine Kennzeichnung dafür, dass der Dateiinhalt 12 dieser Datei 10 besonders sensibel ist und mit einem Error Detection Code, kurz EDC, ausgestattet ist, um das Umkippen einzelner Speicherbits im nichtflüchtigen Speicher sofort zu erkennen. Als Attribut 13 ist auch der atomare Schreibzugriff vorgesehen, eine Kennzeichnung dafür, dass diese Datei 10 nur vollständig oder gar nicht geschrieben werden darf. Weitere Attribute können für die Schnittstellenverwaltung, den Bootvorgang des Datenträgers, der Dateiverschlüsselung und vieles mehr vergeben werden.In 4 an object-oriented structure of a file 10 is now shown. A file descriptor 11 is shown. The descriptor 11, also referred to as the file header, contains the administratively relevant information of the actual file content 12. The file descriptor 11 has an attribute 13 on one side, which characterizes the properties of the file 10. As attribute 13 there is in particular the WORM attribute, a marking that the corresponding file 10 may only be written once, but may be read multiple times. Another attribute 13 is the EDC attribute, a marking that the file content 12 of this file 10 is particularly sensitive and is equipped with an error detection code, EDC for short, in order to immediately recognize the flipping of individual memory bits in the non-volatile memory. Also as attribute 13 is the atomic Write access is provided, an indication that this file 10 may only be written completely or not at all. Further attributes can be assigned for interface management, the boot process of the data carrier, file encryption and much more.

Ein für diese Anmeldung sehr wichtiges Attribut 13 ist das Attribut für häufiges Schreiben, englisch: High Update Activity. Dies ist eine Kennzeichnung für eine Datei 10, die sehr häufig aktualisiert wird und entsprechend viele Schreib-/Lesezugriffe auf den nichtflüchtigen Speicherbereich 4b verursacht.An attribute 13 that is very important for this application is the attribute for frequent writing, or high update activity. This is an identifier for a file 10 that is updated very frequently and causes a correspondingly high number of write/read accesses to the non-volatile memory area 4b.

Der eigentliche Dateiinhalt 12 der Datei 10 ist wiederum in dem Datei-Body enthalten. Der Dateideskritor 11 hat stets einen Zeiger auf die Adresse des Speicherbereichs 4b, in dem der Dateiinhalt 12 der zu dem Deskriptor 11 gehört, abgespeichert ist. Bei der Aktualisierung von Dateiinhalt 12 muss nun nicht ein Komplettersatz des ursprünglichen Dateiinhalts 12b mit dem aktualisierten Dateiinhalt 12a erfolgen, sondern insbesondere können nur Teile des Dateiinhalts 12b aktualisiert werden. Somit kann ein Aktualisierungskommando 15 ein aktualisierten Dateiinhalt 12a für nur einen Bruchteil eines ursprünglichen Dateiinhalts 12b umfassen.The actual file content 12 of the file 10 is in turn contained in the file body. The file descriptor 11 always has a pointer to the address of the memory area 4b in which the file content 12 belonging to the descriptor 11 is stored. When updating the file content 12, the original file content 12b does not have to be completely replaced with the updated file content 12a, but in particular only parts of the file content 12b can be updated. An update command 15 can therefore include an updated file content 12a for only a fraction of an original file content 12b.

Im Sinn der Anmeldung ist unter dem Begriff aktualisierter Dateiinhalt zum einen der Ersatz eines bereits im nichtflüchtigen Speicherbereichs abgespeicherter ursprünglicher Dateiinhalt verstanden, aber auch nachladbarer Dateiinhalt denkbar.For the purposes of the application, the term updated file content is understood to mean, on the one hand, the replacement of an original file content already stored in the non-volatile memory area, but also retrofittable file content is conceivable.

In 5 ist ein Programmablauf eines erfindungsgemäßen Verfahrens dargestellt. Hierbei wird der Datenträger 1 in Betrieb genommen, was mit einem Sessionbeginn dargestellt ist. Mit Inbetriebnahme ist die Versorgung des Datenträgers 1 mit Takt, Reset, Spannung und ggf. weiteren Signalen zu verstehen. Während der Session erfolgt das Empfangen 17 eines aktualisierten Dateiinhalts 12a. Das Empfangen ist hierbei in 1 andeutungsweise erläutert und nicht explizit Bestandteil der Erfindung. Ist der Empfang 17 abgeschlossen erfolgt erfindungsgemäß das Überprüfen 18 auf das Attribut 13 der Datei 10, die den aktualisierten Dateiinhalt 12a betrifft. Dieses Attribut 13 ist entweder während des Empfangs 17 mit empfangen worden oder alternativ durch ein Auslesen des zum aktualisierten Dateiinhalt 12a gehörenden Dateideskriptors 11 im nichtflüchtigen Speicherbereich 4b erfolgt. Gemäß der Erfindung wird als bestimmtes Attribut 13 das Attribut „High Update Activity“ verwendet.In 5 a program sequence of a method according to the invention is shown. Here, the data carrier 1 is put into operation, which is shown with the start of a session. The term “start-up” refers to the supply of the data carrier 1 with clock, reset, voltage and possibly other signals. During the session, the reception 17 of an updated file content 12a takes place. The reception is in 1 explained in a hint and is not an explicit part of the invention. Once the reception 17 is complete, the check 18 is carried out according to the invention for the attribute 13 of the file 10 that relates to the updated file content 12a. This attribute 13 was either received during the reception 17 or alternatively by reading the file descriptor 11 belonging to the updated file content 12a in the non-volatile memory area 4b. According to the invention, the attribute "High Update Activity" is used as the specific attribute 13.

Wird bei der Überprüfung 18 das Attribut 13 „High Update Activity“ nicht erkannt, wird der aktualisierte Dateiinhalt 12a in den nichtflüchtigen Speicherbereich 4b geschrieben. Insbesondere wird der dazugehörige ursprüngliche Dateiinhalt 12b überschrieben.If the attribute 13 “High Update Activity” is not detected during the check 18, the updated file content 12a is written to the non-volatile memory area 4b. In particular, the associated original file content 12b is overwritten.

Wird hingegen bei der Überprüfung 18 das Attribut 13 „High Update Activity“ erkannt, so wird der aktualisierte Dateiinhalt nur in den flüchtigen Speicherbereich 3, insbesondere den Arbeitsspeicher RAM für diese Session gespeichert. Der Dateiinhalt 12a kann für diese Session verwendet werden und steht für alle notwendigen Operationen im Datenträger 1 bereit. In der Spezifikation ETSI TS 102 241 werden karteninterne Prozesse für SIM/USIM Karten 1 beschrieben, beispielsweise der Prozess „FILE UPDATE EVENT“, die weiterhin funktionieren, wenn der aktualisierte Dateiinhalt 12a ausschließlich im flüchtigen Speicherbereich 3 gespeichert ist. Der aktualisierte Dateiinhalt 12a ist nämlich für Applikationen, beispielsweise Java Card Applets, auf dem Datenträger 1 weiterhin völlig transparent und wird ohne Probleme weiter verwendbar sein. Das bedeutet insbesondere, dass eine Applikation nach wie vor getriggert wird, wenn für eine Datei 10 der Applikation ein aktualisierter Dateiinhalt 12a empfangen wurde und es ist unerheblich, ob der aktualisierte Dateiinhalt 12a im flüchtigen Speicher 3 oder im nichtflüchtigen Speicher 4b abgelegt ist.If, however, the attribute 13 "High Update Activity" is detected during the check 18, the updated file content is only saved in the volatile memory area 3, in particular the RAM for this session. The file content 12a can be used for this session and is available for all necessary operations in the data carrier 1. The specification ETSI TS 102 241 describes card-internal processes for SIM/USIM cards 1, for example the "FILE UPDATE EVENT" process, which continue to function if the updated file content 12a is only saved in the volatile memory area 3. The updated file content 12a is still completely transparent for applications, such as Java Card Applets, on the data carrier 1 and can continue to be used without problems. This means in particular that an application is still triggered when an updated file content 12a has been received for a file 10 of the application and it is irrelevant whether the updated file content 12a is stored in the volatile memory 3 or in the non-volatile memory 4b.

Wird der Datenträger deaktiviert, beispielsweise durch Beenden der Session, verliert der RAM Speicherbereich 3 seinen Inhalt und der aktualisierte Dateiinhalt 12a wird verworfen. Bei erneuter Inbetriebnahme des Datenträgers wird bei Bedarf der ursprüngliche Dateiinhalt 12b aus dem nichtflüchtigen Speicherbereich 4b geladen.If the data storage device is deactivated, for example by ending the session, the RAM memory area 3 loses its contents and the updated file content 12a is discarded. When the data storage device is switched on again, the original file content 12b is loaded from the non-volatile memory area 4b if required.

Mit Speichern im RAM 3 wird dabei verstanden, dass die Dateien nicht weiter im nichtflüchtigen Speicherbereich 4b abgespeichert sind und bis zum Ende der Session ausschließlich im RAM 3 gespeichert sind.Saving in RAM 3 means that the files are no longer stored in the non-volatile memory area 4b and are stored exclusively in RAM 3 until the end of the session.

Gemäß der erwähnten Spezifikation sollten alle Dateien 10 im nichtflüchtigen Speicherbereich 4b abgelegt werden. Durch Anwenden des erfindungsgemäßen Verfahrens werden speziell gekennzeichnete Dateien 10 einfach nicht aktualisiert, da diese Dateien 10 keine Zählerstände oder sonstige kontinuierliche Dateiinhalte 12 aufweisen, welche das Zusammenspiel zwischen dem Mobilfunknetz 6, Endgerät 5und Datenträger 1 beeinträchtigen würden. Im vorliegenden Fall wird also radikal auf die Aktualisierung der Dateien verzichtet, da diese Aktualisierung nur für diese aktuelle Session wichtig ist und ansonsten irrelevant ist. Um den RAM 3 nicht unnötig zu überladen, sollten Attribute 13 von Dateien 10 gewählt werden, die wegen der limitierten Größe des RAM 3 nicht allzu groß sind, insbesondere wenige Byte aufweisen.According to the specification mentioned, all files 10 should be stored in the non-volatile memory area 4b. By applying the method according to the invention, specially marked files 10 are simply not updated, since these files 10 do not have any counter readings or other continuous file contents 12 that would impair the interaction between the mobile network 6, terminal device 5 and data storage device 1. In the present case, updating of the files is therefore radically dispensed with, since this update is only important for this current session and is otherwise irrelevant. In order not to unnecessarily overload the RAM 3, attributes 13 of files 10 should be selected that are not too large due to the limited size of the RAM 3, in particular have few bytes.

Gemäß 6 ist ein alternatives Ausführungsbeispiel zu dem in 5 dargestellten Verfahrensablaufdiagramm gezeigt. Die Verfahrensverläufe unterscheiden sich nur dahingehend, dass nach dem Überprüfen 18 des bestimmten Attributs 13 ein weiteres Überprüfen 20 des Dateideskriptors 11, insbesondere des Namens der zu aktualisierenden Datei 10 erfolgt. Wenn dieses Überprüfen 20 ergibt, dass die Aktualisierung der Datei 10 im nichtflüchtigen Speicherbereich 4b erfolgen muss, unabhängig vom Attribut 13, so wird diese Aktualisierung des Dateiinhalts 12 in den nichtflüchtigen Speicher 4b geschrieben.According to 6 is an alternative embodiment to the one in 5 shown process flow diagram. The process sequences differ only in that after checking 18 the specific attribute 13, a further check 20 of the file descriptor 11, in particular the name of the file 10 to be updated, takes place. If this check 20 shows that the update of the file 10 must take place in the non-volatile memory area 4b, regardless of the attribute 13, this update of the file content 12 is written to the non-volatile memory 4b.

Wenn dieses Überprüfen 20 ergibt, dass die Aktualisierung der Datei 10 nicht im nichtflüchtigen Speicherbereich 4b erfolgen muss, so wird diese Aktualisierung des Dateiinhalts 12 nur im flüchtigen Speicher 3 gespeichert.If this check 20 shows that the update of the file 10 does not have to take place in the non-volatile memory area 4b, this update of the file content 12 is only stored in the volatile memory 3.

Im Folgenden werden beispielhaft Namen von EF-Dateien 10 aufgelistet, die das Attribut 13 „High Update Activity“ aufweisen und problemlos nach Beenden der Session des Datenträgers 1 verworfen werden können:

  • - EF Loci
  • - EF Kc
  • - EF KcGPRS
  • - EF LociGPRS
The following lists examples of names of EF files 10 that have the attribute 13 “High Update Activity” and can be easily discarded after the session of disk 1 has ended:
  • - EF Locations
  • - EF Kc
  • - EF KcGPRS
  • - EF LociGPRS

Diese Auflistung ist nicht vollständig. Wie bereits erwähnt können andere Attribute oder andere Kennzeichnungen verwendet werden, um das erfindungsgemäße Verfahren anzuwendenThis list is not exhaustive. As already mentioned, other attributes or other markings can be used to apply the method according to the invention

In 7 ist ein zu den 5 und 6 alternatives Ausführungsbeispiel dargestellt. Im Unterschied zur 5 wird nach dem Empfang 17 das Inkrementieren 21 eines, im Datenträger 1 vorgesehener Aktualisierungszähler, erfolgen. Anschließend erfolgt ein Vergleich 22 des Zählerstands dieses Aktualisierungszählers mit einem voreingestellten Wert X. Ist der Zählerstand gleich oder größer als der Wert X, erfolgt unabhängig von der Attributüberprüfung 18 oder der weiteren Überprüfung 20 das Speichern des aktualisierten Dateiinhalts 12a im nichtflüchtigen Speicherbereich 4b.In 7 is one of the 5 and 6 alternative embodiment is shown. In contrast to the 5 After reception 17, an update counter provided in the data carrier 1 will be incremented 21. The counter reading of this update counter will then be compared 22 with a preset value X. If the counter reading is equal to or greater than the value X, the updated file content 12a will be saved in the non-volatile memory area 4b, regardless of the attribute check 18 or the further check 20.

Durch diese Ausgestaltung ist es möglich, jedes x-te Update einer Datei 10 abzulegen.This design makes it possible to store every x-th update of a file 10.

Dieser Aktualisierungszähler kann alternativ inkrementiert werden, wenn feststeht, dass der aktualisierte Dateiinhalt 12a nur im RAM 3 gespeichert wird.This update counter can alternatively be incremented if it is determined that the updated file content 12a is only stored in RAM 3.

Alternativ und nicht dargestellt, wird ein Aktualisierungszählerstand zu dem Zeitpunkt mit empfangen, wenn der aktualisierte Dateiinhalt 12a empfangen wird. Anhand des mitgelieferten Zählerstands wird der Vergleich 22 durchgeführt und entschieden, ob der Dateiinhalt im flüchtigen Speicherbereich 3 oder im nichtflüchtigen Speicherbereich 4 gespeichert wird.Alternatively and not shown, an update counter reading is also received at the time when the updated file content 12a is received. The comparison 22 is carried out on the basis of the counter reading provided and a decision is made as to whether the file content is to be stored in the volatile memory area 3 or in the non-volatile memory area 4.

Ebenfalls ist es denkbar, dass der Dateideskriptor 11 eine Kennzeichnung über die Dateiversion 16 aufweist und mit dem Empfang 17 die aktuelle Version mitgeteilt wird. Anhand der Version 16 der Datei 10 wird entschieden, ob der Dateiinhalt im flüchtigen Speicherbereich 3 oder im nichtflüchtigen Speicherbereich 4 gespeichert wird.It is also conceivable that the file descriptor 11 has an identification of the file version 16 and the current version is communicated upon receipt 17. Based on the version 16 of the file 10, a decision is made as to whether the file content is stored in the volatile memory area 3 or in the non-volatile memory area 4.

Insbesondere und hier nicht weiter dargestellt, erfolgt die Aktualisierung im nichtflüchtigen Speicherbereich 4b auf jeden Fall, wenn die erste Aktualisierung der Datei 10 empfangen wurde, da diese für den korrekten Betrieb des Datenträgers 1, des Endgeräts 5 und der entfernten Mobilfunkinstanz 7 notwendig sind sein.In particular, and not further shown here, the update in the non-volatile memory area 4b takes place in any case when the first update of the file 10 has been received, since these are necessary for the correct operation of the data carrier 1, the terminal 5 and the remote mobile radio instance 7.

In einer in den Figuren nicht dargestellten weiteren Ausgestaltung wird der empfangene aktualisierte Dateiinhalt 12a im nichtflüchtigen Speicherbereich 4b abgespeichert, wenn sich der Dateiinhalt 12a vom ursprünglichen Dateiinhalt 12b stark unterscheidet. Am Beispiel der EF Loci wäre ein Indikator für diese starke Unterscheidung, wenn ein anderer MCC (Mobile Country Code) oder ein anderer MNC (Mobile Network Code) im LAI-Feld (Location Area Identity) der aktualisierten EF Loci anstelle der ursprünglichen EF Loci befindet.In a further embodiment not shown in the figures, the received updated file content 12a is stored in the non-volatile memory area 4b if the file content 12a differs greatly from the original file content 12b. Using the EF Loci as an example, an indicator of this strong difference would be if a different MCC (Mobile Country Code) or a different MNC (Mobile Network Code) is located in the LAI field (Location Area Identity) of the updated EF Loci instead of the original EF Loci.

BezugszeichenlisteList of reference symbols

11
Tragbarer Datenträger; SIMPortable data storage device; SIM
22
Integrierter SchaltkreisIntegrated circuit
33
Flüchtiger Speicherbereich, RAMVolatile memory area, RAM
44
Nichtflüchtiger SpeicherbereichNon-volatile memory area
4a4a
Nichtflüchtiger einmalbeschreibbarer Speicher ROMNon-volatile write-once memory ROM
4b4b
Nichtflüchtiger mehrfachbeschreibbarer Speicher, EEPROM, FLASHNon-volatile rewritable memory, EEPROM, FLASH
55
EndgerätEnd device
5a5a
Interner EndgeräteschaltkreisInternal terminal circuit
66
Mobilfunkverbindung, OTAMobile connection, OTA
77
Mobilfunkinstanz,Mobile phone instance,
7a7a
AktualisierungsserverUpdate server
88
DateisystemFile system
99
Verzeichnis Master File (MF), Dedicated File (DF)Master File (MF), Dedicated File (DF) directory
1010
Datei, Elementary File (EF)File, Elementary File (EF)
1111
Datei-DeskriptorFile descriptor
1212
DateiinhaltFile content
12a12a
Aktualisierter DateiinhaltUpdated file content
12b12b
Ursprünglicher DateiinhaltOriginal file content
1313
Attribut der DateiAttribute of the file
1414
Teil des DateiinhaltsPart of the file content
1515
AktualisierungskommandoUpdate command
1616
DateiversionFile version
1717
Aktualisierung einer EF empfangenReceive an update of an EF
1818
Überprüfen des Attributs der EFChecking the EF attribute
1919
Speichern der EF in Abhängigkeit des Attributs der EFSaving the EF depending on the attribute of the EF
2020
Speichern der EF in Abhängigkeit des EFSaving the EF depending on the EF
2121
Inkrementieren des UpdatezählersIncrementing the update counter
2222
Vergleichen des Updatezählerstands mit voreingestelltem WertComparing the update counter value with the preset value

Claims (11)

Verfahren zum Speichern einer Datei (10) in einem tragbaren Datenträger (1), wobei die Datei (10) einen Dateideskriptor (11) und einen Dateiinhalt (12) aufweist mit den Verfahrensschritten: - Empfangen (17) eines Dateiinhalts (12) der Datei (10) während des Betriebs des Datenträgers (1) im Datenträger (1); und - Überprüfen (18) eines Attributs (13) der Datei (10), deren Dateiinhalt (12) empfangen wurde, durch den Datenträger (1); dadurch gekennzeichnet, dass der Dateiinhalt (12) in einem flüchtigen Speicherbereich (3) des Datenträgers (1) zur Verwendung während dieses Betriebs des Datenträgers (1) gespeichert wird, wenn die Datei (10) ein bestimmtes Attribut (13) aufweist; - wobei die Datei (10) ein Elementary File eines Dateisystems (8) einer SIM-Karte ist und das bestimmte Attribut (13) das „High Update Activity“ Attribut ist; - wobei der Datenträger (1) ein Teilnehmeridentifikationsmodul für ein Mobilfunknetz (6) ist, dessen Aufbau und Betreiben in der Spezifikation ETSI 3GPP TS 11.11/51.011 oder der ETSI 3GPP TS 31.102 definiert ist.Method for storing a file (10) in a portable data carrier (1), the file (10) having a file descriptor (11) and a file content (12), comprising the method steps: - receiving (17) a file content (12) of the file (10) during operation of the data carrier (1) in the data carrier (1); and - checking (18) an attribute (13) of the file (10) whose file content (12) was received by the data carrier (1); characterized in that the file content (12) is stored in a volatile memory area (3) of the data carrier (1) for use during this operation of the data carrier (1) if the file (10) has a specific attribute (13); - wherein the file (10) is an elementary file of a file system (8) of a SIM card and the specific attribute (13) is the "High Update Activity"attribute; - wherein the data carrier (1) is a subscriber identification module for a mobile radio network (6), the structure and operation of which is defined in the specification ETSI 3GPP TS 11.11/51.011 or ETSI 3GPP TS 31.102. Verfahren nach Anspruch 1, wobei der Dateiinhalt (12) ein aktualisierter Dateiinhalt (12a) ist und die Datei (10) mit einem ursprünglichen Dateiinhalt (12b) in einem nichtflüchtigen Speicherbereich (4b) des Datenträgers (1) abgelegt ist.Procedure according to Claim 1 , wherein the file content (12) is an updated file content (12a) and the file (10) with an original file content (12b) is stored in a non-volatile memory area (4b) of the data carrier (1). Verfahren nach Anspruch 2, wobei der aktualisierte Dateiinhalt (12a) ausschließlich in dem flüchtigen Speicherbereich (3) des Datenträgers (1) gespeichert wird, sodass der aktualisierte Dateiinhalt (12a) beim Deaktivieren des Datenträgers (1) ungesichert verworfen wird.Procedure according to Claim 2 , wherein the updated file content (12a) is stored exclusively in the volatile memory area (3) of the data carrier (1), so that the updated file content (12a) is discarded without being secured when the data carrier (1) is deactivated. Verfahren nach Anspruch 2 oder 3, wobei bei einer erneuten Inbetriebnahme des Datenträgers (1) der ursprüngliche Dateiinhalt (12b) der Datei (10) aus dem nichtflüchtigen Speicherbereich (4b) des Datenträgers (1) geladen wird.Procedure according to Claim 2 or 3 , wherein when the data carrier (1) is put into operation again, the original file content (12b) of the file (10) is loaded from the non-volatile memory area (4b) of the data carrier (1). Verfahren nach einem der vorhergehenden Ansprüche, wobei beim Überprüfen (18) des Attributs (13) auch der Name der Datei (10) überprüft wird.Method according to one of the preceding claims, wherein when checking (18) the attribute (13) the name of the file (10) is also checked. Verfahren nach einem der vorhergehenden Ansprüche, wobei im Datenträger (1) ein Aktualisierungszähler vorgesehen ist, der beim Empfang (17) des Dateiinhalts (12) inkrementiert (21) wird, wenn der aktualisierte Dateiinhalt (12a) nur im flüchtigen Speicherbereich (3) des Datenträgers (1) abgelegt wird.Method according to one of the preceding claims, wherein an update counter is provided in the data carrier (1), which is incremented (21) upon receipt (17) of the file content (12) if the updated file content (12a) is only stored in the volatile memory area (3) of the data carrier (1). Verfahren nach Anspruch 6, wobei der Zählerstand des Aktualisierungszählers mit einem voreingestellten Wert verglichen wird und wobei der aktualisierte Dateiinhalt (12a) unabhängig vom Attribut (13) der Datei (10) im nichtflüchtigen Speicherbereich (4b) gespeichert wird, wenn der Zählerstand den voreingestellten Wert überschreitet, wobei der ursprüngliche Dateiinhalt (12b) vom aktualisierten Dateiinhalt (12a) überschrieben wird.Procedure according to Claim 6 , wherein the count of the update counter is compared with a preset value and wherein the updated file content (12a) is stored in the non-volatile memory area (4b) regardless of the attribute (13) of the file (10) when the count exceeds the preset value, wherein the original file content (12b) is overwritten by the updated file content (12a). Verfahren nach einem der vorhergehenden Ansprüche, wobei der aktualisierte Dateiinhalt (12a) unabhängig vom Attribut (13) im nichtflüchtigen Speicherbereich (4b) gespeichert wird, wenn der ursprüngliche Dateiinhalt (12b) erstmalig aktualisiert wird.Method according to one of the preceding claims, wherein the updated file content (12a) is stored in the non-volatile memory area (4b) independently of the attribute (13) when the original file content (12b) is updated for the first time. Verfahren nach einem der vorhergehenden Ansprüche, wobei der aktualisierte Dateiinhalt (12a) mittels Over-the-Air Dienst (6) von einer entfernten Mobilfunkinstanz (7) oder durch eine Kommunikationsverbindung mit einem Endgerät (5) in dem Datenträger (1) empfangen wird.Method according to one of the preceding claims, wherein the updated file content (12a) is received by means of an over-the-air service (6) from a remote mobile radio instance (7) or through a communication connection with a terminal (5) in the data carrier (1). Computerprogrammprodukt, das direkt in einen flüchtigen oder nichtflüchtigen Speicher (3, 4b) eines Datenträgers (1) geladen wird und Softwarecodeabschnitte umfasst, mit denen die Verfahrensschritte gemäß einem der vorstehenden Verfahrensansprüche 1 bis 9 ausgeführt werden, wenn das Produkt auf dem Datenträger (1) abläuft.Computer program product which is loaded directly into a volatile or non-volatile memory (3, 4b) of a data carrier (1) and comprises software code sections with which the method steps according to one of the preceding methods claims 1 until 9 be executed when the product on the data carrier (1) expires. Tragbarer Datenträger (1), umfassend einen integrierten Halbleiterschaltkreis (2) mit: - einer Kommunikationsschnittstelle (I/O) zum Empfangen (17) eines aktualisierten Dateiinhalts (12a) einer Datei (10); - einem flüchtigen Speicherbereich (3) zum Speichern (19) des aktualisierten Dateiinhalts (12a); und - einem nichtflüchtigen Speicherbereich (4b) zum Speichern (19) eines ursprünglichen Dateiinhalts (12b) und eines Dateideskriptors (11) der Datei (10); - dadurch gekennzeichnet, dass der Datenträger weiterhin eine Überprüfungseinheit aufweist, die ein Attribut (13) der Datei (10) überprüft und der aktualisierte Dateiinhalt (12a) nur im flüchtigen Speicherbereich (3) zur Verwendung während eines Betriebs des Datenträgers (1) gespeichert wird, wenn die Datei (10) ein bestimmtes Attribut (13) aufweist; - wobei der integrierte Halbleiterschaltkreis (2) des Datenträgers (1) weiterhin umfasst: - einen Aktualisierungszähler, wobei der Aktualisierungszähler inkrementiert (21) wird, wenn der aktualisierte Dateiinhalt (12a) empfangen ist; - eine Vergleichseinheit, wobei die Vergleichseinheit den Zählerstand des Aktualisierungszählers mit einem voreingestellten Wert vergleicht; dadurch gekennzeichnet, dass der ursprüngliche Dateiinhalt (12b) im nichtflüchtigen Speicherbereich (4b) vom aktualisierten Dateiinhalt (12a) überschrieben wird, wenn der Vergleich der Vergleichseinheit ergibt, dass der Zählerstand gleich oder größer als der voreingestellte Wert ist.Portable data carrier (1) comprising an integrated semiconductor circuit (2) with: - a communication interface (I/O) for receiving (17) an updated file content (12a) of a file (10); - a volatile memory area (3) for storing (19) the updated file content (12a); and - a non-volatile memory area (4b) for storing (19) an original file content (12b) and a file descriptor (11) of the file (10); - characterized in that the data carrier further comprises a checking unit which checks an attribute (13) of the file (10) and the updated file content (12a) is only stored in the volatile memory area (3) for use during operation of the data carrier (1) if the file (10) has a certain attribute (13); - wherein the integrated semiconductor circuit (2) of the data carrier (1) further comprises: - an update counter, wherein the update counter is incremented (21) when the updated file content (12a) is received; - a comparison unit, wherein the comparison unit compares the count of the update counter with a preset value; characterized in that the original file content (12b) in the non-volatile memory area (4b) is overwritten by the updated file content (12a) if the comparison of the comparison unit shows that the counter reading is equal to or greater than the preset value.
DE102010054783.2A 2010-12-16 2010-12-16 Method for storing a file in a portable storage device Active DE102010054783B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102010054783.2A DE102010054783B4 (en) 2010-12-16 2010-12-16 Method for storing a file in a portable storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102010054783.2A DE102010054783B4 (en) 2010-12-16 2010-12-16 Method for storing a file in a portable storage device

Publications (2)

Publication Number Publication Date
DE102010054783A1 DE102010054783A1 (en) 2012-06-21
DE102010054783B4 true DE102010054783B4 (en) 2024-09-19

Family

ID=46512041

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102010054783.2A Active DE102010054783B4 (en) 2010-12-16 2010-12-16 Method for storing a file in a portable storage device

Country Status (1)

Country Link
DE (1) DE102010054783B4 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023280412A1 (en) 2021-07-08 2023-01-12 Cariad Se Electronic control unit, vehicle with an electronic control unit and method for updating an electronic control unit

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19960114A1 (en) 1999-12-08 2001-06-13 Heidenhain Gmbh Dr Johannes Method for storing data in a file of a data storage system
DE69427070T2 (en) 1993-12-10 2001-12-06 Toshiba Kawasaki Kk File management system for a memory card
DE69725677T2 (en) 1996-10-25 2004-08-05 Navigation Technologies Corp., Chicago Device and method for storing geographic data on a physical storage medium
DE102004013132B4 (en) 2004-03-17 2006-06-14 Siemens Ag Storage medium has data structure storing files with context information representing content of respective further file having file body which exhibits material reference to content of opened file

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69427070T2 (en) 1993-12-10 2001-12-06 Toshiba Kawasaki Kk File management system for a memory card
DE69725677T2 (en) 1996-10-25 2004-08-05 Navigation Technologies Corp., Chicago Device and method for storing geographic data on a physical storage medium
DE19960114A1 (en) 1999-12-08 2001-06-13 Heidenhain Gmbh Dr Johannes Method for storing data in a file of a data storage system
DE102004013132B4 (en) 2004-03-17 2006-06-14 Siemens Ag Storage medium has data structure storing files with context information representing content of respective further file having file body which exhibits material reference to content of opened file

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Festplattencache. In: Wikipedia, Die freie Enzyklopädie. Bearbeitungsstand: 09.07.2010. URL: https://de.wikipedia.org/w/index.php?title=Festplattencache&oldid=76495915 [abgerufen am 18.07.2023] *
https://de.wikipedia.org/w/index.php? title=Festplattencache&oldid=76495915 [abgerufen am 18.07.2023]
https://web.archive.org/web/20200806025823/http://www.t13.org/Docu ments/ UploadedDocuments/docs2008/D1699r6a-ATA8-ACS.pdf [abgerufen am 18.07.2023]
Information technology - AT Attachment 8 - ATA/ATAPI Command Set (ATA8-ACS). T13/1699-D, revision 6a, American National Standards Institute, Inc. Bearbeitungsstand: 06.09.2008. Archived from the original (PDF) on 6 August 2020. Retrieved 14 December 2020. URL: https://web.archive.org/web/20200806025823/http://www.t13.org/Documents/UploadedDocuments/docs2008/D1699r6a-ATA8-ACS.pdf [abgerufen am 18.07.2023] *

Also Published As

Publication number Publication date
DE102010054783A1 (en) 2012-06-21

Similar Documents

Publication Publication Date Title
WO2014063796A1 (en) Method for incorporating subscriber identity data into a subscriber identity module
DE102012015573A1 (en) Method for activating an operating system in a security module
EP1196902B1 (en) Method for operating a portable data carrier configured for executing reloadable functional programs
EP3132626A1 (en) Method and device for operating a mobile terminal in a mobile communication network
EP2795934B1 (en) Method for communicating with an application on a portable data storage medium, and such a portable data storage medium
DE60224937T2 (en) METHOD AND ARRANGEMENT FOR ASSOCIATING APPROVED APPLET FILES
DE102010054783B4 (en) Method for storing a file in a portable storage device
EP2817804B1 (en) Extension of the operating time of a security element
EP2524333B1 (en) Method for providing a secure counter on a terminal
WO2011033030A1 (en) Method for installing and configuring applications on a portable data carrier
EP2659349B1 (en) Method for resetting a file system
DE102008056710A1 (en) Portable data medium e.g. smart card, operating method for e.g. mobile telephone, involves detecting output of warning for user via terminal by data medium in case that rate of wear exceeds predetermined threshold
EP2012280A2 (en) Portable data carrier and method for personalising a portable data carrier
EP2747085B1 (en) Method for operating a safety element as well as such a safety element
EP3186711B1 (en) Memory management for a token
DE102005007581A1 (en) Method of personalizing a portable data carrier
EP3175383B1 (en) Method for changing the control data of a chip card, and chip card system
DE102021000077A1 (en) Integrated subscriber identity module with anti-rollback mechanism
EP2879057B1 (en) Method for operating a storage system and such a storage system
DE102021005325A1 (en) Method for the computer-aided generation of a memory image for a secure element
EP2573677B1 (en) Data exchange between applications
DE102021004912A1 (en) UNIVERSAL INTEGRATED CHIP CARD, UICC, FOR MANAGING PROFILES, AND PROCEDURES
EP1968073B1 (en) Method for writing data onto the memory of a portable data carrier
EP2172913A1 (en) Personalisation of portable data carriers
DE102020002658A1 (en) Method for operating a Universal Integrated Chip Card, UICC and UICC

Legal Events

Date Code Title Description
R163 Identified publications notified
R081 Change of applicant/patentee

Owner name: GIESECKE+DEVRIENT MOBILE SECURITY GMBH, DE

Free format text: FORMER OWNER: GIESECKE & DEVRIENT GMBH, 81677 MUENCHEN, DE

R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: GIESECKE+DEVRIENT EPAYMENTS GMBH, DE

Free format text: FORMER OWNER: GIESECKE+DEVRIENT MOBILE SECURITY GMBH, 81677 MUENCHEN, DE

Owner name: GIESECKE+DEVRIENT MOBILE SECURITY GERMANY GMBH, DE

Free format text: FORMER OWNER: GIESECKE+DEVRIENT MOBILE SECURITY GMBH, 81677 MUENCHEN, DE

R016 Response to examination communication
R081 Change of applicant/patentee

Owner name: GIESECKE+DEVRIENT MOBILE SECURITY GERMANY GMBH, DE

Free format text: FORMER OWNER: GIESECKE+DEVRIENT EPAYMENTS GMBH, 81677 MUENCHEN, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final