説明

ライセンス認証装置及びライセンス認証方法

【課題】 ユーザの使い勝手と不正利用の防止との両立を、簡便な方法によって実現するライセンス認証装置及びライセンス認証方法を提供すること。
【解決手段】 外部装置の固有情報からユーザコードを生成する(S105)。そして、入力されたライセンスキーが、ユーザコードに基づいて生成されたものであるかを確認する(S108)。確認の結果、ライセンスキーがユーザコードに基づいて生成されたものであれば、正当なライセンスキーとして認証を行う(S310)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウェアのライセンス認証を行うライセンス認証装置及びライセンス認証方法に関する。
【背景技術】
【0002】
従来、特に有償ソフトウェアにおいては、ライセンス購入者にのみソフトウェアの使用を許諾するため、ライセンス認証を行うものが提案されている(特許文献1参照)。ライセンス認証の方法としては、ソフトウェア的な方法とハードウェア的な方法が知られている。前者には、シリアル番号やライセンス認証キーをライセンス認証画面に入力するものや、ライセンス発行サーバ等の外部システムにライセンスキー発行を依頼するものがある。また、後者には、ソフトウェア固有の情報が記録されているUSBメモリ等の特定のハードウェア(ハードウェアキー又はドングルとも呼ばれる)を検出することでライセンスの認証を行うものがある。
【0003】
ライセンス契約書等に記載されたライセンスキーを入力する方法では、所定の規則に従って作成された英数字の組み合わせをライセンスキーとしてユーザに提供する。そしてライセンス認証の対象ソフトウェアには、ユーザがライセンス認証画面で入力したライセンスキーが、所定の規則にしたがっているか否かを判定する機能を含めておき、判定結果に基づいて認証を行う。
【0004】
外部システムを利用する場合、まず、認証対象のソフトウェアは、ネットワークカードやCPU情報など、ソフトウェアがインストールされたシステムに固有の情報を収集する。次に、収集した情報を、ネットワーク接続など何らかの手段により、外部のライセンスキー発行システムに送信し、ライセンスキー発行を依頼する。ライセンス発行システムは、受信した固有情報に基づき、予め定めた規則によりライセンスキーを発行する。発行したライセンスキーは例えば電子メールやウェブブラウザ画面を通じてユーザに提示され、ユーザは発行されたライセンスキーを認証画面に入力する。
【0005】
認証対象ソフトウェアは、入力されたライセンスキーと、ライセンス発行システムに送信した自システム固有の情報との整合性について検証し、入力されたライセンスキーが自システムの固有の情報に対応している場合は正規ライセンスとして認証を行う。
【0006】
特定のハードウェアを使用する場合、ユーザはソフトウェア起動前に、予めハードウェアキーをコンピュータに接続しておく。そして、ソフトウェアは起動時にハードウェアキーの検出及び検証を行い、正しいハードウェアキーが検出できた場合は、正規のライセンスに基づく利用であると判断して正常起動する。一方、ハードウェアキーが検出できなかった場合や、記憶内容が正しくない場合には、起動を中止する。
【特許文献1】特開2003−174446号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、前述したライセンス認証方法には以下のような問題がある。
ライセンス契約書等に記載されたライセンスキーを入力させ、ソフトウェアに組み込まれているライセンスキー検証機能を利用して認証を行う方法では、1つのライセンスキーを、複数の異なる環境にインストールされたソフトウェアの認証に利用できてしまう。近年は、同一ネットワーク内に存在するコンピュータ間のライセンスキーの使い回しを防止する機能を有するソフトウェアも存在するが、それ以外の環境におけるライセンスキーの使い回しは制限できず、ソフトウェアの不正利用を防止することができない。
【0008】
ソフトウェアがインストールされたハードウェア環境の固有情報を元に発行したライセンスキーを用いる方法により、ライセンスキーの使い回しは防止することができる。しかし、コンピュータのパーツを交換又は買い換え、或いはインストール先のコンピュータの変更が生じた場合、ライセンスキーとハードウェア環境との対応が整合しなくなり、正規のライセンスを所有しているにもかかわらず、ソフトウェアを使用できなくなる。この場合、再度ライセンスキーの発行を依頼する必要があり、煩わしい上、新たなライセンスキー発行までの間、ソフトウェアが使用できない。
【0009】
ハードウェアキーを用いる方法では、ハードウェアキーを必ずコンピュータに接続しなければならず、手間がかかる。また、常時接続しておくと、コンピュータのインターフェースを1つ占有することになり、拡張性を損ねることになる。また、ハードウェアキーを紛失したり、ハードウェアキーが壊れたりした場合には、ソフトウェアを起動することができない。
【0010】
本発明はこのような従来技術の問題を解決するためになされたもので、ユーザの使い勝手と不正利用の防止との両立を、簡便な方法によって実現するライセンス認証装置及びライセンス認証方法を提供することを目的とする。
【課題を解決するための手段】
【0011】
上述の目的は、固有情報を有する外部装置を用いるソフトウェアのライセンス認証を行うライセンス認証装置であって、外部装置から固有情報を取得する固有情報取得手段と、固有情報から、ユーザ固有情報を生成する生成手段と、ユーザにより入力されたライセンスキーを取得する取得手段と、ライセンスキーが、ユーザ固有情報に所定の操作を行なって生成されたものかどうかを判定する判定手段と、判定手段により、ライセンスキーがユーザ固有情報に所定の操作を行なって生成されたものであると判定された場合に、ソフトウェアのライセンス認証が完了した旨を記憶装置に登録する登録手段とを有することを特徴とするライセンス認証装置によって達成される。
【0012】
また、上述の目的は、固有情報を有する外部装置を用いるソフトウェアのライセンス認証を行うライセンス認証方法であって、外部装置から固有情報を取得し、記憶装置に格納する固有情報取得ステップと、固有情報から、ユーザ固有情報を生成し、記憶装置に格納する生成ステップと、ユーザにより入力されたライセンスキーを取得する取得手段と、ライセンスキーが、記憶装置に格納されたユーザ固有情報に所定の操作を行なって生成されたものかどうかを判定する判定手段と、判定手段により、ライセンスキーがユーザ固有情報に所定の操作を行なって生成されたものであると判定された場合に、ソフトウェアのライセンス認証が完了した旨を記憶装置に登録する登録手段とを有することを特徴とするライセンス認証方法によっても達成される。
【発明の効果】
【0013】
このような構成により、本発明によれば、ユーザの使い勝手と不正利用の防止との両立を、簡便な方法によって実現することができる。
【発明を実施するための最良の形態】
【0014】
以下、図面を参照して本発明をその好適な実施形態に基づき詳細に説明する。
図9は、本実施形態におけるライセンス認証装置として機能するパーソナルコンピュータ(PC)700の構成例を示すブロック図である。
【0015】
本実施形態におけるPC700には、固有情報を有する外部装置であるデジタルビデオカメラ(DVC)100を制御するソフトウェア(以下、DVC制御ソフトウェア)がインストールされている。PC700は、このDVC制御ソフトウェアに従ってライセンス認証装置として機能する。DVC制御ソフトウェアは、後述するライセンス登録が完了している場合は、全ての機能をユーザに提供し、後述するライセンス登録が完了していない場合は、一部の機能のみをユーザに提供する。例えば、ライセンス登録が完了していない場合は、再生及び停止の何れかは指示できても、早送り、巻き戻し、一時停止は何れも指示できないようにする。また、DVC制御ソフトウェアは、後述するライセンス登録が完了しているか否かに応じて、ユーザに提供するGUI(グラフィカルユーザインターフェース)の構成を変更する。GUIには、DVC100を制御するためのコントロールパネルが含まれる。
【0016】
ディスプレイ701は、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)等から構成される。ディスプレイ701には、DVC制御ソフトウェアがユーザに提供するGUIや、各種のメッセージメニューなどが表示される。ディスプレイコントローラ702は、ディスプレイ701への画面表示制御を行う。入力デバイス703は、文字などを入力したり、GUIにおけるアイコンやボタンなどを指し示すためなどに用いられる。具体的には、キーボード、マウス、トラックボール、ジョイスティック、タッチパネルなどが含まれる。CPU(Central Processing Unit)704はPC700全体の制御を司る。
【0017】
ROM(Read Only Memory)705はCPU704が実行するプログラムやパラメータ等を記憶している。RAM(Random Access Memory)706は各種プログラムをCPU704が実行するときのワークエリア、エラー処理時の一時退避エリア等として用いられる。
【0018】
ハードディスクドライブ(HDD)707、リムーバブルメディアドライブ(RMD)708は、外部記憶装置として機能する。リムーバブルメディアドライブは、取り外し可能な記憶媒体の読み書き又は読み出しを行う装置であり、フレキシブルディスクドライブ、光ディスクドライブ、光磁気ディスクドライブ、メモリカードリーダはもとより、取り外し式HDDなどであってもよい。
【0019】
なお、DVC制御ソフトウェアは、PC700にインストールされると、少なくともHDD707に記憶される。OS、ブラウザ等のアプリケーションプログラム、データ、ライプラリ等は、その用途に応じてROM705、HDD707、RMD708の1つ以上に記憶される。
【0020】
拡張スロット709は、例えばPCI(Peripheral Component Interconnect)バス規格に準拠した拡張カード装着用スロットである。この拡張スロット709には、拡張ビデオキャプチャボードや、サウンドボード、GPIBボードなど、様々な拡張ボードを装着することが可能である。
外部インターフェース710は、IEEE1394−1995規格及びその拡張規格に準拠した通信インターフェースである。
【0021】
ネットワークインタフェース711は、IEEE802.3x(xはi, u, z, ab)等に準拠した有線通信機能、又はIEEE802.11a/b/g、Bluetooth(登録商標)等に準拠した無線通信機能を有する。バス712はアドレスバス、データバスおよび制御バスからなり、上述した各ユニット間を接続する。
【0022】
本実施形態におけるPC700は、OSや必要なドライバソフトウェア等を用いることによって、ネットワークインタフェース711を介してインターネット等のコンピュータネットワーク上のコンピュータと通信可能である。
【0023】
図1は、本実施形態におけるライセンス認証装置の動作を示すフローチャートである。この動作は、PC700でユーザがDVC制御ソフトウェアを起動することによって開始される。
【0024】
ユーザがDVC制御ソフトウェアを起動すると、CPU704は、HDD707等に記憶されたDVC制御ソフトウェアを読み出し、RAM706にロードし、実行する。そして、ステップS101において、既にライセンス登録が行われているか否かを確認する。ライセンス登録に関する情報は、例えばHDD707中の環境設定用ファイル等に暗号化されて記録されており、その情報を参照することによって確認可能である。
【0025】
ステップS101での確認結果により、RAM706の所定アドレスに、DVC制御ソフトウェアの内部変数である”License”の値をセットする。変数”License”はTRUEまたはFALSEの値を保持する論理型変数であり、ライセンス登録済みであった場合はステップS102でTRUEが、未登録であった場合はステップS103でFALSEがセットされる。DVC制御ソフトウェアの初回起動時にはライセンス登録がまだ行われていない状態であるため、ステップS103でFALSEがセットされる。
【0026】
ステップS104で、アプリケーションの初期GUI画面をディスプレイ701に提示し、入力デバイス703を介したユーザの指示(ユーザアクション)を待機する。図2は、本実施形態におけるDVC制御ソフトウェアのGUI画面の例である。GUI画面200には、ボタン201〜206が配置されている。
【0027】
ユーザが入力デバイス203、例えばマウスを操作し、マウスカーソルをライセンス確認ボタン201上に移動させ、マウスボタンをクリックすると、CPU704はライセンス確認ボタン201のクリックをユーザアクションとして検出する。そして、ステップS105に進む。なお、以下、マウスポインタがボタン上にある状態でマウスボタンがクリックされた状態を、「ボタンが押下された」と表現する。ステップS105では後述するライセンス処理を行った後、ステップS104に戻って次のユーザアクションを待機する。
【0028】
図2のボタン203、204、205、206はそれぞれDVC100の制御を指示するためのボタンであり、ボタン203〜206が押下されると、CPU704はDVC制御用ボタンの押下をユーザアクションとして検出し、ステップS106に進む。ステップS106では、後述するDVC制御処理を行った後、ステップS104に戻って次のユーザアクションを待機する。
【0029】
図2のボタン202は終了ボタンであり、このボタンが押下されると、CPU704は終了ボタンの押下をユーザアクションとして検出し、DVC制御ソフトウェアの終了処理を行う。
【0030】
図3は、図1のステップS105で実行されるライセンス処理の詳細を示すフローチャートである。
ステップS301で、CPU704は、ステップS102又はステップS103でセットした変数”License”の値を参照し、ライセンス登録済みであるか未登録であるかを検出する。変数”License”の値がTRUEの場合はライセンス登録済みであり、ステップS312で図4に示すようなライセンス登録情報画面をディスプレイ701に表示する。そして、OKボタンの押下を検出すると、処理を終了し、ステップS104へ戻る。
【0031】
ステップS301で、変数”License”の値がFALSEの場合は、ライセンス未登録であるため、ステップS302へ進んでPC700にDVC100が接続されているか否かを調べる。DVC100が外部インターフェース710に接続されていない場合は、ステップS303へ進み、図5に示すようなエラーメッセージをディスプレイ701に表示する。
【0032】
ステップS302でDVC100の接続が検出された場合は、ステップS304でDVC100が有する固有ID(Manufacturers Unique Identifier:EUI64)を取得する。EUI64は8バイトのデータで、IEEE1394インターフェースを搭載した機器(IEEE1394機器)が有する固有IDである。すなわち、EUI64はIEEE1394機器1台ごとに異なる値を有する。EUI64は、IEEE1394機器が有するコンフィグレーションROM(configuration ROM)という特定の領域にアクセスすることで取得できる。本実施形態では、DVC100が有するEUI64の値は8バイトの16進数で”0000850001AB3FC8”であるとする。
【0033】
ステップS305で、CPU704は、取得したEUI64の値から、DVC100を所有するユーザに固有のデータとして、ユーザコードを生成する。ユーザコードはEUI64の値に対して所定のアルゴリズムを用いて変換を行ったデータである。本実施形態では、EUI64を16進表記したものを文字列とみなし、各文字のアスキーコード値に2を加えた結果の文字列をユーザコードとして生成する。
【0034】
所定のアルゴリズムはEUI64および生成されたユーザコードからは容易に解読できないものが望ましいが、本実施形態では説明を簡単にするため前述のようなアルゴリズムで説明を行う。本実施形態ではDVC100のEUI64が”0000850001AB3FC8”であるので、前述のアルゴリズムに従って変換した文字列”2222:72223CD5HE:”がユーザコードとなる。
【0035】
ステップS306で、CPU704は図6に示すようなライセンス登録画面600をディスプレイ701に表示する。601はユーザコードの表示部であり、EUI64の値からステップS305で生成した文字列を表示する。ここで、ユーザコードは単に表示されるだけであり、ユーザが直接入力したり、変更することは許されない。602はライセンスキー入力部、603はユーザ名入力部、604はライセンス登録ボタン、605はライセンス登録キャンセルボタンである。ライセンス登録キャンセルボタン605が押下された場合には、ライセンス処理を終了する。606はライセンスキー取得ボタンである。
【0036】
ユーザは、ライセンス登録画面のライセンスキー入力部602にライセンスキーを、ユーザ名入力部603に任意のユーザ名を、それぞれ入力デバイス703を用いて入力し、ライセンス登録ボタン604を押下することでライセンス登録が可能である。ここで入力するライセンスキーは、ユーザコードから生成される文字列である。
【0037】
ユーザコードからのライセンスキーの生成は、外部のサーバや、電話による自動応答システム等により行う。例えば、外部のサーバでライセンスキーを発行する場合には、図9に示すように、ネットワークインターフェース711を通じてライセンス発行サーバ800へアクセスし、ライセンスキーの発行を受ける。
【0038】
図10は、PC700がネットワークインターフェース711を介して外部のライセンス発行サーバにアクセスし、ライセンスキーを取得する手順の例を示すシーケンスチャートである。
【0039】
図6のライセンス登録画面において、ライセンスキー取得ボタン606が押下されると、CPU704は、HDD707から例えばブラウザアプリケーションを起動する。その後、CPU704は、ライセンス発行サーバ800のネットワークアドレス(例えばURL)にアクセスする(ステップS901)。この際、PC700とライセンス発行サーバ800との間では、HTTPSを代表とするセキュアなコネクションを確立することが好ましい。
【0040】
ライセンス発行サーバ800は、PC700に対し、ライセンス発行に必要な情報を入力させるためのフォーム画面のデータを送信する(ステップS902)。フォーム画面に入力させる情報には、ユーザコードを始めとし、決済情報(クレジットカード情報など)、個人情報(住所、氏名、電話番号、電子メールアドレスなど)といった、通常オンライン決済に必要な情報を含むことができる。
【0041】
CPU704は、表示中のフォーム画面中に含まれる送信ボタンの押下など、入力データの送信指示があると、フォームに入力された情報をライセンス発行サーバ800へ送信する(ステップS903)。
【0042】
ライセンス発行サーバ800は、フォームデータに入力漏れ等の不備がないか確認し、不備がなければ受け付け完了通知画面を返送する(S904)。また、受信したデータを用い、別の決済用サーバ900に与信依頼を行う(S905)。決済サーバ900は例えばクレジットカード情報と与信データベースとから、カードの持ち主とカード番号とが対応しているか、支払いに能力に問題が無いか等の判断を行ない、結果をライセンス発行サーバ800に通知する(S906)。
【0043】
ライセンス発行サーバ800は、与信結果に問題がなければ、ユーザコードからライセンスキーを生成し、ステップS903で受信した電子メールアドレスへライセンスキーを送信する(S907)。また、与信結果に問題がある場合にも、その旨を記載した電子メールを送信する。
【0044】
本実施形態において、ライセンスキーは所定のアルゴリズムを用いてユーザコードを変換したデータであり、本実施形態ではユーザコードの各文字のアスキーコード値に5を加えた結果の文字列をライセンスキーとして生成する。所定のアルゴリズムはユーザコードおよび生成されたライセンスキーからは容易に解読できないものが望ましいが、本実施形態では説明を簡単にするためこのようなアルゴリズムで説明を行う。
【0045】
本実施形態では、ユーザコードが”2222:72223CD5HE:”であるため、ライセンス発行サーバ800が生成するライセンスキーは、”7777?<7778HI:MJ?”となる。
【0046】
なお、図10の例では、ステップS903でフォームデータを受信した後、PC700とライセンス発行サーバ800との間のコネクションを切断し、別途電子メールでライセンスキーを通知した。しかし、フォームデータ受信後、与信結果がでるまでコネクションを維持し、ステップS907でライセンス通知画面を送信するようにしても良い。もちろん、この場合でも、電子メールでの通知を並行して行うことができる。
【0047】
また、オンラインでライセンスキーを取得できない場合などは、ライセンス発行サーバ800の代わりに周知の自動電話応答システムを用いることができる。この場合、ユーザは電話のプッシュボタンを用いてユーザコードを入力し、自動電話応答システムは周知のダイヤルトーン識別技術に基づいてユーザコードを認識する。そして、生成したライセンスキーを合成音声により通知する。
【0048】
ユーザは、電子メールアプリケーションや電話によりライセンスキーを受信すると、ライセンスキーをライセンス登録画面のライセンスキー入力部602に、ユーザ名入力部603にユーザ名を入力してライセンス登録ボタン604を押下する。
【0049】
図3に戻り、CPU704は登録ボタン604の押下を検出すると、ステップS308で、入力されたライセンスキーとユーザコード表示部601に表示されているユーザコードとの整合性の検証を行う。すなわち、本実施形態のDVC制御ソフトウェアには、ライセンスキー発行サーバ800と同様のライセンスキー生成アルゴリズムを実行する機能モジュールが含まれている。
【0050】
CPU704は、入力されたユーザコードからライセンスキーの生成を行い、入力されたライセンスコードと、ユーザコードから生成したライセンスコードが一致しているか否か判定する。そして、不一致の場合はステップS309で、図7に示すようなエラーメッセージを表示する。また、一致していた場合は、ステップS310でライセンス情報を環境設定用ファイル等に記録するライセンス登録処理を行う。そして、ステップS311で変数”License”にTRUEをセットした後、ステップS312で図4に示すようなライセンス登録情報を画面に表示して処理を終了する。
【0051】
次に、図8のフローチャートを用いて、図1のステップS106におけるDVC制御処理の詳細について説明する。
図2のGUI画面200において、DVC制御ボタン203〜206のいずれかが押下されると、ステップS104からステップS106へ移行し、図8の処理が開始される。まず、ステップS801では、図3のステップS302と同様にして、DVC100がIEEE1394インターフェースに接続されているか否かを検出し、接続が検出されない場合は何も行わずにステップS104へ戻る。
【0052】
一方、DVC100の接続が検出された場合、CPU704は、ステップS802においてDVC制御の種類を判定する。そして、再生ボタン203または停止ボタン204が押下された場合は、ステップS803で対応するDVC制御信号をDVC100に送信する。巻き戻しボタン205または早送りボタン206が押下された場合は、ステップS807で変数”License”の値を判定する。
【0053】
ライセンス登録済みで変数”License”の値がTRUEである場合は、ステップS803で、押下されたボタンに対応するDVC制御信号をDVC100に送信する。ライセンス未登録で変数”License”の値がFALSEである場合は、機能制限を行うために、何もせずに終了する。なお、この際、ライセンス未登録が原因であることをユーザに通知するため、「ライセンス未登録のため、その機能は使用できません。ライセンス登録するには「ライセンス確認」ボタンをクリックして下さい」等のメッセージを表示するようにしても良い。
【0054】
以上説明したように、本実施形態によれば、DVC制御ソフトウェアのライセンス認証を、外部装置の固有情報に基づいて生成したユーザコードと、ユーザコードに基づいて生成したライセンスキーとにより行う。そのため、ライセンスキーが単独で流出した場合でも、そのライセンスキーの元となったユーザコードが無ければ、DVC制御ソフトウェアを利用することができない。また、ユーザコードとライセンスキーとがセットで流出したとしても、ライセンスキーに対応したユーザコードの生成には、特定の固有情報を有する外部装置が必要であるため、事実上ライセンスキーの不正利用は不可能である。
【0055】
一方で、ユーザは、ライセンスキーを取得したPC以外でDVC制御ソフトウェアを利用したい場合でも、同じ外部装置を接続することにより、同じライセンスキーを利用してライセンス登録が可能である。
【0056】
さらに、一旦ライセンス登録がなされたPCでは、その後他の外部装置(例えば、ライセンス登録時とは異なる機種のDVC等)に対してDVCソフトウェアを用いる場合であっても、新たなライセンス登録の必要が無い。
このように、本実施形態によれば、ユーザの使い勝手が良い上、DVCソフトウェアの不正利用を確実に行うことが可能となる。
【0057】
<他の実施形態>
なお、上述の実施形態においては、固有情報を有する外部装置として、DVCを例にして説明したが、本発明はDVC以外の、固有情報を有する外部装置を利用するソフトウェアのライセンス認証にも同様にして適用することが可能である。
【0058】
また、上述の実施形態では、ユーザコードからのライセンスキー生成を、ライセンスキー生成サーバ等の外部装置を利用して行う例を説明した。しかし、ライセンスキー生成をPC700で行うことももちろん可能であり、そのような構成であっても本発明の効果は達成される。
【0059】
本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるコンピュータプログラム自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。
【0060】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0061】
この場合、本発明の機能処理をコンピュータで実現するためのコンピュータプログラムは、記録媒体又は有線/無線通信によりコンピュータに供給される。プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記録媒体、MO、CD、DVD等の光/光磁気記録媒体、不揮発性の半導体メモリなどがある。
【0062】
有線/無線通信を用いたプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル(プログラムデータファイル)をサーバに記憶しておく。プログラムデータファイルとしては、実行形式のものであっても、ソースコードであっても良い。
【0063】
そして、このサーバにアクセスしたクライアントコンピュータに、プログラムデータファイルをダウンロードすることによって供給する。この場合、プログラムデータファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。
【0064】
つまり、本発明の機能処理をコンピュータで実現するためのプログラムデータファイルをクライアントコンピュータに提供するサーバ装置も本発明に含む。
【0065】
また、本発明のコンピュータプログラムを暗号化して格納した記録媒体をユーザに配布し、所定の条件を満たしたユーザに、暗号化を解く鍵情報を供給し、ユーザの有するコンピュータへのインストールを可能とすることも可能である。鍵情報は例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。
【0066】
また、コンピュータにより実施形態の機能を実現するためのコンピュータプログラムが、実施形態の機能を、すでにコンピュータ上で稼働するOSの機能を利用して実現しても良い。
【0067】
さらに、本発明を構成するコンピュータプログラムの少なくとも一部が、コンピュータに装着される拡張ボード等のファームウェアとして提供され、拡張ボード等が備えるCPUを利用して上述の実施形態の機能を実現しても良い。
【図面の簡単な説明】
【0068】
【図1】本実施形態におけるライセンス認証装置として機能するPCの動作を説明するフローチャートである。
【図2】DVC制御ソフトウェアのGUI画面例を示す図である。
【図3】図1のステップS105で実行されるライセンス処理の詳細を示すフローチャートである。
【図4】ライセンス登録情報表示画面例を示す図である。
【図5】DVC未検出時のエラーメッセージ表示画面例を示す図である。
【図6】ライセンス未登録時の確認画面例を示す図である。
【図7】不正なライセンスキー入力時のエラーメッセージ表示画面例を示す図である。
【図8】図1のステップS106におけるDVC制御処理の詳細を示すフローチャートである。
【図9】本実施形態におけるライセンス認証装置として機能するPCの構成例を示すブロック図である。
【図10】本実施形態におけるライセンス認証装置が、外部のライセンス発行サーバにアクセスし、ライセンスキーを取得する手順の例を示すシーケンスチャートである。

【特許請求の範囲】
【請求項1】
固有情報を有する外部装置を用いるソフトウェアのライセンス認証を行うライセンス認証装置であって、
前記外部装置から前記固有情報を取得する固有情報取得手段と、
前記固有情報から、ユーザ固有情報を生成する生成手段と、
ユーザにより入力されたライセンスキーを取得する取得手段と、
前記ライセンスキーが、前記ユーザ固有情報に所定の操作を行なって生成されたものかどうかを判定する判定手段と、
前記判定手段により、前記ライセンスキーが前記ユーザ固有情報に所定の操作を行なって生成されたものであると判定された場合に、前記ソフトウェアのライセンス認証が完了した旨を記憶装置に登録する登録手段とを有することを特徴とするライセンス認証装置。
【請求項2】
前記生成手段が、前記ライセンスキーの入力時に前記ライセンス認証装置に接続されている外部装置の前記固有情報に基づいて前記ユーザ固有情報を生成することを特徴とする請求項1記載のライセンス認証装置。
【請求項3】
さらに、前記ソフトウェアの起動時に前記記憶装置を参照する参照手段と、
前記ライセンス認証が完了している旨の登録が無い場合には、前記ソフトウェアの機能を制限する制限手段を更に有することを特徴とする請求項1又は請求項2記載のライセンス認証装置。
【請求項4】
さらに、前記ソフトウェアの起動時に前記記憶装置を参照する参照手段を有し、前記ライセンス認証が完了している旨の登録がある場合には、前記固有情報取得手段が前記固有情報を取得した外部装置は異なる外部装置が接続された場合でも、ライセンス認証の要求を行なわないことを特徴とする請求項1又は請求項2記載のライセンス認証装置。
【請求項5】
前記外部装置は、IEEE1394規格に準拠した制御が可能な機器であることを特徴とする、請求項1乃至請求項4のいずれか1項に記載のライセンス認証装置。
【請求項6】
固有情報を有する外部装置を用いるソフトウェアのライセンス認証を行うライセンス認証方法であって、
前記外部装置から前記固有情報を取得し、記憶装置に格納する固有情報取得ステップと、
前記固有情報から、ユーザ固有情報を生成し、前記記憶装置に格納する生成ステップと、
ユーザにより入力されたライセンスキーを取得する取得手段と、
前記ライセンスキーが、前記記憶装置に格納された前記ユーザ固有情報に所定の操作を行なって生成されたものかどうかを判定する判定手段と、
前記判定手段により、前記ライセンスキーが前記ユーザ固有情報に所定の操作を行なって生成されたものであると判定された場合に、前記ソフトウェアのライセンス認証が完了した旨を前記記憶装置に登録する登録手段とを有することを特徴とするライセンス認証方法。
【請求項7】
請求項6に記載のライセンス認証方法をコンピュータ装置に実行させるプログラム。

【図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


【公開番号】特開2007−79874(P2007−79874A)
【公開日】平成19年3月29日(2007.3.29)
【国際特許分類】
【出願番号】特願2005−266096(P2005−266096)
【出願日】平成17年9月13日(2005.9.13)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】