JP3926233B2 - License management system and license management method - Google Patents

License management system and license management method Download PDF

Info

Publication number
JP3926233B2
JP3926233B2 JP2002215211A JP2002215211A JP3926233B2 JP 3926233 B2 JP3926233 B2 JP 3926233B2 JP 2002215211 A JP2002215211 A JP 2002215211A JP 2002215211 A JP2002215211 A JP 2002215211A JP 3926233 B2 JP3926233 B2 JP 3926233B2
Authority
JP
Japan
Prior art keywords
web server
license
predetermined program
product information
predetermined
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 - Fee Related
Application number
JP2002215211A
Other languages
Japanese (ja)
Other versions
JP2004054846A (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.)
NEC Corp
NEC System Technologies Ltd
Original Assignee
NEC Corp
NEC System Technologies 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 NEC Corp, NEC System Technologies Ltd filed Critical NEC Corp
Priority to JP2002215211A priority Critical patent/JP3926233B2/en
Publication of JP2004054846A publication Critical patent/JP2004054846A/en
Application granted granted Critical
Publication of JP3926233B2 publication Critical patent/JP3926233B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、Webページ(ホームページ)からダウンロードされて実行されるプログラムのライセンスを管理するシステムおよび方法に関する。さらには、本発明は、そのようなライセンス管理を実行するプログラムに関する。
【0002】
【従来の技術】
Webページからダウンロードされて実行されるプログラムの1つに「Java」(サンマイクロシステムズ社の登録商標)がある。「Java」のプログラムは、オペレーティングシステムなどのプラットフォームとは独立した仮想マシン上で動作することから、インターネットのような様々なプラットフォームが混在する環境下において広く利用されている。最近では、Javaアプレットと呼ばれるプログラムをWebサーバ(または、WWW(World Wide Web)サーバと呼ぶ場合もある。)上で提供されているWebページに埋め込み、クライアント端末に搭載されたWebブラウザ上でその埋め込まれたプログラムを読み込んで動作させるようにしたシステムも提供されている。
【0003】
図5に、Javaアプレットの読み込みが可能なシステムの一例を示す。このシステムは、クライアント端末100とWebサーバ200とがネットワーク、例えばインターネットを介して相互通信可能接続されるものであって、クライアント端末100にはJavaアプレット300を実行可能なWebブラウザ101が搭載されている。クライアント端末100およびWebサーバ200は通信機能を備えたコンピュータシステムであり、プログラムなどを蓄積する記憶装置、キーボードやマウスなどの入力装置、CRTやLCDなどの表示装置、外部との通信を行うモデムなどの通信装置、プリンタなどの出力装置および入力装置からの入力を受け付けて通信装置、出力装置、表示装置の動作を制御する制御装置から構成されている。
【0004】
Javaアプレット300は、Webサーバ200上で提供されているWebページに組み込まれたHTML(HyperText Markup Language)ファイルにタグとして関連付けられ、クリックによりインターネット経由でダウンロードされるプログラムである。アプレットファイル201は、Javaアプレット300の実体ファイルであって、通常、拡張子として「.cab」又は「.jar」が付与される。アプレット入力ファイル202には、アプレットの入力データが格納されている。これらアプレットファイル201およびアプレット入力ファイル202は、Webサーバ200に格納されている。
【0005】
上記のシステムでは、Webサーバ200上で、該Webサーバ200を管理する管理者によって作成されたJavaアプレット300のソースプログラムをコンパイルすることでアプレットファイル201が作成される。この作成されたアプレットファイル201は、アプレット入力ファイル202とともに、例えば予め作成したWebページの、表示画像上の特定の位置(座標)に設定されたHTMLファイルにタグとして関連付けられて登録される。
【0006】
ユーザは、クライアント端末100上でWebブラウザ101を起動することで、Webサーバ200上に提供されているWebページにアクセスする。Webページ上で、上記の特定の位置がクリックされると、まず、Javaアプレット300の実体ファイルであるアプレットファイル201が、Webサーバ200からインターネット経由でクライアント端末100にダウンロードされる。
【0007】
クライアント端末100では、Javaアプレット300としてダウンロードされたアプレットファイル201がWebブラウザ101により実行される。Javaアプレット300が実行されると、Javaアプレット300は、Webサーバ200に登録されているアプレット入力ファイル202から必要なデータを取得し、所定の処理を実行する。このJavaアプレット300の処理により、例えばグラフや画像をリアルタイムに表示させることができる。
【0008】
【発明が解決しようとする課題】
しかしながら、上述したようなJavaアプレットの読み込みが可能な従来のシステムにおいては、Javaアプレット300の実体ファイルであるアプレットファイル201は、Webサーバ200上の、Webブラウザ101から参照可能な場所に配置する必要がある。これは、言い換えれば、アプレットファイル201は、Webブラウザ経由であれば第三者が極めて容易に入手可能であることを意味する。また、アプレット入力ファイル202がテキストファイルである場合には、このアプレット入力ファイル202自身も容易に作成することができる。このようなことから、従来のシステムでは、第三者がJavaアプレット300を不正に入手し、本来のWebページとは別のWebページ上でそれを不正に使用する、といった問題点が生じていた。
【0009】
Javaアプレットに限らず、Webページからダウンロードされて実行される他のプログラムにおいても上記と同様な不正使用の問題が生じており、この問題の解決が重要な課題とされていた。
【0010】
なお、不正使用を防止する手法として、特開平7−110767号公報に記載されたようなソフトウェア使用ライセンス管理制御方法がある。この方法は、一定期間の使用を前提に有償で提供されるソフトウェア(有償ソフトウェア)のライセンス管理を行うものであって、契約期間・計算機固有ID等の起動条件を暗号化したライセンスファイルを生成し、これを有償ソフトウェアに付加して配信する、というものである。しかしながら、この手法は、ライセンスファイルと製品(有償ソフトウェア)とがペアで出荷されるようになっているため、これを上記のJavaアプレットのようなダウンロード可能な製品に適用した場合には、ライセンスファイルもWebブラウザからダウンロード可能な場所に配置されることになり、第三者がライセンスファイルと製品を共に入手して、それを別のWebページ上で不正に使用する、といった問題が生じる。
【0011】
本発明の目的は、上記問題を解決し、ダウンロードしたプログラムの不正な使用を防止することのできる、ライセンス管理システムおよびライセンス管理方法ならびにプログラムを提供することにある。
【0012】
【課題を解決するための手段】
上記目的を達成するため、本発明のライセンス管理システムは、Webサーバとクライアント端末とが相互通信可能に接続され、所定のプログラムが前記Webサーバから前記クライアント端末にダウンロードされるシステムであって、
前記Webサーバは、該Webサーバのホスト名を含む特定情報を暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成するライセンス生成手段を有し、
前記クライアント端末は、前記ダウンロードされた所定のプログラムに従って、前記ライセンス生成手段により生成されたライセンスファイルおよび前記特定情報を前記Webサーバから取得し、該取得した特定情報を復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行する実行手段を有することを特徴とする。
【0013】
本発明のライセンス管理方法は、Webサーバとクライアント端末とが相互通信可能に接続され、所定のプログラムが前記Webサーバから前記クライアント端末にダウンロードされるシステムにおいて行われるライセンス管理方法であって、
前記Webサーバが、該Webサーバのホスト名を含む特定情報を暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成する第1のステップと、
前記クライアント端末が、前記ダウンロードされた所定のプログラムに従って、前記Webサーバから前記ライセンスファイルおよび前記特定情報を取得し、該取得した特定情報を復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行する第2のステップとを有することを特徴とする。
【0014】
本発明のプログラムは、所定のプログラムを含み、該所定のプログラムがWebサーバからクライアント端末にダウンロードされるプログラムであって、
前記Webサーバのホスト名を含む特定情報を暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成する第1の処理を、前記Webサーバのコンピュータに実行させ、
ダウンロードされた前記所定のプログラムに従って、前記Webサーバから前記ライセンスファイルおよび前記特定情報を取得し、該取得した特定情報を復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行する第2の処理を、前記クライアント端末のコンピュータに実行させることを特徴とする。
【0015】
上記のとおりの本発明によれば、ダウンロードされた所定のプログラムを実行するには、ライセンスファイルと復号化用のキーとして用いられる特定情報(暗号化用のキーに同じ)の両方をダウンロード元のWebサーバから必ず取得する必要がある。ライセンスファイルは通常、Webサーバの、クライアント端末から参照可能な場所に格納されるため、第三者はこれを自由に取得することができる。一方、復号化用のキーである特定情報は、所定のプログラムに従って接続先のWebサーバから取得するものであり、第三者がクライアント端末を用いて自由に取得することはできない。このため、第三者がライセンスファイルを不正に取得してダウンロードした所定のプログラムとともに、ダウンロード元のWebサーバとは別のWebサーバ上で使用したとしても、復号化用のキーである特定情報を取得することができないため、所定のプログラムによる所定の処理が実行されることはない。このように、本発明では、ダウンロードされた所定のプログラムは、そのダウンロード元のWebサーバ上でしか使用することができない。
【0016】
【発明の実施の形態】
次に、本発明の実施形態について図面を参照して説明する。
【0017】
図1は、本発明の一実施形態であるライセンス管理システムの概略構成を示すブロック図である。このシステムは、Javaアプレットの不正使用を防止するためのライセンス管理を提供するシステムであって、その構成は、クライアント端末10とWebサーバ20とからなる。クライアント端末10およびWebサーバ20は通信機能を備えたコンピュータシステムであり、プログラムなどを蓄積する記憶装置、キーボードやマウスなどの入力装置、CRTやLCDなどの表示装置、外部との通信を行うモデムなどの通信装置、プリンタなどの出力装置および入力装置からの入力を受け付けて通信装置、出力装置、表示装置の動作を制御する制御装置などを有しており、例えばインターネットを介して相互通信可能接続される。
【0018】
クライアント端末10には、Javaアプレット30を実行可能なWebブラウザ11が搭載されている。Webサーバ20には、Javaアプレット30の実体ファイルであるアプレットファイル21、アプレットの入力データが格納されているアプレット入力ファイル22、Javaアプレット30のライセンス管理を行うためのライセンスファイル23およびライセンス生成装置24が格納されている。
【0019】
ライセンス生成装置24は、Webサーバ20を特定するための情報、例えばWebページ公開時に付けられるホスト名を暗号キーに使用して、予め付与されているJavaアプレット30の製品情報(製品名、バージョン情報、機能範囲など)を暗号化したライセンスファイル23を作成するものである。アプレットファイル21、アプレット入力ファイル22およびライセンスファイル23は、いずれもWebブラウザ11により参照が可能な場所に格納されているが、ライセンス生成装置24は、Webブラウザ11からは入手できない場所に格納されている。
【0020】
上述した本実施形態のライセンス管理システムでは、Web公開にあたり、ライセンス生成装置24によって、Webブラウザ10上で実行されるJavaアプレット30(アプレットのファイル自体はWebサーバ20上のアプレットファイル21)に対応したライセンスファイル23が作成される。図2は、このライセンス生成装置24によるライセンスファイル23の一作成手順を示すフローチャート図である。
【0021】
図2を参照すると、ライセンス生成装置24は、まず、Webとして公開する時のWebサーバ20のホスト名の入力を要求し、この入力要求に応じて、管理者がWebサーバ20のホスト名を入力する(ステップS10)。続いて、ライセンス生成装置24は、Javaアプレット30に関する製品情報を取得する(ステップS11)。この製品情報は、ライセンス生成装置24に付随の情報である。製品情報取得後、ライセンス生成装置24は、ステップS10で入力されたホスト名を暗号キーに使用し、ステップS11で取得した製品情報を暗号化する(ステップS12)。最後に、ステップS12で暗号化された製品情報をライセンスファイル23として生成する(ステップS13)。これらステップS10〜S13の手順は、予め用意されているプログラムによって実現される。
【0022】
上記ライセンスファイル23の作成後にWeb公開される。公開されたWebページは、Webブラウザ11により閲覧することができる。ユーザが、クライアント端末10上で、表示されたWebページの特定の位置をクリックすると、Webサーバ20からJavaアプレット30の実体ファイルであるアプレットファイル21がダウンロードされてWebブラウザ11上で実行される。このようにしてJavaアプレット30がダウンロードされて実行されると、Javaアプレット30は、プログラム不正使用を防止するための検証を行う。図3は、このJavaアプレット30による検証手順の一例を示すフローチャート図である。
【0023】
図3を参照すると、Webブラウザ11による実行直後に、接続先のWebサーバ20のホスト名を取得する(ステップS21)。続いて、Webサーバ20上のアプレットファイル21と同じ場所に存在するライセンスファイル23を取得し(ステップS22)、該ライセンスファイル23の取得が正常に行われたかどうかを検証する(ステップS23)。
【0024】
上記ステップS23における検証で、ライセンスファイル23の取得が正常に行われたと判断された場合は、ステップS22で取得したライセンスファイルの内容(暗号化されている製品情報)をステップS21で取得したホスト名をキーに使用して復号化し(ステップS24)、その復号化した製品情報がJavaアプレット30自身の製品情報と一致するかを検証する(ステップS25)。そして、自身の製品情報と一致した場合は、アプレット入力ファイル7からデータを読み込んで通常処理を行う(ステップS26)。
【0025】
上記ステップS23における検証で、例えば、ライセンスファイル23の一部の情報が欠落しために、ライセンスファイル23の取得が正常に行われなかったと判断された場合、および上記ステップS25における検証で、自身の製品情報と一致しなかったと判断された場合は、その旨を示すエラーメッセージを表示するエラー処理を実行し(ステップS27)、Javaアプレット30による処理自体を終了する。
【0026】
上述のJavaアプレット30による検証動作によれば、例えば、ダウンロードされたJavaアプレット30をダウンロード元のWebサーバ20とは異なるWebサーバ(以下、不正なWebサーバと記す)上で使用しようとした場合は、Javaアプレット30は、その不正なWebサーバのホスト名をキーに使用して、ライセンスファイル23の内容(暗号化されている製品情報)を復号化することになる。この場合は、復号化された製品情報がJavaアプレット30自身の製品情報と異なるため、Javaアプレット30による本来の処理(図3に示した通常処理)は実行されない。
【0027】
また、ライセンスファイル23は、Webサーバ20の、Webブラウザ11から参照可能な場所に格納されるため、第三者はこれを自由に取得することができるが、復号化用のキーは、Javaアプレット30によって接続先のWebサーバから取得されるものであり、第三者がクライアント端末10を用いて自由に取得することはできない。このため、第三者がライセンスファイル23を不正に取得してJavaアプレット30とともに、ダウンロード元のWebサーバ20とは別のWebサーバ上で使用したとしても、復号化用のキーを取得することができないため、Javaアプレット30による通常の処理が実行されることはない。なお、ダウンロード元のWebサーバ20のホスト名は、ライセンス生成装置24に付随の情報として与えられているが、ライセンス生成装置24自体は、Webブラウザ11からは入手できない場所に格納されているので、第三者がライセンス生成装置24の付随の情報(ホスト名)を不正に入手することはできない。
【0028】
以上のように、本実施形態のライセンス管理システムでは、Javaアプレット30は、ダウンロード元のWebサーバ20上でしか使用することができないので、第三者によるJavaアプレット30の不正な使用を防止することができる。
【0029】
(他の実施形態)
上述した実施形態では、Webサーバを1つのホスト名でWeb公開する場合を想定しおり、暗号化のためのキーとしてそのホスト名を用いるようになっているが、同一のWebサーバを複数のホスト名でWeb公開する場合にも上述したJavaアプレット30による検証動作を適用することができる。ここでは、同一のWebサーバを複数のホスト名でWeb公開する場合のライセンス管理について説明する。
【0030】
本実施形態のライセンス管理システムも、基本的な構成は図1に示したシステムと同じであるので、ここでは、図1を参照して特徴となる部分の動作のみを説明する。
【0031】
ライセンス生成装置24は、各ホスト名をそれぞれ暗号化用のキーに使用してJavaアプレット30の製品情報を暗号化したライセンスファイル23を生成する。例えば、同一のWebサーバをホスト名A、B、Cで公開する場合は、ライセンス生成装置24は、図4に示すような、ホスト名Aをキーに使用してJavaアプレット30の製品情報を暗号化したレコード23a、ホスト名Bをキーに使用してJavaアプレット30の製品情報を暗号化したレコード23b、ホスト名Cをキーに使用してJavaアプレット30の製品情報を暗号化したレコード23cからなるライセンスファイル23を生成する。各レコード23a〜23cは、それぞれ図2に示した手順に従って生成される。すなわち、図2のステップS10〜S12を公開するホスト名A、B、Cの分だけ繰り返し、製品情報をホスト名で暗号化したレコード23a〜23cを作成する。
【0032】
クライアント端末10側では、Webブラウザ11によってWebサーバ20からダウンロードされたJavaアプレット30による検証が図3に示した手順に従って行われる。ステップ21〜S23までの処理は同じである。ステップS24の復号化では、ライセンスファイル23内に存在する全てのレコード23a〜23cに対して復号化が行われる。そして、ステップS25において、これら復号化された製品情報の一つでも自身の製品情報に一致するものがあれば、ステップS26で通常処理を行い、一つも一致するのもがなければ、ステップS27でエラー処理を行う。
【0033】
以上説明した各実施形態では、Webサーバは1つしか示されていないが、複数のWebサーバを備えるようなシステム構成とすることも可能である。この場合は、Webサーバ毎に、それぞれのホスト名で暗号化されたライセンスファイルが生成されることになる。この場合、各Webサーバで生成されたライセンスファイル内容は異なる。
【0034】
以上の説明では、Javaアプレットを例にシステムの構成および動作を説明しているが、本発明はこの構成に限定されるものではなく、ユーザの要求に応じてプログラムがダウンロードされてブラウザ上で実行されるシステムであれば、どのようなシステムにも適用することができる。例えば、「ActiveX」(マイクロソフト社が提供するインターネット関連技術を示す総称)をダウンロードするようなシステムにおいても本発明を適用することができる。この場合は、図1に示したシステム構成において、Javaアプレット30、アプレットファイル22をそれぞれ「ActiveX」、「ActiveXファイル」に置き換えることにより、Javaアプレットのライセンス管理と同様な方法で、ActiveXのライセンス管理が可能となる。
【0035】
【発明の効果】
以上説明したように、本発明によれば、Webページからダウンロードしたプログラム(JavaアプレットやActiveX)は、ダウンロード元のWebサーバ上でしか使用することができないので、第三者がダウンロードしたプログラムを不正に使用する、といったことを防止することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態であるライセンス管理システムの概略構成を示すブロック図である。
【図2】図1に示すライセンス生成装置によるライセンスファイルの一作成手順を示すフローチャート図である。
【図3】図1に示すライセンス管理システムにおいて行われるJavaアプレットによる検証手順の一例を示すフローチャート図である。
【図4】本発明の他の実施形態であるライセンス管理システムにおいて生成される、複数の異なるホスト名を暗号化用のキーとして使用したライセンスファイルの一例を示すブロック図である。
【図5】Javaアプレットの読み込みが可能な従来のシステムの概略構成を示すブロック図である。
【符号の説明】
10、100 クライアント端末
11、101 Webブラウザ
20、200 Webサーバ
21、201 アプレットファイル
22、202 アプレット入力ファイル
23 ライセンスファイル
23a〜23c レコード
24 ライセンス生成装置
30 Javaアプレット
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a system and method for managing a license of a program downloaded from a Web page (homepage) and executed. Furthermore, the present invention relates to a program for executing such license management.
[0002]
[Prior art]
One of the programs that are downloaded from a Web page and executed is “Java” (registered trademark of Sun Microsystems, Inc.). Since the “Java” program operates on a virtual machine independent of a platform such as an operating system, it is widely used in an environment where various platforms such as the Internet coexist. Recently, a program called a Java applet is embedded in a Web page provided on a Web server (or sometimes called a WWW (World Wide Web) server), and the program is executed on a Web browser mounted on a client terminal. A system that reads an embedded program and operates it is also provided.
[0003]
FIG. 5 shows an example of a system capable of reading a Java applet. In this system, a client terminal 100 and a Web server 200 are connected to each other via a network, for example, the Internet, and the client terminal 100 is equipped with a Web browser 101 that can execute a Java applet 300. Yes. The client terminal 100 and the Web server 200 are computer systems having a communication function, such as a storage device that stores programs, an input device such as a keyboard and a mouse, a display device such as a CRT or LCD, a modem that communicates with the outside, and the like. Communication device, an output device such as a printer, and a control device that receives input from the input device and controls the operation of the communication device, output device, and display device.
[0004]
The Java applet 300 is a program that is associated as a tag with an HTML (HyperText Markup Language) file embedded in a Web page provided on the Web server 200 and downloaded via the Internet when clicked. The applet file 201 is an entity file of the Java applet 300, and usually has “.cab” or “.jar” as an extension. The applet input file 202 stores applet input data. The applet file 201 and the applet input file 202 are stored in the Web server 200.
[0005]
In the above system, the applet file 201 is created on the web server 200 by compiling the source program of the Java applet 300 created by the administrator who manages the web server 200. The created applet file 201 is registered together with the applet input file 202 in association with a HTML file set at a specific position (coordinates) on a display image of a web page created in advance, for example, as a tag.
[0006]
The user accesses the Web page provided on the Web server 200 by starting the Web browser 101 on the client terminal 100. When the above-mentioned specific position is clicked on the Web page, first, the applet file 201 that is an entity file of the Java applet 300 is downloaded from the Web server 200 to the client terminal 100 via the Internet.
[0007]
In the client terminal 100, the applet file 201 downloaded as the Java applet 300 is executed by the Web browser 101. When the Java applet 300 is executed, the Java applet 300 acquires necessary data from the applet input file 202 registered in the Web server 200 and executes predetermined processing. By the processing of the Java applet 300, for example, a graph and an image can be displayed in real time.
[0008]
[Problems to be solved by the invention]
However, in the conventional system capable of reading the Java applet as described above, the applet file 201, which is an entity file of the Java applet 300, needs to be arranged at a location that can be referred to from the Web browser 101 on the Web server 200. There is. In other words, this means that the applet file 201 can be obtained very easily by a third party via a Web browser. Further, when the applet input file 202 is a text file, the applet input file 202 itself can be easily created. For this reason, the conventional system has a problem that a third party illegally obtains the Java applet 300 and illegally uses it on a Web page different from the original Web page. .
[0009]
Not only Java applets, but also other programs that are downloaded from a Web page and executed, the same problem of illegal use has occurred, and the solution of this problem has been an important issue.
[0010]
As a technique for preventing unauthorized use, there is a software use license management control method as described in JP-A-7-110767. This method performs license management of software (paid software) provided for a fee on the assumption that it will be used for a certain period of time, and generates a license file that encrypts the start conditions such as the contract period and computer unique ID. This is added to paid software and distributed. However, in this method, since the license file and the product (paid software) are shipped in pairs, when this method is applied to a downloadable product such as the above Java applet, the license file Will also be placed at a location where it can be downloaded from a Web browser, causing a problem that a third party obtains a license file and a product together and illegally uses them on another Web page.
[0011]
An object of the present invention is to provide a license management system, a license management method, and a program that can solve the above problems and prevent an unauthorized use of a downloaded program.
[0012]
[Means for Solving the Problems]
In order to achieve the above object, a license management system of the present invention is a system in which a Web server and a client terminal are connected to be able to communicate with each other, and a predetermined program is downloaded from the Web server to the client terminal.
The Web server has license generation means for generating a license file in which predetermined product information related to the predetermined program is encrypted using specific information including the host name of the Web server as an encryption key. ,
The client terminal acquires the license file generated by the license generation means and the specific information from the Web server according to the downloaded predetermined program, and uses the acquired specific information as a decryption key. The content of the license file is decrypted, and execution means for executing a predetermined process only when the product information obtained by the decryption matches the product information of the predetermined program itself is provided.
[0013]
The license management method of the present invention is a license management method performed in a system in which a Web server and a client terminal are connected to be able to communicate with each other, and a predetermined program is downloaded from the Web server to the client terminal.
A first step in which the Web server uses the specific information including the host name of the Web server as an encryption key to generate a license file in which predetermined product information related to the predetermined program is encrypted;
The client terminal acquires the license file and the specific information from the Web server according to the downloaded predetermined program, and uses the acquired specific information as a decryption key to store the contents of the license file. And a second step of executing a predetermined process only when the product information obtained by the decryption matches the product information of the predetermined program itself.
[0014]
The program of the present invention includes a predetermined program, and the predetermined program is downloaded from a Web server to a client terminal,
Using the specific information including the host name of the Web server as an encryption key, a first process of generating a license file in which predetermined product information related to the predetermined program is encrypted is performed by the computer of the Web server. To run
According to the downloaded predetermined program, the license file and the specific information are acquired from the Web server, and the content of the license file is decrypted using the acquired specific information as a key for decryption. The client terminal computer is caused to execute a second process for executing a predetermined process only when product information obtained by the conversion matches product information of the predetermined program itself.
[0015]
According to the present invention as described above, in order to execute the downloaded predetermined program, both the license file and the specific information (same as the encryption key) used as the decryption key are stored in the download source. It must be obtained from the Web server. Since the license file is normally stored in a location on the Web server that can be referred to from the client terminal, a third party can obtain it freely. On the other hand, the specific information, which is a decryption key, is acquired from the connected Web server according to a predetermined program, and cannot be freely acquired by a third party using the client terminal. For this reason, even if a third party illegally obtains and downloads a license file and uses it on a Web server other than the download source Web server, the specific information that is the decryption key is used. Since it cannot be acquired, a predetermined process by a predetermined program is not executed. Thus, in the present invention, the downloaded predetermined program can be used only on the Web server that is the download source.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Next, embodiments of the present invention will be described with reference to the drawings.
[0017]
FIG. 1 is a block diagram showing a schematic configuration of a license management system according to an embodiment of the present invention. This system is a system that provides license management for preventing unauthorized use of a Java applet, and includes a client terminal 10 and a Web server 20. The client terminal 10 and the Web server 20 are computer systems having communication functions, such as storage devices that store programs, input devices such as keyboards and mice, display devices such as CRTs and LCDs, and modems that communicate with the outside. Communication devices, printers and other output devices and control devices that accept input from input devices and control the operation of the communication devices, output devices, and display devices. The
[0018]
The client terminal 10 is equipped with a Web browser 11 that can execute the Java applet 30. The Web server 20 includes an applet file 21 that is an entity file of the Java applet 30, an applet input file 22 in which applet input data is stored, a license file 23 for managing the license of the Java applet 30, and a license generation device 24. Is stored.
[0019]
The license generation device 24 uses the information for identifying the Web server 20, for example, the host name given at the time of Web page publication as the encryption key, and the product information (product name, version information) of the Java applet 30 assigned in advance. , A functional range) is created. The applet file 21, the applet input file 22, and the license file 23 are all stored in a location that can be referred to by the Web browser 11, but the license generation device 24 is stored in a location that cannot be obtained from the Web browser 11. Yes.
[0020]
In the above-described license management system of the present embodiment, when the Web is published, the license generation device 24 corresponds to the Java applet 30 (the applet file itself is the applet file 21 on the Web server 20) executed on the Web browser 10. A license file 23 is created. FIG. 2 is a flowchart showing a procedure for creating the license file 23 by the license generating device 24.
[0021]
Referring to FIG. 2, the license generation device 24 first requests input of the host name of the Web server 20 when publishing as Web, and the administrator inputs the host name of the Web server 20 in response to the input request. (Step S10). Subsequently, the license generation device 24 acquires product information related to the Java applet 30 (step S11). This product information is information accompanying the license generation device 24. After acquiring the product information, the license generating device 24 encrypts the product information acquired in step S11 using the host name input in step S10 as an encryption key (step S12). Finally, the product information encrypted in step S12 is generated as a license file 23 (step S13). The procedure of these steps S10 to S13 is realized by a program prepared in advance.
[0022]
After the license file 23 is created, it is published on the Web. The published web page can be browsed by the web browser 11. When the user clicks on a specific position of the displayed Web page on the client terminal 10, the applet file 21 that is an entity file of the Java applet 30 is downloaded from the Web server 20 and executed on the Web browser 11. When the Java applet 30 is downloaded and executed in this way, the Java applet 30 performs verification to prevent unauthorized use of the program. FIG. 3 is a flowchart showing an example of the verification procedure by the Java applet 30.
[0023]
Referring to FIG. 3, immediately after execution by the web browser 11, the host name of the web server 20 to be connected is acquired (step S21). Subsequently, the license file 23 existing at the same location as the applet file 21 on the Web server 20 is acquired (step S22), and it is verified whether or not the license file 23 has been normally acquired (step S23).
[0024]
If it is determined in the verification in step S23 that the license file 23 has been acquired normally, the host name acquired in step S21 is the content of the license file acquired in step S22 (encrypted product information). Is used as a key (step S24), and it is verified whether the decrypted product information matches the product information of the Java applet 30 itself (step S25). If it matches the product information of itself, data is read from the applet input file 7 and normal processing is performed (step S26).
[0025]
In the verification in step S23, for example, when it is determined that acquisition of the license file 23 has not been performed normally because part of the information in the license file 23 is missing, and in the verification in step S25, If it is determined that the information does not match the product information, an error process for displaying an error message to that effect is executed (step S27), and the process itself by the Java applet 30 is terminated.
[0026]
According to the verification operation by the Java applet 30 described above, for example, when the downloaded Java applet 30 is to be used on a Web server different from the Web server 20 that is the download source (hereinafter referred to as an illegal Web server). The Java applet 30 decrypts the contents (encrypted product information) of the license file 23 using the host name of the unauthorized Web server as a key. In this case, since the decrypted product information is different from the product information of the Java applet 30 itself, the original process (the normal process shown in FIG. 3) by the Java applet 30 is not executed.
[0027]
Further, since the license file 23 is stored in a location that can be referred to from the Web browser 11 of the Web server 20, a third party can freely obtain it, but the decryption key is a Java applet. 30 is acquired from the connection destination Web server, and cannot be freely acquired by a third party using the client terminal 10. For this reason, even if a third party illegally acquires the license file 23 and uses it together with the Java applet 30 on a Web server other than the Web server 20 that is the download source, it is possible to acquire a decryption key. Therefore, normal processing by the Java applet 30 is not executed. The host name of the download source Web server 20 is given as accompanying information to the license generation device 24, but the license generation device 24 itself is stored in a location that cannot be obtained from the Web browser 11. A third party cannot illegally obtain accompanying information (host name) of the license generation device 24.
[0028]
As described above, in the license management system according to the present embodiment, the Java applet 30 can be used only on the Web server 20 that is the download source, so that unauthorized use of the Java applet 30 by a third party is prevented. Can do.
[0029]
(Other embodiments)
In the above-described embodiment, it is assumed that the web server is published on the web with a single host name, and the host name is used as a key for encryption. The above-described verification operation by the Java applet 30 can also be applied when publishing on the Web. Here, license management in the case where the same Web server is published on the Web with a plurality of host names will be described.
[0030]
Since the basic configuration of the license management system of this embodiment is the same as that of the system shown in FIG. 1, only the operation of the characteristic part will be described here with reference to FIG.
[0031]
The license generation device 24 generates a license file 23 in which the product information of the Java applet 30 is encrypted using each host name as an encryption key. For example, when publishing the same Web server with host names A, B, and C, the license generating device 24 encrypts the product information of the Java applet 30 using the host name A as shown in FIG. Record 23a, record 23b obtained by encrypting product information of Java applet 30 using host name B as a key, and record 23c obtained by encrypting product information of Java applet 30 using host name C as a key. A license file 23 is generated. Each record 23a-23c is generated according to the procedure shown in FIG. That is, Steps S10 to S12 in FIG. 2 are repeated for the host names A, B, and C that disclose, and records 23a to 23c in which product information is encrypted with the host name are created.
[0032]
On the client terminal 10 side, verification by the Java applet 30 downloaded from the Web server 20 by the Web browser 11 is performed according to the procedure shown in FIG. The processing from step 21 to S23 is the same. In the decryption in step S24, decryption is performed on all records 23a to 23c existing in the license file 23. In step S25, if any of the decrypted product information matches the product information of its own, normal processing is performed in step S26. If none of the decrypted product information matches, the process proceeds to step S27. Perform error handling.
[0033]
In each of the embodiments described above, only one Web server is shown, but a system configuration including a plurality of Web servers is also possible. In this case, a license file encrypted with each host name is generated for each Web server. In this case, the contents of the license file generated by each Web server are different.
[0034]
In the above description, the configuration and operation of the system are described taking a Java applet as an example, but the present invention is not limited to this configuration, and a program is downloaded and executed on a browser in response to a user request. It can be applied to any system as long as it is a system. For example, the present invention can also be applied to a system that downloads “ActiveX” (a general term indicating Internet-related technologies provided by Microsoft Corporation). In this case, in the system configuration shown in FIG. 1, by replacing the Java applet 30 and the applet file 22 with “ActiveX” and “ActiveX file”, respectively, the ActiveX X license management is performed in the same manner as the Java applet license management. Is possible.
[0035]
【The invention's effect】
As described above, according to the present invention, a program downloaded from a Web page (Java applet or ActiveX) can only be used on the Web server from which it was downloaded. Can be prevented.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of a license management system according to an embodiment of the present invention.
FIG. 2 is a flowchart showing a procedure for creating a license file by the license generation apparatus shown in FIG. 1;
FIG. 3 is a flowchart showing an example of a verification procedure by a Java applet performed in the license management system shown in FIG. 1;
FIG. 4 is a block diagram showing an example of a license file that is generated in a license management system according to another embodiment of the present invention and uses a plurality of different host names as encryption keys.
FIG. 5 is a block diagram showing a schematic configuration of a conventional system capable of reading a Java applet.
[Explanation of symbols]
10, 100 Client terminal 11, 101 Web browser 20, 200 Web server 21, 201 Applet file 22, 202 Applet input file 23 License file 23a-23c Record 24 License generation device 30 Java applet

Claims (10)

Webサーバとクライアント端末とが相互通信可能に接続され、所定のプログラムが前記Webサーバから前記クライアント端末にダウンロードされるシステムであって、
前記Webサーバは、該Webサーバのホスト名又は外部から該Webサーバを特定する情報である特定情報を暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成するライセンス生成手段を有し、
前記クライアント端末は、前記ダウンロードされた所定のプログラムに従って、前記ライセンス生成手段により生成されたライセンスファイルおよび前記特定情報を前記Webサーバから取得し、該取得した特定情報を復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行する実行手段を有することを特徴とするライセンス管理システム。
A system in which a Web server and a client terminal are connected to be able to communicate with each other, and a predetermined program is downloaded from the Web server to the client terminal,
The Web server is a license obtained by encrypting predetermined product information related to the predetermined program by using the host name of the Web server or specific information that is information for specifying the Web server from the outside as an encryption key. Having a license generation means for generating a file;
The client terminal acquires the license file generated by the license generation means and the specific information from the Web server according to the downloaded predetermined program, and uses the acquired specific information as a decryption key. The license file includes: execution means for decrypting the contents of the license file and executing a predetermined process only when product information obtained by the decryption matches product information of the predetermined program itself. Management system.
前記特定情報は、前記所定のプログラムによってのみ取得される、請求項1に記載のライセンス管理システム。  The license management system according to claim 1, wherein the specific information is acquired only by the predetermined program. 前記特定情報は、前記Webサーバに付けられた複数の異なるホスト名であって
前記ライセンス生成手段は、前記複数の異なるホスト名のそれぞれを暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成し、
前記実行手段は、前記ライセンス生成手段により生成されたライセンスファイルおよび前記複数の異なるホスト名を前記Webサーバから取得し、該取得した複数の異なるホスト名をそれぞれ復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報の少なくとも1が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行することを特徴とする請求項1に記載のライセンス管理システム。
The specifying information is a plurality of different host name given to the Web server,
The license generation unit generates a license file in which predetermined product information related to the predetermined program is encrypted using each of the plurality of different host names as an encryption key,
The execution means acquires the license file generated by the license generation means and the plurality of different host names from the Web server, and uses the acquired different host names as decryption keys, respectively. The content of the license file is decrypted, and the predetermined process is executed only when at least one of the product information obtained by the decryption matches the product information of the predetermined program itself. The described license management system.
前記所定のプログラムは、ユーザの要求に応じて前記クライアント端末にダウンロードされ、ブラウザ上で実行されることを特徴とする請求項1から3のいずれか1項に記載のライセンス管理システム。  The license management system according to any one of claims 1 to 3, wherein the predetermined program is downloaded to the client terminal in response to a user request and executed on a browser. Webサーバとクライアント端末とが相互通信可能に接続され、所定のプログラムが前記Webサーバから前記クライアント端末にダウンロードされるシステムにおいて行われるライセンス管理方法であって、
前記Webサーバが、該Webサーバのホスト名又は外部から該Webサーバを特定する情報である特定情報を暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成する第1のステップと、
前記クライアント端末が、前記ダウンロードされた所定のプログラムに従って、前記Webサーバから前記ライセンスファイルおよび前記特定情報を取得し、該取得した特定情報を復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行する第2のステップとを有することを特徴とするライセンス管理方法。
A license management method performed in a system in which a Web server and a client terminal are connected to be able to communicate with each other, and a predetermined program is downloaded from the Web server to the client terminal,
A license obtained by encrypting predetermined product information related to the predetermined program, using the Web server host name or specific information that is information for specifying the Web server from the outside as an encryption key. A first step of generating a file;
The client terminal acquires the license file and the specific information from the Web server according to the downloaded predetermined program, and uses the acquired specific information as a decryption key to store the contents of the license file. And a second step of executing a predetermined process only when the product information obtained by the decryption matches the product information of the predetermined program itself.
前記特定情報は、前記Webサーバに付けられた複数の異なるホスト名であって
前記第1のステップは、前記複数の異なるホスト名のそれぞれを暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成するステップを含み、
前記第2のステップは、前記ライセンスファイルおよび前記複数の異なるホスト名を前記Webサーバから取得し、該取得した複数の異なるホスト名をそれぞれ復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報の少なくとも1が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行するステップを含むことを特徴とする請求項5に記載のライセンス管理方法。
The specifying information is a plurality of different host name given to the Web server,
The first step includes a step of generating a license file in which predetermined product information related to the predetermined program is encrypted using each of the plurality of different host names as an encryption key;
In the second step, the license file and the plurality of different host names are acquired from the Web server, and the acquired plurality of different host names are used as decryption keys, respectively. 6. The method according to claim 5, further comprising a step of decrypting and executing a predetermined process only when at least one of product information obtained by the decryption matches product information of the predetermined program itself. License management method.
前記所定のプログラムは、ユーザの要求に応じて前記クライアント端末にダウンロードされ、ブラウザ上で実行されることを特徴とする請求項5または6に記載のライセンス管理方法。  The license management method according to claim 5 or 6, wherein the predetermined program is downloaded to the client terminal in response to a user request and executed on a browser. 所定のプログラムを含み、該所定のプログラムがWebサーバからクライアント端末にダウンロードされるプログラムであって、
前記Webサーバのホスト名又は外部から該Webサーバを特定する情報である特定情報を暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成する第1の処理を、前記Webサーバのコンピュータに実行させ、
ダウンロードされた前記所定のプログラムに従って、前記Webサーバから前記ライセンスファイルおよび前記特定情報を取得し、該取得した特定情報を復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行する第2の処理を、前記クライアント端末のコンピュータに実行させることを特徴とするプログラム。
A program including a predetermined program, the predetermined program being downloaded from a Web server to a client terminal,
A license file in which predetermined product information related to the predetermined program is encrypted is generated by using the host name of the Web server or identification information that identifies the Web server from the outside as an encryption key. 1 processing is executed by the computer of the Web server,
According to the downloaded predetermined program, the license file and the specific information are acquired from the Web server, and the content of the license file is decrypted using the acquired specific information as a key for decryption. A program for causing a computer of the client terminal to execute a second process for executing a predetermined process only when product information obtained by the conversion matches product information of the predetermined program itself.
前記特定情報は、前記Webサーバに付けられた複数の異なるホスト名であって
前記第1の処理は、前記複数の異なるホスト名のそれぞれを暗号化用のキーに使用して、前記所定のプログラムに関する所定の製品情報を暗号化したライセンスファイルを生成する処理を含み、
前記第2の処理は、前記ライセンスファイルおよび前記複数の異なるホスト名を前記Webサーバから取得し、該取得した複数の異なるホスト名をそれぞれ復号化用のキーとして使用して前記ライセンスファイルの内容を復号化し、該復号化により得られた製品情報の少なくとも1が前記所定のプログラム自身の製品情報と合致した場合にのみ所定の処理を実行する処理を含むことを特徴とする請求項8に記載のプログラム。
The specifying information is a plurality of different host name given to the Web server,
The first process includes a process of generating a license file in which predetermined product information related to the predetermined program is encrypted using each of the plurality of different host names as an encryption key;
The second process acquires the license file and the plurality of different host names from the Web server, and uses the acquired plurality of different host names as decryption keys, respectively. 9. The method of claim 8, further comprising: decrypting and executing a predetermined process only when at least one of the product information obtained by the decryption matches the product information of the predetermined program itself. program.
前記所定のプログラムは、ユーザの要求に応じて前記クライアント端末にダウンロードされ、ブラウザ上で実行されることを特徴とする請求項8または9に記載のプログラム。  10. The program according to claim 8, wherein the predetermined program is downloaded to the client terminal in response to a user request and executed on a browser.
JP2002215211A 2002-07-24 2002-07-24 License management system and license management method Expired - Fee Related JP3926233B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002215211A JP3926233B2 (en) 2002-07-24 2002-07-24 License management system and license management method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002215211A JP3926233B2 (en) 2002-07-24 2002-07-24 License management system and license management method

Publications (2)

Publication Number Publication Date
JP2004054846A JP2004054846A (en) 2004-02-19
JP3926233B2 true JP3926233B2 (en) 2007-06-06

Family

ID=31937300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002215211A Expired - Fee Related JP3926233B2 (en) 2002-07-24 2002-07-24 License management system and license management method

Country Status (1)

Country Link
JP (1) JP3926233B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101545940B1 (en) 2013-11-26 2015-08-20 한국과학기술정보연구원 License management Apparatus, license management systmem, license management method and storage medium
JP2021185642A (en) * 2020-05-24 2021-12-09 大 益滿 License key with digital signature

Also Published As

Publication number Publication date
JP2004054846A (en) 2004-02-19

Similar Documents

Publication Publication Date Title
US7062750B2 (en) Accessing remote stores of source and symbol data for use by computing tools
US6065046A (en) Computerized system and associated method of optimally controlled storage and transfer of computer programs on a computer network
EP1897024B1 (en) A computer-implemented method and system for embedding ancillary information into the header of a digitally signed executable
US20080027742A1 (en) Information processing method, information processing apparatus, computer program and storage medium
US20140172720A1 (en) Method and system for securely incorporating electronic information into an online purchasing application
CN103780631B (en) System and method for digital rights management using a standard rendering engine
JPH10269078A (en) Software distribution method, server device and client device
JP6424499B2 (en) Image forming apparatus, information processing method, and program
TWI627554B (en) Methods for blocking unauthorized applications and apparatuses using the same
JP2004517377A (en) Control and management of digital assets
EP1203281B1 (en) System for protecting information over the internet
US20060031398A1 (en) Apparatus, method, and computer product for web-based data management
JP2003050641A (en) Program management system, its program management method, and information management program
WO2010035670A1 (en) Application control method, application control program, server device, client device, and application control system
US20090165144A1 (en) Contracted product supply method, client device, server and recording medium having program recorded therein
US20060259976A1 (en) Method of and software for monitoring digital information
JP3926233B2 (en) License management system and license management method
JP2005284353A (en) Personal information use system, method for controlling the same system, map file generating device and access control policy file generating device
US20030212639A1 (en) Method and system for providing secure authoring services for protected software
JP2006195826A (en) Method for protecting software and office computer with function of protecting software
JP2004234538A (en) Encrypted data sharing system
EP1174786A2 (en) Method, system, and program for reusing software licenses with new computer hardware
JP4340253B2 (en) Application program and storage medium
JP2004021304A (en) Client-server type download system
JP2006039794A (en) File management system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040427

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20041207

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20041207

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060705

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060904

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20061024

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20061124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061130

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070110

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070123

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070227

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20100309

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110309

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110309

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120309

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120309

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130309

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130309

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140309

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees