(57)【要約】【課題】可搬型電子媒体が上位装置からの入出力デバイスによるデータの入出力の指示を受けたときにアクセス権限を照合して指示を許可するか否かを制御する。【解決手段】ＩＣカード１のＣＰＵ１３３は、入出力コマンドを受信すると、入出力の対象データが含まれるファイルまたは当該ファイルを利用するアプリケーションに対応し、アクセス権限を得るために必要な認証を示す条件情報と認証実行状態情報を記憶部１３１から読み出して照合する。ＣＰＵ１３３は、照合によりアクセス権限があると判断したときにはアプリケーションのプログラムにより入出力コマンドを実行し、記憶部１３１の対象データを表示バッファ１４へ転送して表示装置１５に表示させるか、テンキー１６により入力されたデータの転送をテンキーバッファ１７から受けて記憶部１３１の対象データに書き込み、アクセス権限がないと判断したときには入出力コマンドの実行を中止する。【選択図】図１
2015130001.tif 000002
【特許請求の範囲】
【請求項１】
データの入力または出力を行う１以上の入出力部と、
前記入出力部から入力されたデータを転送する処理、あるいは、転送されたデータを前記入出力部から出力させる処理を行うバッファ部と、
アプリケーションのプログラム及びファイルと、認証の実行状態を示す認証実行状態情報とを記憶するとともに、アクセス権限を得るために必要な認証を示す条件情報を前記ファイルまたは前記アプリケーションと対応付けて記憶する記憶部と、
認証処理を実行して前記認証実行状態情報に認証の実行状態を設定する認証部と、
前記入出力部によるデータの入力または出力を指示する入出力コマンドを受信した場合に、前記入出力コマンドが対象とするデータが含まれるファイルまたは当該ファイルを利用するアプリケーションに対応した前記条件情報と前記認証実行状態情報とを照合してアクセス権限があるか否かを判断し、アクセス権限があると判断したときには、前記アプリケーションのプログラムにより前記入出力コマンドを実行して前記入出力部により出力するデータを前記ファイルから読み出して前記バッファ部へ転送する処理、あるいは、前記入出力部により入力され、前記バッファ部から転送されたデータを前記ファイルへ書き込む処理を行い、アクセス権限がないと判断したときには、前記入出力コマンドの実行を中止するアクセス制御部と、
を備えることを特徴とする可搬型電子媒体。
【請求項２】
前記条件情報には、アクセス権限を得るために必要な認証を示すアクセス条件が、入出力コマンドの種類毎、あるいは、前記入出力部毎に設定され、
前記アクセス制御部は、入出力コマンドを受信した場合に、前記入出力コマンドが対象とするデータが含まれるファイルまたは当該ファイルを利用するアプリケーションに対応した前記条件情報を読み出し、読み出した条件情報に前記入出力コマンドの種類に対応付けて、あるいは、前記入出力コマンドによりデータを入力あるいは出力させる前記入出力部に対応付けて設定されているアクセス条件と前記認証実行状態情報とを照合してアクセス権限があるか否かを判断する、
ことを特徴とする請求項１に記載の可搬型電子媒体。
【請求項３】
前記認証実行状態情報は、前記記憶部の揮発性の記憶領域に記憶される、
ことを特徴とする請求項１または請求項２に記載の可搬型電子媒体。
【請求項４】
前記記憶部は、アプリケーションのプログラム及びファイルを記憶するアプリケーション記憶領域をアプリケーション毎に有する、
ことを特徴とする請求項１から請求項３のいずれか１項に記載の可搬型電子媒体。
【請求項５】
前記アプリケーション記憶領域は、当該アプリケーション記憶領域に対応する前記アプリケーションの前記条件情報、あるいは、前記アプリケーションのファイルに対応した前記条件情報を記憶する、
ことを特徴とする請求項４に記載の可搬型電子媒体。
【請求項６】
前記アプリケーションのファイルは、当該アプリケーションのプログラム内に含まれる、
ことを特徴とする請求項１から請求項５のいずれか１項に記載の可搬型電子媒体。
【請求項７】
前記記憶部は、
前記アプリケーションのプログラムを記憶するプログラム記憶領域と、
前記アプリケーションのファイルを記憶するデータ記憶領域と、
前記条件情報を記憶する制御情報記憶領域とを有する、
ことを特徴とする請求項１から請求項３のいずれか１項に記載の可搬型電子媒体。
【請求項８】
前記可搬型電子媒体は、ＩＣ部を備えたＩＣカードであり、
前記ＩＣ部は、前記記憶部、前記認証部、及び前記アクセス制御部を備える、
ことを特徴とする請求項１から請求項７のいずれか１項に記載の可搬型電子媒体。
【請求項９】
データの入力または出力を行う１以上の入出力部と、アプリケーションのプログラム及びファイルと、認証の実行状態を示す認証実行状態情報とを記憶するとともに、アクセス権限を得るために必要な認証を示す条件情報を前記ファイルまたは前記アプリケーションと対応付けて記憶する記憶部とを備える可搬型電子媒体に用いられる入出力制御方法であって、
バッファ部が、前記入出力部から入力されたデータを転送する処理、あるいは、転送されたデータを前記入出力部から出力させる処理を行うデータ転送過程と、
認証部が、認証処理を実行して前記認証実行状態情報に認証の実行状態を設定する認証過程と、
アクセス制御部が、前記入出力部によるデータの入力または出力を指示する入出力コマンドを受信した場合に、前記入出力コマンドが対象とするデータが含まれるファイルまたは当該ファイルを利用するアプリケーションに対応した前記条件情報と前記認証実行状態情報とを照合してアクセス権限があるか否かを判断し、アクセス権限があると判断したときには、前記アプリケーションのプログラムにより前記入出力コマンドを実行して前記入出力部により出力するデータを前記ファイルから読み出して前記データ転送過程により前記入出力部へ転送させる処理、あるいは、前記入出力部により入力され、前記データ転送過程により転送されたデータを前記ファイルへ書き込む処理を行い、アクセス権限がないと判断したときには、前記入出力コマンドの実行を中止するアクセス制御過程と、
を有することを特徴とする入出力制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、可搬型電子媒体、及び入出力制御方法に関する。
【背景技術】
【０００２】
従来の可搬型電子媒体には、ディスプレーなどの出力デバイスや、キーパッドなどの入力デバイスを有するＩＣカードがある。また、ディスプレーを有するＩＣカードには、発生したイベントに応じて表示を制御するものもある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−７１２５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
入出力デバイスを有する従来のＩＣカードは、リーダライタやパーソナルコンピュータなどの上位装置から受信したコマンドに基づき、メモリ内のデータをディスプレーのバッファに転送したり、テンキーからの入力内容を入力バッファからメモリに転送したりしていた。しかし、従来のＩＣカードはアクセス権限照合等のセキュリティ機能を有しておらず、上位装置からのコマンドによりメモリの内容をそのままディスプレーに表示したり、テンキーからの入力データをそのままメモリに書き込んだりしていた。そのため、上位装置が誤ったコマンドを送信したり、悪意を持った攻撃者がコマンドを送信した場合、ＩＣカードに秘密情報等を表示させたり、改ざんデータを書き込んだりすることが可能となっていた。
【０００５】
特許文献１では、上位装置からの表示命令に依らずに表示データの表示を可能とするため、ＩＣカード内で発生したイベントに対応して表示を行っている。そして、表示させるべき内容にメモリ内のデータが含まれている場合に、ＩＣカードは、イベントに対応して予めメモリ内に設定された鍵同士を照合して表示を許可するか否かを判断する。
上記のように特許文献１は、上位装置からの表示命令に依らずに表示制御を行うが、ＩＣカードはマスター／スレーブの考え方からすると、スレーブとして機能する媒体であり、マスターである上位装置から命令を受けて動作することが一般的に制御しやすい。例えば、表示内容の制御や表示タイミングの制御は、ＩＣカードが上位装置からの命令を受け、その命令に従って表示内容をメモリからディスプレーのバッファに転送することによって行う。特許文献１では、上位装置において、ＩＣカードがどのような状態のときにどのようなイベントが発生し、どのような情報が表示されるかを知ることができない。従って、マスター／スレーブ制御によるスレーブ側のＩＣカードに対して表示制御を行う場合に、特許文献１の技術を適用することは困難である。特許文献１の技術で表示制御を行うには、システム全体を設計／管理する主体が、ＩＣカードにおけるイベント発生アルゴリズムを把握しなければならない。また、上位装置は、ＩＣカードからの求めに応じて鍵の照合／認証を行うことになるので、この点からも特許文献１の技術は、マスター／スレーブ制御によるＩＣカードには適用しにくいことが予想される。そのため、マスター／スレーブ制御により制御されるＩＣカードに適用が容易であり、マスターである上位装置における任意のタイミングで入出力デバイスによるデータの入出力が指示されたときに、その指示の実行を許可するか否かを判断するセキュリティ機能が望まれている。
【０００６】
本発明は、このような事情を考慮してなされたもので、上位装置からの入出力デバイスによるデータの入出力の指示を受けたときにアクセス権限を照合して入出力の指示を許可するか否かを制御する可搬型電子媒体、及び入出力制御方法を提供する。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明は、データの入力または出力を行う１以上の入出力部と、前記入出力部から入力されたデータを転送する処理、あるいは、転送されたデータを前記入出力部から出力させる処理を行うバッファ部と、アプリケーションのプログラム及びファイルと、認証の実行状態を示す認証実行状態情報とを記憶するとともに、アクセス権限を得るために必要な認証を示す条件情報を前記ファイルまたは前記アプリケーションと対応付けて記憶する記憶部と、認証処理を実行して前記認証実行状態情報に認証の実行状態を設定する認証部と、前記入出力部によるデータの入力または出力を指示する入出力コマンドを受信した場合に、前記入出力コマンドが対象とするデータが含まれるファイルまたは当該ファイルを利用するアプリケーションに対応した前記条件情報と前記認証実行状態情報とを照合してアクセス権限があるか否かを判断し、アクセス権限があると判断したときには、前記アプリケーションのプログラムにより前記入出力コマンドを実行して前記入出力部により出力するデータを前記ファイルから読み出して前記バッファ部へ転送する処理、あるいは、前記入出力部により入力され、前記バッファ部から転送されたデータを前記ファイルへ書き込む処理を行い、アクセス権限がないと判断したときには、前記入出力コマンドの実行を中止するアクセス制御部と、を備えることを特徴とする可搬型電子媒体である。
【０００８】
また、本発明は、上述した可搬型電子媒体であって、前記条件情報には、アクセス権限を得るために必要な認証を示すアクセス条件が、入出力コマンドの種類毎、あるいは、前記入出力部毎に設定され、前記アクセス制御部は、入出力コマンドを受信した場合に、前記入出力コマンドが対象とするデータが含まれるファイルまたは当該ファイルを利用するアプリケーションに対応した前記条件情報を読み出し、読み出した条件情報に前記入出力コマンドの種類に対応付けて、あるいは、前記入出力コマンドによりデータを入力あるいは出力させる前記入出力部に対応付けて設定されているアクセス条件と前記認証実行状態情報とを照合してアクセス権限があるか否かを判断する、ことを特徴とする。
【０００９】
また、本発明は、上述した可搬型電子媒体であって、前記認証実行状態情報は、前記記憶部の揮発性の記憶領域に記憶される、ことを特徴とする。
【００１０】
また、本発明は、上述した可搬型電子媒体であって、前記記憶部は、アプリケーションのプログラム及びファイルを記憶するアプリケーション記憶領域をアプリケーション毎に有する、ことを特徴とする。
【００１１】
また、本発明は、上述した可搬型電子媒体であって、前記アプリケーション記憶領域は、当該アプリケーション記憶領域に対応する前記アプリケーションの前記条件情報、あるいは、前記アプリケーションのファイルに対応した前記条件情報を記憶する、ことを特徴とする。
【００１２】
また、本発明は、上述した可搬型電子媒体であって、前記アプリケーションのファイルは、当該アプリケーションのプログラム内に含まれる、ことを特徴とする。
【００１３】
また、本発明は、上述した可搬型電子媒体であって、前記記憶部は、前記アプリケーションのプログラムを記憶するプログラム記憶領域と、前記アプリケーションのファイルを記憶するデータ記憶領域と、前記条件情報を記憶する制御情報記憶領域とを有する、ことを特徴とする。
【００１４】
また、本発明は、上述した可搬型電子媒体であって、前記可搬型電子媒体は、ＩＣ部を備えたＩＣカードであり、前記ＩＣ部は、前記記憶部、前記認証部、及び前記アクセス制御部を備える、ことを特徴とする。
【００１５】
また、本発明は、データの入力または出力を行う１以上の入出力部と、アプリケーションのプログラム及びファイルと、認証の実行状態を示す認証実行状態情報とを記憶するとともに、アクセス権限を得るために必要な認証を示す条件情報を前記ファイルまたは前記アプリケーションと対応付けて記憶する記憶部とを備える可搬型電子媒体に用いられる入出力制御方法であって、バッファ部が、前記入出力部から入力されたデータを転送する処理、あるいは、転送されたデータを前記入出力部から出力させる処理を行うデータ転送過程と、認証部が、認証処理を実行して前記認証実行状態情報に認証の実行状態を設定する認証過程と、アクセス制御部が、前記入出力部によるデータの入力または出力を指示する入出力コマンドを受信した場合に、前記入出力コマンドが対象とするデータが含まれるファイルまたは当該ファイルを利用するアプリケーションに対応した前記条件情報と前記認証実行状態情報とを照合してアクセス権限があるか否かを判断し、アクセス権限があると判断したときには、前記アプリケーションのプログラムにより前記入出力コマンドを実行して前記入出力部により出力するデータを前記ファイルから読み出して前記データ転送過程により前記入出力部へ転送させる処理、あるいは、前記入出力部により入力され、前記データ転送過程により転送されたデータを前記ファイルへ書き込む処理を行い、アクセス権限がないと判断したときには、前記入出力コマンドの実行を中止するアクセス制御過程と、を有することを特徴とする入出力制御方法である。
【発明の効果】
【００１６】
本発明によれば、データの入出力デバイスを有するＩＣカードなどの可搬型電子媒体において、上位装置からの入出力デバイスによるデータの入出力の指示を受けたときにアクセス権限を照合して入出力の指示を許可するか否かを制御することが可能となる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施形態によるＩＣカードの機能ブロック図である。
【図２】同実施形態によるプログラムとデータ部が一体となった格納方法の例を示す図である。
【図３】同実施形態によるファイルごとにアクセス権限を得るための条件を設定する場合の条件情報の格納方法の例を示す図である。
【図４】同実施形態によるファイルをまとめたアプリケーションごとにアクセス権限を得るための条件を設定する場合の条件情報の格納方法を示す図である。
【図５】同実施形態によるプログラムとデータ部が一体で記憶されているアプリケーション記憶領域に条件情報を記憶する場合の格納方法の例を示す図である。
【図６】同実施形態による認証実行状態情報の例を示す図である。
【図７】同実施形態による表示コマンドを受信した場合のＩＣカードの動作を示すフロー図である。
【図８】同実施形態によるテンキー入力コマンドを受信した場合のＩＣカードの動作を示すフロー図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照しながら本発明の実施形態を詳細に説明する。
本発明の一実施形態による可搬型電子媒体であるＩＣカードは、ディスプレー等の出力デバイスとテンキー等の入力デバイスとの少なくとも一方を有する。ＩＣカードが、上位の装置からの命令によって、出力デバイスのバッファにメモリ内のデータを転送するとき、あるいは、入力デバイスのバッファから入力データをメモリ内に転送して書き込むときにアクセス制御が存在しないと、メモリ内に格納されているデータを自由に表示させたり、メモリ内に格納されているデータが入力デバイスから入力されたデータにより不用意に書き換えられたりする。このような弊害を防ぐため、本実施形態のＩＣカードは、メモリ内に格納しているデータに対してファイル単位あるいはアプリケーション単位にアクセス権限を設ける。本実施形態のＩＣカードは、ある一定のアクセス権限を得ていない場合には、メモリ内のデータの出力デバイスへのデータ転送を制限したり、入力デバイスにより入力されたデータのメモリ内への転送を制限したりするアクセス制御を行う。
【００１９】
本実施形態のＩＣカードは、上記のアクセス制御を、パスワードや暗証番号の照合、暗号鍵によるチャレンジ／レスポンス等の認証、生体認証などの認証機能の実行状態に基づいてアクセス権限があるか否かを判断することにより行う。つまり、本実施形態のＩＣカードは、各認証機能の実行状態を保持し、出力デバイスへのメモリ内のデータの転送、あるいは、入力デバイスから入力されたデータのメモリ内への転送の可否を、上述した認証機能のうち必要な認証機能の実行状態を確認して制御する。必要な認証機能は、複数の認証機能の組み合わせであってよく、いずれか１つの認証機能であってもよい。複数の認証機能の組み合わせによってアクセス権限を確認することにより、例えば、パスワードの照合の成功のみでは、データの表示を許可するがテンキーからの入力を制限し、パスワードの照合が成功し、さらに、チャレンジ／レスポンスの暗号鍵の照合も成功した場合は、データの表示もテンキーからの入力も許可する、などの種々組み合わせた制御が可能となる。
以下では、ＩＣカードが、出力デバイスとしてディスプレーを、入力デバイスとしてテンキーを備える場合について説明する。データの出力は、ディスプレー（表示デバイス）への表示に相当する。
【００２０】
図１は、本発明の一実施形態によるＩＣカード１の構成図である。ＩＣカード１は、非接触通信を行う非接触型ＩＣカード、接触通信を行う接触型ＩＣカード、非接触通信と接触通信の両方を行う複合型ＩＣカードのいずれであってもよいが、同図においては複合型ＩＣカードの例を示している。ＩＣカード１は、接触端子部１１、非接触アンテナ部１２、ＭＰＵ（マイクロプロセッサユニット）１３、表示バッファ１４、表示装置１５、テンキー１６、及びテンキーバッファ１７を備えて構成される。
【００２１】
接触端子部１１は、リーダライタなどの外部装置から電力の供給を受けて他の機能部に電力を供給するとともに、外部との間で接触通信によりデータを送受信する。非接触アンテナ部１２は、データの搬送波として外部装置から出力される電磁波より電力を取り出して他の機能部に供給するとともに、外部装置との間で非接触通信によりデータを送受信する。接触型ＩＣカードの場合は非接触アンテナ部１２を有せず、非接触型ＩＣカードの場合は接触端子部１１を有さない。
【００２２】
ＭＰＵ１３は、ＩＣカード１のＩＣチップに搭載され、記憶部１３１、コマンドＩ／Ｏ（入出力）部１３２、及びＣＰＵ（中央処理装置）１３３を備えて構成される。
記憶部１３１は、ＲＯＭ（Read Only Memory）、ＥＥＰＲＯＭ（Electrically Erasable Programmable ROM）、ＲＡＭ（Random Access Memory）などの各種メモリにより実現される。記憶部１３１のプログラム記憶エリア（プログラム記憶領域）には、１以上のアプリケーションそれぞれのプログラムが記憶され、データ記憶エリア（データ記憶領域）には、各アプリケーションのデータを記憶する。つまり、データ記憶エリアは、各アプリケーションのデータが格納されるデータ部である。各アプリケーションのデータは、データ部にファイル単位で記憶される。また、記憶部１３１の制御エリア（制御情報記憶領域）には、入出力デバイス（入力デバイスまたは出力デバイス）との間でデータ転送を許可するためのアクセス条件を示す条件情報が、ファイル毎にあるいはアプリケーション毎に記憶される。さらに、記憶部１３１の揮発性記憶エリア（揮発性の記憶領域）は、電源の供給が絶たれると記憶内容が失われる揮発性メモリにより実現され、各種認証機能の実行状態を示す認証実行状態情報が記憶される。
【００２３】
コマンドＩ／Ｏ部１３２は、接触端子部１１または非接触アンテナ部１２が外部装置から受信したコマンドをＣＰＵ１３３に出力する機能と、ＣＰＵ１３３からコマンドに対する応答を受信して接触端子部１１または非接触アンテナ部１２に出力し、外部装置に送信させる機能を有する。
【００２４】
ＣＰＵ１３３は、コマンドＩ／Ｏ部１３２から入力されたコマンドを理解し、アプリケーションのプログラムを記憶部１３１から読み出してコマンドを実行する。このコマンドの実行により、ＣＰＵ１３３は、記憶部１３１のデータ部からのデータの読み出しや読み出したデータの出力、記憶部１３１のデータ部へのデータの書き込み、認証、暗号化等の各種の処理を行う。認証の処理には、例えば、暗証番号や生体情報の照合などがあり、暗号化の処理には、暗号鍵の照合が認証の処理として含まれる。ＣＰＵ１３３は、認証の処理の実行状態を認証実行状態情報に書き込む。ＣＰＵ１３３は、入力されたコマンドが出力デバイスへのデータの出力または入力デバイスによるデータの入力を指示するコマンドである入出力コマンドの場合、入出力コマンドの対象データが含まれるファイルに対応した条件情報、あるいは、対象データを利用するアプリケーションに対応した条件情報を記憶部１３１から読み出す。ＣＰＵ１３３は、記憶部１３１から認証実行状態情報を読み出して条件情報と照合し、アクセス条件を満たしていると判断した場合に入出力コマンドを実行する。ＣＰＵ１３３は、出力コマンドを実行する場合、記憶部１３１のデータ部から対象データを読み出して表示バッファ１４に転送し、入力コマンドを実行する場合、テンキーバッファ１７からテンキー１６により入力されたデータの転送を受け、記憶部１３１のデータ部に含まれる対象データに書き込む。
【００２５】
表示バッファ１４は、ＣＰＵ１３３から転送された対象データを記憶し、表示装置１５に対象データを表示させる。表示装置１５は、ディスプレーなどの表示デバイスであり、表示バッファ１４から転送されたデータを表示する。テンキー１６は、データの入力を受ける入力デバイスである。テンキーバッファ１７は、テンキー１６により入力されたデータを記憶し、ＣＰＵ１３３に転送する入力バッファである。
【００２６】
同図においては、出力デバイスとして表示装置１５のみを示しているが、ＩＣカード１は、表示装置１５に代えて、あるいは、表示装置１５に加えて１以上の他の出力デバイスを備え得る。また、ＩＣカード１は、テンキー１６に代えて、あるいは、テンキー１６に加えて１以上の他の入力デバイスを備え得る。ＩＣカード１が、出力デバイスを複数備える場合、それぞれの出力デバイスに対応した出力バッファを備え、ＩＣカード１が、入力デバイスを複数備える場合、それぞれの入力デバイスに対応した入力バッファを備える。なお、１つの出力バッファが複数の出力デバイスに対応してもよく、１つの入力バッファが複数の入力デバイスに対応してもよい。また、ＩＣカード１は、出力バッファ及び出力デバイスと、入力デバイス及び入力バッファとのいずれかを備えなくともよい。
【００２７】
次に記憶部１３１に格納される各データについて説明する。
まず、アプリケーションが利用するデータの格納方法を説明する。ＩＣカード１のデータは、ＩＣカードがいろいろな目的に使われることから、記憶部１３１のデータ部にファイルという形態によって記憶され、ファイルは種々の目的ごとに分かれている。また、ＩＣカード１には、複数のアプリケーションが搭載され得るため、ファイルはアプリケーション毎にまとまって記憶部１３１のデータ部に格納される。あるいは、プログラムとデータ部が一体となった格納方法も存在する。
【００２８】
図２は、プログラムとデータ部が一体となった格納方法の例である。同図では、アプリケーションＡ１、Ａ２それぞれのプログラムが記憶部１３１に格納されている場合の例を示している。同図に示すように、記憶部１３１は、アプリケーション毎のアプリケーション記憶エリアを有し、各アプリケーション記憶エリアには、対応するアプリケーションのプログラムが記憶されている。データ部は、プログラム内に含まれるようにしてもよく、アプリケーション記憶エリアが、プログラムを記憶するプログラム記憶エリアと、データ部としてデータのファイルを記憶するデータ記憶エリアとを有するようにしてもよい。
【００２９】
続いて、条件情報について説明する。
入出力デバイスによるデータの入出力を行うために必要な、つまり、アクセス権限を得るための認証機能の条件は、データ部に格納されるファイルと呼ばれる単位毎に、あるいは、ファイルを幾つかまとめてアプリケーション毎に定義できる。また、この条件は、図２に示したように、プログラムとデータが一体となったアプリケーション毎にも定義できる。このように条件を定義することによって、例えば、パスワードの照合が成功した場合、あるファイルに含まれるデータ、あるいは、あるアプリケーションが利用するデータについては表示バッファ１４への転送を許可し、他のあるファイルに含まれるデータ、あるいは、他のあるアプリケーションが利用するデータについては表示バッファ１４への転送を許可しない、などの制御が可能となる。
【００３０】
図３は、ファイルごとにアクセス権限を得るための条件を設定する場合の条件情報の格納方法を示す図である。同図に示すように、記憶部１３１の制御エリアには、いずれかのアプリケーションに用いられるファイルＦ１〜Ｆｎそれぞれに対応したエリアがあり、それらエリアのそれぞれには、対応するファイルＦ１〜Ｆｎの条件情報Ｃ１〜Ｃｎ（ｎは１以上の整数）が格納される。つまり、ファイルＦｉ（ｉは１以上ｎ以下の整数）に対応した制御エリア内のエリアには、ファイルＦｉの条件情報Ｃｉが記憶される。
【００３１】
条件情報には、パスワードや暗証番号の照合、チャレンジ／レスポンス等の暗号鍵の認証、生体認証等のなかでアクセス権限を得るために必要な認証機能を示すアクセス条件が入出力コマンドの種類毎に、あるいは、入出力デバイスの種類毎に設定される。なお、全ての入出力コマンドについてアクセス条件が同じである場合、１つのアクセス条件のみを条件情報に設定してもよい。パスワードや暗証番号が複数ある場合、アクセス条件には、いずれのパスワードや暗証番号を照合する必要があるかの条件についても設定される。
【００３２】
図４は、ファイルをまとめたアプリケーションごとにアクセス権限を得るための条件を設定する場合の条件情報の格納方法を示す図である。同図では、記憶部１３１の制御エリアに、アプリケーションＡ１に対応した条件情報Ｃａが格納されている。複数のアプリケーションが搭載される場合、制御エリアに各アプリケーションに対応したエリアを設け、それらエリアに対応するアプリケーションの条件情報を格納してもよく、記憶部１３１に各アプリケーションに対応した制御エリアを設け、その制御エリアに対応するアプリケーションの条件情報を格納してもよい。なお、同図においては、概念上、制御エリアをアプリケーションの外側に記載しているが、制御エリアを、アプリケーションのプログラムやファイルが記憶されている領域に含むか否かについては任意とすることができる。
【００３３】
図５は、プログラムとデータ部が一体で記憶されているアプリケーション記憶領域に条件情報を記憶する場合の格納方法の例を示す図である。同図においては、図２に示すようにアプリケーションのプログラムとデータ部が一体で記憶されているアプリケーション記憶領域のそれぞれに、アプリケーションの条件情報を記憶している。なお、アプリケーション記憶領域に、当該アプリケーション記憶領域内に格納されているデータ部に含まれる各ファイルの条件情報を記憶するようにしてもよい。
【００３４】
続いて、認証実行状態情報について説明する。ＩＣカード１は、パスワードや暗証番号の照合の実行状態、暗号鍵によるチャレンジ／レスポンス等の認証の実行状態、生体認証の実行状態など各種認証機能の実行状態を、記憶部１３１の認証実行状態情報に格納して保持する。なお、各アプリケーションは、パスワードや暗証番号、認証用の暗号化の鍵、生体認証の生体情報などの認証情報をそれぞれ複数持つことができ、これらの認証情報は記憶部１３１のデータ部に格納される。認証実行状態情報が、それぞれの認証情報を用いた認証機能の実行状態を格納する場合、例えば、各認証情報にＩＤ番号や種別を付与し、ＩＤ番号や種別に対応付けて認証機能の実行状態を格納することができるが、他の格納方法であってもよい。
【００３５】
図６は、認証実行状態情報の例を示す図である。同図において認証実行状態情報は、それぞれの認証機能の処理が、実行し成功した状態（認証機能実行成功）であるか、実行し失敗したあるいは未実施の状態（認証機能実行失敗または未実行）であるか、のいずれかの状態を格納する。これにより、１つの認証機能の実行状態を１ビットで表すことができる。ＣＰＵ１３３は、記憶部１３１のデータ部から読み出したデータの表示バッファ１４への転送、あるいは、テンキーバッファ１７から転送されたデータによる記憶部１３１のデータ部への書き込みの実行可否を、アクセス権限を得るために必要な認証機能が実行し成功した状態であるかを認証実行状態情報により確認して制御する。アクセス権限を得るために必要な認証機能は、条件情報から読み出される。
【００３６】
続いて、ＩＣカード１の処理を説明する。
ＩＣカード１の接触端子部１１は、上位の装置から電力の供給が開始されると、他の機能部へ電力を供給する。あるいは、非接触アンテナ部１２は、上位の装置からの電磁波の受信を開始すると、電磁波から取り出した電力を他の機能部へ供給する。ＩＣカード１の接触端子部１１または非接触アンテナ部１２は、上位の装置からのコマンドを受信してコマンドＩ／Ｏ部１３２に出力し、コマンドＩ／Ｏ部１３２は、受信したコマンドをＣＰＵ１３３に出力する。
【００３７】
ＣＰＵ１３３は、受信したコマンドが入出力コマンドではない場合、記憶部１３１からアプリケーションのプログラムを読み出し、受信したコマンドを実行する。受信したコマンドがアプリケーションの選択である場合、ＣＰＵ１３３は、コマンドで指定されたアプリケーションのプログラムを読み出して実行し、当該アプリケーションのデータ部を選択する。受信したコマンドがデータの読み出しや書き込みのコマンドである場合、ＣＰＵ１３３は、選択されているアプリケーションのデータ部から、コマンドで指定されたデータが含まれるファイルを選択し、選択したファイルに対してデータの読み出しや書き込みを行う。受信したコマンドが認証機能の実行指示である場合、ＣＰＵ１３３は、コマンドにより指定された認証機能により認証処理を実行する。
【００３８】
例えば、実行が指示された認証機能がパスワードの照合である場合、ＣＰＵ１３３は、テンキーバッファ１７からテンキー１６により入力されたパスワード、あるいは、上位の装置から受信したパスワードと、記憶部１３１から読み出した現在選択されているアプリケーションのパスワードとを照合する。また、例えば、実行が指示された認証機能が暗号鍵によるチャレンジ／レスポンス等の認証である場合、ＣＰＵ１３３は、上位の装置にチャレンジ送信を行い、チャレンジ送信に対応して返送されたレスポンスを記憶部１３１に記憶から読み出した現在選択されているアプリケーションの鍵情報を用いて復号し、復号により得られた情報が正しいかにより認証を行う。また、例えば、実行が指示された認証機能が生体情報の照合である場合、ＣＰＵ１３３は、ＩＣカード１が備える図示しない生体情報読取装置（入力デバイス）が読み取った生体情報、あるいは、上位の装置が読み取ってＩＣカード１に送信した生体情報と記憶部１３１から読み出した現在選択されているアプリケーションの生体情報とを照合する。
【００３９】
ＣＰＵ１３３は、認証が成功した場合、成功した認証機能に対応するビットに認証機能実行成功を設定した認証実行状態情報を、記憶部１３１の揮発性記憶エリアに格納する。なお、選択されているアプリケーションの認証実行状態情報が既に揮発性記憶エリアに記憶されている場合、ＣＰＵ１３３は、既に記憶されている認証実行状態情報に対して、成功した認証機能に対応したビットに認証機能実行成功を設定する。
以下に、入出力コマンドである表示コマンド、テンキー入力コマンドを受信した場合の動作について説明する。
【００４０】
図７は、表示コマンドを受信した場合のＩＣカード１の動作を示すフロー図である。
ＩＣカード１のＣＰＵ１３３は、コマンドＩ／Ｏ部１３２から接触端子部１１または非接触アンテナ部１２が上位の装置から受信した表示コマンドの入力を受ける（ステップＳ１０５）。ＣＰＵ１３３は、受信した表示コマンドが、対象ファイルにカレントファイルを指定したコマンドであるか、対象ファイルを指定したコマンドであるかを判断する（ステップＳ１１０）。
【００４１】
ＣＰＵ１３３は、受信した表示コマンドが、対象ファイルにカレントファイルを指定したコマンドであると判断した場合（ステップＳ１１０：カレントファイル指定）、カレントファイルを対象ファイルとする（ステップＳ１１５）。カレントファイルとは、ＣＰＵ１３３が受信済みの他のコマンドを実行することによって現在作業対象としているファイルである。
【００４２】
ＣＰＵ１３３は、対象ファイルに対応した条件情報または現在選択されているアプリケーションに対応した条件情報を記憶部１３１から読み出す（ステップＳ１２０）。ＣＰＵ１３３は、選択されているアプリケーションの認証実行状態情報を記憶部１３１から読み出す。ＣＰＵ１３３は、読み出した認証実行状態情報が示す認証機能の実行状態が、ステップＳ１２０において読み出した条件情報に、受信した表示コマンド、あるいは、受信した表示コマンドにより指定された表示デバイス（表示装置１５）に対応付けて設定されているアクセス条件を満たしているか否かを判断する（ステップＳ１２５）。
【００４３】
ＣＰＵ１３３は、アクセス条件を満たしていると判断した場合（ステップＳ１２５：ＹＥＳ）、記憶部１３１のデータ部に設定されている対象ファイルから、表示対象のデータである表示データを読み出す（ステップＳ１３０）。ＣＰＵ１３３は、ステップＳ１３０において読み出した表示データを表示バッファ１４に転送する。表示バッファ１４は、ＣＰＵ１３３から転送された表示データを表示装置１５に表示させる（ステップＳ１３５）。一方、ステップＳ１２５において、ＣＰＵ１３３は、アクセス条件を満たしていないと判断した場合（ステップＳ１２５：ＮＯ）、表示コマンドの実行を中止し、所定のエラー処理を行う（ステップＳ１４０）。例えば、ＣＰＵ１３３は、エラーを示すレスポンスを上位の装置に出力する。
【００４４】
なお、ステップＳ１１０において、ＣＰＵ１３３は、受信した表示コマンドが、対象ファイルを指定したコマンドであると判断した場合（ステップＳ１１０：コマンドでファイル指定）、記憶部１３１のデータ部に記憶されているファイルの中から、表示コマンドにより指定されたファイルを選択する（ステップＳ１４５）。ＣＰＵ１３３は、表示コマンドで指定されたファイルがデータ部に存在する場合（ステップＳ１５０：ＮＯ）、選択したファイルを対象ファイルとしてステップＳ１２０からの処理を行う。一方、ＣＰＵ１３３は、表示コマンドで選択されたファイルがデータ部に存在しない場合（ステップＳ１５０：ＹＥＳ）、表示コマンドの実行を中止し、所定のエラー処理を行う（ステップＳ１５５）。例えば、ＣＰＵ１３３は、エラーを示すレスポンスを上位の装置に出力する。
【００４５】
図８は、テンキー入力コマンドを受信した場合のＩＣカード１の動作を示すフロー図である。
ＩＣカード１のＣＰＵ１３３は、コマンドＩ／Ｏ部１３２から接触端子部１１または非接触アンテナ部１２が上位の装置から受信したテンキー入力コマンドの入力を受ける（ステップＳ２０５）。ＣＰＵ１３３は、受信したテンキー入力コマンドが、対象ファイルにカレントファイルを指定したコマンドであるか、対象ファイルを指定したコマンドであるかを判断する（ステップＳ２１０）。
【００４６】
ＣＰＵ１３３は、受信したテンキー入力コマンドが、対象ファイルにカレントファイルを指定したコマンドであると判断した場合（ステップＳ２１０：カレントファイル指定）、カレントファイルを対象ファイルとする（ステップＳ２１５）。ＣＰＵ１３３は、対象ファイルに対応した条件情報または現在選択されているアプリケーションに対応した条件情報を記憶部１３１から読み出す（ステップＳ２２０）。ＣＰＵ１３３は、選択されているアプリケーションの認証実行状態情報を記憶部１３１から読み出す。ＣＰＵ１３３は、読み出した認証実行状態情報が示す認証機能の実行状態が、ステップＳ２２０において読み出した条件情報に、受信したテンキー入力コマンド、あるいは、受信したテンキー入力コマンドにより指定された入力デバイス（テンキー１６）に対応付けて設定されているアクセス条件を満たしているか否かを判断する（ステップＳ２２５）。
【００４７】
ＣＰＵ１３３は、アクセス条件を満たしていると判断した場合（ステップＳ２２５：ＹＥＳ）、テンキー入力の実行をテンキーバッファ１７に指示する（ステップＳ２３０）。テンキーバッファ１７は、テンキー１６により入力されたデータを記憶し、ＣＰＵ１３３に転送する。ＣＰＵ１３３は、記憶部１３１のデータ部に設定されている対象ファイルに、テンキーバッファ１７から転送されたデータを書き込む（ステップＳ２３５）。一方、ステップＳ２２５において、ＣＰＵ１３３は、アクセス条件を満たしていないと判断した場合（ステップＳ２２５：ＮＯ）、テンキー入力コマンドの実行を中止し、所定のエラー処理を行う（ステップＳ２４０）。例えば、ＣＰＵ１３３は、エラーを示すレスポンスを上位の装置に出力する。
【００４８】
なお、ステップＳ２１０において、ＣＰＵ１３３は、受信したテンキー入力コマンドが、対象ファイルを指定したコマンドであると判断した場合（ステップＳ２１０：コマンドでファイル指定）、記憶部１３１のデータ部に記憶されているファイルの中から、テンキー入力コマンドにより指定されたファイルを選択する（ステップＳ２４５）。ＣＰＵ１３３は、テンキー入力コマンドで指定されたファイルがデータ部に存在する場合（ステップＳ２５０：ＮＯ）、選択したファイルを対象ファイルとしてステップＳ２２０からの処理を行う。一方、ＣＰＵ１３３は、テンキー入力コマンドで選択されたファイルがデータ部に存在しない場合（ステップＳ２５０：ＹＥＳ）、テンキー入力コマンドの実行を中止し、所定のエラー処理を行う（ステップＳ２５５）。例えば、ＣＰＵ１３３は、エラーを示すレスポンスを上位の装置に出力する。
【００４９】
以上説明した実施形態によれば、入出力デバイス（入力デバイスと出力デバイスの少なくとも一方）を有する可搬型電子媒体（ＩＣカード）は、ファイル単位、あるいは、アプリケーション単位にアクセス権限を設け、メモリに記憶しているデータの表示や、テンキーから入力されたデータのメモリへの書き込みなどを指示する入出力コマンドを、上位装置における任意のタイミングで受ける。可搬型電子媒体は、入出力コマンドを受信すると、認証機能の実行結果により、すなわち、入出力コマンドで入出力対象とするデータが含まれるファイルまたはそのデータを利用するアプリケーションが指定する認証をすでに終えているか否かにより、アクセス権限があるか否かを判断する。つまり、可搬型電子媒体は、入出力を指示するまでの上位装置からの制御によって、すでにアクセス権限を獲得しているか否かを判断する。可搬型電子媒体は、アクセス権限を獲得していると判断した場合にのみ、入出力デバイスとの間のデータ転送を行い、受信した入出力コマンドを実行する。従って、ＩＣカードに格納されているデータのセキュリティを高めることができ、特に、マスター／スレーブ制御によって上位装置からＩＣカードを制御する場合に好適である。
【００５０】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００５１】
１  ＩＣカード
１１  接触端子部
１２  非接触アンテナ部
１３  ＭＰＵ
１３１  記憶部
１３２  コマンドＩ／Ｏ部
１３３  ＣＰＵ（認証部、アクセス制御部）
１４  表示バッファ（バッファ部）
１５  表示装置（入出力部）
１６  テンキー（入出力部）
１７  テンキーバッファ（バッファ部）
【図１】
2015130001.tif 000003
【図２】
2015130001.tif 000004
【図３】
2015130001.tif 000005
【図４】
2015130001.tif 000006
【図５】
2015130001.tif 000007
【図６】
2015130001.tif 000008
【図７】
2015130001.tif 000009
【図８】
2015130001.tif 000010