JP2003316459A - Ic card application program - Google Patents

Ic card application program

Info

Publication number
JP2003316459A
JP2003316459A JP2002116789A JP2002116789A JP2003316459A JP 2003316459 A JP2003316459 A JP 2003316459A JP 2002116789 A JP2002116789 A JP 2002116789A JP 2002116789 A JP2002116789 A JP 2002116789A JP 2003316459 A JP2003316459 A JP 2003316459A
Authority
JP
Japan
Prior art keywords
serial number
application program
command
license management
card
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.)
Granted
Application number
JP2002116789A
Other languages
Japanese (ja)
Other versions
JP4319804B2 (en
Inventor
Ichiro Ozeki
一郎 尾関
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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
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 Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP2002116789A priority Critical patent/JP4319804B2/en
Publication of JP2003316459A publication Critical patent/JP2003316459A/en
Application granted granted Critical
Publication of JP4319804B2 publication Critical patent/JP4319804B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

<P>PROBLEM TO BE SOLVED: To provide a license management method which controls the use limitation and expiration date for use of an application software program in an IC card to which the application software is loaded, and also provide a system therefor. <P>SOLUTION: The application program to be managed, a peculiar serial number and an original collation key corresponding to the serial number are held within the IC card. Initially, only a command reading out the serial number and an activation command effectuating all of the functions are operative, and other functions are not operative. A function, which makes all of the functions of the program operative only when the collation key is verified to be right in the application program when a user commands the matching key relating to the serial number in addition to the activation command, is provided. <P>COPYRIGHT: (C)2004,JPO

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、ソフトウエアのラ
イセンス管理を容易に行えるように特別な機能を設けた
ICカードに搭載されるアプリケーションプログラムに
関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an application program installed in an IC card provided with a special function so that software license management can be easily performed.

【0002】[0002]

【従来技術】ICカード上に記録されて利用されるアプ
リケーションプログラムは、通常カード発行者の側で当
該プログラムをICカードに搭載して利用可能な状態と
して利用者に配布する。そのようにソフトウエアプログ
ラムを搭載されたカードは、通常、一部の特定のカード
でしかアプリケーションが動作しないように設定するこ
とはできない。
2. Description of the Related Art An application program recorded and used on an IC card is normally installed on the IC card by the card issuer side and distributed to the user in a usable state. A card equipped with such a software program cannot normally be set so that the application operates only on some specific cards.

【0003】[0003]

【発明が解決しようとする課題】例えば、アプリケーシ
ョンAがロードされたカードXを10000枚製造し、利用
者(顧客)へ配布すると仮定する。この時、利用者より
「カードは社員全員に配布するが、アプリケーションA
は、当面100人しか使用しないので、アプリケーション
Aの許諾使用料は最初の年は100人分としたい」といっ
た要求があった場合、現状では、カードX1種類で、そ
の提供する機能を最終利用者の属性等に応じて制限させ
るということはできなかった。
For example, it is assumed that 10,000 cards X loaded with application A are manufactured and distributed to users (customers). At this time, the user said, "The card will be distributed to all employees, but application A
For the time being, since only 100 people will use it for the time being, I want to use the license fee for application A for 100 people in the first year. " It could not be restricted according to the attributes of the.

【0004】本発明はこのような問題点を考慮してなさ
れたものであり、一旦配布したカードを回収することな
く、ICカードに搭載したアプリケーションプログラム
の使用許可あるいは使用制限の管理を容易に行うことが
可能なICカード搭載プログラムを提供することを課題
とする。
The present invention has been made in consideration of such problems, and easily manages the use permission or the use limitation of the application program mounted on the IC card without collecting the once-distributed card. It is an object to provide an IC card-installed program that enables the above.

【0005】[0005]

【課題を解決するための手段】課題を解決するための第
1の発明は、ICカードに搭載するために設計された次
のような特徴を有するアプリケーションプログラムであ
る。すなわち、固有のシリアル番号およびシリアル番号
に対応した原照合キーを内部に保持しており、当初は、
そのシリアル番号を読み出すコマンド、および、そのプ
ログラムの全ての機能を有効にする活性化コマンドのみ
が有効であり、他の機能は利用不可能な状態とされてい
るものであって、利用者から、前記シリアル番号に関連
した照合キーを付加した前記活性化コマンドの命令を受
けた際に、前記照合キーが前記原照合キーと一致するこ
とを検証できた時にのみ、当該プログラムの全ての機能
を有効にするという機能を備えたことを特徴とするもの
である。シリアル番号に対応した原照合キーはカード発
行者のみが知っている。したがって、原照合キーと等し
い照合キーを受けた時は、当該プログラムを利用可能と
してよいわけである。
A first invention for solving the problem is an application program having the following features designed to be mounted on an IC card. That is, the unique serial number and the original verification key corresponding to the serial number are held internally, and initially,
Only the command that reads the serial number and the activation command that activates all the functions of the program are valid, and the other functions are in an unusable state. All functions of the program are valid only when it is verified that the collation key matches the original collation key when receiving the command of the activation command to which the collation key related to the serial number is added. It is characterized by having the function of Only the card issuer knows the original verification key corresponding to the serial number. Therefore, when the collation key equal to the original collation key is received, the program can be used.

【0006】第1の発明に係るアプリケーションプログ
ラムのより好ましい第2の態様は、第1の態様に係るア
プリケーションプログラムにおいて、前記照合キーまた
は原照合キーは、前記シリアル番号をカード発行者所有
の暗号鍵により暗号化して作成したものとするものであ
る。暗号方法と暗号鍵を決めておけば、シリアル番号が
決まれば原照合キーが得られるため、カード発行者側で
原照合キーをシリアル番号ごとに全て記録しておく必要
はなくなる。
A more preferable second aspect of the application program according to the first invention is the application program according to the first aspect, wherein the collation key or the original collation key is the encryption key owned by the card issuer. It is assumed to be created by encrypting with. If the encryption method and the encryption key are decided, the original collation key can be obtained if the serial number is decided, so that it is not necessary for the card issuer side to record all the original collation keys for each serial number.

【0007】第1の発明に係るアプリケーションプログ
ラムのより好ましい第3の態様は、自らの機能を全て無
効化するソフトウエア無効化コマンドを備えた第1の態
様または第2の態様に係るアプリケーションプログラム
であって、利用者からこのコマンドを受けると、自らの
全ての機能を提供不能とするとともに、前記アプリケー
ションプログラムのシリアル番号と前記原照合キーを含
んだ無効化コマンドに対する応答を返すことを特徴とす
るものである。
A more preferable third aspect of the application program according to the first invention is the application program according to the first aspect or the second aspect, which comprises a software invalidation command for invalidating all of its functions. Therefore, when this command is received from the user, all the functions of the user cannot be provided, and a response to the invalidation command including the serial number of the application program and the original collation key is returned. It is a thing.

【0008】第1の発明に係るアプリケーションプログ
ラムのより好ましい第4の態様は、第2の態様に係るア
プリケーションプログラムを公開鍵暗号方式を利用して
改良したものである。すなわち、固有のシリアル番号お
よびシリアル番号に対応した秘密鍵を内部に保持してお
り、当初は、そのシリアル番号を読み出すコマンド、お
よび、そのプログラムの全ての機能を有効にする活性化
コマンドのみが有効であり、他の機能は利用不可能な状
態とされているものであって、利用者から、前記シリア
ル番号に関連した照合データを付加した前記活性化コマ
ンドの命令を受けた際に、前記秘密鍵を用いて前記照合
データの正当性が検証できた時にのみ、当該プログラム
の全ての機能を有効にするという機能を備えたことを特
徴とするICカード搭載用のアプリケーションプログラ
ムである。
A more preferred fourth aspect of the application program according to the first invention is an improvement of the application program according to the second aspect by using a public key cryptosystem. That is, the unique serial number and the private key corresponding to the serial number are held inside, and initially, only the command that reads the serial number and the activation command that enables all the functions of the program are valid. The other functions are in an unusable state, and when the command of the activation command to which the collation data related to the serial number is added is received from the user, the secret An application program for mounting an IC card, which has a function of enabling all the functions of the program only when the validity of the collation data can be verified using a key.

【0009】前記アプリケーションプログラムは、カー
ド発行者のみが知っている当該シリアル番号に対応した
公開鍵により暗号化したものと等しいデータを照合デー
タとして受取った時のみ、全ての機能を利用可能とする
わけである。
The application program can use all the functions only when it receives as the verification data the same data as the one encrypted by the public key corresponding to the serial number known only to the card issuer. Is.

【0010】第1の発明に係るアプリケーションプログ
ラムのより好ましい第5の態様は、自らの機能を全て無
効化するソフトウエア無効化コマンドをも備えた第4の
態様に係るアプリケーションプログラムであって、利用
者からこのコマンドを受けると、自らの全ての機能を提
供不能とするとともに、前記アプリケーションプログラ
ムのシリアル番号を記述した部分とそのシリアル番号を
自身の秘密鍵により暗号化した部分を含んで構成した無
効化コマンドに対する応答を返すことを特徴とするもの
である。
A more preferable fifth aspect of the application program according to the first invention is the application program according to the fourth aspect, which is also provided with a software invalidation command for invalidating all of its functions. When this command is received from a person who has received the command, all the functions of the application cannot be provided, and the serial number of the application program is written and the serial number is encrypted with the private key of the application. It is characterized in that it returns a response to the compliant command.

【0011】第1の発明に係るアプリケーションプログ
ラムのより好ましい第6の態様は、固有のシリアル番
号、シリアル番号に対応した秘密鍵および制御変数を内
部に保持しており、当初は、そのシリアル番号および制
御変数の値を読み出すコマンド、および、そのプログラ
ムの全ての機能を有効にする活性化コマンドのみが有効
であり、他の機能は利用不可能な状態とされているもの
であって、利用者から、前記シリアル番号と前記制御変
数の値に関連した照合データを付加した前記活性化コマ
ンドの命令を受けた際に、前記秘密鍵を用いて前記照合
データの正当性が検証できた時にのみ、当該プログラム
の全ての機能を有効にするという機能を備えたことを特
徴とするICカード搭載用のアプリケーションプログラ
ムである。
A more preferable sixth aspect of the application program according to the first invention is to internally store a unique serial number, a secret key corresponding to the serial number, and a control variable. Initially, the serial number and Only the command that reads the value of the control variable and the activation command that enables all the functions of the program are valid, and the other functions are in the unusable state. , Only when the validity of the collation data can be verified using the secret key when receiving the command of the activation command to which the collation data related to the serial number and the value of the control variable is added, It is an application program for mounting an IC card, which has a function of enabling all the functions of the program.

【0012】第1の発明に係るアプリケーションプログ
ラムのより好ましい第7の態様は、一度全ての機能を有
効化した後で、そのシリアル番号および制御変数の値を
読み出すコマンド、および、そのプログラムの全ての機
能を有効にする活性化コマンド以外は動作しない初期状
態に戻るソフトウエア無効化コマンドを備えた第6の態
様に係るアプリケーションプログラムであって、利用者
からこのコマンドを受けると、そのシリアル番号および
制御変数の値を読み出すコマンド、および、前記活性化
コマンド以外の機能を提供不能とするとともに、前記ア
プリケーションプログラムのシリアル番号を記述した部
分とそのシリアル番号を自身の秘密鍵により暗号化した
部分を含んで構成した無効化コマンドに対する応答を返
し、前記制御変数の値を定められた手順により更新する
処理を行うことを特徴とするものである。
A more preferable seventh aspect of the application program according to the first invention is that a command for reading out the serial number and the value of the control variable after enabling all the functions once and all the functions of the program. An application program according to a sixth aspect including a software invalidation command that returns to an initial state in which only an activation command for enabling a function operates, and when the user receives this command, the serial number and control A command for reading the value of a variable and a function other than the activation command cannot be provided, and a part in which the serial number of the application program is described and a part in which the serial number is encrypted by its own secret key are included. The response to the configured invalidation command is returned, and the control variable Is characterized in carrying out the process of updating the procedure stipulated values.

【0013】第1の発明の第8の態様は、前記制御変数
の値を更新する際に、乱数発生アルゴリズムにより発生
させた値を制御変数の新しい値とする第7の態様に係る
ICカード搭載用のアプリケーションプログラムであ
る。乱数発生には、既存の擬似乱数発生アルゴリズムあ
るいはそれを用いた乱数発生関数を利用すればよい。
An eighth aspect of the first invention is an IC card mounting according to the seventh aspect, wherein a value generated by a random number generation algorithm is used as a new value of the control variable when updating the value of the control variable. Is an application program for. For the random number generation, an existing pseudo random number generation algorithm or a random number generation function using it may be used.

【0014】課題を解決する第2の発明は、第1の発明
に係るアプリケーションプログラムを搭載したICカー
ドである。
A second invention for solving the problem is an IC card having the application program according to the first invention mounted therein.

【0015】課題を解決する第3の発明は、第1の発明
の第7の態様または第8の態様に係るアプリケーション
プログラムのライセンス管理方法であって、利用者が、
このアプリケーションプログラムを使用したい場合は、
このアプリケーションプログラムから読み出した当該プ
ログラムのシリアル番号および制御変数の値をカード発
行者に送付し、カード発行者はこのシリアル番号および
制御変数の値に基づいてそのシリアル番号に対応して用
意された公開鍵により、そのシリアル番号および制御変
数の値を暗号化して照合データを作成するとともに、こ
のシリアル番号に関して照合データを作成したことを記
録した上で、前記利用者に前記照合データを応答すると
いう手順によりICカードに搭載されたアプリケーショ
ンプログラムのライセンス管理を行うことを要旨とす
る。
A third invention for solving the problem is a license management method for an application program according to the seventh or eighth embodiment of the first invention, in which the user:
If you want to use this application program,
The serial number of the program and the value of the control variable read from this application program are sent to the card issuer, and the card issuer publishes the corresponding serial number based on the value of the serial number and the control variable. A procedure of encrypting the serial number and the value of the control variable with a key to create verification data, recording that the verification data was created for this serial number, and then responding the verification data to the user. The license management of the application program installed in the IC card is carried out according to.

【0016】課題を解決する第4の発明は、ライセンス
管理クライアント手段を搭載したカードリーダーライタ
ー装置を備えたクライアントコンピュータと、カード発
行者が設置するライセンス管理サーバー手段を搭載しラ
イセンス管理データベースを備えたサーバーコンピュー
タとが、ネットワークを通じて接続されることにより構
成される第1の発明の第7の態様または第8の態様に係
るアプリケーションプログラムのライセンス管理システ
ムであって、前記ライセンス管理クライアント手段は、
カード使用者の指示に従って対象とするICカードから
前記カードリーダーライター装置を通じて前記アプリケ
ーションプログラム内部に記録された前記シリアル番号
および前記制御変数の値を読み出し、これをネットワー
クを通じて前記ライセンス管理サーバー手段に伝え、ま
た、前記ライセンス管理サーバー手段からの応答を受取
り、これを前記アプリケーションプログラムに与えるこ
とでその全ての機能を有効化するものであって、前記ラ
イセンス管理サーバー手段は、配布したアプリケーショ
ンプログラムのシリアル番号に応じた公開鍵データを保
持しているものであって、前記ライセンス管理クライア
ント手段から、前記シリアル番号および前記制御変数の
値を受取った時は、シリアル番号に対応して用意された
公開鍵により暗号化して照合データを作成し、このシリ
アル番号に関して照合データを作成したことを前記ライ
センス管理データベースに記録した上で、前記ライセン
ス管理クライアント手段へ、生成した照合データを返送
し、また、前記ライセンス管理クライアント手段から無
効化応答を受取った時は、対応する公開鍵により前記暗
号化部分を復号して前記シリアル番号記述部分と照合し
て正当なシリアル番号であることを検証して、正当と認
められたシリアル番号を前記ライセンス管理データベー
スに登録するとともに、無効化登録が終了した旨を前記
ライセンス管理クライアント手段に返すことによりアプ
リケーションプログラムの無効化および再活性化を漏れ
なく管理することができることを特徴としたしたライセ
ンス管理システムである。
A fourth invention for solving the problem comprises a client computer equipped with a card reader / writer device equipped with a license management client means, and a license management database equipped with a license management server means installed by a card issuer. A license management system for an application program according to a seventh aspect or an eighth aspect of the first invention, which is configured by being connected to a server computer via a network, wherein the license management client means comprises:
According to the instruction of the card user, the serial number and the control variable values recorded in the application program are read from the target IC card through the card reader / writer device and transmitted to the license management server means through the network. The license management server means receives a response from the license management server means and gives it to the application program to enable all the functions thereof. The license management server means uses the serial number of the distributed application program. It holds the corresponding public key data, and when the serial number and the value of the control variable are received from the license management client means, they are encrypted by the public key prepared corresponding to the serial number. Then, the collation data is created, and the fact that the collation data is created for this serial number is recorded in the license management database, and the generated collation data is returned to the license management client means. When the invalidation response is received from the means, the encrypted part is decrypted with the corresponding public key, the serial number description part is collated, and the serial number is verified to be valid. The serial number is registered in the license management database, and the fact that the invalidation registration is completed is returned to the license management client means, whereby invalidation and reactivation of the application program can be managed without omission. It is a license management system.

【0017】[0017]

【発明の実施の形態】以下図面を用いて、まず、本発明
によるアプリケーションプログラムと、それを用いたア
プリケーションプログラム管理方法(以下「基本管理方
法」と記す)、および、その方法を用いて構成したアプ
リケーションプログラムのライセンス管理システム1を
説明する。最初に、基本管理方法の概要を説明する。
BEST MODE FOR CARRYING OUT THE INVENTION An application program according to the present invention, an application program management method using the same (hereinafter referred to as "basic management method"), and a configuration using the method will be described below with reference to the drawings. An application program license management system 1 will be described. First, an outline of the basic management method will be explained.

【0018】まず、基本管理方法が対象とするアプリケ
ーションプログラムは、以下のような特徴を持つのもの
とする。 1)アプリケーションには、シリアル番号と照合キー
(シリアル番号を発行者の鍵で暗 号化したもの)が
記録されている。 2)シリアル番号を読み出すコマンド(READコマンド)
が実装されている。 3)アプリケーションに格納されている照合キーと、受
付けた照合キーを比較して、一 致したらアプリケー
ションの全てのコマンドを使用可能にするコマンド(EN
ABLEコ マンド)が実装されている。 4)アプリケーションを使用不能にし、チェック用のコ
ードを出力するコマンド(DISA BLEコマンド)が実
装されている。 5)初期状態では、上記3コマンド以外の全てのコマン
ドは使用不可能な状態となって いる。
First, it is assumed that the application program targeted by the basic management method has the following features. 1) The application records a serial number and a verification key (serial number encrypted with the issuer's key). 2) Command to read serial number (READ command)
Has been implemented. 3) Command that compares the collation key stored in the application with the accepted collation key, and if all match, enables all commands of the application (EN
ABLE command) is implemented. 4) A command (DISA BLE command) that disables the application and outputs a check code is implemented. 5) In the initial state, all commands other than the above three commands are disabled.

【0019】次に、図1により、基本管理方法の対象プ
ログラムであるプログラムAを使用可能にする手順を説
明する。まず、利用者は、プログラムAを搭載している
ICカードへREADコマンドを送信し、シリアル番号を読
み出す()。つぎに、読み出したシリアル番号のリス
トをカードの枚数分だけ作成し、発行者へ送付する
()。発行者側でシリアル番号を発行者の管理する鍵
にて暗号化し、アプリケーションを利用可能にするため
の照合キーを生成する()。発行者側で生成した照合
キーのリストを利用者へ送付する()。利用者は、プ
ログラムAを搭載したICカードに対してENABLEコマン
ドを発行するとともに照合キーを送信し、プログラムA
を利用可能にする()。ICカード内のプログラムA
は、送り付けられた照合キーと内部に持つ照合キーを比
較して、一致する時は、全ての機能を提供可能な状態に
する。
Next, referring to FIG. 1, a procedure for enabling the program A, which is the target program of the basic management method, will be described. First, the user sends a READ command to the IC card equipped with the program A to read the serial number (). Next, create a list of read serial numbers for the number of cards and send them to the issuer (). The issuer encrypts the serial number with a key managed by the issuer, and generates a collation key to enable the application (). Send the list of verification keys generated by the issuer to the user (). The user issues the ENABLE command to the IC card equipped with the program A and sends the verification key, and the program A
Is available (). Program A in IC card
Compares the sent collation key with the collation key contained therein, and when they match, brings all the functions into a state in which they can be provided.

【0020】上記の手順において、暗号化の方法は特
に限定しない。DES暗号方式等の有名な暗号方式を用
いてもよいが、他のどのような暗号方式を用いてもよ
い。また、ICカードに搭載された基本管理方法対象プ
ログラムにおいて、そのプログラムに備えられている機
能を利用(提供)可能とするしないの制御方法について
も特に限定しない。ソフトウエアで実現できる方法であ
れば何を使ってもよい。例えば、用意されているコマン
ド毎に有効/無効を定めるフラグが用意されており、こ
れらをICカードの不揮発メモリ領域に記憶させ、各コ
マンドの処理関数の最初に、このフラグを検査するとい
う方法などが考えられる。
In the above procedure, the encryption method is not particularly limited. A well-known encryption method such as the DES encryption method may be used, but any other encryption method may be used. Further, in the basic management method target program installed in the IC card, the control method of not enabling (providing) the functions included in the program is not particularly limited. Any method that can be implemented by software may be used. For example, there is a flag that determines validity / invalidity for each prepared command, these are stored in the non-volatile memory area of the IC card, and this flag is inspected at the beginning of the processing function of each command. Can be considered.

【0021】次に、プログラムAを使用不可能にする手
順を、図2により説明する。まず、カード使用者は、プ
ログラムAを無効化したいICカードに対してDISABLE
コマンドを発行し、レスポンスデータを得る()。こ
のレスポンスデータにはそのアプリケーションプログラ
ム固有のシリアル番号と、照合キーを含んでいる。次
に、複数のカードに対してこうして作られたレスポンス
データを集め、レスポンスデータのリストを作成し、発
行者へ送付する()。発行者側では、レスポンスデー
タからシリアル番号と照合キーを取り出す。レスポンス
データは、シリアル番号と照合キーとを含んで構成され
たものである。そして照合キーはシリアル番号をカード
発行者の鍵で暗合化したものであるという関係がある。
そこでカード発行者は、レスポンスデータから照合キー
部分を分離する()。そして、照合キーを発行者の管
理する鍵にて復号する()。復号結果と、レスポンス
データから抽出したシリアル番号部分を比較する
()。両者が一致していれば正しく無効化されている
ことが発行者側で確認できたことになる。カード発行者
は、正しく無効化されたこのシリアル番号をライセンス
管理記録データベースに記録するとともに、無効化処理
が正常に終了したことを利用者へ通知する()。両者
が一致しなかった場合は、その旨をカード利用者に通知
する()。
Next, the procedure for making the program A unusable will be described with reference to FIG. First, the card user DISABLEs the IC card that wants to invalidate program A.
Issue the command and get the response data (). This response data includes the serial number unique to the application program and the verification key. Next, the response data created in this way for a plurality of cards is collected, a list of response data is created and sent to the issuer (). The issuer side extracts the serial number and verification key from the response data. The response data is composed of a serial number and a verification key. The verification key has a relationship that the serial number is encrypted with the key of the card issuer.
Therefore, the card issuer separates the verification key part from the response data (). Then, the verification key is decrypted by the key managed by the issuer (). The decryption result is compared with the serial number part extracted from the response data (). If the two match, the issuer side was able to confirm that they were invalidated correctly. The card issuer records this correctly invalidated serial number in the license management record database and notifies the user that the invalidation processing has been completed normally (). If the two do not match, the card user is notified to that effect ().

【0022】図3は、図1および図2で説明した基本管
理方法を、人手を要せずに実現するライセンス管理シス
テム1の構成を示したものである。以下、図1に従っ
て、ライセンス管理システム1を説明する。
FIG. 3 shows the configuration of a license management system 1 for implementing the basic management method described with reference to FIGS. 1 and 2 without requiring human labor. The license management system 1 will be described below with reference to FIG.

【0023】10は、カード使用者が使用するクライア
ントコンピュータである。クライアントコンピュータ1
0は、カードリーダライタ装置12、および、ライセン
ス管理クライアント手段11を備えている。13はライ
センス管理対象であるアプリケーションプログラム15
を搭載したICカードである。ライセンス管理クライア
ント手段11は、カード利用者からの指示を受付けるユ
ーザーインターフェース機能と、ネットワークを通じて
後述のライセンス管理サーバー手段21と必要なデータ
をやり取りする通信機能を備えている。
Reference numeral 10 is a client computer used by the card user. Client computer 1
0 comprises a card reader / writer device 12 and a license management client means 11. 13 is an application program which is a license management target
It is an IC card equipped with. The license management client means 11 has a user interface function for receiving an instruction from a card user and a communication function for exchanging necessary data with a license management server means 21 described later through a network.

【0024】20は、カード発行者が設置したライセン
ス管理サーバー装置である。カードに搭載したアプリケ
ーションプログラムのライセンス管理を行うための管理
データベース22と、ライセンス管理サーバー手段21
を備えている。
Reference numeral 20 is a license management server device installed by the card issuer. A management database 22 for managing licenses of application programs mounted on the card, and license management server means 21.
Is equipped with.

【0025】ライセンス管理クライアント手段11は、
起動されるとディスプレイ18にユーザーインターフェ
ース画面を表示し、カード使用者からの入力を待つ。カ
ード利用者が、入力キーボード等19から、搭載されて
いるアプリケーションの有効化を指示する。すると、こ
の指示を受けたライセンス管理クライアント手段11
は、カード13に対して、カードリーダーライタ12を
通じて、READコマンドを送信し、シリアル番号を読み出
す(図1に相当)。そしてこのシリアル番号を、照合
キー要求メッセージとしてライセンス管理サーバー手段
に送信する(図1に相当)。
The license management client means 11 is
When activated, a user interface screen is displayed on the display 18 and waits for input from the card user. The card user uses the input keyboard 19 or the like to instruct activation of the installed application. Then, the license management client means 11 that has received this instruction
Sends a READ command to the card 13 through the card reader / writer 12 to read the serial number (corresponding to FIG. 1). Then, this serial number is transmitted to the license management server means as a verification key request message (corresponding to FIG. 1).

【0026】ライセンス管理クライアント手段11とラ
イセンス管理サーバー手段21は、あらかじめ定められ
たメッセージ交換プロトコルに従って、アプリケーショ
ンプログラムのライセンス管理を行うための処理を実行
する。すなわち、ライセンス管理サーバー手段21は、
ライセンス管理クライアント手段11から送り付けられ
た所定の書式で作成された照合キー要求メッセージを受
付け、その中からシリアル番号を取出し図1のステッ
プと同じ手順で暗号化して照合キーを作成する。これ
を、照合キー要求メッセージに対する応答メッセージに
含めて要求元へ返送する(図1に相当)。
The license management client means 11 and the license management server means 21 execute processing for license management of application programs according to a predetermined message exchange protocol. That is, the license management server means 21
The verification key request message created in a predetermined format sent from the license management client means 11 is received, and the serial number is taken out from the message and encrypted by the same procedure as the step of FIG. 1 to create the verification key. This is included in the response message to the verification key request message and returned to the request source (corresponding to FIG. 1).

【0027】クライアント手段11は、応答メッセージ
から目的の照合キーを取出し、これを、カードリーダー
ライタ12を通じて、ENABLEコマンドとともにICカー
ド13に与える(図1に相当)。この結果、ICカー
ド13に搭載されたアプリケーションプログラムは全て
の機能が有効となる。
The client means 11 extracts the target collation key from the response message and gives it to the IC card 13 together with the ENABLE command through the card reader / writer 12 (corresponding to FIG. 1). As a result, all the functions of the application program installed in the IC card 13 are valid.

【0028】次に、アプリケーションプログラムを無効
化する場合について説明する。ライセンス管理クライア
ント手段11が起動され、ディスプレイ18にユーザー
インターフェース画面を表示してカード使用者からの入
力を待っている状態で、カード利用者が、搭載されてい
るアプリケーションの無効化を指示すると、ライセンス
管理クライアント手段11は、カードリーダーライタ1
2を通じて、DISABLEコマンドをICカード13に与え
る。すると、アプリケーションプログラムは内部に記録
されたシリアル番号と照合キーを含むレスポンスをライ
センス管理クライアント手段11に返す(図1に相
当)。
Next, the case of invalidating the application program will be described. When the license management client means 11 is activated, the user interface screen is displayed on the display 18, and the card user waits for an input from the card user, and the card user gives an instruction to invalidate the installed application, a license is issued. The management client means 11 is a card reader / writer 1.
A DISABLE command is given to the IC card 13 through 2. Then, the application program returns a response including the serial number and the verification key recorded therein to the license management client means 11 (corresponding to FIG. 1).

【0029】ライセンス管理クライアント手段11は、
このレスポンスを含んだ所定の書式の無効化要求メッセ
ージをライセンス管理サーバー手段21に送付する(図
2に相当)。ライセンス管理サーバー手段21は、受
付けた無効化要求メッセージからシリアル番号部分と照
合キー部分を取出し(図2に相当)、照合キーを復号
し(図2に相当)、この結果と、先に分離したシリア
ル番号部分を比較する(図2に相当)。両者が一致す
れば、このシリアル番号のアプリケーションプログラム
所有者からの正規の無効化要求メッセージであることが
確認されたことになるので、ライセンス管理データベー
スに当該シリアル番号のソフトウエアプログラムは無効
化されたことを登録する。そして正常に無効化処理が完
了したことを無効化要求メッセージに対する返答メッセ
ージとして返信する(図2に相当)。両者が一致しな
かった場合は、その旨を無効化要求メッセージに対する
返答メッセージとして返信する(図2に相当)。
The license management client means 11 is
An invalidation request message of a predetermined format including this response is sent to the license management server means 21 (corresponding to FIG. 2). The license management server means 21 extracts the serial number part and the collation key part from the received invalidation request message (corresponding to FIG. 2), decrypts the collation key (corresponding to FIG. 2), and separates this result first. Compare the serial number parts (corresponding to Figure 2). If they match, it means that the owner of the application program with this serial number is a valid invalidation request message, so the software program with that serial number has been invalidated in the license management database. Register things. Then, the fact that the invalidation processing is normally completed is returned as a reply message to the invalidation request message (corresponding to FIG. 2). If they do not match, a message to that effect is returned as a reply message to the invalidation request message (corresponding to FIG. 2).

【0030】ライセンス管理システム1によれば、ライ
センス管理クライアント手段11とライセンス管理サー
バー手段21のメッセージ交換により、自動的にアプリ
ケーションプログラムの有効化、無効化の状態がサーバ
ー装置20により無人管理でき、したがって、ソフトウ
エアの使用料の徴収処理、実際に使用している利用者へ
のサービス情報の供給などを誤りなく行うことが可能と
なる。
According to the license management system 1, by exchanging messages between the license management client means 11 and the license management server means 21, the server device 20 can automatically manage the enabled / disabled state of the application program. It is possible to collect software usage fees and supply service information to users who are actually using the software without error.

【0031】次に、本発明に係る実施形態の変形例とし
て、今説明した基本管理方法を改良した管理方法(以下
「改良管理方法」と記す)とこの改良管理方法を用いて
構成したアプリケーションプログラムのライセンス管理
システム2を説明する。
Next, as a modified example of the embodiment of the present invention, a management method (hereinafter referred to as "improved management method") improved from the basic management method just described, and an application program configured by using this improved management method. The license management system 2 will be described.

【0032】改良管理方法では、アプリケーションプロ
グラムを有効化する時に用いる照合データの作成・検
証、無効化する時のレスポンスデータの作成・検証に公
開鍵暗号方式を用いて、安全性を高めているところに特
徴がある。尚、改良管理方法では「照合キー」の代わり
に「照合データ」の語を用いる。したがって、改良管理方
法が管理対象とするアプリケーションプログラム(以下
「改良方法対応プログラム」と記す)は、内部にシリア
ル番号を記録しているだけでなく、そのシリアル番号に
対応した秘密鍵データをも保持している。また、改良方
法対象プログラムは、入力されたデータを自己の秘密鍵
で復号したり、自己のシリアル番号を自己の秘密鍵で暗
号化して出力する機能を持っている。また、発行者側で
は、配布したアプリケーションプログラムの個々のシリ
アル番号に対応した複数の公開鍵データを保持している
ものとする。図5に改良管理方法によるアプリケーショ
ンプログラムを有効化する際の手順を、図6に改良管理
方法によるアプリケーションプログラムを無効化する際
の手順を示す。
In the improved management method, the public key cryptosystem is used to create / verify the collation data used when the application program is validated, and to create / verify the response data when the application program is invalidated to improve the security. Is characterized by. In the improved management method, the word "collation data" is used instead of "collation key". Therefore, the application program that the improvement management method manages (hereinafter referred to as "improvement method support program") not only records the serial number internally, but also holds the private key data corresponding to the serial number. is doing. Further, the improved method target program has a function of decrypting the input data with its own private key, or of encrypting its own serial number with its own private key and outputting it. The issuer side holds a plurality of public key data corresponding to each serial number of the distributed application program. FIG. 5 shows a procedure for validating the application program by the improved management method, and FIG. 6 shows a procedure for invalidating the application program by the improved management method.

【0033】図5と図1を対比させながら、改良管理方
法により改良方法対応プログラムの一つであるプログラ
ムBを有効化する際の手順を説明する。まず、利用者
は、プログラムBを使用可能にしたいICカードへREAD
コマンドを送信し、シリアル番号を読み出す(図5
)。つぎに、読み出したシリアル番号のリストをカー
ドの枚数分だけ作成し、発行者へ送付する(図5)。
ここまでは、図1のと変わらない。発行者側では、
図4に示すように、シリアル番号に応じて用意された公
開鍵によって各シリアル番号を暗号化し、プログラムB
を利用可能にするための照合データを生成する(図5
)。発行者側で生成した照合データのリストを利用者
へ送付する(図5)。照合データを受けた利用者は、
プログラムBに対してENABLEコマンドを発行するととも
に照合データを送信し、プログラムBを利用可能にする
(図5)。プログラムBは、送り付けられた照合デー
タを自己の秘密鍵データで復号して、一致する時は、全
ての機能を提供可能な状態にする。この手順において、
とのステップが公開鍵暗号方式を用いた手順となっ
ており図1に示した方法と相違している。
A procedure for activating the program B, which is one of the improvement method corresponding programs, by the improvement management method will be described by comparing FIG. 5 with FIG. First, the user READs the IC card on which he wants to use program B
Send command and read serial number (Fig. 5
). Next, a list of read serial numbers is created for each card and sent to the issuer (Fig. 5).
Up to this point, it is the same as in FIG. On the issuer side,
As shown in FIG. 4, each serial number is encrypted with a public key prepared according to the serial number, and the program B
Generate collation data for making available (Fig. 5
). The list of collation data generated on the issuer side is sent to the user (Fig. 5). The user who received the verification data,
The ENABLE command is issued to the program B and the collation data is transmitted to make the program B available (FIG. 5). The program B decrypts the sent verification data with its own secret key data, and when they match, brings all the functions into a state where it can be provided. In this procedure,
Is a procedure using the public key cryptosystem, which is different from the method shown in FIG.

【0034】次に、図6と図2を対比させながらプログ
ラムBを無効化する際の手順について、説明する。ま
ず、カード使用者は、アプリケーションを無効化したい
カードに対してDISABLEコマンドを発行し、レスポンス
データを得る(図6)。この時、プログラムBは、自
身の全ての機能を無効化している。図2におけるレスポ
ンスデータにはそのアプリケーションプログラム固有の
シリアル番号と、照合キーを含んでいるが、改良管理方
法においては、シリアル番号とシリアル番号を自己の秘
密鍵で暗号化したものをレスポンスデータとする。次
に、複数のカードに対してこうして作られたレスポンス
データを集め、レスポンスデータのリストを作成し、発
行者へ送付する(図6)。発行者側では、レスポンス
データからシリアル番号部分と暗号化部分を分離し(図
6)、暗号化部分については、対応する公開鍵データ
により復号する(図6)。この復号結果と、先のシリ
アル番号部分を比較する(図6)。両者が一致してい
れば正しく無効化されていることが発行者側で確認でき
たことになる。カード発行者は、正しく無効化されたこ
のシリアル番号をライセンス管理記録データベースに記
録するとともに、無効化処理が正常に終了したことを利
用者へ通知する(図6)。両者が一致しなかった場合
は、その旨をカード利用者に通知する(図6)。この
ように、改良管理方法では以外の手順は、公開鍵暗
号方式を採用することにより、基本管理方法と相違があ
る。
Next, the procedure for invalidating the program B will be described while comparing FIG. 6 with FIG. First, the card user issues a DISABLE command to a card whose application is desired to be invalidated, and obtains response data (FIG. 6). At this time, the program B has disabled all its functions. The response data in FIG. 2 includes a serial number unique to the application program and a collation key. In the improved management method, the serial number and the serial number encrypted with its own private key are used as the response data. . Next, the response data created in this way for a plurality of cards is collected, a list of response data is created and sent to the issuer (FIG. 6). On the issuer side, the serial number part and the encrypted part are separated from the response data (FIG. 6), and the encrypted part is decrypted by the corresponding public key data (FIG. 6). This decryption result is compared with the previous serial number part (FIG. 6). If the two match, the issuer side was able to confirm that they were invalidated correctly. The card issuer records the correctly invalidated serial number in the license management record database and notifies the user that the invalidation processing has been normally completed (FIG. 6). If the two do not match, the card user is notified to that effect (FIG. 6). As described above, the procedure other than the improved management method is different from the basic management method by adopting the public key cryptosystem.

【0035】ライセンス管理システム1に関して、ライ
センス管理サーバー手段21を、先に説明した図6のス
テップ、およびを実行するように改良すれば、改
良方法対応プログラムに対して、改良管理方法を無人で
行うライセンス管理システム2を実現できる。公開鍵暗
号方式としてはRSA暗号方式などのいずれかの既存技
術を利用すればよい。ライセンス管理クライアント手段
11は、照合キーの代わりに照合データを扱うのである
が、これらは名目上異なるだけなので実質的な改良は不
要である。
With respect to the license management system 1, if the license management server means 21 is improved to execute the steps and of FIG. 6 described above, the improvement management method is unattended for the improvement method corresponding program. The license management system 2 can be realized. As the public key cryptosystem, any existing technology such as the RSA cryptosystem may be used. The license management client means 11 handles the collation data instead of the collation key, but since these are nominally different from each other, substantial improvement is not necessary.

【0036】ライセンス管理システム2はライセンス管
理システム1の特長を全て備えているだけでなく、公開
鍵暗号方式を採用することにより不正使用に対する安全
性が強化されている。ライセンス管理システム2では、
アプリケーション無効化時(図6)に生成されるレス
ポンスデータを偽造することはほとんど不可能だからで
ある。レスポンスデータは、改良方法対応プログラムの
内部でそれぞれの改良方法対応プログラムのシリアル番
号に応じて付与された秘密鍵を用いて生成される。した
がって、実際にはアプリケーションプログラムを無効化
していないにもかかわらず、レスポンスデータを偽造し
て、ライセンス管理サーバー手段21に送り付けること
により、以後のライセンス料を支払わずにアプリケーシ
ョンプログラムの使用を続けるという不正を行うことは
実質的に不可能である。
The license management system 2 not only has all the features of the license management system 1, but also employs a public key cryptosystem to enhance the security against unauthorized use. In the license management system 2,
This is because it is almost impossible to forge the response data generated when the application is invalidated (FIG. 6). The response data is generated by using the secret key assigned in accordance with the serial number of each improvement method corresponding program inside the improvement method corresponding program. Therefore, even if the application program is not actually invalidated, the response data is forged and sent to the license management server means 21 to continue the use of the application program without paying the subsequent license fee. Is virtually impossible to do.

【0037】尚、ライセンス管理システム1、ライセン
ス管理システム2ともに、管理対象とするアプリケーシ
ョンプログラムにDISABLEコマンドを実装しないことに
より、プログラムを有効化する時の管理のみ行うシステ
ムとして利用することも可能である。その場合でも、有
効化したプログラムのシリアル番号を自動的に管理する
システムとして有効に稼動する。
It should be noted that both the license management system 1 and the license management system 2 can be used as a system that only manages when the program is activated by not mounting the DISABLE command in the application program to be managed. . Even in that case, it works effectively as a system that automatically manages the serial number of the activated program.

【0038】これまで説明したライセンス管理システム
1およびライセンス管理システム2では、無効化コマン
ドを受付けたアプリケーションプログラムは、「自らの
全ての機能を提供不能とする」こととなっているため、
無効化後、外部から再び活性化コマンドを送っても二度
と使用可能状態に戻ることがない。ライセンス管理シス
テム1およびライセンス管理システム2は、そのような
「一度きりしか使えない」アプリケーションプログラム
を対象にした管理方法を提供するシステムであった。ア
プリケーションプログラムとしては、これとは異なり、
無効化コマンドを受けた場合は、「初期状態に戻る」と
いう仕様の物も考えることができる。このような仕様の
アプリケーションプログラムを、以下「再使用可能型」プ
ログラムと呼ぶことにする。一度無効化しても、それは
初期状態に戻るだけであるので、再び活性化コマンドを
投げかければ何度でも再使用することができるからであ
る。
In the license management system 1 and the license management system 2 described above, the application program that has received the invalidation command "cannot provide all of its own functions".
After being deactivated, even if an activation command is sent from the outside again, it will never return to the usable state. The license management system 1 and the license management system 2 are systems that provide a management method for such application programs that can be used "only once." As an application program, unlike this,
When the invalidation command is received, it is possible to think of a product having a specification of "return to the initial state". An application program having such a specification will be hereinafter referred to as a "reusable type" program. Even if it is invalidated, it only returns to the initial state, so it can be reused any number of times by sending the activation command again.

【0039】ライセンス管理システム1およびライセン
ス管理システム2では、カード発行者は、「再使用可能
型」プログラムに関して、当該プログラムを有効化する
たびにもれなくライセンス管理を行うことができない可
能性がある。不正な利用者が、前回活性化した時の照合
データを保存しておいて。それを用いれば、カード発行
者に通知することなく当該プログラムを有効化できるか
らである。
In the license management system 1 and the license management system 2, the card issuer may not be able to manage the license for the “reusable” program every time the program is activated. Save the verification data when the unauthorized user activated last time. By using it, the program can be activated without notifying the card issuer.

【0040】図7および図8は、「再使用可能型」プログ
ラムに関して、当該プログラムを有効化するたびにもれ
なくライセンス管理を行うライセンス管理システム3の
概要説明図である。ライセンス管理システム3のポイン
トは、前回カード発行者から受けた照合データが次回の
有効化の際には有効に働かないようにすることである。
そこで、図7に示すように、有効化する際、カード発行
者に送るデータにはシリアル番号の他にシリアル番号と
独立した制御変数を連結して送る(図7)。制御変数
は、適当な桁数の整数でよく、ICカードの不揮発メモ
リ領域に記録され初期値は零とする。カード発行者は、
シリアル番号にこの制御変数を連結したデータに対し
て、公開鍵により暗号化して照合データを作成し(図7
)、アプリケーションプログラムは、この照合データ
を秘密鍵で復号して、復号した値が、内部で記憶されて
いるシリアル番号と制御変数の値とそれぞれ一致してい
るかどうかを確認する(図7)。確認できた場合に限
りプログラムの全ての機能を有効にする。
FIG. 7 and FIG. 8 are schematic explanatory diagrams of the license management system 3 that manages the license of the “reusable” program every time the program is activated. The point of the license management system 3 is to prevent the verification data received from the card issuer last time from working effectively in the next activation.
Therefore, as shown in FIG. 7, when the data is activated, the data to be sent to the card issuer is connected with a serial number and a control variable independent of the serial number and then sent (FIG. 7). The control variable may be an integer with an appropriate number of digits and is recorded in the non-volatile memory area of the IC card and its initial value is zero. The card issuer
Data obtained by concatenating this control variable with the serial number is encrypted with the public key to create collation data (see FIG. 7).
), The application program decrypts this collation data with the private key, and confirms whether the decrypted values match the serial number and the value of the control variable stored internally (FIG. 7). Enable all features of the program only if confirmed.

【0041】一方、無効化時には、図8に示すように、
レスポンスデータを出力する際に、アプリケーション内
部で、ICカードの不揮発メモリ領域に記録されている
制御変数を適当な方法で変更する(図8)。この変更
は、例えばアプリケーション内部でまたはICカード内
部の他のプログラムを用いて乱数を発生させその結果を
新しい制御変数の値としてもよい。その際乱数発生アル
ゴリズムとしては、既存の擬似乱数発生アルゴリズムを
用いればよい。あるいは単純に制御変数に1を加えて更
新してもよい。このように無効化が行われるたびに、I
Cカード内部の状態を変化させておくことにより、次回
のアプリケーション有効化の際は、カード発行者のもと
で新しく作成された照合データでなければ有効化ができ
なくなるので、カード発行者は「再使用可能型」プログラ
ムについても、有効化されるたびにきちんとライセンス
管理を行うことが可能となる。
On the other hand, at the time of invalidation, as shown in FIG.
When outputting the response data, the control variables recorded in the non-volatile memory area of the IC card are changed by an appropriate method inside the application (FIG. 8). For this change, for example, a random number may be generated inside the application or using another program inside the IC card, and the result may be used as a new control variable value. At that time, an existing pseudo-random number generation algorithm may be used as the random number generation algorithm. Alternatively, the control variable may be updated by simply adding 1. Each time this invalidation is performed, I
By changing the internal state of the C card, the next time the application is activated, it can be activated only with the verification data newly created by the card issuer. Even for "reusable" programs, it is possible to properly manage the license each time it is activated.

【0042】[0042]

【発明の効果】以上詳しく説明したように、本発明のソ
フトウエアプログラムを用いることにより上記ライセン
ス管理方法を利用すること、およびこの方法をシステム
化した上記ライセンス管理システムを実現することが可
能となり、一旦配布したICカードを回収することもな
く、ICカードに搭載されたアプリケーションプログラ
ムのライセンス管理を誤りなく正確に行うことができ、
またそのことを通じて対象ソフトウエア使用者にはライ
センスを遵守させることが可能となるという顕著な効果
を奏する。
As described in detail above, by using the software program of the present invention, it is possible to use the above license management method and to realize the above license management system by systemizing this method. Without collecting the IC card once distributed, the license management of the application program installed in the IC card can be accurately performed without error.
In addition, the remarkable effect that it becomes possible for the target software user to comply with the license through this is achieved.

【図面の簡単な説明】[Brief description of drawings]

【図1】 本発明の実施形態に係るアプリケーションプ
ログラムを用いたライセンス管理方法の概要説明図であ
る。
FIG. 1 is a schematic explanatory diagram of a license management method using an application program according to an embodiment of the present invention.

【図2】 本発明の実施形態に係るアプリケーションプ
ログラムを用いたライセンス管理方法の概要説明図であ
る。
FIG. 2 is a schematic explanatory diagram of a license management method using an application program according to an embodiment of the present invention.

【図3】 本発明の実施形態に係るアプリケーションプ
ログラムを用いたライセンス管理システムの全体構成図
である。
FIG. 3 is an overall configuration diagram of a license management system using an application program according to an embodiment of the present invention.

【図4】本発明の実施形態に係るアプリケーションプロ
グラムを用いたライセンス管理方法の改良管理方法の概
要説明図である。
FIG. 4 is a schematic explanatory diagram of an improved management method of a license management method using an application program according to an embodiment of the present invention.

【図5】 本発明の実施形態に係るアプリケーションプ
ログラムを用いたライセンス管理方法の改良管理方法の
概要説明図である。
FIG. 5 is a schematic explanatory diagram of an improved management method of a license management method using an application program according to an embodiment of the present invention.

【図6】 本発明の実施形態に係るアプリケーションプ
ログラムを用いたライセンス管理方法の改良管理方法の
概要説明図である。
FIG. 6 is a schematic explanatory diagram of an improved management method of a license management method using an application program according to an embodiment of the present invention.

【図7】 本発明の実施形態に係る再使用可能型プログ
ラムに対応したライセンス管理方法の概要説明図であ
る。
FIG. 7 is a schematic explanatory diagram of a license management method corresponding to a reusable program according to an embodiment of the present invention.

【図8】 本発明の実施形態に係る再使用可能型プログ
ラムに対応したライセンス管理方法の概要説明図であ
る。
FIG. 8 is a schematic explanatory diagram of a license management method corresponding to a reusable program according to an embodiment of the present invention.

【符号の説明】[Explanation of symbols]

9 ネットワーク 10 クライアントコンピュータ 11 ライセンス管理クライアント手段 12 カードリーダライタ装置 13 ICカード 15 管理対象アプリケーションプログラム 18 ディスプレイ 19 キーボード等 20 サーバーコンピュータ 21 ライセンス管理サーバー手段 22 ライセンス管理データベース 9 network 10 client computers 11 License management client means 12 Card reader / writer device 13 IC card 15 Managed application programs 18 display 19 keyboards, etc. 20 server computer 21 License Management Server Means 22 License Management Database

Claims (11)

【特許請求の範囲】[Claims] 【請求項1】 ICカードに搭載するアプリケーション
プログラムであって、固有のシリアル番号およびシリア
ル番号に対応した原照合キーを内部に保持しており、当
初は、そのシリアル番号を読み出すコマンド、および、
そのプログラムの全ての機能を有効にする活性化コマン
ドのみが有効であり、他の機能は利用不可能な状態とさ
れているものであって、利用者から、前記シリアル番号
に関連した照合キーを付加した前記活性化コマンドの命
令を受けた際に、前記照合キーが前記原照合キーと一致
することを検証できた時にのみ、当該プログラムの全て
の機能を有効にするという機能を備えたことを特徴とす
るアプリケーションプログラム。
1. An application program mounted on an IC card, which internally holds a unique serial number and an original collation key corresponding to the serial number. Initially, a command for reading the serial number, and
Only the activation command that activates all the functions of the program is valid, and other functions are disabled, and the user needs to input the verification key associated with the serial number. When the command of the added activation command is received, it is provided with a function of enabling all the functions of the program only when it can be verified that the collation key matches the original collation key. Characteristic application program.
【請求項2】 前記照合キーおよび原照合キーは、アプ
リケーションプログラム固有の前記シリアル番号を前記
アプリケーションプログラム発行者所有の暗号鍵により
暗号化して作成したものである請求項1に記載のアプリ
ケーションプログラム。
2. The application program according to claim 1, wherein the verification key and the original verification key are created by encrypting the serial number unique to the application program with an encryption key owned by the application program issuer.
【請求項3】 自らの機能を全て無効化するソフトウエ
ア無効化コマンドを備えた請求項1または請求項2に記
載のアプリケーションプログラムであって、利用者から
このコマンドを受けると、自らの全ての機能を提供不能
とするとともに、前記アプリケーションプログラムのシ
リアル番号と前記原照合キーを含んだ無効化コマンドに
対する応答を返すことを特徴とするアプリケーションプ
ログラム。
3. The application program according to claim 1, further comprising a software invalidation command for invalidating all of its own functions, and when receiving this command from the user, all of its own functions are received. An application program, which disables a function and returns a response to an invalidation command including the serial number of the application program and the original collation key.
【請求項4】 ICカードに搭載するアプリケーション
プログラムであって、固有のシリアル番号およびシリア
ル番号に対応した秘密鍵を内部に保持しており、当初
は、そのシリアル番号を読み出すコマンド、および、そ
のプログラムの全ての機能を有効にする活性化コマンド
のみが有効であり、他の機能は利用不可能な状態とされ
ているものであって、利用者から、前記シリアル番号に
関連した照合データを付加した前記活性化コマンドの命
令を受けた際に、前記秘密鍵を用いて前記照合データの
正当性が検証できた時にのみ、当該プログラムの全ての
機能を有効にするという機能を備えたことを特徴とする
アプリケーションプログラム。
4. An application program mounted on an IC card, which internally holds a unique serial number and a secret key corresponding to the serial number. Initially, a command for reading the serial number and the program Only the activation command that enables all the functions of is valid and other functions are disabled, and the user added the verification data related to the serial number. When a command of the activation command is received, a function of activating all the functions of the program is provided only when the validity of the collation data can be verified using the secret key. The application program to do.
【請求項5】 自らの機能を全て無効化するソフトウエ
ア無効化コマンドを備えた請求項4に記載のアプリケー
ションプログラムであって、利用者からこのコマンドを
受けると、自らの全ての機能を提供不能とするととも
に、前記アプリケーションプログラムのシリアル番号を
記述した部分とそのシリアル番号を自身の秘密鍵により
暗号化した部分を含んで構成した無効化コマンドに対す
る応答を返すことを特徴とするアプリケーションプログ
ラム。
5. The application program according to claim 4, comprising a software invalidation command for invalidating all of its own functions, and when receiving this command from the user, it is impossible to provide all of its own functions. In addition, the application program is characterized by returning a response to an invalidation command including a part in which the serial number of the application program is described and a part in which the serial number is encrypted by its own secret key.
【請求項6】 ICカードに搭載するアプリケーション
プログラムであって、固有のシリアル番号、シリアル番
号に対応した秘密鍵および制御変数を内部に保持してお
り、当初は、そのシリアル番号および制御変数の値を読
み出すコマンド、および、そのプログラムの全ての機能
を有効にする活性化コマンドのみが有効であり、他の機
能は利用不可能な状態とされているものであって、利用
者から、前記シリアル番号と前記制御変数の値に関連し
た照合データを付加した前記活性化コマンドの命令を受
けた際に、前記秘密鍵を用いて前記照合データの正当性
が検証できた時にのみ、当該プログラムの全ての機能を
有効にするという機能を備えたことを特徴とするアプリ
ケーションプログラム。
6. An application program mounted on an IC card, which internally holds a unique serial number, a secret key corresponding to the serial number, and a control variable. Initially, the serial number and the value of the control variable are stored. Only the command that reads out the command and the activation command that enables all the functions of the program are valid, and other functions cannot be used. And when the validity of the collation data can be verified by using the secret key when receiving the command of the activation command to which the collation data related to the value of the control variable is added, all the programs An application program having a function of enabling a function.
【請求項7】 一度全ての機能を有効化した後で、その
シリアル番号および制御変数の値を読み出すコマンド、
および、そのプログラムの全ての機能を有効にする活性
化コマンド以外は動作しない初期状態に戻るソフトウエ
ア無効化コマンドを備えた請求項6に記載のアプリケー
ションプログラムであって、利用者からこのコマンドを
受けると、そのシリアル番号および制御変数の値を読み
出すコマンド、および、前記活性化コマンド以外の機能
を提供不能とするとともに、前記アプリケーションプロ
グラムのシリアル番号を記述した部分とそのシリアル番
号を自身の秘密鍵により暗号化した部分を含んで構成し
た無効化コマンドに対する応答を返し、前記制御変数の
値を定められた手順により更新することを特徴とするア
プリケーションプログラム。
7. A command for reading out the serial number and the value of a control variable after once activating all the functions,
7. The application program according to claim 6, further comprising a software invalidation command that returns to an initial state in which an activation command that enables all the functions of the program does not operate, and the command is received from a user. And the command for reading the serial number and the value of the control variable, and the function other than the activation command cannot be provided, and the part in which the serial number of the application program is described and the serial number are protected by its own secret key. An application program characterized by returning a response to an invalidation command including an encrypted part and updating the value of the control variable according to a predetermined procedure.
【請求項8】 乱数発生アルゴリズムにより発生させた
値を制御変数の新しい値とする請求項7に記載のICカ
ード搭載用のアプリケーションプログラム。
8. The application program for mounting an IC card according to claim 7, wherein the value generated by the random number generation algorithm is used as a new value of the control variable.
【請求項9】 請求項1から請求項8のいずれかに記載
のアプリケーションプログラムを搭載したICカード。
9. An IC card on which the application program according to claim 1 is installed.
【請求項10】 請求項7または請求項8に記載のアプ
リケーションプログラムのライセンス管理方法であっ
て、利用者が、このアプリケーションプログラムを使用
したい場合は、このアプリケーションプログラムから読
み出した当該プログラムのシリアル番号および制御変数
の値をカード発行者に送付し、カード発行者はこのシリ
アル番号および制御変数の値に基づいてそのシリアル番
号に対応して用意された公開鍵により、そのシリアル番
号および制御変数の値を暗号化して照合データを作成す
るとともに、このシリアル番号に関して照合データを作
成したことを記録した上で、前記利用者に前記照合デー
タを応答するという手順によりICカードに搭載された
アプリケーションプログラムのライセンス管理を行う方
法。
10. The license management method for an application program according to claim 7, wherein if the user wants to use this application program, the serial number and the serial number of the program read from this application program are stored. The value of the control variable is sent to the card issuer, and based on the serial number and the value of the control variable, the card issuer uses the public key prepared corresponding to the serial number and the value of the serial number and the control variable. The license management of the application program installed in the IC card is performed by the procedure of encrypting the verification data and recording the verification data for this serial number and then returning the verification data to the user. How to do.
【請求項11】 ライセンス管理クライアント手段を搭
載したカードリーダーライター装置を備えたクライアン
トコンピュータと、カード発行者が設置するライセンス
管理サーバー手段を搭載しライセンス管理データベース
を備えたサーバーコンピュータとが、ネットワークを通
じて接続されることにより構成される請求項7または請
求項8に記載のアプリケーションプログラムのライセン
ス管理システムであって、前記ライセンス管理クライア
ント手段は、カード使用者の指示に従って対象とするI
Cカードから前記カードリーダーライター装置を通じて
前記アプリケーションプログラム内部に記録された前記
シリアル番号および前記制御変数の値を読み出し、これ
をネットワークを通じて前記ライセンス管理サーバー手
段に伝え、また、前記ライセンス管理サーバー手段から
の応答を受取り、これを前記アプリケーションプログラ
ムに与えることでその全ての機能を有効化するものであ
って、前記ライセンス管理サーバー手段は、配布したア
プリケーションプログラムのシリアル番号に応じた公開
鍵データを保持しているものであって、前記ライセンス
管理クライアント手段から、前記シリアル番号および前
記制御変数の値を受取った時は、シリアル番号に対応し
て用意された公開鍵により暗号化して照合データを作成
し、このシリアル番号に関して照合データを作成したこ
とを前記ライセンス管理データベースに記録した上で、
前記ライセンス管理クライアント手段へ、生成した照合
データを返送し、また、前記ライセンス管理クライアン
ト手段から無効化応答を受取った時は、対応する公開鍵
により前記暗号化部分を復号して前記シリアル番号記述
部分と照合して正当なシリアル番号であることを検証し
て、正当と認められたシリアル番号を前記ライセンス管
理データベースに登録するとともに、無効化登録が終了
した旨を前記ライセンス管理クライアント手段に返すこ
とによりアプリケーションプログラムの無効化および再
活性化を漏れなく管理することができることを特徴とし
たしたライセンス管理システム。
11. A client computer equipped with a card reader / writer device equipped with a license management client means and a server computer equipped with a license management server means installed by a card issuer and equipped with a license management database are connected via a network. 9. The license management system for an application program according to claim 7 or claim 8, wherein the license management client means is a target I according to an instruction from a card user.
The value of the serial number and the control variable recorded in the application program is read from the C card through the card reader / writer device, transmitted to the license management server means through a network, and transmitted from the license management server means. All the functions are validated by receiving a response and giving it to the application program. The license management server means holds public key data corresponding to the serial number of the distributed application program. When the serial number and the value of the control variable are received from the license management client means, the collation data is created by encrypting with the public key prepared corresponding to the serial number. Cereal That created the verification data after recorded in the license management database for items,
When the generated collation data is returned to the license management client means, and when the invalidation response is received from the license management client means, the encrypted part is decrypted by the corresponding public key to describe the serial number description part. By verifying that the serial number is valid by registering with the license management database, and returning the fact that the invalidation registration is completed to the license management client means. A license management system characterized by being able to manage invalidation and reactivation of application programs without omission.
JP2002116789A 2002-04-18 2002-04-18 IC card application program, IC card and license management system Expired - Fee Related JP4319804B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002116789A JP4319804B2 (en) 2002-04-18 2002-04-18 IC card application program, IC card and license management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002116789A JP4319804B2 (en) 2002-04-18 2002-04-18 IC card application program, IC card and license management system

Publications (2)

Publication Number Publication Date
JP2003316459A true JP2003316459A (en) 2003-11-07
JP4319804B2 JP4319804B2 (en) 2009-08-26

Family

ID=29534221

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002116789A Expired - Fee Related JP4319804B2 (en) 2002-04-18 2002-04-18 IC card application program, IC card and license management system

Country Status (1)

Country Link
JP (1) JP4319804B2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005227809A (en) * 2004-02-10 2005-08-25 Dainippon Printing Co Ltd Software unauthorized installation preventing method, software unauthorized start preventing method, system performing them, and non-contact data carrier used for them
JP2007094739A (en) * 2005-09-28 2007-04-12 Sony Corp Medium start-up type software program, start control system of software program, and start-up control method of software program
US8146167B2 (en) 2005-07-29 2012-03-27 Sony Computer Entertainment Inc. Use management method for peripheral device, electronic system and component device thereof
US8195737B2 (en) 2004-06-15 2012-06-05 Sony Computer Entertainment Inc. Process management apparatus, computer systems, distributed processing method, and computer program

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112513839A (en) * 2018-08-02 2021-03-16 日本电气方案创新株式会社 License management device, issuing device and method, program execution device and method, and computer-readable medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005227809A (en) * 2004-02-10 2005-08-25 Dainippon Printing Co Ltd Software unauthorized installation preventing method, software unauthorized start preventing method, system performing them, and non-contact data carrier used for them
JP4601971B2 (en) * 2004-02-10 2010-12-22 大日本印刷株式会社 How to prevent unauthorized startup of software
US8195737B2 (en) 2004-06-15 2012-06-05 Sony Computer Entertainment Inc. Process management apparatus, computer systems, distributed processing method, and computer program
US8146167B2 (en) 2005-07-29 2012-03-27 Sony Computer Entertainment Inc. Use management method for peripheral device, electronic system and component device thereof
JP2007094739A (en) * 2005-09-28 2007-04-12 Sony Corp Medium start-up type software program, start control system of software program, and start-up control method of software program

Also Published As

Publication number Publication date
JP4319804B2 (en) 2009-08-26

Similar Documents

Publication Publication Date Title
US6233567B1 (en) Method and apparatus for software licensing electronically distributed programs
CN101689237B (en) Activation system architecture
JP3329432B2 (en) Hierarchical electronic cash execution method and apparatus used therefor
US7203966B2 (en) Enforcement architecture and method for digital rights management system for roaming a license to a plurality of user devices
JP5572209B2 (en) Electronic ticket processing method and apparatus
US20040255119A1 (en) Memory device and passcode generator
US20060107057A1 (en) Method and apparatus for providing television services using an authenticating television receiver device
US20050044377A1 (en) Method of authenticating user access to network stations
JP2005122402A (en) Ic card system
JP2010170561A (en) Portable electronic charge and authorization device and method therefor
JP2004013744A (en) Issuing system for digital content and issuing method
JP4097623B2 (en) Identity authentication infrastructure system
JP2010098367A (en) Information processor, code changeover method, and program
CN102073826A (en) System and method for digital copyright management using lightweight digital watermark adding component
JPWO2005117336A1 (en) Parent-child card authentication system
JP2006107323A (en) Device, method and program for processing information
US6651169B1 (en) Protection of software using a challenge-response protocol embedded in the software
Chen et al. A novel DRM scheme for accommodating expectations of personal use
JPH07123086A (en) Literary work communication control system using ic card
JP2000215280A (en) Identity certification system
JP4319804B2 (en) IC card application program, IC card and license management system
JPH10200522A (en) Ic card use enciphering method, system therefor and ic card
CN102129743A (en) System for preventing bank card from being stolen
KR20230044953A (en) Computing method and system for managing files through account authentication of blockchain
JP3792808B2 (en) Authentication method and authentication system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090304

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090331

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: 20090507

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090529

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

Free format text: PAYMENT UNTIL: 20120605

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4319804

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120605

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130605

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20140605

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees