JP2004102552A - ライセンスキー発行装置、ライセンスキー生成方法、プログラム実行装置、プログラム実行装置の制御方法及びプログラム - Google Patents
ライセンスキー発行装置、ライセンスキー生成方法、プログラム実行装置、プログラム実行装置の制御方法及びプログラム Download PDFInfo
- Publication number
- JP2004102552A JP2004102552A JP2002262150A JP2002262150A JP2004102552A JP 2004102552 A JP2004102552 A JP 2004102552A JP 2002262150 A JP2002262150 A JP 2002262150A JP 2002262150 A JP2002262150 A JP 2002262150A JP 2004102552 A JP2004102552 A JP 2004102552A
- Authority
- JP
- Japan
- Prior art keywords
- license
- key
- information
- license key
- initial value
- 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.)
- Pending
Links
Images
Abstract
【課題】不正使用されにくいライセンスキーに係るライセンスキー発行装置及びプログラム実行装置を提供すること。
【解決手段】適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。発行要求取得部22は、要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する。適用回数取得部24は、前記関係情報に基づいて、前記要求使用許諾情報に対応する適用回数情報を取得する。キー値生成部26は、所定初期値に、取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成する。ライセンスキー生成部28は、取得される適用回数情報と、生成されるキー値と、を含むライセンスキーを生成する。
【選択図】 図2
【解決手段】適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。発行要求取得部22は、要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する。適用回数取得部24は、前記関係情報に基づいて、前記要求使用許諾情報に対応する適用回数情報を取得する。キー値生成部26は、所定初期値に、取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成する。ライセンスキー生成部28は、取得される適用回数情報と、生成されるキー値と、を含むライセンスキーを生成する。
【選択図】 図2
Description
【0001】
【発明の属する技術分野】
本発明はライセンスキー発行装置、ライセンスキー生成方法、プログラム実行装置、プログラム実行装置の制御方法及びプログラムに関し、特に、不正使用されにくいライセンスキーに関する。
【0002】
【従来の技術】
ソフトウェアには、ライセンスキーの入力(登録)によって、その動作が制御されるものがある。例えば、ライセンスキーが入力されるまでは、試用として提供され、ライセンスキーが入力されることによって、はじめて本番使用として提供されるものがある。また、例えば、試用版ではない通常のソフトウェアの機能の制限解除や拡張に、ライセンスキーが用いられることもある。
【0003】
【発明が解決しようとする課題】
しかしながら、これまでのライセンスキーは、不正使用を受けやすいものであった。例えば、ライセンスキーがネットワーク上の掲示板等で公開されたりすると、正規にライセンスキーの発行を受けていないユーザが、このライセンスキーを使用することによって、ソフトウェアを不正に使用することができてしまうという問題があった。
【0004】
本発明は上記課題に鑑みてなされたものであって、その目的は、不正使用されにくいライセンスキーに係るプログラム実行装置、プログラム実行装置の制御方法、ライセンスキー発行装置、ライセンスキー生成方法及びプログラムを提供することにある。
【0005】
【課題を解決するための手段】
上記課題を解決するために、本発明に係るライセンスキー発行装置は、要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得手段と、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得手段と、所定初期値に、前記適用回数取得手段によって取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段と、前記適用回数取得手段によって取得される適用回数情報と、前記キー値生成手段によって生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成手段と、前記ライセンスキー生成手段によって生成されるライセンスキーを出力するライセンスキー出力手段と、を含むことを特徴とする。
【0006】
また、本発明に係るライセンスキー生成方法は、要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得ステップと、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得ステップにおいて取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得ステップと、所定初期値に、前記適用回数取得ステップにおいて取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成ステップと、前記適用回数取得ステップにおいて取得される適用回数情報と、前記キー値生成ステップにおいて生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成ステップと、前記ライセンスキー生成ステップにおいて生成されるライセンスキーを出力するライセンスキー出力ステップと、を含むことを特徴とする。
【0007】
また、本発明に係るプログラムは、ライセンスキー発行装置としてコンピュータを機能させるためのプログラムであって、要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得手段、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得手段、所定初期値に、前記適用回数取得手段によって取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段、前記適用回数取得手段によって取得される適用回数情報と、前記キー値生成手段によって生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成手段、及び、前記ライセンスキー生成手段によって生成されるライセンスキーを出力するライセンスキー出力手段、として、パーソナルコンピュータやサーバコンピュータ等の前記コンピュータを機能させるためのプログラムである。
【0008】
また、本発明に係るプログラム実行装置は、当該装置における使用許諾内容を示す使用許諾情報を記憶する使用許諾情報記憶手段と、適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得手段と、所定初期値に、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段と、前記キー値生成手段によって生成されるキー値と、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれるキー値と、を比較するキー値比較手段と、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得手段と、前記キー値比較手段による比較結果に基づいて、前記使用許諾情報記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得手段によって取得される使用許諾情報に基づいて更新する使用許諾情報更新手段と、前記使用許諾情報記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御手段と、を含むことを特徴とする。
【0009】
また、本発明に係るプログラム実行装置の制御方法は、当該装置における使用許諾内容を示す使用許諾情報を記憶手段に記憶させる使用許諾情報記憶ステップと、適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得ステップと、所定初期値に、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成ステップと、前記キー値生成ステップにおいて生成されるキー値と、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれるキー値と、を比較するキー値比較ステップと、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得ステップと、前記キー値比較ステップにおける比較結果に基づいて、前記記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得ステップにおいて取得される使用許諾情報に基づいて更新する使用許諾情報更新ステップと、前記記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御ステップと、を含むことを特徴とする。
【0010】
また、本発明に係るプログラムは、プログラム実行装置としてコンピュータを機能させるためのプログラムであって、当該装置における使用許諾内容を示す使用許諾情報を記憶する使用許諾情報記憶手段、適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得手段、所定初期値に、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段、前記キー値生成手段によって生成されるキー値と、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれるキー値と、を比較するキー値比較手段、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得手段、前記キー値比較手段による比較結果に基づいて、前記使用許諾情報記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得手段によって取得される使用許諾情報に基づいて更新する使用許諾情報更新手段、及び、前記使用許諾情報記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御手段、として、パーソナルコンピュータやサーバコンピュータ等の前記コンピュータを機能させるためのプログラムである。
【0011】
本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)では、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。要求使用許諾情報を含むライセンスキー発行要求を取得されると、上記要求使用許諾情報に対応する適用回数情報が上記関係情報に基づいて取得される。そして、取得される適用回数情報と、取得される適用回数情報に基づく回数だけ所定初期値に一方向関数を適用することによって生成されるキー値と、を含むライセンスキーが生成される。そして、生成されたライセンスキーが出力(画面表示、印刷や送信等)される。ここで、一方向関数は、出力値から入力を推定することが困難であるという性質を有するものである。
【0012】
また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)では、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定されている。適用回数情報とキー値と含むライセンスキーが取得されると、所定初期値に上記適用回数情報に基づく回数だけ一方向関数を適用することによってキー値が生成される。そして、生成したキー値と上記ライセンスキーに含まれるキー値とが比較される。その結果に応じて、上記関係情報に基づいて取得された、上記ライセンスキーに含まれる適用回数情報に対応する使用許諾情報に基づいて、プログラム実行装置に記憶される使用許諾情報が更新される。プログラムの実行は、この使用許諾情報に基づいて制御される。
【0013】
本発明によれば、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。また、ライセンスキーに含まれるキー値は、所定初期値に適用回数情報に基づく回数だけ一方向関数を適用することによって生成される。一方向関数は、出力値から入力を推定することが困難であるという性質を有しているため、発行されたライセンスキーに基づいて、このライセンスキーによって示される使用許諾内容より価値の高い(有利な、制限されていない)使用許諾内容を示すライセンスキーを生成することが困難となる。これによって、不正使用されにくいライセンスキーを発行(生成)することができるようになる。また、このライセンスキーを認証し、その結果に応じて、このライセンスキーが示す使用許諾情報をプログラム実行装置に記憶させることができるようになる。そして、プログラム実行装置におけるプログラムの実行が、この使用許諾情報に基づいて制御されるようにすることができる。
【0014】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、基準初期値を記憶する基準初期値記憶手段を含み、前記所定初期値は、前記基準初期値記憶手段によって記憶される基準初期値に基づくものであることを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、基準初期値を記憶する基準初期値記憶手段を含み、前記所定初期値は、前記基準初期値記憶手段によって記憶される基準初期値に基づくものであることを特徴とする。こうすれば、ライセンスキーに含まれるキー値の生成に使用される一方向関数の初期値を、記憶される基準初期値に基づいたものとすることができるようになる。
【0015】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、前記基準初期値記憶手段は、使用許諾情報に基づく使用許諾内容の所定範囲を識別する範囲識別情報に対応づけて前記基準初期値を記憶し、前記関係情報は、前記範囲識別情報ごとに設定され、前記所定初期値は、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に基づく要求使用許諾内容が含まれる前記所定範囲を識別する、範囲識別情報に対応づけて前記基準初期値記憶手段に記憶される基準初期値に基づくものであり、前記ライセンスキー生成手段は、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に基づく要求使用許諾内容が含まれる前記所定範囲を識別する、範囲識別情報をさらに含むライセンスキーを生成することを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、前記基準初期値記憶手段は、使用許諾情報に基づく使用許諾内容の所定範囲を識別する範囲識別情報に対応づけて前記基準初期値を記憶し、前記ライセンスキーは、前記範囲識別情報をさらに含み、前記関係情報は、前記範囲識別情報ごとに設定され、前記所定初期値は、前記ライセンスキーに含まれる範囲識別情報に対応づけて前記基準初期値記憶手段に記憶される基準初期値に基づくものであることを特徴とする。
【0016】
初期値が一定である場合には、キー値の生成は一方向関数の適用回数によってのみ制御されるため、より多くのキー値(ライセンスキーに含まれる)を生成するためには、最大適用回数(適用回数の上限)を増やす必要があるのに対し、こうすれば、キー値の生成が適用回数と基準初期値(例えば、複数の基準初期値)とによって制御されるため、最大適用回数(適用回数の上限)を増やすことなく、より多くのキー値を生成することができるようになる。このため、使用許諾内容を細かく区別するようなライセンスキーや、広範囲な使用許諾内容に対応するライセンスキー(例えば、大規模ユーザから小規模ユーザまで対応するようなライセンスキー)を、処理速度(パフォーマンス)を落とすことなく発行することができるようになる。
【0017】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、前記一方向関数は、ハッシュ関数であることを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、前記一方向関数は、ハッシュ関数であることを特徴とする。ハッシュ関数としては、例えば、MD5、MASH、SHA−1等を用いることができる。ハッシュ関数は、出力値(ハッシュ値)から入力を推定することが困難であるという性質を有するとともに、さらに、同一の出力値(ハッシュ値)となる異なる入力を見つけることが困難であるという性質を有するため、ライセンスキーをより不正使用されにくいものとすることができるようになる。
【0018】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、前記ライセンスキー発行要求を識別する発行要求識別情報を取得する発行要求識別情報取得手段をさらに含み、前記所定初期値は、前記発行要求識別情報取得手段によって取得される発行要求識別情報に基づくものであり、前記ライセンスキー生成手段は、前記発行要求識別情報取得手段によって取得される発行要求識別情報をさらに含むライセンスキーを生成することを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、前記ライセンスキーは、ライセンスキー発行要求を識別する発行要求識別情報をさらに含み、前記所定初期値は、前記ライセンスキーに含まれる発行要求識別情報に基づくものであることを特徴とする。
【0019】
こうすれば、ライセンスキーに含まれるキー値を発行要求識別情報に基づくものとすることができる。このため、ライセンスキーを発行要求識別情報によって区別することができるようになり、1つのライセンスキーが同じプログラム実行装置に重複登録(複数回登録)されることを防ぐことができるようになる。なお、発行要求識別情報が異なれば、同一の使用許諾内容を示すライセンスキーを登録することができるようにしてもよい。また、発行要求識別情報は、ライセンスキー発行要求を完全に識別するものである必要はなく、ライセンスキー発行要求を実質的に識別できるものであればよい。
【0020】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、プログラム実行装置を識別する装置識別情報を取得する装置識別情報取得手段をさらに含み、前記所定初期値は、前記装置識別情報取得手段によって取得される装置識別情報に基づくものであることを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、当該装置を識別する装置識別情報を取得する装置識別情報取得手段をさらに含み、前記所定初期値は、前記装置識別情報取得手段によって取得される装置識別情報に基づくものであることを特徴とする。
【0021】
こうすれば、ライセンスキーに含まれるキー値を装置識別情報に基づくものとすることができる。このため、1つのライセンスキーが、異なるプログラム実行装置に登録されることを防ぐことができるようになる。なお、装置識別情報は、プログラム実行装置を完全に識別するものである必要はなく、プログラム実行装置を実質的に識別できるものであればよい。
【0022】
また、本発明の一態様では、前記使用許諾情報は、使用可能なユーザ数、使用可能な端末数、使用可能な期間、使用可能な等級、使用可能な回数、プログラム実行装置のCPU数のうち1又は複数を示すものであることを特徴とする。こうすれば、ライセンスキーを使用可能なユーザ数、使用可能な端末数、使用可能な期間、使用可能な等級(バージョン、グレード)、使用可能な回数又はプログラム実行装置の備えるCPU数等の1又は複数を示すものとすることができる。
【0023】
【発明の実施の形態】
以下、本発明の好適な実施の形態について図面に基づき詳細に説明する。なお、以下では、プログラム実行装置で実行されるソフトウェア、すなわち、発行されるライセンスキーの対象となるソフトウェアとして、Web版グループウェアを例に説明する。
【0024】
図1は、本発明の実施の形態に係るライセンス管理システムの構成例(Web版グループウェアに係る構成を含む)を示す図である。同図に示すように、このライセンス管理システム10は、ライセンス管理サーバ14(ライセンスキー発行装置)と、グループウェアサーバ16(プログラム実行装置)と、クライアント18と、を含んで構成されている。ライセンス管理サーバ14及びグループウェアサーバ16は、例えばCPU(Central Processing Unit)、ハードディスク記憶装置、ディスプレイ及び入力装置を備えた公知のサーバコンピュータシステムにより構成されている。また、クライアント18は、例えばCPU、ハードディスク記憶装置、ディスプレイ及び入力装置を備えた公知のパーソナルコンピュータにより構成されている。ライセンス管理サーバ14は、インターネット12等によってグループウェアサーバ16やクライアント18と相互にデータ授受可能なよう通信接続されている。また、グループウェアサーバ16及びクライアント18は、LAN(Local Area Network)13によって相互にデータ授受可能なよう通信接続されている。
【0025】
ライセンス管理サーバ14は、上記グループウェアのライセンスを管理するためのサーバコンピュータであり、ライセンス管理者(例えば、上記グループウェアの開発元や販売元等)によって運用管理されるものである。ライセンス管理サーバ14は、ライセンスキー発行サービスを提供するようになっている。すなわち、上記グループウェアのユーザからライセンスキー発行要求を受け付け、ライセンスキーを発行することができるようになっている。なお、ライセンスキー発行サービスは、ライセンス管理サーバ14にインストールされているCGI(Common Gateway Interface)プログラム等によって実現される。また、ライセンス管理サーバ14は、データベースを備えており、ユーザ情報やライセンス管理情報等を記憶している。このデータベースは、例えば公知のハードディスク記憶装置や公知のデータベースマネージメントシステムによって構成される。
【0026】
グループウェアサーバ16は、主にクライアント18からアクセスされるサーバコンピュータであり、Web版グループウェアサービスを提供するようになっている。Web版グループウェアは、HTTPに則り、スケジュール管理サービス、掲示板管理サービス、アドレス帳管理サービス、ToDoリスト管理サービス等をクライアント18に提供する公知のソフトウェアである。具体的には、上記グループウェアは、グループウェアサーバ16にインストールされているCGIプログラムによって実現される。グループウェアサーバ16には、さらにHTTPDがインストールされており、一方、クライアント18には、公知のWebブラウザがインストールされている。このため、クライアント18においてWebブラウザを起動し、そこから上記CGIプログラムにアクセスすることにより、グループウェアサービスに係る各種画面がクライアント18において表示されるようになっている。また、グループウェアサーバ16は、上記グループウェアのライセンスキー登録サービスを提供するようになっている。すなわち、グループウェアサーバ16は、発行されたライセンスキーの登録を受け付けることができるようになっている。このサービスも、CGIプログラム等によって実現されるものであり、詳細については後述する。
【0027】
上記グループウェアを使用するにあたって、ユーザは、そのインストールプログラム(CGIプログラムやデータベース等をインストールするためのプログラム)をCD−ROM(Compact Disc − Read Only Memory)等の情報記憶媒体を介して、或いはインターネット等のデータ通信回線を介して入手する。そして、このインストールプログラムによって、上記グループウェアを所定のサーバコンピュータにインストールする。上記グループウェアでは、インストール後の所定期間が試用期間として設定されており、ユーザは上記グループウェアを試用できるようになっている。ユーザは、上記グループウェアを所定期間試用した後、必要に応じたライセンスキーの発行を受け、上記グループウェアの本番使用を開始する。
【0028】
図2及び図3は、ライセンス管理システム10において実現される機能ブロックのうち、本発明に関連するものを中心として示す図である。図2は、ライセンス管理サーバ14(ライセンスキー発行装置)において実現される機能ブロックのうち、本発明に関連するものを中心として示している。図3は、グループウェアサーバ16(プログラム実行装置)において実現される機能ブロックのうち、本発明に関連するものを中心として示している。これらの機能は、サーバコンピュータ、パーソナルコンピュータ等のコンピュータによってプログラムが実行されることによって、実現されるものである。なお、このプログラムは、CD−ROM等のコンピュータにより読み取り可能な情報記憶媒体や、インターネット等のデータ通信回線によってコンピュータに供給されるものである。
【0029】
図2に示すように、ライセンス管理サーバ14は、発行要求取得部22、適用回数取得部24、キー値生成部26、ライセンスキー生成部28、ライセンスキー出力部30、基準初期値記憶部32、発行要求識別情報取得部34及び装置識別情報取得部36を含んで構成される。
【0030】
発行要求取得部22は、要求使用許諾情報を含むライセンスキー発行要求を取得する。要求使用許諾情報は、要求使用許諾内容、例えば、ユーザが要求する使用許諾内容を示すものである。使用許諾内容は、例えば、当該ソフトウェアを使用可能なユーザ数、当該ソフトウェアをインストール可能な端末数、当該ソフトウェアによって提供されるサービスを利用可能なユーザ数又は端末数、当該ソフトウェアを使用可能な期間又は回数、当該ソフトウェアの有する機能のうち使用可能な機能、当該ソフトウェアを実行するサーバ等(プログラム実行装置)のCPU数等、又はこれらの組み合わせを示すものである。
【0031】
適用回数取得部24は、適用回数情報と使用許諾情報との関係情報に基づいて、要求使用許諾情報に対応する適用回数情報を取得する。ここで、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。また、要求使用許諾情報は、発行要求取得部22によって取得されるライセンスキー発行要求に含まれるものである。なお、適用回数情報と使用許諾情報との関係情報は、範囲識別情報ごとに設定されるようにしてもよい。ここで、範囲識別情報は、使用許諾情報に基づく使用許諾内容の所定範囲を識別するものである。
【0032】
適用回数情報と使用許諾情報との関係情報は、例えば、図4に示すようになっている。同図は、区間ID(範囲識別情報)と適用回数との組み合わせに対応するライセンス数(使用許諾情報)を示している。例えば、区間ID「0001」と適用回数「4」の組み合わせは、ライセンス数「8500」に対応づけられている。ここで、区間IDは、ライセンス数の範囲(使用許諾情報に基づく使用許諾内容の所定範囲)を識別するものである。例えば、区間ID「0001」は、ライセンス数「500」から「10000」までの範囲を識別するものである。また、ライセンス数は、例えば、上記グループウェアの使用を許諾するユーザ数や、グループウェアサーバ16へのアクセスを許諾するクライアント数(端末数)等を示すものである。また、適用回数は、ライセンスキーに含まれるキー値を生成するために、ハッシュ関数を適用する回数を示すものである。すなわち、ライセンス数「8500」を示すライセンスキーに含まれるキー値は、所定の初期値にハッシュ関数を4回適用して取得されたハッシュ値となる。詳細については後述する。
【0033】
また、同図では、適用回数(適用回数情報に基づく回数)が増加すると、対応するライセンス数が減少する(対応する使用許諾情報に基づく使用許諾内容が制限される)ようになっている。同図では、適用回数が1増加するごとに、対応するライセンス数が「500」減少するようになっている。例えば、ライセンス数「8500」を示すライセンスキーに含まれるキー値に、さらにハッシュ関数を1回適用すると、そのハッシュ値はライセンス数「8000」を示すライセンスキーに含まれるキー値となる。こうすれば、ハッシュ関数は出力値(ハッシュ値)から入力値を算出することが困難であるという性質を有するため、発行されたライセンスキーに基づいて、さらに価値の高い(より制限されていない)ライセンスキーの発行を防ぐことができるようになる。なお、ここでは、ライセンス数の減少幅を「500」としたが、「100」や「1」とするようにしてもよい。このように減少幅を細かくすることによって、使用許諾内容が細かく異なるようなライセンスキーを発行することができる。
【0034】
さらに、同図では、区間IDには基準初期値が対応づけられている。基準初期値は、ハッシュ関数に適用される初期値を生成するためのものである。例えば、ライセンス数「8500」を示すライセンスキーに含まれるキー値は、基準初期値「12345」(区間ID「0001」に対応づけられた基準初期値)に基づいて生成される初期値に、ハッシュ関数を「4」回適用して得られるハッシュ値となる。ここで、初期値が一定(一つ)である場合には、キー値の生成がハッシュ関数の適用回数によってのみ制御されるため、より多くのキー値を生成するためには(ライセンスキーの種類を増やすためには)、最大適用回数を増やす必要があるのに対し、同図のようにすれば、キー値の生成が適用回数と基準初期値とによって制御されるため、最大適用回数を増やすことなく、より多くのキー値を生成することができるようになる。例えば、初期値が一定である場合、1000種類のキー値を生成するためには、最大適用回数は1000となるが、初期値が10種類ある場合には、最大適用回数は100で済む。すなわち、ハッシュ関数による計算回数を減らすことができるようになる。
【0035】
なお、この関係情報は、ライセンス管理サーバ14とグループウェアサーバ16とで同じ内容の情報を有するようになっている。また、この関係情報は、同図に示すようなテーブルによって表される必要はなく、数式によって表されるようにしてもよい。
【0036】
キー値生成部26は、所定初期値に、適用回数取得部24によって取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成する。なお、一方向関数はハッシュ関数であってもよい。また、所定初期値は、基準初期値記憶部32によって記憶される基準初期値に基づくものとしてもよい。また、所定初期値は、発行要求取得部22によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に基づく要求使用許諾内容が含まれる前記所定範囲を識別する、範囲識別情報に対応づけて基準初期値記憶部32に記憶される基準初期値に基づくものとしてもよい。また、所定初期値は、発行要求識別情報取得部34によって取得される発行要求識別情報に基づくものとしてもよい。また、所定初期値は、装置識別情報取得部36によって取得される装置識別情報に基づくものとしてもよい。例えば、キー値生成部26は、発行要求識別情報取得部34によって取得される発行要求識別情報と、装置識別情報取得部36によって取得される装置識別情報との少なくとも一方を所定初期値に加えて、キー値を生成するようにしてもよい。
【0037】
ライセンスキー生成部28は、適用回数取得部24によって取得される適用回数とキー値生成部26によって生成されるキー値とを含むライセンスキーを生成する。なお、ライセンスキーに含まれるキー値が、範囲識別情報に対応づけて基準初期値記憶部32に記憶される基準初期値に基づく所定初期値に基づいて生成されたものである場合には、ライセンスキーに該範囲識別情報を含める。また、ライセンスキーに含まれるキー値が、発行要求識別情報取得部34によって取得される発行要求識別情報に基づく所定初期値に基づいて生成されたものである場合には、ライセンスキーに該発行要求識別情報を含める。ライセンスキー出力部30は、ライセンスキー生成部28によって生成されるライセンスキーを出力(例えば、画面表示、印刷や送信等)する。
【0038】
基準初期値記憶部32は、例えば公知のハードディスク記憶装置やデータベースマネージメントシステムを含んで構成されたり、プログラム内部に含まれるものであり、基準初期値を記憶するものである。なお、基準初期値記憶部32は、範囲識別情報に対応づけて基準初期値を記憶するようにしてもよい。例えば、基準初期値記憶部32は、図4において説明したように、範囲識別情報と基準初期値とを対応づけて記憶する。
【0039】
発行要求識別情報取得部34は、発行要求識別情報を取得する。ここで、発行要求識別情報は、ライセンスキー発行要求を識別する情報である。なお、発行要求識別情報は、ライセンスキー発行要求を完全に識別するものである必要はなく、ライセンスキー発行要求を実質的に識別できるものでよい。例えば、発行要求識別情報は、ライセンスキー発行要求を受け付けた日時と乱数とを組み合わせたものとすればよい。
【0040】
装置識別情報取得部36は、装置識別情報を取得する。ここで、装置識別情報は、プログラム実行装置(グループウェアサーバ16)を識別する情報である。なお、装置識別情報は、プログラム実行装置を完全に識別するものである必要はなく、プログラム実行装置を実質的に識別できるものでよい。例えば、装置識別情報は、プログラム実行装置に装着されたNIC(Network Interface Card)のMAC(Media Access Control)アドレスと乱数とを組み合わせたものとすればよい。
【0041】
また、図3に示すように、グループウェアサーバ16は、装置識別情報取得部40、基準初期値記憶部42、ライセンスキー取得部44、キー値生成部46、キー値比較部48、使用許諾情報取得部50、使用許諾情報更新部52、使用許諾情報記憶部54及び制御部56を含んで構成される。
【0042】
装置識別情報取得部40は、当該装置を識別する装置識別情報を取得する。例えば、装置識別情報取得部40は、装置識別情報を記憶する装置識別情報記憶部を含むものであり、装置識別情報記憶部に記憶される装置識別情報を取得するものである。また、基準初期値記憶部42は、例えば公知のハードディスク記憶装置やデータベースマネージメントシステムを含んで構成されたり、プログラム内部に含まれるものであり、基準初期値を記憶する。なお、基準初期値記憶部42は、範囲識別情報に対応づけて基準初期値を記憶するようにしてもよい。例えば、基準初期値記憶部42は、図4において説明したように、範囲識別情報と基準初期値とを対応づけて記憶する。
【0043】
ライセンスキー取得部44は、ライセンスキーを取得する。ここで、ライセンスキーは、適用回数情報とキー値とを含むものである。なお、ライセンスキーに含まれるキー値が、範囲識別情報に対応する基準初期値に基づく所定初期値に基づいて生成されたものである場合には、ライセンスキーに該範囲識別情報が含まれる。また、ライセンスキーに含まれるキー値が、発行要求識別情報に基づく所定初期値に基づいて生成されたものである場合には、ライセンスキーに該発行要求識別情報を含まれる。
【0044】
キー値生成部46は、所定初期値に、ライセンスキー取得部44によって取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成する。なお、一方向関数は、ハッシュ関数であってもよい。また、ライセンスキーに含まれるキー値が、基準初期値に基づく所定初期値に基づいて生成されたものである場合には、所定初期値は、基準初期値記憶部42によって記憶される基準初期値に基づくものとする。また、ライセンスキーに含まれるキー値が、範囲識別情報に対応する基準初期値に基づく所定初期値に基づいて生成されたものである場合には、所定初期値は、ライセンスキー取得部44によって取得されるライセンスキーに含まれる範囲識別情報に対応づけて基準初期値記憶部42に記憶される基準初期値に基づくものとする。また、ライセンスキーに含まれるキー値が、発行要求識別情報に基づく所定初期値に基づいて生成されたものである場合には、所定初期値は、ライセンスキー取得部44によって取得されるライセンスキーに含まれる発行要求識別情報に基づくものとする。また、ライセンスキーに含まれるキー値が、装置識別情報に基づく所定初期値に基づいて生成されたものである場合には、所定初期値は、装置識別情報取得部40によって取得される装置識別情報に基づくものとする。例えば、キー値生成部46は、ライセンスキー取得部44によって取得されるライセンスキーに含まれる発行要求識別情報と、装置識別情報取得部40によって取得される装置識別情報との少なくとも一方を所定初期値に加えて、キー値を生成するようにしてもよい。また、キー値比較部48は、キー値生成部46によって生成されるキー値と、ライセンスキー取得部44によって取得されるライセンスキーに含まれるキー値と、を比較する。
【0045】
使用許諾情報取得部50は、適用回数情報と使用許諾情報との関係情報に基づいて、ライセンスキー取得部44によって取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する。ここで、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。なお、適用回数情報と使用許諾情報との関係情報は、範囲識別情報ごとに設定されるようにしてもよい。また、適用回数情報と使用許諾情報との関係情報は、例えば図4に示すようなものであり、ライセンス管理サーバ14とグループウェアサーバ16とで同じ内容の情報が有されるようになっている。
【0046】
使用許諾情報更新部52は、キー値比較部48による比較結果に基づいて、使用許諾情報記憶部54に記憶される使用許諾情報を、使用許諾情報取得部50によって取得される使用許諾情報に基づいて更新する。使用許諾情報記憶部54は、例えば公知のハードディスク記憶装置やデータベースマネージメントシステムを含んで構成されるものであり、当該プログラム実行装置における使用許諾内容を示す使用許諾情報を記憶する。使用許諾情報記憶部54は、例えば図6に示すような、ライセンスキー登録テーブルを記憶する。ライセンスキー登録テーブルについては後述する。制御部56は、使用許諾情報記憶部54によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する。
【0047】
以下、ライセンス管理システム10の動作、特に、上記グループウェアのインストールからライセンスキーの登録までについて説明する。
【0048】
先述したように、上記グループウェアを使用するにあたって、ユーザは、そのインストールプログラムをCD−ROM等の情報記憶媒体を介して、或いはインターネット等のデータ通信回線を介して入手する。そして、ユーザは、グループウェアサーバ16として機能させるサーバコンピュータに上記グループウェアをインストールする。上記グループウェアがインストールされると、グループウェアサーバ16には、図5に示すようなデータと、図6に示すようなライセンスキー登録テーブルとが記憶される。
【0049】
図5において、PID(装置識別情報)は、グループウェアサーバ16(プログラム実行装置)を識別するものである。PIDは、インストールプログラムによって生成される。PIDは、グループウェアサーバ16を完全に識別するものである必要はなく、実質的に識別するものであればよい。例えば、PIDは、グループウェアサーバ16に装着されるNICのMACアドレスと、乱数と、に基づいて生成されるようにすればよい。また、グループウェアサーバ16に装着されるNICのMACアドレスと、インストールが実行された日時と、に基づいて生成されるようにしてもよい。生成されたPIDは、インストールプログラムによって、インターネット12を介してライセンス管理サーバ14に送信される。ライセンス管理サーバ14では、図7に示すようなユーザ情報テーブルによって、PIDが記憶(管理)される。すなわち、PIDは、ユーザを識別するUID(ユーザ識別情報)に対応づけて記憶される。また、ユーザ情報テーブルでは、UIDやPIDの他に、例えばユーザ名やメールアドレス等が記憶されるようにしてもよい。
【0050】
また、図5において、試用フラグは、「試用」か「本番使用」かを示すものである。上記グループウェアのインストール後であって、ライセンスキーの登録が行われるまでは、試用フラグは「試用」を示すものとなる。ライセンスキーの登録が行われると、試用フラグは「本番使用」を示すものへと変更される。
【0051】
また、図6に示すライセンスキー登録テーブルは、グループウェアサーバ16に対して登録されたライセンスキーを記憶するためのものである。上記グループウェアのインストール後であって、ライセンスキーの登録が行われるまでは、レコードのない状態となる。ライセンスキー登録テーブルへのライセンスキーの登録については後述する。
【0052】
ユーザは、上記グループウェアを所定期間試用した後、必要に応じたライセンスキーの発行要求を行い、ライセンスキーの発行を受ける。ユーザによるライセンスキーの発行要求は、ライセンス管理サーバ14によって提供されるライセンスキー発行サービスによって行われる。具体的には、ユーザは、クライアント18においてWebブラウザを起動し、そこからライセンス管理サーバ14の所定のCGIプログラム(ライセンスキー発行サービスに係るもの)にアクセスすることにより、ライセンスキー発行要求画面がクライアント18において表示されるようになっている。ユーザは、ライセンスキー発行要求画面において、UIDや希望ライセンス数(要求使用許諾情報)等を入力する。入力されたUIDや希望ライセンス数等は、ライセンスキー発行要求としてライセンス管理サーバ14に送信される。そして、このライセンスキー発行要求を受信したライセンス管理サーバ14では、ライセンスキー発行処理が実行される。
【0053】
ライセンス管理サーバ14におけるライセンスキー発行処理を図8に示す。同図に示すように、ライセンス管理サーバ14の発行要求取得部22は、ライセンスキー発行要求(以下、発行要求とする。)を受信する(S101)。発行要求は、先述したようにUIDや希望ライセンス数等を含むものである。発行要求を受信すると、ライセンス管理サーバ14は、発行要求が正当であるか否かを判断する(S102)。例えば、発行要求に含まれるUIDがユーザ情報テーブル(図7参照)に登録されているか否か等について判断する。発行要求が正当でないと判断される場合には、その旨をユーザに通知するとともに、ライセンスキー発行処理を終了する。
【0054】
一方、発行要求が正当であると判断される場合には、ライセンス管理サーバ14の装置情報取得部36は、発行要求に基づいて、PIDを取得する(S103)。具体的には、ユーザ情報テーブルから、発行要求に含まれるUIDに対応づけられたPIDを取得する。例えば、UIDが「001」であれば、PIDとして「ABCDEFGH」を取得する(図7参照)。
【0055】
次に、ライセンス管理サーバ14の発行要求識別情報取得部34は、ライセンスキー発行要求ID(発行要求識別情報。以下、発行要求IDとする。)を生成する(S104)。発行要求IDは、発行要求を一意に識別するためのものである。発行要求IDは、例えば、発行要求を受信した日時に基づいて生成するようにすればよい。また、例えば、発行要求を受信した日時と乱数とに基づいて生成するようにすればよい。
【0056】
次に、ライセンス管理サーバ14の適用回数取得部24は、発行要求に基づいて、区間ID、基準初期値及び適用回数とを取得する(S105)。具体的には、適用回数情報と使用許諾情報との関係情報(図4)に基づいて、発行要求に含まれる希望ライセンス数に対応する区間ID、基準初期値及び適用回数とを取得する。例えば、希望ライセンス数が「8500」であれば、区間IDとして「0001」を、基準初期値として「12345」を、適用回数として「4」を取得する(図4参照)。
【0057】
次に、ライセンス管理サーバ14は、S104において生成した発行要求IDと、S103で取得したPIDと、S105において取得した基準初期値と、に基づいて、初期値を生成する(S106)。例えば、これらを連結した文字列に基づいて初期値を生成するようにすればよい。そして、ライセンス管理サーバ14のキー値生成部26は、この初期値にS105で取得した適用回数だけハッシュ関数を適用し、得られるハッシュ値をキー値として取得する(S107)。以上のように、ライセンスキーに含まれるキー値の生成は、発行要求IDとPIDとに基づいて行われる。このため、生成されるライセンスキーは、発行要求IDとPIDとに基づいたものとなる。
【0058】
次に、ライセンス管理サーバ14のライセンスキー生成部28は、ライセンスキーを生成する(S108)。ライセンスキーは、図9に示すように、S104において生成した発行要求IDと、S105において取得した区間IDと、S105において取得した適用回数と、S107において取得したキー値と、を含んで構成される。例えば、ライセンスキーは、発行要求IDと区間IDと適用回数とキー値とをそれぞれハイフン(−)等で連結したものとすればよい。なお、ライセンスキーに適用回数を含ませるのは、ライセンスキーの認証処理のパフォーマンスを向上するためである。
【0059】
そして、ライセンス管理サーバ14のライセンスキー出力部30は、生成したライセンスキーを出力する(S109)。例えば、生成したライセンスキーを画面表示するためのHTMLファイルを生成し、このHTMLファイルをクライアント18等(ライセンスキー発行要求を行ったクライアント)に送信するようにしてもよい。また、ライセンスキーが記載された電子メールをユーザに送信するようにしてもよい。この場合、発行要求に通知先メールアドレスが含まれるようにし(ライセンスキー発行要求画面において通知先メールアドレスが入力されるようにし)、ライセンス管理サーバ14が、S108において生成したライセンスキーを通知先メールアドレスあてに送信するようにすればよい。
【0060】
以上でライセンスキーの発行処理は完了する。なお、以上に説明したライセンスキー発行処理は、ライセンス管理サーバ14においてプログラムが実行されることによって実現されるものである。
【0061】
ユーザは、発行されたライセンスキーを、図10に示すような、ライセンスキー登録画面において登録する。このライセンスキー登録画面は、クライアント18においてWebブラウザを起動し、そこからグループウェアサーバ16の所定のCGIプログラム(ライセンスキー登録サービスに係るもの)にアクセスすることにより、クライアント18において表示されるようになっている。
【0062】
同図に示すように、ライセンスキー登録画面70には、ライセンスキー入力欄72(72a〜72d)、ライセンス数表示欄74、合計ライセンス数表示欄76及び登録リンクボタン78が表示される。ライセンスキー入力欄72(72a〜72d)には、発行されたライセンスキーが入力される。例えば、通知されたライセンスキーが「AAA−BBB−CCC−DDD」であれば、ライセンスキー入力欄72aに「AAA」を、入力欄72bに「BBB」を、入力欄72cに「CCC」を、入力欄72dに「DDD」をそれぞれ入力する。ライセンス数表示欄74には、ライセンスキーの登録完了後に、各ライセンスキーが示すライセンス数が表示される。合計ライセンス数表示欄76には、ライセンス数表示欄74の合計が表示される。また、登録リンクボタン78は、ライセンスキー登録処理を実行するCGIプログラムへのリンクとなっている。この登録リンクボタン78がクリックされると、入力されたライセンスキーを含むライセンスキー登録要求が、グループウェアサーバ16に送信される。そして、グループウェアサーバ16では、送信されたライセンスキー登録要求に基づいて、ライセンスキー登録処理が実行され、ライセンスキー登録テーブル(図6)にライセンスキーが登録される。なお、ライセンスキー登録画面70には、ライセンスキー登録テーブルにすでにライセンスキーが登録されている場合には、登録済みのライセンスキーが表示される。また、登録済みのライセンスキーの表示の他に、ライセンスキー入力欄72(72a〜72d)が一組だけ表示されるようにしてもよい。
【0063】
グループウェアサーバ16におけるライセンスキー登録処理を図11に示す。同図に示すように、グループウェアサーバ16のライセンスキー取得部44は、ライセンスキー登録要求(以下、登録要求とする。)を受信する(S201)。登録要求を受信すると、グループウェアサーバ16は、登録要求に含まれるライセンスキーからライセンスキー発行要求ID(入力欄aに入力したもの)、区間ID(入力欄bに入力したもの)、適用回数(入力欄cに入力したもの)、キー値(入力欄dに入力したもの)を取得する(S202)。
【0064】
次に、グループウェアサーバ16は、S202において取得したライセンス発行要求IDが、ライセンスキー登録テーブルにすでに登録されていないことを確認する(S203)。この確認を行うことによって、グループウェアサーバ16に、同じライセンスキーが重複登録されることを防ぐことができる。ライセンスキー発行要求IDがすでに登録されている場合には、その旨をユーザに通知するための画面(エラー画面)を表示するためのHTMLファイルを生成する(S213)。
【0065】
一方、ライセンス発行要求IDが登録されていない場合には、グループウェアサーバ16は、S202において取得した区間IDに対応する基準初期値を取得する(S204)。具体的には、適用回数情報と使用許諾情報との関係情報(図4)に基づいて、S202において取得した区間IDに対応する基準初期値を取得する、例えば、区間IDが「0001」であれば、基準初期値として「12345」を取得する(図4参照)。
【0066】
次に、グループウェアサーバ16は、PIDを取得する(S205)。PIDは、上記グループウェアのインストール時に生成され、グループウェアサーバ16に記憶されているものである(図5参照)。そして、グループウェアサーバ16は、S202において取得したライセンスキー発行要求IDと、S205において取得したPIDと、S204において取得した基準初期値とに基づいて、初期値を生成する(S206)。なお、初期値の生成方法は、S105と同じ方法である。そして、グループウェアサーバ16のキー値生成部46は、この初期値にS202で取得した適用回数だけハッシュ関数を適用し、得られるハッシュ値をキー値として取得する(S207)。なお、ここで使用されるハッシュ関数は、S106で使用されるハッシュ関数と同じものである。
【0067】
次に、グループウェアサーバ16のキー値比較部48は、S202において取得したキー値と、S207において取得したキー値とが一致するか否かを判断する(S208)。一致しないと判断される場合には、ユーザによって入力されたライセンスキーに誤りがあると判断し、その旨をユーザに通知するための画面(エラー画面)を表示するためのHTMLファイルを生成する(S213)。
【0068】
一方、一致すると判断される場合には、グループウェアサーバ16の使用許諾情報取得部50は、S202において取得した区間IDと適用回数とに対応するライセンス数を取得する(S209)。具体的には、適用回数情報と使用許諾情報との関係情報(図4)に基づいて、ライセンス数を取得する。例えば、区間IDが「0001」であり、適用回数が「4」であれば、ライセンス数として「8500」を取得する(図4参照)。
【0069】
次に、グループウェアサーバ16の使用許諾情報更新部52は、S201で受信した登録要求に含まれるライセンスキーと、S209において取得したライセンス数とをライセンスキー登録テーブルに登録する(S210)。すなわち、ライセンスキー登録テーブルの対応するフィールドにそれぞれ登録する。そして、ライセンス数の合計が0から変更になる場合(ライセンスキーがはじめて登録される場合)には、試用フラグ(図5)を「試用」から「本番使用」を示すものへと変更する(S211)。以降、グループウェアサーバ16の制御部56は、上記グループウェアが「本番使用」として実行されるように制御する。また、グループウェアサーバ16の制御部56は、上記グループウェアが、ライセンスキー登録テーブルに登録されたライセンス数(使用許諾内容)に基づいて実行されるように制御する。
【0070】
次に、グループウェアサーバ16は、ユーザにライセンスキーの登録状況を通知するための画面を表示するためのHTMLファイルを生成する(S212)。そして、グループウェアサーバ16は、S212、或いはS213において生成したHTMLファイルをクライアント18に送信する(S212、S213)。クライアント18では、これらのHTMLファイルに基づいた画面が表示される。
【0071】
なお、本実施の形態に係るライセンスキーには、グループウェアサーバ16を識別するPID(装置識別情報)に基づいて生成されたキー値が含まれている。そして、S208においては、このキー値と、グループウェアサーバ16に記憶されるPIDに基づいて生成されたキー値(S207)とが比較されることによって、ライセンスキーの正当性が検証されるようになっている。このため、発行されたライセンスキーを、他のグループウェアサーバ16において登録することができないようになっている。
【0072】
また、本実施の形態に係るライセンスキーには、適用回数が含まれるようになっている。ライセンスキーに適用回数が含まれない場合には、S207及びS208において、初期値(S206において生成したもの)にハッシュ関数を適用し、得られるハッシュ値(キー値)をS202において取得したキー値と比較するという処理を、キー値が一致するまで、又は、適用回数が上限(図4の場合であれば「20」)に達するまで繰り返す必要がある。これに対し、本実施の形態に係るライセンスキーのように、適用回数が含まれている場合には、上記比較処理を繰り返す必要がなく、ライセンスキーの認証処理(S207及びS208)のパフォーマンスを向上することができる。
【0073】
以上でライセンスキーの登録処理は完了する。なお、以上に説明したライセンスキー登録処理は、グループウェアサーバ16においてプログラムが実行されることによって実現されるものである。
【0074】
以上説明したライセンス管理サーバ14(ライセンスキー発行装置)、グループウェアサーバ16(プログラム実行装置)によれば、ライセンスキーに含まれるキー値は、一方向性(ハッシュ値から入力値を算出することが困難)を有するハッシュ関数によって生成される。また、ハッシュ関数の適用回数と使用許諾内容との関係は、適用回数が増加すると、対応する使用許諾内容が制限されるように設定される。このため、発行されたライセンスキーに基づいて、より高い価値を有する(より制限されていない)ライセンスキーを生成することが困難となる。
【0075】
また、ライセンスキーに含まれるキー値を生成するための基準初期値は、使用許諾内容の所定範囲ごとに設定される。初期値が一定である場合には、キー値の生成がハッシュ関数の適用回数によってのみ制御されるため、より多くのキー値を生成するためには(ライセンスキーの種類を増やすためには)、最大適用回数(適用回数の上限)を増やす必要があるのに対し、以上によれば、キー値の生成が適用回数と基準初期値(例えば、複数の基準初期値)とによって制御されるため、最大適用回数を増やすことなく、より多くのキー値を生成することができるようになる。このため、使用許諾内容を細かく区別するようなライセンスキーや、広範囲な使用許諾内容に対応するライセンスキー(例えば、大規模ユーザから小規模ユーザまで対応するようなライセンスキー)を、処理速度(パフォーマンス)を落とすことなく発行することができるようになり、ライセンスキー発行における柔軟性を向上することができるようになる。
【0076】
また、ライセンスキーに含まれるキー値は、グループウェアサーバ16を識別するPID(装置識別情報)に基づいて生成される。そして、ライセンスキー登録処理では、このキー値は、グループウェアサーバ16に記憶されるPIDに基づいて生成されるキー値と比較されるようになっている。このため、発行されたライセンスキーが、他のグループウェアサーバ16において登録されることを防ぐことができるようになる。すなわち、1つのライセンスキーが、異なるグループウェアサーバ16で登録されないようにすることができるようになる。
【0077】
また、ライセンスキーには、ライセンスキー発行要求ID(発行要求識別情報)が含まれ、ライセンスキーに含まれるキー値は、ライセンスキー発行要求IDに基づいて生成される。そして、ライセンスキー登録処理においては、すでに登録されているライセンスキーのライセンスキー発行要求IDを含むライセンスキーは登録されないようになっている。また、ライセンスキー登録処理では、ライセンスキーに含まれるキー値と、ライセンスキーに含まれるライセンスキー発行要求IDに基づいて生成されるキー値とが比較されるようになっている。このため、グループウェアサーバ16では複数のライセンスキーを登録できるようになっているが、同じライセンスキーが重複登録(複数回登録)されないようにすることができる。
【0078】
すなわち、以上説明したライセンス管理サーバ14(ライセンスキー発行装置)、グループウェアサーバ16(プログラム実行装置)によれば、ライセンスキーを不正使用されにくいものとすることができる。
【0079】
なお、本発明は以上説明した実施の形態に限定されるものではない。
【0080】
例えば、以上では、ソフトウェアとしてWeb版グループウェアを例に説明したが、ソフトウェアはWeb版グループウェアに限られない。すなわち、Web版グループウェアのように、サーバコンピュータにインストールされ、該サーバコンピュータで実行されるプログラムにクライアントからアクセスして使用するようなソフトウェアに限られない。他の種類のソフトウェアであってもよい。例えば、各クライアントにインストールされ、各クライアントで実行されるようなソフトウェアであってもよい。また、ソフトウェアはプログラムに限られない。
【0081】
また、以上では、インターネット12等によって、ライセンス管理サーバ14とグループウェアサーバ16とが相互にデータ授受可能なよう通信接続されることとして説明したが、必ずしもライセンス管理サーバ14とグループウェアサーバ16とが通信接続される必要はない。例えば、グループウェアサーバ16からインターネット12を介してライセンス管理サーバ14に送信されることとして説明したPIDや、クライアント18からインターネット12を介してライセンス管理サーバ14に送信されることとして説明したライセンスキー発行要求や、ライセンス管理サーバ14において生成されたライセンスキーは、電話、FAX、郵便や電子メール等を介して相手(ユーザやライセンス管理者)に通知されるようにしてもよい。
【0082】
【発明の効果】
以上説明したように、本発明によれば、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定されている。また、ライセンスキーに含まれるキー値は、適用回数情報に基づく回数だけ一方向関数を適用することによって生成される。これによって、発行されたライセンスキーに基づいて、より価値の高い(制限されていない)使用許諾内容を示すライセンスキーを生成することが困難となる。このため、ライセンスキーを不正使用されにくいものとすることができるようになる。
【図面の簡単な説明】
【図1】本実施の形態に係るライセンス管理システムの全体構成を示す図である。
【図2】本実施の形態に係るライセンスキー発行装置の機能ブロック図である。
【図3】本実施の形態に係るプログラム実行装置の機能ブロック図である。
【図4】適用回数情報と使用許諾情報との関係情報の一例を示す図である。
【図5】プログラム実行装置に記憶されるデータ構成を示す図である。
【図6】ライセンスキー登録テーブルの一例を示す図である。
【図7】ユーザ情報テーブルの一例を示す図である。
【図8】ライセンスキー発行処理を示すフロー図である。
【図9】ライセンスキーの構成の一例を示す図である。
【図10】ライセンスキー登録画面の一例を示す図である。
【図11】ライセンスキー登録処理を示すフロー図である。
【符号の説明】
10 ライセンス管理システム、12 インターネット、13 LAN、14ライセンス管理サーバ、16 グループウェアサーバ、18 クライアント、22 発行要求取得部、24 適用回数取得部、26 キー値生成部、28 ライセンスキー生成部、30ライセンスキー出力部、32 基準初期値記憶部、34 発行要求識別情報取得部、36 装置識別情報取得部、40 装置識別情報取得部、42 基準初期値記憶部、44 ライセンスキー取得部、46 キー値生成部、48 キー値比較部、50 使用許諾情報取得部、52 使用許諾情報更新部、54 使用許諾情報記憶部、56 制御部、70 ライセンスキー登録画面、72(72a〜72d) ライセンスキー入力欄、74 ライセンス数表示欄、76 合計ライセンス数表示欄、78 登録リンクボタン。
【発明の属する技術分野】
本発明はライセンスキー発行装置、ライセンスキー生成方法、プログラム実行装置、プログラム実行装置の制御方法及びプログラムに関し、特に、不正使用されにくいライセンスキーに関する。
【0002】
【従来の技術】
ソフトウェアには、ライセンスキーの入力(登録)によって、その動作が制御されるものがある。例えば、ライセンスキーが入力されるまでは、試用として提供され、ライセンスキーが入力されることによって、はじめて本番使用として提供されるものがある。また、例えば、試用版ではない通常のソフトウェアの機能の制限解除や拡張に、ライセンスキーが用いられることもある。
【0003】
【発明が解決しようとする課題】
しかしながら、これまでのライセンスキーは、不正使用を受けやすいものであった。例えば、ライセンスキーがネットワーク上の掲示板等で公開されたりすると、正規にライセンスキーの発行を受けていないユーザが、このライセンスキーを使用することによって、ソフトウェアを不正に使用することができてしまうという問題があった。
【0004】
本発明は上記課題に鑑みてなされたものであって、その目的は、不正使用されにくいライセンスキーに係るプログラム実行装置、プログラム実行装置の制御方法、ライセンスキー発行装置、ライセンスキー生成方法及びプログラムを提供することにある。
【0005】
【課題を解決するための手段】
上記課題を解決するために、本発明に係るライセンスキー発行装置は、要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得手段と、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得手段と、所定初期値に、前記適用回数取得手段によって取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段と、前記適用回数取得手段によって取得される適用回数情報と、前記キー値生成手段によって生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成手段と、前記ライセンスキー生成手段によって生成されるライセンスキーを出力するライセンスキー出力手段と、を含むことを特徴とする。
【0006】
また、本発明に係るライセンスキー生成方法は、要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得ステップと、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得ステップにおいて取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得ステップと、所定初期値に、前記適用回数取得ステップにおいて取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成ステップと、前記適用回数取得ステップにおいて取得される適用回数情報と、前記キー値生成ステップにおいて生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成ステップと、前記ライセンスキー生成ステップにおいて生成されるライセンスキーを出力するライセンスキー出力ステップと、を含むことを特徴とする。
【0007】
また、本発明に係るプログラムは、ライセンスキー発行装置としてコンピュータを機能させるためのプログラムであって、要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得手段、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得手段、所定初期値に、前記適用回数取得手段によって取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段、前記適用回数取得手段によって取得される適用回数情報と、前記キー値生成手段によって生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成手段、及び、前記ライセンスキー生成手段によって生成されるライセンスキーを出力するライセンスキー出力手段、として、パーソナルコンピュータやサーバコンピュータ等の前記コンピュータを機能させるためのプログラムである。
【0008】
また、本発明に係るプログラム実行装置は、当該装置における使用許諾内容を示す使用許諾情報を記憶する使用許諾情報記憶手段と、適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得手段と、所定初期値に、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段と、前記キー値生成手段によって生成されるキー値と、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれるキー値と、を比較するキー値比較手段と、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得手段と、前記キー値比較手段による比較結果に基づいて、前記使用許諾情報記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得手段によって取得される使用許諾情報に基づいて更新する使用許諾情報更新手段と、前記使用許諾情報記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御手段と、を含むことを特徴とする。
【0009】
また、本発明に係るプログラム実行装置の制御方法は、当該装置における使用許諾内容を示す使用許諾情報を記憶手段に記憶させる使用許諾情報記憶ステップと、適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得ステップと、所定初期値に、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成ステップと、前記キー値生成ステップにおいて生成されるキー値と、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれるキー値と、を比較するキー値比較ステップと、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得ステップと、前記キー値比較ステップにおける比較結果に基づいて、前記記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得ステップにおいて取得される使用許諾情報に基づいて更新する使用許諾情報更新ステップと、前記記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御ステップと、を含むことを特徴とする。
【0010】
また、本発明に係るプログラムは、プログラム実行装置としてコンピュータを機能させるためのプログラムであって、当該装置における使用許諾内容を示す使用許諾情報を記憶する使用許諾情報記憶手段、適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得手段、所定初期値に、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段、前記キー値生成手段によって生成されるキー値と、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれるキー値と、を比較するキー値比較手段、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得手段、前記キー値比較手段による比較結果に基づいて、前記使用許諾情報記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得手段によって取得される使用許諾情報に基づいて更新する使用許諾情報更新手段、及び、前記使用許諾情報記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御手段、として、パーソナルコンピュータやサーバコンピュータ等の前記コンピュータを機能させるためのプログラムである。
【0011】
本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)では、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。要求使用許諾情報を含むライセンスキー発行要求を取得されると、上記要求使用許諾情報に対応する適用回数情報が上記関係情報に基づいて取得される。そして、取得される適用回数情報と、取得される適用回数情報に基づく回数だけ所定初期値に一方向関数を適用することによって生成されるキー値と、を含むライセンスキーが生成される。そして、生成されたライセンスキーが出力(画面表示、印刷や送信等)される。ここで、一方向関数は、出力値から入力を推定することが困難であるという性質を有するものである。
【0012】
また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)では、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定されている。適用回数情報とキー値と含むライセンスキーが取得されると、所定初期値に上記適用回数情報に基づく回数だけ一方向関数を適用することによってキー値が生成される。そして、生成したキー値と上記ライセンスキーに含まれるキー値とが比較される。その結果に応じて、上記関係情報に基づいて取得された、上記ライセンスキーに含まれる適用回数情報に対応する使用許諾情報に基づいて、プログラム実行装置に記憶される使用許諾情報が更新される。プログラムの実行は、この使用許諾情報に基づいて制御される。
【0013】
本発明によれば、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。また、ライセンスキーに含まれるキー値は、所定初期値に適用回数情報に基づく回数だけ一方向関数を適用することによって生成される。一方向関数は、出力値から入力を推定することが困難であるという性質を有しているため、発行されたライセンスキーに基づいて、このライセンスキーによって示される使用許諾内容より価値の高い(有利な、制限されていない)使用許諾内容を示すライセンスキーを生成することが困難となる。これによって、不正使用されにくいライセンスキーを発行(生成)することができるようになる。また、このライセンスキーを認証し、その結果に応じて、このライセンスキーが示す使用許諾情報をプログラム実行装置に記憶させることができるようになる。そして、プログラム実行装置におけるプログラムの実行が、この使用許諾情報に基づいて制御されるようにすることができる。
【0014】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、基準初期値を記憶する基準初期値記憶手段を含み、前記所定初期値は、前記基準初期値記憶手段によって記憶される基準初期値に基づくものであることを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、基準初期値を記憶する基準初期値記憶手段を含み、前記所定初期値は、前記基準初期値記憶手段によって記憶される基準初期値に基づくものであることを特徴とする。こうすれば、ライセンスキーに含まれるキー値の生成に使用される一方向関数の初期値を、記憶される基準初期値に基づいたものとすることができるようになる。
【0015】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、前記基準初期値記憶手段は、使用許諾情報に基づく使用許諾内容の所定範囲を識別する範囲識別情報に対応づけて前記基準初期値を記憶し、前記関係情報は、前記範囲識別情報ごとに設定され、前記所定初期値は、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に基づく要求使用許諾内容が含まれる前記所定範囲を識別する、範囲識別情報に対応づけて前記基準初期値記憶手段に記憶される基準初期値に基づくものであり、前記ライセンスキー生成手段は、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に基づく要求使用許諾内容が含まれる前記所定範囲を識別する、範囲識別情報をさらに含むライセンスキーを生成することを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、前記基準初期値記憶手段は、使用許諾情報に基づく使用許諾内容の所定範囲を識別する範囲識別情報に対応づけて前記基準初期値を記憶し、前記ライセンスキーは、前記範囲識別情報をさらに含み、前記関係情報は、前記範囲識別情報ごとに設定され、前記所定初期値は、前記ライセンスキーに含まれる範囲識別情報に対応づけて前記基準初期値記憶手段に記憶される基準初期値に基づくものであることを特徴とする。
【0016】
初期値が一定である場合には、キー値の生成は一方向関数の適用回数によってのみ制御されるため、より多くのキー値(ライセンスキーに含まれる)を生成するためには、最大適用回数(適用回数の上限)を増やす必要があるのに対し、こうすれば、キー値の生成が適用回数と基準初期値(例えば、複数の基準初期値)とによって制御されるため、最大適用回数(適用回数の上限)を増やすことなく、より多くのキー値を生成することができるようになる。このため、使用許諾内容を細かく区別するようなライセンスキーや、広範囲な使用許諾内容に対応するライセンスキー(例えば、大規模ユーザから小規模ユーザまで対応するようなライセンスキー)を、処理速度(パフォーマンス)を落とすことなく発行することができるようになる。
【0017】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、前記一方向関数は、ハッシュ関数であることを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、前記一方向関数は、ハッシュ関数であることを特徴とする。ハッシュ関数としては、例えば、MD5、MASH、SHA−1等を用いることができる。ハッシュ関数は、出力値(ハッシュ値)から入力を推定することが困難であるという性質を有するとともに、さらに、同一の出力値(ハッシュ値)となる異なる入力を見つけることが困難であるという性質を有するため、ライセンスキーをより不正使用されにくいものとすることができるようになる。
【0018】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、前記ライセンスキー発行要求を識別する発行要求識別情報を取得する発行要求識別情報取得手段をさらに含み、前記所定初期値は、前記発行要求識別情報取得手段によって取得される発行要求識別情報に基づくものであり、前記ライセンスキー生成手段は、前記発行要求識別情報取得手段によって取得される発行要求識別情報をさらに含むライセンスキーを生成することを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、前記ライセンスキーは、ライセンスキー発行要求を識別する発行要求識別情報をさらに含み、前記所定初期値は、前記ライセンスキーに含まれる発行要求識別情報に基づくものであることを特徴とする。
【0019】
こうすれば、ライセンスキーに含まれるキー値を発行要求識別情報に基づくものとすることができる。このため、ライセンスキーを発行要求識別情報によって区別することができるようになり、1つのライセンスキーが同じプログラム実行装置に重複登録(複数回登録)されることを防ぐことができるようになる。なお、発行要求識別情報が異なれば、同一の使用許諾内容を示すライセンスキーを登録することができるようにしてもよい。また、発行要求識別情報は、ライセンスキー発行要求を完全に識別するものである必要はなく、ライセンスキー発行要求を実質的に識別できるものであればよい。
【0020】
また、本発明に係るライセンスキー発行装置(ライセンスキー生成方法、プログラム)の一態様では、プログラム実行装置を識別する装置識別情報を取得する装置識別情報取得手段をさらに含み、前記所定初期値は、前記装置識別情報取得手段によって取得される装置識別情報に基づくものであることを特徴とする。また、本発明に係るプログラム実行装置(プログラム実行装置の制御方法、プログラム)の一態様では、当該装置を識別する装置識別情報を取得する装置識別情報取得手段をさらに含み、前記所定初期値は、前記装置識別情報取得手段によって取得される装置識別情報に基づくものであることを特徴とする。
【0021】
こうすれば、ライセンスキーに含まれるキー値を装置識別情報に基づくものとすることができる。このため、1つのライセンスキーが、異なるプログラム実行装置に登録されることを防ぐことができるようになる。なお、装置識別情報は、プログラム実行装置を完全に識別するものである必要はなく、プログラム実行装置を実質的に識別できるものであればよい。
【0022】
また、本発明の一態様では、前記使用許諾情報は、使用可能なユーザ数、使用可能な端末数、使用可能な期間、使用可能な等級、使用可能な回数、プログラム実行装置のCPU数のうち1又は複数を示すものであることを特徴とする。こうすれば、ライセンスキーを使用可能なユーザ数、使用可能な端末数、使用可能な期間、使用可能な等級(バージョン、グレード)、使用可能な回数又はプログラム実行装置の備えるCPU数等の1又は複数を示すものとすることができる。
【0023】
【発明の実施の形態】
以下、本発明の好適な実施の形態について図面に基づき詳細に説明する。なお、以下では、プログラム実行装置で実行されるソフトウェア、すなわち、発行されるライセンスキーの対象となるソフトウェアとして、Web版グループウェアを例に説明する。
【0024】
図1は、本発明の実施の形態に係るライセンス管理システムの構成例(Web版グループウェアに係る構成を含む)を示す図である。同図に示すように、このライセンス管理システム10は、ライセンス管理サーバ14(ライセンスキー発行装置)と、グループウェアサーバ16(プログラム実行装置)と、クライアント18と、を含んで構成されている。ライセンス管理サーバ14及びグループウェアサーバ16は、例えばCPU(Central Processing Unit)、ハードディスク記憶装置、ディスプレイ及び入力装置を備えた公知のサーバコンピュータシステムにより構成されている。また、クライアント18は、例えばCPU、ハードディスク記憶装置、ディスプレイ及び入力装置を備えた公知のパーソナルコンピュータにより構成されている。ライセンス管理サーバ14は、インターネット12等によってグループウェアサーバ16やクライアント18と相互にデータ授受可能なよう通信接続されている。また、グループウェアサーバ16及びクライアント18は、LAN(Local Area Network)13によって相互にデータ授受可能なよう通信接続されている。
【0025】
ライセンス管理サーバ14は、上記グループウェアのライセンスを管理するためのサーバコンピュータであり、ライセンス管理者(例えば、上記グループウェアの開発元や販売元等)によって運用管理されるものである。ライセンス管理サーバ14は、ライセンスキー発行サービスを提供するようになっている。すなわち、上記グループウェアのユーザからライセンスキー発行要求を受け付け、ライセンスキーを発行することができるようになっている。なお、ライセンスキー発行サービスは、ライセンス管理サーバ14にインストールされているCGI(Common Gateway Interface)プログラム等によって実現される。また、ライセンス管理サーバ14は、データベースを備えており、ユーザ情報やライセンス管理情報等を記憶している。このデータベースは、例えば公知のハードディスク記憶装置や公知のデータベースマネージメントシステムによって構成される。
【0026】
グループウェアサーバ16は、主にクライアント18からアクセスされるサーバコンピュータであり、Web版グループウェアサービスを提供するようになっている。Web版グループウェアは、HTTPに則り、スケジュール管理サービス、掲示板管理サービス、アドレス帳管理サービス、ToDoリスト管理サービス等をクライアント18に提供する公知のソフトウェアである。具体的には、上記グループウェアは、グループウェアサーバ16にインストールされているCGIプログラムによって実現される。グループウェアサーバ16には、さらにHTTPDがインストールされており、一方、クライアント18には、公知のWebブラウザがインストールされている。このため、クライアント18においてWebブラウザを起動し、そこから上記CGIプログラムにアクセスすることにより、グループウェアサービスに係る各種画面がクライアント18において表示されるようになっている。また、グループウェアサーバ16は、上記グループウェアのライセンスキー登録サービスを提供するようになっている。すなわち、グループウェアサーバ16は、発行されたライセンスキーの登録を受け付けることができるようになっている。このサービスも、CGIプログラム等によって実現されるものであり、詳細については後述する。
【0027】
上記グループウェアを使用するにあたって、ユーザは、そのインストールプログラム(CGIプログラムやデータベース等をインストールするためのプログラム)をCD−ROM(Compact Disc − Read Only Memory)等の情報記憶媒体を介して、或いはインターネット等のデータ通信回線を介して入手する。そして、このインストールプログラムによって、上記グループウェアを所定のサーバコンピュータにインストールする。上記グループウェアでは、インストール後の所定期間が試用期間として設定されており、ユーザは上記グループウェアを試用できるようになっている。ユーザは、上記グループウェアを所定期間試用した後、必要に応じたライセンスキーの発行を受け、上記グループウェアの本番使用を開始する。
【0028】
図2及び図3は、ライセンス管理システム10において実現される機能ブロックのうち、本発明に関連するものを中心として示す図である。図2は、ライセンス管理サーバ14(ライセンスキー発行装置)において実現される機能ブロックのうち、本発明に関連するものを中心として示している。図3は、グループウェアサーバ16(プログラム実行装置)において実現される機能ブロックのうち、本発明に関連するものを中心として示している。これらの機能は、サーバコンピュータ、パーソナルコンピュータ等のコンピュータによってプログラムが実行されることによって、実現されるものである。なお、このプログラムは、CD−ROM等のコンピュータにより読み取り可能な情報記憶媒体や、インターネット等のデータ通信回線によってコンピュータに供給されるものである。
【0029】
図2に示すように、ライセンス管理サーバ14は、発行要求取得部22、適用回数取得部24、キー値生成部26、ライセンスキー生成部28、ライセンスキー出力部30、基準初期値記憶部32、発行要求識別情報取得部34及び装置識別情報取得部36を含んで構成される。
【0030】
発行要求取得部22は、要求使用許諾情報を含むライセンスキー発行要求を取得する。要求使用許諾情報は、要求使用許諾内容、例えば、ユーザが要求する使用許諾内容を示すものである。使用許諾内容は、例えば、当該ソフトウェアを使用可能なユーザ数、当該ソフトウェアをインストール可能な端末数、当該ソフトウェアによって提供されるサービスを利用可能なユーザ数又は端末数、当該ソフトウェアを使用可能な期間又は回数、当該ソフトウェアの有する機能のうち使用可能な機能、当該ソフトウェアを実行するサーバ等(プログラム実行装置)のCPU数等、又はこれらの組み合わせを示すものである。
【0031】
適用回数取得部24は、適用回数情報と使用許諾情報との関係情報に基づいて、要求使用許諾情報に対応する適用回数情報を取得する。ここで、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。また、要求使用許諾情報は、発行要求取得部22によって取得されるライセンスキー発行要求に含まれるものである。なお、適用回数情報と使用許諾情報との関係情報は、範囲識別情報ごとに設定されるようにしてもよい。ここで、範囲識別情報は、使用許諾情報に基づく使用許諾内容の所定範囲を識別するものである。
【0032】
適用回数情報と使用許諾情報との関係情報は、例えば、図4に示すようになっている。同図は、区間ID(範囲識別情報)と適用回数との組み合わせに対応するライセンス数(使用許諾情報)を示している。例えば、区間ID「0001」と適用回数「4」の組み合わせは、ライセンス数「8500」に対応づけられている。ここで、区間IDは、ライセンス数の範囲(使用許諾情報に基づく使用許諾内容の所定範囲)を識別するものである。例えば、区間ID「0001」は、ライセンス数「500」から「10000」までの範囲を識別するものである。また、ライセンス数は、例えば、上記グループウェアの使用を許諾するユーザ数や、グループウェアサーバ16へのアクセスを許諾するクライアント数(端末数)等を示すものである。また、適用回数は、ライセンスキーに含まれるキー値を生成するために、ハッシュ関数を適用する回数を示すものである。すなわち、ライセンス数「8500」を示すライセンスキーに含まれるキー値は、所定の初期値にハッシュ関数を4回適用して取得されたハッシュ値となる。詳細については後述する。
【0033】
また、同図では、適用回数(適用回数情報に基づく回数)が増加すると、対応するライセンス数が減少する(対応する使用許諾情報に基づく使用許諾内容が制限される)ようになっている。同図では、適用回数が1増加するごとに、対応するライセンス数が「500」減少するようになっている。例えば、ライセンス数「8500」を示すライセンスキーに含まれるキー値に、さらにハッシュ関数を1回適用すると、そのハッシュ値はライセンス数「8000」を示すライセンスキーに含まれるキー値となる。こうすれば、ハッシュ関数は出力値(ハッシュ値)から入力値を算出することが困難であるという性質を有するため、発行されたライセンスキーに基づいて、さらに価値の高い(より制限されていない)ライセンスキーの発行を防ぐことができるようになる。なお、ここでは、ライセンス数の減少幅を「500」としたが、「100」や「1」とするようにしてもよい。このように減少幅を細かくすることによって、使用許諾内容が細かく異なるようなライセンスキーを発行することができる。
【0034】
さらに、同図では、区間IDには基準初期値が対応づけられている。基準初期値は、ハッシュ関数に適用される初期値を生成するためのものである。例えば、ライセンス数「8500」を示すライセンスキーに含まれるキー値は、基準初期値「12345」(区間ID「0001」に対応づけられた基準初期値)に基づいて生成される初期値に、ハッシュ関数を「4」回適用して得られるハッシュ値となる。ここで、初期値が一定(一つ)である場合には、キー値の生成がハッシュ関数の適用回数によってのみ制御されるため、より多くのキー値を生成するためには(ライセンスキーの種類を増やすためには)、最大適用回数を増やす必要があるのに対し、同図のようにすれば、キー値の生成が適用回数と基準初期値とによって制御されるため、最大適用回数を増やすことなく、より多くのキー値を生成することができるようになる。例えば、初期値が一定である場合、1000種類のキー値を生成するためには、最大適用回数は1000となるが、初期値が10種類ある場合には、最大適用回数は100で済む。すなわち、ハッシュ関数による計算回数を減らすことができるようになる。
【0035】
なお、この関係情報は、ライセンス管理サーバ14とグループウェアサーバ16とで同じ内容の情報を有するようになっている。また、この関係情報は、同図に示すようなテーブルによって表される必要はなく、数式によって表されるようにしてもよい。
【0036】
キー値生成部26は、所定初期値に、適用回数取得部24によって取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成する。なお、一方向関数はハッシュ関数であってもよい。また、所定初期値は、基準初期値記憶部32によって記憶される基準初期値に基づくものとしてもよい。また、所定初期値は、発行要求取得部22によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に基づく要求使用許諾内容が含まれる前記所定範囲を識別する、範囲識別情報に対応づけて基準初期値記憶部32に記憶される基準初期値に基づくものとしてもよい。また、所定初期値は、発行要求識別情報取得部34によって取得される発行要求識別情報に基づくものとしてもよい。また、所定初期値は、装置識別情報取得部36によって取得される装置識別情報に基づくものとしてもよい。例えば、キー値生成部26は、発行要求識別情報取得部34によって取得される発行要求識別情報と、装置識別情報取得部36によって取得される装置識別情報との少なくとも一方を所定初期値に加えて、キー値を生成するようにしてもよい。
【0037】
ライセンスキー生成部28は、適用回数取得部24によって取得される適用回数とキー値生成部26によって生成されるキー値とを含むライセンスキーを生成する。なお、ライセンスキーに含まれるキー値が、範囲識別情報に対応づけて基準初期値記憶部32に記憶される基準初期値に基づく所定初期値に基づいて生成されたものである場合には、ライセンスキーに該範囲識別情報を含める。また、ライセンスキーに含まれるキー値が、発行要求識別情報取得部34によって取得される発行要求識別情報に基づく所定初期値に基づいて生成されたものである場合には、ライセンスキーに該発行要求識別情報を含める。ライセンスキー出力部30は、ライセンスキー生成部28によって生成されるライセンスキーを出力(例えば、画面表示、印刷や送信等)する。
【0038】
基準初期値記憶部32は、例えば公知のハードディスク記憶装置やデータベースマネージメントシステムを含んで構成されたり、プログラム内部に含まれるものであり、基準初期値を記憶するものである。なお、基準初期値記憶部32は、範囲識別情報に対応づけて基準初期値を記憶するようにしてもよい。例えば、基準初期値記憶部32は、図4において説明したように、範囲識別情報と基準初期値とを対応づけて記憶する。
【0039】
発行要求識別情報取得部34は、発行要求識別情報を取得する。ここで、発行要求識別情報は、ライセンスキー発行要求を識別する情報である。なお、発行要求識別情報は、ライセンスキー発行要求を完全に識別するものである必要はなく、ライセンスキー発行要求を実質的に識別できるものでよい。例えば、発行要求識別情報は、ライセンスキー発行要求を受け付けた日時と乱数とを組み合わせたものとすればよい。
【0040】
装置識別情報取得部36は、装置識別情報を取得する。ここで、装置識別情報は、プログラム実行装置(グループウェアサーバ16)を識別する情報である。なお、装置識別情報は、プログラム実行装置を完全に識別するものである必要はなく、プログラム実行装置を実質的に識別できるものでよい。例えば、装置識別情報は、プログラム実行装置に装着されたNIC(Network Interface Card)のMAC(Media Access Control)アドレスと乱数とを組み合わせたものとすればよい。
【0041】
また、図3に示すように、グループウェアサーバ16は、装置識別情報取得部40、基準初期値記憶部42、ライセンスキー取得部44、キー値生成部46、キー値比較部48、使用許諾情報取得部50、使用許諾情報更新部52、使用許諾情報記憶部54及び制御部56を含んで構成される。
【0042】
装置識別情報取得部40は、当該装置を識別する装置識別情報を取得する。例えば、装置識別情報取得部40は、装置識別情報を記憶する装置識別情報記憶部を含むものであり、装置識別情報記憶部に記憶される装置識別情報を取得するものである。また、基準初期値記憶部42は、例えば公知のハードディスク記憶装置やデータベースマネージメントシステムを含んで構成されたり、プログラム内部に含まれるものであり、基準初期値を記憶する。なお、基準初期値記憶部42は、範囲識別情報に対応づけて基準初期値を記憶するようにしてもよい。例えば、基準初期値記憶部42は、図4において説明したように、範囲識別情報と基準初期値とを対応づけて記憶する。
【0043】
ライセンスキー取得部44は、ライセンスキーを取得する。ここで、ライセンスキーは、適用回数情報とキー値とを含むものである。なお、ライセンスキーに含まれるキー値が、範囲識別情報に対応する基準初期値に基づく所定初期値に基づいて生成されたものである場合には、ライセンスキーに該範囲識別情報が含まれる。また、ライセンスキーに含まれるキー値が、発行要求識別情報に基づく所定初期値に基づいて生成されたものである場合には、ライセンスキーに該発行要求識別情報を含まれる。
【0044】
キー値生成部46は、所定初期値に、ライセンスキー取得部44によって取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成する。なお、一方向関数は、ハッシュ関数であってもよい。また、ライセンスキーに含まれるキー値が、基準初期値に基づく所定初期値に基づいて生成されたものである場合には、所定初期値は、基準初期値記憶部42によって記憶される基準初期値に基づくものとする。また、ライセンスキーに含まれるキー値が、範囲識別情報に対応する基準初期値に基づく所定初期値に基づいて生成されたものである場合には、所定初期値は、ライセンスキー取得部44によって取得されるライセンスキーに含まれる範囲識別情報に対応づけて基準初期値記憶部42に記憶される基準初期値に基づくものとする。また、ライセンスキーに含まれるキー値が、発行要求識別情報に基づく所定初期値に基づいて生成されたものである場合には、所定初期値は、ライセンスキー取得部44によって取得されるライセンスキーに含まれる発行要求識別情報に基づくものとする。また、ライセンスキーに含まれるキー値が、装置識別情報に基づく所定初期値に基づいて生成されたものである場合には、所定初期値は、装置識別情報取得部40によって取得される装置識別情報に基づくものとする。例えば、キー値生成部46は、ライセンスキー取得部44によって取得されるライセンスキーに含まれる発行要求識別情報と、装置識別情報取得部40によって取得される装置識別情報との少なくとも一方を所定初期値に加えて、キー値を生成するようにしてもよい。また、キー値比較部48は、キー値生成部46によって生成されるキー値と、ライセンスキー取得部44によって取得されるライセンスキーに含まれるキー値と、を比較する。
【0045】
使用許諾情報取得部50は、適用回数情報と使用許諾情報との関係情報に基づいて、ライセンスキー取得部44によって取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する。ここで、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定される。なお、適用回数情報と使用許諾情報との関係情報は、範囲識別情報ごとに設定されるようにしてもよい。また、適用回数情報と使用許諾情報との関係情報は、例えば図4に示すようなものであり、ライセンス管理サーバ14とグループウェアサーバ16とで同じ内容の情報が有されるようになっている。
【0046】
使用許諾情報更新部52は、キー値比較部48による比較結果に基づいて、使用許諾情報記憶部54に記憶される使用許諾情報を、使用許諾情報取得部50によって取得される使用許諾情報に基づいて更新する。使用許諾情報記憶部54は、例えば公知のハードディスク記憶装置やデータベースマネージメントシステムを含んで構成されるものであり、当該プログラム実行装置における使用許諾内容を示す使用許諾情報を記憶する。使用許諾情報記憶部54は、例えば図6に示すような、ライセンスキー登録テーブルを記憶する。ライセンスキー登録テーブルについては後述する。制御部56は、使用許諾情報記憶部54によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する。
【0047】
以下、ライセンス管理システム10の動作、特に、上記グループウェアのインストールからライセンスキーの登録までについて説明する。
【0048】
先述したように、上記グループウェアを使用するにあたって、ユーザは、そのインストールプログラムをCD−ROM等の情報記憶媒体を介して、或いはインターネット等のデータ通信回線を介して入手する。そして、ユーザは、グループウェアサーバ16として機能させるサーバコンピュータに上記グループウェアをインストールする。上記グループウェアがインストールされると、グループウェアサーバ16には、図5に示すようなデータと、図6に示すようなライセンスキー登録テーブルとが記憶される。
【0049】
図5において、PID(装置識別情報)は、グループウェアサーバ16(プログラム実行装置)を識別するものである。PIDは、インストールプログラムによって生成される。PIDは、グループウェアサーバ16を完全に識別するものである必要はなく、実質的に識別するものであればよい。例えば、PIDは、グループウェアサーバ16に装着されるNICのMACアドレスと、乱数と、に基づいて生成されるようにすればよい。また、グループウェアサーバ16に装着されるNICのMACアドレスと、インストールが実行された日時と、に基づいて生成されるようにしてもよい。生成されたPIDは、インストールプログラムによって、インターネット12を介してライセンス管理サーバ14に送信される。ライセンス管理サーバ14では、図7に示すようなユーザ情報テーブルによって、PIDが記憶(管理)される。すなわち、PIDは、ユーザを識別するUID(ユーザ識別情報)に対応づけて記憶される。また、ユーザ情報テーブルでは、UIDやPIDの他に、例えばユーザ名やメールアドレス等が記憶されるようにしてもよい。
【0050】
また、図5において、試用フラグは、「試用」か「本番使用」かを示すものである。上記グループウェアのインストール後であって、ライセンスキーの登録が行われるまでは、試用フラグは「試用」を示すものとなる。ライセンスキーの登録が行われると、試用フラグは「本番使用」を示すものへと変更される。
【0051】
また、図6に示すライセンスキー登録テーブルは、グループウェアサーバ16に対して登録されたライセンスキーを記憶するためのものである。上記グループウェアのインストール後であって、ライセンスキーの登録が行われるまでは、レコードのない状態となる。ライセンスキー登録テーブルへのライセンスキーの登録については後述する。
【0052】
ユーザは、上記グループウェアを所定期間試用した後、必要に応じたライセンスキーの発行要求を行い、ライセンスキーの発行を受ける。ユーザによるライセンスキーの発行要求は、ライセンス管理サーバ14によって提供されるライセンスキー発行サービスによって行われる。具体的には、ユーザは、クライアント18においてWebブラウザを起動し、そこからライセンス管理サーバ14の所定のCGIプログラム(ライセンスキー発行サービスに係るもの)にアクセスすることにより、ライセンスキー発行要求画面がクライアント18において表示されるようになっている。ユーザは、ライセンスキー発行要求画面において、UIDや希望ライセンス数(要求使用許諾情報)等を入力する。入力されたUIDや希望ライセンス数等は、ライセンスキー発行要求としてライセンス管理サーバ14に送信される。そして、このライセンスキー発行要求を受信したライセンス管理サーバ14では、ライセンスキー発行処理が実行される。
【0053】
ライセンス管理サーバ14におけるライセンスキー発行処理を図8に示す。同図に示すように、ライセンス管理サーバ14の発行要求取得部22は、ライセンスキー発行要求(以下、発行要求とする。)を受信する(S101)。発行要求は、先述したようにUIDや希望ライセンス数等を含むものである。発行要求を受信すると、ライセンス管理サーバ14は、発行要求が正当であるか否かを判断する(S102)。例えば、発行要求に含まれるUIDがユーザ情報テーブル(図7参照)に登録されているか否か等について判断する。発行要求が正当でないと判断される場合には、その旨をユーザに通知するとともに、ライセンスキー発行処理を終了する。
【0054】
一方、発行要求が正当であると判断される場合には、ライセンス管理サーバ14の装置情報取得部36は、発行要求に基づいて、PIDを取得する(S103)。具体的には、ユーザ情報テーブルから、発行要求に含まれるUIDに対応づけられたPIDを取得する。例えば、UIDが「001」であれば、PIDとして「ABCDEFGH」を取得する(図7参照)。
【0055】
次に、ライセンス管理サーバ14の発行要求識別情報取得部34は、ライセンスキー発行要求ID(発行要求識別情報。以下、発行要求IDとする。)を生成する(S104)。発行要求IDは、発行要求を一意に識別するためのものである。発行要求IDは、例えば、発行要求を受信した日時に基づいて生成するようにすればよい。また、例えば、発行要求を受信した日時と乱数とに基づいて生成するようにすればよい。
【0056】
次に、ライセンス管理サーバ14の適用回数取得部24は、発行要求に基づいて、区間ID、基準初期値及び適用回数とを取得する(S105)。具体的には、適用回数情報と使用許諾情報との関係情報(図4)に基づいて、発行要求に含まれる希望ライセンス数に対応する区間ID、基準初期値及び適用回数とを取得する。例えば、希望ライセンス数が「8500」であれば、区間IDとして「0001」を、基準初期値として「12345」を、適用回数として「4」を取得する(図4参照)。
【0057】
次に、ライセンス管理サーバ14は、S104において生成した発行要求IDと、S103で取得したPIDと、S105において取得した基準初期値と、に基づいて、初期値を生成する(S106)。例えば、これらを連結した文字列に基づいて初期値を生成するようにすればよい。そして、ライセンス管理サーバ14のキー値生成部26は、この初期値にS105で取得した適用回数だけハッシュ関数を適用し、得られるハッシュ値をキー値として取得する(S107)。以上のように、ライセンスキーに含まれるキー値の生成は、発行要求IDとPIDとに基づいて行われる。このため、生成されるライセンスキーは、発行要求IDとPIDとに基づいたものとなる。
【0058】
次に、ライセンス管理サーバ14のライセンスキー生成部28は、ライセンスキーを生成する(S108)。ライセンスキーは、図9に示すように、S104において生成した発行要求IDと、S105において取得した区間IDと、S105において取得した適用回数と、S107において取得したキー値と、を含んで構成される。例えば、ライセンスキーは、発行要求IDと区間IDと適用回数とキー値とをそれぞれハイフン(−)等で連結したものとすればよい。なお、ライセンスキーに適用回数を含ませるのは、ライセンスキーの認証処理のパフォーマンスを向上するためである。
【0059】
そして、ライセンス管理サーバ14のライセンスキー出力部30は、生成したライセンスキーを出力する(S109)。例えば、生成したライセンスキーを画面表示するためのHTMLファイルを生成し、このHTMLファイルをクライアント18等(ライセンスキー発行要求を行ったクライアント)に送信するようにしてもよい。また、ライセンスキーが記載された電子メールをユーザに送信するようにしてもよい。この場合、発行要求に通知先メールアドレスが含まれるようにし(ライセンスキー発行要求画面において通知先メールアドレスが入力されるようにし)、ライセンス管理サーバ14が、S108において生成したライセンスキーを通知先メールアドレスあてに送信するようにすればよい。
【0060】
以上でライセンスキーの発行処理は完了する。なお、以上に説明したライセンスキー発行処理は、ライセンス管理サーバ14においてプログラムが実行されることによって実現されるものである。
【0061】
ユーザは、発行されたライセンスキーを、図10に示すような、ライセンスキー登録画面において登録する。このライセンスキー登録画面は、クライアント18においてWebブラウザを起動し、そこからグループウェアサーバ16の所定のCGIプログラム(ライセンスキー登録サービスに係るもの)にアクセスすることにより、クライアント18において表示されるようになっている。
【0062】
同図に示すように、ライセンスキー登録画面70には、ライセンスキー入力欄72(72a〜72d)、ライセンス数表示欄74、合計ライセンス数表示欄76及び登録リンクボタン78が表示される。ライセンスキー入力欄72(72a〜72d)には、発行されたライセンスキーが入力される。例えば、通知されたライセンスキーが「AAA−BBB−CCC−DDD」であれば、ライセンスキー入力欄72aに「AAA」を、入力欄72bに「BBB」を、入力欄72cに「CCC」を、入力欄72dに「DDD」をそれぞれ入力する。ライセンス数表示欄74には、ライセンスキーの登録完了後に、各ライセンスキーが示すライセンス数が表示される。合計ライセンス数表示欄76には、ライセンス数表示欄74の合計が表示される。また、登録リンクボタン78は、ライセンスキー登録処理を実行するCGIプログラムへのリンクとなっている。この登録リンクボタン78がクリックされると、入力されたライセンスキーを含むライセンスキー登録要求が、グループウェアサーバ16に送信される。そして、グループウェアサーバ16では、送信されたライセンスキー登録要求に基づいて、ライセンスキー登録処理が実行され、ライセンスキー登録テーブル(図6)にライセンスキーが登録される。なお、ライセンスキー登録画面70には、ライセンスキー登録テーブルにすでにライセンスキーが登録されている場合には、登録済みのライセンスキーが表示される。また、登録済みのライセンスキーの表示の他に、ライセンスキー入力欄72(72a〜72d)が一組だけ表示されるようにしてもよい。
【0063】
グループウェアサーバ16におけるライセンスキー登録処理を図11に示す。同図に示すように、グループウェアサーバ16のライセンスキー取得部44は、ライセンスキー登録要求(以下、登録要求とする。)を受信する(S201)。登録要求を受信すると、グループウェアサーバ16は、登録要求に含まれるライセンスキーからライセンスキー発行要求ID(入力欄aに入力したもの)、区間ID(入力欄bに入力したもの)、適用回数(入力欄cに入力したもの)、キー値(入力欄dに入力したもの)を取得する(S202)。
【0064】
次に、グループウェアサーバ16は、S202において取得したライセンス発行要求IDが、ライセンスキー登録テーブルにすでに登録されていないことを確認する(S203)。この確認を行うことによって、グループウェアサーバ16に、同じライセンスキーが重複登録されることを防ぐことができる。ライセンスキー発行要求IDがすでに登録されている場合には、その旨をユーザに通知するための画面(エラー画面)を表示するためのHTMLファイルを生成する(S213)。
【0065】
一方、ライセンス発行要求IDが登録されていない場合には、グループウェアサーバ16は、S202において取得した区間IDに対応する基準初期値を取得する(S204)。具体的には、適用回数情報と使用許諾情報との関係情報(図4)に基づいて、S202において取得した区間IDに対応する基準初期値を取得する、例えば、区間IDが「0001」であれば、基準初期値として「12345」を取得する(図4参照)。
【0066】
次に、グループウェアサーバ16は、PIDを取得する(S205)。PIDは、上記グループウェアのインストール時に生成され、グループウェアサーバ16に記憶されているものである(図5参照)。そして、グループウェアサーバ16は、S202において取得したライセンスキー発行要求IDと、S205において取得したPIDと、S204において取得した基準初期値とに基づいて、初期値を生成する(S206)。なお、初期値の生成方法は、S105と同じ方法である。そして、グループウェアサーバ16のキー値生成部46は、この初期値にS202で取得した適用回数だけハッシュ関数を適用し、得られるハッシュ値をキー値として取得する(S207)。なお、ここで使用されるハッシュ関数は、S106で使用されるハッシュ関数と同じものである。
【0067】
次に、グループウェアサーバ16のキー値比較部48は、S202において取得したキー値と、S207において取得したキー値とが一致するか否かを判断する(S208)。一致しないと判断される場合には、ユーザによって入力されたライセンスキーに誤りがあると判断し、その旨をユーザに通知するための画面(エラー画面)を表示するためのHTMLファイルを生成する(S213)。
【0068】
一方、一致すると判断される場合には、グループウェアサーバ16の使用許諾情報取得部50は、S202において取得した区間IDと適用回数とに対応するライセンス数を取得する(S209)。具体的には、適用回数情報と使用許諾情報との関係情報(図4)に基づいて、ライセンス数を取得する。例えば、区間IDが「0001」であり、適用回数が「4」であれば、ライセンス数として「8500」を取得する(図4参照)。
【0069】
次に、グループウェアサーバ16の使用許諾情報更新部52は、S201で受信した登録要求に含まれるライセンスキーと、S209において取得したライセンス数とをライセンスキー登録テーブルに登録する(S210)。すなわち、ライセンスキー登録テーブルの対応するフィールドにそれぞれ登録する。そして、ライセンス数の合計が0から変更になる場合(ライセンスキーがはじめて登録される場合)には、試用フラグ(図5)を「試用」から「本番使用」を示すものへと変更する(S211)。以降、グループウェアサーバ16の制御部56は、上記グループウェアが「本番使用」として実行されるように制御する。また、グループウェアサーバ16の制御部56は、上記グループウェアが、ライセンスキー登録テーブルに登録されたライセンス数(使用許諾内容)に基づいて実行されるように制御する。
【0070】
次に、グループウェアサーバ16は、ユーザにライセンスキーの登録状況を通知するための画面を表示するためのHTMLファイルを生成する(S212)。そして、グループウェアサーバ16は、S212、或いはS213において生成したHTMLファイルをクライアント18に送信する(S212、S213)。クライアント18では、これらのHTMLファイルに基づいた画面が表示される。
【0071】
なお、本実施の形態に係るライセンスキーには、グループウェアサーバ16を識別するPID(装置識別情報)に基づいて生成されたキー値が含まれている。そして、S208においては、このキー値と、グループウェアサーバ16に記憶されるPIDに基づいて生成されたキー値(S207)とが比較されることによって、ライセンスキーの正当性が検証されるようになっている。このため、発行されたライセンスキーを、他のグループウェアサーバ16において登録することができないようになっている。
【0072】
また、本実施の形態に係るライセンスキーには、適用回数が含まれるようになっている。ライセンスキーに適用回数が含まれない場合には、S207及びS208において、初期値(S206において生成したもの)にハッシュ関数を適用し、得られるハッシュ値(キー値)をS202において取得したキー値と比較するという処理を、キー値が一致するまで、又は、適用回数が上限(図4の場合であれば「20」)に達するまで繰り返す必要がある。これに対し、本実施の形態に係るライセンスキーのように、適用回数が含まれている場合には、上記比較処理を繰り返す必要がなく、ライセンスキーの認証処理(S207及びS208)のパフォーマンスを向上することができる。
【0073】
以上でライセンスキーの登録処理は完了する。なお、以上に説明したライセンスキー登録処理は、グループウェアサーバ16においてプログラムが実行されることによって実現されるものである。
【0074】
以上説明したライセンス管理サーバ14(ライセンスキー発行装置)、グループウェアサーバ16(プログラム実行装置)によれば、ライセンスキーに含まれるキー値は、一方向性(ハッシュ値から入力値を算出することが困難)を有するハッシュ関数によって生成される。また、ハッシュ関数の適用回数と使用許諾内容との関係は、適用回数が増加すると、対応する使用許諾内容が制限されるように設定される。このため、発行されたライセンスキーに基づいて、より高い価値を有する(より制限されていない)ライセンスキーを生成することが困難となる。
【0075】
また、ライセンスキーに含まれるキー値を生成するための基準初期値は、使用許諾内容の所定範囲ごとに設定される。初期値が一定である場合には、キー値の生成がハッシュ関数の適用回数によってのみ制御されるため、より多くのキー値を生成するためには(ライセンスキーの種類を増やすためには)、最大適用回数(適用回数の上限)を増やす必要があるのに対し、以上によれば、キー値の生成が適用回数と基準初期値(例えば、複数の基準初期値)とによって制御されるため、最大適用回数を増やすことなく、より多くのキー値を生成することができるようになる。このため、使用許諾内容を細かく区別するようなライセンスキーや、広範囲な使用許諾内容に対応するライセンスキー(例えば、大規模ユーザから小規模ユーザまで対応するようなライセンスキー)を、処理速度(パフォーマンス)を落とすことなく発行することができるようになり、ライセンスキー発行における柔軟性を向上することができるようになる。
【0076】
また、ライセンスキーに含まれるキー値は、グループウェアサーバ16を識別するPID(装置識別情報)に基づいて生成される。そして、ライセンスキー登録処理では、このキー値は、グループウェアサーバ16に記憶されるPIDに基づいて生成されるキー値と比較されるようになっている。このため、発行されたライセンスキーが、他のグループウェアサーバ16において登録されることを防ぐことができるようになる。すなわち、1つのライセンスキーが、異なるグループウェアサーバ16で登録されないようにすることができるようになる。
【0077】
また、ライセンスキーには、ライセンスキー発行要求ID(発行要求識別情報)が含まれ、ライセンスキーに含まれるキー値は、ライセンスキー発行要求IDに基づいて生成される。そして、ライセンスキー登録処理においては、すでに登録されているライセンスキーのライセンスキー発行要求IDを含むライセンスキーは登録されないようになっている。また、ライセンスキー登録処理では、ライセンスキーに含まれるキー値と、ライセンスキーに含まれるライセンスキー発行要求IDに基づいて生成されるキー値とが比較されるようになっている。このため、グループウェアサーバ16では複数のライセンスキーを登録できるようになっているが、同じライセンスキーが重複登録(複数回登録)されないようにすることができる。
【0078】
すなわち、以上説明したライセンス管理サーバ14(ライセンスキー発行装置)、グループウェアサーバ16(プログラム実行装置)によれば、ライセンスキーを不正使用されにくいものとすることができる。
【0079】
なお、本発明は以上説明した実施の形態に限定されるものではない。
【0080】
例えば、以上では、ソフトウェアとしてWeb版グループウェアを例に説明したが、ソフトウェアはWeb版グループウェアに限られない。すなわち、Web版グループウェアのように、サーバコンピュータにインストールされ、該サーバコンピュータで実行されるプログラムにクライアントからアクセスして使用するようなソフトウェアに限られない。他の種類のソフトウェアであってもよい。例えば、各クライアントにインストールされ、各クライアントで実行されるようなソフトウェアであってもよい。また、ソフトウェアはプログラムに限られない。
【0081】
また、以上では、インターネット12等によって、ライセンス管理サーバ14とグループウェアサーバ16とが相互にデータ授受可能なよう通信接続されることとして説明したが、必ずしもライセンス管理サーバ14とグループウェアサーバ16とが通信接続される必要はない。例えば、グループウェアサーバ16からインターネット12を介してライセンス管理サーバ14に送信されることとして説明したPIDや、クライアント18からインターネット12を介してライセンス管理サーバ14に送信されることとして説明したライセンスキー発行要求や、ライセンス管理サーバ14において生成されたライセンスキーは、電話、FAX、郵便や電子メール等を介して相手(ユーザやライセンス管理者)に通知されるようにしてもよい。
【0082】
【発明の効果】
以上説明したように、本発明によれば、適用回数情報と使用許諾情報との関係情報は、適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定されている。また、ライセンスキーに含まれるキー値は、適用回数情報に基づく回数だけ一方向関数を適用することによって生成される。これによって、発行されたライセンスキーに基づいて、より価値の高い(制限されていない)使用許諾内容を示すライセンスキーを生成することが困難となる。このため、ライセンスキーを不正使用されにくいものとすることができるようになる。
【図面の簡単な説明】
【図1】本実施の形態に係るライセンス管理システムの全体構成を示す図である。
【図2】本実施の形態に係るライセンスキー発行装置の機能ブロック図である。
【図3】本実施の形態に係るプログラム実行装置の機能ブロック図である。
【図4】適用回数情報と使用許諾情報との関係情報の一例を示す図である。
【図5】プログラム実行装置に記憶されるデータ構成を示す図である。
【図6】ライセンスキー登録テーブルの一例を示す図である。
【図7】ユーザ情報テーブルの一例を示す図である。
【図8】ライセンスキー発行処理を示すフロー図である。
【図9】ライセンスキーの構成の一例を示す図である。
【図10】ライセンスキー登録画面の一例を示す図である。
【図11】ライセンスキー登録処理を示すフロー図である。
【符号の説明】
10 ライセンス管理システム、12 インターネット、13 LAN、14ライセンス管理サーバ、16 グループウェアサーバ、18 クライアント、22 発行要求取得部、24 適用回数取得部、26 キー値生成部、28 ライセンスキー生成部、30ライセンスキー出力部、32 基準初期値記憶部、34 発行要求識別情報取得部、36 装置識別情報取得部、40 装置識別情報取得部、42 基準初期値記憶部、44 ライセンスキー取得部、46 キー値生成部、48 キー値比較部、50 使用許諾情報取得部、52 使用許諾情報更新部、54 使用許諾情報記憶部、56 制御部、70 ライセンスキー登録画面、72(72a〜72d) ライセンスキー入力欄、74 ライセンス数表示欄、76 合計ライセンス数表示欄、78 登録リンクボタン。
Claims (17)
- 要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得手段と、
適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得手段と、
所定初期値に、前記適用回数取得手段によって取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段と、
前記適用回数取得手段によって取得される適用回数情報と、前記キー値生成手段によって生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成手段と、
前記ライセンスキー生成手段によって生成されるライセンスキーを出力するライセンスキー出力手段と、
を含むことを特徴とするライセンスキー発行装置。 - 請求項1に記載のライセンスキー発行装置において、
基準初期値を記憶する基準初期値記憶手段を含み、
前記所定初期値は、前記基準初期値記憶手段によって記憶される基準初期値に基づくものであることを特徴とするライセンスキー発行装置。 - 請求項2に記載のライセンスキー発行装置において、
前記基準初期値記憶手段は、使用許諾情報に基づく使用許諾内容の所定範囲を識別する範囲識別情報に対応づけて前記基準初期値を記憶し、
前記関係情報は、前記範囲識別情報ごとに設定され、
前記所定初期値は、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に基づく要求使用許諾内容が含まれる前記所定範囲を識別する、範囲識別情報に対応づけて前記基準初期値記憶手段に記憶される基準初期値に基づくものであり、
前記ライセンスキー生成手段は、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に基づく要求使用許諾内容が含まれる前記所定範囲を識別する、範囲識別情報をさらに含むライセンスキーを生成することを特徴とするライセンスキー発行装置。 - 請求項1乃至3のいずれかに記載のライセンスキー発行装置において、
前記一方向関数は、ハッシュ関数であることを特徴とするライセンスキー発行装置。 - 請求項1乃至4のいずれかに記載のライセンスキー発行装置において、
前記ライセンスキー発行要求を識別する発行要求識別情報を取得する発行要求識別情報取得手段をさらに含み、
前記所定初期値は、前記発行要求識別情報取得手段によって取得される発行要求識別情報に基づくものであり、
前記ライセンスキー生成手段は、前記発行要求識別情報取得手段によって取得される発行要求識別情報をさらに含むライセンスキーを生成することを特徴とするライセンスキー発行装置。 - 請求項1乃至5のいずれかに記載のライセンスキー発行装置において、
プログラム実行装置を識別する装置識別情報を取得する装置識別情報取得手段をさらに含み、
前記所定初期値は、前記装置識別情報取得手段によって取得される装置識別情報に基づくものであることを特徴とするライセンスキー発行装置。 - 要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得ステップと、
適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得ステップにおいて取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得ステップと、
所定初期値に、前記適用回数取得ステップにおいて取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成ステップと、
前記適用回数取得ステップにおいて取得される適用回数情報と、前記キー値生成ステップにおいて生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成ステップと、
前記ライセンスキー生成ステップにおいて生成されるライセンスキーを出力するライセンスキー出力ステップと、
を含むことを特徴とするライセンスキー生成方法。 - ライセンスキー発行装置としてコンピュータを機能させるためのプログラムであって、
要求使用許諾内容を示す要求使用許諾情報を含むライセンスキー発行要求を取得する発行要求取得手段、
適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記発行要求取得手段によって取得されるライセンスキー発行要求に含まれる要求使用許諾情報に対応する適用回数情報を取得する適用回数取得手段、
所定初期値に、前記適用回数取得手段によって取得される適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段、
前記適用回数取得手段によって取得される適用回数情報と、前記キー値生成手段によって生成されるキー値と、を含むライセンスキーを生成するライセンスキー生成手段、及び、
前記ライセンスキー生成手段によって生成されるライセンスキーを出力するライセンスキー出力手段、
として前記コンピュータを機能させるためのプログラム。 - 当該装置における使用許諾内容を示す使用許諾情報を記憶する使用許諾情報記憶手段と、
適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得手段と、
所定初期値に、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段と、
前記キー値生成手段によって生成されるキー値と、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれるキー値と、を比較するキー値比較手段と、
適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得手段と、
前記キー値比較手段による比較結果に基づいて、前記使用許諾情報記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得手段によって取得される使用許諾情報に基づいて更新する使用許諾情報更新手段と、
前記使用許諾情報記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御手段と、
を含むことを特徴とするプログラム実行装置。 - 請求項9に記載のプログラム実行装置において、
基準初期値を記憶する基準初期値記憶手段を含み、
前記所定初期値は、前記基準初期値記憶手段によって記憶される基準初期値に基づくものであることを特徴とするプログラム実行装置。 - 請求項10に記載のプログラム実行装置において、
前記基準初期値記憶手段は、使用許諾情報に基づく使用許諾内容の所定範囲を識別する範囲識別情報に対応づけて前記基準初期値を記憶し、
前記ライセンスキーは、前記範囲識別情報をさらに含み、
前記関係情報は、前記範囲識別情報ごとに設定され、
前記所定初期値は、前記ライセンスキーに含まれる範囲識別情報に対応づけて前記基準初期値記憶手段に記憶される基準初期値に基づくものであることを特徴とするプログラム実行装置。 - 請求項9乃至11のいずれかに記載のプログラム実行装置において、
前記一方向関数は、ハッシュ関数であることを特徴とするプログラム実行装置。 - 請求項9乃至12のいずれかに記載のプログラム実行装置において、
前記ライセンスキーは、ライセンスキー発行要求を識別する発行要求識別情報をさらに含み、
前記所定初期値は、前記ライセンスキーに含まれる発行要求識別情報に基づくものであることを特徴とするプログラム実行装置。 - 請求項9乃至13のいずれかに記載のプログラム実行装置において、
当該装置を識別する装置識別情報を取得する装置識別情報取得手段をさらに含み、
前記所定初期値は、前記装置識別情報取得手段によって取得される装置識別情報に基づくものであることを特徴とするプログラム実行装置。 - 当該装置における使用許諾内容を示す使用許諾情報を記憶手段に記憶させる使用許諾情報記憶ステップと、
適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得ステップと、
所定初期値に、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成ステップと、
前記キー値生成ステップにおいて生成されるキー値と、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれるキー値と、を比較するキー値比較ステップと、
適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得ステップにおいて取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得ステップと、
前記キー値比較ステップにおける比較結果に基づいて、前記記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得ステップにおいて取得される使用許諾情報に基づいて更新する使用許諾情報更新ステップと、
前記記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御ステップと、
を含むことを特徴とするプログラム実行装置の制御方法。 - プログラム実行装置としてコンピュータを機能させるためのプログラムであって、
当該装置における使用許諾内容を示す使用許諾情報を記憶する使用許諾情報記憶手段、
適用回数情報とキー値と含むライセンスキーを取得するライセンスキー取得手段、
所定初期値に、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に基づく回数だけ一方向関数を適用することによって、キー値を生成するキー値生成手段、
前記キー値生成手段によって生成されるキー値と、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれるキー値と、を比較するキー値比較手段、
適用回数情報に基づく回数が増加すると、対応する使用許諾情報に基づく使用許諾内容が制限されるように設定された、適用回数情報と使用許諾情報との関係情報に基づいて、前記ライセンスキー取得手段によって取得されるライセンスキーに含まれる適用回数情報に対応する使用許諾情報を取得する使用許諾情報取得手段、
前記キー値比較手段による比較結果に基づいて、前記使用許諾情報記憶手段に記憶される使用許諾情報を、前記使用許諾情報取得手段によって取得される使用許諾情報に基づいて更新する使用許諾情報更新手段、及び、
前記使用許諾情報記憶手段によって記憶される使用許諾情報に基づいて、プログラムの実行を制御する制御手段、
として前記コンピュータを機能させるためのプログラム。 - 請求項1〜6、9〜14のいずれかに記載の装置において、
前記使用許諾情報は、使用可能なユーザ数、使用可能な端末数、使用可能な期間、使用可能な等級、使用可能な回数、プログラム実行装置のCPU数のうち1又は複数を示すものであることを特徴とする装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002262150A JP2004102552A (ja) | 2002-09-06 | 2002-09-06 | ライセンスキー発行装置、ライセンスキー生成方法、プログラム実行装置、プログラム実行装置の制御方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002262150A JP2004102552A (ja) | 2002-09-06 | 2002-09-06 | ライセンスキー発行装置、ライセンスキー生成方法、プログラム実行装置、プログラム実行装置の制御方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004102552A true JP2004102552A (ja) | 2004-04-02 |
Family
ID=32262273
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002262150A Pending JP2004102552A (ja) | 2002-09-06 | 2002-09-06 | ライセンスキー発行装置、ライセンスキー生成方法、プログラム実行装置、プログラム実行装置の制御方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004102552A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006011628A (ja) * | 2004-06-23 | 2006-01-12 | Nec Infrontia Corp | 試用ライセンス方法及び試用ライセンスシステム |
JP2008504780A (ja) * | 2004-07-01 | 2008-02-14 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 電子使用許諾および電子コンテンツの効率的配信のためのシステムおよび方法 |
JP2009510644A (ja) * | 2005-10-03 | 2009-03-12 | エンキャップ アー エス | 安全な認証のための方法及び構成 |
CN111699489A (zh) * | 2018-02-13 | 2020-09-22 | 索尼公司 | 电子设备、信息处理装置、信息处理方法、程序和信息处理系统 |
-
2002
- 2002-09-06 JP JP2002262150A patent/JP2004102552A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006011628A (ja) * | 2004-06-23 | 2006-01-12 | Nec Infrontia Corp | 試用ライセンス方法及び試用ライセンスシステム |
JP4535787B2 (ja) * | 2004-06-23 | 2010-09-01 | Necインフロンティア株式会社 | 試用ライセンス方法及び試用ライセンス装置 |
JP2008504780A (ja) * | 2004-07-01 | 2008-02-14 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 電子使用許諾および電子コンテンツの効率的配信のためのシステムおよび方法 |
JP4880595B2 (ja) * | 2004-07-01 | 2012-02-22 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 電子使用許諾および電子コンテンツの効率的配信のためのシステムおよび方法 |
JP2009510644A (ja) * | 2005-10-03 | 2009-03-12 | エンキャップ アー エス | 安全な認証のための方法及び構成 |
US8335925B2 (en) | 2005-10-03 | 2012-12-18 | Encap As | Method and arrangement for secure authentication |
CN111699489A (zh) * | 2018-02-13 | 2020-09-22 | 索尼公司 | 电子设备、信息处理装置、信息处理方法、程序和信息处理系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7500099B1 (en) | Method for mitigating web-based “one-click” attacks | |
CN101410800B (zh) | 用于软件发布服务的系统和方法 | |
JP4413774B2 (ja) | 電子メールアドレスとハードウェア情報とを利用したユーザ認証方法及びシステム | |
CN1777867B (zh) | 使用增量压缩打补丁更新文件的系统和方法 | |
CN100416465C (zh) | 管理和传递软件更新的系统和方法 | |
TW498278B (en) | Generic user authentication for network computers | |
US20040088260A1 (en) | Secure user authentication | |
US20050149729A1 (en) | Method to support XML-based security and key management services in a pre-boot execution environment | |
US20030233483A1 (en) | Executing software in a network environment | |
JP2011181097A (ja) | ネットワーク環境においてインストレーションコンポーネントをアップデートするためのシステムおよび方法 | |
WO2008051792A2 (en) | Data file access control | |
JP5193787B2 (ja) | 情報処理方法、中継サーバおよびネットワークシステム | |
JP2011215753A (ja) | 認証システムおよび認証方法 | |
JP2004185263A (ja) | 分散協調型コンテンツ配信システム | |
JP2004295846A (ja) | ライセンス管理システム、ライセンス管理サーバ、ライセンス管理方法、プログラム、及び、記録媒体 | |
JPH10214297A (ja) | インターネットを利用した会員制サービスシステムおよび方法 | |
JP3484523B2 (ja) | 改竄修正装置,及び改竄修正方法 | |
JP2004102552A (ja) | ライセンスキー発行装置、ライセンスキー生成方法、プログラム実行装置、プログラム実行装置の制御方法及びプログラム | |
JP2004171525A (ja) | サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体 | |
JP2013077188A (ja) | 情報処理プログラム、情報処理装置、及び情報処理方法 | |
JP3706821B2 (ja) | 複数サイト間の情報共有による会員情報更新管理システム | |
JP2004151942A (ja) | ウェブサービス提供装置、ウェブサービス提供方法およびウェブサービス提供プログラム | |
US20090272797A1 (en) | Dynamic information card rendering | |
JP2004171524A (ja) | サービス提供装置、サービス提供方法、サービス提供プログラム及び記録媒体 | |
JP5136161B2 (ja) | ソフトウェア・ライセンス管理システム、ソフトウェアをインストール可能な端末装置、ライセンス管理装置、およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060711 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20061107 |