JP2004086588A - Software unauthorized use prevention system - Google Patents
Software unauthorized use prevention system Download PDFInfo
- Publication number
- JP2004086588A JP2004086588A JP2002247084A JP2002247084A JP2004086588A JP 2004086588 A JP2004086588 A JP 2004086588A JP 2002247084 A JP2002247084 A JP 2002247084A JP 2002247084 A JP2002247084 A JP 2002247084A JP 2004086588 A JP2004086588 A JP 2004086588A
- Authority
- JP
- Japan
- Prior art keywords
- software
- installation
- smart card
- control unit
- logical operation
- 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
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】オンライン登録の必要がなく、特殊な専用のハードウェア,またはユニークなIDを有するハードウェアを必要とせず、ソフトウェアの不正なインストール及び使用を防止するソフトウェア不正使用防止システムを提供する。
【解決手段】本発明のソフトウェア不正使用防止システムは、所定の論理演算式とインストール可能な回数を示すライセンス数とを有するインストール情報を記憶するスマートカード7と、所定の他論理演算式を記憶し、ソフトウェアのインストールを行うインストール制御部1とを有し、前記スマートカード7及びインストール制御部1が、各々が発生する乱数と前記論理演算式とを用いたチャレンジレスポンス方式による認証処理を行い、インストールの可否を判定し、スマートカード7がソフトウェアのインストールが完了する毎に、前記ライセンス数を減少させることを特徴とする。
【選択図】 図1An object of the present invention is to provide a software unauthorized use prevention system that does not require online registration, does not require special dedicated hardware or hardware having a unique ID, and prevents unauthorized installation and use of software.
A software unauthorized use prevention system according to the present invention stores a smart card (7) storing installation information having a predetermined logical operation expression and a license number indicating the number of installable times, and stores a predetermined other logical operation expression. The smart card 7 and the installation control unit 1 perform an authentication process by a challenge response method using a random number generated by the smart card 7 and the logical operation expression. Is determined, and each time the smart card 7 completes the software installation, the number of licenses is reduced.
[Selection diagram] Fig. 1
Description
【0001】
【発明の属する技術分野】
本発明は、ソフトウェアの不正使用、特に、ライセンス(使用許可)を有さない不正インストールを防止するソフトウェア不正使用防止システムである。
【0002】
【従来の技術】
近年、パーソナルコンピュータが急速に普及し、これに伴い、多くのアプリケーションソフトウェアが記録媒体(コンパクトディスクなど)に記録され、またはネットワークを介して流通するようになっている。
しかしながら、プリケーションソフトウェアがデジタルデータであることで、容易にデータをコピーすることができ、ソフトウェアメーカの著作権が侵害される場合が多くなってきている。
【0003】
このため、従来の不正使用の防止においては、CD(コード)キー(例えば、ライセンスキー,シリアルキーなど)を頒布ファイルに添付し、インストール時に利用者に入力させ、このCDキーをチェック、すなわち、記録媒体に記録されたCDキーとインストール時に入力されるCDキーとが一致しているか否かの比較を行うことで、記録媒体をコピーすることで行われる不正なインストールを防止する方法が用いられている。
【0004】
【発明が解決しようとする課題】
しかしながら、上述した防止方法では、CDキーを記録媒体をコピーしたと同時に、CDキーを何らかの方法で入手することにより、1つのライセンス(正当なCDキー)において、複数の違法記録媒体を用いて、容易に複数のコンピュータにインストールされてしまうこととなり、十分な防止効果を得ることが困難である。
【0005】
このため、防止方法として、▲1▼インストール後の継続使用にオンラインでのサーバへの登録を必須とすることで、ライセンス単位の登録しか行えなくし、不正な使用者(不正インストールを行った利用者)の継続的な使用を制限する、▲2▼コンピュータに不正使用防止の特殊なハードウェアを接続する構成とし、このハードウェアとインストールしたソフトウェアとの間で識別番号などの認証処理を行い、識別番号が一致するなどしてソフトウェア使用の権限を有する(正当性を有する)ことが確認されたときのみソフトウェアの使用を許可する、▲3▼ユニークなIDを有しているハードウェア(例えば、LAN(ローカルエリアネットワーク)カード)が接続されているコンピュータにインストールし、ソフトウェアが起動するとき、記憶しているIDと一致するハードウェアが接続されているか否かを判定することで、ハードディスクを丸ごとコピーして、他のコンピュータで使用することを防止する、等の防止方法が用いられている。
【0006】
ところが、▲1▼の防止方法には、全ての利用者を管理するサーバやオペレータ及びコールセンタを用意する必要があり、ベンダにおける運営のコストが高くなるという問題があり、かつ、全てのユーザに対してオンライン登録を要求するが、ネットワークに接続されていないコンピュータに接続することができないという欠点がある。
【0007】
また、▲2▼の防止方法には、対象となるソフトウェアを使用するコンピュータに対して、上述した専用のハードウェアを接続する構成とするため、ソフトウェアに必ずライセンス確認のハードウェアを添付する必要があり、ソフトウェアのパッケージの価格が高くなるという問題がある。
さらに、▲3▼の防止方法には、ユニークなIDを有している装置がコンピュータに接続されている必要があるが、いずれのコンピュータに必ずしもLANカードなどのユニークなIDを有するハードウェアが接続されているとは限らないため、ソフトウェアを使用できないコンピュータが存在するという問題がある。
【0008】
本発明はこのような背景の下になされたもので、オンライン登録する必要がなく、また、特殊な専用のハードウェアを接続することなく、かつ、ユニークなIDを有するハードウェアを接続することなく、ソフトウェアの不正なインストール及び使用を防止することが可能なソフトウェア不正使用防止システムを提供する事にある。
【0009】
【課題を解決するための手段】
本発明のソフトウェア不正使用防止システムは、所定の論理演算式(所定の第2の論理演算式)とインストール可能な回数を示すライセンス数とを有するインストール情報を記憶するスマートカードと、所定の他の論理演算式(所定の第1の論理演算式)を記憶し、ソフトウェアのインストールを行うインストール制御部とを有し、前記スマートカード及びインストール制御部が、各々が発生する乱数(第1の乱数及び材2の乱数)と前記各論理演算式とを用いたチャレンジレスポンス方式による認証処理を行い、インストールの可否を判定し、スマートカードがソフトウェアのインストールが完了する毎に、前記ライセンス数を減少させることを特徴とする。
【0010】
本発明のソフトウェア不正使用防止システムは、前記スマートカードが、インストール時に作成し、前記インストール制御部に書き込んだインストール識別番号と、前記インストール制御部から読み出したインストール識別番号とを比較し、一致しているこを検出すると、前記ソフトウェアのアンインストールを行い、アンインストールが完了すると、前記ライセンス数を増加させることを特徴とする。
【0011】
本発明のソフトウェア不正使用防止システムは、インストールするソフトウェアのデータが分割されており、前記スマートカードが分割された一部のデータを記憶していることを特徴とする。
本発明のソフトウェア不正使用防止システムは、前記スマートカードが複数のソフトウェアのインストール情報を有していることを特徴とする。
【0012】
本発明のソフトウェア不正使用防止システムは、ソフトウェアをインストールしたコンピュータが障害を起こし、ソフトウェアの使用が行えなくなった場合、スマートカードの生成する、リカバリ有無情報,アンインストール回数情報,スマートカードを識別するカード識別番号を有するリカバリ情報に基づき、このスマートカードのライセンス数の復旧の可否を判定するライセンス復旧サーバを有することを特徴とする。
【0013】
本発明のソフトウェア不正使用防止方法は、所定の論理演算式とインストール可能な回数を示すライセンス数とを有するインストール情報を、スマートカードに記憶する記憶過程と、所定の他の論理演算式をインストール制御部に記憶し、ソフトウェアのインストールを行うインストール過程と、前記スマートカード及びインストール制御部において、各々が発生する乱数と前記各論理演算式とを用いたチャレンジレスポンス方式による認証処理を行い、インストールの可否を判定し、スマートカードがソフトウェアのインストールを完了する毎に、前記ライセンス数を減少させるライセンス数制御過程とを有することを特徴とする。
本発明のソフトウェア不正使用防止方法は、前記スマートカードから、インストールするソフトウェアの分割された一部のデータを読み出す分割ソフトウェア読み出し過程を有していることを特徴とする。
【0014】
本発明のソフトウェア不正使用防止プログラムは、所定の論理演算式とインストール可能な回数を示すライセンス数とを有するインストール情報を、スマートカードに記憶する記憶処理と、所定の他の論理演算式をインストール制御部に記憶し、ソフトウェアのインストールを行うインストール処理と、前記スマートカード及びインストール制御部において、各々が発生する乱数と前記各論理演算式とを用いたチャレンジレスポンス方式による認証処理を行い、インストールの可否を判定し、スマートカードがソフトウェアのインストールを完了する毎に、前記ライセンス数を減少させるライセンス数制御処理とを有することを特徴とするコンピュータにより実行可能なプログラムである。
本発明のソフトウェア不正使用防止プログラムが記録された媒体は、上記ソフトウェア不正使用防止プログラムが記録されたコンピュータが読み取り可能な記録媒体であることを特徴とする。
【0015】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態について説明する。図1は本発明の一実施形態によるソフトウェア不正使用防止システムの構成を示すブロック図である。
この図において、インストール制御部1は、コンピュータPCにおいて、記憶部3に記憶されたインストーラにより、図示しないCPU(中央処理装置)が動作することで実現する機能部であるが、ハードウェアで構成されていてももかまわない。
【0016】
記憶部3は、ソフトウェアがインストールされることにより、実行可能な状態で保存される。
また、記憶部3には、インストール時において、インストール制御部1の機能を実現するためのプログラムが展開される。
インターフェース4は、インストーラや,インストールするソフトウェアのデータを、ネットワークを介して入力する場合に用いられる。
ここでネットワークとは、情報通信網であり、インターネット,公衆及び専用の情報通信網(回線網)等から構成される。
そして、インストール制御部1は、インターフェース4を介して入力される各データ(インストールするソフトウェアのデータなど)を、記憶部3の所定の領域に格納する。
【0017】
ここで、インストーラとは、ソフトウェアのインストール及びアンインストールの処理を行う機能を有するプログラムであり、インストールするソフトウェアに含まれており、インストール及びアンインストールするとき起動される。
また、インストーラには、スマートカード7の記憶部7bに記憶されているソフトウェアの識別番号に対応して、同様な識別番号が記憶されている。
すなわち、スマートカード7とインストールされるソフトウェアとは、このソフトウェアの識別番号で一対一対応するように構成されている。
【0018】
記憶媒体読取器5は、記録媒体(コンパストディスク,DVD(デジタル・ビデオ・ディスク)等)を介して、インストーラや,インストールするソフトウェアのデータを入力する場合に用いられ、読みとられた各データをインストール制御部1の制御により記憶部3に格納する。
カードインターフェース6は、スマートカード(またはIC(集積回路)カード)7と、インストール制御部1との間で、信号の電圧レベルの変換等を行い、データの送受信(さらに、スマートカードの種類によって、データの書き込み,書き換え及び消去の処理を行うスマートカードリーダ/ライタの場合もある)を行うためのインターフェースであり、インストール/アンインストール/リカバリ処理を行う場合に各パーソナルコンピュータPCに接続して用いられる(必要のないときには取り外しておく)。
【0019】
スマートカード7は、制御部7a及び記憶部7bから構成されており、制御部7aがカードインターフェース6からの制御信号に従い、記憶部7bに対して、各データの書き込み,読み出し及び書き換えの処理を行う。
記憶部7bには、ソフトウェア毎に付けられた、ソフトウェアを識別する識別番号と、ソフトウェアのインストール回数を規定するライセンス数とからなるインストール情報が、工場からの出荷時に、予め記憶されている。
【0020】
ここで、上記インストール回数は、1台のコンピュータにインストールした場合、ライセンス数を「1」使用したとして計算された数値であり、ライセンスを供与するパーソナルコンピュータの数、すなわちスマートカード7(実際は記憶部7b)に記憶されている識別番号のソフトウェアをインストールできるコンピュータの数を示している。
インストール制御部1は、所定の演算により第2の乱数を発生し、この第2の乱数をスマートカード7へ送信し、スマートカード7においてこの第2の乱数に基づき、所定の第2の論理演算式により演算された第2の数値を入力し、この第2の数値と、自身で発生したこの第2の乱数に基づき所定の論理で演算した数値とを比較することにより、上記スマートカード7の認証を行い、双方の数値が一致していることを検出すると制御部7aへ一致信号SMを出力する。
【0021】
また、スマートカード7の制御部7aは、所定の演算により第1の乱数を発生し、この第1の乱数をインストール制御部1へ送信し、インストール制御部1においてこの第1の乱数に基づき、所定の第1の論理演算式により演算された第1の数値を入力し、この第1の数値と、自身で発生したこの第1の乱数に基づき所定の論理で演算した数値とを比較することにより、上記インストール制御部1の認証を行い、双方の数値が一致していることを検出すると制御部7aへ一致信号SNを出力する。
上述したインストール制御部1及びスマートカード7において、各々の論理演算式により相互を認証する方式を、チャレンジレスポンス方式とする。
インストール制御部1は、制御部7aから一致信号SNが入力され、かつ制御部7aへ一致信号SMを出力した場合、双方ともに認証されたことを検出して、ソフトウェアのインストール処理を開始する。
【0022】
また、制御部7aは、インストール制御部1から一致信号SMが入力され、かつインストール制御部1へ一致信号SNを出力した場合、双方において認証されたことを検出して、ライセンス数から「1」を減ずる(ライセンス数を削減する)処理を行う。
さらに、制御部7aは、双方において識別番号が一致したことを検出すると、ユニーク(他と区別できる独自な)かつ不可逆なインストールIDを生成し、記憶部7bに保存するとともに、このインストールIDをインストール制御部1へ出力する。
ここで不可逆とは、生成された複数のインストールIDを解析しても、これらを生成した演算式を推定できない意味で使用している(例えば、ユニークな値を利用したハッシュ値生成、及び暗号化等を組み合わせた不可逆演算による生成方法)。
【0023】
また、記憶部7bに分割されたインストールされるソフトウェアデータの分割された一部が記憶されており、制御部7aはインストール処理が開始されると、カードインターフェース6を介してインストール制御部1に対して、このソフトウェアデータの一部を出力する。
すなわち、ソフトウェアのデータは、インストールに必要な全てが、ネットワーク及び記録媒体により供給されてもよく、または分割して流通させても良い。
そして、ソフトウェアのデータを分割した場合、この分割した一部のソフトウェアデータは、工場出荷時にスマートカード7の記憶部7bに記憶させて出荷されることになる。
また、記憶部7bには、工場出荷時に、スマートカード7を識別するカードIDが記憶されている。
【0024】
スマートカード7の制御部7aは、アンインストールが行われる場合、インストール時に作成し、インストール制御部1に送信したインストールID(記憶部3に、インストール制御部1及びカードインターフェース6を介して書き込んだインストールID)と、記憶部7bから読み出したインストールIDとを比較し、一致していることを検出すると、記憶部7bにおけるインストール情報のライセンス数に「1」加算する。
そして、制御部7aは、インストールIDの比較が一致したことを検出すると、インストール制御部1に対してソフトウェアのアンインストールを要求する。
これにより、インストール制御部1は、ソフトウェアのアンインストールの処理を行う。
【0025】
次に、図1、図2,図3及び図4を参照し、一実施形態の動作例を説明する。図2はインストールの動作例を示すフローチャートであり、図3はアンインストールの動作例を示すフリーチャートであり、図4は障害時のリカバリの動作例を示すフローチャートである。
<インストール動作>
前提として、インストール制御部1は、記録媒体読取器5またはネットワークから、インストールに必要なソフトウェアのデータを読み込み、このソフトウェアのデータを記憶部3に記憶している状態とする。
【0026】
そして、利用者は、カードインターフェース6に、スマートカード7を挿入し、インストール作業を開始したとする。
図2に示すステップS1において、利用者がインストール作業の処理を要求する要求信号をパーソナルコンピュータPCへ入力することにより、インストール制御部1及び制御部7aは、インストール処理を開始する。
そして、スマートカード7の制御部7aは、所定の演算により第1の乱数を発生し、カードインターフェース6を介して、この発生した乱数をインストール制御部1へ送信する。
これにより、インストール制御部1は、内部において入力される第1の乱数を所定の第1の論理演算式に基づき演算して、新たな第1の数値を発生し、カードインターフェース6を介して、この新たな数値を制御部7aへ送信する。
そして、制御部7aは、内部においてこの第1の乱数に基づき所定の論理で演算した数値と、入力された新たな第1の数値とを比較することにより、インストール制御部1の認証を行い、演算した数値と入力された新たな第1の数値双方が一致していることを検出した場合、制御部7aへ一致信号SNを出力し、一致しないことを検出した場合、一致信号SNを出力しない。
【0027】
次に、ステップS2において、インストール制御部1は、所定の演算により第2の乱数を発生し、カードインターフェース6を介して、この乱数をスマートカード7へ送信する。
これにより、スマートカード7の制御部7aは、この第2の乱数を所定の第2の論理演算式に基づき演算して、新たな第2の数値を発生し、カードインターフェース6を介して、この新たな第2の数値をインストール制御部1へ送信する。
そして、インストール制御部1は、内部においてこの乱数に基づき所定の論理で演算した数値と、入力された新たな第2の数値とを比較することにより、上記スマートカード7の認証を行い、双方の数値が一致していることを検出した場合、制御部7aへ一致信号SMを出力し、一致しないことを検出した場合、一致信号SMを出力しない。
そして、ステップS3において、インストール制御部1は、制御部7aから一致信号SNが入力され、かつ制御部7aへ一致信号SMを出力すると、双方においてチャレンジレスポンス方式による認証が成功したことを検出する。
【0028】
また、同様に、制御部7aは、インストール制御部1から一致信号SMが入力され、かつインストール制御部1へ一致信号SNを出力すると、双方においてチャレンジレスポンス方式による認証が成功したことを検出する。
インストール制御部1及び制御部7a双方が認証したことを検出すると、インストール処理を行うため、処理はステップS4へ進む。
このとき、インストール制御部1及び制御部7a双方またはいずれか一方において、識別信号の一致が検出されないとき、以降の処理に必要な各データ及び信号が生成されないため、インストールの処理は終了する。
【0029】
次に、ステップS4において、制御部7aは、インストール制御部1とにおける相互の認証の成功を検出したため、記憶部7bのライセンス数を「1」減らして、ライセンスの提供が1つ終了したことを記憶部7bの所定の領域へ記録する。
これにより、スマートカード7を用いて、ソフトウェアのインストールが行える回数が1つ減少したこととなる。
そして、ステップS5において、制御部7aは、ユニークかつ不可逆なインストールIDを生成し、記憶部7bの所定の領域に記憶するとともに、このインストールIDをインストール制御部1へ出力する。
【0030】
次に、ステップS6において、インストール制御部1は、上記インストールIDを入力することにより、ソフトウェアのインストール処理を開始する。
このとき、インストール制御部1は、スマートカード7の制御部7aに対して、記憶部7bに記憶されているインストールするソフトウェアの分割されたデータの送信を要求する要求信号を出力する。
そして、インストール制御部1は、分割されたデータが入力されたことを検出すると、この分割されたデータと、記録媒体読取器5から読み込んだソフトウェアのデータとを、記憶部3において結合し、インストールに必要なソフトウェアの完全なソフトウェアデータを生成し、このソフトウェアデータを用いてインストール処理を行う。
【0031】
<アンインストール動作>
使用するコンピュータを変更するため、パーソナルコンピュータPCからソフトウェアをアンインストールすることとして説明を行う。
利用者は、カードインターフェース6にスマートカード7を挿入し、ソフトウェアのアンインストール作業を開始する。
【0032】
図3に示すステップS11において、利用者がアンインストール作業の処理を要求する要求信号をパーソナルコンピュータPCへ入力することにより、インストール制御部1及び制御部7aは、アンインストール処理を開始する。
そして、スマートカード7の制御部7aは、所定の演算により第1の乱数を発生し、カードインターフェース6を介して、この発生した乱数をインストール制御部1へ送信する。
これにより、インストール制御部1は、内部において入力される第1の乱数を所定の第1の論理演算式に基づき演算して、新たな第1の数値を発生し、カードインターフェース6を介して、この新たな数値を制御部7aへ送信する。
そして、制御部7aは、内部においてこの第1の乱数に基づき所定の論理で演算した数値と、入力された新たな第1の数値とを比較することにより、インストール制御部1の認証を行い、演算した数値と入力された新たな第1の数値双方が一致していることを検出した場合、制御部7aへ一致信号SNを出力し、一致しないことを検出した場合、一致信号SNを出力しない。
【0033】
次に、ステップS12において、インストール制御部1は、所定の演算により第2の乱数を発生し、カードインターフェース6を介して、この乱数をスマートカード7へ送信する。
これにより、スマートカード7の制御部7aは、この第2の乱数を所定の第2の論理演算式に基づき演算して、新たな第2の数値を発生し、カードインターフェース6を介して、この新たな第2の数値をインストール制御部1へ送信する。
そして、インストール制御部1は、内部においてこの乱数に基づき所定の論理で演算した数値と、入力された新たな第2の数値とを比較することにより、上記スマートカード7の認証を行い、双方の数値が一致していることを検出した場合、制御部7aへ一致信号SMを出力し、一致しないことを検出した場合、一致信号SMを出力しない。
そして、ステップS13において、インストール制御部1は、制御部7aから一致信号SNが入力され、かつ制御部7aへ一致信号SMを出力すると、双方においてチャレンジレスポンス方式による認証が成功したことを検出する。
【0034】
また、同様に、制御部7aは、インストール制御部1から一致信号SMが入力され、かつインストール制御部1へ一致信号SNを出力すると、双方において認証が成功したことを検出する。
インストール制御部1及び制御部7a双方が認証の成功を検出すると、アンインストール処理を行うため、処理はステップS14へ進む。
このとき、インストール制御部1及び制御部7a双方またはいずれか一方において、認証が成功しないとき、以降の処理に必要な各データ及び信号が生成されないため、アンインストールの処理は終了する。
【0035】
次に、ステップS14において、インストール制御部1は、識別番号の一致を検出したため、記憶部3に記憶されているインストールIDを読み出し、このインストールIDを、カードインターフェース6を介してスマートカード7の制御部7aへ出力する。
そして、制御部7aは、インストール制御部1から入力されるインストールIDと、記憶部7bから読み出すインストールIDとを比較し、一致していることを確認すると処理をステップS15へ進める。
【0036】
次に、ステップS15において、制御部7aは、インストールIDの一致を検出したため、記憶部7bのライセンス数を「1」増加させて、ライセンスの提供が1つ増えたことを記憶部7bの所定の領域へ記録する。
これにより、スマートカード7を用いて、ソフトウェアのインストールが行える回数が1つ増加したこととなる。
このとき、制御部7aは、記憶部7bのインストールIDを削除する。
そして、ステップS16において、インストール制御部1は、記憶部3に展開されているソフトウェアを消去し、また記憶部3からインストールIDを削除し、アンインストール処理を終了する。
【0037】
<ライセンス復旧時のリカバリ動作>
パーソナルコンピュータPCのOSに異常(障害)が発生し、ハードディスクの交換を行う必要があるため、パーソナルコンピュータPCを廃棄し、新たなパーソナルコンピュータPPCによりスマートカード7内のライセンス数を復旧する処理(このパーソナルコンピュータPCにライセンス供与した数をスマートカード7の記憶部7bのライセンス数を1つ増加させる、すなわちパーソナルコンピュータPCにライセンスを供与する前の状態にライセンス数を戻す)を前提として、以下のリカバリ動作の説明を行う。
【0038】
図4に示すステップS21において、利用者は、パーソナルコンピュータPPCに、スマートカード7のライセンス数をリカバリ(復旧)するため、ネットワークを介して、ライセンス復旧サーバ8からライセンス復旧用ソフトウェアをダウンロードし、このパーソナルコンピュータPPC内部の記憶部に記憶させる。
また、ソフトウェア配布媒体(インストールするソフトウェアが記録された記録媒体)に同梱されていた場合には、パーソナルコンピュータPPCに接続された記録媒体読取器(図示しない)から読み出し、このパーソナルコンピュータPPCの内部の記憶部に記憶させる。
パーソナルコンピュータPPCには、スマートカード7との間において、データの送受信を行うためのインターフェースとして、パーソナルコンピュータPCで使用されたカードインターフェース6が接続されている。
そして、利用者は、上記ライセンス復旧用ソフトウェアを起動し、ライセンス復旧処理を開始する。
【0039】
次に、ステップS22において、利用者は、カードインターフェース6にスマートカード7を挿入し、パーソナルコンピュータPPCに対して、復旧処理の開始信号を入力する。
そして、パーソナルコンピュータPPCは、画像表示により、利用者に対して、インストールIDの入力を促すとともに、カードインターフェース6を介して、制御部7aに対して記憶部7bからインストールIDを読み出し、インストールIDの確認を要求する要求信号を、スマートカード7に対して出力する。
【0040】
これにより、利用者はキーボード等から、いずれかに記録していたインストールIDを、パーソナルコンピュータPPCに入力する。
次に、パーソナルコンピュータPPCは、利用者の入力したインストールIDをスマートカード7へ出力する。
そして、制御部7aは、入力された上記インストールIDと、記憶部7bから読み出したインストールIDとが一致するか否かの判定を行う。
【0041】
次に、ステップS23において、制御部7aは、パーソナルコンピュータPPCから入力されたインストールIDと、記憶部7bから読み出したインストールIDとが一致した場合、処理をステップS24へ進め、一方、一致しない場合処理を終了する。
そして、ステップS24において、制御部7aは、カードを識別するカードID,アンインストールした回数であるアンインストール回数よりなるリカバリ要求情報を生成し、暗号化処理を行い、かつ改竄防止の署名処理をする。
【0042】
次に、制御部7aは、この暗号化したリカバリ情報をライセンス復旧サーバ8への送信を要求する要求信号とともに、パーソナルコンピュータPPCに出力する。
これにより、パーソナルコンピュータPPCは、上記要求信号に基づき、入力される暗号化されたリカバリ情報をライセンス復旧サーバ8へ送信する。
【0043】
次に、ステップS25において、ライセンス復旧サーバ8は、入力される暗号化されたリカバリ要求情報の復号化及び署名の認証を行う。
そして、ライセンス復旧サーバ8は、入力されたリカバリ情報に基づき、リカバリ処理の実行の可否を判定する。
すなわち、ライセンス復旧サーバ8は、リカバリ要求の回数(すなわちアンインストール回数)が所定のアンインストール回数を超えているか否かを検出(同一のスマートカードまたは同一のユーザからのアンインストール回数が平均的な頻度を超えているか否かを検出)するインストール回数累計検査,カードIDに基づき図示しないデータベースにおいて、不正が行われたことがあるか,紛失または盗難の届けの出ているスマートカードとしてデータが登録されているか否かの検出を行うブラックリスト検査等の検査を行う。
【0044】
そして、ステップS26において、ライセンス復旧サーバ8は、▲1▼インストール回数累計検査で所定の設定値の範囲のアンインストール回数であること(アンインストール回数が平均的なアンインストール回数を超えていない状態であること)が検出され、また、▲2▼ブラックリスト検査で不正が行われたことがなく(不正使用フラグが不正の行われていない状態となっている),紛失届けがでていない(紛失届けフラグが紛失届けの出ていない状態となっている),盗難の届けの出ていない(盗難の届けフラグが盗難届の出されていない状態となっている)の3つの検出項目の登録状態が全て検出されると、すなわち上記▲1▼,▲2▼の状態が検出された場合、復旧処理を行うことが可能であることを検出して、処理をステップS27へ進める。
また、復旧要求頻度検査において、平均的な頻度を超えるリカバリ要求回数が認められたユーザに対しては、システムによる自動的なリカバリ処理ではなく、サポート担当者によるリカバリ処理で対応する。
【0045】
一方、ステップS26において、ライセンス復旧サーバ8は、▲3▼インストール回数累計検査で所定の設定値の範囲のアンインストール回数を超えていることが検出されるか、または▲4▼ブラックリスト検査で不正が行われたことがある(不正使用フラグが不正の行われた状態となっている),紛失届けが出ている(紛失届けフラグが紛失届けの出ている状態となっている),盗難の届けが出ている(盗難の届けフラグが盗難届の出された状態となっている)かの▲3▼,▲4▼の2つの検出項目の、いずれかの状態が検出されると、復旧処理を行えない状態であることを検出して、リカバリの処理を終了する。
したがって、ライセンス復旧サーバ8は、復旧要求頻度検査,ブラックリスト検査,及びインストール回数累計検査を各種検査を行い、この検査の検出結果に基づき、リカバリを行うか否かの判定を行う。
【0046】
次に、ステップS27において、ライセンス復旧サーバ8は、リカバリ許可信号を生成して暗号化し、この暗号化したリカバリ許可信号を、スマートカード7への送信を要求する要求信号とともに、パーソナルコンピュータPPCに対して送信する。
そして、ステップS28において、パーソナルコンピュータPPCは、入力される上記要求信号に基づき、カードインターフェース6を介して、暗号化されたリカバリ許可信号をスマートカード7へ送信する。
【0047】
そして、スマートカード7の制御部7aは、入力される暗号化されたリカバリ許可信号を復号化し、この復号化したリカバリ許可信号に基づき、ライセンス数の復旧処理を行う。
すなわち、制御部7aは、上記リカバリ許可信号が入力されたことを検知すると、記憶部7bに記憶されているライセンス数を「1」増加させるとともに、記憶部7bに記憶されているリカバリフラグをリカバリが行われていない状態(「0」)から、リカバリが行われたことを示す状態(「1」)へ書き換え、ライセンス数の復旧処理を終了する。
【0048】
以上、本発明の一実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
上述の一実施形態の説明においては、スマートカード7を用いたインストール処理として、インストールするソフトウェアを1種類の場合で説明した。
しかしながら、スマートカード7を、複数のソフトウェアのインストール処理に対応させて作成することも可能である。
【0049】
すなわち、スマートカード7の記憶部7bに、インストールするソフトウェアの種類毎に対応させて、インストーラとの相互認証を行うための識別番号をソフトウェア毎に設定し、この識別番号毎に対応させてテーブルを作成して、この識別番号毎に、第2の論理演算式,ライセンス数,インストールID,リカバリフラグ,アンインストール回数、インストールするソフトウェアの分割したデータ等の必要なデータを記憶させるようにしてもよい。
【0050】
このとき、ネットワークまたは記録媒体読取器5からインストールするソフトウェアを読み込むが、このソフトウェアに含まれるインストーラは、上記識別番号毎に対応して、第1の論理演算式が設定されているため、スマートカード7がこの識別番号に対応して記憶部7bのテーブルに対して各データ(第1の論理演算式など)の書き込み及び読み出しを行うこと以外、ソフトウェアのインストール処理は、一実施形態の動作と同様に、図2,図3,図4のフローチャートに従い行われる。
さらに、インストールするソフトウェアのデータを分割するとき、スマートカード毎にランダムに分割する場所及びデータ量を変更するようにしてもよい。
これにより、本発明のソフトウェア不正使用防止システムは、スマートカード7の偽造がさらに困難となる効果がある。
【0051】
上述したように、本発明のソフトウェア不正使用防止システムは、インストーラ(インストール制御部1)を認証する第2の論理演算式などのライセンス情報が記憶部7bに記憶され、インストーラに第1の論理演算式が記憶されているため、インストール制御部1と制御部7aとで発生した乱数をそれぞれ他方へ出力し、他方で各々の論理演算式で演算した新たな数値を入力し、この新たな数値と、自身で発生した乱数を処理の論理で演算した数値との比較を行い、一致した場合のみに、相互の認証が成功したとして、インストール作業を行うようにしているため、認証番号及びライセンス数を書きかえる等のライセンス情報の偽造が困難であり、ソフトウェアの不正なインストールを防止することができる。
【0052】
また、本発明のソフトウェア不正使用防止システムは、記録媒体読取器5からインストールするソフトウェアを読み込む場合、インストールに必要とする識別手段として、スマートカード7のみが有れば良く、オンライン登録を行う必要がなく、ソフトウェアのインストールの認証に通信環境が不要であり、インストール/アンインストール時にスマートカード7を使用するだけで済み、利用者を管理するサーバやオペレータ及びコールセンタの設置等の通信環境の設備の必要がソフトウェアの配給元に無く、かつ、利用者のこの通信環境に対する費用負担及び運用負担が低減する効果があり、かつ、ソフトウェアの配給元にインストール/アンインストールにおけるライセンス管理が厳重に行われることが無くなるため、利用者の使いやすさの程度が向上する効果がある。
【0053】
さらに、本発明のソフトウェア不正使用防止システムは、一枚のスマートカード7を、複数のインストールプログラムのライセンス管理に対応させることができるため、複数のソフトウェア毎にインストール/アンインストール時の認証用の手段が必要なくなるため、ソフトウェアの配給元及び利用者のライセンス管理が容易となり、かつ認証用のスマートカード7が複数の種類のソフトウェアのライセンス供与に対して1枚で済みために費用を削減することができる。
【0054】
加えて、本発明のソフトウェア不正使用防止システムは、インストール及びアンインストール時のみ、スマートカード7をカードインターフェース6に挿入して、ソフトウェアとスマートカード7との認証処理(チャレンジレスポンス方式による認証)及びインストールIDの認証を行えば良いため、ライセンス供与をうける複数のパーソナルコンピュータに対して、スマートカード7及びカードインターフェース6(例えば、スマートカードリーダ/ライタ)が1組あればよく、特別なライセンス確認のハードウェアを用いる必要がないため、利用者の費用負担が低減され、かつ、インストール及びアンインストールが完了するとカードインターフェース6を取り外すため、コンピュータ運用環境を従来と同様にできる効果がある。
【0055】
さらに、また、本発明のソフトウェア不正使用防止システムは、インストール及びアンインストール時に、スマートカード7及びカードインターフェース6を使用するのみなので、従来のように、ソフトウェアの利用者がパーソナルコンピュータ毎にユニークなIDを有する装置が接続されているか等の装置環境を考慮する必要がないので、多くのパーソナルコンピュータに対して、一斉に、ソフトウェアのインストール及びアンインストールの処理の効率を向上させる効果がある。
【0056】
また、さらに、本発明のソフトウェア不正使用防止システムは、ライセンス復旧サーバ8を設けることにより、ライセンス供与を受けたソフトウェアがインストールされているパーソナルコンピュータに障害が発生した場合、オンラインでスマートカード7におけるライセンス数の復旧処理が行われるため、ソフトウェア配給元のオペレータによる処理などが必要なく人件費が抑制でき、また利用者もカードインターフェース6にスマートカード7を挿入するのみで済むため、リカバリ操作に必要な時間を低減することにより処理効率が向上するため、ソフトウェア配給元及び利用者双方の費用負担が低減される効果がある。
【0057】
次に、本発明の実施の形態によるコンピュータが実行するためのプログラムについて説明する。
図1におけるソフトウェア不正使用防止システムにおける、パーソナルコンピュータPC及びスマートカード7の各コンピュータシステムのCPUが実行するためのプログラムは、本発明によるプログラムを構成する。
このプログラムを格納するための記録媒体としては、光磁気ディスク、光ディスク、半導体メモリ、磁気記録媒体等を用いることができ、これらをROM、RAM、CD−ROM、フレキシブルディスク、メモリカード等に構成して用いてよい。
【0058】
また上記記録媒体は、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部のRAM等の揮発性メモリのように、一定時間プログラムを保持するものも含まれる。
また上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから伝送媒体を介して、あるいは伝送媒体中の伝送波により他のコンピュータシステムに伝送されるものであってもよい。上記伝送媒体とは、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体をいうものとする。
【0059】
また、上記プログラムは、前述した機能の一部を実現するためであってもよい。さらに、前述した機能をコンピュータシステムに既に記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【0060】
従って、このプログラムを図1のシステム又は装置とは異なるシステム又は装置において用い、そのシステム又は装置のコンピュータがこのプログラムを実行することによっても、上記実施の形態で説明した機能及び効果と同等の機能及び効果を得ることができ、本発明の目的を達成することができる。
【0061】
以上、本発明の一実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等があっても本発明に含まれる。
【0062】
【発明の効果】
上述してきたように、本発明のソフトウェア不正使用防止システムによれば、インストーラ(インストール制御部)を認証する所定の論理演算式などのライセンス情報が記憶部に記憶され、インストーラに他の論理演算式が記憶されているため、インストール制御部とスマートカードとで発生した乱数をそれぞれ他方へ出力し、他方で各々の論理演算式で演算した新たな数値を入力し、この新たな数値と、自身で発生した乱数を処理の論理で演算した数値との比較を行い、一致した場合のみに、相互の認証が成功したとして、インストール作業を行うようにしているため、認証番号及びライセンス数を書きかえる等のライセンス情報の偽造が困難であり、ソフトウェアの不正なインストールを防止することができる
【0063】
また、本発明のソフトウェア不正使用防止システムによれば、記憶媒体からインストールするソフトウェアを読み込む場合、インストールに必要とする識別手段として、スマートカードのみが有れば良く、ソフトウェアのインストールの認証に通信環境が不要であり、インストール/アンインストール時にスマートカード7を使用するだけで済み、利用者を管理するサーバやオペレータ及びコールセンタの設置等の通信環境の設備の必要がソフトウェアの配給元に無く、かつ、利用者のこの通信環境に対する費用負担及び運用負担が低減する効果があり、かつ、ソフトウェアの配給元にインストール/アンインストールにおけるライセンス管理が厳重に行われることが無くなるため、利用者の使いやすさの程度が向上する効果がある。
【図面の簡単な説明】
【図1】本発明の一実施形態によるソフトウェア不正使用防止システムの構成例を示すブロック図である。
【図2】図1のソフトウェア不正使用防止システムにおけるインストールの動作例を示すフローチャートである。
【図3】図1のソフトウェア不正使用防止システムにおけるアンインストールの動作例を示すフローチャートである。
【図4】図1のソフトウェア不正使用防止システムにおけるリカバリの動作例を示すフローチャートである。
【符号の説明】
1 インストール制御部
3,7b 記憶部
4 インターフェース
5 記録媒体読取器
6 カードインターフェース
7 スマートカード
7a 制御部
8 ライセンス復旧サーバ
PC,PPC パーソナルコンピュータ[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention is a software unauthorized use prevention system that prevents unauthorized use of software, particularly, unauthorized installation without a license (permission to use).
[0002]
[Prior art]
2. Description of the Related Art In recent years, personal computers have rapidly spread, and with this, many application softwares have been recorded on recording media (such as compact discs) or distributed via networks.
However, since the application software is digital data, the data can be easily copied, and the copyright of the software maker is often infringed.
[0003]
For this reason, in the conventional prevention of unauthorized use, a CD (code) key (for example, a license key, a serial key, etc.) is attached to a distribution file, and is input by a user at the time of installation, and the CD key is checked. A method for preventing unauthorized installation performed by copying the recording medium by comparing whether the CD key recorded on the recording medium matches the CD key input at the time of installation is used. ing.
[0004]
[Problems to be solved by the invention]
However, in the above-described prevention method, the CD key is copied to the recording medium, and at the same time, the CD key is obtained by some method, so that one license (valid CD key) uses a plurality of illegal recording media, It is easily installed on a plurality of computers, and it is difficult to obtain a sufficient prevention effect.
[0005]
For this reason, as a prevention method, (1) registration to the server online is required for continued use after installation, so that only license units can be registered, and unauthorized users (users who have performed unauthorized installation) (2) The configuration is such that special hardware for preventing unauthorized use is connected to the computer, and authentication processing such as an identification number is performed between the hardware and the installed software to identify the computer. 3. Use of software is permitted only when it is confirmed that the user has the right to use the software (has legitimacy) because the numbers match, etc. (3) Hardware having a unique ID (for example, LAN (Local Area Network) card) installed on the connected computer and when the software starts By judging whether or not hardware that matches the stored ID is connected, the entire hard disk is copied and prevented from being used by another computer. I have.
[0006]
However, the method (1) requires a server, an operator, and a call center to manage all users, which raises the problem of high operating costs at the vendors. However, there is a drawback that the user cannot connect to a computer not connected to the network.
[0007]
In the method of preventing (2), since the above-mentioned dedicated hardware is connected to the computer using the target software, it is necessary to attach license confirmation hardware to the software. There is a problem that the price of the software package is high.
Further, in the method of preventing (3), a device having a unique ID needs to be connected to a computer, and hardware having a unique ID such as a LAN card is not necessarily connected to any computer. However, there is a problem that some computers cannot use the software.
[0008]
The present invention has been made under such a background, and there is no need to register online, without connecting special dedicated hardware, and without connecting hardware having a unique ID. Another object of the present invention is to provide a software unauthorized use prevention system capable of preventing unauthorized installation and use of software.
[0009]
[Means for Solving the Problems]
The system for preventing unauthorized use of software according to the present invention includes a smart card storing installation information having a predetermined logical operation expression (a predetermined second logical operation expression) and a license number indicating the number of installable times; An installation control unit that stores a logical operation expression (predetermined first logical operation expression) and installs software, wherein the smart card and the installation control unit generate random numbers (first random number and Performing authentication processing by a challenge response method using the random number of the material 2) and each of the logical operation expressions, determining whether or not the installation is possible, and reducing the number of licenses each time the smart card completes the software installation. It is characterized by.
[0010]
The software unauthorized use prevention system of the present invention compares the installation identification number created by the smart card at the time of installation and written to the installation control unit with the installation identification number read from the installation control unit, When the presence is detected, the software is uninstalled, and when the uninstallation is completed, the number of licenses is increased.
[0011]
The software unauthorized use prevention system according to the present invention is characterized in that data of software to be installed is divided, and the smart card stores a part of the divided data.
The system for preventing unauthorized use of software according to the present invention is characterized in that the smart card has installation information of a plurality of software.
[0012]
The system for preventing unauthorized use of software according to the present invention is a card for generating a smart card, recovery presence / absence information, uninstallation count information, and a smart card identification card when a computer on which the software is installed fails and the software cannot be used. It is characterized by having a license recovery server that determines whether or not the number of licenses of the smart card can be recovered based on the recovery information having the identification number.
[0013]
The method for preventing unauthorized use of software according to the present invention includes a step of storing installation information having a predetermined logical operation expression and the number of licenses indicating the number of installable times in a smart card, and installing and controlling a predetermined other logical operation expression. The smart card and the installation control unit perform authentication processing by a challenge response method using random numbers generated by the smart card and the logical operation formulas, and determine whether the installation is possible. And controlling the number of licenses each time the smart card completes installation of the software.
The method for preventing unauthorized use of software according to the present invention is characterized in that the method includes a step of reading out divided software of the software to be installed from the smart card.
[0014]
The software unauthorized use prevention program according to the present invention includes a storage process for storing, in a smart card, installation information having a predetermined logical operation expression and a license number indicating the number of installable times, and installing and controlling a predetermined other logical operation expression. The smart card and the installation control unit perform authentication processing by a challenge response method using random numbers generated by the smart card and the logical operation expressions, and determine whether the installation is possible. And a license number control process for reducing the number of licenses each time the smart card completes the installation of the software.
A medium on which the software unauthorized use prevention program of the present invention is recorded is a computer-readable recording medium on which the software unauthorized use prevention program is recorded.
[0015]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a software unauthorized use prevention system according to an embodiment of the present invention.
In FIG. 1, an
[0016]
The
In addition, a program for realizing the function of the
The
Here, the network is an information communication network, and includes the Internet, the public, a dedicated information communication network (circuit network), and the like.
Then, the
[0017]
Here, the installer is a program having a function of performing software installation and uninstallation processing, is included in the software to be installed, and is activated when installation and uninstallation are performed.
The installer also stores a similar identification number corresponding to the identification number of the software stored in the
That is, the smart card 7 and the software to be installed are configured to correspond one-to-one with the identification number of the software.
[0018]
The storage medium reader 5 is used when inputting data of an installer or software to be installed via a recording medium (such as a compass disc or a DVD (digital video disc)). Is stored in the
The
[0019]
The smart card 7 includes a
The
[0020]
Here, the number of installations is a numerical value calculated assuming that the number of licenses is "1" when installed on one computer, and is the number of personal computers to which licenses are provided, that is, the smart card 7 (actually, the storage unit). 7b) shows the number of computers on which the software of the identification number stored in 7b) can be installed.
The
[0021]
Further, the
In the above-described
When the match signal SN is input from the
[0022]
Further, when the match signal SM is input from the install
Further, upon detecting that the identification numbers match on both sides, the
Here, irreversible is used in the sense that even if a plurality of generated installation IDs are analyzed, the arithmetic expression that generated them cannot be estimated (for example, hash value generation using a unique value and encryption). Generation method by irreversible operation combining the above).
[0023]
Also, the divided part of the divided software data to be installed is stored in the
That is, all the software data required for installation may be supplied via a network and a recording medium, or may be distributed in a divided manner.
When the software data is divided, a part of the divided software data is stored in the
The
[0024]
When the uninstallation is performed, the
When detecting that the comparisons of the installation IDs match, the
Thereby, the
[0025]
Next, an operation example of one embodiment will be described with reference to FIGS. 1, 2, 3, and 4. FIG. FIG. 2 is a flowchart showing an operation example of installation, FIG. 3 is a free chart showing an operation example of uninstallation, and FIG. 4 is a flowchart showing an operation example of recovery at the time of failure.
<Installation operation>
As a premise, the
[0026]
Then, it is assumed that the user inserts the smart card 7 into the
In step S1 shown in FIG. 2, when the user inputs a request signal requesting the processing of the installation work to the personal computer PC, the
Then, the
As a result, the
Then, the
[0027]
Next, in step S2, the
Thus, the
Then, the
Then, in step S3, when the match signal SN is input from the
[0028]
Similarly, when the match signal SM is input from the install
When both the install
At this time, when the
[0029]
Next, in step S4, the
As a result, the number of times that software can be installed using the smart card 7 is reduced by one.
Then, in step S5, the
[0030]
Next, in step S6, the
At this time, the
When the
[0031]
<Uninstall operation>
The description will be made assuming that software is uninstalled from the personal computer PC in order to change the computer to be used.
The user inserts the smart card 7 into the
[0032]
In step S11 shown in FIG. 3, when the user inputs a request signal for requesting the process of the uninstallation work to the personal computer PC, the install
Then, the
As a result, the
Then, the
[0033]
Next, in step S12, the
Thus, the
Then, the
Then, in step S13, when the match signal SN is input from the
[0034]
Similarly, when the match signal SM is input from the install
When both the
At this time, if the authentication is not successful in both or one of the
[0035]
Next, in step S14, since the
Then, the
[0036]
Next, in step S15, the
This means that the number of times that software can be installed using the smart card 7 has been increased by one.
At this time, the
Then, in step S16, the
[0037]
<Recovery operation at license recovery>
Since an error (failure) occurs in the OS of the personal computer PC and it is necessary to replace the hard disk, the personal computer PC is discarded, and the number of licenses in the smart card 7 is restored by a new personal computer PPC (this process). Assuming that the number of licenses provided to the personal computer PC is increased by one in the
[0038]
In step S21 shown in FIG. 4, the user downloads license recovery software from the
In the case where the package is bundled with a software distribution medium (a recording medium on which software to be installed is recorded), the data is read out from a recording medium reader (not shown) connected to the personal computer PPC, and is stored in the personal computer PPC. In the storage unit.
The
Then, the user starts the license recovery software and starts the license recovery processing.
[0039]
Next, in step S22, the user inserts the smart card 7 into the
Then, the personal computer PPC prompts the user to input an installation ID by displaying an image, reads the installation ID from the
[0040]
As a result, the user inputs the installation ID recorded on one of them from the keyboard or the like to the personal computer PPC.
Next, the personal computer PPC outputs the installation ID input by the user to the smart card 7.
Then, the
[0041]
Next, in step S23, when the install ID input from the personal computer PPC matches the install ID read from the
Then, in step S24, the
[0042]
Next, the
Thereby, the personal computer PPC transmits the input encrypted recovery information to the
[0043]
Next, in step S25, the
Then, the
That is, the
[0044]
Then, in step S26, the
In addition, in the recovery request frequency inspection, a user for whom the number of recovery requests exceeding the average frequency is recognized is handled not by the system's automatic recovery processing but by the recovery processing by a support person.
[0045]
On the other hand, in step S26, the
Therefore, the
[0046]
Next, in step S27, the
Then, in step S28, the personal computer PPC transmits an encrypted recovery permission signal to the smart card 7 via the
[0047]
Then, the
That is, when detecting that the recovery permission signal has been input, the
[0048]
As described above, one embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and there are design changes and the like within a range not departing from the gist of the present invention. Are also included in the present invention.
In the description of the above-described embodiment, the case where only one type of software is installed has been described as the installation process using the smart card 7.
However, it is also possible to create the smart card 7 in correspondence with a plurality of software installation processes.
[0049]
That is, in the
[0050]
At this time, the software to be installed is read from the network or the recording medium reader 5, and the installer included in this software sets the smart card because the first logical operation expression is set corresponding to each of the identification numbers. The software installation process is the same as the operation of the embodiment, except that the software 7 performs writing and reading of data (eg, the first logical operation formula) to and from the table of the
Further, when dividing the data of the software to be installed, a place and a data amount to be divided at random may be changed for each smart card.
Thus, the system for preventing unauthorized use of software of the present invention has an effect that forgery of the smart card 7 becomes more difficult.
[0051]
As described above, in the software unauthorized use prevention system of the present invention, the license information such as the second logical operation expression for authenticating the installer (install control unit 1) is stored in the
[0052]
In the software unauthorized use prevention system of the present invention, when reading software to be installed from the recording medium reader 5, only the smart card 7 needs to be provided as identification means required for installation, and it is necessary to perform online registration. There is no need for a communication environment for software installation authentication, only a smart card 7 is required for installation / uninstallation, and there is a need for communication environment facilities such as a server for managing users, an operator and a call center. Is not available at the software distribution source, has the effect of reducing the cost burden and operation burden of the user on this communication environment, and strict license management in installation / uninstallation is performed at the software distribution source. Ease of use for users There is an effect that the degree of is improved.
[0053]
Furthermore, since the software unauthorized use prevention system of the present invention can make one smart card 7 correspond to license management of a plurality of installation programs, a means for authentication at the time of installation / uninstallation for each of a plurality of software is provided. This makes it easier to manage licenses for software distributors and users, and reduces costs because only one authentication smart card 7 is required for licensing a plurality of types of software. it can.
[0054]
In addition, the software unauthorized use prevention system of the present invention inserts the smart card 7 into the
[0055]
Furthermore, since the system for preventing unauthorized use of software of the present invention only uses the smart card 7 and the
[0056]
Further, the system for preventing unauthorized use of software of the present invention further comprises the provision of the
[0057]
Next, a program executed by a computer according to the embodiment of the present invention will be described.
The programs executed by the CPUs of the computer systems of the personal computer PC and the smart card 7 in the software unauthorized use prevention system in FIG. 1 constitute a program according to the present invention.
As a recording medium for storing this program, a magneto-optical disk, an optical disk, a semiconductor memory, a magnetic recording medium, or the like can be used, and these are configured in a ROM, a RAM, a CD-ROM, a flexible disk, a memory card, or the like. May be used.
[0058]
The recording medium stores the program for a certain period of time, such as a volatile memory such as an internal RAM of a computer system serving as a server or a client when the program is transmitted through a network such as the Internet or a communication line such as a telephone line. What is retained is also included.
Further, the above program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. The transmission medium is a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line.
[0059]
Further, the program may be for realizing a part of the functions described above. Furthermore, what can implement | achieve the function mentioned above in combination with the program already recorded on the computer system, and what is called a difference file (difference program) may be sufficient.
[0060]
Therefore, when this program is used in a system or apparatus different from the system or apparatus of FIG. 1 and the computer of the system or apparatus executes this program, the functions and effects equivalent to those described in the above embodiment can be obtained. And an effect can be obtained, and the object of the present invention can be achieved.
[0061]
As described above, one embodiment of the present invention has been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and there are design changes and the like within a range not departing from the gist of the present invention. Are also included in the present invention.
[0062]
【The invention's effect】
As described above, according to the software unauthorized use prevention system of the present invention, license information such as a predetermined logical operation expression for authenticating an installer (installation control unit) is stored in the storage unit, and another logical operation expression is stored in the installer. Is stored, the random numbers generated by the installation control unit and the smart card are each output to the other, and on the other hand, a new numerical value calculated by each logical operation formula is input, and this new numerical value and The generated random number is compared with the numerical value calculated by the logic of the processing. Only when they match, it is determined that mutual authentication has succeeded and the installation work is performed, so the authentication number and the number of licenses are rewritten. It is difficult to forge the license information of Microsoft, and it can prevent unauthorized installation of software
[0063]
According to the software unauthorized use prevention system of the present invention, when reading software to be installed from a storage medium, only a smart card is required as identification means required for installation, and the communication environment is used for authentication of software installation. Is not necessary, only the smart card 7 is used at the time of installation / uninstallation, and there is no need for a communication environment such as installation of a server for managing users, an operator, and a call center at a software distribution source, and This has the effect of reducing the cost burden and operation burden of the user on this communication environment, and also eliminates the need to strictly manage licenses during installation / uninstallation at the software distributor. There is an effect of improving the degree.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration example of a software unauthorized use prevention system according to an embodiment of the present invention.
FIG. 2 is a flowchart showing an operation example of installation in the software unauthorized use prevention system of FIG. 1;
FIG. 3 is a flowchart showing an operation example of uninstallation in the software unauthorized use prevention system of FIG. 1;
4 is a flowchart showing an example of a recovery operation in the software unauthorized use prevention system of FIG. 1;
[Explanation of symbols]
1 Installation control unit
3,7b storage unit
4 Interface
5 Recording medium reader
6 Card interface
7 Smart card
7a Control unit
8 License recovery server
PC, PPC Personal computer
Claims (9)
所定の他の論理演算式を記憶し、ソフトウェアのインストールを行うインストール制御部と
を有し、
前記スマートカード及びインストール制御部が、各々が発生する乱数と前記各論理演算式とを用いたチャレンジレスポンス方式による認証処理を行い、インストールの可否を判定し、スマートカードがソフトウェアのインストールが完了する毎に、前記ライセンス数を減少させることを特徴とするソフトウェア不正使用防止システム。A smart card that stores installation information having a predetermined logical operation expression and the number of licenses indicating the number of installable times,
An installation control unit that stores a predetermined other logical operation expression and installs software,
The smart card and the installation control unit perform an authentication process based on a challenge response method using the random numbers generated by the smart card and the respective logical operation expressions, determine whether or not the installation is possible. And a software unauthorized use preventing system for reducing the number of licenses.
所定の他の論理演算式をインストール制御部に記憶し、ソフトウェアのインストールを行うインストール過程と、
前記スマートカード及びインストール制御部において、各々が発生する乱数と前記各論理演算式とを用いたチャレンジレスポンス方式による認証処理を行い、インストールの可否を判定し、スマートカードがソフトウェアのインストールを完了する毎に、前記ライセンス数を減少させるライセンス数制御過程と
を有することを特徴とするソフトウェア不正使用防止方法。A storage step of storing, in a smart card, installation information having a predetermined logical operation expression and a license number indicating the number of installable times,
An installation process of storing a predetermined other logical operation expression in the installation control unit and installing software;
The smart card and the installation control unit perform an authentication process by a challenge response method using random numbers generated by the smart card and the respective logical operation expressions, determine whether or not to install the software, and each time the smart card completes the software installation. And a license number control step of reducing the number of licenses.
所定の他の論理演算式をインストール制御部に記憶し、ソフトウェアのインストールを行うインストール処理と、
前記スマートカード及びインストール制御部において、各々が発生する乱数と前記各論理演算式とを用いたチャレンジレスポンス方式による認証処理を行い、インストールの可否を判定し、スマートカードがソフトウェアのインストールを完了する毎に、前記ライセンス数を減少させるライセンス数制御処理と
を有することを特徴とするコンピュータにより実行可能なソフトウェア不正使用防止プログラム。A storage process for storing in a smart card installation information having a predetermined logical operation expression and the number of licenses indicating the number of installable times,
An installation process of storing another predetermined logical operation expression in the installation control unit and installing software;
The smart card and the installation control unit perform an authentication process by a challenge response method using random numbers generated by the smart card and the respective logical operation expressions, determine whether or not to install the software, and each time the smart card completes the software installation. A license number control process for reducing the number of licenses, the computer-executable software unauthorized use prevention program.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002247084A JP2004086588A (en) | 2002-08-27 | 2002-08-27 | Software unauthorized use prevention system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2002247084A JP2004086588A (en) | 2002-08-27 | 2002-08-27 | Software unauthorized use prevention system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2004086588A true JP2004086588A (en) | 2004-03-18 |
Family
ID=32054819
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2002247084A Pending JP2004086588A (en) | 2002-08-27 | 2002-08-27 | Software unauthorized use prevention system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2004086588A (en) |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005267368A (en) * | 2004-03-19 | 2005-09-29 | Fuji Xerox Co Ltd | Peripheral equipment driver installation device, peripheral equipment, peripheral equipment driver installation system, and peripheral equipment driver installation method |
| JP2008027116A (en) * | 2006-07-20 | 2008-02-07 | Glory Ltd | Security control device, ic card, and security control method |
| JP2008538831A (en) * | 2005-04-14 | 2008-11-06 | サンディスク アイエル リミテッド | Content distribution system |
| JP2009259237A (en) * | 2008-03-27 | 2009-11-05 | Giken Shoji International Co Ltd | License external memory |
| US7817984B2 (en) | 2005-12-28 | 2010-10-19 | Ntt Docomo, Inc. | Mobile communication terminal and computer program thereof, IC card and computer program thereof, and mobile communication terminal system |
| JP2011215694A (en) * | 2010-03-31 | 2011-10-27 | Sony Corp | Information processing apparatus and method, information providing apparatus and method, and program |
| WO2017033310A1 (en) * | 2015-08-26 | 2017-03-02 | ルネサスエレクトロニクス株式会社 | License management method, semiconductor device suitable for license management, and license management system |
-
2002
- 2002-08-27 JP JP2002247084A patent/JP2004086588A/en active Pending
Cited By (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2005267368A (en) * | 2004-03-19 | 2005-09-29 | Fuji Xerox Co Ltd | Peripheral equipment driver installation device, peripheral equipment, peripheral equipment driver installation system, and peripheral equipment driver installation method |
| JP2008538831A (en) * | 2005-04-14 | 2008-11-06 | サンディスク アイエル リミテッド | Content distribution system |
| US8522048B2 (en) | 2005-04-14 | 2013-08-27 | Sandisk Il Ltd. | Content delivery system |
| US7817984B2 (en) | 2005-12-28 | 2010-10-19 | Ntt Docomo, Inc. | Mobile communication terminal and computer program thereof, IC card and computer program thereof, and mobile communication terminal system |
| JP2008027116A (en) * | 2006-07-20 | 2008-02-07 | Glory Ltd | Security control device, ic card, and security control method |
| JP2009259237A (en) * | 2008-03-27 | 2009-11-05 | Giken Shoji International Co Ltd | License external memory |
| JP2011003210A (en) * | 2008-03-27 | 2011-01-06 | Giken Shoji International Co Ltd | License external memory |
| JP2011215694A (en) * | 2010-03-31 | 2011-10-27 | Sony Corp | Information processing apparatus and method, information providing apparatus and method, and program |
| WO2017033310A1 (en) * | 2015-08-26 | 2017-03-02 | ルネサスエレクトロニクス株式会社 | License management method, semiconductor device suitable for license management, and license management system |
| JPWO2017033310A1 (en) * | 2015-08-26 | 2017-10-19 | ルネサスエレクトロニクス株式会社 | License management method, semiconductor device suitable for license management, and license management system |
| US10936702B2 (en) | 2015-08-26 | 2021-03-02 | Renesas Electronics Corporation | License managing method, semiconductor device suitable for license management and license managing system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1342149B1 (en) | Method for protecting information and privacy | |
| US7073197B2 (en) | Methods and apparatus for protecting information | |
| US7134016B1 (en) | Software system with a biometric dongle function | |
| US6857067B2 (en) | System and method for preventing unauthorized access to electronic data | |
| US6411941B1 (en) | Method of restricting software operation within a license limitation | |
| JP4278327B2 (en) | Computer platform and operation method thereof | |
| JP3688356B2 (en) | Licensee notification system | |
| US6108420A (en) | Method and system for networked installation of uniquely customized, authenticable, and traceable software application | |
| WO2002035362A1 (en) | Communication system, terminal, reproduction program, recorded medium on which reproduction program is recorded, server device, server program, and recorded medium on which server program is recorded | |
| JP2002373029A (en) | How to prevent unauthorized copying of software using IC tags | |
| WO2002059894A1 (en) | Recording medium, information processing device, content distribution server, method, program, and its recording medium | |
| EP1766565A2 (en) | Apparatus and method for managing digital rights with arbitration | |
| JP3902146B2 (en) | Application authentication method for personal portable terminals | |
| JP2004086588A (en) | Software unauthorized use prevention system | |
| US20090271875A1 (en) | Upgrade Module, Application Program, Server, and Upgrade Module Distribution System | |
| KR20020051612A (en) | Prevention Of Illegal Software Usage Using Install Key Management Server | |
| WO2006101765A2 (en) | Method for preventing unauthorized installation of a software product | |
| JP2004185404A (en) | Installation method and device, program recording medium and program, and information recording medium |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20031120 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050310 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080916 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081117 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20090106 |