(57)【特許請求の範囲】
【請求項１】
外部装置とデータ通信を行う通信手段と、
階層構造で管理されるファイルと、ファイルの上位階層となるフォルダと、セキュリティステータスの継承元を示す情報を含むフォルダの制御情報とを記憶するデータ記憶手段と、
第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択手段と、
前記第２のフォルダの制御情報に前記第１のフォルダをセキュリティステータスの継承元とする情報が存在する場合、前記第１のフォルダを選択中に確立したセキュリティ条件を前記第２のフォルダの選択中にも継承する継承手段と、
を有するＩＣカード。
【請求項２】
外部装置とデータ通信を行う通信手段と、
階層構造で管理されるファイルと、ファイルの上位階層となるフォルダと、セキュリティステータスの継承先を示す情報を含むフォルダの制御情報と、を記憶するデータ記憶手段と、
第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択手段と、
前記第１のフォルダの制御情報に前記第２のフォルダをセキュリティステータスの継承先とする情報が存在する場合、前記第１のフォルダを選択中に確立したセキュリティ条件を前記第２のフォルダを選択中にも継承する継承手段と、
を有するＩＣカード。
【請求項３】
前記セキュリティステータスは、外部装置からの認証あるいは照合が成功して得られる権限である、
前記請求項１又は２の何れか１項に記載のＩＣカード。
【請求項４】
前記セキュリティステータスは、セキュアメッセージングに用いるキーである、
前記請求項１又は２の何れか１項に記載のＩＣカード。
【請求項５】
前記セキュリティステータスは、セキュアメッセージングが実施可能か否かの状態である、
前記請求項１又は２の何れか１項に記載のＩＣカード。
【請求項６】
前記継承手段は、前記セキュリティステータスの継承に関する情報に含まれるセキュリティステータスの継承条件に基づいて継承処理を実行する、
前記請求項１乃至５の何れか１項に記載のＩＣカード。
【請求項７】
外部装置とデータ通信を行う通信手段と、
階層構造で管理されるファイルと、ファイルの上位階層となるフォルダと、複数のフォルダ間におけるセキュアメッセージングに用いるキーの継承に関する情報とを記憶するデータ記憶手段と、
第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択手段と、
前記第１のフォルダから前記第２のフォルダへセキュアメッセージングに用いるキーを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュアメッセージングに用いるキーを前記第２のフォルダを選択中にも継承する継承手段と、
を有するＩＣカード。
【請求項８】
前記データ記憶手段は、さらに、外部装置からの認証あるいは照合が成功して得られる権限の継承に関する情報を記憶し、
前記継承手段は、前記第１のフォルダから前記第２のフォルダへ前記権限を継承する情報が存在する場合、前記権限を前記第２のフォルダを選択中にも継承する、
前記請求項７に記載のＩＣカード。
【請求項９】
前記データ記憶手段は、さらに、セキュアメッセージングが実施可能か否かの状態の継承に関する情報を記憶し、
前記継承手段は、前記第１のフォルダから前記第２のフォルダへ前記セキュアメッセージングが実施可能か否かの状態を継承する情報が存在する場合、前記セキュアメッセージングが実施可能か否かの状態を前記第２のフォルダを選択中にも継承する、
前記請求項７又は８の何れか１項に記載のＩＣカード。
【請求項１０】
外部装置とデータ通信を行う通信手段と、階層構造で管理されるファイルと、ファイルの上位階層となるフォルダと、複数のフォルダ間におけるセキュアメッセージングに用いるキーの継承に関する情報とを記憶するデータ記憶手段と、第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択手段と、前記第１のフォルダから前記第２のフォルダへセキュアメッセージングに用いるキーを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュアメッセージングに用いるキーを前記第２のフォルダを選択中にも継承する継承手段と、を有するモジュールと、
前記モジュールを具備する本体と、
を有するＩＣカード。
【請求項１１】
外部装置とデータ通信を行う通信手段と、
階層構造で管理されるファイルと、ファイルの上位階層となるフォルダと、複数のフォルダ間におけるセキュアメッセージングに用いるキーの継承に関する情報とを記憶するデータ記憶手段と、
第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択手段と、
前記第１のフォルダから前記第２のフォルダへセキュアメッセージングに用いるキーを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュアメッセージングに用いるキーを前記第２のフォルダを選択中にも継承する継承手段と、
を有する携帯可能電子装置。
【請求項１２】
外部装置とデータ通信を行う通信手段と、階層構造で管理されるファイルとファイルの上位階層となるフォルダとを記憶するデータ記憶手段とを有するＩＣカードに用いられる制御方法であって、
前記データ記憶手段に複数のフォルダ間におけるセキュアメッセージングに用いるキーの継承に関する情報を記憶しておき、
第１のフォルダを選択中に第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択処理を行い、
前記第１のフォルダから前記第２のフォルダへセキュアメッセージングに用いるキーを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュアメッセージングに用いるキーを前記第２のフォルダを選択中にも継承する、
ＩＣカードの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ＩＣカード、携帯可能電子装置及びＩＣカードの制御方法に関する。
【背景技術】
【０００２】
ＩＣカードは、メモリに保存する複数のファイルを階層構造で管理する。ＩＣカードは、確立されたセキュリティステータスに準じて各ファイルにアクセスする。従来、ＩＣカードは、セキュリティスタータスが上位階層のファイルで確立された場合、当該ファイルに属する下位階層の各ファイルについては、確立されたセキュリティスタータスが継承できる。しかしながら、従来のＩＣカードは、セキュリティスタータスを確立したファイルよりも上位の階層あるいは同じ階層のファイルには、セキュリティスタータスが継承できない。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−３１２７４１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
この発明の実施形態では、セキュリティスタータスを効率良く運用できるＩＣカード、携帯可能電子装置及びＩＣカードの制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
実施形態によれば、ＩＣカードは、通信手段と、データ記憶手段と、選択手段と、継承手段とを有する。通信手段は、外部装置とデータ通信を行う。データ記憶手段は、階層構造で管理されるファイルとファイルの上位階層となるフォルダと複数のフォルダ間におけるセキュアメッセージングに用いるキーの継承に関する情報とを記憶する。選択手段は、第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする。継承手段は、前記第１のフォルダから前記第２のフォルダへセキュアメッセージングに用いるキーを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュアメッセージングに用いるキーを前記第２のフォルダを選択中にも継承する。
【図面の簡単な説明】
【０００６】
【図１】図１は、本実施形態に係るＩＣカードと通信を行うＩＣカード処理装置の構成例を示す図である。
【図２】図２は、本実施形態に係るＩＣカードの構成例を示すブロック図である。
【図３】図３は、本実施形態に係るＩＣカードのデータメモリに格納されるファイルの例を示す図である。
【図４】図４は、本実施形態に係るＩＣカードに供給される選択コマンドの構成例を示す図である。
【図５】図５は、本実施形態に係るＩＣカードが選択コマンドに対する応答として出力するレスポンスの構成例を示す図である。
【図６】図６は、本実施形態に係るＩＣカードのＲＡＭに格納されるＤＦの選択状態およびセキュリティステータスを示す情報の例を示す図である。
【図７】図７は、本実施形態に係るＩＣカードにおける第１の処理例を説明するためのフローチャートである。
【図８】図８は、本実施形態に係るＩＣカードにおける第２の処理例を説明するためのフローチャートである。
【発明を実施するための形態】
【０００７】
以下、この発明の実施の形態について図面を参照して説明する。  
図１は、本実施の形態に係るＩＣカード（携帯可能電子装置）２、および、ＩＣカード２との通信機能を有する外部装置としてのＩＣカード処理装置１の構成例を概略的に示すブロック図である。  
まず、上記ＩＣカード処理装置１の構成について説明する。  
ＩＣカード処理装置１は、図１に示すように、端末装置１１、カードリーダライタ１２、キーボード１３、ディスプレイ１４、および、プリンタ１５などを有する。
【０００８】
端末装置１１は、ＩＣカード処理装置１全体の動作を制御するものである。端末装置１１は、ＣＰＵ、種々のメモリ及び各種インターフェースなどにより構成される。たとえば、端末装置１１は、パーソナルコンピュータ（ＰＣ）により構成される。  
端末装置１１は、カードリーダライタ１２によりＩＣカード２へコマンドを送信する機能、ＩＣカード２から受信したデータを基に種々の処理を行う機能などを有している。たとえば、端末装置１１は、カードリーダライタ１２を介してＩＣカード２にデータの書き込みコマンドを送信することによりＩＣカード２内の不揮発性メモリにデータを書き込む制御を行う。また、端末装置１１は、ＩＣカード２に読み取りコマンドを送信することによりＩＣカード２からデータを読み出す制御を行う。
【０００９】
カードリーダライタ１２は、ＩＣカード２との通信を行うためのインターフェース装置である。カードリーダライタ１２は、ＩＣカード２の通信方式に応じたインターフェースにより構成される。たとえば、ＩＣカード２が接触型のＩＣカードである場合、カードリーダライタ１２は、ＩＣカード２のコンタクト部と物理的かつ電気的に接続するための接触部などにより構成される。また、上記ＩＣカード２が非接触型のＩＣカードである場合、カードリーダライタ１２は、ＩＣカード２との無線通信を行うためのアンテナおよび通信制御などにより構成される。カードリーダライタ１２では、ＩＣカード２に対する電源供給、クロック供給、リセット制御、データの送受信が行われるようになっている。このような機能によってカードリーダライタ１２は、端末装置１１による制御に基づいて上記ＩＣカード２の活性化（起動）、種々のコマンドの送信、及び送信したコマンドに対する応答の受信などを行なう。
【００１０】
キーボード１３は、当該ＩＣカード処理装置１の操作員が操作する操作部として機能し、操作員により種々の操作指示やデータなどが入力される。ディスプレイ１４は、端末装置１１の制御により種々の情報を表示する表示装置である。プリンタ１５は、処理結果などの各種データを印刷出力するためのものである。
【００１１】
次に、ＩＣカード２の構成例について説明する。  
ＩＣカード２は、ＩＣカード処理装置１などの上位機器からの電力供給を受けて活性化される（動作可能な状態になる）。例えば、ＩＣカード２が接触型の通信によりＩＣカード処理装置１と接続される場合、つまり、ＩＣカード２が接触型のＩＣカードである場合、ＩＣカード２は、通信インターフェースとしてのコンタクト部を介してＩＣカード処理装置１からの動作電源及び動作クロックの供給を受けて活性化される。
【００１２】
また、ＩＣカード２が非接触型の通信方式によりＩＣカード処理装置１と接続される場合、つまり、ＩＣカード２が非接触型のＩＣカードである場合、ＩＣカード２は、通信インターフェースとしてのアンテナ及び変復調回路などを介してＩＣカード処理装置１からの電波を受信し、その電波から図示しない電源部により動作用の電力及び動作クロックを生成して活性化する。
【００１３】
図２は、本実施の形態に係るＩＣカード２のハードウエア構成例を概略的に示すブロック図である。  
ＩＣカード２は、プラスチックなどで形成されたカード状の筐体（本体）Ｂ内にモジュールＭが内蔵されている。モジュールＭは、１つまたは複数のＩＣチップＣと通信用の外部インターフェース（通信インターフェース）とが接続された状態で一体的に形成され、本体Ｂ内に埋設されている。また、ＩＣカード２のモジュールＭは、図２に示すように、制御素子２１、データメモリ２２、ワーキングメモリ２３、プログラムメモリ２４、および、通信部２５などを有してしている。
【００１４】
制御素子２１は、当該ＩＣカード２全体の制御を司るものである。制御素子２１は、プログラムメモリ２４あるいはデータメモリ２２に記憶されている制御プログラムおよび制御データに基づいて動作することにより、種々の機能を実現する。たとえば、制御素子２１は、オペレーティングシステムのプログラムを実行することにより、当該ＩＣカード２の基本的な動作制御を行う。また、制御素子２１は、当該ＩＣカード２の利用目的に応じたアプリケーションプログラムを実行することにより、当該ＩＣカード２の運用形態に応じた種々の動作制御を行う。
【００１５】
データメモリ２２は、例えば、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  Read-Only  Memory）あるいはフラッシュＲＯＭなどのデータの書き込み及び書換えが可能な不揮発性のメモリにより構成される。データメモリ２２には、当該ＩＣカード２の運用用途に応じた制御プログラムあるいは種々のデータが書込まれる。データメモリ２２には、当該ＩＣカード２の規格に応じた種々のファイルが定義され、それらのファイルに種々のデータが書き込まれる。上記データメモリ２２に格納されるファイルの例については、後述する。
【００１６】
ワーキングメモリ２３は、ＲＡＭなどの揮発性のメモリである。また、ワーキングメモリ（ＲＡＭ）２３は、制御素子２１が処理中のデータなどを一時保管するバッファとして機能する。ワーキングメモリ２３には、各ファイルへのアクセス状況、通信チャネルの使用状況、および、処理状況などを示す種々のテーブルが設けられる。ワーキングメモリ２３に設けられるテーブルの例については、後述する。
【００１７】
プログラムメモリ２４は、予め制御用のプログラムや制御データなどが記憶されているマスクＲＯＭなどの不揮発性のメモリである。プログラムメモリ（ＲＯＭ）２４には、当該ＩＣカードの製造段階で制御プログラムあるいは制御データなどが記憶された状態でＩＣカード２内に組み込まれる。つまり、プログラムメモリ２４に記憶されている制御プログラムあるいは制御データは、当該ＩＣカードの基本的な動作を司るものであり、予め当該ＩＣカード２の仕様に応じて組み込まれる。
【００１８】
通信部２５は、ＩＣカード処理装置１のカードリーダライタ１２との通信を行うためのインターフェースである。当該ＩＣカード２が接触型のＩＣカードとして実現される場合、通信部２５は、ＩＣカード処理装置１のカードリーダライタ１２と物理的かつ電気的に接触して信号の送受信を行うための通信制御部とコンタクト部とにより構成される。また、当該ＩＣカード２が非接触型のＩＣカードとして実現される場合、通信部２５は、ＩＣカード処理装置１のカードリーダライタ１２との無線通信を行うための変復調回路などの通信制御部および電波を送受信するためのアンテナなどにより構成される。
【００１９】
次に、データメモリ２２に格納されるファイルの管理構造について説明する。  
ＩＣカードのデータメモリ２２に記憶されるファイルは、階層構造で管理される。たとえば、ＩＣカードの標準規格の１つであるＩＳＯ／ＩＥＣ  ７８１６−４においては、データメモリ２２に記憶されるファイルは、ＭＦ（Ｍａｓｔｅｒ  Ｆｉｌｅ）、ＤＦ（Ｄｅｄｉｃａｔｅｄ  Ｆｉｌｅ）、ＥＦ（Ｅｌｅｍｅｎｔａｒｙ  Ｆｉｌｅ）の何れかとして定義される。ＭＦは、ルートディレクトリに相当する。ＭＦの下位階層には、ＤＦ（フォルダ）およびＥＦ（データファイル）を定義する。ＤＦは、ディレクトリに相当し、フォルダとして機能する。ＤＦの下位階層には、ＤＦおよびＥＦを持つことが出来る。このような構成により、ＩＣカードでは、ＭＦを最上位とした階層構造によるファイル管理が可能となる。ＭＦ、ＤＦおよびＥＦは、それぞれを選択して使用される。
【００２０】
図３は、階層構造で管理されるファイルの例を示す図である。  
図３に示す例では、ＭＦ３０１、ＤＦ（ＤＦ（Ａ））３０２、ＥＦ（ＥＦ（Ａ））３０４、ＤＦ（ＤＦ（Ｂ））３０５、ＥＦ（ＥＦ（Ｂ））３０７、ＤＦ（ＤＦ（Ｃ））３０５、ＥＦ（ＥＦ（Ｃ））の各ファイルに対する階層構造の管理形態を示している。図３に示す例において、最上階層のマスターファイル（ＭＦ）３０１の次の階層には、ＤＦ（Ａ）３０２、ＤＦ（Ｂ）３０５、ＤＦ（Ｃ）３０８が存在する。
【００２１】
さらに、ＤＦ（Ａ）３０２の配下にはＥＦ（Ａ）３０４があり、ＤＦ（Ｂ）３０５の配下にはＥＦ（Ｂ）３０７があり、ＤＦ（Ｃ）３０８の配下にはＥＦ（Ｃ）３１０がある。たとえば、各ＤＦは、当該ＩＣカード２が具備する１つのアプリケーションを実現するためのデータが格納される。複数のアプリケーションによって複数の機能を実現しているＣカードは、各アプリケーションに対応する複数のＤＦをデータメモリ２２内に設けるようにして良い。
【００２２】
また、各ＤＦ３０２、３０５、３０８には、それぞれＦＣＩ（Ｆｉｌｅ  Ｃｏｎｔｒｏｌ  Ｉｎｆｏｒｍａｔｉｏｎ）３０３、３０６、３０９が設けられている。ＦＣＩ３０３、３０６、３０９は、それぞれ対応するＤＦ３０２、３０５、３０８に関する制御情報である。たとえば、ＦＣＩ３０３、３０６、３０９には、対応するＥＦにおけるセキュリティ条件などの情報が格納される。なお、ＦＣＩについても、ＩＣカードの標準規格の１つであるＩＳＯ／ＩＥＣ  ７８１６−４で規定されているもので良い。
【００２３】
次に、ＩＣカード２に供給されるコマンドデータ（単に、コマンドと称する）の構成例について説明する。  
図４は、ファイルの選択を要求する選択コマンド（ＳＥＬＥＣＴコマンド）の構成例である。図４では、ＩＳＯ／ＩＥＣ  ７８１６−４に規定された選択コマンドの構成例を示している。図４に示す選択コマンドは、ＩＳＯ／ＩＥＣ  ７８１６−３に規定されたＣｏｍｍａｎｄ  Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ  Ｄａｔａ  Ｕｎｉｔ形式に従っている。
【００２４】
図４に示す例において、コマンドは、「Ｃｌａｓｓ  ｂｙｔｅ（ＣＬＡ）」部４０１、「Ｉｎｓｔｒｕｃｔｉｏｎ  ｂｙｔｅ  （ＩＮＳ）」部４０２、「Ｐ１」部４０３、「Ｐ２」部４０４、「Ｌｃ」部４０５、「Ｄａｔａ」部４０６、「Ｌｅ」部４０７から構成される。ＣＬＡ部４０１およびＩＮＳ部４０２は、コマンドの種類を示す情報を格納する。Ｐ１部４０３およびＰ２部４０４は、コマンド処理におけるパラメータを格納する。Ｌｃ部４０５は、Ｄａｔａ部４０６の長さを示す情報を格納する。Ｄａｔａ部４０６は、コマンドに用いられるデータを格納する。Ｌｅ部４０７は、コマンドをチェックするための情報を格納する。
【００２５】
たとえば、選択コマンドでは、図４に示すような情報が各部に格納される。選択コマンドにおけるＤａｔａ部４０６には、選択対象となるファイル名が格納される。図４に示す例では、「Ｄａｔａ」部にＤＦ名として「Ａ０  ００  ０１」が格納されている。
【００２６】
次に、コマンドに対するレスポンスデータ（単に、レスポンスとも称する）の構成について説明する。  
図５は、選択コマンドに対するレスポンスの構成例を示す図である。  
レスポンスは、データ部とステータス部とを有する。レスポンスにおけるデータ部は、コマンドの実行結果などを示すデータを格納し、ステータス部にはコマンドに対する処理の成功あるいは失敗を示すステータスが格納される。
【００２７】
図５に示す例では、レスポンスのデータ部は、識別子（タグ（Ｔａｇ））５０１、長さ情報（レングス（Ｌｅｎｇｔｈ））５０２、および、データ部（バリュー（Ｖａｌｕｅ））５０３が順に連結されるＴＬＶ構造のオブジェクトデータとなっている。さらに、図５に示すデータ部（親データのバリュー）５０３には、タグ５１１、レングス５１２およびバリュー５１３からなるデータ（子データ）を格納する。また、図５に示す子データのバリュー５１３には、タグ５２１、レングス５２２およびバリュー５２３からなる第１のデータ（第１孫データ）と、タグ５３１、レングス５３２およびバリュー５３３からなる第２のデータ（第２孫データ）とを格納する。なお、５０１〜５３３に示すデータ構成は、ＩＳＯ／ＩＥＣ  ７８１６−４に規定された構造化データオブジェクト（Ｃｏｎｓｔｒｕｃｔｅｄ  Ｄａｔａ  Ｏｂｊｅｃｔ）の構成である。
【００２８】
また、図５では、選択コマンドに対するレスポンスの具体例を示している。図５に示すデータ部５０１〜５３３は、選択コマンドにより選択されたファイルのＦＣＩである。つまり、図５に示す例において、タグ５０１は選択ファイルのＦＣＩの識別子であり、レングス５０２は選択ファイルのＦＣＩ全体の長さを示し、バリュー５０３は選択ファイルのＦＣＩにおける実データである。図５に示す例において、バリュー５０３は選択ファイルに対するセキュリティ条件の継承を示すデータを含むものである。
【００２９】
たとえば、タグ５２１が示すデータ（第１孫データ）は、選択したファイルに対する、セキュリティ条件の継承元、あるいは、セキュリティ条件の継承先となるファイルを示す情報を格納するＴＬＶデータである。図５に示す例では、タグ５２１は、第１孫データの識別子である。レングス５２２は、後に続くバリュー５２３の長さを示す情報である。バリュー５２３は、セキュリティ条件の継承元、あるいは、セキュリティ条件の継承先となるファイルを示す情報（ＤＦ名のタグ）である。
【００３０】
タグ５３１が示すデータ（第２孫データ）は、セキュリティ条件の継承条件を示すデータを格納するＴＬＶデータ５３１、５３２、５３３である。図５に示す例では、タグ５３１は、第２孫データの識別子である。レングス５３２は、後に続くバリュー５３３の長さを示す情報である。バリュー５３３は、セキュリティ条件の継承において、照合したときのセキュリティ条件を継承するのか、あるいは、認証したときのセキュリティ条件を継承するのか、あるいは、セキュアメッセージングのセッションキーおよび条件を継承するのかを識別する「セキュリティ条件の継承条件」を示す情報である。たとえば、バリュー５３３は、１バイトのデータで構成し、ｂｉｔ８が認証、ｂｉｔ７が照合、ｂｉｔ６がセキュアメッセージング用セッション鍵の継承を示すようにしても良い。
【００３１】
次に、コマンドの実行後にワーキングメモリ２３に格納される情報について説明する。  
図６は、選択コマンドを実行後にワーキングメモリ２３に格納される情報の例を示す図である。図６は、本実施形態に係るＩＣカードのＲＡＭに格納されるＤＦの選択状態およびセキュリティステータスを示す情報の例を示している。
【００３２】
図６に示す例では、選択コマンドの実行結果としてワーキングメモリ（ＲＡＭ）２３にデータ６０２〜６０８が格納される。データ６０２は、選択コマンドにより選択されるファイルを示す情報（選択中のファイルのファイル名（ＤＦのＤＦ名））を格納する。データ６０２に格納する情報は、選択コマンドで選択されたファイルを示す情報（ＤＦ名を含むＤＦ識別情報）である。
【００３３】
データ６０３は、外部装置（ＩＣカード処理装置）との照合により確立された権限などのセキュリティ条件（セキュリティステータス）を示す情報を格納する。データ６０４は、外部装置との認証により確立された権限などのセキュリティ条件（セキュリティステータス）を示す情報を格納する。データ６０５は、セキュリティ条件（セキュリティステータス）として、セキュアメッセージングで使用するセッションキー（鍵情報）を示す情報を格納する。データ６０６は、セキュリティ条件（セキュリティステータス）として、セキュアメッセージングが実施可能か否かを示すステータス（セキュアメッセージングの実行条件）を格納する。
【００３４】
データ６０７は、選択コマンドによる選択処理を行う前に選択状態になっていたＤＦ（フォルダ）を示す情報（ＤＦ名を含むＤＦ識別情報）を格納する。データ６０８は、選択コマンドによる選択処理を行う前に選択状態になっていたＤＦ（フォルダ）のＦＣＩ情報を示す。
【００３５】
次に、ＩＣカード２における選択コマンドに対する第１の処理例について説明する。  
図７は、ＩＣカード２における選択コマンドに対する選択処理の流れを説明するためのフローチャートである。  
ＩＣカード処理装置１からコマンドを受信すると、制御素子２１は、受信したコマンドのフォーマットをチェックする（ステップＳ７０２）。受信したコマンドのフォーマットが異常であると判断した場合（ステップＳ７０２、ＮＧ）、制御素子２１は、エラー応答として、当該コマンドのフォーマットが異常である旨を示すレスポンスを出力し（ステップＳ７１０）、処理を終了する。
【００３６】
また、受信したコマンドのフォーマットが正常であると判断した場合（ステップＳ７０２、ＯＫ）、制御素子２１は、コマンドパラメータをチェックし（ステップＳ７０３）、受信したコマンドによる処理内容を判別する。たとえば、ＩＣカード２の制御素子２１は、受信したコマンドの「ＣＬＡ」および「ＩＮＳ」により受信したコマンドが種類を判別し、「Ｐ１」、「Ｐ２」及び「Ｄａｔａ」により処理内容を判別する。受信したコマンドのパラメータが異常であると判断した場合（ステップＳ７０３、ＮＧ）、制御素子２１は、エラー応答として、当該コマンドのパラメータが異常である旨を示すレスポンスを出力し（ステップＳ７１０）、処理を終了する。
【００３７】
ここで、ＩＣカード２は、通信部２５によりＩＣカード処理装置１からあるＤＦの選択を要求する選択コマンドを受信したものとする。正常なパラメータの選択コマンドを受信した場合（ステップＳ７０３、ＯＫ）、ＩＣカード２の制御素子２１は、受信したコマンドの「ＣＬＡ」および「ＩＮＳ」により受信したコマンドが選択コマンドであることを認識し、「Ｐ１」、「Ｐ２」及び「Ｄａｔａ」で指定されるＤＦを選択状態とするための選択処理を開始する。
【００３８】
受信した選択コマンドに対する選択処理として、制御素子２１は、当該選択コマンドで指定されたＤＦを検索する処理を行う（ステップＳ７０４）。指定されたＤＦがデータメモリ２２に存在しないと判断した場合（ステップＳ７０５、ＮＯ）、制御素子２１は、エラー応答として、当該コマンドで指定されたファイルが存在しない旨を示すレスポンスを出力し（ステップＳ７１０）、処理を終了する。
【００３９】
また、指定されたＤＦを検出した場合（ステップＳ７０５、ＹＥＳ）、制御素子２１は、指定されたＤＦを選択状態とする処理として、選択状態のＤＦの入れ替え処理を行う（ステップＳ７０６）。すなわち、制御素子２１は、図６に示すような選択状態のＤＦを示す更新することにより、現在選択中となっているＤＦを非選択状態とし、当該コマンドで指定されたＤＦを選択状態とする。
【００４０】
このようなＤＦの入れ替え処理は、たとえば、図６に示すようなＲＡＭ２３上の情報を更新することにより実現する。図６に示す例において、制御素子２１は、ＲＡＭ２３における選択状態のＤＦを示すデータ６０２において、選択状態とするＤＦ識別情報を当該選択コマンドで指定されたＤＦの識別情報に更新することにより、当該コマンドで指定されたＤＦを選択状態とする。また、制御素子２１は、これまで選択状態になっていたＤＦの識別情報を選択処理前に選択状態であったＤＦを示すデータ６０７に書き込むことにより、選択中であったＤＦを非選択状態とする。さらに、図６に示す例では、制御素子２１は、選択処理前に選択状態であったＤＦのＦＣＩ情報をデータ６０８に書き込む。
【００４１】
選択コマンドに応じたＤＦの入れ替え処理が完了すると、制御素子２１は、選択状態のＤＦの入れ替え後も、セキュリティステータスの継承が可能か否かを判断する（ステップＳ７０７）。この第１の処理例では、各ＤＦのＦＣＩにセキュリティ条件（セキュリティステータス）の継承元とするＤＦを示す情報を格納するものとする。また、各ＤＦのＦＣＩには、セキュリティ条件（セキュリティステータス）の継承元とするＤＦを示す情報（例えば、ＤＦ名）を複数設定しても良い。このため、第１の処理例では、選択コマンドに応じたＤＦの入れ替え処理が完了すると、制御素子２１は、選択状態になったＤＦのＦＣＩにより、選択処理前に選択状態であったＤＦを選択中に確立したセキュリティステータスの継承が可能か否かを判断する（ステップＳ７０７）。制御素子２１は、選択状態になったＤＦのＦＣＩに記憶されているセキュリティ条件の継承元とするＤＦを示す情報が選択処理前に選択状態であったＤＦと一致するかを確認する。
【００４２】
選択状態になったＤＦのＦＣＩにおけるセキュリティ条件の継承元が選択処理前に選択状態であったＤＦと一致する場合、つまり、セキュリティステータスの継承が可能であると判断した場合（ステップＳ７０７、ＹＥＳ）、制御素子２１は、選択状態になったＤＦのＦＣＩに記憶されているセキュリティ条件（セキュリティステータス）の継承条件に基づいてセキュリティ条件の継承処理を行う（ステップＳ７０８）。セキュリティ条件の継承処理が終了すると、制御素子２１は、受信した選択コマンドのレスポンスとして、選択状態となったＤＦのＦＣＩをデータ部にセットし、かつ、ステータス部（ＳＷ１，ＳＷ２）に正常終了を示すステータスをセットしたレスポンスデータを作成する。制御素子２１は、作成したレスポンスデータをＩＣカード処理装置１へ出力し（ステップＳ７０９）、処理を終了する。
【００４３】
また、選択状態になったＤＦのＦＣＩにおけるセキュリティ条件の継承元が選択処理前に選択状態であったＤＦと一致しない場合、つまり、セキュリティステータスの継承が不可であると判断した場合（ステップＳ７０７、ＮＯ）、制御素子２１は、選択処理前に確立していたセキュリティ条件（セキュリティステータス）を無効化（たとえば、ＲＡＭ２３のデータ６０３−６０６をクリア）する（ステップＳ７１２）。セキュリティ条件を無効化した場合、制御素子２１は、受信した選択コマンドのレスポンスとして、選択状態となったＤＦのＦＣＩをデータ部にセットし、かつ、ステータス部（ＳＷ１，ＳＷ２）に正常終了を示すステータスをセットしたレスポンスデータを作成する。制御素子２１は、作成したレスポンスデータをＩＣカード処理装置１へ出力し（ステップＳ７０９）、処理を終了する。
【００４４】
次に、ＩＣカード２における選択コマンドに対する第２の処理例について説明する。  
図８は、ＩＣカード２における選択コマンドに対する選択処理の流れを説明するためのフローチャートである。  
ＩＣカード処理装置１からコマンドを受信すると、制御素子２１は、受信したコマンドのフォーマットをチェックする（ステップＳ８０２）。受信したコマンドのフォーマットが異常であると判断した場合（ステップＳ８０２、ＮＧ）、制御素子２１は、エラー応答として、当該コマンドのフォーマットが異常である旨を示すレスポンスを出力し（ステップＳ８１０）、処理を終了する。
【００４５】
また、受信したコマンドのフォーマットが正常であると判断した場合（ステップＳ８０２、ＯＫ）、制御素子２１は、コマンドパラメータをチェックし（ステップＳ８０３）、受信したコマンドによる処理内容を判別する。たとえば、ＩＣカード２の制御素子２１は、受信したコマンドの「ＣＬＡ」および「ＩＮＳ」により受信したコマンドが種類を判別し、「Ｐ１」、「Ｐ２」及び「Ｄａｔａ」により処理内容を判別する。受信したコマンドのパラメータが異常であると判断した場合（ステップＳ８０３、ＮＧ）、制御素子２１は、エラー応答として、当該コマンドのパラメータが異常である旨を示すレスポンスを出力し（ステップＳ８１０）、処理を終了する。
【００４６】
ここで、ＩＣカード２は、通信部２５によりＩＣカード処理装置１からあるＤＦの選択を要求する選択コマンドを受信したものとする。正常なパラメータの選択コマンドを受信した場合（ステップＳ８０３、ＯＫ）、ＩＣカード２の制御素子２１は、受信したコマンドの「ＣＬＡ」および「ＩＮＳ」により受信したコマンドが選択コマンドであることを認識し、「Ｐ１」、「Ｐ２」及び「Ｄａｔａ」で指定されるＤＦを選択状態とするための選択処理を開始する。
【００４７】
受信した選択コマンドに対する選択処理として、制御素子２１は、当該選択コマンドで指定されたＤＦを検索する処理を行う（ステップＳ８０４）。指定されたＤＦがデータメモリ２２に存在しないと判断した場合（ステップＳ８０５、ＮＯ）、制御素子２１は、エラー応答として、当該コマンドで指定されたファイルが存在しない旨を示すレスポンスを出力し（ステップＳ８１０）、処理を終了する。
【００４８】
また、指定されたＤＦを検出した場合（ステップＳ８０５、ＹＥＳ）、制御素子２１は、指定されたＤＦを選択状態とする処理として、選択状態のＤＦの入れ替え処理を行う（ステップＳ８０６）。すなわち、制御素子２１は、図６に示すような選択状態のＤＦを示す更新することにより、現在選択中となっているＤＦを非選択状態とし、当該コマンドで指定されたＤＦを選択状態とする。
【００４９】
このようなＤＦの入れ替え処理は、たとえば、図６に示すようなＲＡＭ２３上の情報を更新することにより実現する。図６に示す例において、制御素子２１は、ＲＡＭ２３における選択状態のＤＦを示すデータ６０２において、選択状態とするＤＦ識別情報を当該選択コマンドで指定されたＤＦの識別情報に更新することにより、当該コマンドで指定されたＤＦを選択状態とする。また、制御素子２１は、これまで選択状態になっていたＤＦの識別情報を選択処理前に選択状態であったＤＦを示すデータ６０７に書き込むことにより、選択中であったＤＦを非選択状態とする。さらに、図６に示す例では、制御素子２１は、選択処理前に選択状態であったＤＦのＦＣＩ情報をデータ６０８に書き込む。
【００５０】
選択コマンドに応じたＤＦの入れ替え処理が完了すると、制御素子２１は、選択状態のＤＦの入れ替え後も、セキュリティステータスの継承が可能か否かを判断する（ステップＳ８０７）。この第２の処理例では、各ＤＦのＦＣＩにセキュリティ条件（セキュリティステータス）の継承先とするＤＦを示す情報を格納するものとする。また、各ＤＦのＦＣＩには、セキュリティ条件（セキュリティステータス）の継承先とするＤＦを示す情報（例えば、ＤＦ名）を複数設定しても良い。このため、第２の処理例では、選択コマンドに応じたＤＦの入れ替え処理が完了すると、制御素子２１は、選択状態のＤＦの入れ替え後も、選択処理前に選択状態であったＤＦのＦＣＩにより、選択処理前に選択状態であったＤＦを選択中に確立したセキュリティステータスが継承可能か否かを判断する（ステップＳ８０７）。制御素子２１は、選択処理前に選択状態であったＤＦのＦＣＩに記憶されているセキュリティ条件の継承先とするＤＦを示す情報が、選択状態になったＤＦと一致するかを確認する。
【００５１】
選択処理前に選択状態であったＤＦのＦＣＩにおけるセキュリティ条件の継承先が選択状態になったＤＦと一致する場合、つまり、セキュリティステータスの継承が可能であると判断した場合（ステップＳ８０７、ＹＥＳ）、制御素子２１は、選択状態になったＤＦのＦＣＩに記憶されているセキュリティ条件（セキュリティステータス）の継承条件に基づいてセキュリティ条件の継承処理を行う（ステップＳ８０８）。セキュリティ条件の継承処理が終了すると、制御素子２１は、受信した選択コマンドのレスポンスとして、選択状態となったＤＦのＦＣＩをデータ部にセットし、かつ、ステータス部（ＳＷ１，ＳＷ２）に正常終了を示すステータスをセットしたレスポンスデータを作成する。制御素子２１は、作成したレスポンスデータをＩＣカード処理装置１へ出力し（ステップＳ８０９）、処理を終了する。
【００５２】
また、選択状態になったＤＦのＦＣＩにおけるセキュリティ条件の継承元が選択処理前に選択状態であったＤＦと一致しない場合、つまり、セキュリティステータスの継承が不可であると判断した場合（ステップＳ８０７、ＮＯ）、制御素子２１は、選択処理前に確立していたセキュリティ条件（セキュリティステータス）を無効化（たとえば、ＲＡＭ２３のデータ６０３−６０６をクリア）する（ステップＳ８１２）。セキュリティ条件を無効化した場合、制御素子２１は、受信した選択コマンドのレスポンスとして、選択状態となったＤＦのＦＣＩをデータ部にセットし、かつ、ステータス部（ＳＷ１，ＳＷ２）に正常終了を示すステータスをセットしたレスポンスデータを作成する。制御素子２１は、作成したレスポンスデータをＩＣカード処理装置１へ出力し（ステップＳ７０９）、処理を終了する。
【００５３】
上述したように、本実施形態では、選択コマンドを実行することにより、ＤＦを入れ替えた場合、予め設定したセキュリティ条件（セキュリティステータス）の継承に関する情報に基づいて、ＩＣカードのセキュリティステータスが継承可能か否かを判断する。継承可能であると判断した場合、ＩＣカードは、ＤＦを入れ替えた後も確立していたセキュリティステータスを継承する。
【００５４】
また、セキュリティステータスの継承に関する情報は、ＤＦに対する制御情報としてのＦＣＩに設定する。ＤＦのＦＣＩでは、セキュリティステータスの継承元となるＤＦ（複数でも良い）を指定したり、あるいは、セキュリティステータスの継承先となるＤＦ（複数でも良い）を指定したりする。これにより、同じ階層などのＤＦ間であっても、セキュリティステータスを共有でき、選択コマンドを実行してもセキュリティステータスを継承することが可能となる。
【００５５】
また、セキュリティステータスの継承には、継承条件を指定できる。たとえば、セキュリティステータスの継承条件は、ＤＦのＦＣＩにおいて設定できる。また、継承の対象となるセキュリティ条件（セキュリティステータス）には、セキュアメッセージングが実施可能になっているか否か状態、外部装置との照合が成功することにより得られる権限、外部装置との照合が成功することにより得られる権限、セキュアメッセージングに用いる鍵、あるいは、セキュアメッセージングの実行条件などがある。
【００５６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。  
以下、本願の出願当初の特許請求の範囲の記載を付記する。  
［１］
外部装置とデータ通信を行う通信手段と、
階層構造で管理されるファイルと、ファイルの上位階層となるフォルダと、複数のフォルダ間におけるセキュリティステータスの継承に関する情報とを記憶するデータ記憶手段と、
第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択手段と、
前記第１のフォルダから前記第２のフォルダへセキュリティステータスを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュリティステータスを前記第２のフォルダを選択中にも継承する継承手段と、
を有するＩＣカード。
［２］
前記データ記憶部は、各フォルダの制御情報においてセキュリティステータスの継承に関する情報を記憶し、
前記継承手段は、前記第２のフォルダの制御情報に含まれるセキュリティ条件の継承に関する情報に基づいて、前記第１のフォルダを選択中に確立したセキュリティ条件を前記第２のフォルダの選択中にも継承する、
前記［１］に記載のＩＣカード。
［３］
前記データ記憶部は、各フォルダの制御情報においてセキュリティステータスの継承元を示す情報を記憶し、
前記継承手段は、前記第２のフォルダの制御情報に前記第１のフォルダをセキュリティ条件の継承元とする情報が存在する場合、前記第１のフォルダを選択中に確立したセキュリティ条件を前記第２のフォルダの選択中にも継承する、
前記［２］に記載のＩＣカード。
［４］
前記データ記憶部は、各フォルダの制御情報においてセキュリティステータスの継承に関する情報を記憶し、
前記継承手段は、前記第１のフォルダの制御情報に含まれるセキュリティ条件の継承に関する情報に基づいて、前記第１のフォルダを選択中に確立したセキュリティ条件を前記第２のフォルダを選択中にも継承する、
前記［１］に記載のＩＣカード。
［５］
前記データ記憶部は、各フォルダの制御情報においてセキュリティステータスの継承先を示す情報を記憶し、
前記継承手段は、前記第１のフォルダの制御情報に前記第２のフォルダをセキュリティ条件の継承先とする情報が存在する場合、前記第１のフォルダを選択中に確立したセキュリティ条件を前記第２のフォルダを選択中にも継承する、
前記［４］に記載のＩＣカード。
［６］
前記セキュリティステータスは、外部装置からの認証あるいは照合が成功して得られる権限である、
前記［１］乃至［５］の何れか１つに記載のＩＣカード。
［７］
前記セキュリティステータスは、セキュアメッセージングに用いるキーである、
前記［１］乃至［５］の何れか１つに記載のＩＣカード。
［８］
前記セキュリティステータスは、セキュアメッセージングが実施可能か否かの状態である、
前記［１］乃至［５］の何れか１つに記載のＩＣカード。
［９］
前記継承手段は、前記セキュリティステータスの継承に関する情報に含まれるセキュリティステータスの継承条件に基づいて継承処理を実行する、
前記［１］乃至［８］の何れか１つに記載のＩＣカード。
［１０］
外部装置とデータ通信を行う通信手段と、階層構造で管理されるファイルと、ファイルの上位階層となるフォルダと、複数のフォルダ間におけるセキュリティステータスの継承に関する情報とを記憶するデータ記憶手段と、第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択手段と、前記第１のフォルダから前記第２のフォルダへセキュリティステータスを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュリティステータスを前記第２のフォルダを選択中にも継承する継承手段と、を有するモジュールと、
前記モジュールを具備する本体と、
を有するＩＣカード。
［１１］
外部装置とデータ通信を行う通信手段と、
階層構造で管理されるファイルと、ファイルの上位階層となるフォルダと、複数のフォルダ間におけるセキュリティステータスの継承に関する情報とを記憶するデータ記憶手段と、
第１のフォルダを選択中に前記通信手段により第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択手段と、
前記第１のフォルダから前記第２のフォルダへセキュリティステータスを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュリティステータスを前記第２のフォルダを選択中にも継承する継承手段と、
を有する携帯可能電子装置。
［１２］
外部装置とデータ通信を行う通信手段と、階層構造で管理されるファイルとファイルの上位階層となるフォルダとを記憶するデータ記憶手段とを有するＩＣカードに用いられる制御方法であって、
前記データ記憶手段に複数のフォルダ間におけるセキュリティステータスの継承に関する情報を記憶しておき、
第１のフォルダを選択中に第２のフォルダの選択を要求するコマンドを受信した場合、前記第１のフォルダを非選択状態とし、前記コマンドで指定された第２のフォルダを選択状態とする選択処理を行い、
前記第１のフォルダから前記第２のフォルダへセキュリティステータスを継承する情報が存在する場合、前記第１のフォルダを選択中に確立したセキュリティステータスを前記第２のフォルダを選択中にも継承する、
ＩＣカードの制御方法。
【符号の説明】
【００５７】
１…ＩＣカード処理装置（外部装置）、２…ＩＣカード（携帯可能電子装置）、１１…制御部、１２…ディスプレイ、１３…キーボード、１４…カードリーダライタ、１５…認証情報入力部、Ｂ…本体、Ｍ…ＩＣモジュール、２１…制御素子、２２…データメモリ（ＥＥＰＲＯＭ）、２３…ワーキングメモリ（ＲＡＭ）、２４…プログラムメモリ（ＲＯＭ）、２５…通信部。
【図１】
0005843674.tif 000002
【図２】
0005843674.tif 000003
【図３】
0005843674.tif 000004
【図４】
0005843674.tif 000005
【図５】
0005843674.tif 000006
【図６】
0005843674.tif 000007
【図７】
0005843674.tif 000008
【図８】
0005843674.tif 000009