(57)【特許請求の範囲】
【請求項１】
ＩＣカードとの間でＡＰＤＵによる通信を行い、前記ＩＣカードに格納されているＩＣカードアプリケーションとの間でシーケンス処理を行うＩＣカード制御装置であって、
シーケンスの識別名が格納され、かつ、前記シーケンスの識別名に対応するシーケンス処理の実行内容を表すコマンド、シーケンス処理の実行に必要な情報を定義する入力パラメータ、及びシーケンス処理の結果を定義する出力パラメータが、シーケンス処理毎に格納された定義ファイルと、
シーケンスの識別名に対応するコマンド、入力パラメータ及び出力パラメータを前記定義ファイルから読み出し、コマンド及び入力パラメータの情報を渡して出力パラメータの情報を受け取るシーケンス制御部と、
前記コマンド及び入力パラメータの情報をシーケンス制御部から受け取り、コマンドに基づき入力パラメータの情報を用いて所定の関数処理を実行して出力パラメータの情報を作成し、シーケンス制御部に渡す内部コマンド実行部と、
前記コマンド及び入力パラメータの情報をシーケンス制御部から受け取り、コマンドに基づき入力パラメータの情報を用いて送信ＡＰＤＵコマンドを作成し、シーケンス制御部に渡すと共に、ＩＣカードアプリケーションから送信されてきた受信ＡＰＤＵコマンドをシーケンス制御部から受け取りデコードし、デコードしたデータを出力パラメータの情報としてシーケンス制御部に渡すＡＰＤＵコマンド実行部と、
前記ＡＰＤＵコマンド実行部により作成された送信ＡＰＤＵコマンドをシーケンス制御部から受け取りＩＣカードアプリケーションへ送信すると共に、ＩＣカードアプリケーションから送信されてきた受信ＡＰＤＵコマンドを受信してシーケンス制御部に渡すＡＰＤＵ送受信部とを具え、
前記シーケンス制御部は、
前記定義ファイルからコマンド、入力パラメータ及び出力パラメータを読み出した後、
前記内部コマンド実行部に、コマンド及び入力パラメータの情報を渡し、送信ＡＰＤＵコマンドを作成するために必要な出力パラータの情報を作成させ、
前記ＡＰＤＵコマンド実行部に、コマンドと共に、内部コマンド実行部に作成させた出力パラメータの情報を入力パラメータの情報として渡し、送信ＡＰＤＵコマンドを作成させ、ＩＣカードアプリケーションとの間の通信の後に、ＩＣカードアプリケーションから送信されてきた受信ＡＰＤＵコマンドをデコードさせ、
前記内部コマンド実行部に、コマンドと共に、ＡＰＤＵコマンド実行部にデコードさせたデータを入力パラメータの情報として渡し、シーケンス処理の結果である出力パラメータの情報を作成させることを特徴とするＩＣカード制御装置。
【請求項２】
前記定義ファイルは、内部コマンド実行部が実行する関数処理を特定するための情報を含むことを特徴とする請求項１に記載のＩＣカード制御装置。
【請求項３】
前記ＩＣカードを、複数のＩＣカードアプリケーションが格納されているマルチアプリケーションのＩＣカードとし、
前記定義ファイルは、シーケンスの識別名、コマンド、入力パラメータ及び出力パラメータが、ＩＣカードアプリケーション毎に格納されていることを特徴とする請求項１又は２に記載のＩＣカード制御装置。
【請求項４】
前記定義ファイルに、内部コマンド実行部により実行されるチャレンジの生成のためのコマンドについて、チャレンジ長を定義する入力パラメータ、及びチャレンジを定義する出力パラメータが格納され、ＡＰＤＵコマンド実行部により実行される、チャレンジから送信ＡＰＤＵコマンドを作成してＩＣカードアプリケーションとの間の通信の後に受信ＡＰＤＵコマンドに含まれる署名データをデコードするためのコマンドについて、チャレンジを定義する入力パラメータ、及び署名データを定義する出力パラメータが格納され、さらに、内部コマンド実行部により実行される署名データの検証のためのコマンドについて、公開鍵及び署名データを定義する入力パラメータ、及び検証結果を定義する出力パラメータが格納されている場合に、
前記シーケンス制御部は、
前記定義ファイルからコマンド、入力パラメータ及び出力パラメータを読み出した後、
前記内部コマンド実行部に、チャレンジの生成のためのコマンド及び入力パラメータの情報としてチャレンジ長を渡し、チャレンジを作成させ、出力パラメータの情報としてチャレンジを内部コマンド実行部から受け取り、
前記ＡＰＤＵコマンド実行部に、
チャレンジから送信ＡＰＤＵコマンドを作成するためのコマンド、及び入力パラメータの情報としてチャレンジを渡し、送信ＡＰＤＵコマンドを作成させ、
ＩＣカードアプリケーションとの間の通信の後に、受信ＡＰＤＵコマンドに含まれる署名データをデコードさせ、出力パラメータの情報として署名データをＡＰＤＵコマンド実行部から受け取り、
前記内部コマンド実行部に、署名データの検証のためのコマンド、入力パラメータの情報として公開鍵及び署名データを渡し、公開鍵を用いて署名データを検証させ、出力パラメータの情報として検証結果を内部コマンド実行部から受け取ることを特徴とする請求項１から４までのいずれか一項に記載のＩＣカード制御装置。
【請求項５】
ＩＣカードとの間でＡＰＤＵによる通信を行い、前記ＩＣカードに格納されているＩＣカードアプリケーションとの間でシーケンス処理を行うＩＣカード制御装置が、シーケンスの識別名が格納され、かつ、前記シーケンスの識別名に対応するシーケンス処理の実行内容を表すコマンド、シーケンス処理の実行に必要な情報を定義する入力パラメータ、及びシーケンス処理の結果を定義する出力パラメータがシーケンス処理毎に格納された定義ファイルと、シーケンス処理部と、内部コマンド実行部と、ＡＰＤＵコマンド実行部と、ＡＰＤＵ送受信部とを具えている場合に、
前記ＩＣカード制御装置を構成するコンピュータに、
シーケンス制御部が、シーケンスの識別名に対応するコマンド、入力パラメータ及び出力パラメータを前記定義ファイルから読み出し、コマンド及び入力パラメータの情報を渡す処理と、
内部コマンド実行部が、コマンド及び入力パラメータの情報をシーケンス処理部から受け取り、コマンドに基づき入力パラメータの情報を用いて所定の関数処理を実行し、送信ＡＰＤＵコマンドを作成するために必要な出力パラメータの情報を作成し、シーケンス制御部に渡す処理と、
ＡＰＤＵコマンド実行部が、コマンドと共に、前記内部コマンド実行部により作成された出力パラメータの情報を入力パラメータの情報としてシーケンス処理部から受け取り、コマンドに基づき入力パラメータの情報を用いて送信ＡＰＤＵコマンドを作成し、前記送信ＡＰＤＵコマンドをシーケンス制御部に渡し、ＡＰＤＵ送受信部によるＩＣアプリケーションカードとの間の通信の後に、ＩＣカードアプリケーションから送信されてきた受信ＡＰＤＵコマンドをシーケンス制御部から受け取りデコードし、デコードしたデータを出力パラメータの情報としてシーケンス制御部に渡す処理と、
内部コマンド実行部が、コマンドと共に、前記ＡＰＤＵコマンド実行部によりデコードされたデータを入力パラメータの情報としてシーケンス処理部から受け取り、コマンドに基づき入力パラメータの情報を用いて所定の関数処理を実行し、シーケンス処理の結果である出力パラメータの情報を作成し、シーケンス制御部に渡す処理とを実行させるＩＣカード制御プログラム。
【請求項６】
請求項５に記載のＩＣカード制御プログラムが記録されている記録媒体。
【請求項７】
ＩＣカードとの間でＡＰＤＵによる通信を行い、前記ＩＣカードに格納されているＩＣカードアプリケーションとの間でシーケンス処理を行うＩＣカード端末であって、
請求項１から４までのいずれか一項に記載の定義ファイル、内部コマンド実行部、ＡＰＤＵコマンド実行部、ＡＰＤＵ送受信部及びシーケンス制御部を具えたことを特徴とするＩＣカード端末。
【請求項８】
ＩＣカード、ＩＣカード端末及びＩＣカードサーバを具えた通信システムの下で、前記ＩＣカードとの間でＩＣカード端末を介してＡＰＤＵによる通信を行い、ＩＣカードに格納されているＩＣカードアプリケーションとの間でシーケンス処理を行うＩＣカードサーバであって、
請求項１から４までのいずれか一項に記載の定義ファイル、内部コマンド実行部、ＡＰＤＵコマンド実行部、ＡＰＤＵ送受信部及びシーケンス制御部を具えたことを特徴とするＩＣカードサーバ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ＩＣカードと端末又はサーバとの間で各種シーケンス処理を行うＩＣカード制御アプリケーション、特に多様なシーケンス処理に柔軟に対応することができるＩＣカード制御アプリケーションに関するものである。さらに、本発明は、このようなＩＣカード制御アプリケーションが搭載されているＩＣカード端末及びＩＣカードサーバに関するものである。
【０００２】
【従来の技術】
ＩＣカードシステムにおいては、ＩＣカードサーバとＩＣカードとの間のデータの交換である各種のシーケンス処理が実行される。例えば、ＩＣカードとサーバとの間のデータ交換に先立って、相互認証シーケンスが実行される。この相互認証シーケンスとして、ＩＣカードに格納されているＩＣカードアプリケーションの正当性を確認するための内部認証並びにサーバ又は端末装置に搭載されているＩＣカード制御アプリケーションの正当性を確認するための外部認証が実行される。そして、これら認証結果として正当である結果が確認された後、ＩＣカード制御アプリケーションからの要求がＩＣカードアプリケーションにより受け付けられ各種シーケンス処理が実行される。
【０００３】
シーケンス処理の一例である相互認証方法として、共通鍵暗号方式及び公開鍵暗号方式等の種々の方法が用いられている。従来、暗号及び署名処理は、一般的には提供される暗号ライブラリが用いられ、プログラムとして直接記述されている。また、認証処理シーケンス全体はＩＣカードアプリケーションの仕様やＩＣカードシステム全体について規定されているセキュリティに基づいて個々のシステム毎に個別に実装されている。
【０００４】
【発明が解決しようとする課題】
プロセッサの性能の向上に伴い、暗号解読のスピードも向上している。従って、暗号技術の向上に伴い、一旦設定されたチャレンジ長や暗号の種類を更改して一層高いセキュリティを確保する必要性も高くなっている。しかしながら、一旦設定されたチャレンジ長を変更したり或いは暗号の種類を変更することは、認証プロトコルのプログラムの更改につながり、極めて煩雑な変更手続を必要とする不都合があった。
【０００５】
認証シーケンス処理は全てのＩＣカードに必須の機能であり、高度のセキュリティの知識を要するためパッケージやライブラリとして提供されることが好ましい。しかし、ＩＣカード及びＩＣカードアプリケーションは限られたセキュリティ機能しか持たず、ＩＣカード毎に或いはＩＣカードアプリケーション毎に認証シーケンスが規定されているため、ＩＣカード制御アプリケーション側において統一的に認証シーケンス処理を定義又はライブラリ化することは困難であった。従って、端末装置又はサーバに搭載されているＩＣカード制御アプリケーションは、多様な認証シーケンスが搭載されているＩＣカード或いはＩＣカードアプリケーション毎に柔軟に対応できることが要請されている。
【０００６】
このようなＩＣカード制御アプリケーションの柔軟な対応は、認証シーケンス処理だけでなく、各種のシーケンス処理についても強く要請されている。すなわち、各種のシーケンス処理においても一旦設定された入力パラメータをその後修正又は変更する要求が多々あるため、このような要求に対して柔軟に対応できる必要がある。
【０００７】
従って、本発明の目的は、一旦設定された認証シーケンスが変更されてもプログラムを変更することなく柔軟に対応できるＩＣカード制御アプリケーションを提供することにある。
【０００８】
さらに、本発明の別の目的は、ＩＣカード毎に或いはＩＣカードのアプリケーション毎に認証シーケンスが相違しても単一のＩＣカード制御アプリケーションにより対応することができ、多様な認証シーケンスに柔軟に対応することができるＩＣカード制御アプリケーションを提供することにある。
【０００９】
【課題を解決するための手段】
本発明によるＩＣカード制御装置は、ＩＣカードとの間でＡＰＤＵによる通信を行い、前記ＩＣカードに格納されているＩＣカードアプリケーションとの間でシーケンス処理を行うＩＣカード制御装置であって、
シーケンスの識別名が格納され、かつ、前記シーケンスの識別名に対応するシーケンス処理の実行内容を表すコマンド、シーケンス処理の実行に必要な情報を定義する入力パラメータ、及びシーケンス処理の結果を定義する出力パラメータが、シーケンス処理毎に格納された定義ファイルと、
シーケンスの識別名に対応するコマンド、入力パラメータ及び出力パラメータを前記定義ファイルから読み出し、コマンド及び入力パラメータの情報を渡して出力パラメータの情報を受け取るシーケンス制御部と、
前記コマンド及び入力パラメータの情報をシーケンス制御部から受け取り、コマンドに基づき入力パラメータの情報を用いて所定の関数処理を実行して出力パラメータの情報を作成し、シーケンス制御部に渡す内部コマンド実行部と、
前記コマンド及び入力パラメータの情報をシーケンス制御部から受け取り、コマンドに基づき入力パラメータの情報を用いて送信ＡＰＤＵコマンドを作成し、シーケンス制御部に渡すと共に、ＩＣカードアプリケーションから送信されてきた受信ＡＰＤＵコマンドをシーケンス制御部から受け取りデコードし、デコードしたデータを出力パラメータの情報としてシーケンス制御部に渡すＡＰＤＵコマンド実行部と、
前記ＡＰＤＵコマンド実行部により作成された送信ＡＰＤＵコマンドをシーケンス制御部から受け取りＩＣカードアプリケーションへ送信すると共に、ＩＣカードアプリケーションから送信されてきた受信ＡＰＤＵコマンドを受信してシーケンス制御部に渡すＡＰＤＵ送受信部とを具え、
前記シーケンス制御部は、
前記定義ファイルからコマンド、入力パラメータ及び出力パラメータを読み出した後、
前記内部コマンド実行部に、コマンド及び入力パラメータの情報を渡し、送信ＡＰＤＵコマンドを作成するために必要な出力パラータの情報を作成させ、
前記ＡＰＤＵコマンド実行部に、コマンドと共に、内部コマンド実行部に作成させた出力パラメータの情報を入力パラメータの情報として渡し、送信ＡＰＤＵコマンドを作成させ、ＩＣカードアプリケーションとの間の通信の後に、ＩＣカードアプリケーションから送信されてきた受信ＡＰＤＵコマンドをデコードさせ、
前記内部コマンド実行部に、コマンドと共に、ＡＰＤＵコマンド実行部にデコードさせたデータを入力パラメータの情報として渡し、シーケンス処理の結果である出力パラメータの情報を作成させることを特徴とするものである。
【００１０】
本発明では、各種シーケンス処理の実行に必要なプログラムと、シーケンス処理に用いられるデータとを分離する。そして、定義ファイルを設け、当該定義ファイルには、シーケンス処理の実行内容を示すコマンド、シーケンス処理の実行に必要な情報を定義する入力パラメータ及びシーケンス処理の結果を定義する出力パラメータを格納する。さらに、本発明では、シーケンス制御部を設け、内部コマンド実行部と、ＡＰＤＵコマンド実行部との間のデータの受け渡しを制御する。この結果、一旦シーケンス処理に必要な各種のパラメータが設定された後に当該パラメータ又はその一部を修正或いは更改する必要性が生じても、プログラムを変更することなく定義ファイルの内容を修正するだけで対応することができる利点が達成される。
【００１１】
さらに、本発明では、処理の対象となるＩＣカードアプリケーション毎に規定された定義ファイルを有するので、ＩＣカードアプリケーション毎にシーケンス処理に必要なパラメータやデータ或いはコマンドが相違しても、単一のＩＣカード制御アプリケーションを用いて柔軟に対応することができる。さらに、実行すべきシーケンス処理毎に規定された定義ファイルを有することができるので、シーケンス処理の追加や変更の必要性が生じても定義ファイルを追加又は修正するだけ対応することができる。
【００１２】
さらに、各種シーケンス処理におけるコマンドを実行するためのプログラムは内部コマンド実行部及びＡＰＤＵコマンド実行部がそれぞれ有するので、定義ファイルは、シーケンスの識別名、コマンド、入力パラメータ及び出力パラメータを有するだけで対応することができ、定義ファイルに格納される情報量を少なくすることができる。
【００１３】
【発明の実施の形態】
図１は本発明によるＩＣカードシステムの全体構成の一例を示す線図である。ＩＣカード１は、ＩＣカード端末２を介してサーバ３とデータ通信を行う。本例のＩＣカード１は、マルチアプリケーションシステムのＩＣカードであり、同一の又は異なるサービスプロバイダのサーバからダウンロードしたＮ個のＩＣカードアプリケーション１〜Ｎが格納されている。ＩＣカード端末２はＩＣカード端末アプリケーションを有し、サーバ３はＩＣカード制御アプリケーションを有し、サーバ３とＩＣカード１との間の認証シーケンス及びデータ通信はサーバ３に搭載されているＩＣカード制御アプリケーションの制御のもとで行われる。尚、ＩＣカード制御アプリケーションはサーバに搭載されている場合だけでなく、ＩＣカード端末２に搭載されている場合にも本発明を適用することができる。
【００１４】
図２は、本発明によるＩＣカード制御アプリケーションの一例の構成を示す線図である。ＩＣカード制御アプリケーションは、ＩＣカードに格納されているＩＣカードアプリケーションとの間において各種シーケンス処理を実行する際、実行すべきシーケンス処理の特定等の全体の制御を行うメイン処理部１０を有する。また、各種のシーケンスについて処理を行うシーケンス処理部１１を有する。このシーケンス処理部１１は、単一のシーケンス処理部１１により複数の各種シーケンスに対応することができ、或いはシーケンス毎にシーケンス処理部１１を設けることもできる。このシーケンス処理部１１はシーケンス制御部１２及び定義ファイル１３を有する。シーケンス制御部１２は、当該シーケンス処理における処理を制御し、例えば定義ファイル１３に格納されている情報の読み出し及び転送を制御する。定義ファイル１３は、処理シーケンスの識別名、シーケンス処理の実行に必要な入力パラメータ情報、シーケンス処理手順、及び処理結果を表す出力パラメータ情報を各種シーケンス処理毎に並びに各種ＩＣカードアプリケーション毎に有する。さらに、このＩＣカード制御アプリケーションは、定義ファイル１３に記述された入力パラメータ情報及びシーケンス処理手順に従って、所定の関数処理を実行し、定義ファイル１３に記述された出力パラメータ情報を作成する内部コマンド実行部１４、定義ファイル１３に記述された入力パラメータ情報を元に送信ＡＰＤＵコマンドを作成すると共に、ＩＣカードアプリケーションから送られてきた受信ＡＰＤＵコマンドをデコードするＡＰＤＵコマンド実行部１５、及び送信ＡＰＤＵコマンドをＩＣカードアプリケーションに送信すると共にＩＣカードアプリケーションから送られてきたＡＰＤＵコマンドを受信するＡＰＤＵ送受信部１６を具える。
【００１５】
次に、シーケンス処理部１１に設けた定義ファイル１３について説明する。一例として、ＩＣカードに格納されているＩＣカードアプリケーション１と制御アプリケーションとの間で内部認証シーケンスを実行する際に用いられる定義ファイルを図３に示す。定義ファイルは、実行すべきシーケンスの識別名（本例の場合、内部認証シーケンス）、シーケンス処理の実行に必要な入力パラメータ情報（本例の場合、［入力パラメータ定義］）、処理結果を表す出力パラメータ情報（本例の場合、［出力パラメータ定義］、及びシーケンス処理手順（本例の場合、［シーケンス定義］、［処理１］、［処理２］、及び［処理３］）を有する。シーケンス定義の［処理１〜３］における「コマンド種類」は読み出されるコマンドの種類を示し、本例では内部コマンド又はＡＰＤＵコマンドが読み出される。また、コマンド名は、実行すべきコマンドないし処理の内容を示す。従って、［処理１］においては、内部コマンドが読み出され、内部コマンド実行部１４において入力パラメータ情報を用いてチャレンジの生成が行われる。また、［処理２］においては、ＡＰＤＵコマンドが読み出され、ＡＰＤＵコマンド実行部１５において送信ＡＰＤＵの生成、ＡＰＤＵ送受信部１６においてＡＰＤＵ送受信、ＡＰＤＵコマンド実行部１５にて受信ＡＰＤＵのデコードが行われる。さらに、［処理３］においては、内部コマンドが読み出され、内部コマンド実行部１４において検証が行われる。
【００１６】
尚、入力パラメータ及び出力パラメータ等の各種パラメータを一旦設定した後、セキュリティのレベルを一層高くするが望まれる場合、定義ファイルに記述されている各種パラメータ又はコマンドの処理内容を追加又は変更するだけ対応することができる。
【００１７】
図４は、認証シーケンス処理に用いられる定義ファイルの変形例を示す。
【００１８】
次に、図５を参照しながら、内部認証シーケンスの処理手順について説明する。ＩＣカード端末２にＩＣカード１が装着されると、ＩＣカード端末アプリケーションによりデータ処理すべきＩＣカードアプリケーションが特定され、ＩＣカード制御アプリケーションに送信される。メイン処理部１０は、シーケンス処理部１１に対して内部認証処理を実行すべきことを要求する。シーケンス処理部１１のシーケンス制御部１２は、定義ファイル１３を検索し、認証シーケンス処理の対象となるＩＣカードアプリケーションの認証シーケンス定義ファイルを見出す。図３に示す定義ファイルの内容がシーケンス制御部１２により読み出され、シーケンス制御部１２の制御のもとで内部認証シーケンスが実行される。初めに、入力パラメータ１＝チャレンジ長が内部コマンド実行部１４に転送され、チャレンジが生成され、シーケンス制御部１２に転送される。（処理１）
【００１９】
次に、生成されたチャレンジがＡＰＤＵコマンド実行部１５に転送され、ＡＰＤＵバイト列に変換され、送信ＡＰＤＵが生成される。この送信ＡＰＤＵはシーケンス制御部１２に転送され、シーケンス制御部１２からＡＰＤＵ送受信部１６に転送される。この送信ＡＰＤＵは、ＩＣカードアプリケーション１に転送され、ＩＣカードアプリケーション１により署名データが作成される。この署名データはＡＰＤＵ送受信部１６に返信され、ＡＰＤＵコマンド実行部１５に転送される。ＡＰＤＵコマンド実行部１５は、受信したＡＰＤＵバイト列の署名データをデコードし、処理コードに変換してシーケンス制御部１２に転送される。（処理２）
【００２０】
シーケンス制御部１２は、ＩＣカードから送られて来た署名データを、入力パラメータ＝公開鍵と共に内部コマンド実行部１４に転送する。内部コマンド実行部１４は、受信した署名データを公開鍵を用いて検証する。そして、当該ＩＣカードアプリケーションが正当なＩＣカードアプリケーションの場合、処理結果として出力パラメータ＝Resultをシーケンス制御部１２に転送する。（処理３）
【００２１】
上述した一連の処理１〜３により内部認証シーケンスが終了し、次のシーケンス処理に移行する。
【００２２】
図６は内部認証シーケンスの手順の変形例を示す。本例はシーケンス制御部１２がＡＰＤＵ送受信部１６にアクセスすることが許されないシステムにおける適用例である。本例では、メイン処理部１０が、内部認証処理を実行可能なシーケンス処理部１１及びＡＰＤＵ送受信部１６にアクセス可能である。このようなシステム構成の場合、シーケンス処理部１１は、シーケンス処理の途中でＡＰＤＵを送信するために、一旦処理を終了し、メイン処理部１０に送信ＡＰＤＵを返却しなければならない。そのためには、シーケンス処理部１１の内部において、シーケンス処理がどこまで進んだかという状態を保持しておく必要が生ずる。
従って、本例では、メイン処理部１０がシーケンス処理部１１に対して内部認証処理を実施すべきことを要求する際に、必要なパラメータの他に、セッションＩＤを渡す。シーケンス処理部１１は、認証シーケンス定義ファイルの記述に従って処理を途中まで行い、セッションＩＤを状態と共に保存し、処理を終了してメイン処理部１０に送信ＡＰＤＵとセッションＩＤを返却する。メイン処理部１０はＡＰＤＵ送受信部１６によりＡＰＤＵの送受信を行い、受信ＡＰＤＵをセッションＩＤと共にシーケンス処理部１１に送信する。シーケンス処理部１１は、以前保存した状態をセッションＩＤから検索し、シーケンスの続きの処理を行う。
【００２３】
本発明によるＩＣカード制御アプリケーションは、例えばＣＤ−ＲＯＭ等の記録媒体に格納して使用することができる。従って、本発明のＩＣカード制御アプリケーションが格納された記録媒体をＩＣカード端末２やサーバ３に装着するだけで本発明によるＩＣカード認証方式を実施することができる。
【００２４】
本発明は上述した実施例だけに限定されず種々の変形や変更が可能である。例えば、上述した実施例では、内部認証シーケンスについて説明したが、ＩＣカード制御アプリケーションの正当性を確認するための外部認証シーケンス等の種々の認証シーケンスについも適用することができる。
【００２５】
【発明の効果】
以上説明したように、本発明によれば、認証シーケンスを更改する際、コマンド実行部へのライブラリの追加及び認証シーケンス定義ファイルの変更だけで対応することができ、プログラムの修正を必要としない利点が達成される。
また、認証シーケンス処理部を多様な認証シーケンス処理に対応可能なライブラリとして提供することができる。さらに、認証シーケンス定義ファイルにＡＰＤＵ生成解読部のＩＦを定義することが可能であり、いかなるＩＣカード制御アプリケーションにも対応することができる。さらに、認証シーケンス定義ファイルの内容を変更することで、ＩＣカードの機能制限やＩＣカードアプリケーションの多様なセキュリティプロトコルに対応した多様な認証シーケンスに対応することができる。
【図面の簡単な説明】
【図１】  本発明によるＩＣカードシステムの全体構成を示す線図である。
【図２】  本発明によるＩＣカード制御アプリケーションの一例を示す線図である。
【図３】  本発明による定義ファイルの一例を示す線図である。
【図４】  本発明による定義ファイルの変形例を示す線図である。
【図５】  図２に示すＩＣカード制御アプリケーションを用いた内部認証シーケンスの手順を示す線図である。
【図６】  内部認証シーケンスの手順の変形例を示す線図である。
【符号の説明】
１  ＩＣカード
２  ＩＣカード端末
３  サーバ
１０  メイン処理部
１１  シーケンス処理部
１２  シーケンス制御部
１３  定義ファイル
１４  内部コマンド実行部
１５  ＡＰＤＵコマンド実行部
１６  ＡＰＤＵ送受信部
【図１】
0003857190.tif 000002
【図２】
0003857190.tif 000003
【図３】
0003857190.tif 000004
【図４】
0003857190.tif 000005
【図５】
0003857190.tif 000006
【図６】
0003857190.tif 000007