JP2004213057A - ソフトウェアの不正使用防止システム - Google Patents

ソフトウェアの不正使用防止システム Download PDF

Info

Publication number
JP2004213057A
JP2004213057A JP2002378233A JP2002378233A JP2004213057A JP 2004213057 A JP2004213057 A JP 2004213057A JP 2002378233 A JP2002378233 A JP 2002378233A JP 2002378233 A JP2002378233 A JP 2002378233A JP 2004213057 A JP2004213057 A JP 2004213057A
Authority
JP
Japan
Prior art keywords
software
information
authentication file
authentication
file
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.)
Granted
Application number
JP2002378233A
Other languages
English (en)
Other versions
JP4245917B2 (ja
Inventor
Tetsushi Osami
哲志 長見
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2002378233A priority Critical patent/JP4245917B2/ja
Publication of JP2004213057A publication Critical patent/JP2004213057A/ja
Application granted granted Critical
Publication of JP4245917B2 publication Critical patent/JP4245917B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

【課題】ユーザー端末の情報を承認サーバーで管理し、不正使用を防止し、またデータの改ざんによる不正利用を防止したソフトウェアの不正使用防止方法を提供する。
【解決手段】ネットワークに接続されたユーザー端末に使用権承認サーバーより前記ネットワークを介して定期的にソフトウェアの使用権を更新または付与することで前記ソフトウェアの不正使用を防止する方法であって、前記ユーザー端末に、前記使用権承認サーバーによって承認された前記ソフトウェアの使用を許可するための第1認証ファイルと第2認証ファイルとが定期的に更新付与され、前記使用権承認サーバーのデータベースおよび前記第1認証ファイルおよび前記第2認証ファイルの情報により前記ソフトウェアの使用が承認されると共に、前記第1認証ファイルと第2認証ファイルとが相互に情報の改ざんを検知する。
【選択図】 図1

Description

【0001】
【発明の属する技術分野】
この発明は、ネットワークに接続可能かつ記憶装置をもつコンピュータにおいてネットワーク(インターネットを含む)を介して、定期的にソフトウェアの正規利用者に使用権を更新または付与することでソフトウェアの不正使用を防止するソフトウェアの不正使用防止システムに関し、特に、承認サーバーから発効された複数の認証ファイルを複雑に関連づけることでデータの改ざんによる不正利用を防止することができるソフトウェアの不正使用防止システムに関するものである。
【0002】
【従来の技術】
一般に、ネットワークに接続可能でかつ記憶装置を持ちソフトウェアを利用する全ての端末機器(パソコン、ゲーム機、携帯情報端末、携帯電話など)において、ソフトウェアの不正使用が大きな問題となってきている。
一般的なソフトウェアの不正使用の防止方法としては、ソフトウェアを端末に導入する際、ユーザーにシリアル番号または暗号化されたキーを入力させ、不正なものであれば導入を中断する方法が使われている。
前記ソフトウェアの不正使用を解決するための他の先行技術としては、1.特開平11−212783号公報(ハードディスクのシリアル番号を元に作成されたキーワードをソフトウェアのパスワードとし、ソフトウェアにそのパスワードからハードディスクのシリアル番号を算出し一致すれば正しいと判断する機能を付加し、これによって使用者以外のハードディスク以外ではソフトウェアが正常に動作しなくなるため、ソフトウェアの不正使用はできなくなる)、2.特開2001−344097公報(ソフトウェアの使用有効期限などを暗号化して記録したファイルをクライアント装置のハードディスクにインストールし、ソフトウェアの起動判定時にこの暗号を復号し(S330)、その正当性を判断する(S331、S333)ことで、ソフトウェアの起動可、不可を決定する)が知られている。
【特許文献1】特開平11−212783号公報
【特許文献2】特開2001−344097公報
【0003】
【発明が解決しようとする課題】
しかしながら、前記従来のソフトウェアを端末に導入する際、ユーザーにシリアル番号または暗号化されたキーを入力させ、不正なものであれば導入を中断する方法は、導入時に正規のシリアル番号またはキーを入力してしまいさえすれば、以後、何の制約もなく使用することができるため、何らかの原因で正規のシリアル番号またはキーが流出してしまった場合、不正使用に歯止めをかける方法がなく有効とはいい難かった。
また、前記特開平11−212783号「ソフトウェアの不正使用防止方法」で述べられる方法では、ハードディスクのシリアル番号を利用して、ソフトウェアとユーザー端末を一意に関連付けようとしているが、ハードディスクのシリアル番号を同一にしてしまうことで不正利用されてしまう懸念があった。
また、前記特開2001−344097「プログラムの不正使用防止システム、不正使用防止装置、不正使用防止方法、不正使用防止プログラムを記録した記録媒体」の方法では、ネットワークを介して定期的に使用権を与えることで不正利用を防止しているが、データの改ざんによる不正利用に対しての対策がなされていない欠点があった。
本発明は、ネットワーク(インターネットを含む)を介して、ユーザー端末の情報を承認サーバーで管理し、定期的にソフトウェアの正規利用者に使用権を更新または付与することで不正使用を防止し、また、承認サーバーから発効された複数の認証ファイルを複雑に関連づけることでデータの改ざんによる不正利用を防止したソフトウェアの不正使用防止方法を提供することである。
【0004】
【課題を解決するための手段】
上述の目的を達成するために、請求項1記載の発明は、ネットワークに接続されたユーザー端末に使用権承認サーバーより前記ネットワークを介して定期的にソフトウェアの使用権を更新または付与することで前記ソフトウェアの不正使用を防止するソフトウェアの不正使用防止システムであって、前記ユーザー端末の記憶装置に、前記使用権承認サーバーによって承認された前記ソフトウェアの使用を許可するための第1認証ファイルと第2認証ファイルとが記憶され、前記使用権承認サーバーのデータベースに、前記使用権承認サーバーとユーザー端末との通信および各認証ファイルを暗号化するために必要な暗号キーのユーザー情報が記憶され、前記第1認証ファイルが、少なくとも前記ソフトウェアのシリアル番号、前記ソフトウェアの使用期限、前記使用権承認サーバーから認証を得た承認時刻、第2認証ファイルに保存された端末情報のハッシュ値、前記第1認証ファイルの更新時刻の情報を含んでおり、前記第2認証ファイルが、少なくとも前記ソフトウェアを使用する前記ユーザー端末を認識するための前記ソフトウェアの記憶された記憶装置のメーカー名およびボリュームラベルおよびボリュームシリアル番号の端末情報、前記第1認証ファイルの情報のハッシュ値、前記第1認証ファイルの保存位置、前記ソフトウェアの暗号キーデータベースの保存位置の情報を含んでおり、前記使用権承認サーバーのデータベースおよび前記第1認証ファイルおよび前記第2認証ファイルの情報により前記ソフトウェアの使用が承認されると共に、前記第1認証ファイルと第2認証ファイルとが相互に情報の改ざんを検知するように前記使用権承認サーバーのデータベースおよび前記第1認証ファイルおよび前記第2認証ファイルの情報が前記使用権承認サーバーにより定期的に更新されることを特徴とする。
したがって、ソフトウェアの使用期限などの情報を含んだ第1の認証ファイルと、ソフトウェアを使用するユーザー端末を一意に認識するための第2の認証ファイルの2つの認証ファイルが、相互に認証ファイルのコピーによる不正使用とデータ改ざんを検知する役目を果たし、また、一方の認証ファイルを改ざんするには、必ず他方も改ざんする必要があり、いくつもの複雑な作業を行う必要があり、データの改ざんの防止の役目を果たしている。また、ハッシュ関数と暗号化の有効使用、及び、各認証ファイルと暗号キーの定期的な更新も、データの改ざんの防止の役目を果たしている。
また、第1認証ファイルにより使用期限を設け、定期的に承認サーバと認証作業を行う必要性をもたせることで、不正ユーザーの使用を速やかに停止させる措置をとることができる。
【0005】
また、請求項2記載の発明は、請求項1のソフトウェアの不正使用防止システムにおいて、前記第2認証ファイルの情報として、前記ソフトウェアを導入する端末に接続されるCRTまたは液晶ディスプレイの製造情報を用いたことを特徴とする。
したがって、CRTまたは液晶ディスプレイの情報を利用するならば、認証期限を待たずにユーザー環境の変化を知ることができ、それをトリガーとして認証を求めることができる。
また、請求項3記載の発明は、請求項1のソフトウェアの不正使用防止システムにおいて、前記第2認証ファイルの情報として、前記ソフトウェアを導入する端末の組み込みソフトに保存されたハードウェアの製造情報を用いたことを特徴とする。
したがって、認証期限を待たずにユーザー環境の変化を知ることができ、それをトリガーとして認証を求めることができるため、記憶装置のコピーによる不正使用を防止できる。
また、請求項4記載の発明は、請求項1のソフトウェアの不正使用防止システムにおいて、前記第2認証ファイルの情報として、前記第1認証ファイルが保存された記憶装置の製造情報を用いたことを特徴とする。
したがって、認証期限を待たずにユーザー環境の変化を知ることができ、それをトリガーとして認証を求めることができるため、記憶装置のコピーによる不正使用を防止できる。
また、請求項5記載の発明は、請求項1のソフトウェアの不正使用防止システムにおいて、前記第2認証ファイルの情報として、前記ソフトウェアを導入する端末の組み込みソフトに保存された端末の製造情報と、前記第1認証ファイルが保存された記憶装置の製造情報を用いたことを特徴とする。
したがって、認証期限を待たずにユーザー環境の変化を知ることができ、それをトリガーとして認証を求めることができるため、記憶装置のコピーによる不正使用を防止できる。
【0006】
【発明の実施の形態】
以下に添付の図を参照してこの発明の実施形態を詳細に説明する。
図1は、本発明によるソフトウェアの不正使用防止システムの一実施形態の概略図である。
図1に示すように、このソフトウェアの不正使用防止システムは、正規ユーザーであるかを確認するためにネットワーク(インターネットを含む)101上に設置されたユーザー情報データベースを組み込んだ使用権承認サーバー(以下、承認サーバーとする)103と、ネットワーク101を介して前記承認サーバー103に接続されたソフトウェアの使用されるハードウェア(以下、ユーザー端末とする)105とを有している。なお、前記承認サーバーと103は、ユーザ情報ユーザー情報データベース107を有している。また、通常、前記ユーザー端末105は、ネットワーク101に複数個接続されている。
前記承認サーバー103は、ユーザー端末105から送られてくる情報を基に正規ユーザーか否かを確認し、正規ユーザーであれば前記ユーザー端末105のソフトウェアの起動に必要な認証ファイルとなるファイルを発効する機能を持つ。また、前記ソフトウェアのアップデート情報も管理しており、暗号エンジン(暗号化アルゴリズム)の更新や、ハッシュ関数の更新も行う。
【0007】
図2は、前記ユーザー端末105の構成ブロック図である。
図2に示すように、前記ユーザー端末105は、CPU109に接続された記憶装置111と、I/F113を介してCPU109に接続されたモデム115、キーボード117、表示器119、HD121等からなっている。
前記ユーザー端末105のソフトウェアは、起動時に第1認証ファイルと第2認証ファイルの2つの認証ファイルに記録された情報を確認することで不正利用を防止する機能をもつ。前記第1認証ファイルと第2認証ファイルは、前記ユーザー端末105の記憶装置111に記憶されるもので、データの改ざんを防止する為の情報を持っており、相互に監視する為に利用される。また、これらのファイルはソフトウェアのもつ暗号キー・データベース(以下、暗号キーDBとする。)から所定の方法で選択された暗号キーにより暗号化されている。その為、ソフトウェアを使用するためには、第1認証ファイル、第2認証ファイル、暗号キーDBの3つのファイルが必要不可欠である。
第1認証ファイルは、「承認情報(1)」、「端末情報Aのハッシュ値(2)」(これは情報Bと等しい)、「情報1+2のハッシュ値(3)」、「第1認証ファイルの更新された時刻(以下、更新時刻とする)(4)」と「情報1〜4のハッシュ値(5)」の5項目からなる。
そして、「承認情報(1)」は、さらに「承認情報を表すシグネチャ(1−1)」、「ソフトウェアのシリアル番号(1−2)」(これは情報(A−2)と等しい)、「該ソフトウェアが承認サーバー103により承認を得た時刻(1−3)」(以下、承認時刻とする)、「ソフトウェアの使用期限 (1−4)」(以下、使用期限とする)の4項目に細分される。(第1認証ファイルの概要は、図3を参照のこと)
第2認証ファイルは、「端末情報(A)」、「端末情報のハッシュ値(B)」(これは情報(2)と等しい)、「第1認証ファイルの情報(1〜4)のハッシュ値(C)」(これは情報(5)に等しい)、「第1認証ファイルが保存されている記憶装置上の位置(D)」(以下、第1認証ファイルの位置とする)、「暗号キーDBが保存されている記憶装置上の位置(E)」(以下、暗号キーDBの位置とする)と、「情報(A〜E)のハッシュ値(F)」の6項目からなる。
そして、「端末情報(A)」は、「端末情報を表すシグネチャ(A−1)」「ソフトウェアのシリアル番号(A−2)」(これは情報(1−2)と等しい)、ソフトウェアが導入されたユーザー端末105の記憶装置の「ドライブ番号(A−3)」、「メーカー名(A−4)」、「ボリュームラベル(A−5)」、「ボリュームシリアル番号(A−6)」の6項目に細分される。(第2認証ファイルの概要は、図4を参照のこと)
なお、ファイルの位置情報は、ドライブ番号、および、CHS(シリンダ・ヘッド・セクタ)方式、あるいはLBA(Logical Block Addressing)方式など、ファイルの位置が一意に決められる方式によって記録される。
また、前記の認証ファイルはフォーマットが決められており、該ソフトウェア、および承認サーバー103は、それらのファイルに保存されている情報を任意に抽出できるものとする。
【0008】
次に、前記ソフトウェアの不正使用防止システムの動作について説明する。
まず、ユーザーは、ソフトウェアを使用するために、ユーザー端末105にソフトウェアを導入する。ここで、デフォルトの暗号キーDBは導入されるが、認証ファイルは導入されない。その為、導入時、または、導入後の最初の起動において、承認サーバー103との認証作業を行い、認証ファイルを得なければならない。
ここで、認証は、まず、ソフトウェアがユーザー端末105のネットワーク機能を利用して承認サーバー103に接続し、ソフトウェアのシリアル番号を通知する。承認サーバー103は、シリアル番号に基づき、ユーザー情報ユーザー情報データベース107からユーザー情報を検索する。ここでは、最初の認証であるため、新たにデータシートが作成される。
そして、承認サーバー107は、暗号キーの指定を行い、以後の通信はこの暗号キーで暗号化されて行われる。暗号キーの指定は、暗号キーそのものの通達ではなく、暗号キーDBの何番目といった間接的な指定方法が好ましい。暗号化するのは、ネットワーク101上でのデータの秘匿性を高める為である。また、暗号キーの指定は認証作業毎にランダムに指定される。
次に、承認サーバー103は、「端末情報(A)」を該ソフトウェアに要求する。ソフトウェアは、要求された情報を収集し、「端末情報を表すシグネチャ(A)」(例えば、16進数で“AA55h”やASCIIコードで“INFO”など)に収集した情報を追加し、ファイル化して送付する。シグネチャを付加するのは、情報の種類を判断するためと、ユーザーの使用している暗号キーDBの整合性を取る為である。
承認サーバー103のユーザー情報ユーザー情報データベース107には、ユーザーが使用している暗号キーDB、または、そのDBの番号が保存されているため、指定した番号の暗号キーの値をそこから検索し、復号キーを求めることができる。ここでは、最初の認証のため、デフォルトの暗号キーDBから検索される。復号後、シグネチャが端末情報を表すものであれば暗号キーDBが正常であると認める。もし、シグネチャが異なれば、承認サーバー103は暗号キーDBが不正であり、正常な通信ができないと判断し、以後、そのシリアル番号のソフトウェアからの認証作業を受け付けない。
【0009】
次に、承認サーバー103は、暗号キーDBが正常であると認められると、受信したファイルの「ハッシュ値(B)」を求め、ファイルに追加する。(このファイルを端末情報ファイルとする)端末情報ファイルはユーザー情報ユーザー情報データベース107に記録される。
次に、承認サーバー103は、現在時刻(ここでは、時刻とは年月日および時間とする)を「承認時刻(1−3)」とし、承認時刻に一定の時間を加えて「使用期限(1−4)」を求める(以後、「承認情報を表すシグネチャ(1−1)」「シリアル番号(1−2)」「承認時刻(1−3)」「使用期限(1−4)」を承認情報(1)とする)。この「承認情報(1)」に「端末情報のハッシュ値(B)」を追加し、この2つの情報から「ハッシュ値(3)」を求め、これを1つのファイルに記録する(以後、これを承認情報ファイルとする)。この承認情報ファイルはユーザー情報データベース107に保存される。
次に、承認サーバー103は、端末情報ファイル、承認情報ファイル、新しい暗号キーDBをユーザー端末105のソフトウェアに送る。暗号キーDBの送付に関しては任意で、認証作業毎に送付しても、定期的に送付しても良い。暗号キーDBを送付した場合、そのバージョンはユーザー情報データベース107に記録され、管理される。また、ここで暗号化エンジンを更新してもよい。その場合は、暗号化エンジンのバージョンもユーザー情報データベース107で管理する必要がある。
【0010】
前記ユーザー端末105のソフトウェアは、受信した暗号キーDBをデフォルトの暗号キーDBとは別に記憶装置111に保存し、以後はこの暗号キーDBが有効な暗号キーDB(以後、カレントの暗号キーDBとする)として使用する。カレントの暗号キーDBは更新されるが、デフォルトの暗号キーDBは更新されることはなく、認証作業が不正終了した場合に利用される。つまり、以後、前記ユーザー端末105のソフトウェアには、普段使用される暗号キーDBと最初の認証および認証作業が不正終了したときに使われるデフォルトの暗号キーDBの2つのDBが存在することになる。
暗号キーDBが正常に保存されると、前記ユーザー端末105のソフトウェアはその旨、承認サーバー103に通知する。ここで承認サーバー103との通信は終了し、以後は、前記ユーザー端末105のソフトウェア内でいくつかの処理が行われる。
すなわち、前記ユーザー端末105のソフトウェアは、承認情報ファイルに現在の時刻を第1認証ファイルの「更新時刻(4)」として情報の追加をし、さらに「情報1〜4のハッシュ値(5)」を求めて付加する。これが第1認証ファイルとなる。また、この時求められたハッシュ値5は、端末情報ファイルに追加され、後に作成される第2認証ファイルの情報(C)となる。
次に、ハッシュ値5を決定要素として、暗号キーDBから暗号キーを選択し、第1認証ファイルの暗号化を行う。
次に、「暗号化された第1認証ファイルの位置(D)」と「暗号キーDBの位置(E)」を求め、その情報を第1情報ファイルのハッシュ値が追加された端末情報ファイルに追加する。これら3つの情報(C)(D)(E)が追加された端末情報ファイルのハッシュ値(F)をとり、追加する。これが第2認証ファイルとなる。
第2認証ファイルが作成されたら、暗号化された第1認証ファイルのハッシュ値を決定要素として、暗号キーDBから使用する暗号キーを選択し、第2認証ファイルを暗号化する。
以上で、最初の認証作業が終了する。
【0011】
次に、前記ユーザー端末105のソフトウェアを使用(起動)するときの確認動作について説明する。
前記ユーザー端末105のソフトウェアは、起動時にデータの改ざんがないか各認証ファイル整合性を確認する。
まず、暗号化された第1認証ファイルのハッシュ値を計算する。これを基に暗号キーDBから復号キーを求め、第2認証ファイルを復号する。
前記ユーザー端末105のソフトウェアは、第2認証ファイルの情報A〜Eのハッシュ値を求め、情報Fの値と比較し、また、シリアル番号(A−2)を確認して、ファイルの有効性を確認する。不正が認められた場合は、該ソフトウェアは起動せず、使用できない。
次に、ソフトウェアは暗号キーDBの位置を情報Eと比較する。
次に、暗号化された第1認証ファイルの位置を情報Dと比較する。問題がなければ、情報Cを基に暗号キーDBより復号キーを求め、第1認証ファイルを復号する。
次に、第1認証ファイルの情報1〜4のハッシュ値を求め、情報5と比較し、また、シリアル番号(1−2)を確認して、第1認証ファイルの有効性を確認する。
その後、情報2と情報B、情報5と情報Cとを比較し、差異がないことを確認する。
以上で、ファイルの整合性の確認が終了する。
【0012】
次に、第1認証ファイルに記録された承認情報について確認する。
すなわち、「ソフトウェアのシリアル番号(1−2)」「使用期限(1−4)」「更新時刻(4)」の確認を行い、ソフトウェアのシリアル番号が異なる場合、使用期限が過ぎていた場合、現在の時刻が更新時刻よりも過去である場合は、認証作業を行うまでソフトウェアは使用できない。
次に、第2認証ファイルに記録された端末情報について確認する。
すなわち、「ソフトウェアのシリアル番号(A−2)」、該ソフトウェアの導入された記憶装置の「ドライブ番号(A−3)」「メーカー名(A−4)」「ボリュームラベル(A−5)」「ボリュームシリアル番号(A−6)」の確認を行い、これらの情報に間違いがある場合は認証作業が必要となる。
これらが問題なければ、該ソフトウェアは第1認証ファイルの「更新時刻(4)」を更新する。また、1〜4のハッシュ値を計算し、ハッシュ値5を更新する(同時に、第2認証ファイルの情報Cも更新する)。そして、ハッシュ値5を決定要素として、暗号キーDBから暗号キーを選択し、第1認証ファイルの暗号化を行う。
次に、暗号化した第1認証ファイルの位置を求め、第2認証ファイルの「暗号化された第1情報ファイルの位置(D)」を更新する。また、情報A〜Eのハッシュ値を求め、ハッシュ値(F)を更新する。その後、暗号化された第1認証ファイルのハッシュ値を基に暗号キーを決定し、暗号化する。
ここまで正常に行えた場合、該ソフトウェアは使用可能になる。なお、より厳しい管理を行うなら、ソフトウェアの終了時、あるいは使用中の一定時間毎に、再度、第1認証ファイル、および第2認証ファイルの更新を行ってもよい。
【0013】
次に、認証作業について説明する。
認証作業は、ソフトウェア導入時または導入後の最初の起動、ソフトウェア起動時にいずれかの認証ファイルに不正が認められた場合、第1認証ファイルに記述された使用期限が過ぎていた場合、ユーザーがソフトウェアのメニューより認証作業を選択した場合に発生する。導入時または導入後の最初の起動の時に行う認証作業については、前記にて説明したのでここでは省略し、2回目以降の認証作業について説明する。
前記ユーザー端末105のソフトウェアは認証作業が必要と判断すると、承認サーバー103に接続し、ソフトウェアのシリアル番号を通知する。承認サーバー103はシリアル番号に基づき、ユーザー情報ユーザー情報データベース107からユーザーのデータシートを検索する。データシートに記録されている情報は、前述の通りだが、ユーザーの氏名・住所など、他の情報も付加してもよい。
承認サーバー103は、前記ユーザー端末105のソフトウェアに対して、第1認証ファイルの送付を要求する。第1認証ファイルを受信すると、そこに記載されている承認情報1と、ハッシュ値3がデータシートに記録された情報と差異がないか確認する。
ここで、差異がなければ、次に端末情報を要求する。前記ユーザー端末105のソフトウェアは、これらの情報を収集し、承認サーバー103に送付する(この時、情報は第2認証ファイルから得るのではなく、再度、収集する)。承認サーバー103は、データシートに記録されているこれらの情報との整合性をとり、間違いがなければ最初の認証作業と同様の手順を踏んで、承認情報ファイル、端末情報ファイル、暗号キーDBを再発効する。
ソフトウェアは、受信した各ファイルを基に各認証ファイルを作成する(作成の手順は最初の認証作業と同じ手順である)。
以上で、認証作業は終了である。
【0014】
ここで、もし、認証作業中に情報の整合性が取れなかったり、不正が見つかった場合には、各ファイルは発効されず、ユーザーは前記ユーザー端末105のソフトウェアを使用できなくなる。また、以後、認証作業も受け付けられない。この場合、ユーザーはソフトウェア提供者に電話、手紙、メールなどの手段を使って連絡をとり、再度、最初の認証からやりなおす必要がある。この時、デフォルトの暗号キーDBが使用される。
もし、認証作業が頻繁に不正終了してしまうユーザーがいた場合、不正ユーザーにシリアル番号を不正利用されているユーザーであるか、故意に認証作業を不正終了させる悪意あるユーザーであると判断でき、何らかの対応を打つことができる。
この様に、使用する毎に第1認証ファイルの更新時刻(4)が更新される為、端末の時計を操作して時間をごまかしていても、いずれ認証作業を行わなくてはならない。承認サーバー103には、承認情報(1)、端末情報(A)などが記録されているため、不正ユーザーが認証を得ることは無理である。
また、仮に、不正利用を続けようとするなら、認証ファイルの改ざんを行うしかない。しかし、第1認証ファイルと第2認証ファイルは上述したように相互に何らかの関係を持たせており、一方のファイルを改ざんするには、必ず他方も改ざんしなくてはならない。その為には幾つもの複雑な作業(ハッシュ関数の解析、暗号化/復号化方法の解析など)を行う必要があり、不正利用の防止に役立っている。
なお、本実施形態中に出てくるハッシュ値を求める為に使用するハッシュ関数は、どのようなものを使用しても良い。または、ソフトウェアおよび承認サーバーの付加を低減するために、サム値などを利用してもよい。また、通信時の暗号化も必ずしも行う必要はなく、同様の理由で省略しても良い。
【0015】
次に、上述した実施形態の変形例について説明する。
上述した実施形態において、第2認証ファイルの内容に、ソフトウェアを導入する端末に接続されるCRTまたは液晶ディスプレイの製造情報(メーカー名またはメーカー番号、プロダクト名またはプロダクト番号、シリアル番号など)を利用することもできる。例えば、現在、パーソナルコンピュータに使用されているCRTおよび液晶ディスプレイは、VEAS(Video Electronics Standard Association)の仕様に従っている。その場合、EDID(Exended Display Identification Data)にVendr/Product Identificationとして「ID Manufacture Name」「ID Product Code」「ID Serial Number」などが記載されているので、それを利用することで実現できる。
もし、VESAの仕様に従わないものがあれば、前記と同様の機能を設けることで実現可能となる。
また、上述した実施形態の説明において、第2認証ファイルの内容に、ソフトウェアを導入する端末の組み込みソフト(例えば、コンピュータのBIOSや携帯電話、携帯端末などのファームウェア)に保存された端末の製造情報(メーカー名またはメーカー番号、プロダクト名またはプロダクト番号、シリアル番号など)を利用することもできる。但し、ハードウェアの組み込みソフトに、ハードウェアの製造情報を読み取る為のコマンドを設け、ソフトウェア提供者が利用できるよう公開する必要がある。
また、上述した実施形態の説明において、第2認証ファイルの内容に、第1認証ファイルが保存された記憶装置の製造情報(メーカー名またはメーカー番号、プロダクト名またはプロダクト番号、シリアル番号など)を利用することもできる。但し、記憶装置のファームウェアに、製造情報を読み取る為のコマンドを設け、ソフトウェア提供者が利用できるよう公開する必要がある。
また、上述した実施形態の説明において、第2認証ファイルの内容に、ソフトウェアを導入する端末の組み込みソフト(例えば、コンピュータのBIOSや携帯電話、携帯端末などのファームウェア)に保存された端末の製造情報(メーカー名またはメーカー番号、プロダクト名またはプロダクト番号、シリアル番号など)と、第1認証ファイルが保存された記憶装置の製造情報(メーカー名またはメーカー番号、プロダクト名またはプロダクト番号、シリアル番号など)を利用することもできる。但し、端末の組み込みソフトとに記憶装置のファームウェアに、製造情報を読み取る為のコマンドを設け、ソフトウェア提供者が利用できるよう公開する必要がある。
【0016】
【発明の効果】
以上の説明から理解されるように、本発明の請求項1によれば、ソフトウェアの使用期限などの情報を含んだ第1の認証ファイルと、ソフトウェアを使用するユーザー端末を一意に認識するための第2の認証ファイルの2つの認証ファイルが、相互に認証ファイルのコピーによる不正使用とデータ改ざんを検知する役目を果たし、また、一方の認証ファイルを改ざんするには、必ず他方も改ざんする必要があり、いくつもの複雑な作業を行う必要があり、データの改ざんの防止の役目を果たしている。また、ハッシュ関数と暗号化の有効使用、及び、各認証ファイルと暗号キーの定期的な更新も、データの改ざんの防止の役目を果たしている。
また、第1認証ファイルにより使用期限を設け、定期的に承認サーバと認証作業を行う必要性をもたせることで、不正ユーザーの使用を速やかに停止させる措置をとることができる。
前記のような特徴により、ソフトウェアの不正使用を防止している。
前記請求項1の方式では、認証を行った後、記憶装置(例えばハードディスクドライブだとする)を丸ごとコピーすれば、認証期限がきれるまでの一定期間、他のPCでも利用することが可能である。
しかし、請求項2の方式のように、CRTまたは液晶ディスプレイの情報を利用するならば、認証期限を待たずにユーザー環境の変化を知ることができ、それをトリガーとして認証を求めることができる。
仮に、ディスプレイの情報を改ざんしようとしても、専門知識がないと難しい。また、ソフトウェアを使用するために、ディスプレイを使いまわすことは考え難い。よって、請求項1の方式より不正使用を防止する効果は高いと考えられる。
請求項3、4、5の方式は、ハードウェアに付随するソフトウェアからもたらされる情報を利用した方式である。請求項2と同様に、認証期限を待たずにユーザー環境の変化を知ることができ、それをトリガーとして認証を求めることができるため、記憶装置のコピーによる不正使用を防止できる。
請求項2の場合、公的な仕様であるVESAについての知識があれば、ディスプレイ情報の改ざんが可能かもしれないが、請求項3、4、5の場合、ハードウェア・メーカーと同等の知識が必要となる為、不正使用を防止する効果はより高いと考えられる。
【図面の簡単な説明】
【図1】本発明によるソフトウェアの不正使用防止システムの一実施形態の概略図である。
【図2】図1に示したユーザー端末105の構成ブロック図である。
【図3】第1認証ファイルの概要を示す図である。
【図4】第2認証ファイルの概要を示す図である。
【符号の説明】
101 ネットワーク、103 使用権承認サーバー、105 ハードウェア、107 ユーザー情報データベース、109 CPU、111 記憶装置、113 I/F、115 モデム、117 キーボード、119 表示器、121
HD

Claims (5)

  1. ネットワークに接続されたユーザー端末に使用権承認サーバーより前記ネットワークを介して定期的にソフトウェアの使用権を更新または付与することで前記ソフトウェアの不正使用を防止するソフトウェアの不正使用防止システムであって、
    前記ユーザー端末の記憶装置に、前記使用権承認サーバーによって承認された前記ソフトウェアの使用を許可するための第1認証ファイルと第2認証ファイルとが記憶され、
    前記使用権承認サーバーのデータベースに、前記使用権承認サーバーとユーザー端末との通信および各認証ファイルを暗号化するために必要な暗号キーのユーザー情報が記憶され、
    前記第1認証ファイルが、少なくとも前記ソフトウェアのシリアル番号、前記ソフトウェアの使用期限、前記使用権承認サーバーから認証を得た承認時刻、第2認証ファイルに保存された端末情報のハッシュ値、及び前記第1認証ファイルの更新時刻の情報を含んでおり、
    前記第2認証ファイルが、少なくとも前記ソフトウェアを使用する前記ユーザー端末を認識するための前記ソフトウェアの記憶された記憶装置のメーカー名およびボリュームラベルおよびボリュームシリアル番号の端末情報、前記第1認証ファイルの情報のハッシュ値、前記第1認証ファイルの保存位置、及び前記ソフトウェアの暗号キーデータベースの保存位置の情報を含んでおり、
    前記使用権承認サーバーのデータベースおよび前記第1認証ファイルおよび前記第2認証ファイルの情報により前記ソフトウェアの使用が承認されると共に、
    前記第1認証ファイルと第2認証ファイルとが相互に情報の改ざんを検知するように前記使用権承認サーバーのデータベースおよび前記第1認証ファイルおよび前記第2認証ファイルの情報が前記使用権承認サーバーにより定期的に更新されることを特徴とするソフトウェアの不正使用防止システム。
  2. 請求項1のソフトウェアの不正使用防止システムにおいて、前記第2認証ファイルの情報として、前記ソフトウェアを導入する端末に接続されるCRTまたは液晶ディスプレイの製造情報を用いたことを特徴とするソフトウェアの不正使用防止システム。
  3. 請求項1のソフトウェアの不正使用防止システムにおいて、前記第2認証ファイルの情報として、前記ソフトウェアを導入する端末の組み込みソフトに保存されたハードウェアの製造情報を用いたことを特徴とするソフトウェアの不正使用防止システム。
  4. 請求項1のソフトウェアの不正使用防止システムにおいて、前記第2認証ファイルの情報として、前記第1認証ファイルが保存された記憶装置の製造情報を用いたことを特徴とするソフトウェアの不正使用防止システム。
  5. 請求項1のソフトウェアの不正使用防止システムにおいて、前記第2認証ファイルの情報として、前記ソフトウェアを導入する端末の組み込みソフトに保存された端末の製造情報と、前記第1認証ファイルが保存された記憶装置の製造情報を用いたことを特徴とするソフトウェアの不正使用防止システム。
JP2002378233A 2002-12-26 2002-12-26 ソフトウェアの不正使用防止システム Expired - Fee Related JP4245917B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002378233A JP4245917B2 (ja) 2002-12-26 2002-12-26 ソフトウェアの不正使用防止システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002378233A JP4245917B2 (ja) 2002-12-26 2002-12-26 ソフトウェアの不正使用防止システム

Publications (2)

Publication Number Publication Date
JP2004213057A true JP2004213057A (ja) 2004-07-29
JP4245917B2 JP4245917B2 (ja) 2009-04-02

Family

ID=32815172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002378233A Expired - Fee Related JP4245917B2 (ja) 2002-12-26 2002-12-26 ソフトウェアの不正使用防止システム

Country Status (1)

Country Link
JP (1) JP4245917B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006092024A (ja) * 2004-09-21 2006-04-06 Sharp Corp 表示装置、コンテンツデータ配信装置、およびコンテンツデータ配信システム
JP2006155385A (ja) * 2004-11-30 2006-06-15 Fujitsu Ltd 伝送ネットワークにおけるライセンス管理方法
JP2006308636A (ja) * 2005-04-26 2006-11-09 Kenwood Corp 音声データベース製造装置、音声データベース、音片復元装置、音声データベース製造方法、音片復元方法及びプログラム
US8566949B2 (en) 2006-12-12 2013-10-22 Kabushiki Kaisha Toshiba Software component, software component management method, and software component management system
US8887288B2 (en) 2008-02-18 2014-11-11 Ricoh Company, Ltd. Method of detecting software falsification, apparatus configured to detect software falsification, and computer-readable storage medium
US10469709B2 (en) 2016-11-15 2019-11-05 Ricoh Company, Ltd. Devices, systems, and methods for controlling a link with a storage server

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006092024A (ja) * 2004-09-21 2006-04-06 Sharp Corp 表示装置、コンテンツデータ配信装置、およびコンテンツデータ配信システム
JP4615276B2 (ja) * 2004-09-21 2011-01-19 シャープ株式会社 コンテンツデータ配信装置およびコンテンツデータ配信システム
JP2006155385A (ja) * 2004-11-30 2006-06-15 Fujitsu Ltd 伝送ネットワークにおけるライセンス管理方法
JP2006308636A (ja) * 2005-04-26 2006-11-09 Kenwood Corp 音声データベース製造装置、音声データベース、音片復元装置、音声データベース製造方法、音片復元方法及びプログラム
JP4620518B2 (ja) * 2005-04-26 2011-01-26 株式会社ケンウッド 音声データベース製造装置、音片復元装置、音声データベース製造方法、音片復元方法及びプログラム
US8566949B2 (en) 2006-12-12 2013-10-22 Kabushiki Kaisha Toshiba Software component, software component management method, and software component management system
US8887288B2 (en) 2008-02-18 2014-11-11 Ricoh Company, Ltd. Method of detecting software falsification, apparatus configured to detect software falsification, and computer-readable storage medium
US10469709B2 (en) 2016-11-15 2019-11-05 Ricoh Company, Ltd. Devices, systems, and methods for controlling a link with a storage server

Also Published As

Publication number Publication date
JP4245917B2 (ja) 2009-04-02

Similar Documents

Publication Publication Date Title
US10489562B2 (en) Modular software protection
US6857067B2 (en) System and method for preventing unauthorized access to electronic data
JP4278327B2 (ja) コンピュータ・プラットフォームおよびその運用方法
EP1342149B1 (en) Method for protecting information and privacy
KR101067547B1 (ko) 보안 소프트웨어 갱신
CN100568212C (zh) 隔离系统及隔离方法
JP3444227B2 (ja) ソフトウェアの不正使用防止方法
US20060168580A1 (en) Software-management system, recording medium, and information-processing device
WO2010061801A1 (ja) 機密ファイルを保護するためのクライアント・コンピュータ、及びそのサーバ・コンピュータ、並びにその方法及びコンピュータ・プログラム
JP2005079912A (ja) セキュアデータ管理装置
AU6492198A (en) Method and system for networked installation of uniquely customized, authenticable, and traceable software applications
JP4012771B2 (ja) ライセンス管理方法、ライセンス管理システム、ライセンス管理プログラム
JP2008146479A (ja) ソフトウェア部品、ソフトウェア部品管理方法、及びソフトウェア部品管理システム
US7747532B2 (en) Content use management system, content playback apparatus, content use management method, content playback method, and computer program including system date/time information validation
JP5593452B2 (ja) セキュリティレベルを維持するために情報を削除する方法、システム、仲介サーバ、クライアント及びコンピュータプログラム
JP2005157429A (ja) 情報処理装置、情報処理システム及びプログラム
JP4245917B2 (ja) ソフトウェアの不正使用防止システム
JP4588991B2 (ja) ファイル類管理システム
JP2002351565A (ja) 不正使用防止システム、不正使用防止方法及び不正使用防止プログラム
JP2004013488A (ja) 原本性保証電子文書保管サービス方法
JP2007087275A (ja) ライセンス管理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081007

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081224

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090107

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120116

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130116

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140116

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees