JP3857190B2 - IC card control device - Google Patents

IC card control device Download PDF

Info

Publication number
JP3857190B2
JP3857190B2 JP2002183307A JP2002183307A JP3857190B2 JP 3857190 B2 JP3857190 B2 JP 3857190B2 JP 2002183307 A JP2002183307 A JP 2002183307A JP 2002183307 A JP2002183307 A JP 2002183307A JP 3857190 B2 JP3857190 B2 JP 3857190B2
Authority
JP
Japan
Prior art keywords
card
command
sequence
apdu
execution unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2002183307A
Other languages
Japanese (ja)
Other versions
JP2004030055A (en
Inventor
順子 橋本
秀樹 赤鹿
勝彦 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2002183307A priority Critical patent/JP3857190B2/en
Publication of JP2004030055A publication Critical patent/JP2004030055A/en
Application granted granted Critical
Publication of JP3857190B2 publication Critical patent/JP3857190B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Credit Cards Or The Like (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ICカードと端末又はサーバとの間で各種シーケンス処理を行うICカード制御アプリケーション、特に多様なシーケンス処理に柔軟に対応することができるICカード制御アプリケーションに関するものである。さらに、本発明は、このようなICカード制御アプリケーションが搭載されているICカード端末及びICカードサーバに関するものである。
【0002】
【従来の技術】
ICカードシステムにおいては、ICカードサーバとICカードとの間のデータの交換である各種のシーケンス処理が実行される。例えば、ICカードとサーバとの間のデータ交換に先立って、相互認証シーケンスが実行される。この相互認証シーケンスとして、ICカードに格納されているICカードアプリケーションの正当性を確認するための内部認証並びにサーバ又は端末装置に搭載されているICカード制御アプリケーションの正当性を確認するための外部認証が実行される。そして、これら認証結果として正当である結果が確認された後、ICカード制御アプリケーションからの要求がICカードアプリケーションにより受け付けられ各種シーケンス処理が実行される。
【0003】
シーケンス処理の一例である相互認証方法として、共通鍵暗号方式及び公開鍵暗号方式等の種々の方法が用いられている。従来、暗号及び署名処理は、一般的には提供される暗号ライブラリが用いられ、プログラムとして直接記述されている。また、認証処理シーケンス全体はICカードアプリケーションの仕様やICカードシステム全体について規定されているセキュリティに基づいて個々のシステム毎に個別に実装されている。
【0004】
【発明が解決しようとする課題】
プロセッサの性能の向上に伴い、暗号解読のスピードも向上している。従って、暗号技術の向上に伴い、一旦設定されたチャレンジ長や暗号の種類を更改して一層高いセキュリティを確保する必要性も高くなっている。しかしながら、一旦設定されたチャレンジ長を変更したり或いは暗号の種類を変更することは、認証プロトコルのプログラムの更改につながり、極めて煩雑な変更手続を必要とする不都合があった。
【0005】
認証シーケンス処理は全てのICカードに必須の機能であり、高度のセキュリティの知識を要するためパッケージやライブラリとして提供されることが好ましい。しかし、ICカード及びICカードアプリケーションは限られたセキュリティ機能しか持たず、ICカード毎に或いはICカードアプリケーション毎に認証シーケンスが規定されているため、ICカード制御アプリケーション側において統一的に認証シーケンス処理を定義又はライブラリ化することは困難であった。従って、端末装置又はサーバに搭載されているICカード制御アプリケーションは、多様な認証シーケンスが搭載されているICカード或いはICカードアプリケーション毎に柔軟に対応でることが要請されている。
【0006】
このようなICカード制御アプリケーションの柔軟な対応は、認証シーケンス処理だけでなく、各種のシーケンス処理についても強く要請されている。すなわち、各種のシーケンス処理においても一旦設定された入力パラメータをその後修正又は変更する要求多々あるため、このような要求に対して柔軟に対応できる必要がある。
【0007】
従って、本発明の目的は、一旦設定された認証シーケンスが変更されてもプログラムを変更することなく柔軟に対応できるICカード制御アプリケーションを提供することにある。
【0008】
さらに、本発明の別の目的は、ICカード毎に或いはICカードのアプリケーション毎に認証シーケンスが相違しても単一のICカード制御アプリケーションにより対応することができ、多様な認証シーケンスに柔軟に対応することができるICカード制御アプリケーションを提供することにある。
【0009】
【課題を解決するための手段】
本発明によるICカード制御装置は、ICカードとの間でAPDUによる通信を行い、前記ICカードに格納されているICカードアプリケーションとの間でシーケンス処理を行うICカード制御装置であって、
シーケンスの識別名が格納され、かつ、前記シーケンスの識別名に対応するシーケンス処理の実行内容を表すコマンド、シーケンス処理の実行に必要な情報を定義する入力パラメータ、及びシーケンス処理の結果を定義する出力パラメータが、シーケンス処理毎に格納された定義ファイルと、
シーケンスの識別名に対応するコマンド、入力パラメータ及び出力パラメータを前記定義ファイルから読み出し、コマンド及び入力パラメータの情報を渡して出力パラメータの情報を受け取るシーケンス制御部と、
前記コマンド及び入力パラメータの情報をシーケンス制御部から受け取り、コマンドに基づき入力パラメータの情報を用いて所定の関数処理を実行して出力パラメータの情報を作成し、シーケンス制御部に渡す内部コマンド実行部と、
前記コマンド及び入力パラメータの情報をシーケンス制御部から受け取り、コマンドに基づき入力パラメータの情報を用いて送信APDUコマンドを作成し、シーケンス制御部に渡すと共に、ICカードアプリケーションから送信されてきた受信APDUコマンドをシーケンス制御部から受け取りデコードし、デコードしたデータを出力パラメータの情報としてシーケンス制御部に渡すAPDUコマンド実行部と、
前記APDUコマンド実行部により作成された送信APDUコマンドをシーケンス制御部から受け取りICカードアプリケーションへ送信すると共に、ICカードアプリケーションから送信されてきた受信APDUコマンドを受信してシーケンス制御部に渡すAPDU送受信部とを具え、
前記シーケンス制御部は、
前記定義ファイルからコマンド、入力パラメータ及び出力パラメータを読み出した後、
前記内部コマンド実行部に、コマンド及び入力パラメータの情報を渡し、送信APDUコマンドを作成するために必要な出力パラータの情報を作成させ、
前記APDUコマンド実行部に、コマンドと共に、内部コマンド実行部に作成させた出力パラメータの情報を入力パラメータの情報として渡し、送信APDUコマンドを作成させ、ICカードアプリケーションとの間の通信の後に、ICカードアプリケーションから送信されてきた受信APDUコマンドをデコードさせ、
前記内部コマンド実行部に、コマンドと共に、APDUコマンド実行部にデコードさせたデータを入力パラメータの情報として渡し、シーケンス処理の結果である出力パラメータの情報を作成させることを特徴とするものである。
【0010】
本発明では、各種シーケンス処理の実行に必要なプログラムと、シーケンス処理に用いられるデータとを分離する。そして、定義ファイルを設け、当該定義ファイルには、シーケンス処理の実行内容を示すコマンド、シーケンス処理の実行に必要な情報を定義する入力パラメータ及びシーケンス処理の結果を定義する出力パラメータを格納する。さらに、本発明では、シーケンス制御部を設け、内部コマンド実行部と、APDUコマンド実行部との間のデータの受け渡しを制御する。この結果、一旦シーケンス処理に必要な各種のパラメータが設定された後に当該パラメータ又はその一部を修正或いは更改する必要性が生じても、プログラムを変更することなく定義ファイルの内容を修正するだけで対応することができる利点が達成される。
【0011】
さらに、本発明では、処理の対象となるICカードアプリケーション毎に規定された定義ファイルを有するので、ICカードアプリケーション毎にシーケンス処理に必要なパラメータやデータ或いはコマンドが相違しても、単一のICカード制御アプリケーションを用いて柔軟に対応することができる。さらに、実行すべきシーケンス処理毎に規定された定義ファイルを有することができるので、シーケンス処理の追加や変更の必要性が生じても定義ファイルを追加又は修正するだけ対応することができる。
【0012】
さらに、各種シーケンス処理におけるコマンドを実行するためのプログラムは内部コマンド実行部及びAPDUコマンド実行部がそれぞれ有するので、定義ファイルは、シーケンスの識別名、コマンド、入力パラメータ及び出力パラメータを有するだけで対応することができ、定義ファイルに格納される情報量を少なくすることができる。
【0013】
【発明の実施の形態】
図1は本発明によるICカードシステムの全体構成の一例を示す線図である。ICカード1は、ICカード端末2を介してサーバ3とデータ通信を行う。本例のICカード1は、マルチアプリケーションシステムのICカードであり、同一の又は異なるサービスプロバイダのサーバからダウンロードしたN個のICカードアプリケーション1〜Nが格納されている。ICカード端末2はICカード端末アプリケーションを有し、サーバ3はICカード制御アプリケーションを有し、サーバ3とICカード1との間の認証シーケンス及びデータ通信はサーバ3に搭載されているICカード制御アプリケーションの制御のもとで行われる。尚、ICカード制御アプリケーションはサーバに搭載されている場合だけでなく、ICカード端末2に搭載されている場合にも本発明を適用することができる。
【0014】
図2は、本発明によるICカード制御アプリケーションの一例の構成を示す線図である。ICカード制御アプリケーションは、ICカードに格納されているICカードアプリケーションとの間において各種シーケンス処理を実行する際、実行すべきシーケンス処理の特定等の全体の制御を行うメイン処理部10を有する。また、各種のシーケンスについて処理を行うシーケンス処理部11を有する。このシーケンス処理部11は、単一のシーケンス処理部11により複数の各種シーケンスに対応することができ、或いはシーケンス毎にシーケンス処理部11を設けることもできる。このシーケンス処理部11はシーケンス制御部12及び定義ファイル13を有する。シーケンス制御部12は、当該シーケンス処理における処理を制御し、例えば定義ファイル13に格納されている情報の読み出し及び転送を制御する。定義ファイル13は、処理シーケンスの識別名、シーケンス処理の実行に必要な入力パラメータ情報、シーケンス処理手順、及び処理結果を表す出力パラメータ情報を各種シーケンス処理毎に並びに各種ICカードアプリケーション毎に有する。さらに、このICカード制御アプリケーションは、定義ファイル13に記述された入力パラメータ情報及びシーケンス処理手順に従って、所定の関数処理を実行し、定義ファイル13に記述された出力パラメータ情報を作成する内部コマンド実行部14、定義ファイル13に記述された入力パラメータ情報を元に送信APDUコマンドを作成すると共にICカードアプリケーションから送られきた受信APDUコマンドをデコードするAPDUコマンド実行部15、及び送信APDUコマンドをICカードアプリケーションに送信すると共にICカードアプリケーションから送られてきたAPDUコマンドを受信するAPDU送受信部16を具える。
【0015】
次に、シーケンス処理部11に設けた定義ファイル13について説明する。一例として、ICカードに格納されているICカードアプリケーション1と制御アプリケーションとの間で内部認証シーケンスを実行する際に用いられる定義ファイルを図3に示す。定義ファイルは、実行すべきシーケンスの識別名(本例の場合、内部認証シーケンス)、シーケンス処理の実行に必要な入力パラメータ情報(本例の場合、[入力パラメータ定義])、処理結果を表す出力パラメータ情報(本例の場合、[出力パラメータ定義]、及びシーケンス処理手順(本例の場合、[シーケンス定義]、[処理1]、[処理2]、及び[処理3])を有する。シーケンス定義の[処理1〜3]における「コマンド種類」は読み出されるコマンドの種類を示し、本例では内部コマンド又はAPDUコマンドが読み出される。また、コマンド名は、実行すべきコマンドないし処理の内容を示す。従って、[処理1]においては、内部コマンドが読み出され、内部コマンド実行部14において入力パラメータ情報を用いてチャレンジの生成が行われる。また、[処理2]においては、APDUコマンドが読み出され、APDUコマンド実行部15において送信APDUの生成、APDU送受信部16においてAPDU送受信、APDUコマンド実行部15にて受信APDUのデコードが行われる。さらに、[処理3]においては、内部コマンドが読み出され、内部コマンド実行部14において検証が行われる。
【0016】
尚、入力パラメータ及び出力パラメータ等の各種パラメータを一旦設定した後、セキュリティのレベルを一層高くするが望まれる場合、定義ファイルに記述されている各種パラメータ又はコマンドの処理内容を追加又は変更するだけ対応することができる。
【0017】
図4は、認証シーケンス処理に用いられる定義ファイルの変形例を示す。
【0018】
次に、図5を参照しながら、内部認証シーケンスの処理手順について説明する。ICカード端末2にICカード1が装着されると、ICカード端末アプリケーションによりデータ処理すべきICカードアプリケーションが特定され、ICカード制御アプリケーションに送信される。メイン処理部10は、シーケンス処理部11に対して内部認証処理を実行すべきことを要求する。シーケンス処理部11のシーケンス制御部12は、定義ファイル13を検索し、認証シーケンス処理の対象となるICカードアプリケーションの認証シーケンス定義ファイルを見出す。図3に示す定義ファイルの内容がシーケンス制御部12により読み出され、シーケンス制御部12の制御のもとで内部認証シーケンスが実行される。初めに、入力パラメータ1=チャレンジ長が内部コマンド実行部14に転送され、チャレンジが生成され、シーケンス制御部12に転送される。(処理1)
【0019】
次に、生成されたチャレンジがAPDUコマンド実行部15に転送され、APDUバイト列に変換され、送信APDUが生成される。この送信APDUはシーケンス制御部12に転送され、シーケンス制御部12からAPDU送受信部16に転送される。この送信APDUは、ICカードアプリケーション1に転送され、ICカードアプリケーション1により署名データが作成される。この署名データはAPDU送受信部16に返信され、APDUコマンド実行部15に転送される。APDUコマンド実行部15は、受信したAPDUバイト列の署名データをデコードし、処理コードに変換してシーケンス制御部12に転送される。(処理2)
【0020】
シーケンス制御部12は、ICカードから送られて来た署名データを、入力パラメータ=公開鍵と共に内部コマンド実行部14に転送する。内部コマンド実行部14は、受信した署名データを公開鍵を用いて検証する。そして、当該ICカードアプリケーションが正当なICカードアプリケーションの場合、処理結果として出力パラメータ=Resultをシーケンス制御12に転送する。(処理3)
【0021】
上述した一連の処理1〜3により内部認証シーケンスが終了し、次のシーケンス処理に移行する。
【0022】
図6は内部認証シーケンスの手順の変形例を示す。本例はシーケンス制御部12がAPDU送受信部16にアクセスすることが許されないシステムにおける適用例ある。本例では、メイン処理部10が、内部認証処理を実行可能なシーケンス処理部11及びAPDU送受信部16にアクセス可能である。このようなシステム構成の場合、シーケンス処理部11は、シーケンス処理の途中でAPDUを送信するために、一旦処理を終了し、メイン処理部10に送信APDUを返却しなければならない。そのためには、シーケンス処理部11の内部において、シーケンス処理がどこまで進んだかという状態を保持しておく必要が生ずる。
従って、本例では、メイン処理部10がシーケンス処理部11に対して内部認証処理を実施すべきことを要求する際に、必要なパラメータの他に、セッションIDを渡す。シーケンス処理部11は、認証シーケンス定義ファイルの記述に従って処理を途中まで行い、セッションIDを状態と共に保存し、処理を終了してメイン処理部10に送信APDUとセッションIDを返却する。メイン処理部10はAPDU送受信部16によりAPDUの送受信を行い、受信APDUをセッションIDと共にシーケンス処理部11に送信する。シーケンス処理部11は、以前保存した状態をセッションIDから検索し、シーケンスの続きの処理を行う。
【0023】
本発明によるICカード制御アプリケーションは、例えばCD−ROM等の記録媒体に格納して使用することができる。従って、本発明のICカード制御アプリケーションが格納された記録媒体をICカード端末やサーバに装着するだけ本発明によるICカード認証方式を実施することができる。
【0024】
本発明は上述した実施例だけに限定されず種々の変形や変更が可能である。例えば、上述した実施例では、内部認証シーケンスについて説明したが、ICカード制御アプリケーションの正当性を確認するための外部認証シーケンス等の種々の認証シーケンスについも適用することができる。
【0025】
【発明の効果】
以上説明したように、本発明によれば、認証シーケンスを更改する際、コマンド実行部へのライブラリの追加及び認証シーケンス定義ファイルの変更だけで対応することができ、プログラムの修正を必要としない利点が達成される。
また、認証シーケンス処理部を多様な認証シーケンス処理に対応可能なライブラリとして提供することができる。さらに、認証シーケンス定義ファイルにAPDU生成解読部のIFを定義することが可能であり、いかなるICカード制御アプリケーションにも対応することができる。さらに、認証シーケンス定義ファイルの内容を変更することで、ICカードの機能制限やICカードアプリケーションの多様なセキュリティプロトコルに対応した多様な認証シーケンスに対応することができる。
【図面の簡単な説明】
【図1】 本発明によるICカードシステムの全体構成を示す線図である。
【図2】 本発明によるICカード制御アプリケーションの一例を示す線図である。
【図3】 本発明による定義ファイルの一例を示す線図である。
【図4】 本発明による定義ファイルの変形例を示す線図である。
【図5】 図2に示すICカード制御アプリケーションを用いた内部認証シーケンスの手順を示す線図である。
【図6】 内部認証シーケンスの手順の変形例を示す線図である。
【符号の説明】
1 ICカード
2 ICカード端末
3 サーバ
10 メイン処理部
11 シーケンス処理部
12 シーケンス制御部
13 定義ファイル
14 内部コマンド実行部
15 APDUコマンド実行部
16 APDU送受信部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an IC card control application that performs various sequence processes between an IC card and a terminal or a server, and more particularly to an IC card control application that can flexibly cope with various sequence processes. Furthermore, the present invention relates to an IC card terminal and an IC card server on which such an IC card control application is mounted.
[0002]
[Prior art]
In the IC card system, various sequence processes that are data exchange between the IC card server and the IC card are executed. For example, prior to data exchange between the IC card and the server, a mutual authentication sequence is executed. As this mutual authentication sequence, internal authentication for confirming the validity of the IC card application stored in the IC card and external authentication for confirming the validity of the IC card control application installed in the server or terminal device Is executed. Then, after a valid result is confirmed as the authentication result, a request from the IC card control application is received by the IC card application, and various sequence processes are executed.
[0003]
Various methods such as a common key cryptosystem and a public key cryptosystem are used as a mutual authentication method which is an example of sequence processing. Conventionally, encryption and signature processing are generally described directly as a program using a provided encryption library. The entire authentication processing sequence is individually implemented for each system based on the specifications of the IC card application and the security defined for the entire IC card system.
[0004]
[Problems to be solved by the invention]
With the improvement in processor performance, the speed of decryption has also increased. Accordingly, with the improvement of encryption technology, there is an increasing need to renew the challenge length and encryption type once set to ensure higher security. However, changing the challenge length once set or changing the type of encryption leads to renewal of the authentication protocol program, and there is a disadvantage that an extremely complicated change procedure is required.
[0005]
The authentication sequence process is an indispensable function for all IC cards and requires a high level of security knowledge, and is preferably provided as a package or library. However, since the IC card and the IC card application have only limited security functions and an authentication sequence is defined for each IC card or for each IC card application, the authentication sequence processing is uniformly performed on the IC card control application side. It was difficult to define or create a library. Thus, IC card control application installed in the terminal device or the server, Rukoto you to flexibly respond to each variety IC card authentication sequence is mounted or an IC card application is requested.
[0006]
Such flexible correspondence of the IC card control application is strongly demanded not only for the authentication sequence processing but also for various sequence processing. That is, in various kinds of sequence processing, since there are many requests for modifying or changing the input parameters once set, it is necessary to be able to respond flexibly to such requests.
[0007]
Accordingly, an object of the present invention is to provide an IC card control application that can flexibly cope with a change in the authentication sequence once set without changing the program.
[0008]
Furthermore, another object of the present invention is that even if the authentication sequence is different for each IC card or for each IC card application, it can be handled by a single IC card control application, and can flexibly handle various authentication sequences. An object of the present invention is to provide an IC card control application that can be used.
[0009]
[Means for Solving the Problems]
An IC card control device according to the present invention is an IC card control device that performs APDU communication with an IC card and performs sequence processing with an IC card application stored in the IC card,
A sequence identification name is stored, a command representing the execution contents of the sequence process corresponding to the sequence identification name, an input parameter defining information necessary for executing the sequence process, and an output defining the result of the sequence process The definition file where the parameters are stored for each sequence process,
A sequence control unit that reads a command, an input parameter, and an output parameter corresponding to the identification name of the sequence from the definition file, passes the command and input parameter information, and receives the output parameter information;
An internal command execution unit that receives the command and input parameter information from the sequence control unit , executes predetermined function processing using the input parameter information based on the command, creates output parameter information, and passes the information to the sequence control unit; ,
The command and input parameter information is received from the sequence control unit, a transmission APDU command is created using the input parameter information based on the command , passed to the sequence control unit, and the reception APDU command transmitted from the IC card application is received. An APDU command execution unit that receives and decodes from the sequence control unit and passes the decoded data to the sequence control unit as output parameter information ;
An APDU transmission / reception unit that receives the transmission APDU command created by the APDU command execution unit from the sequence control unit and transmits it to the IC card application, and receives the reception APDU command transmitted from the IC card application and passes it to the sequence control unit; With
The sequence controller is
After reading commands, input parameters and output parameters from the definition file,
Pass the command and input parameter information to the internal command execution unit, and create output parameter information necessary to create a transmission APDU command,
Along with the command, the output parameter information created by the internal command execution unit is passed to the APDU command execution unit as input parameter information to create a transmission APDU command. After communication with the IC card application, the IC card Decode the received APDU command sent from the application,
The internal command execution unit is caused to pass the command and the decoded data to the APDU command execution unit as input parameter information, and create output parameter information as a result of the sequence processing .
[0010]
In the present invention, a program necessary for executing various sequence processes is separated from data used for the sequence processes. Then, a definition file is provided, and a command indicating the execution contents of the sequence process, an input parameter that defines information necessary for executing the sequence process, and an output parameter that defines the result of the sequence process are stored in the definition file. Furthermore, in the present invention, a sequence control unit is provided to control data transfer between the internal command execution unit and the APDU command execution unit. As a result, once various parameters necessary for sequence processing are set, even if it becomes necessary to modify or modify the parameters or part of them, it is only necessary to modify the contents of the definition file without changing the program. Advantages that can be accommodated are achieved.
[0011]
Furthermore, since the present invention has a definition file defined for each IC card application to be processed, even if the parameters, data, or commands required for sequence processing differ for each IC card application, a single IC is used. The card control application can be used flexibly. Further, since a definition file defined for each sequence process to be executed can be provided, even if the sequence process needs to be added or changed, only the definition file can be added or modified.
[0012]
Furthermore, a program for executing commands in a variety of sequence process since the internal command execution unit and the APDU command execution unit has each definition file, corresponding only with DN sequence, command, input parameters and output parameters The amount of information stored in the definition file can be reduced.
[0013]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 is a diagram showing an example of the entire configuration of an IC card system according to the present invention. The IC card 1 performs data communication with the server 3 via the IC card terminal 2. An IC card 1 of this example is an IC card of a multi-application system, and stores N IC card applications 1 to N downloaded from the same or different service provider servers. The IC card terminal 2 has an IC card terminal application, the server 3 has an IC card control application, and the authentication sequence and data communication between the server 3 and the IC card 1 are controlled by the IC card mounted on the server 3. This is done under application control. The present invention can be applied not only when the IC card control application is installed in the server but also when installed in the IC card terminal 2.
[0014]
FIG. 2 is a diagram showing a configuration of an example of an IC card control application according to the present invention. The IC card control application includes a main processing unit 10 that performs overall control such as identification of sequence processing to be executed when various sequence processing is executed with the IC card application stored in the IC card. Moreover, it has the sequence process part 11 which processes about various sequences. The sequence processing unit 11 can correspond to a plurality of various sequences by a single sequence processing unit 11 , or the sequence processing unit 11 can be provided for each sequence. The sequence processing unit 11 includes a sequence control unit 12 and a definition file 13. The sequence control unit 12 controls processing in the sequence processing, for example, reading and transferring information stored in the definition file 13. The definition file 13 has output parameter information indicating the identification name of the processing sequence, input parameter information necessary for executing the sequence processing, sequence processing procedure, and processing result for each type of sequence processing and for each type of IC card application. Further, the IC card control application executes predetermined function processing according to the input parameter information and sequence processing procedure described in the definition file 13 and creates output parameter information described in the definition file 13. 14, defined based on the input parameter information described in the file 13 along with creating a transmission APDU command, the APDU command execution unit 15 decodes the received APDU command sent from the IC card application and send APDU command IC card, An APDU transmission / reception unit 16 is provided which transmits to the application and receives an APDU command transmitted from the IC card application.
[0015]
Next, the definition file 13 provided in the sequence processing unit 11 will be described. As an example, FIG. 3 shows a definition file used when an internal authentication sequence is executed between the IC card application 1 stored in the IC card and the control application. The definition file contains the identification name of the sequence to be executed (in this example, the internal authentication sequence), input parameter information necessary for executing the sequence process (in this example, [input parameter definition]), and an output indicating the processing result It has parameter information (in this example, [output parameter definition]) and sequence processing procedure (in this example, [sequence definition], [process 1], [process 2], and [process 3]). In [Process 1 to 3], “command type” indicates the type of command to be read, and in this example, an internal command or an APDU command is read, and the command name indicates the command to be executed or the content of the process. Thus, in the [process 1], the internal command is read, using the input parameter information in the internal command execution portion 14 Cha Nji generation is performed. In the Process 2], APDU commands are read, the generation of transmission APDU in APDU command executing section 15, APDU received in APDU transceiver 16, received by the APDU command execution portion 15 In [Process 3], the internal command is read and verified by the internal command execution unit 14 .
[0016]
In addition, once various parameters such as input parameters and output parameters are set, and a higher level of security is desired, it is only necessary to add or change the processing contents of various parameters or commands described in the definition file. can do.
[0017]
FIG. 4 shows a modified example of the definition file used for the authentication sequence process.
[0018]
Next, the processing procedure of the internal authentication sequence will be described with reference to FIG. When the IC card 1 is attached to the IC card terminal 2, the IC card application to be processed by the IC card terminal application is specified and transmitted to the IC card control application. The main processing unit 10 requests the sequence processing unit 11 to execute internal authentication processing. The sequence control unit 12 of the sequence processing unit 11 searches the definition file 13 and finds the authentication sequence definition file of the IC card application that is the target of the authentication sequence process. The contents of the definition file shown in FIG. 3 are read by the sequence control unit 12 and an internal authentication sequence is executed under the control of the sequence control unit 12 . First, the input parameter 1 = challenge length is transferred to the internal command execution unit 14, and a challenge is generated and transferred to the sequence control unit 12. (Process 1)
[0019]
Next, the generated challenge is transferred to the APDU command execution unit 15, converted into an APDU byte string, and a transmission APDU is generated. The transmission APDU is transferred to the sequence control unit 12 and transferred from the sequence control unit 12 to the APDU transmission / reception unit 16. This transmission APDU is transferred to the IC card application 1 and signature data is created by the IC card application 1. This signature data is returned to the APDU transmission / reception unit 16 and transferred to the APDU command execution unit 15. The APDU command execution unit 15 decodes the received signature data of the APDU byte sequence, converts it into a processing code, and transfers it to the sequence control unit 12 . (Process 2)
[0020]
The sequence control unit 12 transfers the signature data sent from the IC card to the internal command execution unit 14 together with the input parameter = public key. The internal command execution unit 14 verifies the received signature data using the public key. When the IC card application is a valid IC card application, the output parameter = Result is transferred to the sequence control unit 12 as a processing result. (Process 3)
[0021]
The internal authentication sequence is completed by the series of processes 1 to 3 described above, and the process proceeds to the next sequence process.
[0022]
FIG. 6 shows a modified example of the procedure of the internal authentication sequence. This example is an application example in a system in which the sequence control unit 12 is not allowed to access the APDU transmission / reception unit 16 . In this example, the main processing unit 10 can access the sequence processing unit 11 and the APDU transmission / reception unit 16 that can execute the internal authentication processing. In the case of such a system configuration, the sequence processing unit 11 must once terminate the processing and return the transmission APDU to the main processing unit 10 in order to transmit the APDU during the sequence processing. For this purpose, it is necessary to keep the state of how far the sequence processing has progressed inside the sequence processing unit 11 .
Therefore, in this example, when the main processing unit 10 requests the sequence processing unit 11 to perform the internal authentication process, the session ID is passed in addition to the necessary parameters. The sequence processing unit 11 performs processing halfway according to the description of the authentication sequence definition file, stores the session ID together with the state, ends the processing, and returns the transmission APDU and the session ID to the main processing unit 10 . The main processing unit 10 transmits / receives APDU by the APDU transmission / reception unit 16 and transmits the received APDU to the sequence processing unit 11 together with the session ID. The sequence processing unit 11 searches the previously saved state from the session ID, and performs subsequent processing of the sequence.
[0023]
The IC card control application according to the present invention can be used by being stored in a recording medium such as a CD-ROM. Therefore, the IC card authentication method according to the present invention can be implemented simply by mounting the recording medium storing the IC card control application of the present invention on the IC card terminal 2 or the server 3 .
[0024]
The present invention is not limited to the above-described embodiments, and various modifications and changes can be made. For example, in the above-described embodiment, the internal authentication sequence has been described, but the present invention can also be applied to various authentication sequences such as an external authentication sequence for confirming the validity of the IC card control application.
[0025]
【The invention's effect】
As described above, according to the present invention, when the authentication sequence is renewed, it is possible to cope with only the addition of the library to the command execution unit and the change of the authentication sequence definition file, and there is an advantage that no program modification is required. Is achieved.
In addition, the authentication sequence processing unit can be provided as a library that can handle various authentication sequence processes. Furthermore, the IF of the APDU generation / decryption unit can be defined in the authentication sequence definition file, and any IC card control application can be supported. Further, by changing the contents of the authentication sequence definition file, it is possible to cope with various authentication sequences corresponding to various security protocols of IC card functions and IC card applications.
[Brief description of the drawings]
FIG. 1 is a diagram showing an overall configuration of an IC card system according to the present invention.
FIG. 2 is a diagram showing an example of an IC card control application according to the present invention.
FIG. 3 is a diagram showing an example of a definition file according to the present invention.
FIG. 4 is a diagram showing a modified example of the definition file according to the present invention.
FIG. 5 is a diagram showing a procedure of an internal authentication sequence using the IC card control application shown in FIG.
FIG. 6 is a diagram showing a modified example of the procedure of the internal authentication sequence.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 IC card 2 IC card terminal 3 Server 10 Main processing part 11 Sequence processing part 12 Sequence control part 13 Definition file 14 Internal command execution part 15 APDU command execution part 16 APDU transmission / reception part

Claims (8)

ICカードとの間でAPDUによる通信を行い、前記ICカードに格納されているICカードアプリケーションとの間でシーケンス処理を行うICカード制御装置であって、
シーケンスの識別名が格納され、かつ、前記シーケンスの識別名に対応するシーケンス処理の実行内容を表すコマンド、シーケンス処理の実行に必要な情報を定義する入力パラメータ、及びシーケンス処理の結果を定義する出力パラメータが、シーケンス処理毎に格納された定義ファイルと、
シーケンスの識別名に対応するコマンド、入力パラメータ及び出力パラメータを前記定義ファイルから読み出し、コマンド及び入力パラメータの情報を渡して出力パラメータの情報を受け取るシーケンス制御部と、
前記コマンド及び入力パラメータの情報をシーケンス制御部から受け取り、コマンドに基づき入力パラメータの情報を用いて所定の関数処理を実行して出力パラメータの情報を作成し、シーケンス制御部に渡す内部コマンド実行部と、
前記コマンド及び入力パラメータの情報をシーケンス制御部から受け取り、コマンドに基づき入力パラメータの情報を用いて送信APDUコマンドを作成し、シーケンス制御部に渡すと共に、ICカードアプリケーションから送信されてきた受信APDUコマンドをシーケンス制御部から受け取りデコードし、デコードしたデータを出力パラメータの情報としてシーケンス制御部に渡すAPDUコマンド実行部と、
前記APDUコマンド実行部により作成された送信APDUコマンドをシーケンス制御部から受け取りICカードアプリケーションへ送信すると共に、ICカードアプリケーションから送信されてきた受信APDUコマンドを受信してシーケンス制御部に渡すAPDU送受信部とを具え、
前記シーケンス制御部は、
前記定義ファイルからコマンド、入力パラメータ及び出力パラメータを読み出した後、
前記内部コマンド実行部に、コマンド及び入力パラメータの情報を渡し、送信APDUコマンドを作成するために必要な出力パラータの情報を作成させ、
前記APDUコマンド実行部に、コマンドと共に、内部コマンド実行部に作成させた出力パラメータの情報を入力パラメータの情報として渡し、送信APDUコマンドを作成させ、ICカードアプリケーションとの間の通信の後に、ICカードアプリケーションから送信されてきた受信APDUコマンドをデコードさせ、
前記内部コマンド実行部に、コマンドと共に、APDUコマンド実行部にデコードさせたデータを入力パラメータの情報として渡し、シーケンス処理の結果である出力パラメータの情報を作成させることを特徴とするICカード制御装置。
An IC card control device that performs APDU communication with an IC card and performs sequence processing with an IC card application stored in the IC card,
A sequence identification name is stored, a command representing the execution contents of the sequence process corresponding to the sequence identification name, an input parameter defining information necessary for executing the sequence process, and an output defining the result of the sequence process The definition file where the parameters are stored for each sequence process,
A sequence control unit that reads a command, an input parameter, and an output parameter corresponding to the identification name of the sequence from the definition file, passes the command and input parameter information, and receives the output parameter information;
An internal command execution unit that receives the command and input parameter information from the sequence control unit , executes predetermined function processing using the input parameter information based on the command, creates output parameter information, and passes the information to the sequence control unit; ,
The command and input parameter information is received from the sequence control unit, a transmission APDU command is created using the input parameter information based on the command , passed to the sequence control unit, and the reception APDU command transmitted from the IC card application is received. An APDU command execution unit that receives and decodes from the sequence control unit and passes the decoded data to the sequence control unit as output parameter information ;
An APDU transmission / reception unit that receives the transmission APDU command created by the APDU command execution unit from the sequence control unit and transmits it to the IC card application, and receives the reception APDU command transmitted from the IC card application and passes it to the sequence control unit; With
The sequence controller is
After reading commands, input parameters and output parameters from the definition file,
Pass the command and input parameter information to the internal command execution unit, and create output parameter information necessary to create a transmission APDU command,
Along with the command, the output parameter information created by the internal command execution unit is passed to the APDU command execution unit as input parameter information to create a transmission APDU command. After communication with the IC card application, the IC card Decode the received APDU command sent from the application,
Wherein the internal command execution unit, along with the command, pass the data obtained by decoding the APDU command execution unit as the information of the input parameters, IC card control unit, characterized in that to create the information of the output parameter is the result of sequence processing.
前記定義ファイルは、内部コマンド実行部が実行する関数処理を特定するための情報を含むことを特徴とする請求項1に記載のICカード制御装置。  2. The IC card control apparatus according to claim 1, wherein the definition file includes information for specifying a function process executed by an internal command execution unit. 前記ICカードを、複数のICカードアプリケーションが格納されているマルチアプリケーションのICカードとし、
前記定義ファイルは、シーケンスの識別名、コマンド、入力パラメータ及び出力パラメータが、ICカードアプリケーション毎に格納されていることを特徴とする請求項1又は2に記載のICカード制御装置。
The IC card is a multi-application IC card in which a plurality of IC card applications are stored,
3. The IC card control apparatus according to claim 1, wherein the definition file stores a sequence identification name, a command, an input parameter, and an output parameter for each IC card application.
前記定義ファイルに、内部コマンド実行部により実行されるチャレンジの生成のためのコマンドについて、チャレンジ長を定義する入力パラメータ、及びチャレンジを定義する出力パラメータが格納され、APDUコマンド実行部により実行される、チャレンジから送信APDUコマンドを作成してICカードアプリケーションとの間の通信の後に受信APDUコマンドに含まれる署名データをデコードするためのコマンドについて、チャレンジを定義する入力パラメータ、及び署名データを定義する出力パラメータが格納され、さ らに、内部コマンド実行部により実行される署名データの検証のためのコマンドについて、公開鍵及び署名データを定義する入力パラメータ、及び検証結果を定義する出力パラメータが格納されている場合に、
前記シーケンス制御部は、
前記定義ファイルからコマンド、入力パラメータ及び出力パラメータを読み出した後、
前記内部コマンド実行部に、チャレンジの生成のためのコマンド及び入力パラメータの情報としてチャレンジ長を渡し、チャレンジを作成させ、出力パラメータの情報としてチャレンジを内部コマンド実行部から受け取り、
前記APDUコマンド実行部に、
チャレンジから送信APDUコマンドを作成するためのコマンド、及び入力パラメータの情報としてチャレンジを渡し、送信APDUコマンドを作成させ、
ICカードアプリケーションとの間の通信の後に、受信APDUコマンドに含まれる署名データをデコードさせ、出力パラメータの情報として署名データをAPDUコマンド実行部から受け取り、
前記内部コマンド実行部に、署名データの検証のためのコマンド、入力パラメータの情報として公開鍵及び署名データを渡し、公開鍵を用いて署名データを検証させ、出力パラメータの情報として検証結果を内部コマンド実行部から受け取ることを特徴とする請求項1から4までのいずれか一項に記載のICカード制御装置。
In the definition file , an input parameter defining a challenge length and an output parameter defining a challenge are stored for a command for generating a challenge executed by the internal command execution unit, and executed by the APDU command execution unit. An input parameter that defines a challenge and an output parameter that defines signature data for a command for creating a transmission APDU command from the challenge and decoding signature data included in the received APDU command after communication with the IC card application to but is stored, and et al, the commands for the verification of the signature data to be executed by an internal command execution unit, the input parameters that define a public key and signature data, and output parameters that define the verification results are stored In case,
The sequence controller is
After reading commands, input parameters and output parameters from the definition file ,
Passing the challenge length as command and input parameter information for generating a challenge to the internal command execution unit , creating a challenge, receiving the challenge from the internal command execution unit as output parameter information,
In the APDU command execution unit,
A command for creating a transmission APDU command from the challenge, and a challenge as input parameter information, causing a transmission APDU command to be created,
After communication with the IC card application, the signature data included in the received APDU command is decoded, and the signature data is received from the APDU command execution unit as output parameter information.
The internal command execution unit, a command for verifying the signature data passes the public key and the signature data as information of the input parameters, to verify the signature data using the public key, an internal command verification result information output parameters The IC card control device according to claim 1, wherein the IC card control device receives the information from an execution unit .
ICカードとの間でAPDUによる通信を行い、前記ICカードに格納されているICカードアプリケーションとの間でシーケンス処理を行うICカード制御装置が、シーケンスの識別名が格納され、かつ、前記シーケンスの識別名に対応するシーケンス処理の実行内容を表すコマンド、シーケンス処理の実行に必要な情報を定義する入力パラメータ、及びシーケンス処理の結果を定義する出力パラメータがシーケンス処理毎に格納された定義ファイルと、シーケンス処理部と、内部コマンド実行部と、APDUコマンド実行部と、APDU送受信部とを具えている場合に、
前記ICカード制御装置を構成するコンピュータに、
シーケンス制御部が、シーケンスの識別名に対応するコマンド、入力パラメータ及び出力パラメータを前記定義ファイルから読み出し、コマンド及び入力パラメータの情報を渡す処理と、
内部コマンド実行部が、コマンド及び入力パラメータの情報をシーケンス処理部から受け取り、コマンドに基づき入力パラメータの情報を用いて所定の関数処理を実行し、送信APDUコマンドを作成するために必要な出力パラメータの情報を作成し、シーケンス制御部に渡す処理と、
APDUコマンド実行部が、コマンドと共に、前記内部コマンド実行部により作成された出力パラメータの情報を入力パラメータの情報としてシーケンス処理部から受け取り、コマンドに基づき入力パラメータの情報を用いて送信APDUコマンドを作成し、前記送信APDUコマンドをシーケンス制御部に渡し、APDU送受信部によるICアプリケーションカードとの間の通信の後に、ICカードアプリケーションから送信されてきた受信APDUコマンドをシーケンス制御部から受け取りデコードし、デコードしたデータを出力パラメータの情報としてシーケンス制御部に渡す処理と、
内部コマンド実行部が、コマンドと共に、前記APDUコマンド実行部によりデコードされたデータを入力パラメータの情報としてシーケンス処理部から受け取り、コマンドに基づき入力パラメータの情報を用いて所定の関数処理を実行し、シーケンス処理の結果である出力パラメータの情報を作成し、シーケンス制御部に渡す処理とを実行させるICカード制御プログラム。
An IC card control device that performs APDU communication with an IC card and performs a sequence process with an IC card application stored in the IC card stores a sequence identification name, and A definition file in which a command representing the execution content of the sequence process corresponding to the identification name, an input parameter defining information necessary for executing the sequence process, and an output parameter defining the result of the sequence process are stored for each sequence process; In the case of comprising a sequence processing unit, an internal command execution unit, an APDU command execution unit, and an APDU transmission / reception unit,
In a computer constituting the IC card control device,
A process in which the sequence control unit reads a command, an input parameter, and an output parameter corresponding to the identification name of the sequence from the definition file, and passes the command and input parameter information;
The internal command execution unit receives command and input parameter information from the sequence processing unit, executes predetermined function processing using the input parameter information based on the command, and outputs output parameters necessary for creating a transmission APDU command. Processing to create information and pass it to the sequence control unit;
The APDU command execution unit receives the output parameter information created by the internal command execution unit together with the command from the sequence processing unit as input parameter information, and creates a transmission APDU command using the input parameter information based on the command. The transmission APDU command is passed to the sequence control unit, and after communication with the IC application card by the APDU transmission / reception unit, the reception APDU command transmitted from the IC card application is received from the sequence control unit, decoded, and decoded data Process to pass to the sequence controller as output parameter information,
The internal command execution unit receives data decoded by the APDU command execution unit together with the command from the sequence processing unit as input parameter information, executes predetermined function processing using the input parameter information based on the command, An IC card control program for generating output parameter information as a result of processing and executing processing for passing to a sequence control unit .
請求項5に記載のICカード制御プログラムが記録されている記録媒体。  A recording medium on which the IC card control program according to claim 5 is recorded. ICカードとの間でAPDUによる通信を行い、前記ICカードに格納されているICカードアプリケーションとの間でシーケンス処理を行うICカード端末であって、
請求項1から4までのいずれか一項に記載の定義ファイル、内部コマンド実行部、APDUコマンド実行部、APDU送受信部及びシーケンス制御部を具えたことを特徴とするICカード端末。
An IC card terminal that performs APDU communication with an IC card and performs sequence processing with an IC card application stored in the IC card,
An IC card terminal comprising the definition file according to any one of claims 1 to 4, an internal command execution unit, an APDU command execution unit, an APDU transmission / reception unit, and a sequence control unit.
ICカード、ICカード端末及びICカードサーバを具えた通信システムの下で、前記ICカードとの間でICカード端末を介してAPDUによる通信を行い、ICカードに格納されているICカードアプリケーションとの間でシーケンス処理を行うICカードサーバであって、
請求項1から4までのいずれか一項に記載の定義ファイル、内部コマンド実行部、APDUコマンド実行部、APDU送受信部及びシーケンス制御部を具えたことを特徴とするICカードサーバ。
Under a communication system including an IC card, an IC card terminal, and an IC card server, communication with the IC card is performed using an APDU via the IC card terminal, and an IC card application stored in the IC card. IC card server that performs sequence processing between
An IC card server comprising the definition file according to any one of claims 1 to 4, an internal command execution unit, an APDU command execution unit, an APDU transmission / reception unit, and a sequence control unit.
JP2002183307A 2002-06-24 2002-06-24 IC card control device Expired - Lifetime JP3857190B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002183307A JP3857190B2 (en) 2002-06-24 2002-06-24 IC card control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002183307A JP3857190B2 (en) 2002-06-24 2002-06-24 IC card control device

Publications (2)

Publication Number Publication Date
JP2004030055A JP2004030055A (en) 2004-01-29
JP3857190B2 true JP3857190B2 (en) 2006-12-13

Family

ID=31179566

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002183307A Expired - Lifetime JP3857190B2 (en) 2002-06-24 2002-06-24 IC card control device

Country Status (1)

Country Link
JP (1) JP3857190B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020174306A (en) * 2019-04-11 2020-10-22 株式会社Ihiアグリテック General-purpose system for automation of agricultural work machine

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4815912B2 (en) * 2005-07-15 2011-11-16 大日本印刷株式会社 IC card, IC card program
CN112068909B (en) * 2020-07-31 2023-10-20 中核核电运行管理有限公司 Nuclear power operation rule mobile execution card generation system and method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020174306A (en) * 2019-04-11 2020-10-22 株式会社Ihiアグリテック General-purpose system for automation of agricultural work machine
JP7321746B2 (en) 2019-04-11 2023-08-07 株式会社Ihiアグリテック General-purpose system for agricultural machinery automation

Also Published As

Publication number Publication date
JP2004030055A (en) 2004-01-29

Similar Documents

Publication Publication Date Title
US7844819B2 (en) Application authentication system
US9979703B2 (en) Updating software on a secure element
US20180137307A1 (en) Programming on-chip non-volatile memory in a secure processor using a sequence number
US8572386B2 (en) Secure device, information processing terminal, integrated circuit, terminal application generation apparatus, application authentication method
US8683610B2 (en) Method and apparatus for managing digital rights of secure removable media
US8141131B2 (en) Security policy generation
US20070255659A1 (en) System and method for DRM translation
US20080082825A1 (en) Memory card
WO2021083083A1 (en) Upgrading method and system, server, and terminal device
JP2011508303A (en) Apparatus and method for digital rights management
EP2372592B1 (en) integrated circuit and system for installing computer code thereon
US8638932B2 (en) Security method and system and computer-readable medium storing computer program for executing the security method
JP2008251021A (en) Application authentication system
CN112069471A (en) Application system authorization method, device and medium based on domestic CPU
JP3857190B2 (en) IC card control device
JP4236830B2 (en) Storage device with upload function
CN112491777B (en) Cross-block chain identity authentication method, computer equipment and readable storage medium
JP7052616B2 (en) Communication devices, data transmission methods, and programs
JP2004362061A (en) Terminal identification system, method and program
JP5235460B2 (en) Terminal, information storage medium, service providing system, and data updating method
JP7313232B2 (en) Information processing device, its control method, and program
JP3878090B2 (en) IC card issuing system
JP2006236376A (en) Ic card usage device, ic card, and storage medium
JP2000267995A (en) Device and method for integrated security management and recording medium recording program for integrated security management
KR101007359B1 (en) Security platform mounted on smart card

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040226

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051013

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060620

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060818

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060913

R151 Written notification of patent or utility model registration

Ref document number: 3857190

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090922

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100922

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100922

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110922

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120922

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130922

Year of fee payment: 7

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

EXPY Cancellation because of completion of term