(57)【要約】【課題】処理の円滑化、効率化及び迅速化を図ることが可能な携帯型情報記憶媒体及びそのプログラムを提供する。【解決手段】外部端末２０からコマンドを受信するＩ／Ｆ１１と、Ｉ／Ｆ１１によって受信されるコマンドに応じて処理を行う処理部１３１とを備えるＩＣカード１０において、コマンドと、応答制限時間パラメータとを含み、他のコマンドと同様のフォーマットを有するリアルタイムコマンドを受信した場合に、処理部１３１によってリアルタイムコマンドに含まれる命令に応じて行われる処理が、応答制限時間内に終了しなかったことを検出するタイマー割り込み部１２及び割り込み設定部１３２とを備え、応答制限時間内に処理が終了しなかったことを検出した場合にその旨を外部端末２０に通知することを特徴とする。【選択図】図１
2005301938.tif 000002
【特許請求の範囲】
【請求項１】
外部端末から命令を受信する命令受信手段と、前記命令受信手段によって受信される命令に応じて処理を行う処理手段とを備える携帯型情報記憶媒体において、
前記命令受信手段によって、命令と、処理期限情報とを含む期限含有命令を受信した場合に、前記処理手段によって前記期限含有命令に含まれる命令に応じて行われる処理が、前記処理期限情報が示す処理期限内に終了するか否かを判定する処理期限判定手段を備えること、
を特徴とする携帯型情報記憶媒体。
【請求項２】
請求項１に記載の携帯型情報記憶媒体において、
前記処理手段によって命令に応じて行われる処理にかかる時間の予測である予測処理時間を記憶する予測処理時間記憶手段を備え、
前記処理期限判定手段は、前記命令受信手段によって期限含有命令を受信した場合に、前記予測処理時間記憶手段に記憶されている、前記期限含有命令に含まれる命令の処理にかかる予測処理時間と、前記期限含有命令に含まれる処理期限情報が示す処理期限とに基づいて、前記判定を行うこと、
を特徴とする携帯型情報記憶媒体。
【請求項３】
請求項２に記載の携帯型情報記憶媒体において、
前記処理期限判定手段によって否と判定された場合に、その旨を外部端末に通知する期限超過通知手段を備えること、
を特徴とする携帯型情報記憶媒体。
【請求項４】
請求項１に記載の携帯型情報記憶媒体において、
前記処理期限判定手段は、前記命令受信手段によって期限含有命令を受信した場合に、前記処理手段によって前記期限含有命令に含まれる命令に応じて行われる処理が、前記処理期限情報が示す処理期限内に終了しなかったことを検出する期限超過検出手段を有し、前記期限超過検出手段によって前記処理が終了しなかったことを検出した場合に、否と判定し、
前記処理期限判定手段によって否と判定された場合に、その旨を外部端末に通知する期限超過通知手段を備えること、
を特徴とする携帯型情報記憶媒体。
【請求項５】
請求項３又は請求項４に記載の携帯型情報記憶媒体において、
前記処理手段は、前記処理期限判定手段によって否と判定された場合に、前記期限含有命令に含まれる命令に応じた処理を止め、
前記期限超過通知手段は、処理を止めた旨を外部端末に通知すること、
を特徴とする携帯型情報記憶媒体。
【請求項６】
請求項１から請求項５までのいずれか１項に記載の携帯型情報記憶媒体において、
前記命令受信手段は、他の命令と同様のフォーマットを有し、そのデータ部に命令が入れ子状態で格納されている前記処理期限含有命令を受信し、
前記処理期限判定手段は、前記命令受信手段によって受信された処理期限含有命令のデータ部に格納されている命令に応じて前記処理手段によって行われる処理が、前記処理期限含有命令に含まれる処理期限情報が示す処理期限内に終了するか否かを判定すること、
を特徴とする携帯型情報記憶媒体。
【請求項７】
外部端末から命令を受信する命令受信手順と、前記命令受信手順において受信した命令に応じて処理を行う処理手順とを携帯型情報記憶媒体に実行させる携帯型情報記憶媒体のプログラムにおいて、
前記命令受信手順において、命令と、処理期限情報とを含む期限含有命令を受信した場合に、前記処理手順において前記期限含有命令に含まれる命令に応じて行われる処理が、前記処理期限情報が示す処理期限内に終了するか否かを判定する処理期限判定手順を備えること、
を特徴とする携帯型情報記憶媒体のプログラム。
【請求項８】
請求項７に記載の携帯型情報記憶媒体のプログラムにおいて、
前記携帯型情報記憶媒体は、前記処理手順において命令に応じて行う処理にかかる時間の予測である予測処理時間を記憶する予測処理時間記憶手段を有し、
前記処理期限判定手順は、前記命令受信手順において期限含有命令を受信した場合に、前記予測処理時間記憶手段によって記憶されている、前記期限含有命令に含まれる命令の処理にかかる予測処理時間と、前記期限含有命令に含まれる処理期限情報が示す処理期限とに基づいて、前記判定を行うこと、
を特徴とする携帯型情報記憶媒体のプログラム。
【請求項９】
請求項８に記載の携帯型情報記憶媒体のプログラムにおいて、
前記処理期限判定手順において否と判定した場合に、その旨を外部端末に通知する期限超過通知手順を備えること、
を特徴とする携帯型情報記憶媒体のプログラム。
【請求項１０】
請求項７に記載の携帯型情報記憶媒体のプログラムにおいて、
前記処理期限判定手順は、前記命令受信手順において期限含有命令を受信した場合に、前記処理手順において前記期限含有命令に含まれる命令に応じて行われる処理が、前記処理期限情報が示す処理期限内に終了しなかったことを検出する期限超過検出手順を有し、前記期限超過検出手順において前記処理が終了しなかったことを検出した場合に、否と判定し、
前記処理期限判定手順において否と判定した場合に、その旨を外部端末に通知する期限超過通知手順を備えること、
を特徴とする携帯型情報記憶媒体のプログラム。
【請求項１１】
請求項９又は請求項１０に記載の携帯型情報記憶媒体のプログラムにおいて、
前記処理手順は、前記処理期限判定手順において否と判定した場合に、前記期限含有命令に含まれる命令に応じた処理を止め、
前記期限超過通知手順は、処理を止めた旨を外部端末に通知すること、
を特徴とする携帯型情報記憶媒体のプログラム。
【請求項１２】
請求項７から請求項１１までのいずれか１項に記載の携帯型情報記憶媒体のプログラムにおいて、
前記命令受信手順は、他の命令と同様のフォーマットを有し、そのデータ部に命令が入れ子状態で格納されている前記処理期限含有命令を受信し、
前記処理期限判定手順は、前記命令受信手順において受信した処理期限含有命令のデータ部に格納されている命令に応じて前記処理手順において行う処理が、前記処理期限含有命令に含まれる処理期限情報が示す処理期限内に終了するか否かを判定すること、
を特徴とする携帯型情報記憶媒体のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣカードなどの携帯型情報記憶媒体及びそのプログラムに関するものである。携帯型情報記憶媒体とは、ＩＣカード、ＳＩＭ（Ｓｕｂｓｃｒｉｂｅｒ  Ｉｄｅｎｔｉｔｙ  Ｍｏｄｕｌｅ）、ＵＩＭ（Ｕｓｅｒ  Ｉｄｅｎｔｉｔｙ  Ｍｏｄｕｌｅ）、ＩＣタグなど、ＩＣと、外部端末及びＩＣ間の通信を媒介する通信部及びインターフェイスなどとを備え、内部のデータにアクセスするためにこのＩＣによって、外部端末が認証されることが前提となるなど、所定の外部端末によるコマンド（処理要求）の送信などの所定の処理が必要な、耐タンパ性の高い携帯型の情報処理装置である。耐タンパ性とは、内部秘密情報の改竄、無許可な変更、外部への漏洩など、外部から内部秘密情報への攻撃に対する耐性である。
【背景技術】
【０００２】
近年、携帯電話機などの移動体通信端末において、ＳＩＭやＵＩＭなど、加入者識別モジュールなどの機器に組み込むためのＩＣカードが普及しはじめている。例えば、購買者が移動体通信端末を用いて自動販売機から商品を購入しようとする場合に、移動体通信端末に装着されたＩＣカードに書き込まれた個人属性情報を自動販売機が読み取って認識し、あらかじめ設定された購買者制限条件と比較することによって、当該購買者が商品購入の制限を受ける者か否かを判断する利用者層の識別方法がある（例えば、特許文献１参照。）。
また、ＵＩＭをＰＤＡなどの機器に組み込み、無線ＬＡＮにおけるセキュリティを確保するための認証仕様「ＷＬＡＮ−ＳＩＭ  Ｖ０．１」が業界団体ＷＬＡＮ  Ｓｍａｒｔ  Ｃａｒｄ  Ｃｏｎｓｏｒｔｉｕｍで検討されている。今後、携帯電話やＰＤＡなどの携帯型の情報処理装置だけでなく、情報家電やネットワークに接続される各種制御機器がこうしたＵＩＭをセキュリティモジュールとして採用していく可能性が高くなっている。
これらの機器に内蔵されるマイコンを制御するための組み込み用途向けのソフトウェアには、ある一つの処理にずっと関わって他の処理への対応が遅れることを防止し、応答がある一定の時間内になければならない必要性のため、専用のリアルタイムオペレーティングシステム（以下、「オペレーティングシステム」を「ＯＳ」という。）が採用されている。リアルタイムＯＳは、処理をリアルタイムに実行することを重視し、そのための機能を実装したＯＳであって、必要な処理時間の予測を行う機能や、複数の処理要求が同時に発生した場合でも目的の時間内に処理を完了させるための機構が必要とされる。
これらの機器などの外部端末のＯＳは、ＵＩＭを使って認証や暗号処理を行う場合、ＵＩＭに対してコマンド、データを送信し、ＵＩＭから応答があるまで待つ。
【特許文献１】特開２００２−１０９４４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、その応答時間は保証されないためシステム全体としての応答時間が予測しづらくなるという問題があった。
一方、ＩＳＯ７８１６  ｐａｒｔ３（以下、「ｐａｒｔＮ」を「−Ｎ」という。）やＪＩＳ  Ｘ６３０４で「Ｔ＝１」（調歩式半二重ブロック式通信プロトコル）という通信方式が定義されている。これはＩＣカードがコマンドを受信後、ある一定の時間内に応答を返せないときには、必ずＷＴＸ（待ち時間延長）の応答を外部端末に返すよう決められている。この方法は、ＩＣカードが何らかの理由で処理を中断してしまい無応答になってしまったような状態を端末が検出するのには有効である。
しかし、通信開始時に応答制限時間を決めるため、応答制限時間をコマンド毎に変化させることができないという問題があった。
また、あくまで時間延長であり、結果が出ずに次々と何秒も延長されてしまい、外部端末の処理が待たされる可能性もあった。
更に、制御用のＵＩＭであっても、第三世代携帯電話に用いられる場合には、入れ替えられるため、外部端末の通信相手となるＩＣチップが複数の種類となり、処理速度がＩＣチップの種類によって異なる場合も考えられる。従って、Ｔ＝１の仕組みでは、外部端末は、何秒待てばよいのか判断がつかず、一層対応が困難となるという問題があった。
【０００４】
本発明の課題は、処理の円滑化、効率化及び迅速化を図ることが可能な携帯型情報記憶媒体及びそのプログラムを提供することである。
【課題を解決するための手段】
【０００５】
本発明は、以下のような解決手段により、前記課題を解決する。なお、理解を容易にするために、本発明の実施例に対応する符号を付して説明するが、これに限定されるものではない。すなわち、請求項１の発明は、外部端末（２０）から命令を受信する命令受信手段（１１）と、前記命令受信手段によって受信される命令に応じて処理を行う処理手段（１３１）とを備える携帯型情報記憶媒体において、前記命令受信手段によって、命令と、処理期限情報とを含む期限含有命令を受信した場合に、前記処理手段によって前記期限含有命令に含まれる命令に応じて行われる処理が、前記処理期限情報が示す処理期限内に終了するか否かを判定する処理期限判定手段（１２，１３２、１３４）を備えること、を特徴とする携帯型情報記憶媒体（１０）である。
【０００６】
請求項２の発明は、請求項１に記載の携帯型情報記憶媒体において、前記処理手段によって命令に応じて行われる処理にかかる時間の予測である予測処理時間を記憶する予測処理時間記憶手段（１４−２）を備え、前記処理期限判定手段は、前記命令受信手段によって期限含有命令を受信した場合に、前記予測処理時間記憶手段に記憶されている、前記期限含有命令に含まれる命令の処理にかかる予測処理時間と、前記期限含有命令に含まれる処理期限情報が示す処理期限とに基づいて、前記判定を行うこと（Ｓ３８０、Ｓ５４０，Ｓ５５０、Ｓ５６０）、を特徴とする携帯型情報記憶媒体（１０−２）である。
【０００７】
請求項３の発明は、請求項２に記載の携帯型情報記憶媒体において、前記処理期限判定手段によって否と判定された場合に、その旨を外部端末に通知する期限超過通知手段（１１，１３１）を備えること、を特徴とする携帯型情報記憶媒体（１０−２）である。
【０００８】
請求項４の発明は、請求項１に記載の携帯型情報記憶媒体において、前記処理期限判定手段は、前記命令受信手段によって期限含有命令を受信した場合に、前記処理手段によって前記期限含有命令に含まれる命令に応じて行われる処理が、前記処理期限情報が示す処理期限内に終了しなかったことを検出する期限超過検出手段（１２）を有し、前記期限超過検出手段によって前記処理が終了しなかったことを検出した場合に、否と判定し、前記処理期限判定手段によって否と判定された場合に、その旨を外部端末に通知する期限超過通知手段（１１，１３１）を備えること、を特徴とする携帯型情報記憶媒体（１０）である。
【０００９】
請求項５の発明は、請求項３又は請求項４に記載の携帯型情報記憶媒体において、前記処理手段は、前記処理期限判定手段によって否と判定された場合に、前記期限含有命令に含まれる命令に応じた処理を止め、前記期限超過通知手段は、処理を止めた旨を外部端末に通知すること、を特徴とする携帯型情報記憶媒体（１０、１０−２）である。
【００１０】
請求項６の発明は、請求項１から請求項５までのいずれか１項に記載の携帯型情報記憶媒体において、前記命令受信手段は、他の命令と同様のフォーマットを有し、そのデータ部に命令が入れ子状態で格納されている前記処理期限含有命令を受信し、前記処理期限判定手段は、前記命令受信手段によって受信された処理期限含有命令のデータ部に格納されている命令に応じて前記処理手段によって行われる処理が、前記処理期限含有命令に含まれる処理期限情報が示す処理期限内に終了するか否かを判定すること、を特徴とする携帯型情報記憶媒体（１０、１０−２）である。
【００１１】
請求項７の発明は、外部端末から命令を受信する命令受信手順（Ｓ１３０、Ｓ３３０、Ｓ５３０）と、前記命令受信手順において受信した命令に応じて処理を行う処理手順（Ｓ１８０、Ｓ３９０，Ｓ４００、Ｓ５７０，Ｓ５８０）とを携帯型情報記憶媒体（１０、１０−２）に実行させる携帯型情報記憶媒体のプログラムにおいて、前記命令受信手順において、命令と、処理期限情報とを含む期限含有命令を受信した場合に、前記処理手順において前記期限含有命令に含まれる命令に応じて行われる処理が、前記処理期限情報が示す処理期限内に終了するか否かを判定する処理期限判定手順（Ｓ２１０、Ｓ３８０、Ｓ４２０、Ｓ５４０，Ｓ５５０、Ｓ５６０）を備えること、を特徴とする携帯型情報記憶媒体のプログラムである。
【００１２】
請求項８の発明は、請求項７に記載の携帯型情報記憶媒体のプログラムにおいて、前記携帯型情報記憶媒体は、前記処理手順において命令に応じて行う処理にかかる時間の予測である予測処理時間を記憶する予測処理時間記憶手段（１４−２）を有し、前記処理期限判定手順は、前記命令受信手順において期限含有命令を受信した場合に、前記予測処理時間記憶手段によって記憶されている、前記期限含有命令に含まれる命令の処理にかかる予測処理時間と、前記期限含有命令に含まれる処理期限情報が示す処理期限とに基づいて、前記判定を行うこと（Ｓ３８０、Ｓ５４０，Ｓ５５０、Ｓ５６０）、を特徴とする携帯型情報記憶媒体のプログラムである。
【００１３】
請求項９の発明は、請求項８に記載の携帯型情報記憶媒体のプログラムにおいて、前記処理期限判定手順において否と判定した場合に、その旨を外部端末に通知する期限超過通知手順（Ｓ４４０、Ｓ６１０）を備えること、を特徴とする携帯型情報記憶媒体のプログラム。
【００１４】
請求項１０の発明は、請求項７に記載の携帯型情報記憶媒体のプログラムにおいて、前記処理期限判定手順は、前記命令受信手順において期限含有命令を受信した場合に、前記処理手順において前記期限含有命令に含まれる命令に応じて行われる処理が、前記処理期限情報が示す処理期限内に終了しなかったことを検出する期限超過検出手順（Ｓ２１０）を有し、前記期限超過検出手順において前記処理が終了しなかったことを検出した場合に、否と判定し、前記処理期限判定手順において否と判定した場合に、その旨を外部端末に通知する期限超過通知手順（Ｓ２２０）を備えること、を特徴とする携帯型情報記憶媒体のプログラムである。
【００１５】
請求項１１の発明は、請求項９又は請求項１０に記載の携帯型情報記憶媒体のプログラムにおいて、前記処理手順は、前記処理期限判定手順において否と判定した場合に、前記期限含有命令に含まれる命令に応じた処理を止め、前記期限超過通知手順は、処理を止めた旨を外部端末に通知すること、を特徴とする携帯型情報記憶媒体のプログラムである。
【００１６】
請求項１２の発明は、請求項７から請求項１１までのいずれか１項に記載の携帯型情報記憶媒体のプログラムにおいて、前記命令受信手順は、他の命令と同様のフォーマットを有し、そのデータ部に命令が入れ子状態で格納されている前記処理期限含有命令を受信し、前記処理期限判定手順は、前記命令受信手順において受信した処理期限含有命令のデータ部に格納されている命令に応じて前記処理手順において行う処理が、前記処理期限含有命令に含まれる処理期限情報が示す処理期限内に終了するか否かを判定すること、を特徴とする携帯型情報記憶媒体のプログラムである。
【発明の効果】
【００１７】
本発明による携帯型情報記憶媒体及びそのプログラムによれば、以下の効果を得ることが可能となる。
（１）処理期限情報を含む期限含有命令を受信し、処理が処理期限内に終了するか否かを判定することによって、各命令の処理内容に応じた適切な応答制限時間を外部端末側で予め設定することができ、処理の円滑化、効率化及び迅速化を図る。また、将来、携帯型情報記憶媒体に搭載されるＯＳがマルチタスクになった場合に、処理期限に余裕があれば他の処理をしてから応答するなど、優先度の目安とし、処理の効率化及び迅速化を図る。更に、処理期限に余裕がある場合や、処理速度を要求されない場合に、低消費電力モードで動作するなどの判断が可能となる。
（２）処理期限内に処理が終了しなかったことを検出し、その旨を外部端末に通知することによって、外部端末は、携帯型情報記憶媒体に対する処理を中止し、他の処理を行うことができるなど、処理速度を保証することができ、処理の円滑化、効率化及び迅速化を図る。
（３）予測処理時間と、処理期限とに基づいて、処理期限内に処理が終了するか否かを判定することによって、処理を行う前に処理が終了するか否かを予測することができ、処理の円滑化、効率化及び迅速化を図る。
（４）また、処理が終了しないと予測した場合に、外部端末に通知することによって、外部端末は、携帯型情報記憶媒体に対する処理を止めて、他の処理を行うことができるなど、処理速度を保証することができ、処理の円滑化、効率化及び迅速化を図る。
（５）処理期限内に処理が終了しないと判定した場合に、処理を止めることによって、他の命令を受け入れる態勢となり、外部端末の次の命令に対処することができ、処理の円滑化、効率化及び迅速化を図る。
（６）従来のコマンドなど、他の命令と同様のフォーマットを有し、データ部に命令が入れ子状態で格納されている処理期限含有命令を受信し、この処理期限含有命令に応じて処理を行うことによって、携帯型情報記憶媒体は、他の命令と同様に処理期限含有命令を識別することができ、汎用性を向上する。
【発明を実施するための最良の形態】
【００１８】
本発明は、処理の円滑化、効率化及び迅速化を図るという目的を、外部端末からコマンドを受信するコマンド受信部と、受信したコマンドに応じて処理を行う処理部とを備える携帯型情報記憶媒体において、コマンドと、処理期限情報とを含み、他のコマンドと同様のフォーマットを有する処理期限含有コマンドを受信した場合に、処理部によって処理期限含有コマンドに含まれるコマンドに応じて行われる処理が、処理期限内に終了しなかったことを検出する期限超過検出部と、期限超過検出部が、処理が終了しなかったことを検出した場合にその旨のレスポンスを外部端末に送信するレスポンス送信部とを備え、処理部は、期限超過検出部が、処理が終了しなかったことを検出した場合にコマンドに応じた処理を中断することによって実現する。
【実施例１】
【００１９】
以下、図面などを参照して、本発明の実施例をあげて、さらに詳しく説明する。
図１は、本発明による携帯型情報記憶媒体の構成を示すブロック図である。なお、本実施例における携帯型情報記憶媒体は、ＩＣカード１０である。
図１に示すようにＩＣカード１０は、リーダライタ（以下、「Ｒ／Ｗ」という。）を備える情報処理装置である外部端末２０と通信することが可能であって、外部端末２０からコマンド（命令）を受信し、このコマンドに応じて処理を行い、処理結果をレスポンス（応答）として外部端末２０へ返信する携帯型情報記憶媒体である。ＩＣカード１０は、説明の便宜上、ＩＳＯ７８１６−４に準拠するものとする。なお、いずれの規格に準拠するかは、限定されない。
ＩＣカード１０は、Ｉ／Ｆ１１、タイマー割り込み部１２、ＣＰＵ１３、メモリ１４などを備え、ＣＰＵ１３に各部１１，１２，１４が接続されている。
Ｉ／Ｆ１１は、ＩＣカード１０が外部端末２０のＲ／Ｗに挿入された場合に、Ｒ／Ｗの接触端子と接触する接触端子を備え、外部端末２０及びＣＰＵ１３間の接触式の通信を実現するためのインターフェイス回路である。Ｉ／Ｆ１１が可能な通信方式は、外部端末２０との通信を実現することができれば、接触式、非接触式のいずれであっても、両方であってもよく限定されない。
【００２０】
タイマー割り込み部１２は、タイマーなどを備え、ＣＰＵ１３の割り込み処理部１３２によって設定された時間が経過した場合に、割り込みを発生する回路であって、設定された時間内に処理部１３１の処理が終了しなかったことを検出する。なお、タイマー割り込み部１２は、ハードウェア的な割り込みを行うが、このタイマー割り込み部１２の代わりに、ソフトウェア的な割り込みを行うタイマー割り込み部を備えていてもよい。指定時間が経過した場合に、強制的に所定の処理を行う仕組みであれば、その実現方法は限定されない。
ＣＰＵ１３は、メモリ１４に記憶されているプログラムを実行することによって、処理部１３１、割り込み処理部１３２などを実現し、ＩＣカード１０を統括制御する。
処理部１３１は、外部端末２０から受信したコマンドに応じて処理を行い、その処理結果をレスポンスとして返信する。また、処理部１３１は、タイマー割り込み部１２による割り込みがあった場合には、処理を中断し、所定の処理を行う。
割り込み処理部１３２は、タイマー割り込み部１２のタイマーの始動、割り込み時間をコマンドで指定される応答制限時間に合わせるなどのタイマーの設定などを行う。割り込み処理部１３２及びタイマー割り込み部１２は、応答制限時間内に処理部１３１の処理が終了しなかったことを検出する。
【００２１】
メモリ１４は、ＣＰＵ１３が処理を行うための作業領域として使用される揮発性メモリであるＲＡＭと、ＯＳなどの基本ソフトウェアを記憶する不揮発性の読み出し専用メモリであるＲＯＭと、ユーザのワークエリア、プログラムエリアなどとして使用されるＥＥＰＲＯＭ、フラッシュメモリ、ＦＲＡＭなどの随時書き換え可能な不揮発性のメモリである不揮発性メモリなどとを備える記憶装置である。メモリ１４は、ＯＳ、アプリケーションなどのプログラム、プログラムの実行に必要なデータなどを記憶している。
【００２２】
図２は、ＩＣカード１０で利用可能なコマンドのフォーマットを示す図であって、図２（ａ）は、ＩＳＯ７８１６−４に準拠するコマンドのフォーマットを示し、図２（ｂ）は、ＩＣカード１０及び外部端末２０に実装されているリアルタイムコマンドのフォーマットを示している。
ＩＣカード１０は、ＩＳＯ７８１６−４に準拠している。図２（ａ）に示すように、ＩＳＯ７８１６−４では、外部端末２０からＩＣカード１０に送られるコマンドは、ＣＬＡ、ＩＮＳ、Ｐ１及びＰ２を含む見出し部（ヘッダ）、Ｌｃ、データ部などを含む本体部から構成される。ＣＬＡは、命令クラスであって、主にそのコマンドがＩＳＯに準拠するかどうかを示し、ＩＮＳは、命令コードであって、コマンドの種類を示し、ＣＬＡ及びＩＮＳでコマンドの識別情報を構成する。また、Ｐ１、Ｐ２は、このコマンドにおけるパラメータであって、Ｌｃは、データ部の長さを示し、データ部は、受信するバイト列、Ｌｅは、このコマンドに対するレスポンスのデータ部内に期待される最大バイト数を示している。ＩＳＯ７８１６−４では、Ｌｃ及びデータ部の有無、Ｌｅの有無で異なる４種類（Ｃ１〜Ｃ４）のコマンドのフォーマットが採用されている。
【００２３】
例えば、ＶＥＲＩＦＹコマンドの場合には、以下のようになる。
「0x00 20 00 01 04 0A 0B 0C 0D」
ＶＥＲＩＦＹコマンドは、外部端末２０からパスワードなどを送り、登録されているパスワードとの照合など、ＩＣカード１０に対して照合を要求するコマンドであって、この処理の結果（照合結果）によって、続く処理を行うかどうかを決定するために使用される。なお、上記のＶＥＲＹＦＹコマンドにおいては、照合対象が「０Ａ  ０Ｂ  ０Ｃ  ０Ｄ」であって、データ部に格納されている。また、ＣＬＡ及びＩＮＳは、「００  ２０」、Ｐ１及びＰ２は、「００  ０１」、データ部の長さは、４バイトである。
【００２４】
図２（ｂ）に示すように、リアルタイムコマンドは、ＩＳＯ７８１６−４のコマンドと同様に、見出し部のＣＬＡ、ＩＮＳにリアルタイムコマンドであることを識別するための識別情報を格納している。ここでは、例としてＣＬＡを「０ｘＤ０」、ＩＮＳを「０ｘ００」とし、リアルタイムコマンドであることを示している。
また、リアルタイムコマンドのデータ部の先頭４バイトは、応答制限時間パラメータに割り当てられている。応答制限時間の単位は、例えば、マイクロ秒であり、他にクロック数などでもよく、限定されない。リアルタイムコマンドは、データ部の５バイト目以降に、従来のコマンドを入れ子状態（ネスティング的な構造）、つまり、コマンドをそのままの状態で内包し、格納している。
応答制限時間パラメータは、処理の期限を示す処理期限情報であって、ここで指定する応答制限時間パラメータはコマンド受信を開始してから、応答の送信を開始するまでの時間としている。
【００２５】
ここでＩＣカード１０のＯＳが実装しているＶＥＲＩＦＹコマンドと、リアルタイムコマンドに対応するＶＥＲＩＦＹコマンドについて具体的に説明する。ここでのＶＥＲＩＦＹコマンドは、パスワードではなく指紋照合を要求する。また、処理時間が長くかかる場合があるなど、処理時間には、指紋データの内容によって変動がある。指紋データのデータ長は１２８バイトとする。
通常のＶＥＲＩＦＹコマンドは、以下のようになる。
「0x00 20 00 01 80 xx xx xx …xx」
「０ｘ８０」は、データ長１２８バイトの１６進表記であって、「xx  xx…xx」は１２８バイトの指紋照合の対象となる任意のデータである。
【００２６】
一方、リアルタイムコマンドに対応したＶＥＲＩＦＹコマンドは、以下のようになる。
「D0 00 00 00 89 yy yy yy yy 00 20 00 01 80 xx xx … xx 」
「yy…yy」は４バイトの応答制限時間パラメータである。応答制限時間の単位はマイクロ秒（１００万分の１秒）とする。また、「０ｘ８９」はデータ長１２８＋４＋５＝１３７（バイト）の１６進表記である。
例えば、制限時間を１秒とした場合には、１６進表記で、１秒＝１００００００μ秒＝「00 0F 42 40 」であるため、リアルタイムコマンドに対応したＶＥＲＩＦＹコマンドは
「D0 00 00 00 89 00 0F 42 40 00 20 00 01 80 xx xx … xx 」
となる。
【００２７】
外部端末２０は、ＩＣカード１０との通信を実現するためのＲ／Ｗなどを備え、Ｒ／Ｗに挿入されているＩＣカード１０と通信を行うことができ、リアルタイムＯＳが搭載された情報処理装置である。外部端末２０は、あるコマンドをＩＣカード１０に送ることによって処理をさせたいが、応答時間を予測するため、ある一定時間内に何らかの応答が欲しいものとする。外部端末２０は、そのコマンド（処理させたいコマンド）をリアルタイムコマンドのデータ部（の５バイト目以降）に格納し、さらに応答制限時間パラメータを設定してＩＣカード１０へ送信する。
【００２８】
図３は、本発明による携帯型情報記憶媒体の動作及び携帯型情報記憶媒体のプログラムを示すフローチャートである。以下、ＩＣカード１０のＣＰＵ１３の処理を中心に説明する。
図３に示すように、ステップ１１０（以下、「ステップ」を「Ｓ」という。）において、ＩＣカード１０は、外部端末２０に挿入され、電源供給を受け、リセット信号などを受信し、ＯＳを起動し、処理を開始し、コマンドの受信待ちの状態となる（Ｓ１２０）。
Ｓ１３０において、ＩＣカード１０は、コマンドを外部端末２０から受信する。割り込み処理部１３２は、受信開始時からタイマー割り込み部１２のタイマーを始動する。処理部１３１は、受信したコマンドの内容を解析し、そのＣＬＡ、ＩＮＳに基づいて、リアルタイムコマンドであるか否かを判定する。処理部１３１は、リアルタイムコマンドでない場合（通常のコマンドの場合）には、このコマンドに応じた処理を実行する（Ｓ１８０）。処理部１３１は、処理結果を送信バッファにセットし（Ｓ１９０）、バッファ内容をレスポンスとして外部端末２０に送信し、ＩＣカード１０は、再びコマンド受信待ちの状態となる（Ｓ１２０）。
【００２９】
Ｓ１３０においてリアルタイムコマンドを受信した場合には、割り込み処理部１３２は、リアルタイムコマンドのデータ部の先頭４バイトに格納されている応答制限時間に合わせて、タイマー割り込み部１２の割り込み時間をセットする（Ｓ１６０）。処理部１３１は、リアルタイムコマンドのデータ部からコマンドを取り出し（Ｓ１７０）、このコマンドを実行する（Ｓ１８０）。コマンド処理中（Ｓ１６０〜Ｓ１８０）に応答制限時間が経過した場合には（Ｓ２１０）、タイマー割り込み部１２による割り込みが発生し、処理部１３１は、処理を中断し、ＮＧメッセージを送信バッファにセットし（Ｓ２２０）、バッファ内容を外部端末２０に送信し、処理が終了せず、中断した旨を通知する（Ｓ２００）。通知後、ＩＣカード１０は、再びコマンド待ちの状態となる（Ｓ１２０）。
【００３０】
外部端末２０にＩＣカード１０を挿入し、電源が供給され、ＩＣカード１０からのＡＴＲ（初期応答）が返ってきた後（Ｓ１２０以降）の処理の流れについて図３を用いて具体的に説明する。
先ず、応答制限時間に処理が間に合った例について説明する。
外部端末２０は、以下に示すリアルタイムコマンドに対応したＶＥＲＩＦＹコマンドをＩＣカード１０へ送信する。なお、応答制限時間は1秒、指紋データは、正しく照合ＯＫのものであって、「xx  xx…xx」の１２８バイトとする。
「D0 00 00 00 89 00 0F 42 40 00 20 00 01 80 xx xx … xx 」
【００３１】
ＩＣカード１０は、このリアルタイムコマンドを受信し、割り込み処理部１３２は、受信開始に合わせてタイマー割り込み部１２のタイマーを（０から）始動する（Ｓ１３０）。
処理部１３１は、受信したコマンドのＣＬＡ、ＩＮＳをチェックし、「Ｄ０  ００」であるため、リアルタイムコマンドと判断する（Ｓ１４０，Ｓ１５０）。割り込み処理部１３２は、先頭から６バイト目からの４バイトで指定された応答制限時間（１秒）を読み取り、時間がきたら割り込みが発生するようにタイマー割り込み部１２の割り込みをセットする（１秒＝１００００００μ秒＝「00 0F 42 40 」）。
処理部１３１は、先頭から１０バイト目以降の元のコマンド「0x00 20 00 01 …」をリアルタイムコマンドから取り出し、ＶＥＲＩＦＹコマンドであることを識別し、実行する（Ｓ１８０）。処理部１３１は、正しく照合ができたため、ＯＫ（照合一致）の処理結果を送信バッファに格納し（Ｓ１９０）、外部端末２０へ送信する（Ｓ２００）。
【００３２】
次に、応答制限時間に処理が間に合わない例について説明する。以下、前述した例と異なる点を中心に説明し、重複する説明は、適宜省略する。
外部端末２０は、リアルタイムコマンドに対応したＶＥＲＩＦＹコマンドをＩＣカード１０へ送信する。なお、応答制限時間は1秒、指紋データは正しく照合ＯＫとする。また、指紋データは、「xx  xx…xx」の１２８バイトとし、ＩＣカード１０における照合の処理に１．５秒かかるものとする。
処理部１３１による照合処理の途中で１秒が経過したため（Ｓ１８０）、タイマー割り込み部１２による割り込みが発生し（Ｓ２１０）、処理部１３１は、照合処理を中断し、処理を中断した旨を示すＮＧの処理結果を送信バッファに格納し（Ｓ２２０）、外部端末２０へ送信する（Ｓ２００）
【００３３】
また、ＩＳＯ７８１６−４のコマンドなど、リアルタイムコマンドではないコマンドを外部端末２０から受信する例について説明する。
外部端末２０は、以下に示す、通常のＶＥＲＩＦＹコマンドをＩＣカード１０へ送信する。なお、指紋データは正しく照合ＯＫであって、指紋データは、「xx  xx…xx」の１２８バイトとし、ＩＣカード１０における照合の処理に１．５秒かかるものとする。
「00 20 00 01 80 xx xx … xx 」
ＩＣカード１０は、このリアルタイムコマンドを受信し、割り込み処理部１３２は、受信開始に合わせてタイマー割り込み部１２のタイマーを（０から）始動する（Ｓ１３０）。
処理部１３１は、受信したコマンドのＣＬＡ、ＩＮＳをチェックし、「００  ２０」であるため、リアルタイムコマンドではなく、通常のＶＥＲＩＦＹコマンドであると判断する（Ｓ１４０，Ｓ１５０）。処理部１３１は、ＶＥＲＩＦＹコマンドを実行し（Ｓ１８０）、正しく照合ができたため、ＯＫ（照合一致）の処理結果を送信バッファに格納し（Ｓ１９０）、外部端末２０に送信する（Ｓ２００）。
【００３４】
このように本実施例によれば、ＩＣカード１０は、応答制限時間パラメータを含むリアルタイムコマンドを受信し、応答制限時間内に応答できるか否か、つまり、処理が処理期限内に終了するか否かを判定するため、各命令の処理内容に応じた適切な応答制限時間を外部端末２０側で予め設定することができ、処理の円滑化、効率化及び迅速化を図ることが可能となった。
また、ＩＣカード１０は、処理を中断したことを外部端末２０に通知するため、外部端末２０は、ＩＣカード１０に対する処理を中止し、他の処理を行うことができるなど、処理速度を保証することができ、処理の円滑化、効率化及び迅速化を図ることが可能となった。
特に、ＩＣカード１０は、応答制限時間内に応答できない場合に、処理を中断するため、他のコマンドを受け入れる態勢となり、外部端末２０の次のコマンドに対処することができ、処理の円滑化、効率化及び迅速化を図ることが可能となった。
更に、リアルタイムコマンドは、ＩＳＯ７８１６−４に準拠するコマンドなど、他のコマンドと同様のフォーマットを有するため、ＩＣカード１０は、他のコマンドと同様に容易にリアルタイムコマンドを識別することができ、汎用性を向上することが可能となった。
【実施例２】
【００３５】
図４は、本発明による携帯型情報記憶媒体の構成を示すブロック図である。なお、前述した実施例と同様な機能を果たす部分には、同一の符号又は末尾に統一した符号を付して、重複する説明や図面を適宜省略する。
図４に示すように、ＩＣカード１０−２は、実施例１のＩＣカード１０と略同様の構成であって、ＣＰＵ１３−２、メモリ１４−２などを備えている。
メモリ１４−２は、実施例１のメモリ１４が記憶している情報に加えて、処理時間テーブルなどを記憶している。
【００３６】
図５は、メモリ１４−２が記憶している処理時間テーブルを示す図である。
図５に示すように、処理時間テーブルは、ＶＥＲＹＦＹなどのコマンドごとに、その識別情報（ＣＬＡ，ＩＮＳ）と、このコマンドに応じて行われる処理にかかる時間の予測である予測処理時間とを関連づけて記憶している。なお、図５で示すように、処理時間テーブルには、予測処理時間として、処理時間の最長限度と予測される時間が格納されている。予測処理時間には、通常モードにおける予測処理時間と、低消費電力モードにおける予測処理時間があり、低消費電力モードとは、処理にかかる電力を抑制して処理を行う動作モードである。
本実施例においては、例えば、ＶＥＲＹＦＹコマンドを受信した場合には、通常モードにおいては、最長で０．５秒の処理時間、低消費電力モードにおいては、最長で１．５秒の処理時間がかかると予測されている。この予測処理時間は、事前のテストなどに基づいて設定される。
ＣＰＵ１３−２は、メモリ１４−２に記憶されているプログラムを実行することによって、モード切り替え部１３３、処理時間判定部１３４などを実現する。モード切り替え部１３３は、動作モードの切り替えを行い、処理時間判定部１３４は、処理部１３１によるコマンドに応じた処理が、所定の時間内に終わるか否かを、メモリ１４−２の処理時間テーブルを参照し、判定する（後述する図６参照。）。
【００３７】
図６は、本発明による携帯型情報記憶媒体の動作及び携帯型情報記憶媒体のプログラムを示すフローチャートである。以下、ＩＣカード１０−２のＣＰＵ１３−２の処理を中心に説明する。
Ｓ３００からＳ３７０まで、ＩＣカード１０−２は、実施例１におけるＩＣカード１０のＳ１００からＳ１７０までと同様の処理を行う。
Ｓ３８０において、ＩＣカード１０−２の処理時間判定部１３４は、記憶部１４−２の処理時間テーブルを参照し、リアルタイムコマンドのデータ部から取り出したコマンドの低消費電力モードでの予測処理時間を読み出し、この予測処理時間に基づいて、低消費電力モードで応答制限時間内に応答可能であるか否かを判定する。
【００３８】
具体的には、Ｓ３３０においてリアルタイムコマンドに対応したＶＥＲＩＦＹコマンドを受信し、このリアルタイムコマンドのデータ部の応答制限時間（[yy yy yy yy ]、図２参照。）が２秒（「00 1E 84 80 」）である場合には、処理時間判定部１３４は、処理時間テーブルからＶＥＲＩＦＹコマンドの低消費電力モードの予測処理時間を読み出し、（１．５秒＜２秒であるため）肯と判定、つまり、省電力モードでも間に合うと判断する。
Ｓ３８０において肯と判定した場合には、モード切り替え部１３３は、動作モードを低消費電力モードに切り替え、処理部１３１は、コマンドを実行する（Ｓ４００）。Ｓ３８０において否と判定した場合には、処理部１３１は、通常の動作モードでコマンドを実行する（Ｓ３９０）。以下、ＩＣカード１０−２は、実施例１のＩＣカード１０と同様の処理を行う（Ｓ４１０からＳ４４０まで）。
なお、外部端末２０から受信したコマンドがリアルタイムコマンドでない場合には、ＩＣカード１０−２は、低消費電力モードでコマンドを実行するが（Ｓ３５０，Ｓ４００）、通常モードでコマンドを実行してもよい。
【００３９】
このように本実施例によれば、実施例１と同様の効果に加え、ＩＣカード１０−２は、外部端末２０から指定される応答制限時間内に応答できると予測される場合に、低消費電力モードでコマンドを実行するため、処理の円滑化、効率化及び迅速化を図るとともに、ＩＣカード１０−２の処理にかかる電力を低減することが可能となった。
また、将来、ＩＣカード１０−２に搭載されるＯＳがマルチタスクになった場合に、ＩＣカード１０−２は、応答制限時間に余裕があれば他の処理をしてから応答するなど［例；Ｊａｖａ（登録商標）のように本来のコマンドの処理とは別にメモリの整理（ガベージコレクション）などの他の処理を並行して行う必要のある言語に対応した場合など］、優先度の目安を得ることができ、処理の効率化及び迅速化を図ることが可能となる。
【００４０】
（変形例）
以上説明した実施例に限定されることなく、種々の変形や変更が可能であって、それらも本発明の均等の範囲内である。例えば、各実施例において、携帯型情報記憶媒体としてＩＣカード１０，１０−２を例示したが、携帯型情報記憶媒体は、これに限定されず、ＵＩＭ、ＳＩＭ、ＩＣタグなどの他の携帯型情報記憶媒体であってもよい。
【００４１】
各実施例において、リアルタイムコマンドは、応答制限時間データを含み、応答までの時間を制限するが、代わりに、処理時間を制限する処理制限時間を含んでいてもよく、処理の期限を示すものであれば、リアルタイムコマンドでどのように期限を指定するかは限定されない。
【００４２】
実施例２において、ＩＣカード１０−２は、メモリ１４−２により詳細に予測処理時間を設定した処理時間テーブルを記憶していてもよい。例えば、ＶＥＲＩＦＹコマンドのデータ部に格納されるデータ量に応じた予測処理時間を設定していてもよい。低消費電力モードで応答制限時間内に応答可能か否かの判定（Ｓ３８０）の精度を向上する、外部端末２０側でより細かい応答制限時間の設定ができるなど、処理の円滑化、効率化及び迅速化を図ることが可能となる。
【００４３】
実施例２において、ＩＣカード１０−２の処理時間判定部１３４は、リアルタイムコマンドを受信した場合に、このデータ部から取り出したコマンドの通常モードでの予測処理時間に基づいて、応答制限時間内に応答できるか否かを判定してもよい。否と判定した場合に、コマンドを実行せずに、その旨を外部端末２０に通知することによって、処理の円滑化、効率化及び迅速化を図ることが可能である。
【００４４】
図７及び図８は、本発明による携帯型情報記憶媒体及びそのプログラムの実施例２の変形例を説明するための図であって、図７は、処理時間テーブルを説明する説明図、図８は、本発明による携帯型情報記憶媒体の動作及び携帯型情報記憶媒体のプログラムを示すフローチャートである。
ＩＣカード１０−２は、図７に示すような処理時間テーブルをメモリ１４−２に記憶している。処理時間テーブルは、コマンドの識別情報（ＣＬＡ、ＩＮＳ）と、このコマンドの予測処理時間とを関連づけて記憶している。通常モードでの予測処理時間は、予測される処理時間の範囲で設定され、低消費電力モードでの予測処理時間は、処理時間の最長限度と予測される時間で設定されている。また、外部端末２０は、応答制限時間の代わりに処理制限時間を格納したリアルタイムコマンドをＩＣカード１０−２へ送信する。
【００４５】
図８に示すように、ＩＣカード１０−２は、処理制限時間を含むリアルタイムコマンドを受信し（Ｓ５３０）、処理時間判定部１３４は、処理制限時間が、このデータ部から取り出したコマンドの通常モードでの予測処理時間の範囲内であるか否かを判定する（Ｓ５４０）。予測処理時間の範囲内である場合には、処理部１３１は、通常モードでコマンドを実行する（Ｓ５８０）。予測処理時間よりも処理制限時間が短い場合には、処理部１３１は、コマンドを実行せずに、処理を行わない（処理を止めた）旨を外部端末２０に通知する（Ｓ５５０，Ｓ６００，Ｓ６１０）。また、予測処理時間よりも処理制限時間が長い場合には、処理時間判定部１３４は、低消費電力モードの予測処理時間が処理制限時間内であるか否かを判定する（Ｓ５６０）。処理部１３１は、肯と判定した場合には、低消費電力モードで（Ｓ５７０）、否と判定した場合には、通常モードでコマンドを実行し（Ｓ５８０）、結果を外部端末２０へ送信する（Ｓ５９０，Ｓ６１０）。
ＩＣカード１０−２は、処理制限時間内に処理が終わらないと判定した場合には、コマンドを実行せずに、その旨を外部端末２０に通知するため、処理の円滑化、効率化及び迅速化を図ることが可能である。
【図面の簡単な説明】
【００４６】
【図１】本発明による携帯型情報記憶媒体の構成を示すブロック図である。（実施例１）
【図２】ＩＣカード１０で利用可能なコマンドのフォーマットを示す図である。（実施例１）
【図３】本発明による携帯型情報記憶媒体の動作及び携帯型情報記憶媒体のプログラムを示すフローチャートである。（実施例１）
【図４】本発明による携帯型情報記憶媒体の構成を示すブロック図である。（実施例２）
【図５】メモリ１４−２が記憶している処理時間テーブルを示す図である。（実施例２）
【図６】本発明による携帯型情報記憶媒体の動作及び携帯型情報記憶媒体のプログラムを示すフローチャートである。（実施例２）
【図７】メモリ１４−２が記憶している処理時間テーブルを示す図である。（変形例）
【図８】本発明による携帯型情報記憶媒体の動作及び携帯型情報記憶媒体のプログラムを示すフローチャートである。（変形例）
【符号の説明】
【００４７】
１０  ＩＣカード
１１  Ｉ／Ｆ
１２  タイマー割り込み部
１３  ＣＰＵ
１４  メモリ
２０  外部端末
１３１  処理部
１３２  割り込み処理部
【図１】
2005301938.tif 000003
【図２】
2005301938.tif 000004
【図３】
2005301938.tif 000005
【図４】
2005301938.tif 000006
【図５】
2005301938.tif 000007
【図６】
2005301938.tif 000008
【図７】
2005301938.tif 000009
【図８】
2005301938.tif 000010