DE69609256T2 - Sicheres aktualisierungsverfahren für eeprom - Google Patents

Sicheres aktualisierungsverfahren für eeprom

Info

Publication number
DE69609256T2
DE69609256T2 DE69609256T DE69609256T DE69609256T2 DE 69609256 T2 DE69609256 T2 DE 69609256T2 DE 69609256 T DE69609256 T DE 69609256T DE 69609256 T DE69609256 T DE 69609256T DE 69609256 T2 DE69609256 T2 DE 69609256T2
Authority
DE
Germany
Prior art keywords
zone
data
backup
indicator
memory
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE69609256T
Other languages
English (en)
Other versions
DE69609256D1 (de
Inventor
Anne Laget
Jean-Marie Valade
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.)
Gemplus SA
Original Assignee
Gemplus SA
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 Gemplus SA filed Critical Gemplus SA
Application granted granted Critical
Publication of DE69609256D1 publication Critical patent/DE69609256D1/de
Publication of DE69609256T2 publication Critical patent/DE69609256T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/0701Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips at least one of the integrated circuit chips comprising an arrangement for power management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/082Features insuring the integrity of the data on or in the card
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/102External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
    • G11C16/105Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

  • Die Erfindung betrifft nicht-flüchtige Speicher, wie EEPROM- Speicher, und die damit in Beziehung stehenden Schaltungen, welche es gestatten auf sichere Weise die in den Speichern enthaltenen Daten zu aktualisieren.
  • Die Aktualisierung besteht darin an einer bestimmten Adresse des Speichers ein altes Datum durch ein neues Datum zu ersetzen. Dieser Vorgang dauert eine bestimmte Weile. Es kann geschehen, dass zufällig während der Aktualisierung die Versorgungsspannung des Speichers unterbrochen wird. Wenn dies der Fall ist, verliert man gleichzeitig das alte Datum und das neue.
  • Wenn die aufzuzeichnenden Daten "sensible" Daten sind, d. h. Daten deren Aufbewahrung bei der betrachteten Anwendung kritisch sind, ist diese Situation nicht hinnehmbar.
  • Ein Anwendungsbeispiel ist das folgende: der Speicher ist ein Chipkarten-Speicher, die Daten stellen einen auf der Karte aufgezeichneten ökonomischen Wert dar, diese Daten sind sensibel, und sie werden aktualisiert wenn die Karte in einem Kartenleser verwendet wird, um Produkte oder Dienstleistungen zu erhalten. In Falle einer unzeitige Herausnahme der Karte aus dem Leser während des Vorgangs der Aktualisierung, besteht das Risiko, dass die Daten, welche den Restwert der Karte darstellen, verloren gehen, zum Nachteil des Besitzers der Karte oder des Leistungsgebers der Produkte oder Dienstleistungen.
  • Um diese Situation zu vermeiden, sind Mechanismen zur Speicheraktualisierung vorgeschlagen worden, bei welchen jede Aktualisierung mit einer Sicherungsoperation des alten Datums an einem anderen Ort des nicht-flüchtigen Speichers beginnt, bevor das neue Datum an der gewünschten Adresse aktualisiert wird. Wenn der Aktualisierungs-Vorgang falsch abläuft, behält man zumindest den alten Wert des Datums.
  • Eine Schwierigkeit bei der Verwirklichung solcher Systeme besteht in der Verwaltung der Speicherräume, welche verwendet werden müssen, um das alte Datum zu sichern. Ein nichtflüchtiger Zeiger bzw. Pointer (Register des EEPROM-Speichers) wird im allgemeinen verwendet, um den Ort der Speicherzone anzugeben, welche die gesicherte Information enthält.
  • Die internationale Anmeldung der gleichen Anmelderin, welche unter der Nr. WO92/04716 veröffentlicht wurde, offenbart ein Verfahren zur Aktualisierung eines Speichers in einer Chipkarte, ohne Anwendung eines Sicherungsspeichers.
  • Man kann unterdessen Bezug nehmen auf den Stand der Technik, der durch das französische Patent gebildet wird, welches unter der Nr. 2665791 veröffentlicht wurde, bei welchem man gleichfalls einen Adress-Zeiger verwendet, um die Adresse der Zone anzugeben, die den gegenwärtigen Wert der Information enthält.
  • Dieses unter der Nr. 2665791 veröffentlichte französische Patent veranschaulicht die Schwierigkeit der Verwaltung des Speicherraums für die Sicherung. Die in diesem Patent vorgeschlagene Lösung besteht darin, für jede zu speichernde Information N Speicherzonen zu verwenden, welche die Sicherung von N aufeinanderfolgenden Werten dieser Information gestatten. Eine zusätzliche Zone (Zeiger) wird verwendet, um den gegenwärtigen Wert der Information zu kennzeichnen bzw. zu markieren.
  • Bei jeder Aktualisierung modifiziert man den Zeigerwert. In dem Fall, wo nur der alte Wert und der gegenwärtige Wert aufbewahrt werden, sind zwei Zonen reserviert um sie zu speichern, und der Zeiger geht alternativ vom Zustand 1 in den Zustand 0, um anzuzeigen in welcher der zwei Zonen sich der gegenwärtige Wert befindet.
  • Das vorgeschlagene Aktualisierungs-Verfahren ist nicht vollkommen zufriedenstellend und birgt Fehlfunktions-Risiken. Diese Risiken gehen insbesondere auf eine intensive Benutzung der Speicherzellen zurück, welche den Zeiger (oder die Indikatoren in dem Fall der anderen zitierten Verfahren) bilden. Diese Zellen unterliegen einer Alterung und einem Verlust der Funktionsfähigkeit wenn die Löschungen und Programmierungen zu häufig sind.
  • Die vorliegende Erfindung versucht so weit wie möglich die Risiken der Fehlfunktion zu beseitigen, und folglich die Risiken eines Verlusts von sensiblen Daten bei der Aktualisierung dieser Daten.
  • Hierfür wird erfindungsgemäß ein Aktualisierungs-Verfahren vorgeschlagen, welches keinen physischen Zeiger umfasst und so entworfen ist, dass die Aktualisierungs-Vorgänge die unterschiedlichen Speicher, welche verwendet werden, um die Sicherung von sensiblen Daten sicherzustellen, so wenig wie möglich beanspruchen.
  • Es wird folglich ein Verfahren zur Aktualisierung eines sensiblen Datums in einem nicht-flüchtigen Datenspeicher vorgeschlagen, umfassend Vorgänge, die darin bestehen:
  • - den alten Wert des Datums in einem nicht-flüchtigen Sicherungsspeicher zu speichern;
  • - einen Sicherungsindikator zu aktivieren, um anzuzeigen, dass ein Datum gerade geschützt wurde, und dass eine Modifikation von sensiblen Daten abläuft;
  • - das sensible Datum in dem Hauptspeicher zu modifizieren;
  • - und den Indikator zu deaktivieren wenn die Modifikation des Datums korrekt abgelaufen ist,
  • wobei dieses Verfahren dadurch gekennzeichnet ist, dass
  • - der Sicherungsspeicher in Speicherzonen aufgeteilt ist;
  • - eine Speicherzone, welche jeweils verschieden ist von der vorherigen, bei jeder neuen Aktualisierung verwendet wird, um das alte Datum in dem Sicherungsspeicher zu sichern;
  • - mindestens ein Feld der Sicherungsspeicherzonen, welches Beschreibungsfeld genannt wird, verwendet wird um die Sicherungsspeicherzone zu kennzeichnen bzw. zu markieren, welche verwendet werden muss im Laufe eines Aktualisierungsvorgangs.
  • Vorzugsweise beginnt der Aktualisierungsvorgang mit der Suche, in dem Sicherungsspeicher, nach der ersten Speicherzone, welche ein Beschreibungsfeld umfasst, das einen charakteristischen Wert hat (in der Praxis wird dies ein vollkommen gelöschtes Feld sein), und der Sicherungsvorgang des alten Datums umfasst die Modifikation des Beschreibungsfelds der Sicherungszone des alten Datums und umfasst auch das Einschreiben des charakteristischen Werts in das Beschreibungsfeld der ersten Speicherzone, welche unmittelbar dieser Zone folgt.
  • Die Aktualisierung eines sensiblen Datum umfasst in der Praxis das systematische Lesen der Beschreibungsfelder des Sicherungsspeichers bis zum Auffinden einer ersten Zone, bei welcher das Beschreibungsfeld gelöscht ist, die Sicherung des alten Werts des zu aktualisierenden sensiblen Datums in dieser Zone, das Löschen einer zweiten Zone, welcher der ersten Zone folgt, im Hinblick auf die nächste Sicherung, die Aktivierung eines Indikators für die erste Zone, welcher anzeigt, dass in dieser Zone Daten geschützt worden sind, die Modifikation des sensiblen Datums in dem Hauptspeicher, und die Deaktivierung des Indikators wenn die Modifikation normal abgelaufen ist.
  • Es wird nicht immer die gleiche Speicherzone für die Sicherung der sensiblen Daten verwendet. Die verschiedenen verfügbaren Zonen werden nacheinander verwendet. Wenn alle Zonen verwendet worden sind, kann man in Betracht ziehen, bei der ersten wieder anzufangen, d. h. wenn die letzte Zone verwendet wird, schreitet man mit dem Löschen der ersten fort. Es gibt keinen nicht-flüchtigen Zeiger, um anzuzeigen welche Zone in einem gegebenen Augenblick verwendet werden muss, sondern die Beobachtung des Inhalts der Zonen bestimmt die zu verwendende Zone. Folglich vermeidet man nicht nur vollständig die Abnutzungsrisiken und folglich Fehler, welche auf häufiges Schreiben in einem Zeiger zurückzuführen sind, sondern man minimiert auch die Beanspruchung der Sicherungszonen, indem aufeinander folgend in N unterschiedlichen Zonen geschrieben wird, und indem eine Zone erst dann wieder beschrieben wird, wenn alle Zonen verwendet worden sind.
  • Der Sicherungsindikator ist vorzugsweise Teil der Sicherungszone, in welcher ein alter Wert eines sensiblen Datums gesichert wird.
  • Wenn der Speicher wieder unter Spannung gesetzt wird, wird ein Programm zur systematischen Verifizierung ausgeführt: man sucht nach dem Vorhandensein eines aktivierten Indikators in dem Sicherungsspeicher und man schreibt in den Hauptspeicher das geschützte alte Datum in die durch diesen aktivierten Indikator angegebene Zone.
  • In bestimmten Fällen versucht man ein zusammenhängendes Ensemble von mehreren sensiblen Daten zu aktualisieren, welche nicht getrennt aktualisiert werden dürfen, aufgrund der Gefahr den Zusammenhang des Kontexts der Anwendung zu verlieren. Dennoch gestattet der Speicher Lösch- und Schreibvorgänge gleichzeitig nur für ein Datum.
  • Die Erfindung ist auch in diesem Fall anwendbar, auf die folgende Weise: jedes sensible Datum wird in einer jeweiligen Zone gesichert, wobei jedes mal das Beschreibungsfeld der folgenden Zone gelöscht wird und der Sicherungsindikator der Zone, welche die geschützten Daten enthält, aktiviert wird, danach wird das entsprechende sensible Datum modifiziert, und schließlich nachdem diese Operationen für das letzte Datum durchgeführt worden ist, das in einer Zone des Rangs R geschützt ist, wobei die folgende Zone des Rangs R + 1 gelöscht wurde, aktiviert man einen zusätzlichen Indikator, welcher der Indikator der Zone des Rangs R + 1 ist, und schließlich deaktiviert man nacheinander die vorher aktivierten Indikatoren, beginnend mit dem letzten, aufsteigend in Richtung der vorangegangenen, und abschließend mit dem zusätzlichen Indikator.
  • Dieses gestattet es, das Ensemble des alten Kontexts zu behalten so lange noch nicht alle neuen Daten modifiziert sind, und insbesondere die Sicherungsindikatoren nicht alle auf null zurückgestellt worden sind.
  • In einer besonderen Ausführung der Erfindung kann man mit dem Sicherungsspeicher ein Gültigkeitsregister in Beziehung setzen, bei welchem der Inhalt definiert, ob die verschiedenen Sicherungszonen funktionsfähig sind. Wenn Zonen nicht funktionsfähig werden (was man bei jeder Programmierung erfasst indem man den Inhalt, den man programmieren möchte, mit dem Inhalt vergleicht, der tatsächlich programmiert wurde), gibt man dies an im Gültigkeitsregister. In diesem Fall, wenn man die folgende Sicherungszone im Hinblick auf zukünftige Aktualisierungen vorbereitet (Löschung ihres Beschreibungsfelds), ist die betrachtete folgende Zone die folgende gültige Zone, d. h. man betrachtet eine Zone, deren Gültigkeitsregister anzeigt, dass sie nicht verwendet werden darf, nicht als folgende Zone.
  • Die Erfindung ist insbesondere anwendbar auf Chipkarten, welche einen Mikroprozessor und einen nicht-flüchtigen Hauptspeicher (im allgemeinen ein EEPROM) umfassen. Die Karte umfasst folglich ein Systemprogramm, das den Ablauf der Aktualisierungsvorgänge von sensiblen Daten in Übereinstimmung mit dem oben definierten Verfahren definiert, und ein Wiederherstellungsprogramm von Daten beim Wiederanlegen von Spannung, wobei dieses Programm die systematische Verifizierung der Sicherungsindikatoren umfasst, das Neueinschreiben von geschützten Daten in Abhängigkeit vom Zustand der Indikatoren, und Deaktivierung der aktivierten Indikatoren.
  • Weitere Kennzeichen und Vorteile der Erfindung ergeben sich bei der Lektüre der folgenden ausführlichen Beschreibung, welche unter Bezugnahme auf die Zeichnungen gegeben wird, in welchen:
  • Fig. 1 eine Schaltung einer Speicherkarte mit Mikroprozessor darstellt, bei welcher die Erfindung angewendet werden kann;
  • Fig. 2 die Organisation des Speichers darstellt, der zu Sicherung der sensiblen Daten vor der Aktualisierung dient;
  • Fig. 3 ein Organigramm des Aktualisierungsverfahrens nach der Erfindung darstellt, in einer ersten Ausführung;
  • Fig. 4 ein Organigramm bei einer anderen Ausführung darstellt, welche eine zusammenhängende bzw. kohärente Aktualisierung einer Gruppe von Daten gestattet.
  • Nachdem die Erfindung hauptsächlich auf Chipkarten anwendbar ist, wird sie in diesem Kontext beschrieben. Außerdem wird die Erfindung vorzugsweise in einer Karte mit Mikroprozessor verwirklicht, die nicht nur einen nicht-flüchtigen Speicher zur Speicherung der variablen Daten umfasst, sondern auch einen Mikroprozessor zur Verwaltung des Datenaustauschs zwischen dem Inneren und Äußeren der Karte. Man versteht unterdessen, dass die Aufgaben, welche im folgenden beschrieben werden, auch in einer Karte ohne Mikroprozessor ausgeführt werden könnten, vorausgesetzt, dass ein geeigneter verkabelter Automat auf der Karte vorgesehen ist, um diese Aufgabe auszuführen.
  • Fig. 1 stellt eine Chipkarte mit Mikroprozessor dar. Der Mikroprozessor MP ist über einen Bus B mit verschiedenen Speichern der Karte verbunden, und mit Eingangs/Ausgangs- Anschlüssen der Karte. Ein I/O-Anschluss ist in Fig. 1 dargestellt.
  • Unter den Speichern gibt es allgemein:
  • - einen nicht-flüchtigen Hauptspeicher MNVP, welcher elektrisch programmierbar und löschbar ist, für die Speicherung von Daten, die bei der Anwendung der Chipkarten nützlich sind. Diese Daten werden im Verlauf aufeinanderfolgender Verwendungen der Karte modifiziert, und bestimmte Daten sind sensible Daten, welche nicht verloren gehen dürfen bei einer unzeitigen Unterbrechung während der Aktualisierung dieser Daten;
  • - einen flüchtigen Arbeitsspeicher RAM, wie man ihn in allen Mikroprozessor-Systemen findet, zur Speicherung der notwendigen Zwischendaten im Verlauf der Verwendung der Karte;
  • - einen Festspeicher ROM, welcher Systemprogramme enthält, die den Betrieb der Karte gestatten, wobei diese Programme sich von einer Verwendung zur nächsten der Karte nicht verändern;
  • - einen nicht-flüchtigen Sicherungsspeicher MNVS, welcher elektrisch programmierbar und löschbar ist, der notwendig ist zur Aufbewahrung des alten Werts eines Datums während der Aktualisierung dieses Datums im Hauptspeicher.
  • Zur Vereinfachung ist dieser letzte Speicher als vom Hauptspeicher MNVP getrennter Speicher dargestellt. Es ist unterdessen verständlich, dass er physisch durch einen zu diesem Zweck reservierten Abschnitt des Hauptspeichers gebildet sein kann. In diesem Fall ist eine bestimmte Anzahl von Adressen für den Sicherungsspeicher MNVS reserviert. Die einzige praktische Einschränkung ist, dass diese Adressen auf fortlaufende Weise aufeinander folgen müssen, damit der Inhalt des Speichers MNVS auf einfache Weise in unveränderlicher Reihenfolge sequentiell untersucht werden kann.
  • In Fig. 1 ist ebenfalls ein fakultatives nicht-flüchtiges Register RV dargestellt, welches in folgenden als Gültigkeitsregister bezeichnet wird, dessen Zweck später beschrieben wird. Es kann ebenfalls Bestandteil des Speichers MNVP oder des Speichers MNVS sein.
  • Man erinnere sich, dass die Aufgabe der Erfindung darin besteht jedes sensible Datum des Speichers MNVP aktualisieren zu können, unter Aufbewahrung des alten Datums, um dieses in dem Fall wieder verwenden zu können, dass der Ablauf der Aktualisierung unzeitig vor dem Ende ihrer Ausführung unterbrochen wird.
  • Die Organisation des Sicherungsspeichers MNVS, welche in der Fig. 2 dargestellt ist, ist wie folgt: er umfasst N Sicherungszonen, jede Zone gestattet die Sicherung eines sensiblen Datums, die Zonen werden nacheinander verwendet, d. h. wenn eine Zone verwendet wurde für eine Sicherung, wird eine andere Zone verwendet für die folgende Sicherung, und wenn alle Zonen verwendet worden sind, kann man zyklisch von neuem beginnen, aber man könnte auch voraussehen, dass die Karte nicht länger verwendbar ist nach Verbrauch der N Zonen, oder auch, dass die Aktualisierung nicht länger gesichert ist.
  • Um die Sicherung eines sensiblen Datums vor der Aktualisierung sicherzustellen, umfasst jede Sicherungszone mehrere Felder. Die Felder einer Zone sind vorzugsweise die folgenden:
  • - ein Feld F1 des Sicherungsindikators (1 Bit kann genügen), welches anzeigt, dass ein Datum gerade geschützt wurde und wiederhergestellt werden kann, wenn die Aktualisierung nicht bis zum Ende korrekt abgelaufen ist;
  • - ein Feld F2, welches die Zone beschreibt, das Informationen über die Daten des folgenden Felds oder der folgenden Felder gibt: Datenlängen, Verifizierungskodes, usw.; allgemeiner alle Deskriptoren, welche notwendig sind für die Interpretation der in der Zone gespeicherten Daten und für die Kontrolle der Vollständigkeit dieser Daten. In einer besonderen Ausführung wird vorgesehen, dass das Beschreibungsfeld außerdem die Ursprungsadresse der in der Zone geschützten Daten umfasst. Man muss unterdessen verstehen, dass diese Adresse auch in einem anderen Feld als dem Beschreibungsfeld sein könnte. Die Ursprungsadresse kann sich insbesondere in dem nachfolgend beschriebenen Feld (Datenfeld) finden, vorausgesetzt, dass das Beschreibungsfeld die Unterscheidung zwischen dem geschützten Datum und der Ursprungsadresse dieses Datums gestattet;
  • - ein Feld F3 von gesicherten Daten. Im Prinzip ein einziges Feld, welches abhängig von der Maximalgröße der Daten dimensioniert ist, die möglicherweise geschützt werden.
  • Das Beschreibungsfeld F2 ist in einem Beispiel dargestellt, in welchem es vier Unterfelder umfasst:
  • - CHKS: in sieben Bits kodierte Information, welche es gestattet, die Vollständigkeit bzw. Integrität der in der Zone enthaltenen Daten zu identifizieren. Dies ist zum Beispiel die Summe der Bits, die einerseits in den Unterfeldern gespeichert sind, die dem Beschreibungsfeld folgen, und andererseits in dem Datenfeld gespeichert sind;
  • - LNG: Oktett, welches die tatsächliche Länge der gesicherten Daten kodiert;
  • - ADh, ADb: Adress-Oktetts (schwere Gewichte und schwache Gewichte) des Ursprungs der gesicherten Daten; diese Adresse ist notwendig, um die gesicherten Daten in dem Fall wiederherzustellen, dass die Aktualisierung nicht korrekt abgelaufen ist.
  • Verfahren zur Aktualisierung von sensiblen Daten
  • Das Verfahren zur Aktualisierung ist im Organigramm der Fig. 3 dargestellt, für den Fall, dass die Sicherung der Daten ganz und gar individuell ist, d. h. es nicht notwendig ist gleichzeitig den Zusammenhang bzw. die Kohärenz von mehreren Daten sicherzustellen.
  • Das Verfahren umfasst in dem Fall, dass das zu schützende Datum sensibel ist, die folgenden Schritte:
  • - systematisches Absuchen des Speichers MNVS, immer in der gleichen Reihenfolge, um nach einer Zone zu suchen, deren Beschreibungsfeld einen vordefinierten charakteristischen Wert hat. Vorzugsweise ist dieser charakteristische Wert 0 (alle Bits auf 0), was einer vollständigen Löschung des Beschreibungsfelds entspricht. Es sind im Prinzip die Systemprogramme im ROM-Speicher, welche die Reihenfolge bestimmen, mit welcher der Speicher MNVS abgesucht wird. R (zwischen 1 und N) sei der Rang der ersten Zone, welche mit einem gelöschtem Beschreibungsfeld gefunden wird;
  • - Schreiben des alten Werts des zu aktualisierenden Datums in die Zone des Rangs R, um es zu schützen. Das Datum wird in das Datenfeld geschrieben. Das Beschreibungsfeld wird in der Folge modifiziert. Die Ursprungsadresse des Datums wird in dem Beschreibungsfeld geschützt. Die übrigen Daten zur Verifizierung der Vollständigkeit oder zur Interpretation werden in das Beschreibungsfeld geschrieben. Dem Schreiben in die Sicherungszone folgt vorzugsweise unmittelbar eine Verifizierung des Geschriebenen;
  • - Löschen des Beschreibungsfelds der folgenden Zone, vom Rang R + 1, im Hinblick auf die nächste Sicherung, oder allgemeiner die Programmierung des charakteristischen Wertes in dieses Feld, wenn der charakteristische Wert nicht null ist. Zumindest wird das Beschreibungsfeld gelöscht, es kann aber auch vorgesehen sein, das Datenfeld dieser Zone vom Rang R + 1 zu löschen;
  • - Aktivieren des Sicherungsindikators (Feld F1 der Zone vom Rang R). Im folgenden wird angenommen, dass der Indikator nur ein Bit umfasst, der Anfangszustand der logische Zustand 0 ist, und die Aktivierung darin besteht auf den Zustand 1 zu gehen. Die Aktivierung des Indikators einer Zone stellt das Vorhandensein von geschützten Daten in dieser Zone dar, welche im Falle eines Problems wieder verwendbar sind;
  • - effektive Aktualisierung des sensiblen Datums, d. h. Modifikation dieses Datums im Hauptspeicher MNVP. Die Modifikation enthält im Prinzip ein unmittelbares Lesen des modifizierten Datums, zum Zwecke der Verifizierung;
  • - Deaktivieren des Aktivierungsindikators (Rückkehr in den Zustand 0), wenn der Ablauf des Vorgangs von Anfang bis Ende normal war.
  • In dem Fall, wo der Ablauf normal war, kann diese Karte aus dem Leser herausgenommen werden und normal wiederverwendet werden. Sie enthält die aktualisierten Daten.
  • Die folgenden Paragraphen behandeln Fälle der anormalen Unterbrechung der Prozedur und der Wiederherstellung des alten Datums. Die Unterbrechung ist in der Praxis eine Unterbrechung der Versorgung, insbesondere durch unzeitiges Herausziehen der Karte.
  • Wiederherstellung im Fall eine anomalen Unterbrechung
  • Wenn die anomale Unterbrechung stattgefunden hat bevor der Aktivierungsindikator auf 1 gestellt wurde, muss überhaupt keine besondere Operation durchgeführt werden nach Wiederanlegung von Spannung. Tatsächlich wurde noch nicht damit begonnen die Daten zu aktualisieren. Gewiss ist es möglich, dass man begonnen hat in eine Sicherungszone zu schreiben, man hat aber nicht die Daten des Hauptspeichers MNVP geändert. Alles läuft so ab, als hätte man die Karte gar nicht benutzt. Sie enthält die Daten, die sie bereits vorher hatte. Diese Daten sind nicht verlorengegangen.
  • Wenn dagegen die anomale Unterbrechung stattfindet während der Aktivierungsindikator auf 1 steht, bedeutet dies, dass die Aktualisierung im Hauptspeicher begonnen hat. Man weiß also nicht, ob der Hauptspeicher das alte Datum oder das neue Datum enthält, oder irgendeine nutzlose Information, zum Beispiel eine leere Zone, die sich durch die vollständige Löschung des Datums vor dem Neuschreiben ergibt.
  • Deshalb verifiziert das Systemprogramm (im ROM-Speicher) der Karte systematisch den Zustand der Aktivierungsfelder des Speichers MNVS bei jedem Wiederanlegen von Spannung an die Karte. Wenn ein Indikator für eine Zone auf 1 gefunden wird, wird der Inhalt des Datenfelds dieser Zone wieder in den Hauptspeicher geschrieben, an der Adresse, welche in dem entsprechenden Beschreibungsfeld angegeben ist. Danach wird der Aktivierungsindikator auf 0 zurückgesetzt. Der Hauptspeicher befindet sich wieder in dem Zustand, den er vor dem misslungenen Aktualisierungsversuch hatte.
  • Wenn schließlich die unzeitige Unterbrechung geschieht nachdem der Aktivierungsindikator auf 0 zurückgesetzt worden ist, hat diese Unterbrechung keine Wirkung: die Aktualisierung wurde vollständig durchgeführt, und es nicht notwendig eine Wiederherstellung der alten Daten vorzusehen.
  • Ungültigmachung von bestimmten Sicherungszonen
  • Vorzugsweise wird vorgesehen, dass bestimmte Zonen des Sicherungsspeichers MNVS ungültig gemacht werden können, wenn sie als defekt erkannt werden.
  • Dies kann z. B. der Fall sein, wenn sie zyklisch benutzt werden und folglich einer gewissen Alterung unterliegen. Diese als defekt erkannten Zonen dürfen nicht mehr für die Sicherung von sensiblen Daten verwendet werden.
  • Hierfür wird beim Erkennen eines Schreibproblems oder Löschproblems in einer Sicherungszone, die Zone mittels eines nicht-flüchtigen Registers, das Gültigkeitsregister der Sicherungszonen genannt wird (Register RV in Fig. 1), außer Dienst genommen. Die Existenz eines Problems wird im Prinzip erkannt durch den Vergleich zwischen den Daten, die am Ausgang einer Programmierung gelesen werden und den Daten, die hätten eingeschrieben sein sollen. Auf allgemeine Weise folgt jedem Schreibvorgang in die nicht-flüchtigen Speicher ein Verifizierung-Lesevorgang.
  • Das Gültigkeitsregister enthält ein Bit für jede Sicherungszone. Es kann auch durch ein zusätzliches Feld im inneren des Speichers MNVS selbst gebildet sein. Zum Beispiel zeigt ein auf 1 eingestelltes Bit, dass die entsprechende Zone ungültig ist und nicht benutzt werden darf.
  • In diesem Fall, versteht man bei den oben beschriebenen Prozeduren, dass der Übergang von einer Zone auf eine folgende Zone zunächst die Verifizierung der Gültigkeit dieser Zone umfasst. In dem Fall, wo die der Zone vom Rang R folgende Zone ungültig ist, wird die Zone vom Rang R + 1 nicht jene ungültige Zone sein, sondern die erste gültige Zone, die der Zone vom Rang R folgt. Somit, wenn man z. B. beschreibt, dass das Beschreibungsfeld der "folgenden Zone" gelöscht werden muss, ist die folgende gültige Zone betroffen.
  • Das Gültigkeitsregister unterliegt keiner Alterung, da es sehr selten programmiert wird, und die programmierten Bits nicht mehr gelöscht werden.
  • Fall, bei dem alle gültigen Zonen benutzt worden sind Wenn alle Zonen (gültige Zonen in dem Fall, wo ein Gültigkeitsregister vorhanden ist) verwendet worden sind, kann vorgesehen sein, dass die Karte nicht länger funktioniert. Oder man kann auch vorsehen, dass die Aktualisierung sich von nun ab ohne Sicherung vollzieht. Man kann aber auch vorsehen, dass die Absuche und Benutzung der Zonen zyklisch ist, d. h. wenn man eine Information in der letzten Zone des Speichers MNVS sichern muss, bewirkt das Programm zur Löschung der folgenden Zone die Löschung der ersten (gültigen) Zone des Speichers. Man verwendet folglich den Speicher MNVS erneut. Man kann eine begrenzte oder unbegrenzte Zahl von Zyklen vollziehen. Wenn man die Zahl der Verwendungszyklen begrenzen muss, versteht sich, dass ein nichtflüchtiger Zähler vorgesehen sein muss, um die Zahl der vollzogenen Zyklen zu speichern.
  • Sicherung und Wiederherstellung von mehreren Daten in sensiblem Kontext
  • Nun interessiert man sich für den Fall, wo nicht nur die einzelnen Daten sensibel sind, sondern wo auch mehrere Daten ein Ganzes bilden, dessen Zusammenhang bzw. Kohärenz bewahrt werden muss, d. h. man kann nicht ein Datum aktualisieren, wenn die anderen Daten der zusammenhängenden Gruppe nicht aktualisiert werden.
  • Die Daten können unterdessen nur eines nach dem anderen aktualisiert werden, z. B. aufgrund ihrer Länge oder aufgrund der Tatsache, dass sie sich an unterschiedlichen Adressen befinden.
  • In diesem Fall geht man folgendermaßen vor: einerseits werden die Aktivierungsindikatoren der einzelnen Daten unmittelbar nach der Aktualisierung jedes Datums nicht auf 0 zurückgesetzt, sondern man wartet bis alle Daten aktualisiert worden sind. Andererseits wird ein zusätzlicher Indikator aktiviert, der eigentümlich ist für die Existenz einer zusammenhängenden Gruppe, um anzugeben, dass die Gesamtheit der Daten der Gruppe aktualisiert worden ist. Dieser Indikator wird als letztes auf 0 zurückgesetzt, nach dem Rücksetzen aller Indikatoren der einzelnen Daten auf 0.
  • Der zusätzliche Indikator wird vorzugsweise durch das Indikatorfeld der gelöschten Zone gebildet, die unmittelbar der Zone folgt, welche die Sicherung des letzten einzelnen Datums der zusammenhängenden Gruppe enthält.
  • Genauer gesagt umfasst in diesem Fall die Prozedur zur Aktualisierung der zusammenhängenden Gruppe die folgenden Schritte, welche in dem Organigramm der Fig. 4 aufgeführt sind:
  • a) suche nach der ersten Zone, bei welcher das Beschreibungsfeld gelöscht ist (oder selbstverständlich einen anderen charakteristischen Wert des Beschreibungsfeld hat). Die gefundene Zone hat einen Rang R + i, wobei i ein Index ist, der die Nummer der Reihenfolge der Aktualisierung jedes einzelnen Datums in der zusammenhängenden Gruppe darstellt, und der zu Beginn der Prozedur gleich 0 ist. Der Fall, wo der gesamte Speicher bereits verwendet worden ist, wurde weiter oben behandelt und kann auf die gleiche Weise gelöst werden: Ungültigmachung der Karte, Aktualisierung ohne Sicherung oder zyklisches Arbeiten des Speichers MNVS;
  • b) Sicherung eines individuellen Datums in dieser Zone vom Rang R + i, mit entsprechender Programmierung des Beschreibungsfelds (Oktett zur Verifizierung der Summe, Oktett der Länge, Oktetts der Ursprungsadresse des Datums);
  • c) Suche nach der gültigen Zone vom Rang R + 1 + 1, welche der Sicherungszone folgt, und Löschen des Beschreibungsfelds dieser folgenden Zone;
  • d) Aktivierung des Sicherungsindikators der Sicherungszone (Rang R + i);
  • e) Modifikation des sensiblen Datums, dessen alter Wert gerade auf diese Weise gesichert wurde, im Hauptspeicher MMVP;
  • f) - Inkrementierung von i und Rückkehr zum Schritt (a), wenn ein weiteres individuelles Datum, das Teil der gleichen zusammenhängenden Gruppe ist, aktualisiert werden muss;
  • - oder im Gegenteil, wenn das letzte einzelne Datum der gleichen zusammenhängenden Gruppe aktualisiert worden ist, geht man zum folgenden Schritt (g);
  • g) Aktivierung des Sicherungsindikators der (gelöschten) Zone vom Rang R + p. Der Rang R + p - 1 ist der Rang der Sicherungszone der letzten aktualisierten individuellen Information, p ist die Zahl der einzelnen Daten, die Teil der zusammenhängenden Gruppe sind. Dieser zusätzliche Aktivierungsindikator, der mit einer gelöschten Zone in Beziehung steht und nicht mit einer als Sicherung verwendeten Zone, bildet den oben erwähnten zusätzlichen Indikator, der dazu dient, die Kohärenz der Aktualisierung der Gruppe sicherzustellen, wie weiter unten erkennbar wird;
  • h) nacheinander Deaktivierung (Zurücksetzen auf 0) der Sicherungsindikatoren der verschiedenen Sicherungszonen, in der zu ihrer Aktivierung umgekehrten Reihenfolge, d. h. beginnend mit dem Rang R + p - 1 und aufsteigend bis R;
  • i) Deaktivierung des zusätzlichen Indikators, der in Beziehung steht mit der gelöschten Zone vom Rang R+p.
  • Unterbrechung der Aktualisierung unterwegs
  • Wenn eine Versorgungsunterbrechung während der Schritte (a) bis (f) stattfindet, sind bestimmte Daten aktualisiert worden, aber nicht notwendigerweise alle. Die Sicherungszonen, deren Indikator auf 1 steht, enthalten ein altes gesichertes Datum, jene, deren Indikator immer noch auf 0 steht, enthalten eine ungewissen Information, aber in diesem Fall ist das alte Datum immer noch im Hauptspeicher vorhanden. Für die Kohärenz bzw. den Zusammenhang der Gruppe ist es notwendig nicht auf den Hauptspeicher für die Daten der Zonen zuzugreifen, deren Indikator auf 0 steht, und in dem Hauptspeicher die Daten der Zonen wiederherzustellen, deren Indikator auf 1 steht. Die Kohärenz bzw. der Zusammenhang der Gruppe wird bewahrt. Die Daten behalten alle ihren alten Wert.
  • Wenn eine Versorgungsunterbrechung stattfindet im Verlauf der Schritte (g) und (h), was man durch das vorliegen des zusätzlichen Indikators (Rang R + p) auf 1 weiß, kann man bestätigen, dass alle Daten der Gruppe aktualisiert worden sind. Es besteht Kohärenz für die neuen Werte, und es ist nicht notwendig die alten Werte wiederherzustellen, selbst wenn bestimmte Indikatoren der Zonen R bis R + p - 1 immer noch auf 1 stehen.
  • Schließlich, wenn die Unterbrechung stattfindet nachdem der zusätzliche Indikator auf 0 zurückgegangen ist (Schritt 1 und danach), kann man davon ausgehen, dass die zusammenhängende bzw. kohärente Aktualisierung vollständig abgeschlossen ist, und es nichts zu tun gibt.
  • Wiederherstellung nach Versorgungsunterbrechung
  • Das Systemprogramm, das automatisch bei jedem erneuten anlegen von Spannung an die Karte abläuft, umfasst also die folgenden Schritte:
  • a1) Suche nach einer Sicherungszone, die einen Sicherungsindikator auf 1 hat (Zone mit Rang zwischen R und R + p - 1)
  • b1) Suche nach der gelöschten Zone (Rang R + P), deren Indikator auf 1 gestellt sein müsste;
  • c1) - wenn die gelöschte Zone nicht existiert oder wenn ihr Aktivierungsindikator auf 0 steht (inaktiv): Schritt d1;
  • - sonst: Schritt d2;
  • d1) Wiederherstellung jedes geschützten Datums im Hauptspeicher MNVP, in den Zonen, deren Indikator aktiviert ist, und gleichzeitig Deaktivierung des entsprechenden Indikators, beginnend mit der zuletzt benutzten Zone und abschließend bei jener, welche als erste verwendet wurde (man erinnere sich, dass die Sicherung in der Reihenfolge der Zonen stattfindet). Man kann abschließen indem man das Beschreibungsfeld der Zone löscht, die der ersten als Sicherung verwendeten Zone folgt, um der Tatsache Rechnung zu tragen, dass man im Schritt c1 möglicherweise keine gelöschte Zone gefunden hat. Man wird tatsächlich eine gelöschte Zone benötigen, für eine spätere Aktualisierungs-Operation;
  • d2) aufeinander folgendes Löschen aller Indikatoren von verwendeten Sicherungszonen, beginnend mit jenem, der zuletzt aktiviert wurde, aufsteigend bis zu jenem, der als erster aktiviert wurde, und abschließend mit dem zusätzlichen Indikator der Zone, deren Beschreibungsfeld gelöscht ist.
  • Es folgt somit, dass die kohärente bzw. zusammenhängende Aktualisierung von mehreren Daten möglich ist, ohne dass es notwendig ist, nicht-flüchtige Zeiger vorzusehen, um die verschiedenen Sicherungszonen der zusammenhängenden Gruppe zu markieren bzw. zu kennzeichnen.

Claims (13)

1. Verfahren zur Aktualisierung eines sensiblen Datums in einem nicht-flüchtigen Hauptspeicher (MNVP), umfassend die folgenden Schritte:
- Sicherung des alten Werts des Datums in einem nichtflüchtigen Sicherungsspeicher (MNVS), der in Speicherzonen aufgeteilt ist;
- Aktivierung eines Sicherungsindikators, um anzuzeigen, dass ein Datum gerade gesichert wurde und dass eine Modifikation eines sensiblen Datum abläuft;
- Modifikation des sensiblen Datums in dem Hauptspeicher;
- und Deaktivierung des Indikators, wenn die Modifikation des Datums korrekt abgelaufen ist,
wobei dieses Verfahren dadurch gekennzeichnet ist, dass:
- eine Speicherzone, welche jeweils verschieden ist von der vorangegangenen, bei jeder neuen Aktualisierung verwendet wird, um das alte Datum in dem Sicherungsspeicher zu sichern;
- mindestens ein Feld, welches als Beschreibungsfeld (F2) bezeichnet wird, der Zonen des Sicherungsspeichers verwendet wird, um die Zone des Sicherungsspeichers zu markieren, die verwendet werden muss im Verlauf eines Aktualisierungsvorgangs.
2. Verfahren zur Aktualisierung eines Datums nach Anspruch 1,
dadurch gekennzeichnet, dass
- der Vorgang der Aktualisierung damit beginnt, dass im Sicherungsspeicher nach der ersten Speicherzone gesucht wird, die ein Beschreibungsfeld umfasst, welches einen bestimmten charakteristischen Wert hat;
- der Sicherungsvorgang des alten Datums die Modifikation des Beschreibungsfelds der Sicherungszone des alten Datums umfasst, und ebenfalls das Einschreiben des charakteristischen Werts in das Beschreibungsfeld der ersten Zone des Speichers umfasst, die unmittelbar dieser Zone folgt.
3. Verfahren zur Aktualisierung nach Anspruch 2, dadurch gekennzeichnet, dass der charakteristische Wert des Beschreibungsfelds ein Nullwert ist, der einer globalen Löschung dieses Felds entspricht.
4. Verfahren zur Aktualisierung nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die Sicherungszone ein Beschreibungsfeld (F2) und ein Datenfeld (F3) umfasst, wobei das Beschreibungsfeld die Angaben zur Interpretation und zur Kontrolle der Vollständigkeit der in dem Datenfeld geschriebenen Daten enthält.
5. Verfahren zur Aktualisierung nach Anspruch 3, dadurch gekennzeichnet, dass das Beschreibungsfeld einer Sicherungszone die Ursprungsadresse des in der Zone gesicherten alten Datums umfasst.
6. Verfahren zur Aktualisierung nach einem der Ansprüche 3 oder 4, dadurch gekennzeichnet, dass der Sicherungsindikator für einen Aktualisierungsvorgang Teil der Sicherungszone ist, die verwendet wird bei dem Aktualisierungsvorgang, und ein Bit umfasst, um anzugeben, ob diese Zone ein gesichertes Datum umfasst.
7. Verfahren zur Aktualisierung nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass einerseits ein nicht-flüchtiges Gültigkeitsregister (RV) vorgesehen ist, das mit dem Sicherungsspeicher in Beziehung steht, wobei dieses Gültigkeitsregister eine Gültigkeitsinformation jeder Zone des Sicherungsspeichers enthält, und andererseits dadurch gekennzeichnet, dass die Zone, welche für die Sicherung des nächsten Datums zu verwenden ist, die erste gültige Zone ist, welche der Sicherungszone des alten Datums folgt.
8. Verfahren zur Aktualisierung nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass bei jedem Anlegen von Spannung an den Speicher nach einer Unterbrechung, nach dem Vorliegen eines aktivierten Indikators in dem Sicherungsspeicher gesucht wird, und das alte gesicherte Datum in der Zone des Sicherungsspeichers, das dem aktivierten Indikator entspricht, in den Hauptspeicher zurückgeschrieben wird.
9. Verfahren zur Aktualisierung nach einem der vorangegangenen Ansprüche, bei welchem versucht wird ein zusammenhängendes Ensemble von mehreren sensiblen Daten zu aktualisieren, die nicht getrennt aktualisiert werden dürfen, dadurch gekennzeichnet, dass die folgenden Schritte ausgeführt werden:
a. Suche nach der ersten Zone des Sicherungsspeichers, deren Beschreibungsfeld den charakteristischen Wert hat;
b. Sicherung eines sensiblen Datums in dieser Zone;
c. Programmierung des Beschreibungsfelds der Zone, welche der Sicherungszone folgt, auf den charakteristischen Wert;
d. Aktivierung des Indikators der Sicherungszone,
e. Modifikation des sensiblen Datums,
f. Rückkehr zum Schritt (a) wenn weitere sensible Daten im zusammenhängenden Ensemble noch zu aktualisieren sind; Übergang zum Schritt (g), wenn das letzte Datum des Ensembles gerade modifiziert wurde;
g. Aktivierung eines zusätzlichen Indikators, welcher der Indikator der Zone ist, deren Beschreibungsfeld gerade auf den charakteristischen Wert programmiert wurde, d. h. der Zone, welche der letzten verwendeten Sicherungszone folgt;
h. nacheinander Deaktivierung der
Aktivierungsindikatoren der verschiedenen verwendeten Sicherungszonen, beginnend mit der letzten und aufsteigend bis zur ersten verwendeten Zone;
i. Deaktivierung des zusätzlichen Indikators.
10. Verfahren zur Aktualisierung nach Anspruch 8, dadurch gekennzeichnet, dass bei jedem erneuten Anlegen von Spannung an die Karte, die folgenden Vorgänge ausgeführt werden:
a1. Suche nach einer Sicherungszone, deren Indikator aktiviert ist;
b1. Suche nach einer Zone, deren Beschreibungsfeld den charakteristischen Wert hat;
c1. Suche nach dem Zustand des Indikators, welcher als zusätzlicher Indikator bezeichnet wird, dieser letzten Zone,
d1. wenn der zusätzliche Indikator nicht aktiviert ist, Wiederherstellen der Daten, die in den Sicherungszonen gesichert sind, deren Indikator aktiviert ist, in dem Hauptspeicher; und jedes mal Deaktivierung des entsprechenden Indikators,
d2. wenn der zusätzliche Indikator aktiviert ist, Deaktivierung aller aktivierten Indikatoren, ausgehend von der Sicherungszone, die zuletzt verwendet wurde, und bis zu jener, welche als erste verwendet wurde, danach Deaktivierung des zusätzlichen Indikators.
11. Verfahren zur Aktualisierung nach Anspruch 10, dadurch gekennzeichnet, dass wenn beim Schritt b1 überhaupt keine Zone gefunden wird, der Schritt d1 ausgeführt wird, und ein zusätzlicher Schritt zur Programmierung der Zone auf den charakteristischen Wert durchgeführt wird, im Hinblick auf einen späteren Aktualisierungsvorgang.
12. Verfahren zur Aktualisierung nach einem der vorangegangenen Ansprüche, dadurch gekennzeichnet, dass wenn alle Zonen des Sicherungsspeichers verwendet worden sind, um sensible Daten zu sichern, der Sicherungsvorgang in der letzten verfügbaren Zone des Sicherungsspeichers das Löschen des Beschreibungsfelds der ersten Zone des Sicherungsspeichers umfasst, im Hinblick auf eine Wiederverwendung dieses Speichers.
13. Chipkarte, umfassend einen Mikroprozessor und einen nichtflüchtigen Hauptspeicher, dadurch gekennzeichnet, dass sie ein Systemprogramm im Speicher enthält, welches den Ablauf der Vorgänge zur Aktualisierung von sensiblen Daten entsprechend einem Verfahren nach einem der vorangegangenen Ansprüche definiert, und ein Programm zur Wiederherstellung von Daten nach dem Wiederanlegen von Spannung, wobei dieses Programm die systematische Verifizierung des Zustands der Sicherungsindikatoren umfasst, das Neueinschreiben von gesicherten Daten abhängig vom Zustand der Indikatoren, und die Deaktivierung der aktivierten Indikatoren.
DE69609256T 1995-02-16 1996-02-15 Sicheres aktualisierungsverfahren für eeprom Expired - Fee Related DE69609256T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9501791A FR2730833B1 (fr) 1995-02-16 1995-02-16 Procede de mise a jour securisee de memoire eeprom
PCT/FR1996/000247 WO1996025743A1 (fr) 1995-02-16 1996-02-15 Procede de mise a jour securisee de memoire eeprom

Publications (2)

Publication Number Publication Date
DE69609256D1 DE69609256D1 (de) 2000-08-17
DE69609256T2 true DE69609256T2 (de) 2001-10-18

Family

ID=9476204

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69609256T Expired - Fee Related DE69609256T2 (de) 1995-02-16 1996-02-15 Sicheres aktualisierungsverfahren für eeprom

Country Status (9)

Country Link
EP (1) EP0756746B1 (de)
JP (1) JP2846739B2 (de)
AU (1) AU691406B2 (de)
CA (1) CA2188033C (de)
DE (1) DE69609256T2 (de)
ES (1) ES2150104T3 (de)
FR (1) FR2730833B1 (de)
WO (1) WO1996025743A1 (de)
ZA (1) ZA961123B (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004005290B3 (de) * 2004-02-03 2005-07-21 Giesecke & Devrient Gmbh Verfahren und Vorrichtung zur Absicherung von Daten in einem nichtflüchtigen Datenspeicher

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2757978B1 (fr) * 1996-12-27 1999-01-29 Schlumberger Ind Sa Procede de securisation d'une donnee dans une memoire reinscriptible
JP3702923B2 (ja) * 1997-02-28 2005-10-05 ソニー株式会社 情報処理方法および情報処理装置
JPH117505A (ja) * 1997-06-17 1999-01-12 Fujitsu Ltd カード型記憶媒体
JP3721725B2 (ja) * 1997-07-09 2005-11-30 ソニー株式会社 情報処理方法および情報処理装置
JP3233079B2 (ja) 1997-09-30 2001-11-26 ソニー株式会社 データ処理システム及びデータ処理方法
JP3271935B2 (ja) * 1997-10-15 2002-04-08 松下電工株式会社 制御システム
DE19858840A1 (de) * 1998-12-19 2000-06-21 Orga Kartensysteme Gmbh Verfahren zum bidirektionalen Datentransfer zwischen einem Terminal und einer Chipkarte sowie Chipkarte
JP3726663B2 (ja) * 2000-09-07 2005-12-14 日産自動車株式会社 電子制御装置の制御データ記憶装置
JP2002123806A (ja) * 2000-10-17 2002-04-26 Fujitsu Ltd Icカード、データ更新制御方法、データ/メッセージ復元制御方法、および制御プログラムを記録した記録媒体
FR2818426A1 (fr) * 2000-12-18 2002-06-21 Schlumberger Systems & Service Dispositif et procede de securisation de zones de donnees dans une carte a puce
JP2002278850A (ja) * 2001-03-14 2002-09-27 Nec Corp 半導体装置
DE60129200T2 (de) * 2001-03-23 2008-03-20 Proton World International En Abrege Pwi Verfahren zur Aktualisierung eines elektronischen Dokuments
DE50114309D1 (de) * 2001-07-12 2008-10-23 Siemens Ag Verfahren zur Speicherung zusammengehöriger Datensätze
FR2838536B1 (fr) 2002-04-16 2005-06-24 A S K Procede de modification des donnees d'une carte a memoire lors d'une transaction
KR20070030157A (ko) * 2004-06-14 2007-03-15 소니 가부시끼 가이샤 정보 관리 장치 및 정보 관리 방법
FR2875080B1 (fr) * 2004-09-09 2006-10-27 Gemplus Sa Mise a jour optimisee d'une valeur deterministe dans un dispositif de communication
WO2007026209A1 (en) * 2005-08-31 2007-03-08 Axalto S.A. A personal token with security arrangement for avoiding mistaken deletion of data.
CN100535935C (zh) * 2006-12-26 2009-09-02 北京握奇数据系统有限公司 Cpu与逻辑加密双用智能卡及其数据同步方法
KR102102335B1 (ko) * 2018-02-06 2020-04-20 엘에스일렉트릭(주) 이중 메모리 구조 및 이를 이용한 plc의 메시지 처리 방법
CN110888605B (zh) * 2019-12-11 2023-10-20 重庆超力高科技股份有限公司 Eeprom的数据写入方法、装置和电子设备
CN111105563B (zh) * 2019-12-17 2021-08-24 厦门计讯物联科技有限公司 防数据丢失的水卡数据写入方法、装置、设备及存储介质
CN113688773B (zh) * 2021-09-03 2023-09-26 重庆大学 一种基于深度学习的储罐穹顶位移数据修复方法及其装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2665791B1 (fr) * 1990-08-13 1994-11-10 Didier Mazingue Procede de mise a jour d'une memoire eeprom.
FR2666425A1 (fr) * 1990-08-31 1992-03-06 Gemplus Card Int Procede et dispositif de mise a jour d'informations dans une memoire et leur utilisation dans les cartes a memoire.
JPH05233426A (ja) * 1992-02-20 1993-09-10 Fujitsu Ltd フラッシュ・メモリ使用方法
GB9307623D0 (en) * 1993-04-13 1993-06-02 Jonhig Ltd Data writing to eeprom
FR2705820B1 (fr) * 1993-05-26 1995-08-11 Solaic Sa Procédé pour sécuriser les écritures de données sensibles dans la mémoire de stockage de données EEPROM d'une carte à mémoire, et carte à mémoire pour la mise en Óoeuvre de ce procédé.

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004005290B3 (de) * 2004-02-03 2005-07-21 Giesecke & Devrient Gmbh Verfahren und Vorrichtung zur Absicherung von Daten in einem nichtflüchtigen Datenspeicher

Also Published As

Publication number Publication date
EP0756746B1 (de) 2000-07-12
ES2150104T3 (es) 2000-11-16
FR2730833A1 (fr) 1996-08-23
ZA961123B (en) 1996-08-23
CA2188033C (fr) 2000-09-26
EP0756746A1 (de) 1997-02-05
AU691406B2 (en) 1998-05-14
AU4835296A (en) 1996-09-04
JP2846739B2 (ja) 1999-01-13
DE69609256D1 (de) 2000-08-17
WO1996025743A1 (fr) 1996-08-22
FR2730833B1 (fr) 1997-03-28
JPH09506460A (ja) 1997-06-24

Similar Documents

Publication Publication Date Title
DE69609256T2 (de) Sicheres aktualisierungsverfahren für eeprom
DE69133302T2 (de) Registerabbildung in einem einzigen Taktzyklus
DE69030024T2 (de) Verfahren zur Herstellung einer Duplikation von einer Datenbank
DE69105512T2 (de) Ein verfahren und eine vorrichtung für speicherung der information in einem speicher und ihre benutzung in speicherkarten.
DE69323225T2 (de) Datenbehandlung in einem System mit Prozessor zur Steuerung des Zugangs zu einer Mehrzahl von Datenspeicherplatten
DE69107594T2 (de) Lebensdauerüberwachung für Festkörperdateien.
DE69526123T2 (de) Fehlersteuerungsverfahren für flash-eeprom-speichermatritzen
DE10308545A1 (de) Verfahren und Vorrichtung zum Aktualisieren eines verteilten Programms
EP0195885B1 (de) Verfahren und Anordnung zum nichtflüchtigen Speichern des Zählerstandes einer elektronischen Zählschaltung
EP1190324B1 (de) Verfahren zum gesicherten schreiben eines zeigers für einen ringspeicher
EP1089219A2 (de) Verfahren zur Sicherung eines Datenspeichers
EP0128362A1 (de) Schaltungsanordnung mit einem Speicher und einer Zugriffskontrolleinheit
DE19839680B4 (de) Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
DE69424223T2 (de) Verfahren zum Abspeichern und Sichern von empfindlicher Daten in eine EEPROM Speicherkarte und entsprechende Speicherkarte.
DE102009033961A1 (de) Emulation eines einmal programmierbaren Speichers
DE60317801T2 (de) Verfahren und vorrichtung zur erkennung von fehlern während des schreibens in einen nichtflüchtigen speicher
DE102006009214B4 (de) Verfahren und Vorrichtung zum Schreiben in eine Zielspeicherseite eines Speichers
DE69406138T2 (de) Verfahren zum datenschreiben in einem nicht flüchtigen speicher
EP1514171B1 (de) Verfahren zur wiederherstellung von verwaltungsdatensätzen eines blockweise löschbaren speichers
EP1625592B1 (de) Vorrichtung und verfahren zum behandeln eines zustands eines speichers
DE10227256C1 (de) Verfahren zum Adressieren von blockweise löschbaren Speichern
DE10141926B4 (de) Verfahren zur Sicherung der Daten eines Datenspeichers
DE10247794B4 (de) Verwalten eines Fehlversuchszählers in einem tragbaren Datenträger
EP1505536B1 (de) Speichern von Daten in einem nicht-flüchtigen Speicher eines tragbaren Datenträgers
EP2002446B1 (de) Verfahren zum betreiben einer speichereinrichtung mit markierung von als fehlerhaft erkannten speicherblöcken

Legal Events

Date Code Title Description
8332 No legal effect for de
8328 Change in the person/name/address of the agent

Free format text: HOFFMANN * EITLE, 81925 MUENCHEN

8364 No opposition during term of opposition
8370 Indication related to discontinuation of the patent is to be deleted
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Ref document number: 756746

Country of ref document: EP

Effective date: 20110901

R082 Change of representative

Ref document number: 756746

Country of ref document: EP

Representative=s name: HOFFMANN - EITLE, 81925 MUENCHEN, DE