(57)【特許請求の範囲】
【請求項１】
外部装置から電源供給を受け、ファイル選択を指示する命令データを受信すると、指示されたファイルを選択する携帯可能電子装置において、
前記選択されたファイルが格納されているアプリケーションファイルの識別情報を記憶する識別情報バッファ手段と、
前記外部装置からのリセット信号を受信すると、前記識別情報バッファ手段に記憶される識別情報を参照して、第１の初期応答情報を応答する第１のアプリケーションファイルと、前記識別情報バッファ手段に記憶される識別情報を参照して、この第１の初期応答情報とは異なる第２の初期応答情報を応答する第２のアプリケーションファイルを有するメモリと、
外部装置から供給されるリセット信号の状態を検出する検出手段と、
この検出手段によってリセット信号の解除が検出されると、上記検出されたリセット信号が、上記電源供給の開始に応じて供給された第１のリセット信号であるか、上記電源供給が中断されない状態で供給された第２のリセット信号であるかを判定するリセット判定手段と、
このリセット判定手段による判定の結果、上記第２のリセット信号であると判定された場合は、前記識別情報バッファ手段に記憶される識別情報を参照して、上記第２のリセット信号の解除前に選択されているアプリケーションファイルを判定するファイル判定手段と、
このファイル判定手段により第１のアプリケーションファイルが選択されていたと判定された場合には上記第１の初期応答情報を設定し、上記リセット判定手段による判定の結果、上記第１のリセット信号であると判定された場合あるいは上記ファイル判定手段により第２のアプリケーションファイルが選択されていたと判定された場合には上記第２の初期応答情報を設定する制御手段と、
この制御手段によって設定された第１あるいは第２の初期応答情報を外部へ出力する出力手段と、
を有することを特徴とする携帯可能電子装置。
【請求項２】
上記第２の初期応答情報は、上記第１の初期応答情報に対して当該携帯可能電子装置の動作電圧に関する情報を少なくとも追加したものであることを特徴とする請求項１記載の携帯可能電子装置。
【請求項３】
外部装置から電源供給を受けることにより動作し、複数のアプリケーションプログラムを搭載し、夫々のアプリケーションプログラムに対応した初期応答情報を有する携帯可能電子装置において、
上記外部装置から送信されたファイル選択を指示する命令データを受信すると、指示されたファイルを選択する命令実行手段と、
上記選択されたファイルが格納されるアプリケーションファイルの識別情報を記憶する識別情報バッファ手段と、
上記外部装置から供給されるリセット信号の状態を検出する検出手段と、
この検出手段によってリセット信号の解除が検出されると、上記検出されたリセット信号が、上記電源供給の開始に応じて供給された第１のリセット信号であるか、上記電源供給が中断されない状態で供給された第２のリセット信号であるかを判定する判定手段と、
この判定手段による判定の結果、上記第１のリセット信号であると判定された場合は予め設定された初期応答情報を設定し、上記判定の結果、上記第２のリセット信号であると判定された場合は、前記識別情報バッファ手段に記憶される識別情報を参照して、上記第２のリセット信号の解除前に上記命令実行手段によって選択されていたファイルに対応した初期応答情報を設定する制御手段と、
この制御手段によって設定された初期応答情報を外部へ出力する出力手段と、
を有することを特徴とする携帯可能電子装置。
【請求項４】
ファイル選択を指示する命令データに基づいて選択されたファイルが格納されるアプリケーションファイルの識別情報を記憶し、外部装置からのリセット信号を受信すると、上記識別情報を参照して、第１の初期応答情報を応答する第１のアプリケーションファイルと、この第１の初期応答情報とは異なる第２の初期応答情報を応答する第２のアプリケーションファイルを有するメモリを持ち、上記外部装置から電源供給を受け、ファイル選択を指示する命令データを受信し、指示されたファイルを選択する携帯可能電子装置の初期応答の出力方法において、
上記外部装置から供給されるリセット信号を検出部で検出する検出ステップと、
この検出の結果、リセット信号の解除が検出されると、上記検出されたリセット信号は、上記電源供給の開始に応じて供給された第１のリセット信号であるのか、上記電源供給が中断されない状態で供給された第２のリセット信号であるかをリセット判定部で判定するステップと、
この判定の結果、上記第２のリセット信号であると判定された場合は、上記識別情報を参照して、上記第２のリセット信号の解除前に選択されているアプリケーションファイルをファイル判定部で判定するステップと、
この判定の結果、第１のアプリケーションファイルが選択されていたと判定された場合には上記第１の初期応答情報を設定し、上記第１のリセット信号であると判定された場合あるいは上記第２のアプリケーションファイルが選択されていたと判定された場合には上記第２の初期応答情報を制御部で設定するステップと、
この設定された第１あるいは第２の初期応答情報を出力部から外部へ出力するステップとを有することを特徴とする携帯可能電子装置の初期応答の出力方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、たとえば書込み／書換え可能な不揮発性メモリおよびＣＰＵなどの制御素子を有するＩＣ（集積回路）チップを内蔵し、外部から供給される命令データに基づいて各種処理を実行するＩＣカード等の携帯可能電子装置及びその初期応答の出力方法に関する。
【０００２】
【従来の技術】
近年、携帯可能な電子装置として、書換え可能な不揮発性のデータメモリとそれを制御するためのＣＰＵ（セントラル・プロセッシング・ユニット）を有し、外部からのデータの入出力を行う手段を備えたＩＣチップを内蔵した、いわゆるＩＣカードが産業各方面で開発されている。
【０００３】
従来までの磁気カードと比較すると、磁気カードは個々のアプリケーションに対応した枚数を保持する必要があったが、ＩＣカードは１枚に複数のアプリケーションプログラムを保持することができるという利点がある。即ち、銀行で使用されるＩＣカードや、スポーツやレジャー施設での個人ＩＤカード、パチンコ等の遊技場におけるプリペイドカード等を同一のＩＣカードにより実現できる。そして、端末装置からのリセット信号に応じて、ＩＣカード内部のリセットが完了した時点で自己の機能に応じた初期応答情報を端末装置へ送り出している。
【０００４】
しかし、このような複数アプリケーションを搭載したＩＣカードが実現されると、当初想定していなかった新しい機能をＩＣカードに付加したり、内容を変更する場合に、端末装置の処理プログラムを変更する必要が生じる等の諸問題が発生してきた。
【０００５】
このような問題の解決策の１つとして、例えば、特開平１０−１２４３０２号公報には、複数のアプリケーションを搭載したＩＣカードにおいて、対リセット応答（ＡＴＲ）を出力する際に、ＥＥＰＲＯＭのフラグエリアに設定されたアプリケーションに対応するＡＴＲを出力し、カード読取装置からアプリケーション切換えコマンドを受信するか、あるいは何も反応がなければ自動的に次のアプリケーションプログラムのフラグに切換えられ、次のリセット時には切りかえられたアプリケーションに対応するＡＴＲを出力するＩＣカードが記載されている。この結果、端末装置は、リセット信号を定期的に送出することで順次初期応答情報を得る事が出来、自己の処理対象のＡＴＲが来る迄リセット信号を定期的に送出すればよいというＩＣカードシステムを得る事ができる。
【０００６】
【発明が解決しようとする課題】
しかしながら、上述したような従来の技術においては、電源を維持した状態で再リセットされた場合に、リセット受信時のＩＣカードがどのアプリケーションが既に選択されていたかは全く考慮することなく、自動的に次のアプリケーションプログラムのフラグに切換え、このフラグに対応するＡＴＲを送出することとなる。
【０００７】
実際には端末装置が送出するリセット信号の回数は予め制限されており、従って、ＩＣカードが再リセットの受信時に不用意にアプリケーションを切換える事によって、端末装置がこの制限内に処理対象となるＡＴＲを受信できなかった場合、不正カードと判断され、再リセットを含む以降の処理が中断されてしまい、端末装置によっては受付けられないＩＣカードが発生してしまう恐れがあった。
【０００８】
本発明は、以上の点に鑑みなされたもので、アプリケーションの切換えを効率良く実施し、再活性化時のアプリケーションに対応した初期応答情報（ＡＴＲ）を出力することが可能な携帯可能電子装置及びその初期応答の出力方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明の携帯可能電子装置は、外部装置から電源供給を受け、ファイル選択を指示する命令データを受信すると、指示されたファイルを選択する携帯可能電子装置において、前記選択されたファイルが格納されているアプリケーションファイルの識別情報を記憶する識別情報バッファ手段と、前記外部装置からのリセット信号を受信すると、前記識別情報バッファ手段に記憶される識別情報を参照して、第１の初期応答情報を応答する第１のアプリケーションファイルと、前記識別情報バッファ手段に記憶される識別情報を参照して、この第１の初期応答情報とは異なる第２の初期応答情報を応答する第２のアプリケーションファイルを有するメモリと、外部装置から供給されるリセット信号の状態を検出する検出手段と、この検出手段によってリセット信号の解除が検出されると、上記検出されたリセット信号が、上記電源供給の開始に応じて供給された第１のリセット信号であるか、上記電源供給が中断されない状態で供給された第２のリセット信号であるかを判定するリセット判定手段と、このリセット判定手段による判定の結果、上記第２のリセット信号であると判定された場合は、前記識別情報バッファ手段に記憶される識別情報を参照して、上記第２のリセット信号の解除前に選択されているアプリケーションファイルを判定するファイル判定手段と、このファイル判定手段により第１のアプリケーションファイルが選択されていたと判定された場合には上記第１の初期応答情報を設定し、上記リセット判定手段による判定の結果、上記第１のリセット信号であると判定された場合あるいは上記ファイル判定手段により第２のアプリケーションファイルが選択されていたと判定された場合には上記第２の初期応答情報を設定する制御手段と、この制御手段によって設定された第１あるいは第２の初期応答情報を外部へ出力する出力手段と、を有することを特徴とする。
上記目的を達成するために、本発明の携帯可能電子装置は、外部装置から電源供給を受けることにより動作し、複数のアプリケーションプログラムを搭載し、夫々のアプリケーションプログラムに対応した初期応答情報を有する携帯可能電子装置において、上記外部装置から送信されたファイル選択を指示する命令データを受信すると、指示されたファイルを選択する命令実行手段と、上記選択されたファイルが格納されるアプリケーションファイルの識別情報を記憶する識別情報バッファ手段と、上記外部装置から供給されるリセット信号の状態を検出する検出手段と、
この検出手段によってリセット信号の解除が検出されると、上記検出されたリセット信号が、上記電源供給の開始に応じて供給された第１のリセット信号であるか、上記電源供給が中断されない状態で供給された第２のリセット信号であるかを判定する判定手段と、この判定手段による判定の結果、上記第１のリセット信号であると判定された場合は予め設定された初期応答情報を設定し、上記判定の結果、上記第２のリセット信号であると判定された場合は、前記識別情報バッファ手段に記憶される識別情報を参照して、上記第２のリセット信号の解除前に上記命令実行手段によって選択されていたファイルに対応した初期応答情報を設定する制御手段と、この制御手段によって設定された初期応答情報を外部へ出力する出力手段と、
を有することを特徴とする。
上記目的を達成するために、本発明の携帯可能電子装置の初期応答の出力方法は、ファイル選択を指示する命令データに基づいて選択されたファイルが格納されるアプリケーションファイルの識別情報を記憶し、外部装置からのリセット信号を受信すると、上記識別情報を参照して、第１の初期応答情報を応答する第１のアプリケーションファイルと、この第１の初期応答情報とは異なる第２の初期応答情報を応答する第２のアプリケーションファイルを有するメモリを持ち、上記外部装置から電源供給を受け、ファイル選択を指示する命令データを受信し、指示されたファイルを選択する携帯可能電子装置の初期応答の出力方法において、上記外部装置から供給されるリセット信号を検出部で検出する検出ステップと、この検出の結果、リセット信号の解除が検出されると、上記検出されたリセット信号は、上記電源供給の開始に応じて供給された第１のリセット信号であるのか、上記電源供給が中断されない状態で供給された第２のリセット信号であるかをリセット判定部で判定するステップと、この判定の結果、上記第２のリセット信号であると判定された場合は、上記識別情報を参照して、上記第２のリセット信号の解除前に選択されているアプリケーションファイルをファイル判定部で判定するステップと、この判定の結果、第１のアプリケーションファイルが選択されていたと判定された場合には上記第１の初期応答情報を設定し、上記第１のリセット信号であると判定された場合あるいは上記第２のアプリケーションファイルが選択されていたと判定された場合には上記第２の初期応答情報を制御部で設定するステップと、この設定された第１あるいは第２の初期応答情報を出力部から外部へ出力するステップとからなることを特徴とする。
【００１０】
【発明の実施の形態】
以下、本発明に係る実施の形態について図面を参照して詳細に説明する。図２は、本発明に係る携帯可能電子装置としてのＩＣカード１及びリーダライタ４を用いたシステム構成を説明するための図である。
【００１１】
図２に示すように、ＩＣカード１を用いたシステムは、図示せぬ内部メモリを有する上位装置としてのホストコンピュータ３と、このホストコンピュータ３と接続している端末装置としてのリーダライタ４と、ディスプレイ装置５と、キーボード６と、プリンタ７とを有している。
【００１２】
リーダライタ４は内部メモリを有し、ＩＣカード１に対する電文の読み取り、書き込み（送受信）を接触あるいは非接触で行うものである。ディスプレイ装置５は、操作手順や作動状態をオペレータに知らせるものである。キーボード６は、オペレータによって操作入力されるものである。プリンタ７は、オペレータの操作指示に従って、指示された情報を印刷するものである。
【００１３】
また、接触式ＩＣカードを用いる場合には、リーダライタ４に接触式ＩＣカードを挿入するためのＩＣカード挿入部（図示せず）が設けられ、無線式ＩＣカードを用いる場合には、リーダライタ４と無線式ＩＣカードとの間を通信するための通信部（図示せず）が設けられる。
【００１４】
特に、本実施の形態では、ＩＣカード１がリーダライタ４に対して、そのＩＣカード挿入部（あるいは通信部）に挿入（載置）されたままの状態で長時間あるいは複数のアプリケーションを使用する場合に適している。
【００１５】
図３は、図２のシステムを構成するＩＣカード１の機能ブロックを概略的に示す図である。図３に示すように、ＩＣカード１は、リード／ライト部（Ｒ／Ｗ部）１１と、暗証設定／暗証照合部１２と、暗号化／復号化部１３などの基本機能を実行する部分と、これらの基本機能を管理するスーパーバイザ１４とで構成されている。
【００１６】
Ｒ／Ｗ部１１は、データメモリ等に対してデータの読み出し、書き込み、あるいは消去を行う機能を有する。暗証設定／暗証照合部１２は、ユーザが設定した暗証番号の記憶及び読み出し禁止処理を行うと共に、暗証番号の設定後にその暗証番号と外部装置から入力した暗証番号との照合を行い、以後の処理の許可を与える機能を有する。
【００１７】
暗号化／復号化部１３は、例えば、通信回線を介してあるいは無線通信によりリーダライタ４とＩＣカード１との間でデータの送受信を行う場合の通信データの漏洩、偽造を防止するための暗号化や、復号化行う機能を有する。
【００１８】
また、暗号化／復号化部１３は、送信データに対して暗号化を施し、また暗号化されたデータを復号化する機能も有する。スーパーバイザ１４は、リーダライタ４から入力された命令コード、もしくはデータの付加された命令コードを解読し、この命令を実行する機能を有する。この暗号化／復号化部１３により、本発明の復号手段を構成している。
【００１９】
図４は、ＩＣカード１の概略的な制御ブロック図を示している。図４に示すように、無線式及び接触式ＩＣカードともに、少なくとも１つ以上のアプリケーションが登録可能であり、図４に示すような諸機能を実行するために、制御手段としてのＣＰＵ等の制御素子１５と、各種記憶部としてのデータメモリ１６、プログラムメモリ１８、ワーキングメモリ１７、リーダライタ４と信号の授受を行なう受信手段、出力手段としての通信部１９とから構成されている。
【００２０】
通信部１９は、無線式ＩＣカード１の場合にはアンテナ部として構成され、リーダライタ４から送信された変調波を非接触で受信したり外部へ変調波を発信するようになっている。また、このアンテナ部１９で受信した変調波から内部回路に供給するための電源やクロックを生成するようになっている。
【００２１】
また、接触式ＩＣカード１の場合にはコンタクト部として構成され、リーダライタ４に設けられた図示せぬＩＣカード端子部と接触することにより電源やクロックを得るようになっている。
これらの構成のうち、制御素子１５、データメモリ１６、プログラムメモリ１８、及びワーキングメモリ１７は１つのＩＣチップ（あるいは複数のＩＣチップ）２０で構成されてＩＣカード本体内に埋設されている。制御素子１５は、各種の判定処理／判断処理及びメモリへの書込みや読出し等のデータ処理を行う制御部である。
【００２２】
プログラムメモリ１８は、例えばマスクＲＯＭ等の書き換え不可能な固定メモリで構成されており、上述するような各基本機能を実現するサブルーチンを備えた制御素子１５の制御プログラム等を記憶している。
【００２３】
データメモリ１６は、アプリケーションデータ等の各種データの記憶に使用され、例えばＥＥＰＲＯＭなどの消去（書き換え）可能な不揮発性メモリで構成されている。ワーキングメモリ１７は、制御素子１５が処理を行なう際の処理データを一時的に保持するための作業用のメモリであり、例えばＲＡＭ等の揮発性メモリで構成されている。また、本実施の形態では、ワーキングメモリ１７には、後述するＤＦ識別情報バッファ３０（図７参照）と、コールドリセットフラグ３１が設けられている。
【００２４】
尚、ＩＣカード１に登録されているアプリケーションとしては、例えばクレジット、ＩＤカード、ポイントシステム等が挙げられる。本実施の形態では、ＩＣカード１には少なくとも２つの異なる仕様を持つアプリケーションＡ、Ｂが搭載されているとする。そして、アプリケーションＡはＩＳＯ／ＩＥＣ７８１６−３Ｆｉｒｓｔ  Ｅｄｉｔｉｏｎを参考に制定されたアプリケーション仕様である。また、アプリケーションＢは、上記Ｆｉｒｓｔ  Ｅｄｉｔｉｏｎよりも後に発行されたＩＳＯ／ＩＥＣ７８１６−３  Ｓｅｃｏｎｄ  Ｅｄｉｔｉｏｎを参考に制定されたアプリケーション仕様であるとする。
【００２５】
図５は、データメモリ１６における複数アプリケーションを構成した場合の概念図である。データメモリ１６は、図５に示すように、ＩＳＯ／ＩＥＣ７８１６−４に基づき、色々なフォルダの種類をもったディレクトリのツリー構造になっている。
【００２６】
最上位がＭＦ（Ｍａｓｔｅｒ  Ｆｉｌｅ）２１で、その次が各アプリケーション毎に設定されるフォルダとしてＤＦ（Ｄｅｄｉｃａｔｅｄ  Ｆｉｌｅ）２２、２５があり、最下位が実際にアプリケーションで使われるユーザデータの格納に使用されるＥＦ（Ｅｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ）２３、２４、２６、２７という構成になっている。ＭＦ２１は、ＩＣカード１が後述するコールドリセットされた後に選択されるルートディレクトリである。
【００２７】
このＭＦ２１の次のレベルには、搭載しているアプリケーションに相当する数だけＤＦが設けられる。本実施の形態では、例えばクレジットとしてのアプリケーションＡ用のファイルとしてＤＦ２２が設けられている。また、ＩＤカードとしてのアプリケーションＢ用のファイルとしてＤＦ２５が設けられている。ＤＦ２２、２５は夫々対応するアプリケーションにて使用されるＥＦ２３、２４と、ＥＦ２６、２７を一括して管理している。
【００２８】
ＤＦ２２、２５は、ＤＦ識別情報及びＤＦ名が付与されており、ＥＦにはＥＦ識別情報が夫々付与されている。従って、本実施の形態では、例えばＤＦ２２にはＤＦ識別情報として「０１」、ＤＦ名として「Ａ０，００，００，０１」が設定されている。ＤＦ２２配下のＥＦ２３にはＥＦ識別情報として「０１」が、ＥＦ２４にはＥＦ識別情報として「０２」が設定されている。ＤＦ２５にはＤＦ識別情報として「０２」、ＤＦ名として「Ａ０，００，００，０２」が設定されている。ＤＦ２５配下のＥＦ２６にはＥＦ識別情報として「０３」が、ＥＦ２７にはＥＦ識別情報として「０４」が設定されている。
【００２９】
図６（ａ）は、リーダライタ４からＩＣカード１に対して供給される命令データで、ファイルの選択を指示する選択コマンドの構成を示す図である。尚、この選択コマンドは、ＩＳＯ／ＩＥＣ７８１６−４に規定されており、「ｈ」は１６進数を示すものである。
【００３０】
選択コマンドは、図６（ａ）に示すように、コマンドの分類（ＣＬＡ：ｃｌａｓｓ）や命令（ＩＮＳ：ｉｎｓｔｒｕｃｔｉｏｎ）からなるコマンドコード部と、パラメータデータＰ１／Ｐ２、書込むデータのデータ長を示すＬｃフィールド、及び書込みデータを示すＤＡＴＡフィールドで構成されている。
【００３１】
そして、例えばアプリケーションＡ用のＤＦ２２を選択する場合には、選択コマンドは、コマンドコード部にファイル選択の指示を示す「ＣＬＡ＝００ｈ」「ＩＮＳ＝Ａ４ｈ」が、パラメータデータＰ１、Ｐ２にＤＡＴＡフィールドがＤＦ名である事を示す「Ｐ１＝０４ｈ」「Ｐ２＝０Ｃｈ」が、データ長ＬｃにＤＦ名の長さを示す「Ｌｃ＝０４ｈ」が、ＤＡＴＡフィールドにＤＦ２２のＤＦ名を示す「ＤＡＴＡ＝Ａ０ｈ，００ｈ，００ｈ，０１ｈ」が設定され、リーダライタ４からＩＣカード１へ送信される。
【００３２】
図６（ｂ）は、ＩＣカード１が選択コマンドを実行した後、リーダライタ４へ出力するレスポンスデータの構成を示している。選択コマンドに対するレスポンスは、図６（ｂ）に示すように、ステータスバイト（ＳＷ１、ＳＷ２）で構成されている。尚、図６（ａ）に示す命令データの指示によってはＤＡＴＡフィールドも追加される。そして、選択コマンドが正常に終了した旨をレスポンスする場合には、ステータスバイトには「ＳＷ１＝９０ｈ」「ＳＷ２＝００ｈ」が設定されて、外部へ出力されるようになっている。
【００３３】
図７は、ＩＣカード１が図６に示すような選択コマンドを実行した結果、選択されカレント状態となったＤＦの識別情報を設定するためのＤＦ識別情報バッファ３０を示す図である。ＤＦ識別情報バッファ３０は、ＭＦが選択されている場合には初期値を示すＮｕｌｌ（００ｈ、００ｈ、００ｈ、…、００ｈ）が設定されている。
【００３４】
選択コマンドによりＤＦ識別情報０１のＤＦ２２が選択された場合、ＤＦ識別情報バッファ３０は、ＤＦ名「Ａ０ｈ、００ｈ、００ｈ、０１ｈ」が設定される。また、選択コマンドによりＤＦ識別情報０２のＤＦ２５が選択された場合、ＤＦ識別情報バッファ３０は、ＤＦ名「Ａ０ｈ、００ｈ、００ｈ、０２ｈ」が設定される。
【００３５】
そして、本実施の形態では、ＩＣカード１が後述するウォームリセットされた際には、このＤＦ識別情報バッファ３０を参照して、設定されているＤＦ名のアプリケーションに対応した初期応答情報（Ａｎｓｗｅｒ  Ｔｏ  Ｒｅｓｅｔ：ＡＴＲ）を設定するようになっている。
【００３６】
尚、ＤＦ識別情報の記憶について、本実施の形態では、ワーキングメモリ１７にＤＦ識別情報バッファを設けているが、これに限らず、ＥＥＰＲＯＭなどで構成されるデータメモリ１６に設けることもできる。
【００３７】
図８乃至図９は、ＩＳＯ／ＩＥＣ７８１６−３に規定されているＡＴＲの一例を示すものである。図８に示すＡＴＲ（以降、第１のＡＴＲと称す）と図９に示すＡＴＲ（以降、第２のＡＴＲと称す）はその物理的特性および伝送プロトコルに関して同一の意味を持っている。しかし、ＩＳＯ／ＩＥＣ７８１６−３  Ｆｉｒｓｔ  Ｅｄｉｔｉｏｎで規定された第１のＡＴＲに対して、改訂されたＩＳＯ／ＩＥＣ７８１６−３の２ｎｄ  ＥｄｉｔｉｏｎからＴＤ３バイト及びＴＡ４バイトが付加され、第２のＡＴＲとなった点が異なる。
【００３８】
図９に示すように、ＴＡ４バイトは動作モード、特にＩＣカード１の動作電圧（３Ｖ対応、５Ｖ対応、３Ｖと５Ｖ両方対応）とクロック停止機能のサポートの有無に関する情報である。また、ＴＡ４バイトを付加する場合には、その付加を示唆するＴＤ３バイトも共に付加するようになっている。第２のＡＴＲは、本実施の形態では５Ｖ単一動作に対応したものとなっている。
【００３９】
そして、第２のＡＴＲのＴＤ３バイト及びＴＡ４バイトは、第１のＡＴＲからも分かるように、その発行以前のＩＳＯ／ＩＥＣ７８１６−３  Ｆｉｒｓｔ  Ｅｄｉｔｉｏｎを参考に制定されたアプリケーション仕様では存在しないものである。しかし、第２のＡＴＲには、第１のＡＴＲにて必須となる部分（ＴＳ〜ＴＢ３、ＴＣＫ）が含まれているので、ＩＳＯ／ＩＥＣ７８１６−３  Ｆｉｒｓｔ  Ｅｄｉｔｉｏｎを参考に制定されたアプリケーション仕様においても正常なＡＴＲとして受入れられる傾向にある。
【００４０】
逆に、ＩＳＯ／ＩＥＣ７８１６−３の２ｎｄ  Ｅｄｉｔｉｏｎ以降を参考に制定されたアプリケーション仕様ではＴＤ３バイト及びＴＡ４バイトは必ず存在すると決めているものもあり、ＴＤ３バイト及びＴＡ４バイトが存在しない第１のＡＴＲを送信したＩＣカードを不正なカードであると認識するリーダライタも存在する。従って、ＩＣカード１が不用意に第１のＡＴＲを出力してしまうと、不正カードと認識され、リーダライタ４に受付けてもらえない場合が発生してしまう可能性がある。
【００４１】
従って、本実施の形態では、一番最初のリセット（後述するコールドリセット）時、あるいはＭＦ２１が選択されている場合には、第２のＡＴＲを出力するようになっており、最初のリセットに応答するＡＴＲで、リーダライタから不正カードと認識されないように配慮している。
【００４２】
図１０は、ＩＳＯ／ＩＥＣ７８１６−３に規定されているＩＣカードの活性化（リセット）シーケンスを示しており、上述するコールドリセット及びウォームリセットについて説明するための図である。
【００４３】
コールドリセットとは、電源電圧（ａ）、続く動作クロック信号（ｃ）の投入動作の直後に実行されたリセットのことである。従って、リーダライタ４がＩＣカード１を最初に起動させる際に実行するリセットｔｂ１はコールドリセットである。また、ウォームリセットとは、電源電圧（ａ）及び動作クロック信号（ｃ）が投入されたままの状態で実行されるリセットｔｂ２のことであり、再活性化といわれている。
【００４４】
そして、このコールドリセットが実行され、その解除を検知すると、ワーキングメモリ１７に設けられたコールドリセットフラグ３１にフラグ情報（例えば「１」）を書込むようになっている。以降、リセット解除を検知した際に、このコールドリセットフラグ３１の値を参照することによって、コールドリセットが実行されたか否かを認識できるようになっている。その結果、リセット解除時にコールドリセットであるのか、ウォームリセットであるのかを判定することができる。
【００４５】
即ち、リセット解除時、コールドリセットフラグ３１の値が不定値であれば「１」を書込み、コールドリセットであると認識する。また、既にコールドリセットフラグ３１の値が「１」がある場合には、コールドリセットフラグ３１の値を保持しつつ、ワーキングメモリ１７をリセットし、その値からウォームリセットであることを認識するようになっている。
【００４６】
本実施の形態では、リセット時にワーキングメモリ１７に設けられた識別子（例えばＤＦ識別情報バッファ３０やコールドリセットフラグ３１等）が、不特定な値である場合には特定の情報を書き込む。また、既に特定の情報が書込まれている場合には、リセット時に消してしまわないように保護しながらワーキングメモリ１７をリセットするようになっている。
【００４７】
そして、電源電圧（ａ）、リセット信号（ｂ）、クロック信号（ｃ）、及びＩ／Ｏ信号（ｄ）を用いて、ＩＣカードの活性化（リセット）シーケンスは、図１０に示すように、リーダライタ４から電源電圧（ａ）がＩＣカード１のＶｃｃ端子に供給された後、時間Ｔａでクロック信号（ｃ）がＣＬＫ端子に供給される。
【００４８】
そして、時間Ｔａ以後の時間ｔａ（２００クロックサイクル以内）にＩ／Ｏ信号（ｄ）の回線を所定の状態とし、時間Ｔａ以後の時間ｔｂ１（４００クロックサイクル以内）の間、リセット信号（ｂ）を状態Ｌｏｗに保つことによって、ＩＣカード１はリセット（コールドリセット）される。そして、時間Ｔｂ１にリセット信号（ｂ）の立ち上がり（Ｌｏｗ→Ｈｉｇｈ）を検出すると、時間Ｔｂ１以後の時間ｔｃ１（４００〜４００００クロックサイクル）を経過後、時間Ｔｃ１にリセットｔｂ１に応答したＡＴＲ１をＩ／Ｏ端子に送り出すようになっている。
【００４９】
次に、電源電圧（ａ）とクロック信号（ｃ）が供給され安定している状態で、リセット信号（ｂ）を状態Ｌｏｗへと変化され、時間ｔｂ２（４００クロックサイクル以内）の間、状態Ｌｏｗを保つことによって、ＩＣカード１はリセット（ウォームリセット）される。そして、時間Ｔｂ２にリセット信号（ｂ）の立ち上がり（Ｌｏｗ→Ｈｉｇｈ）を検出すると、時間Ｔｂ２以後の時間ｔｃ２（４００〜４００００クロックサイクル）を経過後、時間Ｔｃ２にリセットｔｂ２に応答したＡＴＲ２をＩ／Ｏ端子に送り出すようになっている。
【００５０】
そして、本実施の形態では、ＩＣカード１は、コールドリセット時及びＭＦ２１が選択された時には第２のＡＴＲ（図９）を出力し、選択コマンドによって特定のＤＦ（例えばＤＦ２２またはＤＦ２５）が選択された時には選択されているＤＦに対応したＡＴＲ（図８あるいは図９）を出力するようになっている。
【００５１】
例えば、ウォームリセットが解除された際に、図７に示すＤＦ識別情報バッファ３０を参照し、アプリケーションＡ用のＤＦ２２が選択されていた場合には第１のＡＴＲ（図８）を出力し、ＭＦ２１あるいはアプリケーションＢ用のＤＦ２５が選択されていた場合には第２のＡＴＲ（図９）を出力するようになっている。
【００５２】
従って、図１０に示すタイムチャートにおいては、コールドリセット後に出力するＡＴＲ１は第２のＡＴＲ（図９）であり、ウォームリセット後に出力するＡＴＲ２は、ウォームリセット時に選択されていたＭＦ、ＤＦに応じた第１又は第２のＡＴＲ（図８又は図９）が出力される。
【００５３】
次に、図１１及び図１を用いて、このように構成されたＩＣカード１における処理動作について説明する。図１１に示すように、リーダライタ４により通信部１９を介して電源電圧、クロック信号が供給され、リセット信号（コールドリセット）が解除（Ｌｏｗ状態からＨｉｇｈ状態へ移行）されると、ＩＣカード１の制御素子１５は、コールドリセットフラグ３１に値を書き込み、コールドリセットが実行されたことを記憶する（ＳＴ１１）。そして、第２のＡＴＲを、外部へ出力する（ＳＴ１２）。この際、ＤＦ識別情報バッファ３０をＮｕｌｌ（００ｈ、００ｈ、００ｈ、…００ｈ）に設定する。
【００５４】
ＳＴ１２でのＡＴＲ出力後、リーダライタ４からコマンドを受信すると（ＳＴ１３、ＳＴ１４）、受信したコマンドは選択コマンドであるか否かを判定する（ＳＴ１５）。ＳＴ１５の結果、選択コマンドではなく他のコマンドであった場合には、受信したコマンドを実行し（ＳＴ１８）、処理結果をレスポンスする（ＳＴ１９）。
【００５５】
ＳＴ１５の結果、選択コマンドであると判定されると、選択コマンドのＤＡＴＡフィールドで指定されたＤＦ名を選択し（ＳＴ１６）、ＤＦ識別情報バッファ３０にＳＴ１６で選択されたＤＦ名を設定する（ＳＴ１７）。ＳＴ１６及びＳＴ１７が正常に終了すると、制御素子１５は通信部１９を介してリーダライタ４へ正常に終了した旨のレスポンス（図６（ｂ））を出力する（ＳＴ１９）。
【００５６】
次に、図１に示すように、ＳＴ１２でＡＴＲを出力後、又はＳＴ１９でレスポンス出力後に、リセット信号が解除されると（ＳＴ１３、ＳＴ２１）、制御素子１５は、コールドリセットフラグ３１を参照することによって、ＳＴ２１でのリセットはコールドリセットかウォームリセットかを判定する（ＳＴ２２）。
【００５７】
ＳＴ２２でコールドリセットフラグ３１の値からコールドリセットであると判定されると、制御素子１５は、第２のＡＴＲを選択し（ＳＴ２３）、通信部１９を介して外部へ出力する（ＳＴ２７）。また、ＳＴ２２でコールドリセットフラグ３１の値からウォームリセットであると判定されると、制御素子１５は、ＤＦ識別情報バッファ３０を参照し、現在選択されているファイルを確認する（ＳＴ２４）。
【００５８】
ＳＴ２４による確認の結果、ウォームリセットの前にＭＦ２１あるいはＤＦ２５のようなＩＳＯ／ＩＥＣ７８１６−３のＳｅｃｏｎｄ  Ｅｄｉｔｉｏｎを参考に制定されたアプリケーション仕様のＤＦが選択されていた場合、制御素子１５は、第２のＡＴＲを選択し（ＳＴ２３）、通信部１９を介して外部へ出力する（ＳＴ２７）。
【００５９】
ＳＴ２４による確認の結果、ウォームリセットの前にＤＦ２２のようなＩＳＯ／ＩＥＣ７８１６−３のＦｉｒｓｔ  Ｅｄｉｔｉｏｎを参考に制定されたアプリケーション仕様のＤＦが選択されていた場合、制御素子１５は、第１のＡＴＲを選択し（ＳＴ２６）、通信部１９を介して外部へ出力し、図１１のステップ１３に戻る（ＳＴ２７）。
【００６０】
以上、説明したように、本実施例では、複数のアプリケーションを搭載したＩＣカードにおいて、ＩＣカード１がリセット解除された際、コールドリセット時にはＩＳＯ／ＩＥＣ７８１６−３  Ｓｅｃｏｎｄ  Ｅｄｉｔｉｏｎ（新しいバージョン）のＡＴＲ（第２のＡＴＲ）を出力し、ウォームリセット時には選択されたファイル（アプリケーション）に対応したＡＴＲ（第１又は第２のＡＴＲ）を出力するようになっている。
従って、不用意にアプリケーションを切換えることなく、再活性化時のアプリケーションに対応した初期応答情報（ＡＴＲ）を出力することができる。
【００６１】
また、システム開発当初、想定されていないアプリケーション仕様、あるいはアプリケーションの組合わせになったとしても、コールドリセット時には端末装置に受入れられやすいＡＴＲを出力し、ウォームリセットの際になって初めて既に選択されていたファイルのアプリケーション仕様に対応するＡＴＲ（端末装置によっては受け入れられないかもしれないバージョンの新しいＡＴＲ）を出力するようなっており、端末装置に不正カードと判断されない（判断される可能性を低くした）ようにしている。
【００６２】
【発明の効果】
以上説明したように、本発明によれば、アプリケーションの切換えを効率良く実施し、再活性化時のアプリケーションに対応した初期応答情報（ＡＴＲ）を出力することができる。
【図面の簡単な説明】
【図１】本発明の携帯可能電子装置に係るＩＣカード１における処理動作について説明するためのフローチャート図。
【図２】ＩＣカード１及びリーダライタ４を用いたシステム構成を概略的に説明するための図。
【図３】ＩＣカード１の基本的な機能ブロックを示す図。
【図４】ＩＣカード１の制御ブロックを示す図。
【図５】ＩＣカード１のデータメモリ１６の構成を説明するための図。
【図６】ファイルを選択する命令データ（選択コマンド）及びそのレスポンスの構成を説明するための図。
【図７】ワーキングメモリ１７におけるＤＦ識別情報バッファを説明するための図。
【図８】第１の初期応答情報（ＡＴＲ）を説明するための図。
【図９】第２の初期応答情報（ＡＴＲ）を説明するための図。
【図１０】コールドリセットとウォームリセットを説明するための図。
【図１１】ＩＣカード１における処理動作について説明するためのフローチャート図。
【符号の説明】
１    ＩＣカード
４    リーダライタ
１６    データメモリ（不揮発性メモリ）
１７    ワーキングメモリ（ＲＡＭ）
１８    プログラムメモリ（ＲＯＭ）
２１    ＭＦ
２２、２５    ＤＦ
２３、２４、２６、２７    ＥＦ
３０    ＤＦ識別情報バッファ
３１    コールドリセットフラグ
【図１】
0003620834.tif 000002
【図２】
0003620834.tif 000003
【図３】
0003620834.tif 000004
【図４】
0003620834.tif 000005
【図５】
0003620834.tif 000006
【図６】
0003620834.tif 000007
【図７】
0003620834.tif 000008
【図８】
0003620834.tif 000009
【図９】
0003620834.tif 000010
【図１０】
0003620834.tif 000011
【図１１】
0003620834.tif 000012