JPH07325713A - Software executing method with limitation of operating time - Google Patents

Software executing method with limitation of operating time

Info

Publication number
JPH07325713A
JPH07325713A JP6117920A JP11792094A JPH07325713A JP H07325713 A JPH07325713 A JP H07325713A JP 6117920 A JP6117920 A JP 6117920A JP 11792094 A JP11792094 A JP 11792094A JP H07325713 A JPH07325713 A JP H07325713A
Authority
JP
Japan
Prior art keywords
software
time
execution
information
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP6117920A
Other languages
Japanese (ja)
Inventor
Koichi Saito
浩一 斉藤
Mitsuari Shirata
光有 白田
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP6117920A priority Critical patent/JPH07325713A/en
Publication of JPH07325713A publication Critical patent/JPH07325713A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To provide a software executing method with limitation of the operating time which can confirm all functions of the provided software while preventing the limitless use and copy of the software by limiting the operating time instead of the functions of the software. CONSTITUTION:The operatable time and the due date of the offered software 1, the individual identification information on the hardware where the software 1 is installed, and the physical position information on the storage area where the software 1 is stored are all ciphered and stored in a key information storage part 2. An execution monitor program 3 refers to the ciphered information stored in the part 2 to confirm the executing correctness of the software 1 and also monitors the operatable time during execution of the software 1. Then the program 3 ends the execution of the software 1 when the operatable time passed. An installation/copy program 4 is used when the software 1 is installed at a computer or copied to another computer.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、ソフトウェアを時間的
に制約して試供する動作時間の制約つきソフトウェア実
行方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an operating time restricted software execution method for testing software by restricting it in terms of time.

【0002】[0002]

【従来の技術】従来、ソフトウェアを試供品として提供
することは一般に行われていたが、その際継続的に使用
されるのを防止するため、実際に市販するものの機能を
制限したものが提供されていた。
2. Description of the Related Art Conventionally, software has been generally provided as a free sample, but in order to prevent continuous use at that time, software provided on the market with limited functions is provided. Was there.

【0003】[0003]

【発明が解決しようとする課題】従来のソフトウェアの
試供においては、上述したように、そのソフトウェアの
継続的使用や複写等を防止するために、実際に市販され
るものの機能を制限したソフトウェアを提供していた
が、ソフトウェアの使用者はこのように機能の制限され
た試供品を提供されてもそのソフトウェアの全機能を確
認することができないという問題がある。
In the conventional software trial, as described above, in order to prevent the continuous use and copying of the software, the software provided with the functions limited to those actually sold is provided. However, there is a problem that the user of the software cannot confirm all the functions of the software even if the free sample having the limited functions is provided.

【0004】本発明は、上記に鑑みてなされたもので、
その目的とするところは、試供ソフトウェアの機能を制
限する代わりに試供ソフトウェアの動作時間を制限する
ことによりソフトウェアの無制限な利用や複写を防止し
ながら試供ソフトウェアの全機能を確認することができ
る動作時間の制約つきソフトウェア実行方法を提供する
ことにある。
The present invention has been made in view of the above,
The purpose is to limit the operating time of the sample software instead of limiting the function of the sample software, and to confirm all functions of the sample software while preventing unlimited use and copying of the software. To provide a software execution method with restrictions.

【0005】[0005]

【課題を解決するための手段】上記目的を達成するた
め、本発明の動作時間の制約つきソフトウェア実行方法
は、計算機ハードウェアを一意に識別する情報が利用で
き、オペレーティングシステムからソフトウェアの動作
時間に関する情報が利用でき、かつ補助記憶装置上で特
定のソフトウェアが記憶された領域の物理的位置情報を
取得できるような計算機上でのソフトウェア実行方法に
おいて、ソフトウェアがインストールされた計算機ハー
ドウェアの個別識別情報と該ソフトウェアの格納されて
いる補助記憶装置上の物理的位置情報、および予め定め
た該ソフトウェアの動作可能時間を暗号化されたキー情
報としてインストール時に設定し、該ソフトウェアの起
動時に前記キー情報のうち前記個別識別情報および前記
物理的位置情報が起動した該ソフトウェアの対応する情
報と一致することを監視するとともに、該ソフトウェア
の動作時間が前記動作可能時間を越えないことを監視
し、該ソフトウェアの実行終了時に前記動作可能時間か
ら該ソフトウェアの動作時間を減じた値を実行中の該ソ
フトウェアに等分して前記動作可能時間として再設定
し、該ソフトウェアの複写時には前記動作可能時間を複
写元と複写先とに等分することを要旨とする。
In order to achieve the above object, the software execution method with operating time constraint of the present invention can utilize information for uniquely identifying computer hardware, and relates to the operating time of software from the operating system. In the software execution method on the computer where the information is available and the physical position information of the area where the specific software is stored in the auxiliary storage device can be acquired, the individual identification information of the computer hardware in which the software is installed And physical position information on the auxiliary storage device in which the software is stored, and a predetermined operable time of the software are set as encrypted key information at the time of installation, and the key information of the key information is set at the time of starting the software. Of these, the individual identification information and the physical location information are generated. That the operating time of the software does not exceed the operable time, and at the end of execution of the software, the operating time of the software from the operable time The gist is to equally divide the value obtained by subtracting the value into the software being executed and reset as the operable time, and to divide the operable time into the copy source and the copy destination at the time of copying the software.

【0006】[0006]

【作用】本発明の動作時間の制約つきソフトウェア実行
方法では、ソフトウェア提供者が動作可能時間を予め定
め、それを提供ソフトウェアに暗号化して設定するとと
もに、提供ソフトウェアがインストールされた計算機の
物理的位置情報と動作可能時間をソフトウェア実行時に
監視することにより、正しくインストールされた計算機
で設定した動作可能時間内に限り動作し、かつ複写を繰
り返しても動作可能時間の合計が変化しないようにし
て、機能の制限されない提供ソフトウェアを動作可能時
間内で使用し、その全機能を確認することができる。
In the software execution method with a restricted operating time of the present invention, the software provider predetermines the operable time, encrypts and sets it in the provided software, and the physical position of the computer in which the provided software is installed. By monitoring the information and the available time when the software is executed, it operates only within the available time set by the computer installed correctly and the total available time does not change even if copying is repeated. You can use the software provided without restrictions within the operating hours to check all its functions.

【0007】[0007]

【実施例】以下図面を用いて、本発明の実施例を説明す
る。
Embodiments of the present invention will be described below with reference to the drawings.

【0008】図1は、本発明の一実施例に係わる動作時
間の制約つきソフトウェア実行方法を実施する機能構成
を示す図であり、提供ソフトウェア1に対して、キー情
報保存部2、実行監視プログラム3、およびインストー
ル/複写プログラム4から構成される。
FIG. 1 is a diagram showing a functional configuration for implementing a software execution method with a constraint on operation time according to an embodiment of the present invention. For the provided software 1, a key information storage unit 2, an execution monitoring program are provided. 3 and an installation / copying program 4.

【0009】なお、本実施例においては、計算機の環境
として並行処理、すなわち複数のプロセスが同時に実行
できることを仮定する。また、提供ソフトウェアの動作
可能時間はソフトウェア提供時に予め設定しておく。こ
の動作可能時間は提供ソフトウェアの全機能の概略が確
認できるように、例えば提供ソフトウェアの平均的な実
行時間の数倍に設定しておく。
In the present embodiment, it is assumed that the computer environment is parallel processing, that is, a plurality of processes can be executed simultaneously. Further, the operable time of the provided software is set in advance when the software is provided. This operable time is set to, for example, several times the average execution time of the provided software so that the outline of all the functions of the provided software can be confirmed.

【0010】次に、図1に示す各構成要素の機能につい
て説明する。
Next, the function of each component shown in FIG. 1 will be described.

【0011】本発明を適用される提供ソフトウェア1
は、既存のソフトウェアに対して、ソフトウェアの起動
時とソフトウェアの実行終了時に実行監視プログラム3
と通信を行うような機能を追加しているものである。こ
のソフトウェアのその他の部分は本発明を適用していな
いものと変わりない。また、この機能追加はある定めら
れた命令を埋め込むだけであるので容易に実現すること
ができる。
Provided software 1 to which the present invention is applied
Is an execution monitoring program 3 for existing software when the software is started and when the software execution ends.
It has a function to communicate with. Other parts of this software are the same as those to which the present invention is not applied. Further, this function addition can be easily realized because only a predetermined instruction is embedded.

【0012】キー情報保存部2は、提供ソフトウェア1
の動作可能時間、満期日時、提供ソフトウェア1がイン
ストールされている計算機ハードウェアの個別識別情
報、および提供ソフトウェア1を記憶している補助記憶
装置の領域の物理的位置情報(シリンダ番号、セクタ番
号等の記憶装置の物理的な位置情報)を暗号化して保持
する。なお、暗号化の手法は従来知られている方法が利
用できる。
The key information storage unit 2 is provided software 1
Operating time, expiration date and time, individual identification information of computer hardware on which the provided software 1 is installed, and physical position information (cylinder number, sector number, etc.) of the area of the auxiliary storage device storing the provided software 1 The physical location information of the storage device of (1) is encrypted and stored. A conventionally known method can be used as the encryption method.

【0013】実行監視プログラム3は、計算機の初期設
定時等に起動され、提供ソフトウェア1が起動されると
きには、既に起動されている。実行監視プログラム3は
提供ソフトウェア1が起動される時に通信を介して呼び
出される。そして、キー情報保存部2に暗号化されて保
持されている情報を参照し、ソフトウェアの実行の正当
性を確認する。また、提供ソフトウェア1の実行中は動
作可能時間の監視を行い、時間を超過した場合に提供ソ
フトウェア1の実行を終了させる機能を有する。また、
提供ソフトウェア1の実行終了時にキー情報保存部2の
動作可能時間の更新を行う。
The execution monitoring program 3 is started at the time of initial setting of the computer, and when the provided software 1 is started, it is already started. The execution monitoring program 3 is called via communication when the provided software 1 is activated. Then, the validity of the software execution is confirmed by referring to the information that is encrypted and stored in the key information storage unit 2. Further, it has a function of monitoring the operable time during the execution of the provided software 1 and ending the execution of the provided software 1 when the time is exceeded. Also,
At the end of execution of the provided software 1, the operable time of the key information storage unit 2 is updated.

【0014】インストール/複写プログラム4は、提供
ソフトウェア1を使用者が希望する計算機にインストー
ルしたり、他の計算機に複写する際に用いるプログラム
である。本プログラムを使用して計算機にインストール
することによって、キー情報保存部2の情報の初期設定
が行われる。なお、インストール/複写プログラム4は
外部記憶媒体で提供され、この外部記憶媒体は、通常の
複写をしても動作しないような特別な記録形式で記録さ
れている。このような複写を防止するような記録方法に
ついては従来から知られている方法が利用できる。
The install / copy program 4 is a program used when the provided software 1 is installed in a computer desired by a user or is copied to another computer. The information in the key information storage unit 2 is initialized by installing it in a computer using this program. The installation / copying program 4 is provided as an external storage medium, and this external storage medium is recorded in a special recording format that does not operate even when ordinary copying is performed. As a recording method for preventing such copying, a conventionally known method can be used.

【0015】次に、インストール/複写プログラム4を
用いた提供ソフトウェア1のインストール手順を図2を
参照しながら説明する。
Next, the procedure for installing the provided software 1 using the install / copy program 4 will be described with reference to FIG.

【0016】まず、インストール/複写プログラム4が
格納されている媒体Bと、提供ソフトウェア1および実
行監視プログラム3の2つが格納されている媒体Aとを
インストール先となる計算機にセットする。
First, the medium B in which the install / copy program 4 is stored and the medium A in which two of the provided software 1 and the execution monitoring program 3 are stored are set in the installation destination computer.

【0017】計算機にこれらのソフトウェアがセットさ
れると、インストール/複写プログラム4は媒体A上の
提供ソフトウェア1を計算機の補助記憶装置Cにインス
トールし、インストール/複写プログラム4は媒体A上
の実行監視プログラム3を計算機の補助記憶装置Cにイ
ンストールする。更に、インストール/複写プログラム
4はキー情報保存部2を計算機の補助記憶装置C内に作
成する。
When these softwares are set in the computer, the install / copy program 4 installs the provided software 1 on the medium A in the auxiliary storage device C of the computer, and the install / copy program 4 monitors the execution on the medium A. The program 3 is installed in the auxiliary storage device C of the computer. Further, the install / copy program 4 creates the key information storage unit 2 in the auxiliary storage device C of the computer.

【0018】そして、インストール/複写プログラム4
は媒体B上にある動作可能時間および満期日時のデータ
をキー情報保存部2に設定し、媒体B上の動作可能時間
のデータを0に変える。
Then, the installation / copying program 4
Sets the operable time and the expiration date and time data on the medium B in the key information storage unit 2, and changes the operable time data on the medium B to 0.

【0019】また、インストール/複写プログラム4は
提供ソフトウェア1が格納された計算機ハードウェアの
個別識別情報を取得し、キー情報保存部2に書き込む。
更に、インストール/複写プログラム4は提供ソフトウ
ェア1を格納している補助記憶装置Cの物理的位置情報
を取得し、キー情報保存部2に書き込む。
The install / copy program 4 acquires the individual identification information of the computer hardware in which the provided software 1 is stored and writes it in the key information storage unit 2.
Further, the installation / copy program 4 acquires the physical position information of the auxiliary storage device C storing the provided software 1 and writes it in the key information storage unit 2.

【0020】それから、インストール/複写プログラム
4はキー情報保存部2の内容を暗号化し、終了する。
Then, the install / copy program 4 encrypts the contents of the key information storage unit 2 and ends.

【0021】次に、提供ソフトウェア1を起動すると、
実行監視プログラム3が通信を介して呼び出され、提供
ソフトウェア1の実行の正当性が確認される。この実施
例のような方法をとる場合は、実行監視プログラム3は
提供ソフトウェア1が実行される前に起動されている必
要がある。その起動契機はシステム立ち上げ時等、任意
でよい。
Next, when the provided software 1 is started,
The execution monitoring program 3 is called via communication, and the correctness of the execution of the provided software 1 is confirmed. When the method as in this embodiment is adopted, the execution monitoring program 3 needs to be activated before the provided software 1 is executed. The trigger for activation may be arbitrary when the system is started.

【0022】以下、提供ソフトウェア1の起動時の実行
監視プログラム3の処理を図3に示すフローチャートを
参照して説明する。
The processing of the execution monitoring program 3 when the provided software 1 is activated will be described below with reference to the flowchart shown in FIG.

【0023】図3において、提供ソフトウェア1が起動
されると、実行監視プログラム3に通知され、制御が実
行監視プログラム3に移る(ステップ110)。
In FIG. 3, when the provided software 1 is activated, the execution monitoring program 3 is notified and control is transferred to the execution monitoring program 3 (step 110).

【0024】実行監視プログラム3はその起動時から次
に示す変数X,Yを保持している。変数Xは、実行中の
ソフトウェア数を示し、その時点での提供ソフトウェア
1が起動されている数を表し、初期値は0である。ま
た、変数Yは、計時開始時刻を示し、動作時間を計測す
るときの起点の時刻を表す。動作可能時間を最後に更新
した時刻が書き込まれる。
The execution monitoring program 3 holds the following variables X and Y from the time of its activation. The variable X indicates the number of pieces of software being executed, and represents the number of pieces of provided software 1 at that time, and the initial value is 0. Further, the variable Y indicates the clocking start time, and represents the time of the starting point when the operation time is measured. The time when the operable time was last updated is written.

【0025】実行監視プログラム3に制約が移ると、実
行監視プログラム3は変数Xに1を加え(ステップ12
0)、実行監視プログラム3はキー情報保存部2の暗号
化されたキー情報を復号化する(ステップ130)。
When the constraint is transferred to the execution monitoring program 3, the execution monitoring program 3 adds 1 to the variable X (step 12
0), the execution monitoring program 3 decrypts the encrypted key information in the key information storage unit 2 (step 130).

【0026】それから、実行監視プログラム3は起動さ
れた提供ソフトウェア1の格納されていた計算機ハード
ウェアの個別識別情報がキー情報のものと一致するか否
かを確認する(ステップ140)。一致していなかった
場合には、ステップ150に進んで、変数Xから1を引
き、提供ソフトウェアを強制的に終了する(ステップ1
60)。
Then, the execution monitoring program 3 confirms whether or not the individual identification information of the computer hardware in which the launched providing software 1 is stored matches the key information (step 140). If they do not match, the process proceeds to step 150, 1 is subtracted from the variable X, and the provided software is forcibly terminated (step 1
60).

【0027】ステップ140において、提供ソフトウェ
ア1の格納されていた計算機ハードウェアの個別識別情
報がキー情報のものと一致する場合には、実行監視プロ
グラム3は起動された提供ソフトウェア1を記憶してい
た補助記憶装置の領域の物理的位置情報がキー情報のも
のと一致するか否かを確認する(ステップ170)。
In step 140, when the individual identification information of the computer hardware in which the provided software 1 is stored matches the key information, the execution monitoring program 3 stores the launched provided software 1. It is confirmed whether the physical position information of the area of the auxiliary storage device matches that of the key information (step 170).

【0028】一致する場合には、実行監視プログラム3
は動作可能時間が残存しているか否かを確認する(ステ
ップ180)。動作可能時間が残存している場合には、
動作可能時間を更新する(ステップ190)。計時開始
時刻YはXの値が1の場合不定であり、Xの値が1以外
の場合は直前に起動された提供ソフトウェア1の起動時
刻が格納されている(この手順はステップ220で示
す)。動作可能時間は時点Yから現在時刻までの延べ実
行時間分だけ減算され、次式のように計算される。
If they match, the execution monitoring program 3
Confirms whether the operable time remains (step 180). If the available time remains,
The operable time is updated (step 190). The time count start time Y is undefined when the value of X is 1, and when the value of X is other than 1, the start time of the provided software 1 that was started immediately before is stored (this procedure is shown in step 220). . The operable time is subtracted by the total execution time from the time point Y to the current time, and is calculated by the following equation.

【0029】[0029]

【数1】動作可能時間=動作可能時間−(X−1)×
(現在時刻−Y) 次に、実行監視プログラム3は起動された時刻が満期日
時を超過していないか否かを確認する(ステップ20
0)。超過していない場合には、変数Yに現在時刻をセ
ットする(ステップ210)。そして、実行中のソフト
ウェアの数が一定で継続的に動作していた場合には、ス
テップ190で設定した動作可能時間が0になる時刻を
終了予定時刻Zとし、これを次式により計算する(ステ
ップ220)。
[Equation 1] Operable time = Operable time- (X-1) x
(Current time-Y) Next, the execution monitoring program 3 confirms whether or not the activated time has exceeded the expiration date and time (step 20).
0). If not exceeded, the current time is set in the variable Y (step 210). Then, when the number of pieces of software being executed is constant and continuously operating, the time when the operable time set in step 190 becomes 0 is set as the scheduled end time Z, and this is calculated by the following equation ( Step 220).

【0030】[0030]

【数2】 終了予定時刻Z=現在時刻+現在の動作可能時間/X オペレーティングシステムの機能を用いて、終了予定時
刻Zに実行監視プログラム3自身が起動されるように設
定される(ステップ230)。(このような起動時刻の
指定機能はオペレーティングシステムに備わっていると
する。)次に、キー情報を暗号化する(ステップ24
0)。それから、提供ソフトウェア1に制御を移し、手
続きを終了する。
## EQU00002 ## Scheduled end time Z = current time + current operable time / X Using the function of the operating system, execution monitoring program 3 itself is set to start at scheduled end time Z (step 230). . (It is assumed that the operating system has such a function of designating the start time.) Next, the key information is encrypted (step 24).
0). Then, the control is transferred to the provided software 1, and the procedure ends.

【0031】なお、ステップ170,180,200に
おいて、NOの場合、すなわち提供ソフトウェア1を記
憶していた補助記憶装置の領域の物理的位置情報がキー
情報のものと一致しない場合(ステップ170)、動作
可能時間が残存していない場合(ステップ180)、満
期日時を超過している場合には(ステップ200)、ス
テップ150に進んで、変数Xから1を引き、提供ソフ
トウェアを強制的に終了する(ステップ160)。
If NO in steps 170, 180 and 200, that is, if the physical position information of the area of the auxiliary storage device storing the provided software 1 does not match the key information (step 170). When the operable time does not remain (step 180) and when the expiration date and time has passed (step 200), the process proceeds to step 150, 1 is subtracted from the variable X, and the provided software is forcibly terminated. (Step 160).

【0032】提供ソフトウェア1が実行中に終了予定時
刻になった場合、オペレーティングシステムから実行監
視プログラム3が起動されて、提供ソフトウェア1実行
中の処理について図4に示すフローチャートを参照して
説明する。
When the scheduled end time is reached during execution of the provided software 1, the execution monitoring program 3 is started from the operating system, and the processing during execution of the provided software 1 will be described with reference to the flowchart shown in FIG.

【0033】図4において、1終了予定時刻になったた
めにオペレーティングシステムから実行監視プログラム
3が起動されると(ステップ310)、キー情報保存部
2の暗号化されたキー情報を復号化する(ステップ32
0)。それから、動作可能時間を0にセットし(ステッ
プ330)、キー情報を暗号化し(ステップ340)、
提供ソフトウェアの実行を終了させる。
In FIG. 4, when the execution monitoring program 3 is started from the operating system because the scheduled end time is 1 (step 310), the encrypted key information in the key information storage unit 2 is decrypted (step). 32
0). Then, the operable time is set to 0 (step 330), the key information is encrypted (step 340),
Terminate the execution of the provided software.

【0034】提供ソフトウェア1が実行を終了したり、
提供ソフトウェア1を利用者が実行途中で終了させる場
合は動作可能時間を適宜減算して再び暗号化して格納す
る必要がある。また、複数の提供ソフトウェア1が実行
中の場合は、終了予定時刻を再計算する。これらの手順
である提供ソフトウェア1終了時の実行監視プログラム
3の処理の流れを図5に従い説明する。
The provided software 1 finishes executing,
When the user terminates the provided software 1 during execution, it is necessary to appropriately subtract the operable time, encrypt again, and store the encrypted software. If a plurality of pieces of provided software 1 are being executed, the scheduled end time is recalculated. The process flow of the execution monitoring program 3 at the end of the provided software 1, which is the procedure, will be described with reference to FIG.

【0035】図5において、利用者が実行中の提供ソフ
トウェア1の終了を指定し、処理が実行監視プログラム
3に移る(ステップ410)。なお、利用者には提供ソ
フトウェア1の終了を指定する何らかの手段が与えられ
ているものとする。
In FIG. 5, the user specifies the end of the provided software 1 being executed, and the process proceeds to the execution monitoring program 3 (step 410). It is assumed that the user is given some means for designating the end of the provided software 1.

【0036】処理が実行監視プログラム3に移ると、実
行監視プログラム3はキー情報保存部2中のキー情報を
復号化する(ステップ420)。次に、動作可能時間か
ら提供ソフトウェア1の動作していた時間の値を減算
し、動作可能時間を計算する(ステップ430)。提供
ソフトウェア1の動作していた時間は変数Yに格納され
ている計時開始時刻と現在時刻との差と実行中のソフト
ウェア数を表す変数Xの値との積であり、次式により計
算が行われる。
When the processing shifts to the execution monitoring program 3, the execution monitoring program 3 decrypts the key information in the key information storage unit 2 (step 420). Next, the value of the operating time of the provided software 1 is subtracted from the operable time to calculate the operable time (step 430). The operating time of the provided software 1 is the product of the difference between the clocking start time and the current time stored in the variable Y and the value of the variable X representing the number of software programs being executed, and the calculation is performed using the following formula. Be seen.

【0037】[0037]

【数3】 動作可能時間=動作可能時間−X×(現在時刻−Y) それから、変数Xを1減算し(ステップ440)、変数
Yに現在時刻をセットし(ステップ450)、変数Xが
0であるか否かをチェックする(ステップ460)。変
数Xが0でないときには、終了予定時刻を次式により計
算する(ステップ470)。
## EQU00003 ## Operable time = Operable time-X.times. (Current time-Y) Then, the variable X is decremented by 1 (step 440), the current time is set in the variable Y (step 450), and the variable X is 0. Is checked (step 460). When the variable X is not 0, the scheduled end time is calculated by the following formula (step 470).

【0038】[0038]

【数4】 終了予定時刻=現在時刻+現在の動作可能時間/X 変数Xが0の場合には、キー情報を暗号化して(ステッ
プ480)、終了する。
## EQU00004 ## Scheduled end time = current time + current operable time / X When the variable X is 0, the key information is encrypted (step 480) and the process is ended.

【0039】この実施例では、起動時間と終了時間との
差をソフトウェアの動作時間としているが、実際にプロ
グラムがCPUを使用していた時間を積算してソフトウ
ェアの動作時間とすることも可能である。
In this embodiment, the difference between the start time and the end time is used as the software operation time, but it is also possible to integrate the time when the program actually uses the CPU to obtain the software operation time. is there.

【0040】提供ソフトウェア1を他の環境で動作させ
るためには、インストール/複写プログラム4を使用す
る。この手順を図6を参照しながら説明する。この例で
は提供ソフトウェア1を磁気媒体を介して複写する。
In order to operate the provided software 1 in another environment, the install / copy program 4 is used. This procedure will be described with reference to FIG. In this example, the provided software 1 is copied via a magnetic medium.

【0041】図6においては、まず複写元Cのキー情報
を復号化し、複写元Cの動作可能時間(N)を半減させ
る。
In FIG. 6, the key information of the copy source C is first decrypted to reduce the operable time (N) of the copy source C by half.

【0042】動作可能時間=動作可能時間/2 それから、インストール/複写プログラム4は複写元C
の動作可能時間を媒体B上に複写する。複写元のキー情
報を暗号化する。複写元の提供ソフトウェア1、実行監
視プログラム3を媒体Aに複写する。そして、媒体Aと
媒体Bとを複写先となる計算機にセットする。
Operable time = Operable time / 2 The install / copy program 4 is the copy source C
The operable time of is copied on the medium B. The key information of the copy source is encrypted. The provided software 1 of the copy source and the execution monitoring program 3 are copied onto the medium A. Then, the medium A and the medium B are set in the computer which is the copy destination.

【0043】次に、インストール/複写プログラム4は
媒体A上の提供ソフトウェア1を計算機の補助記憶装置
Dにインストールする。また、インストール/複写プロ
グラム4は媒体A上の実行監視プログラム3を計算機の
補助記憶装置Dにインストールする。
Next, the install / copy program 4 installs the provided software 1 on the medium A in the auxiliary storage device D of the computer. The installation / copy program 4 also installs the execution monitoring program 3 on the medium A in the auxiliary storage device D of the computer.

【0044】それから、インストール/複写プログラム
4はキー情報保存部2を計算機の補助記憶装置D内に作
成し、媒体B上にある動作可能時間のデータをキー情報
保存部2に設定し、媒体B上の動作可能時間のデータを
0に変え、提供ソフトウェア1が格納された計算機ハー
ドウェアの個別識別情報を取得し、キー情報保存部2に
書き込む。更に、インストール/複写プログラム4は提
供ソフトウェア1を格納している補助記憶装置Dの物理
的位置情報を取得し、キー情報保存部2に書き込み、キ
ー情報保存部2の内容を暗号化し、処理を終了する。
Then, the install / copy program 4 creates the key information storage unit 2 in the auxiliary storage device D of the computer, sets the data of the operable time on the medium B in the key information storage unit 2, and sets the medium B. The data of the above operable time is changed to 0, and the individual identification information of the computer hardware in which the provided software 1 is stored is acquired and written in the key information storage unit 2. Furthermore, the installation / copy program 4 acquires the physical position information of the auxiliary storage device D storing the provided software 1, writes it in the key information storage unit 2, encrypts the contents of the key information storage unit 2, and executes the processing. finish.

【0045】この手続きのうち、媒体AとBとを複写先
となる計算機にセットする処理以降はインストール手続
きそのものであり、複写の処理はインストールの処理を
大部分流用して実現することができる。
In this procedure, the process of setting the media A and B in the computer as the copy destination is the installation procedure itself, and the copy process can be realized by diverting most of the installation process.

【0046】本発明のソフトウェア実行方法を採用した
場合、指定の複写方法、すなわちインストール/複写プ
ログラム4を使用した複写では、動作可能時間が半減す
るため、提供ソフトウェア1の総動作時間は変化しな
い。
When the software execution method of the present invention is adopted, the operable time is halved by the designated copying method, that is, the copying using the installation / copying program 4, so that the total operating time of the provided software 1 does not change.

【0047】また、指定以外の複写方法でソフトウェア
を複写することは困難である。複写方法は大別すると以
下の2種類がある。
Further, it is difficult to copy the software by a copying method other than the designated method. The copying methods are roughly classified into the following two types.

【0048】第1の方法は、補助記憶装置の記憶領域の
物理的位置情報を保存しないものであり、また第2の方
法は、補助記憶装置の記憶領域の物理的位置情報を保存
するものである。
The first method is to save the physical position information of the storage area of the auxiliary storage device, and the second method is to save the physical position information of the storage area of the auxiliary storage device. is there.

【0049】第1の方法はオペレーティングシステムの
提供する記憶領域の論理的単位(ファイルなど)を複写
するものであり、一般に多く行われている。このような
複写をした場合、起動時の実行監視プログラム3のステ
ップ170の条件に反するため、起動することができな
い。
The first method is to copy a logical unit (file or the like) of a storage area provided by the operating system, and is generally used. If such a copy is made, the condition cannot be activated because the condition of step 170 of the execution monitoring program 3 at the time of activation is violated.

【0050】第2の方法の領域の物理的情報まで保存し
てしまう方法(例:ディスクのストリームアクセスによ
るテープへの複写)に対する保護について説明する。領
域の物理的位置情報を保存していても、起動時の実行監
視プログラム3のステップ140の条件に反するため、
違う計算機に複写することはできない。また、同一の計
算機に複写して動作可能時間を繰り返し引き延ばそうと
しても、実行監視プログラム3のステップ200の満期
日時の条件があるため、際限なく動作可能時間を引き延
ばすことはできない。
The protection for the method of storing physical information in the area of the second method (eg, copying to tape by stream access of disk) will be described. Even if the physical position information of the area is stored, it violates the condition of step 140 of the execution monitoring program 3 at startup,
It cannot be copied to another computer. Further, even if copying is made to the same computer and the operable time is repeatedly extended, the operable time cannot be extended endlessly because of the condition of the expiration date and time of step 200 of the execution monitoring program 3.

【0051】[0051]

【発明の効果】上述したように、本発明によれば、提供
ソフトウェアが実行される計算機の個別識別情報、ソフ
トウェアが格納された記憶装置の物理的位置に関する情
報、提供者が予め設定する動作可能時間を利用者に分か
らないように暗号化して保持し、ソフトウェアが起動さ
れる際にその起動された計算機から得られる情報とこれ
らの暗号化された情報とが合致していることを確認する
とともに動作可能時間が残存することを確認することに
より、提供ソフトウェアが設定した動作可能時間を越え
て実行されることがなく、また複写による無制限の利用
からソフトウェアを保護し得るも、動作可能時間内にお
ける提供ソフトウェアの全機能の実行および所定の方法
による提供ソフトウェアの複写を自由にかつ特別な装置
を必要とすることなく行うことができ、機能的に市販の
ものと変わらない試供品を提供することができる。
As described above, according to the present invention, the individual identification information of the computer on which the provided software is executed, the information on the physical position of the storage device in which the software is stored, and the operation preset by the provider are possible. It keeps the time encrypted so that the time cannot be seen by the user, and confirms that the information obtained from the computer when the software is started and the encrypted information match. By confirming that the available time remains, the provided software will not run for longer than the set available time, and the software can be protected from unlimited use by copying, but within the available time. Free execution of all the functions of the provided software and copying of the provided software by a prescribed method, and requiring a special device Ku can be performed, it is possible to provide a functionally no different from commercially available sample.

【0052】また、本発明を利用するとソフトウェアの
実行時間の制約が可能となり、ソフトウェアを有償で貸
与するような提供方法も実現可能となる。
Further, by using the present invention, it is possible to limit the execution time of software, and it is also possible to realize a providing method of lending software for a fee.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例に係わる動作時間の制約つき
ソフトウェア実行方法を実施する機能構成を示す図であ
る。
FIG. 1 is a diagram showing a functional configuration for implementing a software execution method with an operation time constraint according to an embodiment of the present invention.

【図2】インストール/複写プログラムを用いた提供ソ
フトウェアのインストール手順を示す説明図である。
FIG. 2 is an explanatory diagram showing an installation procedure of provided software using an installation / copy program.

【図3】提供ソフトウェアの起動時の実行監視プログラ
ムの処理を示すフローチャートである。
FIG. 3 is a flowchart showing the processing of an execution monitoring program when the provided software is activated.

【図4】提供ソフトウェア実行中の実行監視プログラム
の処理を示すフローチャートである。
FIG. 4 is a flowchart showing processing of an execution monitoring program during execution of provided software.

【図5】提供ソフトウェア終了時の実行監視プログラム
の処理を示すフローチャートである。
FIG. 5 is a flowchart showing processing of an execution monitoring program when the provided software ends.

【図6】ソフトウェアを他の計算機に複写する際の手続
きを示す説明図である。
FIG. 6 is an explanatory diagram showing a procedure for copying software to another computer.

【符号の説明】[Explanation of symbols]

1 提供ソフトウェア 2 キー情報保存部 3 実行監視プログラム 4 インストール/複写プログラム 1 Software provided 2 Key information storage 3 Execution monitoring program 4 Installation / copying program

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 計算機ハードウェアを一意に識別する情
報が利用でき、オペレーティングシステムからソフトウ
ェアの動作時間に関する情報が利用でき、かつ補助記憶
装置上で特定のソフトウェアが記憶された領域の物理的
位置情報を取得できるような計算機上でのソフトウェア
実行方法において、 ソフトウェアがインストールされた計算機ハードウェア
の個別識別情報と該ソフトウェアの格納されている補助
記憶装置上の物理的位置情報、および予め定めた該ソフ
トウェアの動作可能時間を暗号化されたキー情報として
インストール時に設定し、 該ソフトウェアの起動時に前記キー情報のうち前記個別
識別情報および前記物理的位置情報が起動した該ソフト
ウェアの対応する情報と一致することを監視するととも
に、該ソフトウェアの動作時間が前記動作可能時間を越
えないことを監視し、該ソフトウェアの実行終了時に前
記動作可能時間から該ソフトウェアの動作時間を減じた
値を実行中の該ソフトウェアに等分して前記動作可能時
間として再設定し、該ソフトウェアの複写時には前記動
作可能時間を複写元と複写先とに等分することを特徴と
する動作時間の制約つきソフトウェア実行方法。
1. Physical location information of an area where computer hardware can be uniquely identified, information about operating time of software is available from an operating system, and specific software is stored in an auxiliary storage device. In the method of executing software on a computer capable of acquiring the software, individual identification information of computer hardware in which the software is installed, physical position information on an auxiliary storage device in which the software is stored, and the predetermined software The operable time of is set at the time of installation as encrypted key information, and the individual identification information and the physical position information of the key information at the time of starting the software match the corresponding information of the started software. Monitor the operation of the software That the operating time is not exceeded, and at the end of execution of the software, a value obtained by subtracting the operating time of the software from the operating time is equally divided into the running software as the operating time. A software execution method with a limited operating time, which is reset, and when the software is copied, the operable time is equally divided into a copy source and a copy destination.
JP6117920A 1994-05-31 1994-05-31 Software executing method with limitation of operating time Pending JPH07325713A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6117920A JPH07325713A (en) 1994-05-31 1994-05-31 Software executing method with limitation of operating time

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6117920A JPH07325713A (en) 1994-05-31 1994-05-31 Software executing method with limitation of operating time

Publications (1)

Publication Number Publication Date
JPH07325713A true JPH07325713A (en) 1995-12-12

Family

ID=14723458

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6117920A Pending JPH07325713A (en) 1994-05-31 1994-05-31 Software executing method with limitation of operating time

Country Status (1)

Country Link
JP (1) JPH07325713A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09284402A (en) * 1996-04-12 1997-10-31 Nec Corp Exchanging device providing service function only in fixed period
WO2002082280A1 (en) * 2001-04-05 2002-10-17 Ed-Contrive Inc. Method for preventing unauthorized copy application program execution, its program, its program recording apparatus, and its program recording medium
US9965599B2 (en) 2013-07-23 2018-05-08 Panasonic Intellectual Property Management Co., Ltd. Function setting method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09284402A (en) * 1996-04-12 1997-10-31 Nec Corp Exchanging device providing service function only in fixed period
US6434227B2 (en) 1996-04-12 2002-08-13 Nec Corporation Exchange for providing service functions for given periods of time
WO2002082280A1 (en) * 2001-04-05 2002-10-17 Ed-Contrive Inc. Method for preventing unauthorized copy application program execution, its program, its program recording apparatus, and its program recording medium
US9965599B2 (en) 2013-07-23 2018-05-08 Panasonic Intellectual Property Management Co., Ltd. Function setting method

Similar Documents

Publication Publication Date Title
EP1084549B1 (en) Method of controlling usage of software components
US6006190A (en) Computer implemented method and a computer system for enforcing software licenses
US4903296A (en) Implementing a shared higher level of privilege on personal computers for copy protection of software
CA2193114C (en) Encrypted program executing apparatus
US6735768B1 (en) Method and system for installing a software product to a computer with authorization
US20030120938A1 (en) Method of securing software against reverse engineering
US20080091900A1 (en) Nonvolatile memory device and data processing system
JPS63191228A (en) Billing system for computer software
JP2001521654A (en) Digital information self-decoding system and method
JP2006522387A (en) System and method for managing the execution of computer software
WO1995035533A1 (en) Method for preventing use of software on an unauthorized computer
EP0266748A2 (en) A software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor
US20020197528A1 (en) Method for extending an application, to be installed using an installation program, by a function, and a computer software product
JP2723231B2 (en) Software rights management control method
JPH07325712A (en) Illicit copy preventing device for program
US6898555B2 (en) Method for indicating the integrity of use-information of a computer program
JPH07325713A (en) Software executing method with limitation of operating time
US20030093660A1 (en) Software Loading
JP2004086588A (en) Software malpractice preventing system
WO1993021582A1 (en) System for protection of software
JP4010111B2 (en) Distribution system
EP0610623A1 (en) File locking based on bad disk sectors
JP2004295388A (en) Method for installing and protecting software
JP2007334821A (en) Application protection device, application protection method, and application protection program
JPH07219761A (en) Method and device for protecting software