(57)【特許請求の範囲】
【請求項１】
外部装置から与えられるコマンドに対する処理を行うＩＣカードにおいて、
複数のチャネルで外部装置との通信を行う通信手段と、
ファイルの定義情報と前記定義情報で定義されるファイルのデータとを記憶する記憶手段と、
前記ファイルへのアクセスに優先権を有するチャネルを示す情報を前記ファイルの定義情報に設定する設定手段と、
前記通信手段により受信した前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権を有するチャネルである場合、前記コマンドで要求される前記ファイルへの処理を実行する第１の処理手段と、
前記通信手段により受信した前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権がないチャネルである場合、前記通信手段により受信した前記コマンドに対する処理が実行可能か否かを判断する判断手段と、
前記判断手段により前記コマンドに対する処理が実行可能であると判断した場合、前記コマンドに対する処理を実行する第２の処理手段と、
前記判断手段により前記コマンドに対する処理が実行不可であると判断した場合、前記コマンドに対する処理を実行せずに、ファイルへのアクセスに優先権がないため実行不可となったことを示すレスポンスを前記外部装置へ送信する第３の処理手段と、
を有することを特徴とするＩＣカード。
【請求項２】
前記設定手段は、前記通信手段によりファイルを選択するコマンドを受信した場合、当該コマンドで選択されるファイルに対する優先権が未設定であれば、当該ファイルに対するアクセスの優先権を当該コマンドのチャネルに設定する、
ことを特徴とする前記請求項１に記載のＩＣカード。
【請求項３】
さらに、アクセス対象とするファイルを選択するコマンドを受信した場合、当該コマンドのチャネルが当該ファイルへのアクセスに優先権がないチャネルであれば、当該チャネルでのファイルへのアクセスが制限される旨を通知する通知手段を有する、
ことを特徴とする前記請求項１又は２の何れかに記載のＩＣカード。
【請求項４】
さらに、前記優先権が与えられているチャネルが閉塞された場合、当該ファイルへのアクセスの優先権を当該ファイルを選択している別のチャネルに変更する設定変更手段を有する、
ことを特徴とする前記請求項１乃至３の何れか１項に記載のＩＣカード。
【請求項５】
さらに、前記優先権が未設定のファイルに対してアクセスを要求するコマンドを受信した場合、当該ファイルに対するアクセスの優先権を当該コマンドのチャネルに設定することが可能な状態である旨を報知する報知手段を有する、
ことを特徴とする前記請求項１乃至４の何れか１項に記載のＩＣカード。
【請求項６】
さらに、前記優先権が与えられていないチャネルのコマンドに対する応答として、当該コマンドがアクセス対象とするファイルに対して前記優先権が与えられている別のチャネルで実行済みの処理内容を通知する応答を行う応答手段を有する、
ことを特徴とする前記請求項１乃至５の何れか１項に記載のＩＣカード。
【請求項７】
複数のチャネルで外部装置との通信を行う通信手段と、ファイルの定義情報と前記定義情報で定義されるファイルのデータとを記憶する記憶手段とを有するＩＣカードの制御方法であって、
前記ファイルへのアクセスに優先権を有するチャネルを示す情報を前記ファイルの定義情報に設定し、
前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権を有するチャネルである場合、当該コマンドで要求される前記ファイルへの処理を実行し、
前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権がないチャネルである場合、前記コマンドに対する処理が実行可能か否かを判断し、
前記判断により前記コマンドに対する処理が実行可能であると判断した場合、前記コマンドに対する処理を実行し、
前記判断により前記コマンドに対する処理が実行不可であると判断した場合、前記コマンドに対する処理を実行せずに、ファイルへのアクセスに優先権がないため実行不可となったことを示すレスポンスを前記外部装置へ送信する、
ことを特徴とするＩＣカードの制御方法。
【請求項８】
外部装置から与えられるコマンドに対する処理を行うＩＣカードにおいて、
複数のチャネルで外部装置との通信を行う通信手段と、ファイルの定義情報と前記定義情報で定義されるファイルのデータとを記憶する記憶手段と、前記ファイルへのアクセスに優先権を有するチャネルを示す情報を前記ファイルの定義情報に設定する設定手段と、前記通信手段により受信した前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権を有するチャネルである場合、前記コマンドで要求される前記ファイルへの処理を実行する第１の処理手段と、前記通信手段により受信した前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権がないチャネルである場合、前記通信手段により受信した前記コマンドに対する処理が実行可能か否かを判断する判断手段と、前記判断手段により前記コマンドに対する処理が実行可能であると判断した場合、前記コマンドに対する処理を実行する第２の処理手段と、前記判断手段により前記コマンドに対する処理が実行不可であると判断した場合、前記コマンドに対する処理を実行せずに、ファイルへのアクセスに優先権がないため実行不可となったことを示すレスポンスを前記外部装置へ送信する第３の処理手段と、を具備するモジュールと、
前記モジュールを具備する本体と、
を有することを特徴とするＩＣカード。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えば、制御素子、通信インターフェース、不揮発性メモリなどを有するＩＣチップが内蔵されたＩＣカード、および、ＩＣカードの制御方法に関する。
【背景技術】
【０００２】
一般に、携帯可能電子装置としてのＩＣカードは、プラスチックなどで形成されたカード状の筐体内に制御素子及び各種メモリなどを有するＩＣチップが埋め込まれている。このようなＩＣカード内の不揮発性メモリには、種々のアプリケーションプログラム、データファイルなどが格納されている。このようなＩＣカードでは、外部装置から与えられるコマンドの処理方法として、論理チャネルという機能を有するものがある。論理チャネルの機能を有するＩＣカードでは、各論理チャネルでそれぞれ別の系統の処理を並列的に実施できる。
【０００３】
たとえば、後述する非特許文献１（ＩＳＯ／ＩＥＣ７８１６−４：２００５Section５．３．３）では、複数の異なる論理チャネルで、1つのファイルにアクセスすることを許可あるいは不許可にすることがファイルの制御情報によって制御可能である。しかしながら、１つのファイルへのアクセスが許可されている場合、複数のチャネルから当該ファイルに対し、書き込み、削除等のアクセスが可能となってしまう。このため、従来のＩＣカードでは、あるチャネルで、書き込み、書き換え、削除、データ消去などのファイルのデータあるいはファイルの状態を変更させる処理を実施した場合、同一ファイルにアクセスしている別のチャネルでは、これまで行ってきた処理と整合が取れなくなる場合があるという問題がある。
【非特許文献１】ＩＳＯ／ＩＥＣ７８１６−４：２００５Section５．３．３
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この発明の一形態は、上記のような問題点を解決するものであり、複数のチャネルからの処理要求に対する処理において整合性を保つことができるＩＣカード、および、ＩＣカードの制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００５】
この発明の一形態としてのＩＣカードは、外部装置から与えられるコマンドに対する処理を行うものにおいて、複数のチャネルで外部装置との通信を行う通信手段と、ファイルの定義情報と前記定義情報で定義されるファイルのデータとを記憶する記憶手段と、前記ファイルへのアクセスに優先権を有するチャネルを示す情報を前記ファイルの定義情報に設定する設定手段と、前記通信手段により受信した前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権を有するチャネルである場合、前記コマンドで要求される前記ファイルへの処理を実行する第１の処理手段と、前記通信手段により受信した前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権がないチャネルである場合、前記通信手段により受信した前記コマンドに対する処理が実行可能か否かを判断する判断手段と、前記判断手段により前記コマンドに対する処理が実行可能であると判断した場合、前記コマンドに対する処理を実行する第２の処理手段と、前記判断手段により前記コマンドに対する処理が実行不可であると判断した場合、前記コマンドに対する処理を実行せずに、ファイルへのアクセスに優先権がないため実行不可となったことを示すレスポンスを前記外部装置へ送信する第３の処理手段とを有する。
【０００６】
この発明の一形態としてのＩＣカードの制御方法は、複数のチャネルで外部装置との通信を行う通信手段と、ファイルの定義情報と前記定義情報で定義されるファイルのデータとを記憶する記憶手段とを有するＩＣカードの制御方法であって、前記ファイルへのアクセスに優先権を有するチャネルを示す情報を前記ファイルの定義情報に設定し、前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権を有するチャネルである場合、当該コマンドで要求される前記ファイルへの処理を実行し、前記ファイルへのアクセスを要求するコマンドのチャネルが当該ファイルへのアクセスに優先権がないチャネルである場合、前記コマンドに対する処理が実行可能か否かを判断し、前記判断により前記コマンドに対する処理が実行可能であると判断した場合、前記コマンドに対する処理を実行し、前記判断により前記コマンドに対する処理が実行不可であると判断した場合、前記コマンドに対する処理を実行せずに、ファイルへのアクセスに優先権がないため実行不可となったことを示すレスポンスを前記外部装置へ送信する。
【発明の効果】
【０００７】
この発明の一形態によれば、複数のチャネルからの処理要求に対する処理において整合性を保つことができるＩＣカード、および、ＩＣカードの制御方法を提供することができる。
【発明を実施するための最良の形態】
【０００８】
以下、この発明の実施の形態について図面を参照して説明する。  
図１は、本実施の形態に係るＩＣカード（携帯可能電子装置）２、および、ＩＣカード２との通信機能を有する外部装置としてのＩＣカード処理装置１の構成例を概略的に示すブロック図である。  
まず、上記ＩＣカード処理装置１の構成について説明する。  
上記ＩＣカード処理装置１は、図１に示すように、端末装置１１、ディスプレイ１２、キーボード１３、テンキー１４、及び、カードリーダライタ１５などを有している。
【０００９】
上記端末装置１１は、ＩＣカード処理装置１全体の動作を制御するものである。上記端末装置１１は、ＣＰＵ、種々のメモリ及び各種インターフェースなどにより構成される。たとえば、上記端末装置１１は、パーソナルコンピュータ（ＰＣ）により構成される。  
上記端末装置１１は、上記カードリーダライタ１５によりＩＣカード２へコマンドを送信する機能、ＩＣカード２から受信したデータを基に種々の処理を行う機能などを有している。たとえば、上記端末装置１１は、カードリーダライタ１５を介してＩＣカード２にデータの書き込みコマンドを送信することによりＩＣカード２内の不揮発性メモリにデータを書き込む制御を行う。また、上記端末装置１１は、ＩＣカード２に読み取りコマンドを送信することによりＩＣカード２からデータを読み出す制御を行う。
【００１０】
上記ディスプレイ１２は、上記端末装置１１の制御により種々の情報を表示する表示装置である。上記キーボード１３は、当該ＩＣカード処理装置１の操作員が操作する操作部として機能し、操作員により種々の操作指示やデータなどが入力される。上記テンキー１４は、使用者ＩＤあるいはパスワードなど数字などの情報を入力する為の入力部として機能する。
【００１１】
上記カードリーダライタ１５は、上記ＩＣカード２との通信を行うためのインターフェース装置である。上記カードリーダライタ１５は、上記ＩＣカード２の通信方式に応じたインターフェースにより構成される。たとえば、上記ＩＣカード２が接触型のＩＣカードである場合、上記カードリーダライタ１５は、ＩＣカード２のコンタクト部と物理的かつ電気的に接続するための接触部などにより構成される。また、上記ＩＣカード２が非接触型のＩＣカードである場合、上記カードリーダライタ１５は、ＩＣカード２との無線通信を行うためのアンテナおよび通信制御などにより構成される。上記カードリーダライタ１５では、上記ＩＣカード２に対する電源供給、クロック供給、リセット制御、データの送受信が行われるようになっている。このような機能によってカードリーダライタ１５は、上記端末装置１１による制御に基づいて上記ＩＣカード２の活性化（起動）、種々のコマンドの送信、及び送信したコマンドに対する応答の受信などを行なう。
【００１２】
次に、上記ＩＣカード２のハードウエア構成例について説明する。  
上記ＩＣカード２は、上記ＩＣカード処理装置１などの上位機器から電力などの供給を受けた際、活性化される（動作可能な状態になる）ようになっている。例えば、上記ＩＣカード２が接触型の通信によりＩＣカード処理装置１と接続される場合、つまり、ＩＣカード２が接触型のＩＣカードで構成される場合、上記ＩＣカード２は、通信インターフェースとしてのコンタクト部を介してＩＣカード処理装置１からの動作電源及び動作クロックの供給を受けて活性化される。
【００１３】
また、上記ＩＣカード２が非接触型の通信方式によりＩＣカード処理装置１と接続される場合、つまり、上記ＩＣカード２が非接触式のＩＣカードで構成される場合、上記ＩＣカード２は、通信インターフェースとしてのアンテナ及び変復調回路などを介してＩＣカード処理装置１からの電波を受信し、その電波から図示しない電源部により動作電源及び動作クロックを生成して活性化するようになっている。
【００１４】
図２は、本実施の形態に係るＩＣカード２のハードウエア構成例を概略的に示すブロック図である。上記ＩＣカード２は、本体Ｃを構成する筐体内にモジュールＭが内蔵されている。上記モジュールＭは、１つまたは複数のＩＣチップＣａと通信用の外部インターフェース（通信インターフェース）とが接続された状態で一体的に形成され、ＩＣカード２の本体Ｃ内に埋設されている。また、上記ＩＣカード２のモジュールＭは、図２に示すように、制御部２１、通信インターフェース２２、ＲＯＭ２３、ＲＡＭ２４、不揮発性メモリ２５などを有してしている。
【００１５】
上記制御部２１は、当該ＩＣカード２全体の制御を司るものである。上記制御部２１は、上記ＲＯＭ２３あるいは上記不揮発性メモリ２５に記憶されている制御プログラムや制御データに基づいて動作することにより、種々の機能を実現する。たとえば、上記制御部２１は、オペレーティングシステムのプログラムを実行することにより、当該ＩＣカード２の基本的な動作制御を行う。また、上記制御部２１は、アプリケーションプログラムを実行することにより、当該ＩＣカード２の運用形態に応じた種々の動作制御を行う。
【００１６】
上記通信インターフェース２２は、上記ＩＣカード処理装置１のカードリーダライタ１５との通信を行うためのインターフェースである。当該ＩＣカード２が接触型のＩＣカードとして実現される場合、上記通信インターフェース２２は、上記ＩＣカード処理装置１のカードリーダライタ１５と物理的かつ電気的に接触して信号の送受信を行うための通信制御部とコンタクト部とにより構成される。また、当該ＩＣカード２が非接触型のＩＣカードとして実現される場合、通信インターフェース２２は、上記ＩＣカード処理装置１のカードリーダライタ１５との無線通信を行うための変復調回路などの通信制御部とアンテナとにより構成される。
【００１７】
上記ＲＯＭ２３は、予め制御用のプログラムや制御データなどが記憶されている不揮発性のメモリである。上記ＲＯＭ２３は、製造段階で制御プログラムや制御データなどが記憶された状態でＩＣカード２内に組み込まれるものである。つまり、上記ＲＯＭ２３に記憶されている制御プログラムや制御データは、予め当該ＩＣカード２の仕様に応じて組み込まれる。  
上記ＲＡＭ２４は、ワーキングメモリとして機能する揮発性のメモリである。また、上記ＲＡＭ２４は、制御部２１が処理中のデータなどを一時保管するバッファとしても機能する。例えば、上記ＲＡＭ２４は、上記通信インターフェース２２を介してＩＣカード処理装置１から受信したデータを一時保管するようになっている。また、上記ＲＡＭ２４上には、種々の動作状態などを管理するための管理テーブルが適宜構成されるようになっている。たとえば、後述する論理チャネルは、ＲＡＭ２４上に構成されるチャネル管理テーブル２４ａによりカレントファイルなどが管理されるようになっている。
【００１８】
上記不揮発性メモリ２５は、例えば、ＥＥＰＲＯＭ（Electrically  Erasable  Programmable  Read-Only  Memory）あるいはフラッシュＲＯＭなどのデータの書き込み及び書換えが可能な不揮発性のメモリにより構成される。上記不揮発性メモリ２５には、当該ＩＣカード２の運用用途に応じて制御プログラムや種々のデータが書込まれる。また、上記不揮発性メモリ２５上には、電源供給がなくなった後もデータを保持しておくことが必要な管理テーブルも設けられる。たとえば、上記不揮発性メモリ２５には、プログラムファイルあるいはデータファイルなどが定義され、それらのファイルに制御プログラムや種々のデータが書き込まれる。上記不揮発性メモリ２５に格納されるファイルは、ファイル定義情報によって定義され、ファイル定義情報により定義された記憶領域にファイル本体としてのデータが格納されるようになっている。
【００１９】
次に、上記のようなＩＣカード２で使用可能な論理チャネルについて説明する。  
上記ＩＣカード２は、複数の論理チャネルごとにファイルへのアクセス管理などを行う機能を有している。たとえば、論理チャネル１と論理チャネル２では、それぞれカレントファイルを設定することができる。このような場合、論理チャネル１で与えられたコマンドは、論理チャネル１のカレントファイルをアクセス対象として処理を行い、論理チャネル２で与えられたコマンドは、論理チャネル２のカレントファイルをアクセス対象として処理を行う。言い換えると、ＩＣカード処理装置１は、ＩＣカード２に対して複数の論理チャネルでファイルへのアクセスを要求する各種コマンドを与えることにより、各論理チャネルごとに異なる系列の処理群を当該ＩＣカード２に実行させることができる。上記のような各論理チャネルのカレントファイルは、たとえば、ワーキングメモリとしてのＲＡＭ２４上に構成されるチャネル管理テーブル２４ａにより管理されるものである。
【００２０】
また、論理チャネルは、各コマンドで指定されるものである。たとえば、図３は、ＩＳＯ／ＩＥＣ７８１６−４で規定されるコマンドの構成例を示す図である。図３に示すように、ＩＳＯ／ＩＥＣ７８１６−４で規定されるコマンドは、「ＣＬＡ」、「ＩＮＳ」、「Ｐ１」、「Ｐ２」、「Ｌｅ」、「ＤＡＴＡ」などにより構成される。このような構成のコマンドにおいて使用する論理チャネルは、「ＣＬＡ」（ＣＬＡバイト、ＣＬＡデータ）で指定される。図３に示す構成例では、各コマンドのＣＬＡバイトは８ビットで構成されている。このような各コマンドのＣＬＡバイトにおけて、第１ビット（ｂ１）及び第２ビット（ｂ２）が当該コマンドの論理チャネル（論理チャネル番号）を指定するものである。このような構成では、各コマンドにおいて「００」（論理チャネル「＃０」）、「０１」（論理チャネル「＃１」）、「１０」（論理チャネル「＃２」）、「１１」（論理チャネル「＃３」）の最大４個の論理チャネルが設定可能である。
【００２１】
なお、ＩＳＯ／ＩＥＣ７８１６−４では、MANAGE CHANNELコマンドにより所望の論理チャネルを使用可能な状態とするように規定されている。通常、所定の１つの論理チャネル（たとえば、論理チャネル「＃０」）は、常時使用可能とされている。従って、論理チャネルを意識せずに処理を行う場合、所定の１つの論理チャネルで種々の処理が実行される。これに対して、複数の論理チャネルを使用する場合（たとえば、論理チャネル「＃１」、「＃２」、「＃３」を使用する場合）、予めMANAGE CHANNELコマンドにより使用する論理チャネルを使用可能な状態にする必要がある。また、各論理チャネルは、チャネルを閉塞することを要求する所定のコマンドに応じて閉塞される処理が行われるようになっている。
【００２２】
次に、上記不揮発性メモリ２５に記憶される各ファイルのファイル定義情報に含まれるファイル制御情報について説明する。  
図４は、ファイル定義情報に含まれるファイル制御情報の構成例を示す図である。  
図４に示すように、ファイル制御情報は、「ファイルＩＤ」、「ファイルサイズ」、「セキュリティ属性」、「ファイルタイプ」、「アクセスチャネル番号」などの情報により構成される。「ファイルＩＤ」は、当該ファイルを識別するための識別情報である。「ファイルサイズ」は、当該ファイルのデータサイズを示す情報である。「セキュリティ属性」は、当該ファイルに対するセキュリティ設定を示す情報である。「アクセスチャネル番号」は、当該ファイルへのアクセスに優先権が与えられている論理チャネルを示す情報である。「アクセスチャネル番号」は、必ずしも設定されるものではなく、未設定の状態である場合もありうる。たとえば、１つの論理チャネルだけで処理が実行されている場合、「アクセスチャネル番号」は、設定する必要がないものと考えられる。
【００２３】
上記アクセスチャネル番号により特定される優先権（アクセス優先権）とは、当該ファイルのデータに変化が生じる可能性があるコマンドの実行権限であるものとする。ファイルのデータに変化が生じる可能性があるコマンドとしては、たとえば、データの書換えを要求するコマンド、データの消去を要求するコマンド、あるいは、ファイルの削除を要求するコマンドなどが想定される。すなわち、上記アクセスチャネル番号が設定されている場合、優先権が与えられている論理チャネルでのみ、当該ファイルのデータ本体に変化が生じる可能性があるコマンドが実行可能となるようになっている。
【００２４】
これに対して、ファイルのデータ本体に変化が生じないコマンドについては、上記優先権の有無に関係なく各論理チャネルでの実行が許容される。ファイルのデータ本体に変化が生じないコマンドとしては、たとえば、データの読み出しを要求するコマンド、あるいは、ファイルの選択を要求するコマンドなどが想定される。すなわち、上記アクセスチャネル番号が設定されている場合であっても、ファイルのデータ本体に変化が生じないコマンドは、優先権が与えられていない論理チャネルにも実行が許容される。
【００２５】
次に、上記ＩＣカード２における第１の動作例について説明する。  
図５は、上記ＩＣカード処理装置１から受信した種々のコマンドに対する第１の動作例を説明するためのフローチャートである。  
ここでは、複数の論理チャネルがオープンされている状態であるものとする。なお、複数の論理チャネルがオープンされていない場合（所定の１つの論理チャネルのみでの処理状態である場合）、複数の論理チャネルでの処理に対して整合性を保つための制御が不要であるため、後述するアクセス優先権に応じたアクセス制限が不要であるものとする。
【００２６】
まず、上記ＩＣカード処理装置１からコマンドを受信した場合（ステップＳ１１、ＹＥＳ）、上記ＩＣカード２の制御部２１は、受信コマンドの処理内容を判別する。当該受信コマンドがカレントファイルの選択を要求するコマンド（指定ファイルを当該論理チャネルのカレントファイルに設定することを要求するコマンド）である場合（ステップＳ１２、ＹＥＳ）、上記制御部２１は、指定されたファイルを当該コマンドの論理チャネルにおけるカレントファイルとして設定する（ステップＳ１３）。
【００２７】
上記受信コマンドで指定されたファイルを当該論理チャネルのカレントファイルに設定すると、上記制御部２１は、当該受信コマンドの論理チャネルにおけるカレントファイルとして選択したファイルへのアクセスに優先権を有する論理チャネルが設定済みであるか否かを判断する（ステップＳ１４）。これは、当該ファイルのファイル制御情報においてアクセスチャネル番号が設定されているか否かを判断される。
【００２８】
この判断により選択したファイルへのアクセスに優先権を有する論理チャネルが設定されていないと判断した場合（ステップＳ１４、ＮＯ）、上記制御部２１は、当該ファイルへのアクセス優先権を当該コマンドの論理チャネルに設定する（ステップＳ１５）。当該ファイルへのアクセス優先権は、当該ファイルのファイル制御情報に当該論理チャネルを示す情報をアクセスチャネル番号として付加することにより設定される。  
また、上記判断により選択したファイルへのアクセスに優先権を有する論理チャネルが設定済みであると判断した場合（ステップＳ１４、ＹＥＳ）、あるいは、上記ステップＳ１５のアクセス優先権の設定処理が完了した場合、上記制御部２１は、上記受信コマンドに対するレスポンスとしてカレントファイルの設定が正常終了した旨をＩＣカード処理装置１へ送信する（ステップＳ１６）。
【００２９】
また、上記受信コマンドがファイルへのアクセスを要求するコマンド（たとえば、データ読み出し、データ書込み、データ消去、ファイル削除などを要求するコマンド）である場合（ステップＳ２１、ＹＥＳ）、上記制御部２１は、当該受信コマンドの論理チャネルと当該論理チャネルのカレントファイル（アクセス対象のファイル）に設定されているアクセスチャネル番号とが一致するか否かを判断する（ステップＳ２２）。これは、当該論理チャネルに現在のカレントファイルに対するアクセス優先権が与えられているか否かを判断するものである。
【００３０】
受信コマンドの論理チャネルと当該論理チャネルのカレントファイルのアクセスチャネル番号とが一致すると判断した場合、つまり、当該論理チャネルがカレントファイルにアクセス優先権を有すると判断した場合（ステップＳ２２、ＹＥＳ）、上記制御部２１は、当該受信コマンドに応じた処理を実行し（ステップＳ２３）、そのコマンド処理の結果を受信コマンドに対するレスポンスとしてＩＣカード処理装置１へ送信する（ステップＳ２４）。
【００３１】
また、受信コマンドの論理チャネルと当該論理チャネルのカレントファイルのアクセスチャネル番号とが一致しないと判断した場合、つまり、当該論理チャネルがカレントファイルにアクセス優先権を有していないと判断した場合（ステップＳ２２、ＮＯ）、上記制御部２１は、当該受信コマンドの処理内容が実行を許容されるものであるか否かを判断する（ステップＳ２５）。アクセス優先権によるアクセス制限は、たとえば、アクセス優先権が設定されていない論理チャネルでは、ファイルのデータ本体が変化する可能性がある処理を要求するコマンドは実行できないように制限される。たとえば、データの書換え、データの消去、ファイルの削除などのコマンドは、当該アクセス優先権が設定されていない論理チャネルでは、実行できないように制限される。これに対して、アクセス優先権が設定されていない論理チャネルであっても、ファイルのデータ本体が変化しないような処理を要求するコマンドは実行できる。たとえば、データの読出しなどのコマンドは、アクセス優先権が設定されていない論理チャネルであっても実行が許容される。
【００３２】
上記判断により受信コマンドが実行可能なものであると判断された場合（ステップＳ２５、ＹＥＳ）、上記制御部２１は、当該受信コマンドを実行し（ステップＳ２３）、その処理結果をレスポンスとしてＩＣカード処理装置１へ送信する（ステップＳ２４）。また、上記判断により受信コマンドが実行不可となるものであると判断された場合（ステップＳ２５、ＮＯ）、上記制御部２１は、当該受信コマンドの実行することなく、当該受信コマンドに対するレスポンスとして当該ファイルへのアクセス優先権がないため実行不可となった旨をＩＣカード処理装置１へ送信する（ステップＳ２６）。
【００３３】
また、上記受信コマンドが論理チャネルの閉塞を要求するコマンドである場合（ステップＳ３１、ＹＥＳ）、上記制御部２１は、当該受信コマンドで指定された論理チャネルを閉塞させる（ステップＳ３２）。上記論理チャネルを閉塞させると、上記制御部２１は、当該論理チャネルにアクセス優先権を設定している各ファイルのファイル制御情報におけるアクセスチャネル番号をクリアする（ステップＳ３３）。これらの処理が完了すると、上記制御部２１は、上記受信コマンドに対するレスポンスとして論理チャネルの閉塞が正常終了した旨をＩＣカード処理装置１へ送信する（ステップＳ３４）。
【００３４】
なお、ファイルの選択を要求するコマンド、ファイルへのアクセスを要求するコマンド、および、論理チャネルの閉塞を要求するコマンド以外のコマンドについては、論理チャネルごとのファイルへのアクセス制御を考慮すべきものでないと考えられるため、各コマンドの処理内容に応じた処理が実行される（ステップＳ３５）。
【００３５】
次に、上述した第１の動作例を適用したＩＣカード２における具体例な動作例について説明する。  
図６は、ＩＣカード２に与えられるコマンド群Ｃ１〜Ｃ１１の例を示す図である。また、図７は、上記第１の動作例に従って動作するＩＣカード２が図６に示す一連のコマンドに対して実行する動作を説明するための図である。ここで、図６に示すコマンドは、少なくとも論理チャネル１と論理チャネル２とがオープンの状態となっているＩＣカード２に与えられる一連のコマンドであるものとする。
【００３６】
まず、論理チャネル１を指定したファイルＡの選択要求コマンドＣ１を受信した場合、上記ＩＣカード２の制御部２１は、上記ステップＳ１２〜Ｓ１６を説明したような処理を行う。すなわち、上記制御部２１は、ファイルＡを論理チャネル１のカレントファイルに設定し、ファイルＡにアクセスチャネル番号が設定されているか否かを確認する。この時点では、ファイルＡにアクセスチャネル番号が設定されていないものとすると、上記制御部２１は、ファイルＡのアクセスチャネル番号として論理チャネル１を示す「１」を設定する。
【００３７】
この状態において論理チャネル２を指定したファイルＡの選択要求コマンドＣ２を受信した場合、上記制御部２１は、上記ステップＳ１２〜Ｓ１６の処理を行う。この場合、ファイルＡにはアクセスチャネル番号として「１」が設定済みであるため、上記制御部２１は、ファイルＡを論理チャネル２のカレントファイルに設定するだけで、ファイルＡのアクセスチャネル番号を書換えないようにする。
【００３８】
さらに、論理チャネル１を指定した読み出し要求コマンドＣ３を受信すると、上記制御部２１は、上記ステップＳ２１〜Ｓ２６の処理として、ファイルＡの読み出し処理を行う。これは、論理チャネル１のカレントファイル（ファイルＡ）には論理チャネルにアクセス優先権があるためである。従って、上記制御部２１は、ファイルＡのデータを読み出して、読み出したデータを当該コマンドＣ３のレスポンスデータとして送信する。
【００３９】
また、論理チャネル２を指定した読み出し要求コマンドＣ４を受信した場合も、上記制御部２１は、ファイルＡの読み出し処理を行う。これは、論理チャネル２のカレントファイル（ファイルＡ）には論理チャネル１にアクセス優先権があるが、読み出しコマンドはアクセス優先権がなくとも実行可能なコマンドであるためである。従って、上記制御部２１は、当該コマンドＣ４の実行を許容し、ファイルＡのデータを読み出して、読み出したデータを当該コマンドＣ４のレスポンスデータとして送信する処理を行う。
【００４０】
次に、論理チャネル２を指定したデータの書込み要求コマンドＣ５を受信した場合、上記制御部２１は、上記ステップ２１〜Ｓ２６の処理として、当該コマンドＣ５の実行を不可とする。これは、論理チャネル２のカレントファイル（ファイルＡ）には論理チャネル「１」にアクセス優先権があり、かつ、データの書込み要求コマンドはアクセス優先権がなければ実行不可なコマンドであるためである。従って、上記制御部２１は、当該コマンドＣ５に応じた処理を実行不可として、当該コマンドＣ５が実行不可であった旨を当該コマンドＣ５のレスポンスとして送信にする。
【００４１】
さらに、論理チャネル１を指定したデータの書込み要求コマンドＣ６を受信した場合、上記制御部２１は、当該コマンドＣ６を実行する。これは、論理チャネル１のカレントファイル（ファイルＡ）には論理チャネル「１」にアクセス優先権があるためである。すなわち、上記制御部２１は、当該コマンドＣ６で指定されている処理内容に従って、ファイルＡのデータを書換え、その処理結果を当該コマンドＣ６のレスポンスとして送信する処理を行う。
【００４２】
次に、論理チャネル１の閉塞を要求するコマンドＣ７を受信した場合、上記制御部２１は、上記ステップ３１〜Ｓ３４の処理として、論理チャネル１を閉塞させる処理を行う。この場合、上記制御部２１は、論理チャネル１を閉塞させ、論理チャネル１におけるカレントファイルの設定をクリアするとともに、論理チャネル１にアクセス優先権を与えていたファイルＡのアクセスチャネル番号をクリアする。これにより、上記ファイルＡに対する論理チャネル１のアクセス優先権がクリアされ、ファイルＡにはどの論理チャネルにもアクセス優先権が付与されていない状態となる。
【００４３】
この状態において、論理チャネル２を指定したデータの書込み要求コマンドＣ８を受信した場合、上記制御部２１は、上記ステップ２１〜Ｓ２６の処理として、当該コマンドＣ８の実行を不可とする。これは、論理チャネル２のカレントファイル（ファイルＡ）にはアクセス優先権を有する論理チャネルが設定されていないためである。第１の動作例では、このようなアクセスチャネル番号が設定されていない場合であっても、データの書込みなどの処理を不可としている。従って、上記制御部２１は、当該コマンドＣ８に応じた処理を実行不可として、当該コマンドＣ８が実行不可であった旨を当該コマンドＣ８のレスポンスとして送信にする。
【００４４】
次に、論理チャネル２を指定したファイルＡの選択要求コマンドＣ９を受信すると、上記制御部２１は、上記ステップＳ１２〜Ｓ１６の処理として、ファイルＡを論理チャネル２のカレントファイルに設定し、ファイルＡのアクセスチャネル番号を論理チャネル「２」に設定する処理を行う。これは、ファイルＡの選択要求を受けた際に、当該ファイルＡにアクセスチャネル番号が設定されていないためである。すなわち、ファイルＡに対するアクセル優先権を有していた論理チャネル１が閉塞された場合には当該ファイルＡのアクセスチャネル番号もクリアされる。このため、論理チャネル１の閉塞後に論理チャネル２で受信したファイルＡの選択要求に応じて、ファイルＡのアクセス優先権が論理チャネル２に付与されるようになっている。言い換えると、第１の動作例では、ファイルＡにアクセス優先権が与えられていない論理チャネル２は、アクセス優先権が与えられている論理チャネル１が閉塞した後に、ファイルＡの選択要求コマンドを実行することにより、ファイルＡに対するアクセス優先権を得ることができるようになっている。
【００４５】
従って、上記コマンドＣ９の実行後に論理チャネル２を指定したファイルＡの書き込み要求コマンドＣ１０を受信した場合、上記制御部２１は、当該コマンドＣ１０で指定されている処理内容に従って、ファイルＡのデータを書換え、その処理結果を当該コマンドＣ１０のレスポンスとして送信する処理を行う。これは、論理チャネル２のカレントファイル（ファイルＡ）のアクセス優先権が論理チャネル「２」にあるために、当該データ書込み要求コマンドＣ１０が実行可能であるからである。
【００４６】
次に、論理チャネル２の閉塞を要求するコマンドＣ１１を受信した場合、上記制御部２１は、上記ステップ３１〜Ｓ３４の処理として、論理チャネル２を閉塞させ、論理チャネル２におけるカレントファイルの設定をクリアするとともに、論理チャネル２にアクセス優先権を与えていたファイルＡのアクセスチャネル番号をクリアする。これにより、上記ファイルＡには、どの論理チャネルにもアクセス優先権が付与されていない状態となる。
【００４７】
上記のように、第１の動作例では、ファイルの選択要求コマンドを受けた場合に、選択されるファイルにアクセス優先権が設定されている論理チャネルがなければ、当該コマンドの論理チャネルに対して選択するファイルに対するアクセス優先権を与えるようになっている。さらに、論理チャネルに与えられたアクセス優先権は、当該論理チャネルが閉塞するまで保持されるようになっている。これにより、最初にカレントファイルとして選択した論理チャネルにおいては、当該ファイルをアクセス対象とする各種のコマンドを許容するが、それ以外の論理チャネルにおいては、当該ファイルに対するアクセスを制限することが可能となる。この結果として、複数の論理チャネルで特定のファイルをアクセス対象とする処理要求を受けた場合であっても、各処理の整合性を保つことが可能となる。
【００４８】
次に、上記ＩＣカード２における第２の動作例について説明する。  
本第２の動作例は、上記第１の動作例に加えて、他の論理チャネルにアクセス優先権が与えられている場合に、実行可能なコマンドの制限されていることをＩＣカード処理装置（コマンドの送信元）１に通知する処理を行うものである。なお、実行可能なコマンドが制限されていることは、任意のコマンドに対するレスポンスとして通知することが可能である。ここでは、ファイル選択要求コマンドで選択するファイルに対して別の論理チャネルにアクセス優先権が与えられていた場合に、当該コマンドの論理チャネルでは、選択したファイルに対するコマンドが制限される旨を通知するものとする。
【００４９】
図８は、上記第２の動作例を説明するためのフローチャートである。  
図８に示す第２の動作例は、図５に示す第１の動作例にステップＳ４１とＳ４２とが加えられたものとなっている。従って、図８に示すステップＳ４１およびＳ４２以外の各ステップは、図５に示す各ステップと同様な処理であるため、ここでは、詳細な説明を省略するものとする。
【００５０】
すなわち、上記ステップＳ１４において、受信したファイル選択要求コマンドに応じてカレントファイルとして選択したファイルにアクセスチャネル番号が既に設定されている場合（ステップＳ１４、ＹＥＳ）、上記制御部２１は、当該コマンドの論理チャネルと選択したファイルのアクセスチャネル番号とが一致するか否かを判定する（ステップＳ４１）。この判定により当該ファイル選択要求コマンドの論理チャネルと選択したファイルのアクセスチャネル番号とが一致すると判定された場合（ステップＳ４１、ＹＥＳ）、上記制御部２１は、上記ステップＳ１６へ進み、通常の正常を示すレスポンスをＩＣカード処理装置１へ送信する。
【００５１】
これに対して、上記判定により当該ファイル選択要求コマンドの論理チャネルと選択したファイルのアクセスチャネル番号とが一致しないと判定された場合（ステップＳ４１、ＮＯ）、上記制御部２１は、当該コマンドに対するレスポンスとして、当該論理チャネルでは選択したファイルに対して実行可能なコマンドが制限される旨を当該コマンドに対する処理結果とともにＩＣカード処理装置１へ送信する（ステップＳ４２）。この場合、上記制御部２１は、実行可能なコマンドが制限される旨の通知だけでなく、具体的に実行不可となるコマンド（あるいは実行が許容されるコマンド）を示す情報をレスポンスとして通知するようにしても良い。
【００５２】
次に、上述した第２の動作例を適用したＩＣカード２における具体例な動作例について説明する。  
図９は、上記第２の動作例に従って動作するＩＣカード２が図６に示す一連のコマンドに対して実行する動作を説明するための図である。なお、図６に示すコマンドＣ２以外の各コマンドに対する動作は、上述した図８に示す第１の動作例の動作を同様であるため、詳細な説明を省略するものとする。
【００５３】
すなわち、論理チャネル１を指定したファイルＡの選択要求コマンドＣ１に応じてファイルＡのアクセスチャネル番号が論理チャネル１を示す「１」に設定された状態であるものとする。この状態において論理チャネル１を指定したファイルＡの選択要求コマンドＣ２を受信した場合、上記制御部２１は、上記ステップＳ１２〜Ｓ１６、Ｓ４１、Ｓ４２の処理として、ファイルＡを論理チャネル２のカレントファイルに設定し、ファイルＡにアクセスチャネル番号として「１」が設定済みであることを確認する。この場合、上記制御部２１は、ファイルＡにはアクセスチャネル番号として「１」が設定済みであるため、論理チャネル２では実行可能なコマンドが制限される旨を処理の実行結果とともに上記コマンドＣ２のレスポンスとして送信する。
【００５４】
上記のような第２の動作例によれば、ファイル選択要求によりカレントファイルを設定した場合、当該カレントファイルへのアクセス優先権が当該コマンドの論理チャネルとは別の論理チャネルに与えられていれば、当該コマンドの論理チャネルでは当該ファイルに対して実行可能なコマンドが制限される旨を通知することが可能となる。
【００５５】
次に、上記ＩＣカード２における第３の動作例について説明する。  
本第３の動作例は、上記第１の動作例に加えて、特定のファイルにアクセス優先権が与えられている論理チャネルが閉塞される場合に、当該ファイルのアクセス優先権を別の論理チャネルに移す処理を行うものである。ここでは、閉塞される論理チャネルにアクセス優先権が与えられているファイルを選択している別の論理チャネルに当該ファイルのアクセス優先権を与えることを想定して説明するものとする。
【００５６】
図１０は、上記第３の動作例を説明するためのフローチャートである。  
図１０に示す第３の動作例は、図５に示す第１の動作例に、ステップＳ５１とＳ５２とが加えられたものとなっている。従って、図１０に示すステップＳ５１およびＳ５２以外の各ステップは、図５に示す各ステップと同様な処理であるため、ここでは、詳細な説明を省略するものとする。
【００５７】
すなわち、上記ステップＳ３２において、ある論理チャネルが閉塞されるものとする。この場合、上記制御部２１は、閉塞する論理チャネルに与えられているアクセス優先権を別の論理チャネルに移すことが可能であるか否かを判断する（ステップＳ５１）。すなわち、上記制御部２１は、閉塞する論理チャネルにアクセス優先権が与えられているファイルを検出する。閉塞する論理チャネルにアクセス優先権が与えられているファイルが検出されると、上記制御部２１は、検出されたファイルが別の論理チャネルで選択されているか否かを判断する。この判断により閉塞する論理チャネルにアクセス優先権が与えられているファイルを選択している論理チャネルが存在すると判断した場合、上記制御部２１は、アクセス優先権の移動が可能であると判断する。
【００５８】
上記判断により閉塞する論理チャネルにアクセス優先権が与えられているファイルが別の論理チャネルで選択されていると判断した場合、上記制御部２１は、当該ファイルのファイル制御情報におけるアクセスチャネル番号を当該ファイルを選択していると判断された別の論理チャネルに書き換える（ステップＳ５２）。これにより、閉塞する論理チャネルにアクセス優先権を設定していたファイルのアクセス優先権は閉塞する論理チャネルから当該ファイルを選択している別の論理チャネルに移動される。
【００５９】
また、上記判断により閉塞する論理チャネルに与えられているアクセス優先権が移動できないと判断した場合（たとえば、閉塞する論理シャネルにアクセス優先権が与えられているファイルが別の論理チャネルで選択されていない場合）、上記制御部２１は、当該ファイルのファイル制御情報におけるアクセスチャネル番号（閉塞する論理チャネルを示す情報）をクリアする（ステップＳ３３）。
【００６０】
次に、上述した第３の動作例を適用したＩＣカード２における具体例な動作例について説明する。  
図１１は、上記第３の動作例に従って動作するＩＣカード２が図６に示す一連のコマンドに対して実行する動作を説明するための図である。なお、図６に示すコマンドＣ７以外の各コマンドに対する動作は、上述した図８に示す第１の動作例の動作を同様であるため、詳細な説明を省略するものとする。
【００６１】
すなわち、ファイルＡのアクセスチャネル番号が論理チャネル１を示す「１」に設定され、かつ、論理チャネル２のカレントファイルがファイルＡに設定されている状態において、論理チャネル１の閉塞を要求するコマンドＣ７を受信した場合、上記制御部２１は、上記ステップＳ３１〜Ｓ３４、Ｓ５１、Ｓ５２の処理として、論理チャネル１を閉塞し、ファイルＡのアクセスチャネル番号を「１」から「２」に書き換える。
【００６２】
上記のような第３の動作例によれば、論理チャネルが閉塞される場合に、当該論理チャネルに与えられているファイルのアクセス優先権を当該ファイルを選択している別の論理チャネルに移行させるようにしたものである。アクセス優先権が与えられている論理チャネルが閉塞されれば、当該ファイルを選択するコマンドを再度実行しなくとも、当該ファイルを選択している別の論理チャネルは、当該ファイルのアクセス優先権を自動的に得ることが可能となる。
【００６３】
次に、上記ＩＣカード２における第４の動作例について説明する。  
本第４の動作例は、上記第１の動作例に加えて、アクセス優先権が取得可能なファイルに関する情報をＩＣカード処理装置（コマンドの送信元）１に通知する処理を行うものである。なお、アクセス優先権が取得可能なファイルに関する情報は、任意のコマンドに対するレスポンスとして通知することが可能である。ここでは、アクセス優先権が設定されていないためにコマンド（例えば、データ書換えコマンド）が実行できなかった場合に、当該コマンドのレスポンスとして、当該コマンドの論理チャネルで当該ファイルのアクセス優先権を取得することが可能である旨を通知するものとする。
【００６４】
図１２は、上記第４の動作例を説明するためのフローチャートである。  
図１２に示す第４の動作例は、図５に示す第１の動作例に、ステップＳ６１とＳ６２とが加えられたものとなっている。従って、図１２に示すステップＳ６１およびＳ６２以外の各ステップは、図５に示す各ステップと同様な処理であるため、ここでは、詳細な説明を省略するものとする。
【００６５】
すなわち、上記ステップＳ２５において、受信コマンドの当該論理チャネルにアクセス優先権が設定されていないために当該受信コマンドの実行不可であると判断された場合、上記制御部２１は、当該受信コマンドが処理対象としているファイルに対するアクセス優先権が当該受信コマンドの論理チャネルで取得可能な状態であるか否かを判断する（ステップＳ６１）。これは、当該ファイルのファイル制御情報においてアクセスチャネル番号が設定されているか否かにより判断することが可能である。
【００６６】
上記判断により当該受信コマンドの論理チャネルで上記アクセス優先権が取得可能であると判断した場合（ステップＳ６１、ＹＥＳ）、上記制御部２１は、当該受信コマンドが実行不可である旨とともに、当該ファイルのアクセス優先権を当該論理チャネルで取得可能な状態である旨の情報を当該受信コマンドのレスポンスとしてＩＣカード処理装置１へ送信する（ステップＳ６２）。なお、上記アクセス優先権が取得可能な状態でないと判断した場合（ステップＳ６１、ＮＯ）、上記制御部２１は、当該受信コマンドが実行不可である旨とともに、当該ファイルのアクセス優先権が設定されている論理チャネルを示す情報を送信するようにしても良い。
【００６７】
次に、上述した第４の動作例を適用したＩＣカード２における具体例な動作例について説明する。  
図１３は、上記第４の動作例に従って動作するＩＣカード２が図６に示す一連のコマンドに対して実行する動作を説明するための図である。なお、図６に示すコマンドＣ８以外の各コマンドに対する動作は、上述した図８に示す第１の動作例の動作を同様であるため、詳細な説明を省略するものとする。
【００６８】
すなわち、上記コマンドＣ７に応じて論理チャネル１を閉塞する際に、論理チャネル１にアクセス優先権が与えられていたファイルＡのアクセスチャネル番号がクリアされている状態であるものとする。この状態において、論理チャネル２を指定したデータの書込み要求コマンドＣ８を受信した場合、上記制御部２１は、上記ステップ２１〜Ｓ２６の処理として、当該コマンドＣ８の実行を不可とする。これは、論理チャネル２のカレントファイル（ファイルＡ）のアクセスチャネル番号が「２」（論理チャネル２）に設定されていないためである。
【００６９】
さらに、第４の動作例では、上記コマンドＣ８の実行を不可とした場合、上記制御部２１は、上記コマンドＣ８の処理対象とするファイルＡのアクセスチャネル番号が未設定であるか否かを判断する。ここでは、上記コマンドＣ８を受信した時点においてファイルＡのアクセスチャネル番号がクリアされている状態である。このため、上記制御部２１は、上記コマンドＣ８に対するレスポンスとして、上記コマンドＣ８がアクセス優先権がないために実行不可となった旨と、当該ファイルＡのアクセス優先権が当該論理チャネルで取得可能である旨とをＩＣカード処理装置１へ送信する。
【００７０】
上記のような第４の動作例によれば、アクセス優先権がないために実行不可となったコマンドについては、当該コマンドが処理対象とするファイルのアクセスチャネル番号が未設定であれば、上記コマンドが実行不可である旨と当該ファイルに対するアクセス優先権が取得可能な状態である旨とをレスポンスとして送信するようにしたものである。これにより、第３の動作例のようにアクセス優先権を自動的に移動させたくない場合であっても、アクセス優先権が取得可能な状態であるか否かを適宜ＩＣカード処理装置に通知することができ、効率的な処理が可能となる。
【００７１】
次に、上記ＩＣカード２における第５の動作例について説明する。  
本第５の動作例は、上記第１の動作例に加えて、ファイルへのアクセス優先権がない論理チャネルでの処理において、別の論理チャネル（アクセス優先権を有する論理チャネル）でのコマンドによる当該ファイルの変化を示す情報を、ＩＣカード処理装置（コマンドの送信元）１に通知する処理を行うものである。なお、ファイルの状態変化を示す情報は、当該ファイルのアクセス優先権がない論理チャネルでの任意のコマンドに対するレスポンスとして通知することが可能である。ここでは、アクセス優先権が設定されていないためにコマンド（例えば、データ書換えコマンド）が実行できなかった場合、当該コマンドがアクセス対象とするファイルが別の論理チャネルにおけるコマンドでデータが変化されていれば、その旨を当該コマンドのレスポンスとして通知するものとする。
【００７２】
図１４は、上記第５の動作例を説明するためのフローチャートである。  
図１４に示す第５の動作例は、図５に示す第１の動作例に、ステップＳ７１とＳ７２とが加えられたものとなっている。従って、図１４に示すステップＳ７１およびＳ７２以外の各ステップは、図５に示す各ステップと同様な処理であるため、ここでは、詳細な説明を省略するものとする。
【００７３】
すなわち、上記ステップＳ２５において、受信コマンドの当該論理チャネルにファイルへのアクセス優先権が設定されていないために当該受信コマンドが実行不可であると判断された場合、上記制御部２１は、当該受信コマンドが処理対象としているファイルに対して別の論理チャネル（アクセス優先権を有する論理チャネル）でデータの変化を伴う処理が実行されているか否かを判断する（ステップＳ７１）。これは、当該コマンドがアクセス対象するファイルが別の論理チャネルでの処理により変化している可能性があるか否かをを判断するものである。つまり、上記制御部２１は、当該コマンドのアクセス対象ファイルに対して、アクセス優先権を有する論理チャネルでのコマンドによりデータが変化する可能性がある処理が実行されているか否かを判断する。
【００７４】
上記判断により当該受信コマンドがアクセス対象とするファイルに対して別の論理チャネルでデータが変化する可能性がある処理が実行されていると判断した場合（ステップＳ７１、ＹＥＳ）、上記制御部２１は、当該受信コマンドのレスポンスとして、実行不可である旨の情報と、当該ファイルが別の論理チャネルでデータが変更される可能性のある処理が実施されている旨の情報とをＩＣカード処理装置１へ送信する（ステップＳ７２）。なお、上記受信コマンドがアクセス対象とするファイルに対して別の論理チャネルでデータが変化する可能性がある処理が実行されていないと判断した場合（ステップＳ７１、ＮＯ）、上記制御部２１は、当該受信コマンドのレスポンスとして、実行不可である旨の情報と、当該ファイルに対してデータが変更されるような処理が実施されていない旨の情報とを送信するようにしても良い。
【００７５】
なお、上記のような処理を実現するため、アクセス優先権が設定されているファイル（あるいはアクセスチャネル番号が設定されていたファイル）については、少なくともデータが変更される可能性があるコマンドを実行した場合、その処理内容をＲＡＭ２４などの記憶部に記憶しておくようにするものとする。これは、たとえば、上記ステップＳ２３におけるコマンド処理として、実行した処理内容を示す情報をＲＡＭ２４に記憶することにより実現される。
【００７６】
次に、上述した第５の動作例を適用したＩＣカード２における具体例な動作例について説明する。  
図１５は、上記第５の動作例に従って動作するＩＣカード２が図６に示す一連のコマンドに対して実行する動作を説明するための図である。なお、図６に示すコマンドＣ８以外の各コマンドに対する動作は、上述した図８に示す第１の動作例の動作を同様であるため、詳細な説明を省略するものとする。
【００７７】
すなわち、上記コマンドＣ６に応じてファイルＡに対するアクセス優先権を有する論理チャネル１でファイルＡにデータの書換え処理が実行された状態であるものとする。この状態において、論理チャネル２を指定したデータの書込み要求コマンドＣ８を受信した場合、上記制御部２１は、上記ステップ２１〜Ｓ２５の処理として、当該コマンドＣ８の実行を不可とする。これは、論理チャネル２のカレントファイル（ファイルＡ）のアクセスチャネル番号が「２」（論理チャネル２）に設定されていないためである。
【００７８】
さらに、第５の動作例では、上記コマンドＣ８の実行を不可とした場合、上記制御部２１は、上記コマンドＣ８が処理対象とするファイルＡに対して別の論理チャネルでデータが変化する可能性があるコマンドを実行しているか否かを判断する。ここでは、上記コマンドＣ８を受信した時点において既にコマンドＣ６の処理として論理チャネル１でファイルＡに対するデータの書換え処理が実施されている。このため、上記制御部２１は、上記コマンドＣ８に対するレスポンスとして、上記コマンドＣ８がアクセス優先権がないために実行不可となった旨の情報と、当該ファイルＡに対して別の論理チャネルでデータの書換え処理が実施されている旨の情報とをＩＣカード処理装置１へ送信する。
【００７９】
上記のような第５の動作例によれば、アクセス優先権がないためにコマンドが実行不可となった場合、当該コマンドが処理対象とするファイルに対して別の論理チャネル（アクセス優先権がある論理チャネル）でデータが変化する可能性があるコマンドが実施済みであれば、上記コマンドが実行不可である旨と当該ファイルに対して別の論理チャネルでデータが変化する可能性があるコマンドが実施済みである旨とをレスポンスとして送信するようにしたものである。これにより、アクセス優先権がない論理チャネルでは実行可能なコマンドが制限されているファイルに対して、アクセス優先権がある別の論理チャネルで実行された処理内容を適宜ＩＣカード処理装置に通知することができ、その結果として効率的な処理が可能となる。
【００８０】
なお、この発明は、上述した実施の形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具現化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００８１】
【図１】ＩＣカードと、ＩＣカードとの通信機能を有するＩＣカード処理装置の構成例を概略的に示すブロック図である。
【図２】ＩＣカードのハードウエア構成例を概略的に示すブロック図である。
【図３】コマンドの構成例を示す図。
【図４】ファイル制御情報の構成例を示す図。
【図５】種々のコマンドに対する第１の動作例を説明するためのフローチャート。
【図６】ＩＣカードに与えられるコマンド群の例を示す図である。
【図７】第１の動作例に従って動作するＩＣカードが図６に示す一連のコマンドに対して実行する動作を説明するための図。
【図８】第２の動作例を説明するためのフローチャート。
【図９】第２の動作例に従って動作するＩＣカードが図６に示す一連のコマンドに対して実行する動作を説明するための図。
【図１０】第３の動作例を説明するためのフローチャート。
【図１１】第３の動作例に従って動作するＩＣカードが図６に示す一連のコマンドに対して実行する動作を説明するための図。
【図１２】第４の動作例を説明するためのフローチャート。
【図１３】第４の動作例に従って動作するＩＣカードが図６に示す一連のコマンドに対して実行する動作を説明するための図。
【図１４】第５の動作例を説明するためのフローチャート。
【図１５】第５の動作例に従って動作するＩＣカードが図６に示す一連のコマンドに対して実行する動作を説明するための図。
【符号の説明】
【００８２】
Ｃ…本体、Ｍ…モジュール、Ｃａ…ＩＣチップ、１…ＩＣカード処理装置、２…ＩＣカード、１１…端末装置、１２…ディスプレイ、１３…キーボード、１４…テンキー、１５…カードリーダライタ、２１…制御部、２２…通信インターフェース、２３…ＲＯＭ、２４…ＲＡＭ、２５…不揮発性メモリ。
【図１】
0005214291.tif 000002
【図２】
0005214291.tif 000003
【図３】
0005214291.tif 000004
【図４】
0005214291.tif 000005
【図５】
0005214291.tif 000006
【図６】
0005214291.tif 000007
【図７】
0005214291.tif 000008
【図８】
0005214291.tif 000009
【図９】
0005214291.tif 000010
【図１０】
0005214291.tif 000011
【図１１】
0005214291.tif 000012
【図１２】
0005214291.tif 000013
【図１３】
0005214291.tif 000014
【図１４】
0005214291.tif 000015
【図１５】
0005214291.tif 000016