JP3930576B2 - ソフトウェア不正使用防止機能を備えたコンピュータシステム - Google Patents

ソフトウェア不正使用防止機能を備えたコンピュータシステム Download PDF

Info

Publication number
JP3930576B2
JP3930576B2 JP17382595A JP17382595A JP3930576B2 JP 3930576 B2 JP3930576 B2 JP 3930576B2 JP 17382595 A JP17382595 A JP 17382595A JP 17382595 A JP17382595 A JP 17382595A JP 3930576 B2 JP3930576 B2 JP 3930576B2
Authority
JP
Japan
Prior art keywords
installer
password
computer
identification code
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.)
Expired - Lifetime
Application number
JP17382595A
Other languages
English (en)
Other versions
JPH0926875A (ja
Inventor
純 五十嵐
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP17382595A priority Critical patent/JP3930576B2/ja
Publication of JPH0926875A publication Critical patent/JPH0926875A/ja
Application granted granted Critical
Publication of JP3930576B2 publication Critical patent/JP3930576B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

【0001】
【産業上の利用分野】
本発明は、ソフトウェア不正使用防止機能を備えたコンピュータシステムに関する。
【0002】
【従来の技術】
ソフトウェアの不正使用は、ソフトウェア会社の存立に関わるので、各種の不正使用防止方法が提案されている。
第1の方法(特開平5−204945号公報)では、ソフトウェアの製品版を暗号化し、暗号化していない試用版と共にCDROMに記録し、これを無料配布しておき、試用版を実行して気に入ったら、ソフトウェア販売会社のベンダーコンピュータにユーザコンピュータを電話回線で接続して注文し、パスワードを受信し、暗号化ソフトウェアを複号して通常のコードに戻す。
【0003】
詳説すれば、ユーザは、マシン識別コードメモリ及び暗号解読ICを備えたCDROM駆動装置及びCDROM用システムプログラムが記録されたフロッピーディスクを購入した後、ユーザ登録葉書にユーザ情報を記入してソフトウェア販売会社に送付し、ソフトウェア販売会社は、このユーザ情報をベンダーコンピュータに登録し、ユーザへCDROMを無料配布する。
【0004】
ユーザは、これらフロッピーディスク及びCDROMをユーザコンピュータに装着し、フロッピーディスク内のCDROM用システムプログラムを起動し、処理メニューの中の購入手続き処理を実行させ、ソフトウェア注文情報をキーボードから入力する。ユーザコンピュータは、これに応答して、電話回線を介しソフトウェア販売会社のベンダーコンピュータに接続し、マシン識別コードを含むソフトウェア注文情報を送信する。
【0005】
ベンダーコンピュータは、このソフトウェア注文情報に基づいて、販売許否判定を行い、販売を許可すると、注文したソフトウェアに対応したパスワードを、電話回線を介しユーザコンピュータへ送信する。
ユーザコンピュータは、このパスワードとマシン識別コードとを合成して照合用パスワードを生成し、これをCDROM駆動装置内の照合用登録パスワードと比較し、両者が一致すれば、CDROM駆動装置内の暗号解読ICにより、CDROM内の暗号化されたソフトウェアを複号して通常のコードに変換し、ソフトウェアを利用可能にする。
【0006】
このような第1方法では、暗号化されたソフトウェアの不正使用を防止できるが、通常のコードに変換され後のソフトウェアをコピーして不正使用するのを防止できない。
そこで、第2の方法(特開平5−334072号公報)では、実行形式のソフトウェアモジュールに、例外処理命令及び製品番号を含む資格検証トリガを挿入しておく。ソフトウェア販売会社は、ユーザーからのソフトウェア注文に応じ、ユーザのマシン識別コード及びソフトウェア製品番号に基づいて、暗号化された資格付与キーを生成し、これをユーザに与える。ユーザは、注文したソフトウェアの実行前に、資格付与キーをユーザコンピュータに入力しておく。注文したソフトウェアを実行し、資格検証トリガに出会うと、例外処理ルーチンが実行される。すなわち、ユーザコンピュータのマシン識別コードが読み取られ、マシン識別コードに基づいて資格付与キーが解読され、解読された資格付与キー中の製品番号が、資格検証トリガ中の製品番号と比較され、両者が一致すれば資格検証トリガの次の命令を実行し、不一致であれば処理を終了する。
【0007】
【発明が解決しようとする課題】
上記第1の方法では、最初、異なるソフトウェア販売会社毎に、ユーザ登録葉書にユーザ情報を記入してソフトウェア販売会社に送付し、このユーザ情報をベンダーコンピュータに予め登録しておかなければならならず、また、所望のソフトウェア以外に、注文用ソフトウェアが必要になる。さらに、特別な暗号解読ICが必要となるので、コスト高になる。
【0008】
また、第2の方法では、各種条件下で実行の際に必ず資格検証トリガに出会うように、ソフトウェアモジュールに多数の資格検証トリガを挿入しなければならない。使用条件によっては、資格検証トリガに出会わない場合が生じ、不正使用が可能になる。必ず資格検証トリガに出会うようにするには、ソフトウェアモジュール毎に、資格検証トリガ挿入位置を決定する必要があるので、煩雑である。
【0009】
本発明の目的は、上記問題点に鑑み、簡単な構成又は手続きで不正使用を防止することが可能な、ソフトウェア不正使用防止機能を備えた記憶媒体、コンピュータ及びコンピュータシステムを提供することにある。
【0010】
本発明の第1態様では、ユーザコンピュータと、目的とするソフトウェアをインストールするインストーラが記憶され、該ユーザコンピュータにより読み書き可能な記憶媒体と、ベンダーコンピュータと、を有するコンピュータシステムにおいて、
該ユーザコンピュータは該インストーラに従って、
該ユーザコンピュータのマシン識別コードを読み取り、該インストーラにパスワードが設定されているか否かを判定し、
該パスワードが該インストーラに設定されていないと判定した場合には、
該マシン識別コード及び該ソフトウェアの識別コードを含むユーザ登録情報を該ベンダーコンピュータに送信し、
該ベンダーコンピュータからパスワードを受信し、
該記憶媒体に記憶されたインストーラを、該パスワードが設定されたインストーラに更新し、
この更新の後に、目的とするソフトウェアをインストールし、
該パスワードが該インストーラに設定されていると判定した場合には、
該パスワードと該マシン識別コードとの間で所定演算を行ってその演算結果を取得し、
該演算結果が、該インストーラに設定されている許可値に一致したか否かを判定し、
該演算結果が、該許可値に一致したと判定したときには、該インストールを実行し、該演算結果が該許可値に一致しなかったと判定したときには、不正使用事実を前記ベンダーコンピュータに送信し、
該ベンダーコンピュータは、該ユーザコンピュータから、該マシン識別コード及び該ソフトウェアの識別コードを含む該ユーザ登録情報を受信して登録し、該マシン識別コードと該ソフトウェア識別コードにより定まる定数との間で前記所定演算の逆演算を行ってその演算結果をパスワードとし、該パスワードを該ユーザコンピュータに送信する。
【0011】
この態様によれば、インストーラ本体に簡単な構成を付加することにより、マシン識別コードの異なるユーザコンピュータでのインストールができなくなるので、不正使用が防止され、かつ、インストーラと別個の注文用ソフトウェアが不要となり、さらに、初回インストーラ実行の際に、通信によりユーザ登録及びパスワードPWの送受が行われるので、ユーザ側及びベンダー側の手間が省ける。
【0012】
また、初回インストーラの実行によりインストーラ本体も実行されてインストールが行われるため、ユーザ側の手間が省ける。
【0013】
さらに、ベンダー側において不正インストールを自動的に把握でき、不正インストールに対する救済が容易になり、結果として不正インストール防止効果が高められる。
本発明の第2態様では、上記インストーラは、上記演算結果が上記許可値に一致しなかったときには、インストール対象の記憶媒体に無意味なファイルを生成して、該記憶媒体の空き領域を、上記目的とするソフトウェアのインストールに必要な領域以下にする(49)プログラムを有する。
【0014】
この第態様によれば、不正な再インストールの試行が防止される。
【0021】
【実施例】
以下、図面に基づいて本発明の一実施例を説明する。
図6は、不正使用防止機能を備えたコンピュータシステムの概略構成を示す。ユーザコンピュータ10は、 一般的な構成であり、プログラムに従って処理を実行するMPU11と、IPL等が格納されたROM12と、プログラム及びデータを一時格納するためのRAM13と、各種インタフェース回路を含む入出力インタフェース14との間が、バス15で接続されている。入出力インタフェース14には、キーボード16、表示装置17、フロッピーディスクドライバ18、ハードディスクドライバ19及び通信カード20が接続されている。
【0022】
フロッピーディスク181には、ベンダーから購入したアプリケーションソフトウェアが記憶されている。このアプリケーションソフトウェアは、図7に示す如く、インストーラM0と、モジュールM1〜M4とからなり、モジュールM1〜M4はインストーラM0により、図6のハードディスク191にインストールされる。インストーラM0を使用せずにモジュールM1〜M4をフロッピーディスク181からハードディスク191へコピーしても実行できないようにするために、モジュールM1〜M4はそれぞれ暗号化モジュールM1B〜M4Bにされて、フロッピーディスク181に記憶されている。ハードディスク191には、OSがインストールされており、OSは電源投入時にRAM13にロードされる。通信カード20には、MPU11により読み込み可能な不揮発性のマシン識別コードMIDを有する。
【0023】
通信カード20は、通信回線21を介してベンダーコンピュータ30に接続され、ユーザコンピュータ10とベンダーコンピュータ30との間で双方向通信可能となっている。
[1]不正使用防止の為のインストーラ
RAM13にロードされたOSの下でインストーラM0を実行すると、OSによりインストーラM0がRAM13上にロードされ、インストーラM0により図1に示す処理が行われて、モジュールM1〜M4がハードディスク191へインストールされる。以下、括弧内の数値は図中のステップ識別番号を表す。
【0024】
(40)マシン識別コードMIDを読み込み、RAM13に書き込む。
(41)フロッピーディスク181上のインストーラM0をファイルオープンし、先頭から順次読み込み、後述のパスワードPW設定領域からパスワードPWを読み込む。PW=0、すなわちパスワードPWが設定されていなければ、ステップ42へ進み、PW≠0であれば、ステップ46へ進む。
【0025】
(42)通信回線21を介してベンダーコンピュータ30に接続し、ユーザ登録情報をベンダーコンピュータ30へ送信する。ユーザ登録情報は、例えば、マシン識別コードMID、ユーザの住所、氏名、電話番号、購入ソフトウェアの識別コード、並びに、ユーザ登録情報送信時の日付及び時間である。ユーザの住所、氏名及び電話番号は、対話的にキーボード16から入力され、購入ソフトウェアの識別コードは予めインストーラに埋め込まれており、M0日付及び時間はOSから受け取る。
【0026】
ベンダーコンピュータ30は、以下のステップ50〜53の処理を実行する。
(50)ユーザ登録情報を受信する。
(51)ユーザ登録情報をハードディスク301に登録する。
(52)マシン識別コードMIDとAとの間の演算、例えばPW=MID+Aを演算して、パスワードPWを決定する。ここに、Aはベンダー又は上記ソフトウェア識別コードにより定まる定数であり、インストーラM0及びハードディスク301に共通に記憶されている。
【0027】
(53)パスワードPWを、通信回線21を介しユーザコンピュータ10に送信する。
(43)MPU11は、パスワードPWを受信する。
(44)フロッピーディスク181上のインストーラ中のパスワードPWの領域に、パスワードPWを設定する。この設定は通常、フロッピーディスク181上のインストーラを入力ファイルとしてRAM13上又はハードディスクドライバ19上に読み込み、フロッピーディスク181上のインストーラを削除し、RAM13上又はハードディスクドライバ19上のインストーラをフロッピーディスク181上に出力ファイルとして書き込み、その途中でパスワードPWをフロッピーディスク181上に書き込むことにより行われる。
【0028】
(45)フロッピーディスク181上の暗号化モジュールM1B〜M4Bを、後述のように複号化してモジュールM1〜M4にし、目的とするソフトウェアであるモジュールM1〜M4をハードディスク191上にインストールする。
以上の処理により、初回インストールが完了する。このような方法によれば、初回インストールの際に、通信によりユーザ登録及びパスワードPWの送受が行われるので、ユーザ側及びベンダー側の手間が省ける。
【0029】
(46)A=PW−MIDを算出する。
(47)A=SAであれば、上記ステップ45へ進む。ここに、許可値SAは、インストーラM0に格納されている定数である。フロッピーディスク181上のインストーラM0〜M4をハードディスク191上にインストールした後に、フロッピーディスク181を他のコンピュータで使用すると、マシン識別コードMIDがユーザコンピュータ10のそれと異なるので、A≠SAとなり、次のステップ48へ進む。
【0030】
(48)上記ステップ42で送信するユーザ登録情報を不正使用事実(ユーザ登録情報の一部が欠落していてもかまわない。)としてベンダーコンピュータ30へ送信する。
(54、55)ベンダーコンピュータ30では、この不正使用事実を受信し、ハードディスク301に登録する。
【0031】
(49)MPU11は、罰としてハードディスク191上に無意味なファイルを生成し、目的とするソフトウエアが再試行によりインストールできないようにする。これは、例えば、適当なファイル名を付けた256バイトのファイルを、空き領域が256バイト未満になるまでハードディスク191上に繰り返し書き込むことにより行われる。このプログラムは、例えばC言語で、
Figure 0003930576
と記載される。ここに、size_256_filemake()は、適当なファイル名を付けた256バイトのファイルを生成する関数であり、生成が成功したら関数値1を返し、失敗したら0を変えす。
【0032】
このような方法により、不正インストールが防止される。また、従来のような別個の注文用ソフトウェアが不要である。
[2]不正使用防止の為の暗号化及びファイル複号化
図2(A)は、例えば図7のモジュールM1を暗号化モジュールM1Bにする手順を示す。図3は、図2の処理の説明図である。
【0033】
(70)モジュールM1を、汎用のファイル圧縮ソフトウェアにより圧縮して、圧縮モジュールM1Aを生成し、モジュールM1を削除する。圧縮モジュールM1Aの先頭から第(p+q+1)〜第(p+q+r)バイトのコードXを読み取る。qは負であってもよい。図3では、p=4、q=2、r=2となっている。
【0034】
(72)コードXを所定の規則でモディファイする。例えば、コードXに定数Cを加算したものを新たなコードXとする。図3では、C=‘0102’である。
(73〜75)新たな出力ファイルM1Bをオープンし、これに、圧縮モジュールM1Aの第1〜pバイトと、rバイト長のコードX及び圧縮モジュールM1Aの第(p+1)〜最終バイトを書き込み、ファイル(暗号化モジュール)M1Bをクローズし、圧縮モジュールM1Aを削除する。
【0035】
次に、暗号化モジュールM1BをモジュールM1に戻す手順を説明する。
(80、81)暗号化モジュールM1Bを入力ファイルとしてオープンし、新たな出力ファイルM1Aをオープンし、暗号化モジュールM1Bの第1〜pバイト及び第(p+r+1)〜最終バイトを順に読み出してファイルM1Aに書き込み、ファイルM1B及びファイル(圧縮モジュール)M1Aをクローズし、暗号化モジュールM1Bを削除する。
【0036】
(82)汎用の解凍ソフトウェアにより圧縮モジュールM1Aを解凍してハードディスク191上にモジュールM1を生成し、圧縮モジュールM1Aを削除する。
モジュールM1は‘00’のバイトを多く含んでいるが、圧縮モジュールM1Aには‘00’のバイトが少ないので、X=0になることは殆どない。ここに、‘’で囲まれた数値は16進数であり、以下同様である。このコードXが、‘00’でないバイトデータ中に挿入されるので、暗号化モジュールM1Bのコードを見て無意味なコードXを捜し出すことが困難となる。
【0037】
暗号化モジュールM1Bは、コードXを含んでいるので汎用の解凍ソフトウェアで解凍してもモジュールM1を生成することができず、また、コードXを除去する処理は、インストーラM0中の、図1のステップ45で実行されるので、不正使用によりステップ45を実行することができない。
したがって、従来のような特別な暗号解読ICを用いることなく、かつ、新たな圧縮及び解凍のソフトウェアを開発することなく、汎用の圧縮及び解凍ソフトウェアを使用して不正使用を防止することができる。しかも、圧縮及び解凍におけるコードXの抽出、モディファイ、挿入及び削除処理は容易であり、その処理時間は短時間である。
【0038】
[3]不正使用防止機能を備えたロードモジュール
ハードディスク191上にインストールされたモジュール(実行ファイル)M1を他のコンピュータのハードディスク191にコピーしても使用できないようにするために、モジュールM1は、図4に示す如く構成されている。モジュールM2〜M4についてもモジュールM1と同様である。モジュールM1は、ステップ61〜64及び66〜68からなる不正使用防止部と、本体部とからなる。図4の処理は、OSによりモジュールM1がRAM13上にロードされた後に実行される。
【0039】
モジュールM1のデータ領域では、C言語によりコメント付で例えば次のように記載されている。
Figure 0003930576
(60)INIT=0、すなわちモジュールM1の実行が初回であれば、ステップ61へ進み、INIT≠0であればステップ66へ進む。
【0040】
(61)ロードモジュールM1自体のデータ領域中の目印コードSPを、検索ルーチンにより検索する。目印コードSPは、これを基準とする所定相対位置にパスワードPW及び初回判定値INITが存在することを示すものである。目印コードSPは、例えば図5に示す如く、4バイトのデータ‘02F10003’であって、目印コードSPの次に4バイトのパスワードPWが配置され、パスワードPWの次に1バイトの初回判定値INITが配置されている。
【0041】
このような目印コードSPを用いることにより、各モジュールM1のプログラマーは、モジュールM1中のデータ領域の任意の位置に任意の目印コードSPを配置でき、この位置に相対的な位置にパスワードPW及び初回判定値INITを配置することが可能となり、複数のモジュールの全てについてパスワードPW及び初回判定値INITの位置を見破ることが困難となる。
【0042】
ステップ61は、C言語によりコメント付で例えば次のように記載される。
Figure 0003930576
検索サブルーチンの内容は省略する。
【0043】
(62)パスワードPWを、手動的又は自動的に入力する。例えば、インストール直後に、インストールされたソフトウェアを必ず実行し、図1のステップ43でRAM13又はハードディスクドライバ19に書き込まれたパスワードPWを、モジュールM1の実行中に読み出すことにより、パスワードPWを自動入力する。または、モジュールM1の実行中に、ユーザにパスワードPWの入力を表示装置17で促し、キーボード16から入力されたパスワードPWを読み取る。得られたパスワードPWを、上記データ領域のパスワード格納位置に書き込むことにより、パスワードPWの上記初期設定値0x00000000を例えば0x1234568に書き換える。この処理は、モジュールM1の初回実行の際のみ行われる。
【0044】
(63)上記データ領域の初回判定値格納位置に‘1’を設定する。これにより、上記初回判定値INITの初期設定値0x00が0x01に書き換えられる。
(64)ハードディスク191上のモジュールM1中の初回判定値INIT及びパスワードPWの位置に、それぞれ前記初回判定値INIT及びパスワードPWの値を設定する。この設定は通常、ハードディスク191上のモジュールM1を入力ファイルとして読み込み、ハードディスク191上のモジュールM1を削除し、モジュールM1中の初回判定値INIT及びパスワードPWの位置にそれぞれ初回判定値INIT及びパスワードPWの値を書き込んだモジュールM1をハードディスク191上に新たに作成することにより行われる。
【0045】
(65)ロードモジュール本体部を実行してモジュールM1の初回処理を終了する。
(66)通信カード20のマシン識別コードMIDを読み出す。
(67)式A=PW−MIDによりAを算出する。
(68)A=SAであれば上記ステップ65を実行し、A≠SAであればモジュールM1の処理を終了する。
【0046】
上記ステップ61〜64は、C言語によりコメント付で例えば次のように記載される。
以上のような構成のモジュールM1〜M4によれば、ハードディスク191上にインストールされたモジュールM1〜M4を他のコンピュータのハードディスクにコピーしても使用できなくなる。また、目印コードSP、パスワードPW及び初回判定値INITをロードモジュール中のデータ領域の任意の1箇所に挿入すればよく、従来のように各種条件下で実行の際に必ず出会うようにロードモジュールに多数の資格検証トリガを挿入する必要がない。また、目印コードSPはプログラム毎に任意の値にすることができる。
【0047】
なお、本発明には外にも種々の変形例が含まれる。
例えば、マシン識別コードMIDはユーザコンピュータ10の機種であってもよく、インストーラM0において、メニューでユーザコンピュータ10の機種を入力させ、ROM12上の、機種に応じたアドレスからマシン識別コードMIDを読み取る構成であってもよい。
【0048】
また、図4のステップ67において、モジュールM1により異なるパスワードPWを用いる構成であってもよい。
図2及び図4の構成は、モジュールM1〜M4のうち1つ、例えば最初に実行されるモジュールのみに関するものであってもよい。
また、パスワードPWは、所定の規則で暗号化しておいて、モジュールM0〜M4の実行により複号化する構成であってもよい。
【0049】
図1において、ステップ44からステップ45へ進まずにインストーラの処理を終了し、2回目以降インストーラを実行したときにステップ47からステップ45へ進んでインストールを実行する構成であってもよい。この点は、図4においても同様であり、ステップ64からステップ65へ進まずに処理を終了し、2回目以降モジュールを実行したときにステップ68からステップ65へ進んでモジュール本体部を実行する構成であってもよい。
【図面の簡単な説明】
【図1】不正使用防止機能を備えたインストーラを示すフローチャートである。
【図2】不正使用防止のためのファイル暗号化手順及びファイル複号化手順を示すフローチャートである。
【図3】図2の処理の説明図である。
【図4】不正使用防止機能を備えたロードモジュールを示すフローチャートである。
【図5】パスワード及び初回判定値のファイル内挿入位置説明図である。
【図6】不正使用防止機能を備えたコンピュータシステムの概略ブロック図である。
【図7】ソフトウェアパッケージの概略説明図である。
【符号の説明】
10 ユーザコンピュータ
21 通信回線
30 ベンダーコンピュータ
181 フロッピーディスク
191、301 ハードディスク
MID マシン識別コード
M1〜M4、M1 モジュール
M1B 暗号化モジュール

Claims (2)

  1. ユーザコンピュータと、
    目的とするソフトウェアをインストールするインストーラが記憶され、該ユーザコンピュータにより読み書き可能な記憶媒体と、
    ベンダーコンピュータと、
    を有するコンピュータシステムにおいて、
    該ユーザコンピュータは該インストーラに従って、
    該ユーザコンピュータのマシン識別コードを読み取り、該インストーラにパスワードが設定されているか否かを判定し、
    該パスワードが該インストーラに設定されていないと判定した場合には、
    該マシン識別コード及び該ソフトウェアの識別コードを含むユーザ登録情報を該ベンダーコンピュータに送信し、
    該ベンダーコンピュータからパスワードを受信し、
    該記憶媒体に記憶されたインストーラを、該パスワードが設定されたインストーラに更新し、
    この更新の後に、目的とするソフトウェアを該ユーザコンピュータの記憶媒体にインストールし、
    該パスワードが該インストーラに設定されていると判定した場合には、
    該パスワードと該マシン識別コードとの間で所定演算を行ってその演算結果を取得し、
    該演算結果が、該インストーラに設定されている許可値に一致したか否かを判定し、
    該演算結果が、該許可値に一致したと判定したときには、該インストールを実行し、該演算結果が該許可値に一致しなかったと判定したときには、不正使用事実を前記ベンダーコンピュータに送信し、
    該ベンダーコンピュータは、該ユーザコンピュータから、該マシン識別コード及び該ソフトウェアの識別コードを含む該ユーザ登録情報を受信して登録し、該マシン識別コードと該ソフトウェア識別コードにより定まる定数との間で前記所定演算の逆演算を行ってその演算結果をパスワードとし、該パスワードを該ユーザコンピュータに送信する、
    ことを特徴とするコンピュータシステム。
  2. ユーザコンピュータと、
    目的とするソフトウェアをインストールするインストーラが記憶され、該ユーザコンピュータにより読み書き可能な記憶媒体と、
    ベンダーコンピュータと、
    を有するコンピュータシステムにおいて、
    該ユーザコンピュータは該インストーラに従って、
    該ユーザコンピュータのマシン識別コードを読み取り、該インストーラにパスワードが設定されているか否かを判定し、
    該パスワードが該インストーラに設定されていないと判定した場合には、
    該マシン識別コード及び該ソフトウェアの識別コードを含むユーザ登録情報を該ベンダーコンピュータに送信し、
    該ベンダーコンピュータからパスワードを受信し、
    該記憶媒体に記憶されたインストーラを、該パスワードが設定されたインストーラに更新し、
    この更新の後に、目的とするソフトウェアを該ユーザコンピュータの記憶媒体にインストールし、
    該パスワードが該インストーラに設定されていると判定した場合には、
    該パスワードと該マシン識別コードとの間で所定演算を行ってその演算結果を取得し、
    該演算結果が、該インストーラに設定されている許可値に一致したときのみ、該インストールを実行し、該演算結果が該許可値に一致しなかったときには、インストール対象の記憶媒体に無意味なファイルを生成して、該インストール対象の記憶媒体の空き領域を、該目的とするソフトウェアのインストールに必要な領域以下にする、
    ことを特徴とするコンピュータシステム。
JP17382595A 1995-07-11 1995-07-11 ソフトウェア不正使用防止機能を備えたコンピュータシステム Expired - Lifetime JP3930576B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17382595A JP3930576B2 (ja) 1995-07-11 1995-07-11 ソフトウェア不正使用防止機能を備えたコンピュータシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17382595A JP3930576B2 (ja) 1995-07-11 1995-07-11 ソフトウェア不正使用防止機能を備えたコンピュータシステム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005162431A Division JP2005310182A (ja) 2005-06-02 2005-06-02 ソフトウェア不正使用防止機能を備えた記憶媒体

Publications (2)

Publication Number Publication Date
JPH0926875A JPH0926875A (ja) 1997-01-28
JP3930576B2 true JP3930576B2 (ja) 2007-06-13

Family

ID=15967860

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17382595A Expired - Lifetime JP3930576B2 (ja) 1995-07-11 1995-07-11 ソフトウェア不正使用防止機能を備えたコンピュータシステム

Country Status (1)

Country Link
JP (1) JP3930576B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000043867A1 (fr) * 1999-01-21 2000-07-27 Kenzi Kumasaka Procede permettant d'empecher l'utilisation illicite d'un logiciel informatique et des supports d'enregistrement d'un logiciel informatique
JP2002196986A (ja) * 2000-12-27 2002-07-12 Pioneer Electronic Corp 情報処理装置、情報処理方法及び情報処理用プログラムがコンピュータで読取可能に記録された情報記録媒体並びに記録媒体
JP2003085143A (ja) * 2001-09-11 2003-03-20 Sony Corp パスワード管理システム、パスワード管理方法、および情報処理装置、並びにコンピュータ・プログラム
JP2008146479A (ja) * 2006-12-12 2008-06-26 Toshiba Corp ソフトウェア部品、ソフトウェア部品管理方法、及びソフトウェア部品管理システム
JP2009140398A (ja) * 2007-12-10 2009-06-25 Sony Ericsson Mobilecommunications Japan Inc 外部メモリ、携帯端末装置、プログラムのロード方法、及びソフトロードプログラム
JP5372843B2 (ja) * 2010-06-18 2013-12-18 武史 藤田 コンテンツ利用装置及びプログラム
JP2016170694A (ja) * 2015-03-13 2016-09-23 株式会社沖データ 情報処理装置

Also Published As

Publication number Publication date
JPH0926875A (ja) 1997-01-28

Similar Documents

Publication Publication Date Title
EP0556305B1 (en) A secure system for activating personal computer software at remote locations
US5103476A (en) Secure system for activating personal computer software at remote locations
US7603721B2 (en) Restricted software and hardware usage on a computer
US5903650A (en) Method and apparatus for electronic license distribution
CA2193114C (en) Encrypted program executing apparatus
CN100424678C (zh) 使用隐含中间密钥来认证软件的系统和方法
EP1084549B1 (en) Method of controlling usage of software components
US20080263366A1 (en) Self-verifying software to prevent reverse engineering and piracy
JP2003526965A (ja) 公開暗号制御ユニット及びそのシステム
JPH0648809B2 (ja) 情報通信システム
CN109992987B (zh) 基于Nginx的脚本文件保护方法、装置及终端设备
EP2051181A1 (en) Information terminal, security device, data protection method, and data protection program
JP2000293368A (ja) ソフトウェアの不正使用防止方法
JP4055393B2 (ja) データ処理装置およびその方法とプログラム
JP3930576B2 (ja) ソフトウェア不正使用防止機能を備えたコンピュータシステム
US20040221169A1 (en) Computer-implemented method for controlling execution of application software by a computer terminal
JP2003516600A (ja) 読取を制御するためのマイクロプロセッサを有するコンピュータ読取可能媒体及びこのような媒体と通信を行う構成とされたコンピュータ
US7243227B1 (en) Method and apparatus to copy protect software programs
JP2005310182A (ja) ソフトウェア不正使用防止機能を備えた記憶媒体
JPH05120149A (ja) 実行形式フアイルの複写防止方式
JPH11154944A (ja) 著作物流通方法及びシステム、著作物保護装置、及び記録媒体
JP3709702B2 (ja) Icカード、icカード接続装置、icカードシステム及びプログラムの実行制御方法
JP2002244756A (ja) データ処理方法、半導体回路および認証用装置
JPH11272563A (ja) 情報処理装置のセキュリティシステム、及び情報処理装置に於けるセキュリティ方法
JPH10187433A (ja) 電子機器及び記憶媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050405

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050602

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050628

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050728

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20050913

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20051028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061017

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070309

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20100316

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20100316

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20110316

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120316

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130316

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20140316

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term