JP4810108B2 - Icカードとその制御方法 - Google Patents

Icカードとその制御方法 Download PDF

Info

Publication number
JP4810108B2
JP4810108B2 JP2005060918A JP2005060918A JP4810108B2 JP 4810108 B2 JP4810108 B2 JP 4810108B2 JP 2005060918 A JP2005060918 A JP 2005060918A JP 2005060918 A JP2005060918 A JP 2005060918A JP 4810108 B2 JP4810108 B2 JP 4810108B2
Authority
JP
Japan
Prior art keywords
card
memory
data
instruction
nonvolatile 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.)
Active
Application number
JP2005060918A
Other languages
English (en)
Other versions
JP2006244270A (ja
Inventor
亜紀 福田
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2005060918A priority Critical patent/JP4810108B2/ja
Publication of JP2006244270A publication Critical patent/JP2006244270A/ja
Application granted granted Critical
Publication of JP4810108B2 publication Critical patent/JP4810108B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Credit Cards Or The Like (AREA)

Description

本発明は書き換えが可能な不揮発性メモリおよびCPUなどの制御素子を有し、外部からのデータ入出力を行う手段を備えたICチップを内蔵した、いわゆるICカードとその制御方法に関する。なお、このICカードは、接触、非接触、或いはコンビカードを含むものとする。
近年、ICカードが広範に利用されるようになってきている。このICカードは、外部からのデータの入出力が可能になっており、データは書き換え可能な不揮発性メモリに記憶される。また、ICカードの制御は、CPU等の制御素子で行われている。このようなICカードにおいて、ノイズやメモリの破損によりCPUが暴走した場合に、例えばウォッチドックタイマー動作によってCPUをリセットするような処置が行われている(特許文献1参照)。
このような場合において、上記のようなICカードは、ROM(読み出し専用メモリ)内にHALT(停止)命令を実装しており、暴走したときに、HALT命令により、CPUの処理を停止するようになっている。
しかし、現実的に、CPUが暴走したときには、ROMからコードを読み出す場合に、どのアドレスからコードを読み出すか推定すること(すなわち、アクセス先のアドレスを確定すること)はできない。従って、HALT命令が暴走したときに有効に働くかどうかが不明であり、暴走が停止するとは限らず、有効な暴走対策とはいえない。
特開2002−182898号公報
本発明は、有効な暴走対策を施したICカードとその制御方法を提供することを目的とする。
一実施形態に係るICカードは、所定のプログラムの実行及び各部の制御を実行する制御部と、前記プログラムの実行時において、作業用として使用されるランダムアクセスメモリと、所定のデータを記録する書き換え可能な不揮発性メモリと、を備え、カード起動時の自己診断処理及びATR出力処理後に前記ランダムアクセスメモリの空き領域にHALT命令を埋め込み、カード製造時のメモリチェック後に前記不揮発性メモリの空き領域にHALT命令を埋め込み、前記ランダムアクセスメモリ又は前記不揮発性メモリにアクセスする際に、前記ランダムアクセスメモリ又は前記不揮発性メモリから読み出された値が初期値を示す値であった場合に、当該命令をHALT命令として実行する。
本発明の一局面では、ワーキングメモリ(作業用メモリ、例えばRAM)、とデータメモリ(データ記憶用メモリ、例えばEEPROM)の空き領域に、HALT命令を初期値として書き込み、暴走したときに、HALT命令で停止するようにしている。他の局面では、デコーダに、RAM、EEPROMの初期値をHALT命令と解釈する処理を追加することで、暴走対策としている。
なお、本発明は、上記の処理を実行するハードウェアを装置に組み込んでも良いし、上記の処理を制御プログラム中の1つのプログラムで処理しても良い。また、本発明は、上記の処理を実行する方法の発明としても成立する。
本発明によれば、有効な暴走対策を施したICカードを提供することができる。
図面を参照して本発明の実施の形態を説明する。図1は、本発明の一実施形態に係るICカードを利用したシステムの全体構成を示す図である。
図1に示すように、本システムは、カードリーダ102と、端末103と、キーボード104と、CRT105と、プリンタ106とを備えている。ICカード101は、カードリーダ・ライタ102に着脱可能に装着(挿入)され、ICカード101に記録されたデータを読み込んだり、ICカード101にデータが書き込まれたりする。ICカード101からの読み出しデータは、このカードリーダ・ライタ102を介して端末103に転送され、ICカード101への書込データは、カードリーダ・ライタ102を介して端末103から転送される。これによって、ICカード101内のデータが書き換え、更新、或いは追加等なされる。また、端末103に接続されたキーボード103は、オペレターがICカード101への入力データや、書込、更新指示などを行うための入力装置である。また、CRT105と、プリンタ106は出力装置であって、所定の画面やフォーマットにより、ICカード101に書き込まれたデータを出力したり、更新データ等を出力したりする。
図2は、ICカード101の構成例を示すブロック図である。図2において、ICカード101は、ICチップ200と通信部206とを備えている。また、ICチップ200(破線の枠内の部分)は、1つ(或いは複数)のICチップで構成されており、制御素子201と、データメモリ202と、ワーキングメモリ203と、プログラムメモリ204と、デコーダ205とを備えている。なお、通信部206もICチップ200に搭載されていても良い。なお、ICチップ200と通信部206とが、樹脂等により、一体的にICモジュール化されて、ICカード101の本体内に埋設されている。通信部206は、接触式でも良いし、無線式でも良い。
制御素子(例えばCPU)201は、各部の制御やプログラムの実行を行う。データメモリ202は、各種データの記憶に使用されるデータ記憶用メモリであり、例えば、書き換え可能な不揮発性メモリ(例えば、EEPROM)である。また、ワーキングメモリ203は、制御素子201が処理を行う際の処理データを一時的に保持するためのメモリ(すなわち、作業用メモリ)であり、例えば、RAM(ランダムアクセスメモリ)で構成される。プログラムメモリ204は、たとえば、マスクROMで構成されており、制御素子201で動作するプログラムなどを記憶する。デコーダ205は、制御素子201に接続されており、特定のアドレス(例えば、RAM、EEPROM)の場合に、読み出した命令コードの値が、初期値である場合に、当該命令コードをHALT命令にデコードする機能を備えている。
図3は、ICカードのRAMエリアのデータ空間の一例を示す図である。第1のデータ格納部301および第2のデータ格納部302には、ICカード101内で処理に必要なデータが格納されている。図3において、例えば、前記2つの格納部301、302の境界に、空き領域302があることが示されている。
図4は、ICカードのEEPROMエリアのデータ空間の一例を示す図である。第1のデータ格納部401および第2のデータ格納部402には、ICカード101内で処理に必要なデータが格納されている。図4において、例えば、前記2つの格納部401、402の境界に、空き領域402があることを示している。
図5を参照して上記のように構成されたICカード101の起動時の処理を説明する。図5は、ICカードの起動時の処理を示すフローチャートである。
まず、制御素子201のリセットの解除後に、プログラムがプログラムメモリ204から読み込まれて実行開始される(ステップ501)。次に、カード起動処理として、制御素子201が、例えば、レジスタのチェック、ワーキングメモリ203(RAM)のチェックなどの自己診断、ATR出力などを実行する(ステップ502)。そして、ワーキングメモリ203の全ての空き領域にHALT命令を書き込む(すなわち、HALT命令で埋める)処理を実行する(ステップ503)。HALT命令の埋め込みが終了したら、起動処理を完了する(ステップ504)。
図6は、カード製造時におけるデータメモリ202に対するメモリチェックの処理を示すフローチャートである。
メモリチェックを開始すると(ステップ601)、データメモリ202(EEPROM)の書き込み、読み出しチェック(検査)を行う。ここで、欠陥メモリ素子は別途管理されるので、本明細書では、メモリ素子が全て正常であるものとして、説明を行う。そして、データメモリ202のメモリの初期値として、HALT命令を全メモリ領域に書き込んで(ステップ602)、メモリチェック処理を終了する(ステップ604)。
上記のように、全ての空き領域にHALT命令を書き込む(すなわちHALT命令で埋める)ことで、CPUが暴走した場合であっても、HALT命令を実行する可能性が高くなるので、CPUの暴走を止めることができる。
ところで、基本的に、初期状態のときは、空き領域に書き込まれた情報は「Null」の可能性が高い。すなわち、CPUの動作の開始時におけるワーキングメモリ203の初期化では、ワーキングメモリ203の全てのデータが消去された状態になる。更に、データメモリ202についても同様であって、データの追加、更新、削除等の動作において、空き領域にデータが残っている場合があるが、基本的に、空き領域のデータは消去状態にあることが多い。従って、空き領域の全メモリ素子のデータは消去状態であるものとする。なお、データの更新や消去時にインデックスのみを変更するのではなく、実際にデータも消去することが好ましい。以下、本明細書において、メモリ素子のデータの消去状態のときの値を「初期値」として説明を行う。
図7は、本発明の他の実施形態の流れを示すフローチャートであって、上記の実施形態のように、HALT命令が書き込まれていない場合における、制御素子201(すなわち、CPU)での命令解釈処理を示すフローチャートである。
図7において、制御素子201が処理を開始すると(ステップ701)、制御素子201のアクセスするアドレスがワーキングメモリ203(RAM)かどうかをチェックする(ステップ702)。アドレスがRAMの場合には、命令を読み込み、この読み込んだ命令が初期値を示す値かどうかをチェックする(ステップ703)。ここで、命令が初期値でない場合には(ステップ704のNO)、ステップ703で読み込んだ命令を実行する(ステップ704)。ステップ703において、読み込んだ命令が初期値の場合には、HALT処理を実行する(ステップ705)。
次に、ステップ702において、アドレスがRAMではない場合に、アドレスがデータメモリ202(EEPROM)かどうかをチェックする(ステップ706)。ここで、アドレスがEEPROMの場合には、命令を読み込み、この読み込んだ命令が初期値を示す値かどうかをチェックする(ステップ707)。ここで、命令が初期値でない場合には(ステップ707のNO)、ステップ707で読み込んだ命令を実行する(ステップ708)。ステップ707において、読み込んだ命令が初期値の場合には、HALT処理を実行する(ステップ709)。ステップ706において、アドレスがEEPROMでない場合には、読み込んだ命令を実行する。
上記のように、通常スキップされるような初期値に対して、HALT命令とみなす処理を行うようにしたので、CPUが暴走した場合に、有効に停止できる。
本発明は、上記各実施の形態に限ることなく、その他、実施段階ではその要旨を逸脱しない範囲で種々の変形を実施し得ることが可能である。さらに、上記各実施形態には、種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組合せにより種々の発明が抽出され得る。
また、例えば各実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
本発明の一実施形態に係るICカードを利用したシステムの全体構成を示す図。 ICカード101の構成例を示すブロック図。 ICカードのRAMエリアのデータ空間の一例を示す図。 ICカードのEEPROMエリアのデータ空間の一例を示す図。 ICカードの起動時の処理を示すフローチャート。 カード製造時におけるデータメモリ202に対するメモリチェックの処理を示すフローチャート。 本発明の他の実施形態の流れを示すフローチャート。
符号の説明
ROM…マスク
101…ICカード
102…カードリーダ
102…カードリーダ・ライタ
103…端末
103…キーボード
104…キーボード
105…CRT
106…プリンタ
200…ICチップ
201…制御素子(制御部)
202…データメモリ(第2のメモリ)
203…ワーキングメモリ(第1のメモリ)
204…プログラムメモリ
205…デコーダ
206…通信部
301…第1のデータ格納部
302…第2のデータ格納部
302…空き領域
401…第1のデータ格納部
402…第2のデータ格納部
402…空き領域

Claims (2)

  1. 所定のプログラムの実行及び各部の制御を実行する制御部と、
    前記プログラムの実行時において、作業用として使用されるランダムアクセスメモリと、
    所定のデータを記録する書き換え可能な不揮発性メモリと、を備え、
    カード起動時の自己診断処理及びATR出力処理後に前記ランダムアクセスメモリの空き領域にHALT命令を埋め込み、カード製造時のメモリチェック後に前記不揮発性メモリの空き領域にHALT命令を埋め込み、前記ランダムアクセスメモリ又は前記不揮発性メモリにアクセスする際に、前記ランダムアクセスメモリ又は前記不揮発性メモリから読み出された値が初期値を示す値であった場合に、当該命令をHALT命令として実行することを特徴とするICカード。
  2. 所定のプログラムの実行及び各部の制御を実行する制御部と、前記プログラムの実行時において、作業用として使用されるランダムアクセスメモリと、所定のデータを記録する書き換え可能な不揮発性メモリと、を備えたICカードの制御方法において、
    カード起動時の自己診断処理及びATR出力処理後に前記ランダムアクセスメモリの空き領域にHALT命令を埋め込み、カード製造時のメモリチェック後に前記不揮発性メモリの空き領域にHALT命令を埋め込み、前記ランダムアクセスメモリ又は前記不揮発性メモリにアクセスする際に、前記ランダムアクセスメモリ又は前記不揮発性メモリから読み出された値が初期値を示す値であった場合に、当該命令をHALT命令として実行することを特徴とするICカードの制御方法。
JP2005060918A 2005-03-04 2005-03-04 Icカードとその制御方法 Active JP4810108B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005060918A JP4810108B2 (ja) 2005-03-04 2005-03-04 Icカードとその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005060918A JP4810108B2 (ja) 2005-03-04 2005-03-04 Icカードとその制御方法

Publications (2)

Publication Number Publication Date
JP2006244270A JP2006244270A (ja) 2006-09-14
JP4810108B2 true JP4810108B2 (ja) 2011-11-09

Family

ID=37050613

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005060918A Active JP4810108B2 (ja) 2005-03-04 2005-03-04 Icカードとその制御方法

Country Status (1)

Country Link
JP (1) JP4810108B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5034460B2 (ja) * 2006-11-29 2012-09-26 大日本印刷株式会社 情報処理装置とそのプログラム、情報処理装置の製造方法、及び、情報処理装置の使用方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62221729A (ja) * 1986-03-13 1987-09-29 Fujitsu Ltd マイクロプログラム制御方式
JPS63298536A (ja) * 1987-05-29 1988-12-06 Mitsubishi Electric Corp プログラム暴走防止装置
JPH01311692A (ja) * 1988-06-09 1989-12-15 Nec Corp ボタン電話装置
JPH06218130A (ja) * 1993-01-29 1994-08-09 Sophia Co Ltd 遊技機制御装置
JP3398788B2 (ja) * 1994-12-14 2003-04-21 三菱電機株式会社 クロック発生回路
JPH09231191A (ja) * 1996-02-28 1997-09-05 Nec Corp マイクロコンピュータ
JP3848152B2 (ja) * 2001-12-20 2006-11-22 株式会社東芝 多機能icカード

Also Published As

Publication number Publication date
JP2006244270A (ja) 2006-09-14

Similar Documents

Publication Publication Date Title
JP4768237B2 (ja) 携帯可能電子装置及び携帯可能電子装置の制御方法
JP4810108B2 (ja) Icカードとその制御方法
JP4950533B2 (ja) 携帯可能電子装置およびicカード
JP4452158B2 (ja) 不揮発性メモリシステム
JP2006252284A (ja) 携帯可能電子装置およびicカード
JP6040895B2 (ja) マイクロコンピュータ及び不揮発性メモリのブロック管理方法
JP4868979B2 (ja) 携帯可能電子装置およびicカード
JP2006293706A (ja) アプリケーションの更新機能を有するマルチアプリケーションicカード
US20140223036A1 (en) Peripheral, method of controlling peripheral, and firmware downloading system
JP2001167236A (ja) 携帯可能電子装置
JP2004334745A (ja) Icカード
JP4235624B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JPH01263892A (ja) 携帯可能電子装置
JPH03158184A (ja) 制御プログラムによつて動作するミシン
JP4784138B2 (ja) Icカード、および、icカード用プログラム
JP2005531842A (ja) 不揮発性メモリへの書き込み方法およびこの方法を実現するシステム
JP5341947B2 (ja) Icカード、icカードの制御方法、および携帯可能電子装置の制御方法
JP5075404B2 (ja) 携帯可能電子装置、携帯可能電子装置におけるファイルアクセス方法およびicカード
JP2008152452A (ja) 携帯可能電子装置、携帯可能電子装置の制御方法およびicカード
JP2008047040A (ja) 携帯可能電子装置およびicカード
JP2007034434A (ja) Icカード、icカードへのデータ書込み方法、および、icカードプログラム
JP3840510B2 (ja) マイクロ・コンピュータ
JP5492172B2 (ja) 携帯可能電子装置、icカードおよびicモジュール
JP6015461B2 (ja) 情報記録媒体、データ読み書き方法、及びデータ読み書きプログラム
JP2598056B2 (ja) 携帯可能電子装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110307

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110329

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110629

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110704

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110726

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110822

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140826

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4810108

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151