DE69609256T2 - Sicheres aktualisierungsverfahren für eeprom - Google Patents
Sicheres aktualisierungsverfahren für eepromInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims description 41
- 230000015654 memory Effects 0.000 claims description 83
- 238000003860 storage Methods 0.000 claims description 25
- 230000004913 activation Effects 0.000 claims description 19
- 230000004048 modification Effects 0.000 claims description 11
- 238000012986 modification Methods 0.000 claims description 11
- 230000008569 process Effects 0.000 claims description 11
- 230000009849 deactivation Effects 0.000 claims description 8
- 230000001427 coherent effect Effects 0.000 claims description 7
- 238000012217 deletion Methods 0.000 claims description 4
- 230000037430 deletion Effects 0.000 claims description 4
- 230000001174 ascending effect Effects 0.000 claims description 3
- 230000007704 transition Effects 0.000 claims description 2
- 238000012795 verification Methods 0.000 description 7
- 230000002159 abnormal effect Effects 0.000 description 4
- 230000032683 aging Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000009897 systematic effect Effects 0.000 description 3
- 230000003213 activating effect Effects 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms 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/10—Mechanisms 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/1008—Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record 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/067—Record 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/07—Record 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/0701—Record 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K19/00—Record carriers for use with machines and with at least a part designed to carry digital markings
- G06K19/06—Record 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/067—Record 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/07—Record 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/073—Special arrangements for circuits, e.g. for protecting identification code in memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment 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/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07F—COIN-FREED OR LIKE APPARATUS
- G07F7/00—Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
- G07F7/08—Mechanisms 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/0806—Details of the card
- G07F7/0813—Specific details related to card security
- G07F7/082—Features insuring the integrity of the data on or in the card
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
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)
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)
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)
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é. |
-
1995
- 1995-02-16 FR FR9501791A patent/FR2730833B1/fr not_active Expired - Fee Related
-
1996
- 1996-02-12 ZA ZA961123A patent/ZA961123B/xx unknown
- 1996-02-15 DE DE69609256T patent/DE69609256T2/de not_active Expired - Fee Related
- 1996-02-15 WO PCT/FR1996/000247 patent/WO1996025743A1/fr active IP Right Grant
- 1996-02-15 JP JP8524718A patent/JP2846739B2/ja not_active Expired - Fee Related
- 1996-02-15 ES ES96904145T patent/ES2150104T3/es not_active Expired - Lifetime
- 1996-02-15 EP EP96904145A patent/EP0756746B1/de not_active Expired - Lifetime
- 1996-02-15 AU AU48352/96A patent/AU691406B2/en not_active Ceased
- 1996-02-15 CA CA002188033A patent/CA2188033C/fr not_active Expired - Fee Related
Cited By (1)
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 |