JP2846739B2 - Eepromメモリの安全更新方法 - Google Patents
Eepromメモリの安全更新方法Info
- Publication number
- JP2846739B2 JP2846739B2 JP8524718A JP52471896A JP2846739B2 JP 2846739 B2 JP2846739 B2 JP 2846739B2 JP 8524718 A JP8524718 A JP 8524718A JP 52471896 A JP52471896 A JP 52471896A JP 2846739 B2 JP2846739 B2 JP 2846739B2
- Authority
- JP
- Japan
- Prior art keywords
- zone
- data
- backup
- memory
- indicator
- 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
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 Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Security & Cryptography (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
モリに記憶されたデータを安全に更新する回路とに関す
るものである。
を新しいデータに置換することである。この操作は所定
時間持続する。この更新操作の間にメモリの電源電圧が
遮断される事故は偶発的に生じる。このようなことが現
実にあれば、古いデータも新しいデータも失われる。記
録されるべきデータが「機密扱い」データすなわち使用
中のアプリケーションに大事に保存されていたデータで
ある場合には、このような状況は受容し得ない。
ータが経済的価値を表しているチップカードの場合が挙
げられる。このデータは機密扱いであるが、商品の購入
やサービスを受けた際にカードリーダを用いてデータを
更新する際に不意にカードがカードリーダから抜き取ら
れたような場合には、カード残高を表すデータが失われ
て、カード所持社やサービス提供者に損害を与えること
になる。
望のアドレスに更新する前に、更新操作毎に古いデータ
を不揮発性メモリの新しい位置にバックアップして、更
新操作が誤って進行しても、少なくとも古いデータ値が
保存されるようにしたメモリ更新システムが提案されて
いる。このメモリ更新システムの問題の一つは古いデー
タをバックアップするのに用いるメモリ空間の管理の問
題である。一般に、バックアップされた情報を記憶する
メモリゾーンの位置は不揮発性ポインタ(EEPROMメモリ
レジスタ)を用いて示される。
ンタを用いて情報の最新値を記憶したアドレスを指示す
るようにしている。しかし、この特許はバックアップ操
作のためのメモリ空間を管理することの難しさを示して
いる。すなわち、この特許で提案された解決策は記憶す
べき各情報に対して連続したN個の値をバックアップす
るN個のメモリゾーンを使用し、情報の最新値の識別に
は付加的な(ポインタ)ゾーンを使用し、各更新時にポ
インタ値が変更される。古い値と最新の値のみが保存さ
れる場合には2つのゾーンが確保され、これらの値が記
憶され、ポインタは交互に状態“1"から状態“0"になっ
てこれら2つのゾーンの中で最新値が記載されたゾーン
を示すようになっている。
ポインタ(またはインディケータ)を構成するメモリセ
ルの使用が激しいことに起因する誤動作の危険がある。
事実、メモリセルは消去及びプログラミン操作をがあま
りに頻繁に行うと劣化し、信頼性が低下する。
新中に機密扱いデータが失われる危険をなくすことにあ
る。
タのバックアップをできる限り異なるメモリで行って更
新操作に起因する疲労が生じないようにした方法を提案
する。
(MNVS)にバックアップし、 (2)データがバックアップされたことと、機密データ
の変更が進行中であることを示すバックアップインディ
ケータをアクティブにし、 (3)メインメモリ内の機密扱いデータを変更し、 (4)データの更新が正しく行われた場合にはバックア
ップインディケータを非アクティブ化する 段階からなる不揮発メインメモリ(MNVP)内の機密デー
タの更新方法において、下記(5)〜(7)を特徴とす
る方法を提供する: (5)バックアップメモリを複数のメモリゾーンに分割
し、 (6)更新走査を行う度に、前に使ったゾーンとは異な
るメモリゾーンを使用して古いデータをバックアップメ
モリにバックアップし、 (7)バックアップメモリのゾーンの「記述子フィール
ド」とよぶ少なくとも1つのフィールドを用いてバック
アップメモリの更新操作時に使用すべきゾーンに目印を
付ける。
で、特徴値をもつ記述子フィールド(実際には完全に消
去されたフィールド)を含む最初のメモリゾーンを探索
することで更新操作を開始し、古いデータのバックアッ
プ操作で古いデータのバックアップゾーンの記述子フィ
ールドを変更し、このゾーンの直ぐ後の最初のメモリの
ゾーンの記述子フィールドに特徴値を記録する。
る: 記述子フィールドが消去されている最初のゾーンが見
つかるまでバックアップメモリの記述子フィールドを一
定順序で読出し、 見つかったゾーンに更新すべき機密データの古い値を
バックアップし、 次のバックアップ操作のために最初のゾーンに続く第
2のゾーンを消去し、 データが最初のゾーンにバックアップされたことを示
す最初のゾーン用インディケータをアクティブ化し、 メインメモリ内の機密データを変更し、 変更が正常に行われた時にインディケータを非アクテ
ィブ化する。
が常に同一のメモリゾーンであるとは限らない。使用可
能なゾーンを順次用いる。全てのゾーンが使用されてし
まった場合に最初のゾーンから再度開始するようにでき
る。すなわち、最後のゾーンが使用されたときには最初
のゾーンが消去される。どのゾーンをいつ使用するかを
指示する不揮発性ポインタは用いない。使用すべきゾー
ンを決定するのはそのゾーンの内容である。従って、ポ
インタに頻繁に書込むことによる疲労とエラーの危険が
完全になくなるだけでなく、異なるゾーンに順次書込
み、全てのゾーンが使用されてしまった場合にのみ一つ
のゾーンへの書込み操作が再開されるので、バックアッ
プの疲労を最小にすることができる。
バックアップされているバックアップゾーンの一部であ
るのが好ましい。
プログラムが実行され、バックアップメモリ中でアクテ
ィブになっているインディケータの探索が行われ、アク
ティブ化されたインディケータによって指定されたゾー
ンにバックアップされた古いデータがメインメモリに再
度書込まれる。
いようにするために、一群の機密データを互いに分離し
ないで更新する必要がある場合もある。しかし、メモリ
には一度に1つのデータしか消去・書込みできない。
すなわち、各機密データは各ゾーンにバックアップさ
れ、各々のバックアップで次のゾーンの記述子フィール
ドの消去と、バックアップされたデータを含むゾーンの
バックアップインディケータのアクティブ化が行われ、
対応する機密データの変更が行われる。そして、第“R"
番目のゾーンにバックアップされた最後のデータについ
て上記の操作が実行された後に、第“R+1"番目のゾー
ンが消去され、付加インディケータ(第“R+1"番目の
ゾーンのインディケータ)がアクティブ化される。最後
に、最後のインディケータからそれより前のインディケ
ータに向かって付加インディケータまで逆方向に順次非
アクティブ化する。こうすることによって、全て野でが
変更されない限り、特にバックアップインディケータが
リセットされない限り、古い内容を全て保存することが
できる。
効性レジスタとが組み合わされる。この有効性レジスタ
の内容は各バックアップゾーンが機能状態にあるか否か
を定義するものである。すなわち、あるゾーンが信頼で
きない状態(プログラミングの度にプログラムされるべ
き内容と実際にプログラムされた内容とを比較して検
出)になると、それが有効性レジスタに示される。この
場合、将来の更新に備えて次のバックアップゾーンを準
備(その記述子フィールドの消去)するときに考慮され
る次のゾーンは次の有効なゾーンである。換言すれば、
有効性レジスタが使用してはならいことを示しているゾ
ーンは次のゾーンとは考えない。
リ(一般にはEEPROM)とを備えたチップカードに特に適
用することができる。このチップカードは本発明方法に
従って機密情報の更新操作を実行するシステムプログラ
ムと、電源の供給が再開されたときにデータの再記憶を
行うデータの再記憶プログラムとを有している。再記憶
プログラムはバックアップインディケータの状態を順次
検証し、インディケータの状態に応じてバックアップさ
れるデータを再記録し、アクティブ化されたインディケ
ータを非アクティブ化する。
た以下の詳細な説明から明らかになろう。
このチップカードについて説明する。本発明は可変デー
タを記憶するための不揮発性メモリの他にカードの内部
と外部との間のデータ交換を管理するマイクロプロセッ
サを備えたマイクロプロセッサ搭載のカードで特に好ま
しく用いられる。しかし、以下で説明するタスクはマイ
クロプロセッサのないカードで実行できるということは
理解できよう。この場合には、カード内に各タスクを実
行するための適当な配線と装置が必要である。
ている。マイクロプロセッサMPはバスBを介してカード
の各種メモリと入出力ポートとに接続されている。図1
には1つの入出力ポートI/Oが示されている。
ータ(このデータはカードを使用する度に更新され、更
新中の事故によって失われてはならない機密データを含
んでいる)を記録するための電気的に消去可能でプログ
ラム可能な不揮発性メインメモリMNVP (2)マイクロプロセッサを用いたシステムで一般的に
用いられる、カード使用中に必要な中間データを格納す
るランダムアクセスメモリのような揮発性作業メモリRA
M (3)カードを使うためのシステムプログラム(このプ
ログラムはカードの使用時毎に変化することはない)を
記憶している読出専用メモリROM (4)メインメモリ内のデータの更新中にデータの古い
値を保存するのに必要な電気的に消去可能でプログラム
可能な不揮発性バックアップメモリMNVS 最後のメモリMNVSは図を分かり易くするためにメイン
メモリとは別のメモリとして示してあるが、このメモリ
をメインメモリの一部に物理的に確保することもできる
ということは理解できよう。この場合には、所定数のア
ドレスをこのバックアップメモリ用に確保すればよい
が、本発明での唯一の要件はバックアップメモリMNVSの
内容を一定順序でシーケンシャルに容易に探査できるよ
うにするために、アドレスは互いに連続していなければ
ならないことである。
臨時の不揮発性レジスタRVも示されている。このレジス
タRVについては後で説明する。このレジスタRVをメイン
メモリMNVPまたはバックアップメモリMNVSの一部分にす
ることもできる 既に述べたように、本発明の目的は更新操作の完了前
に更新操作の実行が不意に中断されたとしても古いデー
タの再利用ができるようにするために、古いデータを保
存した状態でメモリMNVPの機密データを更新できるよう
にすることにある。
個のバックアップゾーンから成る。各ゾーンは一つの機
密データをバックアップでき、全てのゾーンが順々に使
用される。すなわち、一つのゾーンで一つのデータをバ
ックアップした後は、次のバックアップ操作で使用され
るのはそれとは別のゾーンである。全てのゾーンが使用
されてしまった時には最初のゾーンから再度循環して使
用することもできるが、N個のゾーンが使い尽くされた
後はカードが使用できなくなるようにすることもでき
る。さらには、更新によって安全性がなくなるようにす
ることもできる。
に、各バックアップゾーンは複数のフィールドを有して
いる。1つのゾーンは以下のようなフィールドF1〜F3を
有するのが好ましい: (1)F1 データ(このデータは最後まで正しく更新されなかっ
た場合には回復できる)のバックアップが終ったことを
示すバックアップインディケータ(アクティブ化インデ
ィケータともいう)のフィールド(1ビットで十分)。
一般的にはゾーンに格納されたデータの解釈とその一体
性(integrit)を監視するのに必要な全ての記述子のデ
ータ)に関する情報を与えるゾーン記述子フィールド 一つの実施例では、この記述子フィールドF2はゾーン
にバックアップされるデータの元のアドレスを含むこと
もできる。しかし、このアドレスは記述子フィールド以
外のフィールドに存在させることができるということを
理解すべきである。すなわち、記述子フィールドがバッ
クアップされたデータとこのデータの元のアドレスとを
区別できる場合には、元のアドレスは下記のフィールド
(データフィールド)に書くことができる。
して単一のフィールドであり、バックアップすべきデー
タの最大サイズに応じたサイズを有する) 図示した例ではゾーン記述子のフィールドF2は下記の
4つのサブフィールド(1)〜(4)を有している: (1)CHKS ゾーンに格納されたデータの一体性を確認する7ビッ
トの符号化情報(例えば、記述子フィールドのサブフィ
ールドに記憶されたビットと、データフィールドに記憶
されたビットとの和) (2)LNG バックアップされたデータの実際の長さを符号化した
バイト (3)ADh (4)ADb バックアップされたデータの元のアドレスに関係する
バイト(最上位と最下位)(これらのアドレスは更新が
正しく実行されなかった場合にバックアップされたデー
タを再記憶するのに必要である) 機密データの更新手順 図3のフローチャートはデータのバックアップが全く
個別的な場合、すなわち複数のデータの一体性に注意を
払う必要がない場合の更新手順を示す。
新手順は下記のステップから成る: (1)メモリMNVSを常に同一順序で系統的に走査して、
記述子フィールドが予め定義された特性値をもっている
ゾーンを探索する。この特性値はその記述子フィールド
全体が消去状態にあることに対応する「0」(全てのビ
ットが「0」)であるのが好ましい。メモリMNVSを走査
する順序を決定するのは原則としてROM内のシステムプ
ログラムである。消去状態にある最初の記述子フィール
ドのゾーンの順番をR(1〜Nの数)とする。
込む。このデータはデータフィールドに書込まれ、記述
子フィールドが変更される。また、元のデータのアドレ
スが記述子フィールドにバックアップされ、一体性や解
釈を検証するための他のデータも記述子フィールドに書
込まれる。バックアップゾーンへの書込みが終わったら
書き込んだものを直ちに検証するのが好ましい。
わち第R+1番目のゾーンの記述子フィールドを消去す
る(より一般的には、特性値が「0」でない場合、この
フィールド内の特性値をプログラミングする。少なくと
も記述子フィールドが消去されるが、この第R+1番目
のゾーンからデータフィールドの内容を消去することも
できる)。
フィールドF1)をアクティブにする。以下の説明では、
このインディケータは単一ビットで、その初期値は論理
「0」の状態にある、アクティブ化でこのビットは
「1」の状態にされるものとする。一つのゾーンのイン
ディケータがアクティブ化されているということは、こ
のゾーンにバックアップされたデータ(このデータは問
題時に再利用できる)が存在することを意味する。
メモリMNVP内のデータを変更する。この変更操作は検証
のために変更したデータを直ちに読出す操作を原則とし
て含んでいる。
た時に、アクティブ化したインディケータを非アクティ
ブ化する(状態「0」へ復帰)。
新されたデータが記録されており、カードはリーダから
引抜くことができ、次に再び使用することができる。
中断されたバックアップについて説明する。実際には、
この中断は電源供給の遮断であり、例えばカードを不意
に引き出した場合に起こる。
前に異常な中断が生じた場合は、電力が再度投入されて
も特別な操作を行う必要はない。すなわち、データの更
新は始まっておらず、また、バックアップゾーンへの書
込みが開始されていたとしても、メインメモリMNVPのデ
ータは損壊されておらず、カードは使用されなかったの
と同じである。カードには以前に記憶されたデータが記
憶されており、このデータは失われていない。
にセットされている間に異常な中断が生じた場合には、
メインメモリでの更新が始まっており、メインメモリに
記憶されているのが古いデータなのか、新しいデータな
のか、それとも例えば再書込み前に全てのデータが消去
したことに起因する空きゾーンのような使用不能な情報
なのか分からない。従って、カードに電源が再供給され
たときにはルーチン作業として常に、カードのシステム
プログラム(ROM)によってメインメモリMNVPのアクテ
ィブ化インディケータのフィールドの状態を確認に行
く。そして、或るゾーンのこのインディケータが「1」
であった場合には、対応する記述子フィールドで指示さ
れるアドレスで、そのゾーンのデータフィールドの内容
をメインメモリに再度書込み、アクティブ化インディケ
ータを「0」にリセットする。これによってメインメモ
リは更新に失敗する前の状態に復帰する。
た後に不意に中断された場合は、更新は完全に行われて
おり、中断は全く影響がなく、古いデータを再記憶する
用意をする必要はない。
かった場合、例えば、何度も同じゾーンが周期的に用い
られた結果、一定の劣化を受けた場合に、その部分を無
効化できるのが好ましい。欠陥があると分かったゾーン
は機密データのバックアップ用に用いてはならない。
に問題があることが検出された時には、バックアップゾ
ーンの「有効性レジスタ」とよばれる不揮発性レジスタ
(図1におけるレジスタRV)を用いてそのゾーンを更新
操作から外す。問題のゾーンの存在の検出は主としてプ
ログラミングを実行して読出されたデータと記録される
べきデータとを比較して行う。一般に、不揮発性レジス
タへ書込む場合には、その前に検証読出しを行う。
ットを格納している。この有効性レジスタをメモリMNVS
内部の付加的なフィールドで形成することもできる。例
えば、ビット「1」は対応するゾーンが無効で、用いて
はならないことを示す。
には先ず最初にそのゾーンの有効性が検証されるという
ことは理解できよう。なお、第R番目のゾーンの次のゾ
ーンが無効であるという場合、第R+1番目のゾーンは
この無効なゾーンではなく、第R番目の次の最初の有効
なゾーンである。「後のゾーン」の記述子フィールドを
消去するという場合の次のゾーンは有効なゾーンであ
る。
り、プログラムされたビットは消去されないので、この
有効性レジスタが劣化することはない。
には有効なゾーン)の使用が終わった場合にカードが機
能しないようにすることができる。あるいは、バックア
ップをしないでデータの更新操作が実行されるようにす
ることもできる。さらには、ゾーンの探索と使用を再度
繰り返すようにすることもできる。すなわち、メモリMN
VSの最後のゾーンに情報をバックアップしなければなら
なくなった場合に、後続のゾーンの消去プログラムでメ
モリの最初の(有効な)ゾーンを消去する。この場合、
メモリMNVSは二回使用される。このサイクルを一定数だ
け実行できるようにしたり、無制限に実行できるように
することもできる。使用サイクル数が有限の場合、実行
したサイクル数を記録するための不揮発性カウンタを用
意する必要がある。
体性を維持しなければならない場合もある。例えば、或
る1つのデータを更新するにはそれに関連した一群の他
のデータも更新しなければならない場合がある。
ス位置が相違するという問題があるので、データは1つ
ずつしか更新できない。この場合には以下の手順で更新
を実行する: 個々のデータのアクティブ化インディケータのリセッ
トを各データの更新直後に行わないで、全てのデータが
更新し終わるのを待つ。さらに、互いに関連するデータ
群が存在することを示す特別な付加的インディケータを
アクティブ化してそのグループ全体のデータが更新され
たことを表示する。この付加インディケータは各データ
のインディケータがゼロになった後に最後にゼロにな
る。
の最後のデータのバックアップを格納したゾーンの直ぐ
後の消去されたゾーンのインディケータフィールドによ
って構成するのが好ましい。
のフローチャートに示すように、下記ステップで構成す
ることができる: (a)記述子フィールド(または記述子フィールドの他
の特性値)が消去されている最初のゾーンを探索する
(見付けたゾーンを第R+i番目とする。ここでiは互
いに関連した一群のデータの更新順位を表す指標で、最
初は「0」である。全てのメモリの使用が終わった場合
には、上記と同様に取り扱う。すなわちカードを無効化
するか、バックアップなしで更新可能にするか、メモリ
MNVSで再度繰り返して使用できるようにする。
ー検査、長さのバイト、元のデータのアドレスに関係す
るバイト)を用いて、第R+i番目のゾーンに各データ
をバックアップする。
の有効ゾーンを探索し、この後続ゾーンの記述子を消去
する。
ップインディケータをアクティブにする。
わった機密データをメインメモリMNVP内で変更する。
ータを更新しなければならない場合にはステップ(a)
に戻る。逆に、同じグループ内に最後のデータの更新が
終わった時には、次のステップ(g)へ進む。
ップインディケータをアクティブにする。第R+p−1
番目は最後に更新されたデータのバックアップゾーンの
順位であり、pは互いに関連する一群のデータの数であ
る。この付加的なアクティブ化インディケータは消去し
たゾーンに関連するが、バックアップとして使用したゾ
ーンには関連せず、上記の「付加インディケータ」を構
成して、後で説明するように、グループの更新の一体性
を保証するのに使用される。
ータを、アクティブ化とは逆の順序すなわち第R+p−
1番目から開めて第R番目まで順次、非アクティブ化
(ゼロにリセット)する。
的インディケータを非アクティブ化する。
た場合には、データの一部は更新されているが、必ずし
も全てが更新されているわけではない。インディケータ
が「1」であるバックアップゾーンには古いバックアッ
プ済みデータが格納されている。インディケータが依然
として「0」であるゾーンには不確定な情報が格納され
ている。この場合、古いデータはまだメインメモリに存
在する。グループが一体性を有しているので、インディ
ケータが「0」であるゾーンのデータのためにメインメ
モリにアクセスしたり、インディケータが「1」である
ゾーンのデータをメインメモリに再記憶する必要はな
い。グループの一体性は保持されている。データは全て
古い値を保持している。
した場合には、付加インディケータ(第R+p番目)に
「1」が存在することが分かりので、グループの全ての
データが更新されたことが分かる。新しい値に一体性が
あり、たとえゾーンR〜R+p−1であるインディケー
タが「1」であっても古い値を再記憶する必要はない。
〔ステップ(i)及びその後〕には互いに関連した更新
が完全に終了しており、すべき作業は何もない。
必ず実行されるシステムプログラムは以下のステップか
ら成る: (a−1)バックアップインディケータが「1」である
バックアップゾーン(第R〜第R+p−1番目のゾー
ン)を探索する。
(第R+p番目)を探索する。
ブ化インディケータが「0」(非アクティブ化状態)の
場合には、ステップ(d−1)へ進み、その他の場合に
はステップ(d−2)へ進む。
ーンにバックアップされている各データをメインメモリ
MNVPに再記憶し、最後に使用したゾーンから開始して最
初に使用したゾーンで終了するように対応するインディ
ケータを非アクティブ化する(バックアップはゾーンの
順番で行われることを思い出されたい)。ステップ(c
−1)で消去ゾーンが見つからない場合にはバックアッ
プとして使用した最後のゾーンに後続するゾーンの記述
子を消去して作業を終了できる(その後の更新操作のた
めに消去ゾーンが必要になる)。
ら開始し、最初にアクティブ化されたディケータに向か
って逆に辿って、記述子が消去されたゾーンの付加イン
ディケータで終了するように、使用したバックアップゾ
ーンの全てのインディケータを順次消去する。
ックアップゾーンを識別するための不揮発性ポインタを
用いずに、複数のデータの更新ができるということは理
解できよう。
スにしたメモリカードの回路。
モリの構成を示す図。
フローチャート。
の別の実施例におけるフローチャート。
Claims (13)
- 【請求項1】下記(1)〜(4): (1)データの古い値を不揮発性バックアップメモリ
(MNVS)にバックアップし、 (2)データがバックアップされたことと、機密データ
の変更が進行中であることを示すバックアップインディ
ケータをアクティブにし、 (3)メインメモリ内の機密扱いデータを変更し、 (4)データの変更が正しく行われた場合にはバックア
ップインディケータを非アクティブ化する 段階からなる不揮発メインメモリ(MNVP)内の機密デー
タの更新方法において、下記(5)〜(7)を特徴とす
る方法: (5)バックアップメモリを複数のメモリゾーンに分割
し、 (6)更新操作を行う度に、前に使ったゾーンとは異な
るメモリゾーンを使用して古いデータをバックアップメ
モリにバックアップし、 (7)バックアップメモリのゾーンの「記述子フィール
ド」とよぶ少なくとも1つのフィールドを用いてバック
アップメモリの更新操作時に使用すべきゾーンに目印を
付ける。 - 【請求項2】下記(8)〜(9)をさらに含む請求項1
に記載の方法: (8)所定の特徴値を有する記述子フィールドを有する
最初のメモリゾーンをバックアップメモリ内で探索する
ことで更新操作を開始し、 (9)古いデータのバックアップ操作では、古いデータ
のバックアップゾーンの記述子フィールドを変更し且つ
この最初のゾーンの直ぐ後の最初のメモリゾーンの記述
子フィールドに特徴値を記録する。 - 【請求項3】記述子フィールドの特徴値がそのフィール
ド全体の消去に対応する「0」値である請求項1に記載
の方法。 - 【請求項4】バックアップゾーンが記述子フィールド
(F2)とデータフィールド(F3)とを含み、記述子フィ
ールド(F2)がデータを解釈し且つデータフィールドに
記録されたデータの一体性を監視する情報を含む請求項
1または2に記載のデータ更新方法。 - 【請求項5】一つのバックアップの記述子フィールドが
そのゾーンにバックアップされた古いデータの元のアド
レスを含む請求項3に記載の方法。 - 【請求項6】バックアップインディケータが更新操作時
に使用されるバックアップゾーンの一部を成し且つその
ゾーンがバックアップされたデータを含んでいるか否か
を示す1ビットから成る請求項3または4に記載の方
法。 - 【請求項7】バックアップメモリの他に、バックアップ
メモリの各ゾーンの有効性に関する情報を格納した有効
性レジスタ(RV)をさらに有し、次のデータのバックア
ップで使用するゾーンが古いデータのバックアップゾー
ンの後の最初の有効なゾーンである請求項1〜6のいず
れか一項に記載の方法。 - 【請求項8】中断後にメモリに再び電源が供給された時
にバックアップメモリ中のアクティブ化されたインディ
ケータの存在を探索し、そのアクティブ化されたインデ
ィケータに対応するバックアップメモリゾーンにバック
アップされた古いデータをメインメモリに再度書込む請
求項1〜7のいずれか一項に記載の方法。 - 【請求項9】互いに分離して更新しなければならない互
いに関連した複数の機密データ群を更新するための下記
ステップ(a)〜(i)でし実行される請求項1〜8の
いずれか一項に記載の方法: (a)特徴値を含む記述子フィールドを有する最初のバ
ックアップメモリゾーンを探索し、 (b)このゾーン内の機密データをバックアップし、 (c)このバックアップゾーンの後のゾーンの記述子フ
ィールドに特徴値をプログラミングし、 (d)バックアップゾーンのインディケータをアクティ
ブにし、 (e)機密データを変更し、 (f)機密データ群中の他の機密データをさらに更新し
なければならない場合にはステップ(a)へ戻り、機密
データ群中の最後のデータの更新が終わった時には次の
ステップ(g)へ進み、 (g)記述子フィールドに特徴値がプログラムされてい
るゾーン、すなわち、最後に使用されたバックアップゾ
ーンの次のゾーンのインディケータである付加インディ
ケータをアクティブにし、 (h)使用した各バックアップゾーンのアクティブ化イ
ンディケータを、使用したゾーンの最後のインディケー
タから始めて最初のインディケータまで順次非アクティ
ブ化し、 (i)付加インディケータを非アクティブ化する。 - 【請求項10】カードに再度電源が供給されたときに次
の操作が実行される請求項8に記載の方法: (a−1)インディケータがアクティブ化されているバ
ックアップゾーンを探索し、 (b−1)記述子フィールドが特徴値であるゾーンを探
索し、 (c−1)そのゾーンの「付加インディケータ」とよぶ
インディケータの状態を探索し、 (d−1)付加インディケータアクティブ状態にない場
合には、インディケータがアクティブ化されているバッ
クアップゾーンにバックアップされた各データをメイン
メモリに再記憶し、 (d−2)付加インディケータアクティブ化されている
場合には、アクティブ化されている全てのインディケー
タを、最後に使用したゾーンから始めて最初に使用した
ゾーンまで順次非アクティブ化し、最後に、付加インデ
ィケータを非アクティブ化する。 - 【請求項11】ステップ(b−1)で対応するゾーンが
見い出されない場合にはステップ(d1)が実行され、特
徴値にプログラミングするゾーンの付加なステップがそ
の後の更新操作のために実行される請求項9に記載の方
法。 - 【請求項12】機密データをバックアップするためにバ
ックアップメモリの全てのゾーンを使用し終わった時に
バックアップメモリの使用可能な最後のゾーンでのバッ
クアップ操作でバックアップメモリの最初のゾーンの記
述子フィールドを消去して、そのバックアップメモリが
再利用できるようにする請求項1〜6のいずれか一項に
記載の方法。 - 【請求項13】マイクロプロセッサと、不揮発メインメ
モリとを備えたチップカードにおいて、 請求項1〜12のいずれか一項に記載のデータの更新方法
によっで機密データのを更新するようにメモリされたシ
ステムプログラムと、電源が再給された時にデータを再
度記憶するプログラムとを有し、このプログラムはバッ
クアップインディケータの状態を検証し、バックアップ
インディケータの状態に応じてバックアップされたデー
タを再記録し、アクティブ化されたインディケータを非
アクティブにすることを特徴とするチップカード。
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 |
FR95/01791 | 1995-02-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09506460A JPH09506460A (ja) | 1997-06-24 |
JP2846739B2 true JP2846739B2 (ja) | 1999-01-13 |
Family
ID=9476204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP8524718A Expired - Fee Related JP2846739B2 (ja) | 1995-02-16 | 1996-02-15 | Eepromメモリの安全更新方法 |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP0756746B1 (ja) |
JP (1) | JP2846739B2 (ja) |
AU (1) | AU691406B2 (ja) |
CA (1) | CA2188033C (ja) |
DE (1) | DE69609256T2 (ja) |
ES (1) | ES2150104T3 (ja) |
FR (1) | FR2730833B1 (ja) |
WO (1) | WO1996025743A1 (ja) |
ZA (1) | ZA961123B (ja) |
Families Citing this family (23)
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 | 半導体装置 |
ATE366447T1 (de) * | 2001-03-23 | 2007-07-15 | Proton World Internat En Abreg | 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 |
DE102004005290B3 (de) * | 2004-02-03 | 2005-07-21 | Giesecke & Devrient Gmbh | Verfahren und Vorrichtung zur Absicherung von Daten in einem nichtflüchtigen Datenspeicher |
SG133613A1 (en) * | 2004-06-14 | 2007-07-30 | Sony Corp | Information management device and information management method |
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 AU AU48352/96A patent/AU691406B2/en not_active Ceased
- 1996-02-15 DE DE69609256T patent/DE69609256T2/de not_active Expired - Fee Related
- 1996-02-15 ES ES96904145T patent/ES2150104T3/es not_active Expired - Lifetime
- 1996-02-15 JP JP8524718A patent/JP2846739B2/ja not_active Expired - Fee Related
- 1996-02-15 CA CA002188033A patent/CA2188033C/fr not_active Expired - Fee Related
- 1996-02-15 WO PCT/FR1996/000247 patent/WO1996025743A1/fr active IP Right Grant
- 1996-02-15 EP EP96904145A patent/EP0756746B1/fr not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
ZA961123B (en) | 1996-08-23 |
FR2730833B1 (fr) | 1997-03-28 |
DE69609256T2 (de) | 2001-10-18 |
FR2730833A1 (fr) | 1996-08-23 |
ES2150104T3 (es) | 2000-11-16 |
AU4835296A (en) | 1996-09-04 |
EP0756746A1 (fr) | 1997-02-05 |
JPH09506460A (ja) | 1997-06-24 |
CA2188033C (fr) | 2000-09-26 |
WO1996025743A1 (fr) | 1996-08-22 |
EP0756746B1 (fr) | 2000-07-12 |
AU691406B2 (en) | 1998-05-14 |
DE69609256D1 (de) | 2000-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2846739B2 (ja) | Eepromメモリの安全更新方法 | |
KR100343377B1 (ko) | 비-휘발성메모리에의데이타기입 | |
JP3078946B2 (ja) | 一括消去型不揮発性メモリの管理方法及び半導体ディスク装置 | |
JP4037605B2 (ja) | 不揮発性メモリユニットのコントローラ、同コントローラを有するメモリシステム及び不揮発性メモリユニットの制御方法 | |
KR100877030B1 (ko) | 불휘발성 메모리 및 불휘발성 메모리의 데이터 재기록 방법 | |
JP3682256B2 (ja) | ディスクアレイ装置及び同装置におけるパリティ処理方法 | |
JP3233079B2 (ja) | データ処理システム及びデータ処理方法 | |
US20020085433A1 (en) | Data management system and data management method | |
US6883060B1 (en) | Microcomputer provided with flash memory and method of storing program into flash memory | |
KR20030043691A (ko) | 플래시 디바이스에서 부분적으로 소거된 유닛을 검출하는방법 | |
JP2001501000A (ja) | エラー検出および訂正を有する半導体メモリ装置 | |
JP2007128562A (ja) | 同期メモリを備えた電子部品 | |
JP2671860B2 (ja) | フラッシュメモリ用ファイルシステム | |
JPH0833864B2 (ja) | データ保全方式 | |
KR101548452B1 (ko) | 비휘발성 메모리 기반의 전자 장치의 메타 데이터 복원 방법 및 장치 | |
JP3675375B2 (ja) | 不揮発性メモリ並びに不揮発性メモリのデータ書き換え方法 | |
JP2002062956A (ja) | 停電処理方法及び停電処理装置 | |
EP3647952A1 (en) | Anti-tearing protection system for non-volatile memories | |
JP2003196165A (ja) | 不揮発性メモリ及びそのデータ更新方法 | |
EP2267725A1 (en) | Memory device for managing the recovery of a non volatile memory | |
JP3620478B2 (ja) | 記憶装置、この記憶装置を用いたデータ処理システム及びデータ読み出し方法 | |
US7313648B2 (en) | Corruption tolerant method and system for deploying and modifying data in flash memory | |
US7849279B2 (en) | Method for the secure updating data areas in non volatile memory, device to perform such a method | |
JP2001084180A (ja) | ファイル管理装置 | |
JPH10161942A (ja) | 情報記憶方法及び情報記憶装置及び情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071030 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081030 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091030 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101030 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111030 Year of fee payment: 13 |
|
LAPS | Cancellation because of no payment of annual fees |