(57)【要約】【課題】トランスポートキーを上位者から下位者に渡した後、下位者が当該キーを変更しない限り、その効力が発揮されないようにすることができ、セキュリティ性に優れたＩＣカードおよびＩＣカードにおけるファイル管理方法を提供する。【解決手段】ＩＣカードにおいて、データメモリを複数のファイルに分割し、この分割した複数のファイルを、キーの照合をアクセスの条件としてそれぞれ管理するファイル管理方法において、キーが変更されたか否かを判断し、この判断によりキーが変更されていないと判断すると、このときキーの照合を行なった場合、アクセスの条件として満たされない状態とし、キーが変更されたと判断すると、このときキーの照合を行なった場合、アクセスの条件として満たされた状態とすることを特徴としている。【選択図】      図８
2006092568.tif 000002
【特許請求の範囲】
【請求項１】
複数の記憶領域にキーデータおよびデータを記憶するための記憶手段と、
初期キーデータを前記記憶手段に記憶された前記キーデータと比較することによって初期キーデータが変更されているかどうかを判定するための判定手段と、
この判定手段により前記キーデータが変更されていないと判定されたときに前記複数の記憶領域においてデータが処理されるのを阻止するための阻止手段と、
前記判定手段により前記キーデータが変更されていると判定されたときに特定のコマンドに応じて前記複数の記憶領域のデータを処理するための処理手段とを具備し、
前記処理手段は、特定のコマンドに応じて前記複数の記憶領域のそれぞれにおいて前記キーデータのファイルを作成するためのファイル作成手段を含み、このファイル作成手段によるファイル作成は前記キーデータが変更される前に前記阻止手段によって阻止されることを特徴とするＩＣカード。
【請求項２】
少なくともメモリを有するＩＣカードにおいて、
前記メモリ内の複数のファイルへのアクセスを管理するファイル管理方法であって、
前記メモリを使用するシステムの上位概念により前記ファイルの下位にあらかじめ設定されている第１キーを前記メモリを使用するシステムの下位概念により設定されている新しいキーと照合することによって前記ファイルへのアクセスを許可し、
前記上位概念は、前記第１キーを前記第１キーの中に設定されたキー変更アクセス条件を参照して前記下位概念だけに知られている第２キーに変更し、かつ、前記第１キーが前記第２キーに変更されると前記上位概念が前記ファイルの下位におけるキーの作成を拒絶することを特徴とするＩＣカードにおけるファイル管理方法。
【請求項３】
少なくともメモリを有するＩＣカードにおいて、
前記メモリ内の上位概念ファイルおよび下位概念ファイルを含む木構造ファイルへのアクセスを管理するファイル管理方法であって、
上位概念管理プログラムによって管理される前記上位概念ファイルにアクセス条件を設定し、
前記上位概念管理プログラムから下位概念管理プログラムへ提供されるファイルにアクセス条件を設定し、
前記上位概念管理プログラムから前記下位概念管理プログラムへ移送される移送キーを前記下位概念ファイルのアクセス条件を参照して前記下位概念ファイルに設定し、
前記上位概念ファイルの前記アクセス条件が満たされたときに前記下位概念ファイルに前記移送キーを設定し、
前記下位概念ファイルのアクセス条件を参照するとともに、このアクセス条件が満たされたときに前記下位概念ファイルの下位にファイルを設定することを特徴とするＩＣカードにおけるファイル管理方法。
【請求項４】
少なくともメモリを有し、このメモリ内に上位概念ファイルおよび下位概念ファイルを有する木構造ファイルを含むＩＣカードにおいて、
アクセス条件が設定されているとともに上位概念管理プログラムによって使用される上位概念ファイルと、
アクセス条件が設定されているとともに前記上位概念管理プログラムによって提供されかつ下位概念管理プログラムによって使用される下位概念ファイルと、
前記上位概念ファイルの前記アクセス条件が満たされたときに前記上位概念ファイルの前記アクセス条件を参照するとともに、前記下位概念ファイルに前記上位概念管理プログラムから前記下位概念管理プログラムへ移送される移送キーを設定するための第１手段と、
前記下位概念ファイルの前記アクセス条件が満たされたときに前記下位概念ファイルの前記アクセス条件を参照するとともに、前記下位概念ファイルの下位にファイルを設定するための第２手段と、
を具備したことを特徴とするＩＣカード。
【請求項５】
上位概念ファイルおよび下位概念ファイルを有する木構造ファイルを作成するとともに、制御手段によって前記ファイルのそれぞれへのアクセスを管理する情報処理のための制御プログラムを記憶するための記憶媒体であって、
前記制御プログラムは、
アクセス条件が上位概念管理プログラムによって設定されている前記上位概念ファイルを作成し、
前記下位概念ファイルが前記上位概念管理プログラムによって提供され、かつ、下位概念管理プログラムによって使用されるようにアクセス条件が設定されている前記下位概念ファイルを作成し、
前記上位概念ファイルの前記アクセス条件が満たされたときに前記上位概念ファイルの前記アクセス条件を参照するとともに、前記下位概念ファイルに前記上位概念管理プログラムから前記下位概念管理プログラムへ移送される移送キーを設定し、
前記下位概念ファイルの前記アクセス条件が満たされたときに前記下位概念ファイルの前記アクセス条件を参照するとともに、前記下位概念ファイルの下位にファイルを設定することを含むことを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、たとえば、不揮発性メモリ、および、これらを制御するＣＰＵなどの制御素子を有するＩＣチップを内蔵したＩＣカード、および、このＩＣカードにおいてメモリ内に分割設定される複数のファイルを管理するＩＣカードにおけるファイル管理方法に関する。
【背景技術】
【０００２】
最近、携帯可能なデータ記憶媒体として、不揮発性のデータメモリ、および、これらを制御するＣＰＵ（セントラル・プロセッシング・ユニット）などの制御素子を有するＩＣチップを内蔵したＩＣカードが注目されている。
【０００３】
この種のＩＣカードは、内蔵するデータメモリを複数のファイルに分割し、かつ、個々のファイルには、利用アプリケーションが運用時に必要なデータなどが格納されるようになっており、外部装置からアプリケーション識別名などを入力することにより、選択的に対応ファイルのみが使用可能な状態を実現するようになっている。このため、複数のアプリケーションデータをファイル分けし、１枚のＩＣカードに格納することにより、多目的利用が可能なようになっている。  
これらのアプリケーションファイルには、取引データなどのデータ格納のための複数のデータファイルと、キーデータ格納のためのキーファイルが所属できるようになっている。
【０００４】
また、最近のＩＣカードでは、各ファイルごとにアクセス条件と称する情報が付加されるようになっており、この情報により指示されているカード内のキーが照合されていることを条件に、コマンドアクセスの可否判定を行なうようになっている。
【０００５】
ところで、このようなＩＣカードが製造元からカード利用者にわたる過程において、カードの発行処理／カード内へのシステム基本情報格納など、種々の工程が想定される。このとき、それぞれ工程に関与している当事者も異なる場合が想定される。
【０００６】
たとえば、前者がカード発行者（上位者）であり、後者がアプリケーション提供者（下位者）である。カード発行者がアプリケーション提供者にカードアクセスの権限を移行する場合、一般的には「トランスポートキー」と称する仮キーをＩＣカードに設定し、アプリケーション提供者がこれを照合することにより、以降，アプリケーション提供者がＩＣカードに対してのアクセスを行なえるようになる。
【０００７】
このとき、トランスポートキーはカード発行者も既知としているので、アプリケーション提供者が自身のみにしか当該キーを知らないようにするために、一般的には、このトランスポートキーを照合することにより、これを書き換えることを行なう。
【０００８】
なお、カード所有者により入力されたＩＰＩＮが、カード製造工程で書込まれたＩＰＩＮと一致した場合、ＰＩＮを書込み、ＩＰＩＮを消去する技術は公知である（たとえば、特許文献１参照）。  
すなわち、この公知技術は、キー照合が一致すると次のキー（下位者のキー）を書込んだ後に照合一致したキー（上位者のキー）を削除するものである。
【特許文献１】特開昭６２−４４８６９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかし、上記した従来技術の問題点として、ＩＣカード内のデータが改竄された場合などの問題解決に影響するものである。たとえば、ＩＣカード内のアプリケーション利用の有効期限は、一般的にアプリケーション提供者のキーを照合することにより変更されることを考えると、仮に、このデータが改竄された場合には、アプリケーション提供者の責任が問われることになる。
【００１０】
しかしながら、このアプリケーション提供者が前述したトランスポートキーを変更せずして利用していた場合には、カード発行者はアプリケーション提供者と同等の処理をなし得ることになる。すなわち、アプリケーション提供者の不注意に起因するものであるにもかかわらず、カード発行者も同時に疑いがかけられることになる。
【００１１】
したがって、トランスポートキーを適用する本来の意図にある、「ＩＣカードに対する管理権限の委譲」に反する結果となってしまう。  
ただし、トランスポートキーの書換えを義務づけ、かつ、これをＩＣカード内で一義的にチェックすることは、ＩＣカードの利便性のみを要求するアプリケーションには不向きである。
【００１２】
また、従来の公知技術では、単にキー照合が一致すると次のキーを書込んだ後に照合一致したキーを削除するものであるから、トランスポートキーを上位者から下位者に渡した後、下位者が当該キーを変更しない限り、その効力が発揮されないようにすることはできない。
【００１３】
そこで、本発明は、トランスポートキーを上位者から下位者に渡した後、下位者が当該キーを変更しない限り、その効力が発揮されないようにすることができ、セキュリティ性に優れたＩＣカードおよびＩＣカードにおけるファイル管理方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明のＩＣカードは、複数の記憶領域にキーデータおよびデータを記憶するための記憶手段と、初期キーデータを前記記憶手段に記憶された前記キーデータと比較することによって初期キーデータが変更されているかどうかを判定するための判定手段と、この判定手段により前記キーデータが変更されていないと判定されたときに前記複数の記憶領域においてデータが処理されるのを阻止するための阻止手段と、前記判定手段により前記キーデータが変更されていると判定されたときに特定のコマンドに応じて前記複数の記憶領域のデータを処理するための処理手段とを具備し、前記処理手段は、特定のコマンドに応じて前記複数の記憶領域のそれぞれにおいて前記キーデータのファイルを作成するためのファイル作成手段を含み、このファイル作成手段によるファイル作成は前記キーデータが変更される前に前記阻止手段によって阻止されることを特徴とする。
【００１５】
また、本発明のＩＣカードにおけるファイル管理方法は、少なくともメモリを有するＩＣカードにおいて、前記メモリ内の複数のファイルへのアクセスを管理するファイル管理方法であって、前記メモリを使用するシステムの上位概念により前記ファイルの下位にあらかじめ設定されている第１キーを前記メモリを使用するシステムの下位概念により設定されている新しいキーと照合することによって前記ファイルへのアクセスを許可し、前記上位概念は、前記第１キーを前記第１キーの中に設定されたキー変更アクセス条件を参照して前記下位概念だけに知られている第２キーに変更し、かつ、前記第１キーが前記第２キーに変更されると前記上位概念が前記ファイルの下位におけるキーの作成を拒絶することを特徴とする。
【００１６】
また、本発明のＩＣカードにおけるファイル管理方法は、少なくともメモリを有するＩＣカードにおいて、前記メモリ内の上位概念ファイルおよび下位概念ファイルを含む木構造ファイルへのアクセスを管理するファイル管理方法であって、上位概念管理プログラムによって管理される前記上位概念ファイルにアクセス条件を設定し、前記上位概念管理プログラムから下位概念管理プログラムへ提供されるファイルにアクセス条件を設定し、前記上位概念管理プログラムから前記下位概念管理プログラムへ移送される移送キーを前記下位概念ファイルのアクセス条件を参照して前記下位概念ファイルに設定し、前記上位概念ファイルの前記アクセス条件が満たされたときに前記下位概念ファイルに前記移送キーを設定し、前記下位概念ファイルのアクセス条件を参照するとともに、このアクセス条件が満たされたときに前記下位概念ファイルの下位にファイルを設定することを特徴とする。
【００１７】
さらに、本発明のＩＣカードは、少なくともメモリを有し、このメモリ内に上位概念ファイルおよび下位概念ファイルを有する木構造ファイルを含むＩＣカードにおいて、アクセス条件が設定されているとともに上位概念管理プログラムによって使用される上位概念ファイルと、アクセス条件が設定されているとともに前記上位概念管理プログラムによって提供されかつ下位概念管理プログラムによって使用される下位概念ファイルと、前記上位概念ファイルの前記アクセス条件が満たされたときに前記上位概念ファイルの前記アクセス条件を参照するとともに、前記下位概念ファイルに前記上位概念管理プログラムから前記下位概念管理プログラムへ移送される移送キーを設定するための第１手段と、前記下位概念ファイルの前記アクセス条件が満たされたときに前記下位概念ファイルの前記アクセス条件を参照するとともに、前記下位概念ファイルの下位にファイルを設定するための第２手段とを具備している。
【発明の効果】
【００１８】
本発明によれば、トランスポートキーを上位者から下位者に渡した後、下位者が当該キーを変更しない限り、その効力が発揮されないようにすることができ、セキュリティ性に優れたＩＣカードおよびＩＣカードにおけるファイル管理方法を提供できる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態について図面を参照して説明する。  
図１は、本実施の形態に係る携帯可能電子装置としてのＩＣカードが適用される、たとえば、金融システムあるいはショッピングシステムなどの端末装置として用いられるカード取扱装置の構成例を示すものである。すなわち、この装置は、ＩＣカード１をカードリーダ・ライタ２を介してＣＰＵなどからなる制御部３と接続可能とするとともに、制御部３にキーボード４、ＣＲＴディスプレイ装置５、プリンタ６、および、フロッピー（登録商標）ディスク装置７を接続して構成される。
【００２０】
図２は、ＩＣカード１の構成例を示すものであり、制御部としての制御素子（たとえば、ＣＰＵ）１１、記憶内容が消去可能な不揮発性のデータメモリ１２、ワーキングメモリ１３、プログラムメモリ１４、および、カードリーダ・ライタ２との電気的接触を得るためのコンタクト部１５によって構成されている。これらのうち、破線内の部分（制御素子１１、データメモリ１２、ワーキングメモリ１３、プログラムメモリ１４）は１つ（あるいは複数）のＩＣチップで構成されてＩＣカード本体内に埋設されている。
【００２１】
データメモリ１２は、各種データの記憶に使用され、たとえば、ＥＥＰＲＯＭなどで構成されている。ワーキングメモリ１３は、制御素子１１が処理を行なう際の処理データを一時的に保持するためのメモリであり、たとえば、ＲＡＭなどで構成される。プログラムメモリ１４は、たとえば、マスクＲＯＭで構成されており、制御素子１１のプログラムなどを記憶するものである。
【００２２】
データメモリ１２は、たとえば、図３に示すように、制御領域１２０、ディレクトリ１２１、空き領域１２２、および、エリア群１２３に分割されている。エリア群１２３は、複数のデータエリアおよびキーエリアを有することができ、かつ、データファイル（ＤＦ）と呼ばれる概念でグループ化することができる。なお、後述するマスタファイル（ＭＦ）は、データファイルの１つの形態として一括管理される。
【００２３】
データファイルは、対応するアプリケーションにて使用されるデータエリア、および、キーエリアを一括して管理するためのファイルである。  
データエリアは、たとえば、取引データなどのように、必要に応じて読み書きするためのデータを格納するエリアである。  
キーエリアは、たとえば、暗証番号などの格納に利用されているエリアであり、書込み／書換え／照合の対象になり、読出しはできないようになっている。
【００２４】
なお、これらのエリアは、図３に示すように、エリア群１２３として一括して割当てられている。また、これらのファイルあるいはエリアは、データメモリ１２内のディレクトリ１２１を用いることにより、それぞれの物理的位置などを制御素子１１が認識するようになっている。
【００２５】
さらに、図３の制御領域１２０には、エリア群１２３の先頭アドレス情報、および、空き領域１２２の先頭アドレス情報が格納されている。  
図３のディレクトリ１２１は、図４に示すように、各データファイルおよびエリアに対応する各種定義情報が格納される。
【００２６】
図４（ａ）は、データファイルの名称を定義する情報である。この定義情報は、ディレクトリ１２１内でデータファイル名定義情報を識別するためのデータＰＴＮ、本データファイルに割当てられたファイル通し番号ＤＦＳＮ、本データファイルの親ファイルの通し番号ＰＦＳＮ、本データファイルに付与されたファイル名ＤＦnameおよびその長さを示すデータＮＬ、および、これらのデータの正当性をチェックするためのデータＢＣＣから構成される。
【００２７】
図４（ｂ）は、データファイルの管理情報を定義する情報である。この定義情報は、ディレクトリ１２１内でデータファイル名定義情報を識別するためのデータＰＴＮ、本データファイルに割当てられたファイル通し番号ＤＦＳＮ、本データファイルの親ファイルの通し番号ＰＦＳＮ、データファイルサイズＤＦＳ、本データファイルの付加情報が格納されるデータエリアを識別するためのＡＡＩＤ、当該付加情報を出力するか否かなどを規定するＴＹＰＥ、キーの種別を禁止するＵＣＦ、データファイルのアクセス条件を示すＤＦＡＣ、本データファイルの状態を保持するためのＤＦＳＴ、本データファイルの配下に位置するデータファイルおよびエリアにより使用されているバイト数ＵＳ、および、これらのデータの正当性をチェックするためのデータＢＣＣから構成される。  
また、特にＡＡＩＤは、後述するデータファイル選択コマンドにてデータファイルが選択された際に、必要に応じてそれに示されるデータエリアの内容を出力する。
【００２８】
図４（ｃ）は、各種取引データなどを格納するエリアを定義する情報である。この定義情報は、ディレクトリ１２１内でエリア定義情報を識別するためのデータＰＴＮ、本エリアが属するデータファイルの通し番号ＤＦＳＮ、エリアに対してアクセスする際の識別番号ＡＩＤ、エリアの先頭アドレスを示すＡＴＯＰ、エリアサイズを示すＡＳＩＺ、エリアのアクセス条件を示すＡＡＣ、エリアの状態を保持するＡＳＴ、および、これらのデータの正当性をチェックするためのデータＢＣＣから構成される。
【００２９】
図４（ｄ）は、各種キーデータを格納するエリアを定義する情報である。この定義情報は、ディレクトリ１２１内でキーエリア定義情報を識別するためのデータＰＴＮ、本エリアが属するデータファイルの通し番号ＤＦＳＮ、エリアに対してアクセスする際の識別番号ＫＩＤ、エリアの先頭アドレスを示すＫＴＯＰ、エリアサイズを示すＫＳＩＺ、キーの種別を示すＣＦ、キーのアクセス条件を示すＫＡＣ、キーの状態を保持するＫＳＴ、および、これらのデータの正当性をチェックするためのデータＢＣＣから構成される。
【００３０】
これらに使用されている識別情報ＰＴＮは、たとえば、１バイトで構成されており、データファイルの名称を定義するもの（図４（ａ））に対しては‘００’が、データファイルの管理情報を定義するもの（図４（ｂ））に対しては‘０１’が、データエリアを定義するもの（図中（ｃ））に対しては‘０２’が、また、キーエリアを定義するもの（図４（ｄ））に対しては‘０３’が、それぞれ使用される。
【００３１】
図５は、ファイルの構造例を示している。この図において、ＤＦｎｎはデータファイルを、Ｄｎｎはデータエリアを、Ｋｎｎはキーエリアを、それぞれ示している。  
図示するように、ＩＣカード１内のメモリ１２において、マスタファイル（ＭＦ）の配下には、データファイルＤＦ１，ＤＦ２が、また、キーエリアＫ００，Ｋ０１、データエリアＤ００，Ｄ０１が、それぞれ設定されている。
【００３２】
また、データファイルＤＦ１の配下には、データファイルＤＦ１−１，ＤＦ１−２が、また、キーエリアＫ１１，Ｋ１２、データエリアＤ１１，Ｄ１２が、それぞれ設定されている。
【００３３】
また、データファイルＤＦ１−１の配下には、キーエリアＫ１１１，Ｋ１１２、データエリアＤ１１１／Ｄ１１２が、また、データファイルＤＦ１−２の配下には、キーエリアＫ１２１，Ｋ１２２、データエリアＤ１２１，Ｄ１２２が、それぞれ設定されている。
【００３４】
一方、データファイルＤＦ２の配下には、データファイルＤＦ２−１，ＤＦ２−２が、また、キーエリアＫ２１，Ｋ２２、データエリアＤ２１，Ｄ２２が、それぞれ設定されている。
【００３５】
また、データファイルＤＦ２−１の配下には、キーエリアＫ２１１，Ｋ２１２、データエリアＤ２１１，Ｄ２１２が、また、データファイルＤＦ２−２の配下には、キーエリアＫ２２１，Ｋ２２２、データエリアＤ２２１，Ｄ２２２が、それぞれ設定されている。
【００３６】
これらの各種定義情報は、一括して図６に示すように、ディレクトリ１２１に格納される。図示するように、各定義情報には、ＤＦＳＮ（ファイル通し番号）が、ファイル創成時に自動的に付与される。このＤＦＳＮ、および、データファイル定義情報に格納される親ファイルのシーケンス番号により、各ファイルの関連状態を制御素子１１が認識する。
【００３７】
たとえば、データファイルＤＦ１−１の定義情報（通し番号＃１３）は、ＤＦＳＮが‘０３’、また、ＰＦＳＮが‘０１’となっている。すなわち、本データファイルは、ファイルシーケンス番号‘０３’が創成時に付与され、同時に本データファイルがＤＦ１の配下に創成されることを認識し、データファイルＤＦ１のＤＦＳＮ（‘０１’）をＰＦＳＮとして付与する。
【００３８】
図７は、データファイル（ＤＦ）創成のための動作を説明するフローチヤートを示しており、以下それについて説明する。ＩＣカード１が、外部から入力されるデータファイル創成コマンドを受信すると、まず、使用可能状態、すなわち、カレント状態となっているデータファイル（以後、カレントＤＦと称す）を認識する（ＳＴ１）。特に、ＩＣカード１への電気的活性化の直後は、カレントＤＦはマスタファイル（ＭＦ）となる。
【００３９】
カレントＤＦを認識すると、次に、カレントＤＦ定義情報中のアクセス条件情報のうち、ファイル創成に関する情報を参照する。この条件と、後述するＲＡＭ上の照合状態保持領域Ａのみを比較し、アクセス条件が要求しているキーの照合状態が確立されているか否かを判断する（ＳＴ２）。
【００４０】
もし確立されていなければ、アクセス条件不一致を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ３）。また、もし確立されていれば、次に、コマンド内に設定されているデータファイルのファイル名（ＤＦ−ＩＤ）を抽出し、カレントＤＦが有するＦＳＮと同一の値を親ＦＳＮとして有しており、さらに、抽出したファイル名と同一のファイル名を有しているデータファイル定義情報が存在するか否かを確認する（ＳＴ４）。
【００４１】
もし存在するとしたら、ＩＤ重複異常を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ５）。また、もし存在しないとしたら、コマンドにて与えられたデータファイル創成のためのデータにより、図４（ａ）〜（ｃ）に示すデータファイル定義情報を生成し（ＳＴ６）、これを所定領域に書込む（ＳＴ７）。
【００４２】
この書込みにおいて、書込みが正常に終了しなかった場合（ＳＴ８）、データ書込み異常を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ９）。また、書込みが正常に終了した場合（ＳＴ８）、正常終了を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ１０）。
【００４３】
図８は、キーエレメンタリファイル（ＥＦ）創成のための動作を説明するフローチヤートを示しており、以下それについて説明する。ＩＣカード１が、外部から入力されるキーＥＦ創成コマンドを受信すると、まず、カレントＤＦを認識する（ＳＴ１１）。
【００４４】
カレントＤＦを認識すると、次に、カレントＤＦ定義情報中のアクセス条件情報のうち、ファイル創成に関する情報を参照する。この条件と、後述するＲＡＭ上の照合状態保持領域Ａのみを比較し、アクセス条件が要求しているキーの照合状態が確立されているか否かを判断する（ＳＴ１２）。
【００４５】
もし確立されていなければ、アクセス条件不一致を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ１３）。また、もし確立されていれば、次に、コマンド電文にて指示されているエレメンタリファイル名（ＥＦ−ＩＤ）を参照し、アクセス対象となっているカレントＤＦ内に、当該エレメンタリファイル名が存在するか否かをチェックする（ＳＴ１４）。もし存在する場合には、ＩＤ重複異常を示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ１５）。
【００４６】
もし存在しなければ、次に、コマンド電文にて指定されているキーＥＦのサイズデータを参照し、アクセス対象となっているカレントＤＦ内の空き領域サイズと比較する（ＳＴ１６）。この比較においては、指定されたキーＥＦのサイズに当該キーＥＦを創成した際に使用するディレクトリ情報のサイズを加算したものに対して、前記空き領域サイズがそれ以上であるか否かをチェックする。もし前者が後者よりも大きい場合には、指定サイズ異常を示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ１７）。
【００４７】
もしそうでなければ、次に、コマンド電文にて指定されたキーのタイプと、サイズの正当性をチェックする（ＳＴ１８）。このとき、キーのタイプが「認証関連キー」となっていればサイズが例えば１０バイト、また、キーのタイプが「照合キー」となっていればサイズは例えば３〜１８バイトであるとき、サイズが正当であると判断する。もし正当でないと判断された場合には、指定サイズ整合異常を示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ１９）。
【００４８】
ここで、サイズが正当であったと判断された場合には、受信したコマンドに基づき、ディレクトリに格納すべきキーＥＦ定義情報を生成し（ＳＴ２０）、これを所定領域に書込む（ＳＴ２１）。このとき、ステータス情報の第８ビット目は、コマンド電文にて指定されたキータイプ情報のうちの第１ビット目に依存して、その値が決定される。すなわち、後者のビット値と同様の値を前者のビットに設定する。
【００４９】
このステータス情報の第８ビット目は、キーデータの変更がなされたか否かを示すビットであり、当該ビットが「１」の場合、変更行為がなされていないことを示し、また、「０」であればその行為がなされたことを示している。
【００５０】
したがって、上記キータイプ情報の第１ビット目が「１」の場合には、キー変更を行なわない限りステータス情報の第８ビット目が「０」とはならず、また、「０」の場合には、キー変更を行なうか否かに関わらず、ステータス情報の第８ビット目が「０」となっている（つまり、書換え行為が暗黙的に行なわれたことと等価になる）。
【００５１】
上記キーＥＦ定義情報の書込みにおいて、書込みが正常に終了しなかった場合（ＳＴ２２）、データ書込み異常を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ２３）。また、書込みが正常に終了した場合（ＳＴ２２）、正常終了を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ２４）。
【００５２】
図９は、キーデータ設定のための動作を説明するフローチヤートを示しており、以下それについて説明する。ＩＣカード１が、外部から入力されるキーデータ設定コマンドを受信すると、まず、カレントＤＦを認識する（ＳＴ３１）。
【００５３】
カレントＤＦを認識すると、次に、コマンド電文にて指示されているエレメンタリファイル名（ＥＦ−ＩＤ）を参照し、アクセス対象となっているカレントＤＦ内に、当該エレメンタリファイル名が存在するか否かをチェックする（ＳＴ３２）。もし存在しない場合には、該当キーＩＤ無しを意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ３３）。
【００５４】
もし存在すれば、次に当該キーＥＦ定義情報中のアクセス条件情報のうち、キーデータ設定に関する情報を参照する。この条件と、後述するＲＡＭ上の照合状態保持領域Ａのみを比較し、アクセス条件が要求しているキーの照合状態が確立されているか否かを判断する（ＳＴ３４）。
【００５５】
もし確立されていなければ、アクセス条件不一致を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ３５）。また、もし確立されていれば、次に、対応するキーＥＦ領域内にキーデータが存在するか否かを確認する（ＳＴ３６）。もし存在すれば、既存キーデータ有りを意味するレスポンスデータを出力し、コマンド待ち状態に戻る（ＳＴ３７）。
【００５６】
もし存在しなければ、コマンド電文にて指定されたキーのタイプと、入力キーデータのサイズの正当性をチェックする（ＳＴ３８）。このとき、キーのタイプが「認証関連キー」となっていればサイズが例えば８バイト、また、キーのタイプが「照合キー」となっていればサイズは例えば１〜１６バイトであるとき、サイズが正当であると判断する。もし正当でないと判断された場合には、入力キーデータサイズ異常を示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ３９）。
【００５７】
ここで、サイズが正当であったと判断された場合には、次に、当該キーＥＦ定義情報中にて定義されているサイズと、入力されたキーデータのサイズとの比較を行なう（ＳＴ４０）。後者のサイズに例えば「２」を加えたものが、前者のサイズよりも大きい場合には、領域サイズ不足を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ４１）。
【００５８】
そうでなければ、受信したコマンドにて入力されたキーデータに、１バイトの長さの情報および１バイトのＢＣＣを付加して、これを当該キーＥＦ領域に格納し（ＳＴ４２）、処理結果をレスポンス電文にて出力し、コマンド待ち状態に戻る（ＳＴ４３）。
【００５９】
図１０は、キーデータ変更のための動作を説明するフローチヤートを示しており、以下それについて説明する。ＩＣカード１が、外部から入力されるキーデータ変更コマンドを受信すると、まず、カレントＤＦを認識する（ＳＴ５１）。
【００６０】
カレントＤＦを認識すると、次に、コマンド電文にて指示されているエレメンタリファイル名（ＥＦ−ＩＤ）を参照し、アクセス対象となっているカレントＤＦ内に、当該エレメンタリファイル名が存在するか否かをチェックする（ＳＴ５２）。もし存在しない場合には、該当キーＩＤ無しを意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ５３）。
【００６１】
もし存在すれば、次に当該キーＥＦ定義情報中のアクセス条件情報のうち、キーデータ変更に関する情報を参照する。この条件と、後述するＲＡＭ上の照合状態保持領域ＡおよびＢを比較し、アクセス条件が要求しているキーの照合状態が確立されているか否かを判断する（ＳＴ５４）。
【００６２】
もし確立されていなければ、アクセス条件不一致を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ５５）。また、もし確立されていれば、次に、対応するキーＥＦ領域内にキーデータが存在するか否かを確認する（ＳＴ５６）。もし存在しなければ、既存キーデータ無しを意味するレスポンスデータを出力し、コマンド待ち状態に戻る（ＳＴ５７）。
【００６３】
もし存在すれば、コマンド電文にて指定されたキーのタイプと、入力キーデータのサイズの正当性をチェックする（ＳＴ５８）。このとき、キーのタイプが「認証関連キー」となっていればサイズが例えば８バイト、また、キーのタイプが「照合キー」となっていればサイズは例えば１〜１６バイトであるとき、サイズが正当であると判断する。もし正当でないと判断された場合には、入力キーデータサイズ異常を示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ５９）。
【００６４】
ここで、サイズが正当であったと判断された場合には、次に、当該キーＥＦ定義情報中にて定義されているサイズと、入力されたキーデータのサイズとの比較を行なう（ＳＴ６０）。後者のサイズに例えば「２」を加えたものが、前者のサイズよりも大きい場合には、領域サイズ不足を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ６１）。
【００６５】
そうでなければ、受信したコマンドにて入力されたキーデータに、１バイトの長さの情報および１バイトのＢＣＣを付加して、これを当該キーＥＦ領域に格納し（ＳＴ６２）、その処理結果をレスポンス電文にて出力し、コマンド待ち状態に戻る（ＳＴ６３）。また、このとき、キーＥＦ定義情報にあるステータス情報の第８ビット目を「０」とする。
【００６６】
図１１は、キー照合のための動作を説明するフローチヤートを示しており、以下それについて説明する。ＩＣカード１が、外部から入力されるキー照合コマンドを受信すると、まず、カレントＤＦを認識する（ＳＴ７１）。
【００６７】
カレントＤＦを認識すると、次に、ディレクトリ１２１を検索することにより、カレントＤＦ内に指定されたファイル名（ＩＤ）を有するキーＥＦ定義情報が存在するか否かを確認する（ＳＴ７２）。もし存在しない場合には、該当キーＩＤ無しを示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ７３）。
【００６８】
もし存在していた場合には、当該キーがロック状態になっているか否かを確認する（ＳＴ７４）。このとき、ロック状態であると判断した場合には、キーロックを示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ７５）。
【００６９】
もしそうでなければ、コマンド電文内のキーデータと、当該キーＥＦ内に格納されているキーデータとを照合する（ＳＴ７６）。このとき、両者が一致している場合には（ＳＴ７７）、当該キーＥＦ定義情報中の照合ビット指定情報を参照し、所定のＲＡＭ領域の当該情報にて指定されているビット位置を「１」にする（ＳＴ７８）。次に、当該キーＥＦ定義情報中のキー固有の照合不一致カウンタをクリアし（ＳＴ７９）、正常終了を示すレスポンス電文を出力して、コマンド待ち状態に戻る（ＳＴ８０）。
【００７０】
なお、所定のＲＡＭ領域は、照合状態保持領域ＡおよびＢに分割されている。どちらの領域の対応ビットを「１」にするかは、当該キーＥＦ定義情報中のキーのステータス情報の第８ビット目の値に依存する。このビットは、当該キーＥＦ定義情報により定義づけられているキーに対し、変更処理が行なわれたか否かを示すものであり、後述するように、「０」となっていれば変更されたキーであり、「１」となっていれば変更処理が行なわれていないキーであることを示す。さらに、これが「０」となっていた場合には、前記照合状態保持領域Ａの、また、「１」となっていれば、前記照合状態保持領域Ｂの、対応ビットを設定することになる。
【００７１】
また、キー照合処理において、不一致であると判断した場合には（ＳＴ７７）、まず、当該キーＥＦ定義情報中の照合ビット指定情報、および、ステータス情報を参照し、上記と同様の手順にしたがって、照合状態保持領域ＡまたはＢのいずれかの領域の所定ビットを「０」にする（ＳＴ８１）。
【００７２】
次に、キー固有の照合不一致カウンタを１つだけインクリメントする（ＳＴ８２）。このとき、キーＥＦ定義情報中のカウント最大値に達していない場合には（ＳＴ８３）、照合不一致を示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ８４）。また、最大値に達していたならば、キーロック済みを示すレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ８５）。
【００７３】
図１２は、データＥＦへのアクセスのための動作を説明するフローチヤートを示しており、以下それについて説明する。ＩＣカード１が、外部から入力されるデータＥＦアクセスコマンドを受信すると、まず、カレントＤＦを認識する（ＳＴ９１）。
【００７４】
カレントＤＦを認識すると、次に、コマンド電文にて指示されているエレメンタリファイル名（ＥＦ−ＩＤ）を参照し、アクセス対象となっているカレントＤＦ内に、当該エレメンタリファイル名が存在するか否かをチェックする（ＳＴ９２）。もし存在しない場合には、該当キーＩＤ無しを意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ９３）。
【００７５】
もし存在すれば、次に当該データＥＦ定義情報中のアクセス条件情報のうち、アクセスのタイプ（データ読出し／書込み／変更）に対応するアクセス条件情報を参照する。この条件と、後述するＲＡＭ上の照合状態保持領域Ａを比較し、アクセス条件が要求しているキーの照合状態が確立されているか否かを判断する（ＳＴ９４）。
【００７６】
もし確立されていなければ、アクセス条件不一致を意味するレスポンス電文を出力し、コマンド待ち状態に戻る（ＳＴ９５）。もし確立されていれば、次に、対応するデータＥＦ領域内に対してアクセスを行ない（ＳＴ９６）、その処理結果をレスポンス電文として出力し、コマンド待ち状態に戻る（ＳＴ９７）。
【００７７】
これによれば、たとえば、アプリケーション提供者キー（トランスポートキー）を設定するアクセス条件として、その上位者である発行者のキーが必要であり、また、アプリケーション提供者トランスポートキーの変更は、当該キーの照合により可能となるように設定しておき、他のアクセスコマンドを実行する際には、アプリケーション提供者のキー照合が必要なように設定されているとする。
【００７８】
この場合、変更前のアプリケーション提供者トランスポートキーの照合結果は、照合状態保持領域Ｂに格納される。したがって、他のアクセスがアプリケーション提供者キーの照合が必要となっていても、これらのアクセスに使用される照合状態保持領域Ａには照合結果が反映されず、よって、当該キーの効果が発揮されていないことが実現できる。
【００７９】
また、当該キー変更の場合に限っては、照合状態保持領域ＡおよびＢを参照するため、変更前においても確立された照合状態が参照でき、したがって、キー変更行為が許可される。  
また、キー変更後のキーの照合により、照合状態保持領域Ａに照合状態が反映されるため、以降の他のアクセスに関して効果が発揮されたことになる。
【００８０】
また、本実施の形態のように、キーＥＦ創成時に入力されるキーのタイプ情報により、この時点で変更がなされたことを疑似的に行なわせるか否かを設定できるため、アプリケーション提供者個々の要求により、上位者であるカード発行者が種々のタイプを選択的に設定することが可能となる。
【００８１】
なお、前記実施の形態では、キーのタイプ情報から、あらかじめキーの変更がなされたか否かを示すステータス情報を設定するタイミングとして、キーＥＦ創成コマンド処理中になっているが、たとえば、キーを設置するコマンド処理中に行なってもよい。
【００８２】
また、前記実施の形態では、ファイル管理を行なう電子機器としてＩＣカードを例示したが、これに限定されることなく、ファイル管理を必要とするメモリを備えた電子機器であれば適用可能である。
【図面の簡単な説明】
【００８３】
【図１】本発明の実施の形態に係るＩＣカードが適用されるカード取扱装置の構成例を示すブロック図。
【図２】ＩＣカードの構成例を示すブロック図。
【図３】データメモリの構成例を示すメモリマップ図。
【図４】各種定義情報のフォーマット例を示す図。
【図５】データメモリ内に設定されるファイルの構造例を示す図。
【図６】データメモリ内に設定されるディレクトリの構成例を示す図。
【図７】データファイル創成のための動作を説明するフローチャート。
【図８】キーエレメンタリファイル創成のための動作を説明するフローチャート。
【図９】キーデータ設定のための動作を説明するフローチャート。
【図１０】キーデータ変更のための動作を説明するフローチャート。
【図１１】キー照合のための動作を説明するフローチャート。
【図１２】データエレメンタリファイルへのアクセスのための動作を説明するフローチャート。
【符号の説明】
【００８４】
１……ＩＣカード、２……カードリーダ・ライタ、３……制御部、４……キーボード、５……ＣＲＴディスプレイ装置、１１……制御素子、１２……データメモリ、１３……ワーキングメモリ、１４……プログラムメモリ、１５……コンタクト部、１２０……制御領域、１２１……ディレクトリ、１２３……エリア群。
【図１】
2006092568.tif 000003
【図２】
2006092568.tif 000004
【図３】
2006092568.tif 000005
【図４】
2006092568.tif 000006
【図５】
2006092568.tif 000007
【図６】
2006092568.tif 000008
【図７】
2006092568.tif 000009
【図８】
2006092568.tif 000010
【図９】
2006092568.tif 000011
【図１０】
2006092568.tif 000012
【図１１】
2006092568.tif 000013
【図１２】
2006092568.tif 000014