説明

アプリケーションプログラム,サーバコンピュータ,ライセンスキー発行プログラム、ライセンスキー発行装置及びライセンスキー発行システム

【課題】 ライセンサー側に、極めて単純な機能のライセンスキー発行装置(各種の情報の管理機能を有さない装置)を用意するだけで済むことになるアプリケーションプログラムを、提供する。
【解決手段】
アプリケーションプログラムを、既に登録されているライセンスキーと同じ固有識別子を含み(S308;YES)、ライセンスキーの発行依頼時に発行依頼者が指定したパスワードの暗号化結果と同じ暗号化パスワード(S304;YES)を含むライセンスキーしか登録できないプログラムとしておく。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ライセンス数の変更が可能なアプリケーションプログラム及びサーバコンピュータ,ライセンス数を変更するためのライセンスキーを発行するライセンスキー発行プログラム及びライセンスキー発行装置,ライセンス数の変更が可能な何台かのサーバコンピュータとライセンスキー発行装置とを含むライセンスキー発行システムに、関する。
【背景技術】
【0002】
周知のように、近年、市販されているプログラムの中には、一旦、使用を開始した後、ライセンス数を変更(追加)できるものが存在している。
【0003】
そのようなプログラムとしては、ライセンス数変更時の具体的な動作内容が異なるさまざまなもの(例えば、特許文献1参照)が、知られている。ただし、既存の,いずれのプログラムに用いられているライセンス数の設定・変更方法も、基本的には、各プログラムの現在のライセンス数や各プログラムのユーザに通知済みのライセンスコード等を記憶しておくための装置を用意しておき、その装置に記憶されている情報を利用して行われるものとなっている。そして、既存のライセンス数の設定・変更方法は、各プログラムの現在のライセンス数等を記憶させておくための装置に障害が生じるとライセンス数の変更等が行えなくなるものであるため、当該装置内のデータをバックアップしておくための装置等を用意しておかなければならないものとなっていた。
【特許文献1】特開2000-207199号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
そこで、本発明の第1の課題は、ライセンサー側に、単純な機能のライセンスキー発行装置(各種情報の管理機能を有さない装置)を用意するだけで済むことになるアプリケーションプログラム及びサーバコンピュータを、提供することにある。
【0005】
また、本発明の第2の課題は、各種の情報を管理する必要がない形でライセンスキーを発行するライセンスキー発行装置、コンピュータを,そのようなライセンスキー発行装置として動作させることが出来るライセンスキー発行プログラムを、提供することにある。
【0006】
また、本発明の第3の課題は、単純な機能のライセンスキー発行装置により、各サーバコンピュータに対するライセンスキーの発行が行われるライセンスキー発行システムを、提供することにある。
【課題を解決するための手段】
【0007】
上記第1の課題を解決するために案出された本発明のアプリケーションプログラムは、何台かのクライアントコンピュータに接続されたサーバコンピュータを、パスワードを入力する操作を含む注文キー生成指示操作が行われたときに、入力されたパスワードを暗号化することにより暗号化パスワードを生成した後、生成した暗号化パスワード,及び,自コンピュータに対して割り当てられている固有識別子を含めた所定形式のデータを暗号化することにより、新たなライセンスキーを得るためにライセンサーに通知することが必要な注文キーを生成する注文キー生成ステップと、ライセンスキーとパスワードとを入力する操作を含むライセンスキー追加指示操作が行われたときに、入力されたライセンスキーを復号すると共に、入力されたパスワードを暗号化し、入力されたライセンスキーの復号結果中に含まれる固有識別子が、自コンピュータに対して割り当てられている前記固有識別子と一致し、かつ、当該復号結果中に含まれる暗号化パスワードが、入力されたパスワードの暗号化結果と一致した場合に限り、入力されたライセンスキーが前記ライセンサーによって正式に発行されたものであると判断するライセンスキー追加指示操作応答ステップとを実行可能な装置として動作させることを、特徴とする。
【0008】
すなわち、本発明のアプリケーションプログラムが実行されたサーバコンピュータが、ライセンサーによって正式に発行されたものであると判断するライセンスキーは、顧客に特有な情報を何等必要としない処理(当該サーバコンピュータが生成した注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードと、顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを暗号化するといった処理)により生成できるものとなっている。
【0009】
また、本発明のサーバコンピュータ(請求項2)も、顧客に特有な情報を何等必要としない処理(当該サーバコンピュータが生成した注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードと、顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを暗号化するといった処理)により生成できるライセンスキーを、ライセンサーによって正式に発行されたものであると判断する装置なっている。従って、本発明のアプリケーションプログラム/サーバコンピュータを用いれば、ライセンサー側に、単純な機能のライセンスキー発行装置(各種の情報の管理機能を有さない装置)を用意するだけで、アプリケーションプログラム/サーバコンピュータ用のライセンスキーを発行できることになる。
【0010】
上記第2の課題を解決するために案出された本発明のライセンスキー発行プログラムは、コンピュータに、或る顧客から通知された注文キーを入力する操作を含むライセンスキー生成指示操作が行われたときに、入力された注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードを特定する特定ステップと、この特定ステップにより特定されたものと同じ固有識別子及び暗号化パスワードを含み、前記顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを生成するデータ生成ステップと、このデータ生成ステップにより生成されたデータを暗号化することによって、前記顧客に通知するためのライセンスキーを発行するライセンスキー発行ステップとを実行させることを、特徴とする。
【0011】
すなわち、本発明のライセンスキー発行プログラムは、顧客に特有な情報を何等必要としない処理(顧客から通知された注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードと、顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを暗号化するといった処理)によりコンピュータにライセンスキーを発行させるものとなっている。従って、本発明のライセンスキー発行プログラムを用いれば、コンピュータを、各種の情報を管理する必要がない形でライセンスキーを発行可能な装置として動作させることが出来ることになる。
【0012】
また、本発明のライセンスキー発行装置(請求項4)も、同様の手順でライセンスキーを発行する装置となっている。従って、請求項5記載の発明によれば、各種の情報を管理する必要がない形でライセンスキーを発行可能なライセンスキー発行装置を実現できることになる。
【0013】
そして、本発明のライセンスキー発行システムは、本発明のサーバコンピュータ(請求項2)相当のサーバコンピュータと、本発明のライセンスキー発行装置(請求項2)相当のライセンスキー発行装置とが組み合わされたものであるので、このライセンスキー発行システムは、単純な機能のライセンスキー発行装置により、各サーバコンピュータに対するライセンスキーの発行が行われるシステムとして動作することになる。
【発明の効果】
【0014】
本発明によれば、ライセンサー側に、各種の情報の管理機能を有さないライセンスキー発行装置を用意するだけで、アプリケーションプログラム/サーバコンピュータに関するライセンス数を変更できる。
【発明を実施するための最良の形態】
【0015】
以下、本発明を実施するための最良の形態を、図面を参照して詳細に説明する。
【0016】
本発明の一実施形態に係るアプリケーションプログラム10は、図1に示したようなコンピュータシステム内のサーバ20にインストールされるプログラムである。
【0017】
このアプリケーションプログラム10は、ユーザID及びパスワードの登録が完了している者が,任意のクライアントPC30から利用できるプログラム(いわゆるWebアプリケーションプログラム)である。そして、アプリケーションプログラム10は、登録可能なユーザID及びパスワードの数の上限を定めるライセンス数が、変更可能なプログラムとなっている。
【0018】
また、アプリケーションプログラム10は、ライセンス数の初期設定/変更(追加)が、ライセンスキー発行センターが発行したライセンスキーをキーボード入力することにより行われるプログラムとして作成されている。
【0019】
ここで、ライセンスキー発行センターとは、アプリケーションプログラム10のライセンサー(各アプリケーションプログラム10のユーザとの間で、ライセンス数に関する契約を行う法人)が、初期設定用ライセンスキー(アプリケーションプログラム10のセットアップ時に使用するライセンスキー)や追加用ライセンスキー(ライセンス数を増加させるために使用するライセンスキー)を発行するために、運営しているセンターのことである。なお、後述するライセンスキー発行装置,サーバ20の内部処理で使用されるライセンスキー(初期設定用ライセンスキー,追加用ライセンスキー)は、バイナリデータであり、ユーザに提示される(書類上に印字される)ライセンスキーは、バイナリデータ形式のライセンスキーを16進表記形式のデータに変換したものなのであるが、説明の便宜上、以下では、両データ形式のライセンスキーのことを特に区別することなく、単に、ライセンスキーと表記する。
【0020】
このライセンスキー発行センタには、初期設定用ライセンスキー発行処理と追加用ライセンスキー発行処理とを行えるライセンスキー発行装置(一般的な構成のコンピュータに、ライセンスキー発行プログラムをインストールした装置)が、設置されている。
【0021】
ライセンスキー発行装置(ライセンスキー発行プログラム)が実行可能な初期設定用ライセンスキー発行処理は、特定のアプリケーションプログラム10のセットアップに用いる初期設定用ライセンスキーを発行し、発行した初期設定用ライセンスキー等を、そのアプリケーションプログラム10のユーザに通知するための書類(初期設定用ライセンスキー等が印字されている書類;以下、初期設定用ライセンスキー掲載書類と表記する)を印刷する処理である。なお、初期設定用ライセンスキー掲載書類は、通常、アプリケーションプログラム10が記録された記録媒体(CD−ROM等)の添付書類として、各アプリケーションプログラム10のユーザ(購入者)に提供される書類となっている。
【0022】
そして、この初期設定用ライセンスキー発行処理は、ライセンスキー発行対象プログラム(これから発行する初期設定用ライセンスキーを用いて初期設定が行われるアプリケーションプログラム10)に設定するライセンス数(以下、初期ライセンス数と表記する)をパラメータとした,図2に示した内容の処理となっている。
【0023】
すなわち、初期設定用ライセンスキー発行処理を開始したライセンスキー発行装置(ライセンスキー発行プログラム)は、まず、現在日時を表す所定形式のデータを所定のハッシュ関数で処理することにより当該データのハッシュ値を求める処理(ステップS101)を行う。次いで、ライセンスキー発行装置は、現在日時から求めたハッシュ値等を利用して、図3に示した構成のライセンスキー元データを生成する(ステップS102)。より具体的には、このステップS102において、ライセンスキー発行装置は、現在日時から求めたハッシュ値,初期ライセンス数,現在日時を示すデータ,初期設定用暗号化パスワードを、それぞれ、固有識別子、ライセンス数(キー単位ライセンス数に相当)、発行日時(発行日時情報に相当)、暗号化パスワードとして設定したライセンスキー元データを生成する。なお、初期設定用暗号化パスワードとは、予め定められている初期設定用パスワードに対してパスワード用非可逆暗号化処理(本実施形態では、ハッシュ関数による非可逆暗号化処理)を施すことによって得られるデータ(予め用意されているデータ)のことである。
【0024】
そして、ライセンスキー発行装置は、生成したライセンスキー元データに対してライセンスキー用可逆暗号化処理(本実施形態では、ライセンスキー用の秘密キーを用いたBlowfish暗号化処理)を施すことによって、初期設定用ライセンスキーを生成する処理(ステップS103)と、生成した初期設定用ライセンスキー,初期設定用パスワード等が印字された初期設定用ライセンスキー掲載書類をプリンタに印刷させるための処理(ステップS104)とを行ってから、初期設定用ライセンスキー発行処理を終了する。
【0025】
ライセンスキー発行装置(ライセンスキー発行プログラム)が実行可能な追加用ライセンスキー発行処理は、アプリケーションプログラム10のユーザから,注文キー,追加ライセンス数等が記された注文書が送付されてきたときに、当該ユーザに返送する追加用ライセンスキー掲載書類(当該ユーザが,自身が使用しているアプリケーションプログラム10に登録すべき追加用ライセンスキー等が印字された書類)を作成するために、実行される処理である。
【0026】
ここで、注文キーとは、パスワードの入力を含む操作が行われたときに、アプリケーションプログラム10によって生成(発行)される情報のことである。この注文キーの詳細(生成手順等)については後述するが、注文キーは、所定の復号処理を施すことによって、固有識別子と暗号化パスワードとを含むデータを得ることが出来るデータとなっている。
【0027】
そして、追加用ライセンスキー発行処理は、図4に示した内容の処理となっている。
【0028】
すなわち、追加用ライセンスキー発行処理を開始したライセンスキー発行装置(ライセンスキー発行プログラム)は、まず、注文キーを復号し,その復号結果中に含まれる固有識別子と暗号化パスワードとを特定する処理(ステップS201)を行う。次いで、ライセンスキー発行装置は、特定した固有識別子,初期ライセンス数,現在日時を示すデータ,特定した暗号化パスワードを、それぞれ、固有識別子、ライセンス数、発行日時、暗号化パスワードとして設定したライセンスキー元データ(図3参照)を生成する(ステップS202)。
【0029】
そして、ライセンスキー発行装置は、生成したライセンスキー元データに対してライセンスキー用可逆暗号化処理を施すことにより追加用ライセンスキーを生成する処理(ステップS203)と、生成した追加用ライセンスキー等が印字された書類(以下、追加用ライセンスキー掲載書類と表記する)をプリンタに印刷させるための処理(ステップS204)とを行ってから、追加用ライセンスキー発行処理を終了する。
【0030】
一方、アプリケーションプログラム10は、サーバ20へのインストールが完了すると、任意のクライアントPC30(或いは、サーバ20)のディスプレイ上に、図5に示した構成のライセンス管理画面を表示させることが出来る状態となるプログラムとして作成されている。
【0031】
アプリケーションプログラム10のセットアップ作業を行う者(以下、操作者と表記する)は、サーバ20にアプリケーションプログラム10をインストールした後、いずれかのクライアントPC30(或いは、サーバ20)のディスプレイ上に、このライセンス管理画面を表示させる。
【0032】
その後、操作者は、初期設定用ライセンスキー掲載書類に印字されている初期設定用ライセンスキーをキーボード入力することにより,ライセンス数入力欄51内に当該初期設定用ライセンスキーを表示させてから、ライセンスキー登録ボタン52を押下(クリック)する。
【0033】
ライセンスキー登録ボタン52が押下されると、アプリケーションプログラム10は、図6に示した手順のライセンスキー登録処理を開始する。
【0034】
すなわち、アプリケーションプログラム10は、まず、ライセンス管理画面のライセンス数入力欄51に入力されたライセンスキーに対して所定の復号処理を施す処理(ステップS301)を行う。このステップS301で行われる復号処理は、上記したライセンスキー用可逆暗号化処理にて暗号化されたデータを復号することが出来る処理(ライセンスキー用秘密キーを用いたBlowfish復号処理)である。
【0035】
次いで、アプリケーションプログラム10は、図7に示したようなパスワード入力画面を表示することにより、操作者に、パスワードを入力させるための処理(ステップS302)を行う。
【0036】
要するに、ライセンスキー登録ボタン52を押下(クリック)すると、このパスワード入力画面が表示されるので、操作者(セットアップ作業を行う者)は、このパスワード入力画面に対して、初期設定用ライセンスキー掲載書類に印字されている初期設定用パスワードを入力する。
【0037】
パスワード入力画面へのパスワードの入力が完了すると、アプリケーションプログラム10は、入力されたパスワードを暗号化(ステップS303)した後、その暗号化結果が、ライセンスキーの復号結果中に含まれる暗号化パスワードと一致するか否かを判断する(ステップS304)。なお、ステップS303で行われる処理は、上記したパスワード用非可逆暗号化処理と同じものである。
【0038】
そして、アプリケーションプログラム10は、パスワードの暗号化結果が、ライセンスキーの復号結果中に含まれる暗号化パスワードと一致していなかった場合(ステップS304;NO)には、ライセンスキーの登録に失敗した旨(パスワードが誤っていると考えられる旨)を操作者に通知するための登録失敗通知処理(ステップS311)を行ってから、このライセンスキー登録処理を終了する。
【0039】
一方、パスワードの暗号化結果が、ライセンスキーの復号結果中に含まれる暗号化パスワードと一致していた場合(ステップS304;YES)、アプリケーションプログラム10は、ライセンスキーファイルに記憶されているライセンスキー(以下、登録済ライセンスキーと表記する)の数が“0”であるか否かを判断する(ステップS305)。
【0040】
ここで、ライセンスキーファイルとは、アプリケーションプログラム10のインストール時に,サーバ20内に,空のもの(ライセンスキーを記憶していないもの)が用意される,登録されたライセンスキーを記憶しておくためのファイルのことである。なお、詳細は後述するが、アプリケーションプログラム10は、ライセンス数が必要となる度に、このライセンスファイルの内容を解析することにより,現在のライセンス数を特定するプログラム(ライセンス数を数値データとして記憶しておかないプログラム)として作成されている。
【0041】
そして、初期設定用ライセンスキーの登録時には、登録済ライセンスキー数が“0”である(ステップS302;YES)ため、ライセンスキーファイルにライセンスキーを追加する処理(ステップS309)と、図8に示したような登録完了通知画面によりライセンスキーの登録完了を登録作業者に通知するための登録完了通知処理(ステップS310)とが行われた後に、このライセンスキー登録処理が終了される。
【0042】
ライセンスキー登録処理のステップS306〜S308の処理は、追加用ライセンスキーの登録時にのみ実行される処理である。そして、追加用ライセンスキーが得られるのは、既に概要説明を行ったように、注文キーを記した注文書をライセンス発行センターに送付した後である。このため、ステップS306〜S308の処理内容を説明する前に、ここで、注文キーの発行に関するアプリケーションプログラム10の動作を説明しておくことにする。
【0043】
ライセンス数を増やしたい場合、操作者は、いずれかのクライアントPC30(或いは、サーバ20)のディスプレイ上に、ライセンス管理画面(図5参照)を表示させてから、ライセンスキー追加注文ボタン53を押下する。
【0044】
ライセンスキー追加注文ボタン53が押下されると、アプリケーションプログラム10は、図9に示した注文キー発行処理を開始する。
【0045】
すなわち、ライセンスキー追加注文ボタン53が押下されたことを検出したアプリケーションプログラム10は、まず、パスワード指定画面を表示することにより、ライセンスキー登録処理時に入力が必要となるパスワードを操作者に指定させるための処理(ステップS401)を行う。なお、このステップS401の処理時に表示されるパスワード指定画面は、図10に示したものである。
【0046】
ステップS401の処理が完了した場合(パスワードが入力されている状態でパスワード指定画面上のOKボタンが押下された場合)、アプリケーションプログラム10は、入力されたパスワードに対してパスワード用非可逆暗号化処理(初期設定用暗号化パスワードの生成に用いられているものと同じもの)を施すことにより暗号化パスワードを生成する(ステップS402)。
【0047】
次いで、アプリケーションプログラム10は、ライセンスキー#1(ライセンスファイル内の先頭のライセンスキー;初期設定用ライセンスキー)を復号(ステップS403)した後、現在日時を示すデータと,復号結果中の固有識別子と,入力されたパスワードから生成した暗号化パスワードとを並べたデータを、Blowfish暗号化することにより、注文キーを生成する(ステップS404)。要するに、このステップS404において、アプリケーションプログラム10は、復号することにより、初期設定用ライセンスキーに含まれていたものと同じ固有識別子と、ユーザが入力したパスワードを暗号化した暗号化パスワードとを得ることが出来る注文キーを生成する。なお、本実施形態のアプリケーションプログラム10がステップS303にいて行うBlowfish暗号化は、ライセンスキー注文キー用の秘密キー(ライセンスキー用の秘密キーとは異なる秘密キー)を用いたものである。
【0048】
その後、アプリケーションプログラム10は、図11に示したような注文キー表示画面により、生成した注文キーを操作者に通知する注文キー表示処理(ステップS405)を行ってから、注文キー発行処理を終了する。
【0049】
ライセンス数を増やしたいと考えている操作者は、注文キー発行処理を実行させることにより得た注文キー、追加ライセンス数(追加したいライセンス数)を記入した注文書を作成し、作成した注文書を郵便等によりライセンス発行センターに送付する。
【0050】
そして、操作者は、当該注文書を受け取ったライセンス発行センターから、追加用ライセンスキー掲載書類が送付されてきたときには、いずれかのクライアントPC30(或いは、サーバ20)のディスプレイ上に、ライセンス管理画面(図5参照)を表示させる。次いで、操作者は、追加用ライセンスキー掲載書類に印字されている追加用ライセンスキーをキーボード入力した後、ライセンスキー登録ボタン52を押下することにより、アプリケーションプログラム10にライセンスキー発行処理(図6)を開始させる。また、操作者は、アプリケーションプログラム10がステップS302の処理にて表示させたパスワード入力画面(図7参照)に、注文キー発行処理時に指定したパスワードを入力する。
【0051】
既に説明した追加用ライセンス発行処理(図4)、注文キー発行処理(図9)の内容から明らかなように、追加用ライセンスキーの復号結果中に含まれる暗号化パスワードは、注文キー発行処理時に指定したパスワードの暗号化結果と一致するものとなっている。
【0052】
このため、パスワード入力画面(図7参照)に、注文キー発行処理時に指定したパスワードを入力した場合、アプリケーションプログラム10は、ステップS302にて、YES側への分岐を行う。
【0053】
追加用ライセンスキーの登録時には、少なくとも1個のライセンスキー(初期設定用ライセンスキー)がライセンスキーファイル内に記憶されている。このため、アプリケーションプログラム10は、登録ライセンスキー数が“0”ではないと判断(ステップS305;NO)し、ステップS306にて、入力されたライセンスキーと同じライセンスキーが既に登録されているか否かを判断する処理を行う。
【0054】
そして、アプリケーションプログラム10は、入力されたライセンスキーと同じライセンスキーが既に登録されていた場合(ステップS306;YES)には、登録失敗通知処理(ステップS307)を行ってから、このライセンスキー登録処理を終了する。
【0055】
一方、入力されたライセンスキーと同じライセンスキーが登録されていなかった場合(ステップS306;NO)、アプリケーションプログラム10は、ライセンスキー#1を復号(ステップS307)し、その復号結果中に含まれる固有識別子と、今回、入力されたライセンスキーの復号結果(ステップS301の処理結果)中に含まれる固有識別子とが一致しているか否かを判断する(ステップS308)。そして、アプリケーションプログラム10は、両固有識別子が一致していなかった場合(ステップS308;NO)には、登録失敗通知処理(ステップS307)を行ってから、このライセンスキー登録処理を終了する。また、両固有識別子が一致していた場合(ステップS308;YES)には、ライセンスキーファイルにライセンスキーを追加する処理(ステップS309)と、登録完了通知処理(ステップS310)とを行ってから、このライセンスキー登録処理を終了する。
【0056】
最後に、図12を用いて、アプリケーションプログラム10が,ライセンス数が必要となった場合に実行する処理であるライセンス数算出処理の内容を説明する。
【0057】
ライセンス数が必要となり,ライセンス数算出処理を開始したアプリケーションプログラム10は、図示してあるように、まず、ライセンス数を記憶するための変数Nを“0”に初期化する(ステップS501)。次いで、アプリケーションプログラム10は、登録済ライセンスキー数Mが“0”であるか否かを判断する(ステップS502)。そして、アプリケーションプログラム10は、Mが“0”であった場合(ステップS502;YES)には、このライセンス数算出処理を終了する(この場合、ライセンス数=0)。
【0058】
一方、Mが“0”でなかった場合(ステップS503;NO)、アプリケーションプログラム10は、ライセンスキー#1を復号する(ステップS504)。次いで、アプリケーションプログラム10は、ライセンスキー#1の復号結果中の固有識別子を基準識別子として記憶すると共に、ライセンスキー#1の復号結果中のライセンス数と同じ値を変数Nに設定する処理(ステップS504)を行う。
【0059】
その後、アプリケーションプログラム10は、ライセンスキー#2〜#Mのそれぞれについて、そのライセンスキーの復号結果中の固有識別子が基準識別子と一致していることを確認した上で、変数Nに、そのライセンスキーの復号結果中のライセンス数を追加していく処理(ステップS505〜S519)を開始する。そして、アプリケーションプログラム10は、或るライセンスキーの復号結果中の固有識別子が基準識別子と一致していないことが見出されることなく、ステップS505〜S519の処理が完了した場合(ステップS506;YES)には、このライセンス数算出処理を終了して、その時点におけるN値がライセンス数であると把握している状態での動作を開始する。
【0060】
また、アプリケーションプログラム10は、ステップS505〜S519の処理中に、或るライセンスキーの復号結果中の固有識別子が基準識別子と一致していないことを見出した場合(ステップS508;NO)には、このライセンス数算出処理を終了(この場合、異常終了)して、ライセンスキーファイルの内容が正しくない旨(サービスマンを呼ぶ必要がある旨)を操作者に通知するためのエラー処理を開始する。
【0061】
以上、詳細に説明したように、本実施形態に係るアプリケーションプログラム10は、固有識別子が登録済みのライセンスキーと一致していないライセンスキーを登録することが出来ない(ステップS308でNO側へ分岐が行われる)ものとなっている。そして、本実施形態に係るライセンスキー発行装置は、各アプリケーションプログラム10用のライセンスキーを、異なる固有識別子を設定したライセンスキー元データから生成する装置となっている。従って、本実施形態に係るアプリケーションプログラム10とライセンスキー発行装置とを用いれば、他のアプリケーションプログラム10用に生成されたライセンスキーを用いてライセンス数を増加させるといったことが行えない形で、各アプリケーションプログラム10のライセンス数を変更できることになる。
【0062】
また、アプリケーションプログラム10は、一旦、登録したライセンスキーの再登録も行えない(ステップS308でNO側へ分岐が行われる)プログラムとして作成されており、ライセンスキー発行装置は、各アプリケーションプログラム10用のライセンスキーを、発行日時を含むライセンスキー元データから生成する装置として構成されている。従って、アプリケーションプログラム10とライセンスキー発行装置とを用いれば、ユーザが、同じパスワードを使い続けても何等問題が生ぜず、かつ、ライセンスキー発行装置側に何等情報を管理させる必要がない形で、各アプリケーションプログラム10に関するライセンス数を変更できることになる。
【0063】
《変形形態》
上記したアプリケーションプログラム10,ライセンス発行装置は、各種の変形を行うことが出来る。例えば、アプリケーションプログラム10,ライセンス発行装置を、パスワードの暗号化を可逆暗号化処理により行うものに変形しておいても良い。また、アプリケーションプログラム10を、固有識別子の一致をチェックしない形のライセンス数計算処理を実行するものや、内容が一致している2個以上のライセンスキーがライセンスキーファイル内に記憶されていないことも確認する形のライセンス数計算処理を実行するものに、変形しておいても良い。
【0064】
また、ライセンスキー発行装置を,各種の情報の管理機能を有さない装置とするために、アプリケーションプログラム10が備えていなければらない機能は、復号することによって,固有識別子と暗号化パスワードとを得ることが出来る注文キーを生成する機能と、ライセンスキーの復号結果中に含まれる固有識別子と暗号化パスワードとにより、当該ライセンスキーの正当性をチェックする機能だけである。従って、注文キー元データとして、固有識別子と暗号化パスワードのみを含むデータが用いられ、ライセンスキー元データとして、固有識別子と暗号化パスワードとライセンス数のみを含むデータが用いられるように、アプリケーションプログラム10,ライセンスキー発行装置を変形しても良い。
【0065】
また、注文キーの桁数(操作者が入力しなければならない文字数)が増えることにはなるが、アプリケーションプログラム10を、追加ライセンス数を含むデータから注文キーを生成するように変形しておくと共に、ライセンスキー発行装置を、そのような注文キーを解釈できる(復号し、復号結果から追加ライセンス数等を抽出できる)ものに変形しておいても良い。
【0066】
また、注文キー発行処理を、ライセンス数算出処理にて算出されたライセンス数を含む注文キー用元データから注文キーが発行される処理としておくと共に、追加用ライセンスキー発行処理を、発行日時情報の代わりに、注文キー内のライセンス数を含める処理としておくことも出来る。
【0067】
(付記1)
自プログラムを利用できるクライアントコンピュータの台数の上限,或いは,自プログラムを利用できるクライアントコンピュータから利用できる者の人数の上限を規定する情報であるライセンス数を変更可能なアプリケーションプログラムであって、
何台かのクライアントコンピュータに接続されたサーバコンピュータを、
パスワードを入力する操作を含む注文キー生成指示操作が行われたときに、入力されたパスワードを暗号化することにより暗号化パスワードを生成した後、生成した暗号化パスワード,及び,自コンピュータに対して割り当てられている固有識別子を含めた所定形式のデータを暗号化することにより、新たなライセンスキーを得るためにライセンサーに通知することが必要な注文キーを生成する注文キー生成ステップと、
ライセンスキーとパスワードとを入力する操作を含むライセンスキー追加指示操作が行われたときに、入力されたライセンスキーを復号すると共に、入力されたパスワードを暗号化し、入力されたライセンスキーの復号結果中に含まれる固有識別子が、自コンピュータに対して割り当てられている前記固有識別子と一致し、かつ、当該復号結果中に含まれる暗号化パスワードが、入力されたパスワードの暗号化結果と一致した場合に限り、入力されたライセンスキーが前記ライセンサーによって正式に発行されたものであると判断するライセンスキー追加指示操作応答ステップ
とを実行可能な装置として動作させることを特徴とするアプリケーションプログラム。
【0068】
(付記2)
前記サーバコンピュータを、
前記ライセンスキー追加指示操作応答ステップにより、前記ライセンサーによって正式に発行されたものであると判断された各ライセンスキーを管理し、管理している各ライセンスキーの復号結果中に含まれる各キー単位ライセンス数の総和を前記ライセンス数として把握するライセンス数管理ステップを、さらに実行可能な装置として動作させる
ことを特徴とする付記1記載のアプリケーションプログラム。
【0069】
(付記3)
自プログラムを利用できるクライアントコンピュータの台数の上限,或いは.自プログラムを利用できるクライアントコンピュータから利用できる者の人数の上限を規定する情報であるライセンス数を変更可能なアプリケーションプログラムのライセンス数を制御するためのライセンス数制御方法であって、
何台かのクライアントコンピュータに接続された,前記アプリケーションプログラムがインストールされたサーバコンピュータに、
パスワードを入力する操作を含む注文キー生成指示操作が行われたときに、入力されたパスワードを暗号化することにより暗号化パスワードを生成した後、生成した暗号化パスワードと、前記アプリケーションプログラムに割り当てられている固有識別子とを含めた所定形式のデータを暗号化することにより、新たなライセンスキーを得るためにライセンサーに通知することが必要な注文キーを生成する注文キー生成ステップと、
ライセンスキーとパスワードとを入力する操作を含むライセンスキー追加指示操作が行われたときに、入力されたライセンスキーを復号すると共に、入力されたパスワードを暗号化し、入力されたライセンスキーの復号結果中に含まれる固有識別子が、前記アプリケーションプログラムに割り当てられている前記固有識別子と一致し、かつ、当該復号結果中に含まれる暗号化パスワードが、入力されたパスワードの暗号化結果と一致した場合に限り、入力されたライセンスキーが前記ライセンサーから正式に発行されたものであると判断するライセンスキー追加指示操作応答ステップ
とを、実行させることを特徴とするライセンス数制御方法。
【0070】
(付記4)
自コンピュータを利用できるクライアントコンピュータの台数の上限,或いは.自コンピュータをクライアントコンピュータから利用できる者の人数の上限を規定する情報であるライセンス数を変更可能なサーバコンピュータであって、
パスワードを入力する操作を含む注文キー生成指示操作が行われたときに、入力されたパスワードを暗号化することにより暗号化パスワードを生成した後、生成した暗号化パスワード,及び,自コンピュータに割り当てられている固有識別子を含めた所定形式のデータを暗号化することにより、新たなライセンスキーを得るためにライセンサーに通知することが必要な注文キーを生成する注文キー生成手段と、
ライセンスキーとパスワードとを入力する操作を含むライセンスキー追加指示操作が行われたときに、入力されたライセンスキーを復号すると共に、入力されたパスワードを暗号化し、入力されたライセンスキーの復号結果中に含まれる固有識別子が、自コンピュータに割り当てられている前記固有識別子と一致し、かつ、当該復号結果中に含まれる暗号化パスワードが、入力されたパスワードの暗号化結果と一致した場合に限り、入力されたライセンスキーが前記ライセンサーから正式に発行されたものであると判断するライセンスキー追加指示操作応答手段
とを、備えたことを特徴とするサーバコンピュータ。
【0071】
(付記5)
コンピュータに、
或る顧客から通知された注文キーを入力する操作を含むライセンスキー生成指示操作が行われたときに、入力された注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードを特定する特定ステップと、
この特定ステップにより特定されたものと同じ固有識別子及び暗号化パスワードを含み、前記顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを生成するデータ生成ステップと、
このデータ生成ステップにより生成されたデータを暗号化することによって、前記顧客に通知するためのライセンスキーを発行するライセンスキー発行ステップ
とを実行させることを特徴とするライセンスキー発行プログラム。
【0072】
(付記6)
注文キーを通知してきた顧客に通知するライセンスキーを発行するためのライセンスキー発行方法であって、
コンピュータに、
前記注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードを特定する特定ステップと、
この特定ステップにより特定されたものと同じ固有識別子及び暗号化パスワードを含み、前記顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを生成するデータ生成ステップと、
このデータ生成ステップにより生成されたデータを暗号化することによって、前記顧客に通知するためのライセンスキーを発行するライセンスキー発行ステップ
とを、実行させることを特徴とするライセンスキー発行方法。
【0073】
(付記7)
或る顧客から通知された注文キーを入力する操作を含むライセンスキー生成指示操作が行われたときに、入力された注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードを特定する特定手段と、
この特定手段により特定されたものと同じ固有識別子及び暗号化パスワードを含み、前記顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを生成するデータ生成手段と、
このデータ生成手段により生成されたデータを暗号化することによって、前記顧客に通知するためのライセンスキーを発行するライセンスキー発行手段
とを、備えたことを特徴とするライセンスキー発行装置。
【0074】
(付記8)
ライセンスキー発行装置と1台以上のサーバコンピュータとを含むライセンスキー発行システムであって、
前記1台以上のサーバコンピュータのそれぞれが、
自コンピュータを利用できるクライアントコンピュータの台数の上限,或いは.自コンピュータをクライアントコンピュータから利用できる者の人数の上限を規定する情報であるライセンス数を変更可能なコンピュータであると共に、
復号することにより、固有識別子とキー単位ライセンス数と暗号化パスワードとを得ることが可能な幾つかのライセンスキーを記憶しておくためのライセンスキー記憶手段,
前記ライセンスキー記憶手段に記憶されている各ライセンスキーの復号結果中に含まれる各キー単位ライセンス数の総和を前記ライセンス数として把握するライセンス数把握手段,
パスワードを入力する操作を含む注文キー生成指示操作が行われたときに、入力されたパスワードを暗号化することにより暗号化パスワードを生成した後、生成した暗号化パスワード,及び,前記ライセンスキー記憶手段に記憶されているライセンスキーの復号結果中に含まれる固有識別子を含めた所定形式のデータを暗号化することにより、新たなライセンスキーを得るためにライセンサーに通知することが必要な注文キーを生成する注文キー生成手段,及び,
ライセンスキーとパスワードとを入力する操作を含むライセンスキー追加指示操作が行われたときに、入力されたライセンスキーを復号すると共に、入力されたパスワードを暗号化し、入力されたライセンスキーの復号結果中に含まれる固有識別子が、前記ライセンスキー記憶手段に記憶されているライセンスキーの復号結果中に含まれる固有識別子と一致し、かつ、当該復号結果中に含まれる暗号化パスワードが、入力されたパスワードの暗号化結果と一致した場合に限り、入力されたライセンスキーを前記ライセンスキー記憶手段に記憶させるライセンスキー追加指示操作応答手段を、備えたコンピュータであり、
前記ライセンスキー発行装置が、
或る顧客から通知された注文キーを入力する操作を含むライセンスキー生成指示操作が行われたときに、入力された注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードを特定する特定手段と、
この特定手段により特定されたものと同じ固有識別子及び暗号化パスワードを含み、前記顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを生成するデータ生成手段と、
このデータ生成手段により生成されたデータを暗号化することによって、前記顧客に通知するためのライセンスキーを発行するライセンスキー発行手段
とを、備えた装置である
ことを特徴とするライセンスキー発行システム。
【図面の簡単な説明】
【0075】
【図1】本発明の一実施形態に係るアプリケーションプログラムの使用形態を説明するための図。
【図2】本発明の一実施形態に係るライセンス発行装置が実行可能な初期設定用ライセンスキー発行処理の流れ図。
【図3】ライセンスキー元データの構成の説明図。
【図4】ライセンス発行装置が実行可能な追加用ライセンスキー発行処理の流れ図。
【図5】アプリケーションプログラムが表示するライセンス管理画面の説明図。
【図6】アプリケーションプログラムが実行するライセンスキー登録処理の流れ図。
【図7】アプリケーションプログラムが表示するパスワード入力画面の説明図。
【図8】アプリケーションプログラムが表示する登録完了通知画面の説明図。
【図9】アプリケーションプログラムが実行する注文キー登録処理の流れ図。
【図10】アプリケーションプログラムが表示するパスワード指定画面の説明図。
【図11】アプリケーションプログラムが表示する注文キー表示画面の説明図。
【図12】アプリケーションプログラムが実行するライセンス数算出処理の流れ図。
【符号の説明】
【0076】
10 アプリケーションプログラム
20 サーバ
30 クライアントPC

【特許請求の範囲】
【請求項1】
自プログラムを利用できるクライアントコンピュータの台数の上限,或いは,自プログラムを利用できるクライアントコンピュータから利用できる者の人数の上限を規定する情報であるライセンス数を変更可能なアプリケーションプログラムであって、
何台かのクライアントコンピュータに接続されたサーバコンピュータを、
パスワードを入力する操作を含む注文キー生成指示操作が行われたときに、入力されたパスワードを暗号化することにより暗号化パスワードを生成した後、生成した暗号化パスワード,及び,自コンピュータに対して割り当てられている固有識別子を含めた所定形式のデータを暗号化することにより、新たなライセンスキーを得るためにライセンサーに通知することが必要な注文キーを生成する注文キー生成ステップと、
ライセンスキーとパスワードとを入力する操作を含むライセンスキー追加指示操作が行われたときに、入力されたライセンスキーを復号すると共に、入力されたパスワードを暗号化し、入力されたライセンスキーの復号結果中に含まれる固有識別子が、自コンピュータに対して割り当てられている前記固有識別子と一致し、かつ、当該復号結果中に含まれる暗号化パスワードが、入力されたパスワードの暗号化結果と一致した場合に限り、入力されたライセンスキーが前記ライセンサーによって正式に発行されたものであると判断するライセンスキー追加指示操作応答ステップ
とを実行可能な装置として動作させることを特徴とするアプリケーションプログラム。
【請求項2】
自コンピュータを利用できるクライアントコンピュータの台数の上限,或いは.自コンピュータをクライアントコンピュータから利用できる者の人数の上限を規定する情報であるライセンス数を変更可能なサーバコンピュータであって、
パスワードを入力する操作を含む注文キー生成指示操作が行われたときに、入力されたパスワードを暗号化することにより暗号化パスワードを生成した後、生成した暗号化パスワード,及び,自コンピュータに割り当てられている固有識別子を含めた所定形式のデータを暗号化することにより、新たなライセンスキーを得るためにライセンサーに通知することが必要な注文キーを生成する注文キー生成手段と、
ライセンスキーとパスワードとを入力する操作を含むライセンスキー追加指示操作が行われたときに、入力されたライセンスキーを復号すると共に、入力されたパスワードを暗号化し、入力されたライセンスキーの復号結果中に含まれる固有識別子が、自コンピュータに割り当てられている前記固有識別子と一致し、かつ、当該復号結果中に含まれる暗号化パスワードが、入力されたパスワードの暗号化結果と一致した場合に限り、入力されたライセンスキーが前記ライセンサーから正式に発行されたものであると判断するライセンスキー追加指示操作応答手段
とを、備えたことを特徴とするサーバコンピュータ。
【請求項3】
コンピュータに、
或る顧客から通知された注文キーを入力する操作を含むライセンスキー生成指示操作が行われたときに、入力された注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードを特定する特定ステップと、
この特定ステップにより特定されたものと同じ固有識別子及び暗号化パスワードを含み、前記顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを生成するデータ生成ステップと、
このデータ生成ステップにより生成されたデータを暗号化することによって、前記顧客に通知するためのライセンスキーを発行するライセンスキー発行ステップ
とを実行させることを特徴とするライセンスキー発行プログラム。
【請求項4】
或る顧客から通知された注文キーを入力する操作を含むライセンスキー生成指示操作が行われたときに、入力された注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードを特定する特定手段と、
この特定手段により特定されたものと同じ固有識別子及び暗号化パスワードを含み、前記顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを生成するデータ生成手段と、
このデータ生成手段により生成されたデータを暗号化することによって、前記顧客に通知するためのライセンスキーを発行するライセンスキー発行手段
とを、備えたことを特徴とするライセンスキー発行装置。
【請求項5】
ライセンスキー発行装置と1台以上のサーバコンピュータとを含むライセンスキー発行システムであって、
前記1台以上のサーバコンピュータのそれぞれが、
自コンピュータを利用できるクライアントコンピュータの台数の上限,或いは.自コンピュータをクライアントコンピュータから利用できる者の人数の上限を規定する情報であるライセンス数を変更可能なコンピュータであると共に、
復号することにより、固有識別子とキー単位ライセンス数と暗号化パスワードとを得ることが可能な幾つかのライセンスキーを記憶しておくためのライセンスキー記憶手段,
前記ライセンスキー記憶手段に記憶されている各ライセンスキーの復号結果中に含まれる各キー単位ライセンス数の総和を前記ライセンス数として把握するライセンス数把握手段,
パスワードを入力する操作を含む注文キー生成指示操作が行われたときに、入力されたパスワードを暗号化することにより暗号化パスワードを生成した後、生成した暗号化パスワード,及び,前記ライセンスキー記憶手段に記憶されているライセンスキーの復号結果中に含まれる固有識別子を含めた所定形式のデータを暗号化することにより、新たなライセンスキーを得るためにライセンサーに通知することが必要な注文キーを生成する注文キー生成手段,及び,
ライセンスキーとパスワードとを入力する操作を含むライセンスキー追加指示操作が行われたときに、入力されたライセンスキーを復号すると共に、入力されたパスワードを暗号化し、入力されたライセンスキーの復号結果中に含まれる固有識別子が、前記ライセンスキー記憶手段に記憶されているライセンスキーの復号結果中に含まれる固有識別子と一致し、かつ、当該復号結果中に含まれる暗号化パスワードが、入力されたパスワードの暗号化結果と一致した場合に限り、入力されたライセンスキーを前記ライセンスキー記憶手段に記憶させるライセンスキー追加指示操作応答手段を、備えたコンピュータであり、
前記ライセンスキー発行装置が、
或る顧客から通知された注文キーを入力する操作を含むライセンスキー生成指示操作が行われたときに、入力された注文キーを復号し、その復号結果中に含まれる固有識別子及び暗号化パスワードを特定する特定手段と、
この特定手段により特定されたものと同じ固有識別子及び暗号化パスワードを含み、前記顧客が追加を要求しているライセンス数をキー単位ライセンス数として含むデータを生成するデータ生成手段と、
このデータ生成手段により生成されたデータを暗号化することによって、前記顧客に通知するためのライセンスキーを発行するライセンスキー発行手段
とを、備えた装置である
ことを特徴とするライセンスキー発行システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2006−127197(P2006−127197A)
【公開日】平成18年5月18日(2006.5.18)
【国際特許分類】
【出願番号】特願2004−315328(P2004−315328)
【出願日】平成16年10月29日(2004.10.29)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】