ライセンス管理装置、ライセンス管理方法及びプログラム
【課題】柔軟なライセンス管理を行うことができるライセンス管理装置を提供する。
【解決手段】本発明は、プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理装置であって、前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定手段と、前記実行判定手段の判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出手段と、前記復号キー取出手段で取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化手段とを有する。
【解決手段】本発明は、プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理装置であって、前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定手段と、前記実行判定手段の判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出手段と、前記復号キー取出手段で取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化手段とを有する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、アプリケーション実行環境において、適切な方法でアプリケーションのライセンスの委譲、ライセンスを分割しての委譲、ライセンスの統合(合体)等をすることができるライセンス管理装置、ライセンス管理方法及びプログラムに関する。
【背景技術】
【0002】
従来、マシンのIDや利用者ID等を暗号キーとしてコンテンツに暗号をかけて、さらにアクセス制御リスト(ACL)に従って、その条件に適合しない場合はコンテンツを利用できないようにし、コンテンツの不正利用を防止していた(例えば、特許文献1参照)。
【0003】
また、大口顧客のためにサイトライセンスという多くのライセンスを一括で出せるライセンスがある。このサイトライセンスを利用する場合、本当にライセンスが守られているかの管理のために、ライセンス数を管理するライセンス管理サーバが必要である。ライセンス管理サーバは、ネットワーク上にアプリケーションがいくつ起動されているかを常に監視し、ライセンス数以上のアプリケーションが起動されないように管理する。
【0004】
【特許文献1】特開2000−293439号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
また、プログラムの不正コピーを防ぐために、アプリケーション実行環境のシリアル番号などを暗号キーにしてアプリケーションに暗号をかけるライセンス管理方法が提案されてきた。しかしながら、アプリケーション実行環境が壊れたり、古くなり使われなくなった場合に、ライセンスは使えないものになっていて、柔軟なライセンス管理がされているとは言えない問題があった。
【0006】
また、他のアプリケーション実行環境のライセンスを取得する場合は、そのアプリケーション実行環境毎にライセンス先にライセンスの申請をしなければならなかった。
【0007】
また、サイトライセンスを考えてみると、全体のライセンス数を管理する特別な機構、例えば、ネットワークにライセンスサーバを置く等の必要がある。
【課題を解決するための手段】
【0008】
本発明のライセンス管理装置は、プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理装置であって、前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定手段と、前記実行判定手段の判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出手段と、前記復号キー取出手段で取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化手段とを有することを特徴とする。
【発明の効果】
【0009】
本発明によれば、アプリケーション実行環境が壊れたり、古いものになったりして使われなくなった場合に、そのアプリケーション実行環境のあるアプリケーションのライセンスを他のアプリケーション実行環境に適切な方法で委譲することができる。したがって、一度ライセンスされたライセンスを無駄なく使用できる。
【0010】
また、ある一つのアプリケーション実行環境に多くのライセンスを与えておけば、そのライセンスを分割して他のアプリケーション実行環境に委譲することで、全体のライセンス数を管理する特別な機構を必要とせずに、サイトライセンスが実現できる。
【0011】
また、ライセンスを統合する処理も持つことで柔軟なライセンス管理を行うことができる。
【発明を実施するための最良の形態】
【0012】
以下、図面を参照して本発明の実施形態について説明する。
なお、本実施形態の説明では、アプリケーション実行環境をマシンというものとする。
図1は、マシン1のハードウェア構成を示す図である。マシンは、中央演算処理装置10と、入出力装置11と、記憶装置12と、を含んで構成される。記憶装置12には、アプリケーションごとに、ライセンスファイルと、暗号化されているアプリケーション本体とが記憶されている。さらに、記憶装置12には、アプリケーションごとに各種カウンタ(アプリ起動カウンタ等)が記憶されている。なお、マシン(例えば、MFP(マルチファンクションプリンタ))には個体区別のためにシリアル番号を有している。
上述のライセンスファイルには、シリアル番号、復号キー、コピー可能枚数、スキャン可能枚数、プリント可能枚数、アプリケーション起動可能回数等のカウンタ値が記述されている。
【0013】
図1のマシン1には、アプリケーション1、アプリケーション2、アプリケーション3の3つのアプリケーションがインストールされている。例えば、アプリケーション1に関連するものは、ライセンスファイル1、アプリケーションファイル1、及び各種カンウンタである。ここで、アプリケーションファイル1は、ライセンスファイル1内にある復号キー(Key1)で復号できる暗号がかけられている。また、各種カウンタは、コピーカウンタ1、スキャナカウンタ1、プリントカウンタ1、アプリ起動カウンタ1等であり、その他、FAXカウンタ1等のカウンタが含まれていてもよい。
【0014】
次に、アプリケーションの起動を図2のフローチャートを参照して説明する。なお、図2のフローチャートの処理は、中央演算処理装置10が行う。
まず、ステップS101において、マシン1内にアプリケーション1のライセンスファイル(ライセンスファイル1)が存在するかどうかを調査する。存在しない場合は、ステップS110に進み、アプリケーション1を起動しないで終了する。存在する場合は、ステップS102に進み、ライセンスファイル1に暗号がかかっているか否かを判定する(暗号化判定手段)。暗号化されていれば、その暗号を復号する(ライセンスファイル復号化手段)。
【0015】
次に、ステップS103に進み、ライセンスファイル1よりシリアル番号(シリアル番号情報(Serial1))を取り出す。
次に、ステップS104に進み、マシン1のシリアル番号(MSerial1)を取り出す。次に、ステップS105において、Serial1とMSerial1とが等しいか否かを比較する(実行判定手段)。等しくないという判定結果の場合は、ステップS110に進む。等しいという判定結果の場合は、ステップS106に進む。ステップS110において、アプリケーション1を起動しないで終了する。
【0016】
次に、ステップS106に進み、ライセンスファイル1より、復号キー(Key1)を取り出す(復号キー取出手段)。次に、ステップS107において、アプリケーション1のアプリケーションファイル1が、マシン1内に存在するかどうかを調査する。存在しない場合は、ステップS110に進み、アプリケーション1を起動しないで終了する。存在する場合は、ステップS108に進み、アプリケーションファイル1の暗号を復号キー(Key1)で復号する(プログラム復号化手段)。次に、ステップS109に進み、アプリケーション1を起動する。
【0017】
次に、図3のフローチャートを用いて、アプリケーションが実行されているときの、ライセンスファイル内の各種可能枚数とマシン内の各種カウンタによるライセンス制御について説明する。なお、図3のフローチャートの処理は、中央演算処理装置10が行う。ここでは、マシンをマルチファンクションプリンタ(コピー、FAX、プリンタ、スキャナが一体となった装置をいう)として説明するが、これに限定されるものではない。
【0018】
まず、ステップS201において、アプリケーション1の実行中、ユーザによりコピー処理の指示がされると、コピー処理の指示を検出する。
次に、ステップS202に進み、アプリケーション1のライセンスファイル(ライセンスファイル1)からコピー可能枚数(ACopyCnt1)を取り出す。
次に、ステップS203に進み、マシン内のアプリケーション1に割り当てられたコピーカウンタ1(CopyCnt1)値を取り出す。
【0019】
次に、ステップS204に進み、ACopyCnt1がCopyCnt1以上かどうかを判定する。CopyCnt1がライセンスされたコピー可能枚数ACopyCnt1と等しいか越えていた場合は、ステップS207に進み、コピー処理を行う。CopyCnt1がライセンスされたコピー可能枚数ACopyCnt1よりも小さい値であれば、ステップS205に進み、コピーカウンタ1(CopyCnt1)値に1を加算する(CopyCnt1=CopyCnt1+1)。そして、ステップS206に進み、コピー処理を行う。
【0020】
スキャナカウンタ1、プリントカウンタ1、アプリ起動カウンタ1についてもコピーカウンタ1と同様に、ライセンスファイルのそれぞれのカウンタの可能数を越えて、それぞれの処理を行わない。
【0021】
(第1の実施形態)
次に、図4と、図5のフローチャートを参照してライセンスの委譲処理について説明する。ここでは、マシン1のアプリケーション1のライセンスをマシン2に委譲する場合を例にして説明する。
【0022】
先ず、ステップS301において、委譲されるマシン(マシン2)のシリアル番号(MSerial2)を得る。シリアル番号の取得方法として、例えば、GUIでユーザに委譲先マシンのシリアル番号を求めるダイアログを表示し、直接シリアル番号を入力させるようにする。また、マシンがネットワークに接続されている場合は、マシンを特定できるネットワーク上の名前又はIPAddress等を入力してもらい、それらの情報からシステムが自動的にシリアル番号を取得するようにしてもよい。なお、本発明は、これらのシリアル番号取得方法に限定されるものではない。
【0023】
次に、ステップS302で、委譲するマシン(マシン1)のライセンスファイル(ライセンスファイル1)を得て、暗号がかかっている場合はその暗号を解いておく。
次に、ステップS303において、ライセンスファイル1内のシリアル番号(Serial1)をMSerial2へと入れ替える。
【0024】
次に、ステップS304において、マシン1のアプリケーション1に割り当てたコピーカウンタ値(CopyCnt1)を取り出す。
次に、ステップS305では、ライセンスファイル1からコピー可能枚数(ACopyCnt1)を取り出す。
【0025】
そして、ステップS306で、ライセンスファイル1のコピー可能枚数(ACopyCnt1)を
(ACopyCnt1 - CopyCnt1)に入れ替える。
すなわち、コピー可能枚数は(ACopyCnt1 = ACopyCnt1 - CopyCnt1)のようになる。
この処理により、すでに使用済みのCopyCnt1分コピー可能枚数を減らしたものがライセンス委譲後の新たなコピー可能枚数(ACopyCnt1)になる。
【0026】
次に、ステップS307において、他の可能枚数についても、ステップS304〜ステップS306の処理と同様の入れ替え操作を行う。すなわち具体的には、スキャン可能枚数、プリント可能枚数、アプリ起動可能回数、等の可能枚数も同様に入れ替え作業を行う。
【0027】
ここで、スキャン可能枚数を例にすると、コピーカウンタ値(CopyCnt1)をスキャンカウント値(ScanCnt1)へと置き換え、コピー可能枚数(ACopyCnt1)をスキャン可能枚数(AscanCnt1)へと置き換える。この置き換えた状態で、ステップS304〜ステップS306の処理を行うことで、スキャン可能枚数の置き換えを行うことができる。
【0028】
次に、ステップS308に進み、マシン2内にこの内容の入れ替え作業を行ったライセンスファイル1を、記憶させる。このとき、暗号をかける場合は、ライセンスファイル1に暗号をかけてからマシン2内に記憶させる。
【0029】
次に、ステップS309において、マシン1内のアプリケーションファイル1をマシン2に移動する。
さらに、ステップS310において、マシン1内のライセンスファイル1を消去することで、マシン1のアプリケーション1のライセンスをマシン2に委譲される。
【0030】
上述したようなライセンス委譲処理により、マシン2でアプリケーション1の起動をすると、委譲されたライセンスファイル1のシリアル番号とマシン2のシリアル番号が一致する。したがって、復号キー(Key1)を用いてアプリケーションファイル1を復号して、アプリケーション1を起動することができる。なお、マシン2でのコピー処理等は、マシン1で使用された分が差し引かれたライセンス数で管理される。
【0031】
(第2の実施形態)
次に、図6と、図7のフローチャートを参照してライセンス委譲処理にいくつかの処理を追加して払い戻し処理を実現する方法について説明する。ここでは、マシンが故障して他のマシンでも使用しないアプリケーションがある場合、ライセンスが払い戻せるようにするものである。ライセンス委譲処理は、あるマシンで使用しなくなったアプリケーションを他のマシンで使用したい場合や、あるマシンが故障した為、他のマシンにライセンスを移動したい場合に生じため、払い戻し処理と似ている。
【0032】
まず、ステップS301において、委譲されるマシン(マシン2)のシリアル番号(MSerial2)を得る。上述したように、シリアル番号取得方法として、例えば、GUIでユーザに委譲先マシンのシリアル番号を求めるダイアログを出して、直接シリアル番号を入力させてもよい。しかし、ここでは払い戻し処理であることを示すために、特殊なシリアル番号を入力する。例えば、普通は、マシンのシリアル番号としては使用しないマイナスの値の−1を入力する。
【0033】
次に、ステップS302で、委譲するマシン(マシン1)のライセンスファイル(ライセンスファイル1)を得て、暗号がかかっている場合はその暗号を復号する。
次に、ステップS311において、取得したシリアル番号(MSerial2)が特殊な番号かどうかを判定する。特殊な番号でなければ、ステップS303に進む。ステップS303において、ライセンスファイル1内のシリアル番号(Serial1)をMSerial2へと入れ替える。
【0034】
シリアル番号が−1等の特殊な番号であれば、ステップS304に進む。なお、ステップS304〜ステップS307までは第1の実施形態のライセンス委譲と同様の処理であり説明を省略する。次に、ステップS307の処理からステップS312の処理に進む。
【0035】
ステップS312において、再度、取得したシリアル番号(MSerial2)が特殊な番号かどうかを判定する。判定の結果、シリアル番号が−1等の特殊な番号であれば、ステップS313に進む。ステップS313において、ライセンスファイル1内の可能枚数に応じて、払い戻し額を決定し、ステップS314でマシン1内のアプリケーションファイル1を削除する。
【0036】
そして、ステップS310に進み、マシン1内のライセンスファイル1を消去する。ステップS312において、シリアル番号が特殊な番号でなければ、上述したライセンスの委譲と同様のステップS308〜ステップS310の処理を行う。
【0037】
(第3の実施形態)
次に、図8と、図9のフローチャートを参照してライセンスの分割について説明する。
まず、ステップS401で、アプリケーション1のライセンスファイル(ライセンスファイル1)を複製する。このとき、元のライセンスファイル1をライセンスファイル1(a)とし、複製されたライセンスファイルをライセンスファイル1(b)とする。また、ライセンスファイルに暗号がかかっている場合は、複製する前に暗号を解いておく。
【0038】
次に、ステップS402において、ライセンス分割後に委譲されるマシン(マシン2)のシリアル番号(MSerial2)を得る。シリアル番号の取得方法として、第1の実施形態のライセンス委譲処理で説明した方法で取得する。次に、ステップS403でアプリケーション1(b)のライセンスファイルのシリアル番号(Serial1)をMSerial2へと入れ替える。
【0039】
次に、ステップS404において、マシン1のアプリケーション1に割り当てたコピーカウンタ値(CopyCnt1)を取り出す。
次に、ステップS405では、アプリケーション1のライセンスファイル1からコピー可能枚数(ACopyCnt1)を取り出す。
【0040】
そして、ステップS406において、マシン1に残して利用したいコピー可能枚数(RCopyCnt1)を設定する。ここで、コピー可能枚数の設定方法は、GUIでユーザにRCopyCnt1の値を求めるダイアログの表示をして、入力させるようにすればよい。また、残りのコピー可能枚数を2で割って、RCopyCnt1 = (ACopyCnt1 - CopyCnt1) / 2と設定するようにしてもよい。なお、本発明は、これらの設定方法に限定されるものではない。
【0041】
次に、ステップS407で、アプリケーション1のライセンスファイル1(b)のコピー可能枚数(ACopyCnt1b)をACopyCnt1 - CopyCnt1- RCopyCnt1に入れ替える。
すなわち、コピー可能枚数は(ACopyCnt1 = ACopyCnt1 - CopyCnt1- RCopyCnt1)のようになる。
【0042】
次に、ステップS408において、他の可能枚数も同様に入れ替え操作を行う。
例えば、スキャン可能枚数は、
(AScanCnt1b = AScanCnt1 - ScanCnt1- RScanCnt1)のようになる。
また、プリンタ可能枚数は、
(APrintCnt1b = APrintCnt1 - PrintCnt1- RPrintCnt1)のようになる。
また、アプリ起動可能回数は、
(ALaunchCnt1b = ALaunchCnt1 - LaunchCnt1- RLaunchCnt1)のようになる。
【0043】
次に、ステップS409において、アプリケーション1のライセンスファイル1(a)のコピー可能枚数(ACopyCnt1a)をCopyCnt1 + RCopyCnt1に入れ替える。
すなわち、コピー可能枚数は(ACopyCnt1a = CopyCnt1 + RCopyCnt1)のようになる。
【0044】
さらに、ステップS410において、他の可能枚数も同様にして入れ替え操作を行う。
例えば、スキャン可能枚数は、
(AScanCnt1a = ScanCnt1 + RScanCnt1)のようになる。
また、プリンタ可能枚数は、
(APrintCnt1a = PrintCnt1 + RPrintCnt1)のようになる。
また、アプリ起動可能回数は、
(ALaunchCnt1a = LaunchCnt1 + RLaunchCnt1)のようになる。
【0045】
次に、ステップS411において、マシン1内のライセンスファイル1を消去し、ライセンスファイル1(a)を記憶させる。
次に、ステップS412において、マシン2内にライセンスファイル1(b)を記憶させる。
【0046】
そして、ステップS413において、マシン1内のアプリケーションファイル1をマシン2に複製する。
最後に、ステップS414において、マシン2内に、アプリケーション1に対応したカウンタを初期値0で用意する。
すなわち、各カウンタ値は、
(CopyCnt1' = 0, ScanCont1' = 0, PrintCnt1' = 0, LaunchCnt1' = 0)のようになる。
【0047】
(第4の実施形態)
次に、図10と図11のフローチャートを参照してライセンスの統合について説明する。
ここでは、マシン1とマシン2に同じアプリケーション1がインストールされているものとする。
まず、ステップS501において、マシン1のアプリケーション1のライセンスファイル(ライセンスファイル1a)と、マシン2のアプリケーション1のライセンスファイル(ライセンスファイル1b)を取り出し、暗号がかかっている場合は、暗号を復号化する。
【0048】
次に、ステップS502において、マシン1のアプリケーション1に割り当てたコピーカウンタ値(CopyCnt1a)を取り出す。
次に、ステップS503において、アプリケーション1のライセンスファイル1からコピー可能枚数(ACopyCnt1a)を取り出す。
【0049】
次に、ステップS504において、マシン1に残して利用したいコピー可能枚数(RCopyCnt1)を設定する。
次に、ステップS505において、マシン2のライセンスファイル1bのコピー可能枚数を、ACopyCnt1b+(ACopyCnt1a - CopyCnt1a - RCopyCnt1)に入れ替える。
【0050】
次に、ステップS506において、他の可能枚数、
例えば、(AScanCnt1b, APrintCnt1b, ALaunchCnt1b, etc)も同様の入れ替え操作を行う。
次に、ステップS507において、アプリケーション1のライセンスファイル1aのコピー可能枚数(ACopyCnt1a)をCopyCnt1a+RCopyCnt1に入れ替える。
すなわち、コピー可能枚数は (ACopyCnt1a = CopyCnt1a + RCopyCnt1)のようになる。
【0051】
次に、ステップS508において、他の可能枚数、
例えば、(AScanCnt1a, APrintCnt1a, ALaunchCnt1a, etc)も同様の入れ替え操作を行う。
次に、ステップS509において、マシン1内に修正したライセンスファイル1aを記憶させる。
次に、ステップS510において、マシン2内に修正したライセンスファイル1bを記憶させる。
【0052】
このように、マシン1では、アプリケーション1でのコピーは、RCopyCnt1分可能になる。また、マシン2では、最初に与えられていたコピーライセンスACopyCnt1bにさらに、マシン1からのACopyCnt1a - CopyCnt1a - RCopyCnt1分が加えられる。したがって、実質は、すでに使用しているCopyCnt1bを引いた分が残りのコピー可能数になる。ここで、マシン1に残すRCopyCnt1分を0とすれば、マシン1に残っているコピーライセンスをマシン2にすべて統合する処理になる。
【0053】
上述した本発明の実施形態におけるライセンス管理装置を構成する各手段、並びにライセンス管理手段の各ステップは、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【0054】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施形態も可能であり、具体的には、複数の機器からなるシステムに適用してもよい。
【0055】
なお、本発明は、上述した実施形態の機能を実現するソフトウェアのプログラムを、システムまたは装置に直接、または遠隔から供給する。そして、そのシステムまたは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【0056】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
【0057】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0058】
さらに、その他の方法として、まず記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【0059】
このように、本実施形態よれば、柔軟なライセンス管理を行うことができる。
【図面の簡単な説明】
【0060】
【図1】本実施形態に係る構成を示す図である。
【図2】本実施形態に係るアプリケーションの起動のフローチャートである。
【図3】本実施形態に係るアプリケーション実行中のライセンス制御のフローチャートである。
【図4】第1の実施形態に係るライセンス委譲を示す図である。
【図5】第1の実施形態に係るライセンス委譲のフローチャートである。
【図6】第2の実施形態に係るライセンス払い戻しを示す図である。
【図7】第2の実施形態に係るライセンス払い戻しのフローチャートである。
【図8】第3の実施形態に係るライセンス分割を示す図である。
【図9】第3の実施形態に係るライセンス分割のフローチャートである。
【図10】第4の実施形態に係るライセンス統合を示す図である。
【図11】第4の実施形態に係るライセンス統合のフローチャートである。
【符号の説明】
【0061】
10 中央演算処理装置
11 入出力装置
12 記憶装置
【技術分野】
【0001】
本発明は、アプリケーション実行環境において、適切な方法でアプリケーションのライセンスの委譲、ライセンスを分割しての委譲、ライセンスの統合(合体)等をすることができるライセンス管理装置、ライセンス管理方法及びプログラムに関する。
【背景技術】
【0002】
従来、マシンのIDや利用者ID等を暗号キーとしてコンテンツに暗号をかけて、さらにアクセス制御リスト(ACL)に従って、その条件に適合しない場合はコンテンツを利用できないようにし、コンテンツの不正利用を防止していた(例えば、特許文献1参照)。
【0003】
また、大口顧客のためにサイトライセンスという多くのライセンスを一括で出せるライセンスがある。このサイトライセンスを利用する場合、本当にライセンスが守られているかの管理のために、ライセンス数を管理するライセンス管理サーバが必要である。ライセンス管理サーバは、ネットワーク上にアプリケーションがいくつ起動されているかを常に監視し、ライセンス数以上のアプリケーションが起動されないように管理する。
【0004】
【特許文献1】特開2000−293439号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
また、プログラムの不正コピーを防ぐために、アプリケーション実行環境のシリアル番号などを暗号キーにしてアプリケーションに暗号をかけるライセンス管理方法が提案されてきた。しかしながら、アプリケーション実行環境が壊れたり、古くなり使われなくなった場合に、ライセンスは使えないものになっていて、柔軟なライセンス管理がされているとは言えない問題があった。
【0006】
また、他のアプリケーション実行環境のライセンスを取得する場合は、そのアプリケーション実行環境毎にライセンス先にライセンスの申請をしなければならなかった。
【0007】
また、サイトライセンスを考えてみると、全体のライセンス数を管理する特別な機構、例えば、ネットワークにライセンスサーバを置く等の必要がある。
【課題を解決するための手段】
【0008】
本発明のライセンス管理装置は、プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理装置であって、前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定手段と、前記実行判定手段の判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出手段と、前記復号キー取出手段で取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化手段とを有することを特徴とする。
【発明の効果】
【0009】
本発明によれば、アプリケーション実行環境が壊れたり、古いものになったりして使われなくなった場合に、そのアプリケーション実行環境のあるアプリケーションのライセンスを他のアプリケーション実行環境に適切な方法で委譲することができる。したがって、一度ライセンスされたライセンスを無駄なく使用できる。
【0010】
また、ある一つのアプリケーション実行環境に多くのライセンスを与えておけば、そのライセンスを分割して他のアプリケーション実行環境に委譲することで、全体のライセンス数を管理する特別な機構を必要とせずに、サイトライセンスが実現できる。
【0011】
また、ライセンスを統合する処理も持つことで柔軟なライセンス管理を行うことができる。
【発明を実施するための最良の形態】
【0012】
以下、図面を参照して本発明の実施形態について説明する。
なお、本実施形態の説明では、アプリケーション実行環境をマシンというものとする。
図1は、マシン1のハードウェア構成を示す図である。マシンは、中央演算処理装置10と、入出力装置11と、記憶装置12と、を含んで構成される。記憶装置12には、アプリケーションごとに、ライセンスファイルと、暗号化されているアプリケーション本体とが記憶されている。さらに、記憶装置12には、アプリケーションごとに各種カウンタ(アプリ起動カウンタ等)が記憶されている。なお、マシン(例えば、MFP(マルチファンクションプリンタ))には個体区別のためにシリアル番号を有している。
上述のライセンスファイルには、シリアル番号、復号キー、コピー可能枚数、スキャン可能枚数、プリント可能枚数、アプリケーション起動可能回数等のカウンタ値が記述されている。
【0013】
図1のマシン1には、アプリケーション1、アプリケーション2、アプリケーション3の3つのアプリケーションがインストールされている。例えば、アプリケーション1に関連するものは、ライセンスファイル1、アプリケーションファイル1、及び各種カンウンタである。ここで、アプリケーションファイル1は、ライセンスファイル1内にある復号キー(Key1)で復号できる暗号がかけられている。また、各種カウンタは、コピーカウンタ1、スキャナカウンタ1、プリントカウンタ1、アプリ起動カウンタ1等であり、その他、FAXカウンタ1等のカウンタが含まれていてもよい。
【0014】
次に、アプリケーションの起動を図2のフローチャートを参照して説明する。なお、図2のフローチャートの処理は、中央演算処理装置10が行う。
まず、ステップS101において、マシン1内にアプリケーション1のライセンスファイル(ライセンスファイル1)が存在するかどうかを調査する。存在しない場合は、ステップS110に進み、アプリケーション1を起動しないで終了する。存在する場合は、ステップS102に進み、ライセンスファイル1に暗号がかかっているか否かを判定する(暗号化判定手段)。暗号化されていれば、その暗号を復号する(ライセンスファイル復号化手段)。
【0015】
次に、ステップS103に進み、ライセンスファイル1よりシリアル番号(シリアル番号情報(Serial1))を取り出す。
次に、ステップS104に進み、マシン1のシリアル番号(MSerial1)を取り出す。次に、ステップS105において、Serial1とMSerial1とが等しいか否かを比較する(実行判定手段)。等しくないという判定結果の場合は、ステップS110に進む。等しいという判定結果の場合は、ステップS106に進む。ステップS110において、アプリケーション1を起動しないで終了する。
【0016】
次に、ステップS106に進み、ライセンスファイル1より、復号キー(Key1)を取り出す(復号キー取出手段)。次に、ステップS107において、アプリケーション1のアプリケーションファイル1が、マシン1内に存在するかどうかを調査する。存在しない場合は、ステップS110に進み、アプリケーション1を起動しないで終了する。存在する場合は、ステップS108に進み、アプリケーションファイル1の暗号を復号キー(Key1)で復号する(プログラム復号化手段)。次に、ステップS109に進み、アプリケーション1を起動する。
【0017】
次に、図3のフローチャートを用いて、アプリケーションが実行されているときの、ライセンスファイル内の各種可能枚数とマシン内の各種カウンタによるライセンス制御について説明する。なお、図3のフローチャートの処理は、中央演算処理装置10が行う。ここでは、マシンをマルチファンクションプリンタ(コピー、FAX、プリンタ、スキャナが一体となった装置をいう)として説明するが、これに限定されるものではない。
【0018】
まず、ステップS201において、アプリケーション1の実行中、ユーザによりコピー処理の指示がされると、コピー処理の指示を検出する。
次に、ステップS202に進み、アプリケーション1のライセンスファイル(ライセンスファイル1)からコピー可能枚数(ACopyCnt1)を取り出す。
次に、ステップS203に進み、マシン内のアプリケーション1に割り当てられたコピーカウンタ1(CopyCnt1)値を取り出す。
【0019】
次に、ステップS204に進み、ACopyCnt1がCopyCnt1以上かどうかを判定する。CopyCnt1がライセンスされたコピー可能枚数ACopyCnt1と等しいか越えていた場合は、ステップS207に進み、コピー処理を行う。CopyCnt1がライセンスされたコピー可能枚数ACopyCnt1よりも小さい値であれば、ステップS205に進み、コピーカウンタ1(CopyCnt1)値に1を加算する(CopyCnt1=CopyCnt1+1)。そして、ステップS206に進み、コピー処理を行う。
【0020】
スキャナカウンタ1、プリントカウンタ1、アプリ起動カウンタ1についてもコピーカウンタ1と同様に、ライセンスファイルのそれぞれのカウンタの可能数を越えて、それぞれの処理を行わない。
【0021】
(第1の実施形態)
次に、図4と、図5のフローチャートを参照してライセンスの委譲処理について説明する。ここでは、マシン1のアプリケーション1のライセンスをマシン2に委譲する場合を例にして説明する。
【0022】
先ず、ステップS301において、委譲されるマシン(マシン2)のシリアル番号(MSerial2)を得る。シリアル番号の取得方法として、例えば、GUIでユーザに委譲先マシンのシリアル番号を求めるダイアログを表示し、直接シリアル番号を入力させるようにする。また、マシンがネットワークに接続されている場合は、マシンを特定できるネットワーク上の名前又はIPAddress等を入力してもらい、それらの情報からシステムが自動的にシリアル番号を取得するようにしてもよい。なお、本発明は、これらのシリアル番号取得方法に限定されるものではない。
【0023】
次に、ステップS302で、委譲するマシン(マシン1)のライセンスファイル(ライセンスファイル1)を得て、暗号がかかっている場合はその暗号を解いておく。
次に、ステップS303において、ライセンスファイル1内のシリアル番号(Serial1)をMSerial2へと入れ替える。
【0024】
次に、ステップS304において、マシン1のアプリケーション1に割り当てたコピーカウンタ値(CopyCnt1)を取り出す。
次に、ステップS305では、ライセンスファイル1からコピー可能枚数(ACopyCnt1)を取り出す。
【0025】
そして、ステップS306で、ライセンスファイル1のコピー可能枚数(ACopyCnt1)を
(ACopyCnt1 - CopyCnt1)に入れ替える。
すなわち、コピー可能枚数は(ACopyCnt1 = ACopyCnt1 - CopyCnt1)のようになる。
この処理により、すでに使用済みのCopyCnt1分コピー可能枚数を減らしたものがライセンス委譲後の新たなコピー可能枚数(ACopyCnt1)になる。
【0026】
次に、ステップS307において、他の可能枚数についても、ステップS304〜ステップS306の処理と同様の入れ替え操作を行う。すなわち具体的には、スキャン可能枚数、プリント可能枚数、アプリ起動可能回数、等の可能枚数も同様に入れ替え作業を行う。
【0027】
ここで、スキャン可能枚数を例にすると、コピーカウンタ値(CopyCnt1)をスキャンカウント値(ScanCnt1)へと置き換え、コピー可能枚数(ACopyCnt1)をスキャン可能枚数(AscanCnt1)へと置き換える。この置き換えた状態で、ステップS304〜ステップS306の処理を行うことで、スキャン可能枚数の置き換えを行うことができる。
【0028】
次に、ステップS308に進み、マシン2内にこの内容の入れ替え作業を行ったライセンスファイル1を、記憶させる。このとき、暗号をかける場合は、ライセンスファイル1に暗号をかけてからマシン2内に記憶させる。
【0029】
次に、ステップS309において、マシン1内のアプリケーションファイル1をマシン2に移動する。
さらに、ステップS310において、マシン1内のライセンスファイル1を消去することで、マシン1のアプリケーション1のライセンスをマシン2に委譲される。
【0030】
上述したようなライセンス委譲処理により、マシン2でアプリケーション1の起動をすると、委譲されたライセンスファイル1のシリアル番号とマシン2のシリアル番号が一致する。したがって、復号キー(Key1)を用いてアプリケーションファイル1を復号して、アプリケーション1を起動することができる。なお、マシン2でのコピー処理等は、マシン1で使用された分が差し引かれたライセンス数で管理される。
【0031】
(第2の実施形態)
次に、図6と、図7のフローチャートを参照してライセンス委譲処理にいくつかの処理を追加して払い戻し処理を実現する方法について説明する。ここでは、マシンが故障して他のマシンでも使用しないアプリケーションがある場合、ライセンスが払い戻せるようにするものである。ライセンス委譲処理は、あるマシンで使用しなくなったアプリケーションを他のマシンで使用したい場合や、あるマシンが故障した為、他のマシンにライセンスを移動したい場合に生じため、払い戻し処理と似ている。
【0032】
まず、ステップS301において、委譲されるマシン(マシン2)のシリアル番号(MSerial2)を得る。上述したように、シリアル番号取得方法として、例えば、GUIでユーザに委譲先マシンのシリアル番号を求めるダイアログを出して、直接シリアル番号を入力させてもよい。しかし、ここでは払い戻し処理であることを示すために、特殊なシリアル番号を入力する。例えば、普通は、マシンのシリアル番号としては使用しないマイナスの値の−1を入力する。
【0033】
次に、ステップS302で、委譲するマシン(マシン1)のライセンスファイル(ライセンスファイル1)を得て、暗号がかかっている場合はその暗号を復号する。
次に、ステップS311において、取得したシリアル番号(MSerial2)が特殊な番号かどうかを判定する。特殊な番号でなければ、ステップS303に進む。ステップS303において、ライセンスファイル1内のシリアル番号(Serial1)をMSerial2へと入れ替える。
【0034】
シリアル番号が−1等の特殊な番号であれば、ステップS304に進む。なお、ステップS304〜ステップS307までは第1の実施形態のライセンス委譲と同様の処理であり説明を省略する。次に、ステップS307の処理からステップS312の処理に進む。
【0035】
ステップS312において、再度、取得したシリアル番号(MSerial2)が特殊な番号かどうかを判定する。判定の結果、シリアル番号が−1等の特殊な番号であれば、ステップS313に進む。ステップS313において、ライセンスファイル1内の可能枚数に応じて、払い戻し額を決定し、ステップS314でマシン1内のアプリケーションファイル1を削除する。
【0036】
そして、ステップS310に進み、マシン1内のライセンスファイル1を消去する。ステップS312において、シリアル番号が特殊な番号でなければ、上述したライセンスの委譲と同様のステップS308〜ステップS310の処理を行う。
【0037】
(第3の実施形態)
次に、図8と、図9のフローチャートを参照してライセンスの分割について説明する。
まず、ステップS401で、アプリケーション1のライセンスファイル(ライセンスファイル1)を複製する。このとき、元のライセンスファイル1をライセンスファイル1(a)とし、複製されたライセンスファイルをライセンスファイル1(b)とする。また、ライセンスファイルに暗号がかかっている場合は、複製する前に暗号を解いておく。
【0038】
次に、ステップS402において、ライセンス分割後に委譲されるマシン(マシン2)のシリアル番号(MSerial2)を得る。シリアル番号の取得方法として、第1の実施形態のライセンス委譲処理で説明した方法で取得する。次に、ステップS403でアプリケーション1(b)のライセンスファイルのシリアル番号(Serial1)をMSerial2へと入れ替える。
【0039】
次に、ステップS404において、マシン1のアプリケーション1に割り当てたコピーカウンタ値(CopyCnt1)を取り出す。
次に、ステップS405では、アプリケーション1のライセンスファイル1からコピー可能枚数(ACopyCnt1)を取り出す。
【0040】
そして、ステップS406において、マシン1に残して利用したいコピー可能枚数(RCopyCnt1)を設定する。ここで、コピー可能枚数の設定方法は、GUIでユーザにRCopyCnt1の値を求めるダイアログの表示をして、入力させるようにすればよい。また、残りのコピー可能枚数を2で割って、RCopyCnt1 = (ACopyCnt1 - CopyCnt1) / 2と設定するようにしてもよい。なお、本発明は、これらの設定方法に限定されるものではない。
【0041】
次に、ステップS407で、アプリケーション1のライセンスファイル1(b)のコピー可能枚数(ACopyCnt1b)をACopyCnt1 - CopyCnt1- RCopyCnt1に入れ替える。
すなわち、コピー可能枚数は(ACopyCnt1 = ACopyCnt1 - CopyCnt1- RCopyCnt1)のようになる。
【0042】
次に、ステップS408において、他の可能枚数も同様に入れ替え操作を行う。
例えば、スキャン可能枚数は、
(AScanCnt1b = AScanCnt1 - ScanCnt1- RScanCnt1)のようになる。
また、プリンタ可能枚数は、
(APrintCnt1b = APrintCnt1 - PrintCnt1- RPrintCnt1)のようになる。
また、アプリ起動可能回数は、
(ALaunchCnt1b = ALaunchCnt1 - LaunchCnt1- RLaunchCnt1)のようになる。
【0043】
次に、ステップS409において、アプリケーション1のライセンスファイル1(a)のコピー可能枚数(ACopyCnt1a)をCopyCnt1 + RCopyCnt1に入れ替える。
すなわち、コピー可能枚数は(ACopyCnt1a = CopyCnt1 + RCopyCnt1)のようになる。
【0044】
さらに、ステップS410において、他の可能枚数も同様にして入れ替え操作を行う。
例えば、スキャン可能枚数は、
(AScanCnt1a = ScanCnt1 + RScanCnt1)のようになる。
また、プリンタ可能枚数は、
(APrintCnt1a = PrintCnt1 + RPrintCnt1)のようになる。
また、アプリ起動可能回数は、
(ALaunchCnt1a = LaunchCnt1 + RLaunchCnt1)のようになる。
【0045】
次に、ステップS411において、マシン1内のライセンスファイル1を消去し、ライセンスファイル1(a)を記憶させる。
次に、ステップS412において、マシン2内にライセンスファイル1(b)を記憶させる。
【0046】
そして、ステップS413において、マシン1内のアプリケーションファイル1をマシン2に複製する。
最後に、ステップS414において、マシン2内に、アプリケーション1に対応したカウンタを初期値0で用意する。
すなわち、各カウンタ値は、
(CopyCnt1' = 0, ScanCont1' = 0, PrintCnt1' = 0, LaunchCnt1' = 0)のようになる。
【0047】
(第4の実施形態)
次に、図10と図11のフローチャートを参照してライセンスの統合について説明する。
ここでは、マシン1とマシン2に同じアプリケーション1がインストールされているものとする。
まず、ステップS501において、マシン1のアプリケーション1のライセンスファイル(ライセンスファイル1a)と、マシン2のアプリケーション1のライセンスファイル(ライセンスファイル1b)を取り出し、暗号がかかっている場合は、暗号を復号化する。
【0048】
次に、ステップS502において、マシン1のアプリケーション1に割り当てたコピーカウンタ値(CopyCnt1a)を取り出す。
次に、ステップS503において、アプリケーション1のライセンスファイル1からコピー可能枚数(ACopyCnt1a)を取り出す。
【0049】
次に、ステップS504において、マシン1に残して利用したいコピー可能枚数(RCopyCnt1)を設定する。
次に、ステップS505において、マシン2のライセンスファイル1bのコピー可能枚数を、ACopyCnt1b+(ACopyCnt1a - CopyCnt1a - RCopyCnt1)に入れ替える。
【0050】
次に、ステップS506において、他の可能枚数、
例えば、(AScanCnt1b, APrintCnt1b, ALaunchCnt1b, etc)も同様の入れ替え操作を行う。
次に、ステップS507において、アプリケーション1のライセンスファイル1aのコピー可能枚数(ACopyCnt1a)をCopyCnt1a+RCopyCnt1に入れ替える。
すなわち、コピー可能枚数は (ACopyCnt1a = CopyCnt1a + RCopyCnt1)のようになる。
【0051】
次に、ステップS508において、他の可能枚数、
例えば、(AScanCnt1a, APrintCnt1a, ALaunchCnt1a, etc)も同様の入れ替え操作を行う。
次に、ステップS509において、マシン1内に修正したライセンスファイル1aを記憶させる。
次に、ステップS510において、マシン2内に修正したライセンスファイル1bを記憶させる。
【0052】
このように、マシン1では、アプリケーション1でのコピーは、RCopyCnt1分可能になる。また、マシン2では、最初に与えられていたコピーライセンスACopyCnt1bにさらに、マシン1からのACopyCnt1a - CopyCnt1a - RCopyCnt1分が加えられる。したがって、実質は、すでに使用しているCopyCnt1bを引いた分が残りのコピー可能数になる。ここで、マシン1に残すRCopyCnt1分を0とすれば、マシン1に残っているコピーライセンスをマシン2にすべて統合する処理になる。
【0053】
上述した本発明の実施形態におけるライセンス管理装置を構成する各手段、並びにライセンス管理手段の各ステップは、コンピュータのRAMやROMなどに記憶されたプログラムが動作することによって実現できる。このプログラム及び前記プログラムを記録したコンピュータ読み取り可能な記録媒体は本発明に含まれる。
【0054】
また、本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施形態も可能であり、具体的には、複数の機器からなるシステムに適用してもよい。
【0055】
なお、本発明は、上述した実施形態の機能を実現するソフトウェアのプログラムを、システムまたは装置に直接、または遠隔から供給する。そして、そのシステムまたは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【0056】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等の形態であってもよい。
【0057】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。さらに、そのプログラムの指示に基づき、コンピュータ上で稼動しているOSなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【0058】
さらに、その他の方法として、まず記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。そして、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【0059】
このように、本実施形態よれば、柔軟なライセンス管理を行うことができる。
【図面の簡単な説明】
【0060】
【図1】本実施形態に係る構成を示す図である。
【図2】本実施形態に係るアプリケーションの起動のフローチャートである。
【図3】本実施形態に係るアプリケーション実行中のライセンス制御のフローチャートである。
【図4】第1の実施形態に係るライセンス委譲を示す図である。
【図5】第1の実施形態に係るライセンス委譲のフローチャートである。
【図6】第2の実施形態に係るライセンス払い戻しを示す図である。
【図7】第2の実施形態に係るライセンス払い戻しのフローチャートである。
【図8】第3の実施形態に係るライセンス分割を示す図である。
【図9】第3の実施形態に係るライセンス分割のフローチャートである。
【図10】第4の実施形態に係るライセンス統合を示す図である。
【図11】第4の実施形態に係るライセンス統合のフローチャートである。
【符号の説明】
【0061】
10 中央演算処理装置
11 入出力装置
12 記憶装置
【特許請求の範囲】
【請求項1】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理装置であって、
前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定手段と、
前記実行判定手段の判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出手段と、
前記復号キー取出手段で取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化手段とを有することを特徴とするライセンス管理装置。
【請求項2】
前記ライセンスファイルが暗号化されているか否かを判定する暗号化判定手段を有し、
前記暗号化判定手段により暗号化されていると判定した場合に、前記暗号化されたライセンスファイルを復号化するライセンスファイル復号化手段を有することを特徴とする請求項1に記載のライセンス管理装置。
【請求項3】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理装置であって、
前記ライセンスファイルが暗号化されているか否かを判定する暗号化判定手段と、
前記暗号化判定手段により暗号化されていると判定した場合に、前記暗号化されたライセンスファイルを復号化するライセンスファイル復号化手段とを有することを特徴とするライセンス管理装置。
【請求項4】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理方法であって、
前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定ステップと、
前記実行判定ステップの判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出ステップと、
前記復号キー取出ステップで取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化ステップとを有することを特徴とするライセンス管理方法。
【請求項5】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理方法であって、
前記ライセンスファイルが暗号化されているか否かを判定する暗号化判定ステップと、
前記暗号化判定ステップにより暗号化されていると判定した場合に、前記暗号化されたライセンスファイルを復号化するライセンスファイル復号化ステップとを有することを特徴とするライセンス管理方法。
【請求項6】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンス管理するライセンス管理装置を制御するプログラムであって、
前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定ステップと、
前記実行判定ステップの判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出ステップと、
前記復号キー取出ステップで取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化ステップとをコンピュータに実行させるためのプログラム。
【請求項7】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンス管理するライセンス管理装置を制御するプログラムであって、
前記ライセンスファイルが暗号化されているか否かを判定する暗号化判定ステップと、
前記暗号化判定ステップにより暗号化されていると判定した場合に、前記暗号化されたライセンスファイルを復号化するライセンスファイル復号化ステップとをコンピュータに実行させるためのプログラム。
【請求項1】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理装置であって、
前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定手段と、
前記実行判定手段の判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出手段と、
前記復号キー取出手段で取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化手段とを有することを特徴とするライセンス管理装置。
【請求項2】
前記ライセンスファイルが暗号化されているか否かを判定する暗号化判定手段を有し、
前記暗号化判定手段により暗号化されていると判定した場合に、前記暗号化されたライセンスファイルを復号化するライセンスファイル復号化手段を有することを特徴とする請求項1に記載のライセンス管理装置。
【請求項3】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理装置であって、
前記ライセンスファイルが暗号化されているか否かを判定する暗号化判定手段と、
前記暗号化判定手段により暗号化されていると判定した場合に、前記暗号化されたライセンスファイルを復号化するライセンスファイル復号化手段とを有することを特徴とするライセンス管理装置。
【請求項4】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理方法であって、
前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定ステップと、
前記実行判定ステップの判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出ステップと、
前記復号キー取出ステップで取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化ステップとを有することを特徴とするライセンス管理方法。
【請求項5】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンスを管理するライセンス管理方法であって、
前記ライセンスファイルが暗号化されているか否かを判定する暗号化判定ステップと、
前記暗号化判定ステップにより暗号化されていると判定した場合に、前記暗号化されたライセンスファイルを復号化するライセンスファイル復号化ステップとを有することを特徴とするライセンス管理方法。
【請求項6】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンス管理するライセンス管理装置を制御するプログラムであって、
前記シリアル番号情報に基づいて、前記プログラムを実行するか否かを判定する実行判定ステップと、
前記実行判定ステップの判定結果に基づいて、前記ライセンスファイルから復号キーを取り出す復号キー取出ステップと、
前記復号キー取出ステップで取り出した復号キーを用いて、前記プログラムを暗号化したファイルを復号化するプログラム復号化ステップとをコンピュータに実行させるためのプログラム。
【請求項7】
プログラムを暗号化したファイルと前記プログラムを実行するためのシリアル番号情報を記述したライセンスファイルとを用いてライセンス管理するライセンス管理装置を制御するプログラムであって、
前記ライセンスファイルが暗号化されているか否かを判定する暗号化判定ステップと、
前記暗号化判定ステップにより暗号化されていると判定した場合に、前記暗号化されたライセンスファイルを復号化するライセンスファイル復号化ステップとをコンピュータに実行させるためのプログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2008−257466(P2008−257466A)
【公開日】平成20年10月23日(2008.10.23)
【国際特許分類】
【出願番号】特願2007−98638(P2007−98638)
【出願日】平成19年4月4日(2007.4.4)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
【公開日】平成20年10月23日(2008.10.23)
【国際特許分類】
【出願日】平成19年4月4日(2007.4.4)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】
[ Back to top ]