JP2008021021A - ソフトウエアのライセンス認証方法 - Google Patents

ソフトウエアのライセンス認証方法 Download PDF

Info

Publication number
JP2008021021A
JP2008021021A JP2006190673A JP2006190673A JP2008021021A JP 2008021021 A JP2008021021 A JP 2008021021A JP 2006190673 A JP2006190673 A JP 2006190673A JP 2006190673 A JP2006190673 A JP 2006190673A JP 2008021021 A JP2008021021 A JP 2008021021A
Authority
JP
Japan
Prior art keywords
computer
session
license
procedure
software
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
Application number
JP2006190673A
Other languages
English (en)
Inventor
Toshiharu Kuchitsu
敏治 朽津
Yoshio Tate
由雄 舘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2006190673A priority Critical patent/JP2008021021A/ja
Publication of JP2008021021A publication Critical patent/JP2008021021A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】 プライバシーの侵害につながりかねないコンピュータ固有情報をライセンサに連絡することなく、不正利用を確実に防止可能なソフトウエアのライセンス認証方法を提供する。
【解決手段】 ライセンス対象コンピュータ10が、インストールされたソフトウエアの機能を制限する手順と、ライセンス対象コンピュータ10のハードウエア構成要素からコンピュータを一意に識別可能なコンピュータ固有情報を抽出する手順17と、インストールのセッションごとにセッションIDをランダムに生成する手順11と、セッションIDをキーにコンピュータ固有情報を暗号化し(15)、コンピュータ内の記憶域18に保存する手順と、セッションIDとシリアルナンバーとをライセンサに送信しライセンスキーの発行を要求する手順12とを含むソフトウエアのライセンス認証方法。
【選択図】 図1

Description

本発明は、パーソナルコンピュータ(PC)などのコンピュータへのソフトウエアのライセンス認証方法に係り、特に、ライセンスを認証する際にプライバシー保護と不正コピー防止とを両立させる手段に関する。
従来、ライセンサから提供されたライセンスキーをインストールプログラムに入力し、キーの正当性をインストールプログラムがチェックする認証方法が一般的であった。
しかし、ライセンスキーは、一旦発行されると、ライセンサ側で管理できず、無制限に流用可能となってしまう。その結果、契約台数以上のコンピュータにソフトウエアを容易にインストールされてしまうという問題があった。
ライセンスキーをハードウエアデバイスとして提供し、ソフトウエア利用のたびにハードウエアデバイス内のライセンス情報をチェックして認証する方法もある。
しかし、コスト高である上に、ハードウエアデバイスを接続するためのインタフェースがコンピュータ側に必要になるという制約があり、広く普及するには至っていない。
そこで、コンピュータ固有情報によりライセンスを認証する方法が提案された。インストール作業に先立ちインストール対象のコンピュータ固有情報(例えば、コンピュータのハードウエア情報やIPアドレスなどコンピュータごとに固有の値を持つ情報)およびソフトウエアに付帯するシリアルナンバーをライセンサに送信する。ライセンサは、シリアルナンバーが正当なものであるか照合し、問題が無ければ、コンピュータ固有情報をキーにライセンスキーを暗号化したアクティベーションコードを返信する。アクティベーションコードをインストールプログラムに入力すると、正規のコンピュータであれば、自身のコンピュータ固有情報でライセンスキーを復号でき、ソフトウエアのインストール作業が完了する。
この方法によれば、たとえコンピュータソフトウエアを構成するファイルを丸ごと他のコンピュータにコピーされた場合でも、ソフトウエア起動ごとにランセンスキーの復号を試行しライセンスを認証するので、不正利用を防止できる。また、シリアルナンバーとコンピュータ固有情報のペアがライセンサ側で管理され、シリアルナンバーを流用したアクティベーションコードの再発行を防止できるとされている。
アクティベーションコードの発行方法には、ライセンス認証サーバを用いる方法(例えば、特許文献1参照)や、ICカードにアクティベーションコードの発行機能とコンピュータ固有情報の保持機能とを持たせる方法(例えば、特許文献2参照)が提案されている。
ライセンスサーバ自体の不正設置を防止する方法として、ルートサーバでサーバ証明書を発行し、アクティベーションコードの発行に際しルートサーバでの認証を必要とする方法が提案されている(例えば、特許文献3参照)。
OSのオリジナルナンバー,ハードディスクの製造ナンバー,ネットワークカードのMACアドレスなどのユーザのコンピュータ固有のID情報を取得してユーザマシンIDおよび通知用IDを生成し、ライセンサに通知し、ライセンサが認証パスワードを発行する方法が提案されている(例えば、特許文献4参照)。
特開2000−207199号公報(第4〜5頁 図1〜図4) 特開2005−122283号公報(第8〜10頁 図3,図4) 特開2004−206435号公報(第8〜11頁 図1〜図6) 特開2004−171500号公報(第3〜4頁 図1〜図4)
特許文献1の方法では、コンピュータ固有情報をライセンサに連絡する必要があり、ユーザにとってはプライバシー保護の観点から抵抗感がある。また、ライセンスを認証する全コンピュータについてアクティベーションコードの発行手続きをとらなければならず、手間がかかる。この手間を削減するために、顧客サイト側にアクティベーションコードを発行する機能を備えたローカルなライセンス認証サーバを設置する方法がある。
しかし、この方法では、サーバ導入コストおよび管理コストが発生してしまう。さらに、サーバ自体の不正設置を防止できない。
特許文献2の方法では、特殊なハードウエアデバイスとその接続インタフェースがコンピュータに必要であり、コストアップとなる。
特許文献3の方法では、デジタル証明書を含めてコピーされた場合、例えば、HDDイメージ全体を他のサーバにコピーされた場合は、不正を検知できない。
特許文献4の方法では、通知用IDを送る際に、ユーザ名,居住地,電話番号,生年月日,年齢,職業などの他の情報も併せて送らせ、ライセンサが、ユーザへの認証パスワードの発行のみならず、ユーザ情報のデータベースを作成することも可能であるとしている。この方法では、ユーザの情報が第三者の手元に蓄積されることになり、近時のプライバシー保護への傾向に逆行するばかりか、ライセンサにとっても、その情報の機密保持や機密漏洩時の賠償などに多大の労力と費用とを必要とする。
さらに、アクティベーションコードの発行要求は、ライセンス契約したコンピュータ台数分必要であり、全コンピュータ台数についてのハードウエア固有情報をライセンサに通知しなければならなかった。
本発明の第1の課題は、プライバシーの侵害につながりかねないコンピュータ固有情報をライセンサに連絡することなく、不正利用を確実に防止可能なソフトウエアのライセンス認証方法を提供することである。
本発明の第2の課題は、複数台のコンピュータに関するコンピュータ固有情報の全てをライセンサに連絡しなくても、複数台のコンピュータにおける不正利用を確実に防止可能なソフトウエアのライセンス認証方法を提供することである。
本発明は、上記第1の課題を解決するために、ライセンス対象コンピュータが、インストールされたソフトウエアの機能を制限する手順と、前記コンピュータのハードウエア構成要素から前記コンピュータを一意に識別可能なコンピュータ固有情報を抽出する手順と、インストールのセッションごとにセッションIDをランダムに生成する手順と、セッションIDをキーに前記コンピュータ固有情報を暗号化し前記コンピュータ内の記憶域に保存する手順と、セッションIDとシリアルナンバーとをライセンサに送信しライセンスキーの発行を要求する手順とを含むソフトウエアのライセンス認証方法を提案する。
本発明は、上記第2の課題を解決するために、互いに接続された複数のライセンス対象コンピュータが、それぞれにインストールされたソフトウエアの機能を制限する手順と、前記コンピュータのハードウエア構成要素から前記コンピュータを一意に識別可能なコンピュータ固有情報を抽出する手順と、自身のセッションID生成前にそれ以前に接続された他のコンピュータのセッションIDの入力を受け付ける手順と、インストールのセッションごとに自身のセッションIDをランダムに生成する手順と、自身のセッションIDをキーに前記コンピュータ固有情報を暗号化し前記コンピュータ内の記憶域に保存する手順と、自身のセッションIDとシリアルナンバーとをライセンサに送信しライセンスキーの発行を要求する手順とを含み、前記ライセンサが、シリアルナンバーとセッションIDとを一対として登録管理するライセンス管理データベースを有し、未登録シリアルナンバーに対するライセンスキーの発行要求に応じてソフトウエア機能の制限を解除するためのライセンスキーを前記複数のライセンス対象コンピュータのうち最後のコンピュータのセッションIDで暗号化しアクティベーションコードを生成する手順と、アクティベーションコードを前記最後のコンピュータに送信する手順とを含み、前記最後のコンピュータが、暗号化され当該コンピュータ内の記憶域に保存されたセッションIDをコンピュータ固有情報で復号する手順と、セッションIDの復号に失敗した場合は不正コピーされたと判定する手順と、セッションIDの復号に成功した場合はセッションIDでアクティベーションコードからライセンスキーを復号する手順と、ライセンスキーの復号に失敗した場合は不正なライセンスキーを使用したと判定する手順と、ライセンスキーの復号に成功した場合は正規なコンピュータでのアクティベーションであると判断し、ソフトウエアの機能の制限を解除する手順とを含み、互いに接続された複数のライセンス対象コンピュータが、前記最後のコンピュータのライセンスを認証されたらその直前のライセンス対象コンピュータのアクティベーションコードを逆順に発行し、ライセンス認証を繰り返す手順を含むソフトウエアのライセンス認証方法を提案する。
本発明においては、ライセンス付与時にコンピュータ個体を識別する照合キーをコンピュータ固有情報から分離し、照合キーの利用にコンピュータ固有情報を必要とする。ライセンスに際しては、プライバシー保護上問題となるコンピュータ固有情報をやりとりせずに、照合キーを送信する。本発明では、この照合キーとして、インストールセッションごとにユニークなセッションIDを生成して用いる。
ここで、インストールセッションとは、コンピュータにソフトウエアをインストールし、機能を有効化するまでの一連の行為をいう。同一コンピュータに対する同一ソフトウエアのインストールであっても、インストールを一旦中断した後に再開したり、再インストールしたりする場合は、行為が一連でないので、異なるセッションと見なす。
ソフトウエアをインストールしたコンピュータでは、インストールプログラムによりセッションIDが生成される。セッションIDは、コンピュータ固有情報により暗号化されてコンピュータの記憶域に保存されるので、暗号化されたセッションIDを含むソフトウエア全体を別のコンピュータにコピーした場合でも、コピー先のコンピュータではセッションIDを復号できないことになり、セッションを継続するコンピュータの一意性が確保される。
インストールプログラムは、アクティベーションコードの発行を要求するために、生成したセッションIDとシリアルナンバーとをライセンサに送信する。ネットワークを介してインストールプログラムから自動的に送信しても、FAX,Eメールに転記して送信してもよい。
セッションIDとシリアルナンバーとを受信したライセンサは、受信したシリアルナンバーがライセンスデータベースに登録済みでないかをチェックする。登録済みのシリアルナンバーが不正に流用されライセンスキーの発行を要求してきた場合は、ライセンスキーの重複発行を防止できる。
シリアルナンバーが登録されていなければ、シリアルナンバーとセッションIDとのペアをライセンス管理データベースに登録し、セッションIDでライセンスキーを暗号化しアクティベーションコードを生成する。アクティベーションコードは、ネットワークを介してインストールプログラムに直接送信しても、FAX,Eメールに転記して送信してもよい。
ライセンス対象コンピュータにおいては、セッションIDによりアクティベーションコードからライセンスキーが復号されるので、正規なセッションIDを持たないコンピュータではライセンスコードを取得できないことになり、アクティベーションコードの不正流用を防止できる。
ライセンスキーは、コンピュータ固有情報により再暗号化され、ライセンス対象コンピュータ内の記憶域に保存される。
ソフトウエアの起動には、コンピュータ固有情報によるライセンスキーの復号を必要とする。したがって、アクティベーション後のコンピュータからライセンスキーの情報を含むソフトウエア全体を不正にコピーしても、ライセンスキーを復号できず、不正利用を防止できる。
本発明においては、複数台のコンピュータにインストールする際は、セッションIDが連鎖的に生成される。アクティベーション発行要求は、最終コンピュータのみで送信すればよく、最終コンピュータのライセンス認証完了によって、セッションIDの生成とは逆順に他のコンピュータもランセンスを連鎖的に認証される。セッションIDには最終的なインストール台数が含まれており、ライセンサ側ではライセンス数と実際のインストール数とを照合し確認できる。また、アクティベーションコードを発行できるのは1台コンピュータにつき別の1台のみであるから、連鎖から外れたコンピュータはライセンス認証が得られず、不正インストールを防止できる。
悪意のある第3者が適当なシリアルナンバーとセッションIDとのペアでアクティベーションコードの発行要求を試み、たまたま正規なシリアルナンバーを入力してしまうことも想定される。この場合、本発明では、セッションIDにはシリアルナンバーのメッセージダイジェストを含めることもでき、セッションIDがインストールプログラムによって正規の手続きで生成されたものかを検証できる。これによって、正規のシリアルナンバー保持者のアクティベーションコード発行を妨害されることはない。
本発明によれば、シリアルナンバー,アクティベーションコードの流用による不正インストールを防止できる。また、正規にライセンスされたコンピュータからソフトウエアを不正にコピーしても、その利用を阻止できる。 これらの防御機能を実現するに際して、コンピュータ固有情報をライセンサに提供する必要が無く、ユーザのプライバシーが保護される。
さらに、複数台のコンピュータへのインストールに際しても、1回のアクティベーションコードの発行手続きで済み、煩わしさが軽減される。
次に、図1〜図6を参照して、本発明によるソフトウエアのライセンス認証方法の実施例を説明する。
図1は、本発明により1台のコンピュータにライセンスを認証するライセンス認証システムの系統構成を示すブロック図である。
本実施例1のライセンス認証システムは、ソフトウエアをインストールするライセンス対象コンピュータ10と、アクティベーションコード発行サーバ20とからなり、ネットワーク50により接続されている。ライセンス対象コンピュータ10は、パーソナルコンピュータPCに限らず、ワークステーションやサーバなどの場合もある。
インストールに際しては、インストールプログラムおよびライセンス対象アプリケーションプログラムを記録した記録媒体30と、記録媒体30に付帯しライセンサから提供されるシリアルナンバー40とが必要になる。
ライセンス対象コンピュータ10は、セッションID生成部11と、アクティベーションコード発行サーバ20にアクティベーションコードの発行を要求する発行要求部12と、ライセンスキー復号部13と、ライセンスキー照合部14と、暗号部15と、復号部16と、PC固有情報抽出部17、HDD18と、インストールされたアプリケーションプログラム19の格納部とを含んでいる。
アプリケーションコード発行サーバ20は、ライセンスキーの発行要求を受け付ける発行受付部21と、シリアルキー登録照合部22と、ライセンスキー暗号部23と、シリアルナンバーとセッションIDとをペアで登録するライセンス管理データベース24とを含んでいる。
次に、アプリケーションプログラムをライセンス対象コンピュータ10にインストールし、ライセンス認証を受け、ライセンスされたアプリケーションプログラムを有効にする手順の一例を説明する。
図2は、ライセンス対象コンピュータ10がアクティベーションコードの発行を要求する処理手順を示すフローチャートである。
アプリケーションプログラムユーザは、記録媒体30からインストールプログラムを起動する(S100)。インストールプログラムの指示に従い、シリアルナンバーを入力すると(S101)、アプリケーションプログラム19を構成するモジュールが記録媒体30からライセンス対象コンピュータ10にコピーされる(S102)。
なお、アプリケーションプログラム19の動作にライセンス対象コンピュータ10のシステムファイルを変更する必要がある場合は、その変更も併せて実施する。また、本実施例1においては、インストールプログラムおよびアプリケーションプログラムを記録媒体30で提供する形態を示しているが、ネットワークを介してダウンロードする形態であってもよい。
セッションID生成部11が、インストールセッションごとにユニークなコードとしてセッションIDを生成する(S103)。このようにユニークなセッションIDの生成には、インストール開始時点の時刻とシリアルナンバーのメッセージダイジェストとを組み合わせ、インストールプログラム19に内蔵された秘密鍵を用いて暗号化しコードを生成する方法がある。コンピュータのシステム時刻にはミリ秒程度の分解能があるので、インストール作業にかかる時間スケールと比較すると、十分にユニークなセッションIDを生成できる。
メッセージダイジェストとは、原文から所定のアルゴリズムで生成される固定長の擬似乱数列であり、不可逆で原文を再現できないので、同じメッセージダイジェストを生成する2つの原文を見つけることが不可能という性質を持つ。このようなアルゴリズムには、MD5やSHAがある。
コンピュータ固有抽出情報部17が、コンピュータ固有の情報を抽出し、コンピュータ固有抽出情報とする(S104)。コンピュータ固有抽出情報には、イーサネット(登録商標)LANインタフェースのMACアドレスやプロセッサコードとなどのコンピュータを構成する部品に割り当てられた固有識別番号を利用できる。
暗号部15は、コンピュータ固有抽出情報をキーとして、セッションIDを暗号化する。結果の暗号は、ライセンス対象コンピュータ10内のHDD18に保存する(S105)。
発行要求部12は、ネットワーク50を介して、シリアルナンバーとセッションIDとをアクティベーションコード発行サーバ20に送信し、アクティベーションコードの発行を要求する(S106)。
インストールプログラムの機能によっては、アクティベーションコード発行サーバ20と直接通信する本実施例とは異なり、ライセンス対象コンピュータ10をネットワーク50に接続できない利用状態も想定される。この場合は、ライセンス対象コンピュータ10のディスプレイ上にセッションIDを表示し、ユーザがEメール,FAX,電話などの手段を用いてライセンサに通知する形態でもよい。
また、アクティベーションコード発行サーバ20は、インターネット上にWebサーバとして公開され、Web画面からセッションIDとライセンスナンバーとを入力し、アクティベーションコードの発行を要求する形態でもよい。
図3は、アクティベーションコード発行サーバ20の処理手順の一例を示すフローチャートである。
アクティベーションコード発行サーバ20は、シリアルナンバーとセッションIDとを受信する(S201)。アクティベーションコード発行サーバ20のシリアルキー登録照合部22は、シリアルナンバーとセッションIDとがライセンス管理DB24に登録済みか否かをチェックする(S202)。セッションIDが登録済みであれば、シリアルナンバーが不正に流用されたと判断し(S203)、アクティベーションコードの発行処理を中断する(S205)。この場合は、ネットワーク50を介して、ライセンス対象コンピュータ10にメッセージを送信し、ユーザに不正流用である旨を通知する。
アクティベーションコード発行サーバ20のシリアルキー登録照合部22は、セッションIDが未登録であれば、アクティベーションコード発行の正当な要求であると推定し(S203)、ライセンス管理DB24にシリアルナンバーとセッションIDとをペアで登録する(S204)。
アクティベーションコード発行サーバ20のライセンスキー暗号部23は、セッションIDをキーとしてアプリケーションプログラムの機能抑制を解除するライセンスキーを暗号化し、アクティベーションコードを生成する(S206)。生成したアクティベーションコードは、ネットワーク50を介して、ライセンス対象コンピュータ10に送信される(S207)。
本実施例1では、ライセンス対象コンピュータ10のインストールプログラムと直接通信し、アクティベーションコードを通知しているが、EメールやFAXなどで通知する形態でもよい。また、Web画面から発行要求を受け付けた場合は、Web画面上にアクティベーションコードを表示してもよい。
図4は、ライセンス対象コンピュータ10におけるアプリケーションプログラムのアクティベーション手順を示すフローチャートである。ライセンス対象コンピュータ10は、アクティベーションコードを受信すると(S111)、コンピュータ固有情報を抽出する(S112)。続いて、暗号化されHDD18に保存されているセッションID181を読み込み、コンピュータ固有情報をキーとしてセッションIDを復号する(S113)。セッションIDの復号に失敗した場合(S104)、アクティベーション処理を中断する(S116)。
暗号化されたセッションIDを不正にコピーされたとしても、元々セッションIDを生成したコンピュータでなければ、コンピュータ固有情報が異なり、セッションIDの復号が不可能なので、アクティベーションの継続を防止できる。
セッションIDの復号に成功した場合(S104)、復号したセッションIDをキーとして、アクティベーションコードからライセンスキーを復号する(S116)。ライセンスキーの復号に失敗した場合(S107)、アクティベーション処理を中断する。アクティベーションコードを不正に入手しても、暗号キーとなるセッションIDが異なるので、ライセンスキーが得られない。したがって、アクティベーションコードの不正流用を防止できる。
復号に成功した場合(S107)、得られたライセンスキーは、コンピュータ固有情報をキーとして、再度暗号化し、HDD18に保存する。
図5は、ライセンス対象コンピュータ10におけるライセンス認証手順を示すフローチャートである。
ユーザが、アプリケーションプログラム19を起動すると(S121)、コンピュータ固有情報を抽出し(S122)、暗号化されたライセンスキー182を復号する(S123)。ライセンスキー182の復号に失敗した場合(S124)、処理を中断する(S125)。
復号失敗の第1の原因は、アクティベーション処理が未完了で、ライセンスキーが存在しないことである。第1の原因の場合は、ライセンスキーを取得するように促すガイダンスを表示する。
復号失敗の第2の原因は、アクティベーションの完了したコンピュータから、ライセンスキーを不正にコピーしたことである。第2の原因の場合は、暗号キーであるコンピュータ固有情報が異なるので、復号に失敗する。
復号に成功した場合(S124)、アプリケーションプログラム19の抑制された機能への制限を解除する。
機能制限およびその解除方法としては、例えば、アプリケーションプログラムの実行コード中にライセンスキーを埋め込み、プログラム中で照合する方法がある。
また、アプリケーションプログラム動作のために必要な一部の実行モジュールや定義ファイルなどがライセンスキーで予め暗号化されており、プログラム実行時に得られたライセンスキーで復号する方法もある。
図6は、本発明により複数台のコンピュータにライセンスを認証するライセンス認証システムの系統構成を示すブロック図である。
本実施例2のライセンス認証システムは、ソフトウエアをインストールするライセンス対象コンピュータ10と、アクティベーションコード発行サーバ20とからなり、ネットワーク50により接続されている。ライセンス対象コンピュータ10は、PC1〜PCNのN台有り、相互に接続されている。ライセンス対象コンピュータ10は、パーソナルコンピュータPCに限らず、ワークステーションやサーバなどの場合もある。
インストールに際しては、複数台のコンピュータにインストール可能ないわゆるボリュームラインセンス版のインストールプログラムおよびライセンス対象アプリケーションプログラムを記録した記録媒体30と、記録媒体30に付帯しライセンサから提供されるシリアルナンバー40とが必要になる。
個々のライセンス対象コンピュータ10であるPC1〜PCNは、実施例1と変わらず、セッションID生成部11と、アクティベーションコード発行サーバ20にアクティベーションコードの発行を要求する発行要求部12と、ライセンスキー復号部13と、ライセンスキー照合部14と、暗号部15と、復号部16と、PC固有情報抽出部17、HDD18と、インストールされたアプリケーションプログラム19の格納部とを含んでいる。
アプリケーションコード発行サーバ20も、実施例1と同様に、ライセンスキーの発行要求を受け付ける発行受付部21と、シリアルキー登録照合部22と、ライセンスキー暗号部23と、シリアルナンバーとセッションIDとをペアで登録するライセンス管理データベース24とを含んでいる。
次に、アプリケーションプログラムを複数のライセンス対象コンピュータ10にインストールし、ライセンス認証を受け、ライセンスされたアプリケーションプログラムを有効にする手順の一例を説明する。
1台目のライセンス対象コンピュータPC1でセッションIDのS1を生成し、これをライセンス対象コンピュータPC2に入力する。セッションIDのS1には、累積インストール台数1が付加されている。続いて、ライセンス対象コンピュータPC2に対応するセッションIDのS2を生成する。セッションIDのS2には、セッションIDのS1の累積インストール台数に1を加算した結果2が付加される。
このようにして、ライセンス対象コンピュータPCNまで、セッションIDの入力と生成とを順次繰り返し、最終的に、ライセンス対象コンピュータPCNに対応するセッションIDのSNを得る。セッションIDのSNには、シリアルナンバーと累積インストール台数Nとが付加されている。
ライセンス対象コンピュータPCNがセッションIDのSNをライセンサのアクティベーションコード発行サーバ20に送信すると、アクティベーションコード発行サーバ20は、顧客サイトにおけるライセンス対象コンピュータの台数を把握できる。アクティベーションコード発行サーバ20は、その台数が契約ライセンス数の制限内であれば、ライセンス対象コンピュータPCNのアクティベーションコードANを発行する。
ユーザは、アクティベーションコードANをライセンス対象コンピュータNに入力し、ライセンスの認証を受ける。ライセンス対象コンピュータPCNが正規であり、ライセンス認証が成功すれば、ライセンス対象コンピュータPCNのインストーラが、ライセンス対象コンピュータPCN−1のアクティベーションコードAN−1を発行し、ライセンス対象コンピュータPCN−1のライセンスを認証させる。
この手順を繰り返し、セッションIDを生成したときとは逆順に、ライセンス対象コンピュータPCN−1、ライセンス対象コンピュータPCN−2,PCN−3,…,…,ライセンス対象コンピュータ1まで、ライセンスを認証させる。アクティベーションコードの発行は、各ライセンス対象コンピュータで1台に限られるので、セッションIDの連鎖から漏れたコンピュータへのインストールを防止できる。
本実施例2によれば、アクティベーションコード発行サーバ20側からみれば、1台のライセンス対象コンピュータのアクティベーションのみで、契約ライセンス数の制限内で複数台のコンピュータにライセンスを認証できる。
本発明により1台のコンピュータにライセンスを認証するライセンス認証システムの系統構成を示すブロック図である。 ライセンス対象コンピュータ10がアクティベーションコードの発行を要求する処理手順を示すフローチャートである。 アクティベーションコード発行サーバ20の処理手順の一例を示すフローチャートである。 ライセンス対象コンピュータ10におけるアプリケーションプログラムのアクティベーション手順を示すフローチャートである。 ライセンス対象コンピュータ10におけるライセンス認証手順を示すフローチャートである。 本発明により複数台のコンピュータにライセンスを認証するライセンス認証システムの系統構成を示すブロック図である。
符号の説明
10 ライセンス対象コンピュータ
11 セッションID生成部
12 アクティベーションコードの発行要求部
13 ライセンスキー復号部
14 ライセンスキー照合部
15 暗号部
16 復号部
17 PC固有情報抽出部
18 HDD
181 セッションID
182 ライセンスキー
19 アプリケーションプログラム
20 アクティベーションコード発行サーバ
21 発行受付部
22 シリアルキー登録照合部
23 ライセンスキー暗号部
24 ライセンス管理データベース
30 記録媒体
40シリアルナンバー
50 ネットワーク

Claims (9)

  1. ライセンス対象コンピュータが、インストールされたソフトウエアの機能を制限する手順と、
    前記コンピュータのハードウエア構成要素から前記コンピュータを一意に識別可能なコンピュータ固有情報を抽出する手順と、
    インストールのセッションごとにセッションIDをランダムに生成する手順と、
    セッションIDをキーに前記コンピュータ固有情報を暗号化し前記コンピュータ内の記憶域に保存する手順と、
    セッションIDとシリアルナンバーとをライセンサに送信しライセンスキーの発行を要求する手順とを含むことを特徴とするソフトウエアのライセンス認証方法。
  2. 請求項1に記載のソフトウエアのライセンス認証方法において、
    前記ライセンサが、シリアルナンバーとセッションIDとを一対として登録管理するライセンス管理データベースを有し、
    未登録シリアルナンバーに対するライセンスキーの発行要求に応じてソフトウエア機能の制限を解除するためのライセンスキーをセッションIDで暗号化しアクティベーションコードを生成する手順と、
    アクティベーションコードを前記ライセンス対象コンピュータに送信する手順とを含むことを特徴とするソフトウエアのライセンス認証方法。
  3. 請求項1または2に記載のソフトウエアのライセンス認証方法において、
    前記ライセンス対象コンピュータが、暗号化され当該コンピュータ内の記憶域に保存されたセッションIDをコンピュータ固有情報で復号する手順と、
    セッションIDの復号に失敗した場合は不正コピーされたと判定する手順と、
    セッションIDの復号に成功した場合はセッションIDでアクティベーションコードからライセンスキーを復号する手順と、
    ライセンスキーの復号に失敗した場合は不正なライセンスキーを使用したと判定する手順と、
    ライセンスキーの復号に成功した場合は正規なコンピュータでのアクティベーションであると判断し、ソフトウエアの機能の制限を解除する手順とを含むことを特徴とするソフトウエアのライセンス認証方法。
  4. 請求項3に記載のソフトウエアのライセンス認証方法において、
    前記ライセンス対象コンピュータが、復号したライセンスキーをコンピュータ固有情報で暗号化し前記コンピュータ内の記憶域に保存する手順と、
    ソフトウエアの利用時にコンピュータ固有情報でライセンスキーを復号する手順と、
    ライセンスキーの復号に失敗した場合は不正コピーされたと判定しソフトウエアの機能を抑制する手順とを含むことを特徴とするソフトウエアのライセンス認証方法。
  5. ライセンス対象コンピュータが、インストールされたソフトウエアの機能を制限する手順と、前記コンピュータのハードウエア構成要素から前記コンピュータを一意に識別可能なコンピュータ固有情報を抽出する手順と、インストールのセッションごとにセッションIDをランダムに生成する手順と、セッションIDをキーに前記コンピュータ固有情報を暗号化し前記コンピュータ内の記憶域に保存する手順と、セッションIDとシリアルナンバーとをライセンサに送信しライセンスキーの発行を要求する手順とを含み、
    前記ライセンサが、シリアルナンバーとセッションIDとを一対として登録管理するライセンス管理データベースを有し、未登録シリアルナンバーに対するライセンスキーの発行要求に応じてソフトウエア機能の制限を解除するためのライセンスキーをセッションIDで暗号化しアクティベーションコードを生成する手順と、アクティベーションコードを前記ライセンス対象コンピュータに送信する手順とを含み、
    前記ライセンス対象コンピュータが、暗号化され当該コンピュータ内の記憶域に保存されたセッションIDをコンピュータ固有情報で復号する手順と、セッションIDの復号に失敗した場合は不正コピーされたと判定する手順と、セッションIDの復号に成功した場合はセッションIDでアクティベーションコードからライセンスキーを復号する手順と、ライセンスキーの復号に失敗した場合は不正なライセンスキーを使用したと判定する手順と、ライセンスキーの復号に成功した場合は正規なコンピュータでのアクティベーションであると判断し、ソフトウエアの機能の制限を解除する手順とを含み、
    前記ライセンス対象コンピュータが、復号したライセンスキーをコンピュータ固有情報で暗号化し前記コンピュータ内の記憶域に保存する手順と、ソフトウエアの利用時にコンピュータ固有情報でライセンスキーを復号する手順と、ライセンスキーの復号に失敗した場合は不正コピーされたと判定しソフトウエアの機能を抑制する手順とを含むことを特徴とするソフトウエアのライセンス認証方法。
  6. 互いに接続された複数のライセンス対象コンピュータが、それぞれにインストールされたソフトウエアの機能を制限する手順と、前記コンピュータのハードウエア構成要素から前記コンピュータを一意に識別可能なコンピュータ固有情報を抽出する手順と、自身のセッションID生成前にそれ以前に接続された他のコンピュータのセッションIDの入力を受け付ける手順と、インストールのセッションごとに自身のセッションIDをランダムに生成する手順と、自身のセッションIDをキーに前記コンピュータ固有情報を暗号化し前記コンピュータ内の記憶域に保存する手順と、自身のセッションIDとシリアルナンバーとをライセンサに送信しライセンスキーの発行を要求する手順とを含み、
    前記ライセンサが、シリアルナンバーとセッションIDとを一対として登録管理するライセンス管理データベースを有し、未登録シリアルナンバーに対するライセンスキーの発行要求に応じてソフトウエア機能の制限を解除するためのライセンスキーを前記複数のライセンス対象コンピュータのうち最後のコンピュータのセッションIDで暗号化しアクティベーションコードを生成する手順と、アクティベーションコードを前記最後のコンピュータに送信する手順とを含み、
    前記最後のコンピュータが、暗号化され当該コンピュータ内の記憶域に保存されたセッションIDをコンピュータ固有情報で復号する手順と、セッションIDの復号に失敗した場合は不正コピーされたと判定する手順と、セッションIDの復号に成功した場合はセッションIDでアクティベーションコードからライセンスキーを復号する手順と、ライセンスキーの復号に失敗した場合は不正なライセンスキーを使用したと判定する手順と、ライセンスキーの復号に成功した場合は正規なコンピュータでのアクティベーションであると判断し、ソフトウエアの機能の制限を解除する手順とを含み、
    互いに接続された複数のライセンス対象コンピュータが、前記最後のコンピュータのライセンスを認証されたらその直前のライセンス対象コンピュータのアクティベーションコードを逆順に発行し、ライセンス認証を繰り返す手順を含むことを特徴とするソフトウエアのライセンス認証方法。
  7. 請求項6に記載のソフトウエアのライセンス認証方法において、
    各ライセンス対象コンピュータのセッションIDには、請求項6の情報に加えて累積インストール台数の情報を含み、
    それ以前に接続されたコンピュータのセッションIDに含まれる累積インストール台数を抽出して1を加算し、自身が生成するセッションIDに加算結果を付加することを特徴とするソフトウエアのライセンス認証方法。
  8. 請求項6または7に記載のソフトウエアのライセンス認証方法において、
    前記ライセンス対象コンピュータが、復号したライセンスキーをコンピュータ固有情報で暗号化し前記コンピュータ内の記憶域に保存する手順と、
    ソフトウエアの利用時にコンピュータ固有情報でライセンスキーを復号する手順と、
    ライセンスキーの復号に失敗した場合は不正コピーされたと判定しソフトウエアの機能を抑制する手順とを含むことを特徴とするソフトウエアのライセンス認証方法。
  9. 請求項1ないし8のいずれか一項に記載のソフトウエアのライセンス認証方法において、
    セッションIDが、シリアルナンバーのメッセージダイジェストを含むことを特徴とするソフトウエアのライセンス認証方法。
JP2006190673A 2006-07-11 2006-07-11 ソフトウエアのライセンス認証方法 Pending JP2008021021A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006190673A JP2008021021A (ja) 2006-07-11 2006-07-11 ソフトウエアのライセンス認証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006190673A JP2008021021A (ja) 2006-07-11 2006-07-11 ソフトウエアのライセンス認証方法

Publications (1)

Publication Number Publication Date
JP2008021021A true JP2008021021A (ja) 2008-01-31

Family

ID=39076911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006190673A Pending JP2008021021A (ja) 2006-07-11 2006-07-11 ソフトウエアのライセンス認証方法

Country Status (1)

Country Link
JP (1) JP2008021021A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013020354A (ja) * 2011-07-08 2013-01-31 Ricoh Co Ltd ログ集計プログラム、ログ集計装置およびインストーラ・パッケージャ・プログラム
WO2014055313A1 (en) * 2012-10-04 2014-04-10 Google Inc. Limiting the functionality of a software program based on a security model
CN111651733A (zh) * 2020-06-03 2020-09-11 上海寰创通信科技股份有限公司 一种许可证有效期的离线校验方法
US10885155B2 (en) 2016-06-15 2021-01-05 Shimadzu Corporation Software license management system and management method
US11423122B2 (en) 2016-06-15 2022-08-23 Shimadzu Corporation Software license management system and management method
CN115994343A (zh) * 2023-03-22 2023-04-21 济南邦德激光股份有限公司 一种激光切割设备的软件授权方法及***

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013020354A (ja) * 2011-07-08 2013-01-31 Ricoh Co Ltd ログ集計プログラム、ログ集計装置およびインストーラ・パッケージャ・プログラム
WO2014055313A1 (en) * 2012-10-04 2014-04-10 Google Inc. Limiting the functionality of a software program based on a security model
US8954736B2 (en) 2012-10-04 2015-02-10 Google Inc. Limiting the functionality of a software program based on a security model
US10885155B2 (en) 2016-06-15 2021-01-05 Shimadzu Corporation Software license management system and management method
US11423122B2 (en) 2016-06-15 2022-08-23 Shimadzu Corporation Software license management system and management method
CN111651733A (zh) * 2020-06-03 2020-09-11 上海寰创通信科技股份有限公司 一种许可证有效期的离线校验方法
CN115994343A (zh) * 2023-03-22 2023-04-21 济南邦德激光股份有限公司 一种激光切割设备的软件授权方法及***
CN115994343B (zh) * 2023-03-22 2024-03-26 济南邦德激光股份有限公司 一种激光切割设备的软件授权方法及***

Similar Documents

Publication Publication Date Title
JP4278327B2 (ja) コンピュータ・プラットフォームおよびその運用方法
US5935246A (en) Electronic copy protection mechanism using challenge and response to prevent unauthorized execution of software
US9281949B2 (en) Device using secure processing zone to establish trust for digital rights management
JP6357158B2 (ja) 仮想マシンによる安全なデータ処理
JP5065911B2 (ja) プライベートな、かつ制御された所有権の共有
TWI557589B (zh) 用於產品驗證和啟動的安全軟體產品識別器
KR100615021B1 (ko) 콘텐츠 배포/수신 방법
JP4550050B2 (ja) 利用認証方法、利用認証プログラム、情報処理装置および記録媒体
US8555075B2 (en) Methods and system for storing and retrieving identity mapping information
US20110296175A1 (en) Systems and methods for software license distribution using asymmetric key cryptography
CN101142599A (zh) 基于硬件识别的数字权利管理***
WO2011001371A2 (en) Method for remotely controlling and monitoring the data produced on desktop on desktop software
CN110096849A (zh) 一种License授权认证方法、装置、设备及可读存储介质
CN101923616A (zh) 版权保护中的服务提供装置、用户终端及版权保护方法
US6651169B1 (en) Protection of software using a challenge-response protocol embedded in the software
JP2008021021A (ja) ソフトウエアのライセンス認証方法
JP2008033512A (ja) セキュリティチップ及びプラットフォーム
KR20040058278A (ko) 비인가된 사용에 대한 정보의 보호방법 및 보호장치
JP3758316B2 (ja) ソフトウェアライセンス管理装置および方法
US20050246285A1 (en) Software licensing using mobile agents
JP2012009030A (ja) ソフトウェアアプリケーションを実行するための方法、システム及びセキュアプロセッサ
JP2008234079A (ja) 情報処理装置、ソフトウェア正当性通知方法及び画像処理装置
EP3731127B1 (en) Control system and method thereof for secure manufacturing
US20130014286A1 (en) Method and system for making edrm-protected data objects available
CN109284615B (zh) 移动设备数字资源安全管理方法