JPH0744378A - Starting method for program - Google Patents

Starting method for program

Info

Publication number
JPH0744378A
JPH0744378A JP5188319A JP18831993A JPH0744378A JP H0744378 A JPH0744378 A JP H0744378A JP 5188319 A JP5188319 A JP 5188319A JP 18831993 A JP18831993 A JP 18831993A JP H0744378 A JPH0744378 A JP H0744378A
Authority
JP
Japan
Prior art keywords
program
data
stored
application program
application
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
JP5188319A
Other languages
Japanese (ja)
Inventor
Sho Kumagai
祥 熊谷
Hiroyuki Ishikawa
博行 石川
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP5188319A priority Critical patent/JPH0744378A/en
Publication of JPH0744378A publication Critical patent/JPH0744378A/en
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

PURPOSE:To inhibit the use of an illegal program by surely checking the legality of a program stored in a machine. CONSTITUTION:Data for check based on the regular program are previously stored, when starting a program, the data for check are extracted from the program mounted at that time point, the legality of the program mounted at that time point is checked based on the previously stored data for check and these extracted data for check and only when the legality of the program is judged, that program is started.

Description

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

【0001】[0001]

【産業上の利用分野】本発明はプログラムの起動方法に
関し、例えばコンピュータゲーム等のアプリケーション
プログラムの起動方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for starting a program, for example, a method for starting an application program such as a computer game.

【0002】[0002]

【従来の技術】通常のアプリケーションプログラムを実
行させる場合は、そのプログラムが実行できればよく、
アプリケーションプログラムそのものの正当性が問題と
なる場合はほとんどない。
2. Description of the Related Art When executing a normal application program, it is sufficient that the program can be executed.
In most cases, the legitimacy of the application program itself does not matter.

【0003】ところが、例えばコンピュータゲーム等の
アプリケーションプログラムのように、国の法律、法令
等で規定されている審査基準を満たす必要がある特殊な
アプリケーションプログラムをマシンに装着して起動さ
せる場合は、そのマシンに装着されているアプリケーシ
ョンプログラムの正当性が問題となる。
However, when a special application program, such as an application program for a computer game, which needs to meet the examination standards stipulated by national laws and regulations, is mounted on a machine and started, The legitimacy of the application program installed in the machine becomes a problem.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、従来に
おいては、例えば、第三者がプログラムを不正なものと
交換した場合などはマシンに装着されているプログラム
の正当性を確実にチェックすることができなかった。本
発明の課題は、マシンに装着されているプログラムの正
当性を確実にチェックして、不正プログラムの使用を禁
止することである。
However, in the prior art, for example, when a third party exchanges a program with an unauthorized one, it is possible to reliably check the legitimacy of the program installed in the machine. There wasn't. An object of the present invention is to reliably check the legitimacy of a program installed in a machine and prohibit the use of an unauthorized program.

【0005】[0005]

【課題を解決するための手段】本発明の手段は次の通り
である。まず、正規のプログラムに基づいたチェック用
データ、例えば、チェックサムデータをあらかじめ記憶
する。次に、プログラムの立ち上げ時、例えば、電源O
N時に、その時点で装着されているプログラムからチェ
ック用データを抽出する。そして、上記あらかじめ記憶
されたチェック用データと上記抽出されたチェック用デ
ータとに基づいて、その時点で装着されているプログラ
ムの正当性、例えば、チェックサムの一致/不一致をチ
ェックし、正当なプログラムであると判断された場合は
そのプログラムを起動する。
The means of the present invention are as follows. First, check data based on a regular program, for example, checksum data is stored in advance. Next, when the program is started, for example, the power is turned on.
At N hours, the check data is extracted from the program installed at that time. Then, based on the previously stored check data and the extracted check data, the legitimacy of the program installed at that time, for example, checksum match / mismatch, is checked, and the legitimate program is checked. If it is determined that, the program is started.

【0006】[0006]

【作用】本発明の手段の作用は次の通りである。まず、
正規のプログラムに基づいたチェック用データをあらか
じめ記憶し、次に、プログラムの立ち上げ時にその時点
で装着されているプログラムからチェック用データを抽
出し、そして、上記あらかじめ記憶されたチェック用デ
ータと上記抽出されたチェック用データとに基づいて、
その時点で装着されているプログラムの正当性をチェッ
クし、正当なプログラムであると判断された場合はその
プログラムを起動する。
The operation of the means of the present invention is as follows. First,
The check data based on the regular program is stored in advance, and then the check data is extracted from the program installed at that time when the program is started up. Based on the extracted check data and
The legitimacy of the program installed at that time is checked, and if it is judged to be a legitimate program, that program is started.

【0007】[0007]

【実施例】以下、本発明の実施例を、図1乃至図3を参
照して詳細に説明する。図3は本発明の第1実施例に係
るプログラムの起動方法が適用されるプログラム処理装
置の概略構成図である。同図において、使用者が入力部
14を介して所定の操作、例えば電源ON操作を行なっ
たとき、CPU10はOS(オペレーティングシステ
ム)ROM11に記憶された後述するプログラムに従っ
て、アプリケーションROM12に記憶されたコンピュ
ータゲーム等のアプリケーションプログラムを起動す
る。そして、このアプリケーションプログラムに従って
入力部14に構成された各種キーやマウス操作に応じて
表示コントローラ16を介して表示部15に適宜表示を
行う。
Embodiments of the present invention will be described in detail below with reference to FIGS. FIG. 3 is a schematic configuration diagram of a program processing device to which the program starting method according to the first embodiment of the present invention is applied. In the figure, when a user performs a predetermined operation, for example, a power-on operation via the input unit 14, the CPU 10 causes a computer stored in the application ROM 12 according to a program to be described later stored in the OS (operating system) ROM 11. Start an application program such as a game. Then, in accordance with this application program, various display keys are appropriately displayed on the display unit 15 via the display controller 16 in response to various keys configured on the input unit 14 and mouse operations.

【0008】RAM13はワークエリアとして使用され
ると共に、A、B、C、Dのエリアが設けられ、これら
のエリアには後述するように、アプリケーションプログ
ラムの正当性をチェックするチェックサムデータが記憶
される。また、警告ランプ17は、アプリケーションプ
ログラムが正当なものでないことが判明した場合にこれ
を使用者に警告するためのものである。
The RAM 13 is used as a work area and is provided with areas A, B, C and D, and checksum data for checking the correctness of the application program is stored in these areas as will be described later. It Further, the warning lamp 17 is for warning the user of the fact that the application program is found to be invalid.

【0009】次にこのような構成を有するプログラム処
理装置の動作を図1(a)、図1(b)に示すフローチ
ャートを参照して説明する。まず、上記プログラム処理
装置が工場より出荷されて所定の場所に設置された後、
電源がONされると、OSROM11に記憶されたOS
プログラムが起動されて、図1(a)のステップS1以
降が実行される。この時点では装着されたアプリケーシ
ョンROM12は不正に改造されていないものと見なし
てステップS5に進み、アプリケーションROM12に
記憶されているアプリケーションプログラムの起動を指
示して終了する。以降はCPU10はアプリケーション
プログラムに従って動作する。
Next, the operation of the program processing device having such a configuration will be described with reference to the flow charts shown in FIGS. 1 (a) and 1 (b). First, after the above program processing device is shipped from the factory and installed in a predetermined place,
When the power is turned on, the OS stored in the OSROM 11
The program is started, and step S1 and subsequent steps in FIG. 1A are executed. At this point, the installed application ROM 12 is considered to have not been tampered with, and the process proceeds to step S5, where an instruction to start the application program stored in the application ROM 12 is issued and the process ends. After that, the CPU 10 operates according to the application program.

【0010】次に、国の審査基準を満たしたアプリケー
ションプログラム(以下、正規のアプリケーションプロ
グラムと呼ぶ)に基づいたチェックサムデータをあらか
じめ記憶する。すなわち、電源をOFFするとCPU1
0に割り込みがかかり、OSROM11のOSプログラ
ムに従って図1(b)のフローチャートに示す工程を実
行する。すなわち、まず実行中のアプリケーションプロ
グラムの停止を指示する(ステップST1)。次に、ア
プリケーションROM12に記憶された正規のアプリケ
ーションプログラムデータに基づいてチェックサムを算
出し、算出されたチェックサムデータをRAM13のA
エリアに記憶する(ステップST2、ST3)。その
後、電源停止処理を行なって終了する(ステップST
4)。
Next, checksum data based on an application program (hereinafter referred to as a regular application program) that meets the national examination standards is stored in advance. That is, when the power is turned off, the CPU1
0 is interrupted, and the steps shown in the flowchart of FIG. 1B are executed according to the OS program in the OSROM 11. That is, first, an instruction to stop the running application program is given (step ST1). Next, a checksum is calculated based on the regular application program data stored in the application ROM 12, and the calculated checksum data is stored in the A of the RAM 13.
It is stored in the area (steps ST2 and ST3). After that, the power supply stopping process is performed and the process ends (step ST
4).

【0011】このように電源OFF時に正規のアプリケ
ーションプログラムのチェックサムデータを記憶するの
は、通常、不正を行おうとする者は、電源をOFFして
アプリケーションROMを取り出し、不正なデータを書
き込んでROMを再装着するので、電源がOFFされた
後に正規のプログラムのチェックサムを保持しておけ
ば、次の電源ON時に不正のチェックに利用できるとい
う理由による。
As described above, the checksum data of the legitimate application program is stored when the power is turned off. Normally, a person who intends to make an illegal action turns off the power source, takes out the application ROM, writes the illegal data, and writes it in the ROM. The reason is that if the checksum of the regular program is held after the power is turned off, the checksum of the regular program can be used for an illegal check at the next power on.

【0012】その後、使用者が所望のコンピュータゲー
ムを起動すべく、プログラム処理装置の電源をONした
場合は図1(a)のフローチャートに示す工程が再び実
行される。すなわち、まず、RAM13のAエリアにチ
ェックサムデータが記憶されているかどうかを判断する
(ステップS1)。この場合、前記したステップST3
においてチェックサムデータが記憶されているのでYE
Sとなる。次に、その時点でアプリケーションROM1
2に記憶されているチェックすべきアプリケーションプ
ログラムデータに基づいてチェックサムを算出し、算出
されたチェックサムデータをRAM13のBエリアに記
憶する(ステップS2、S3)。次に、RAM13のA
エリアに記憶されたチェックサムデータとBエリアに記
憶されたチェックサムデータとを比較してこれらが一致
するかどうかを判断する(ステップS4)。ここで一致
すると判断された場合は、装着されているアプリケーシ
ョンプログラムが正当なものであると見なしてアプリケ
ーションROM12に記憶されているアプリケーション
プログラムの起動を指示する(ステップS5)。一方、
一致しないと判断された場合はアプリケーションプログ
ラムを起動しないようにすると共に警告ランプ17によ
ってアプリケーションプログラムが正当なものでないこ
とを表示する(ステップS6)。
After that, when the user turns on the power of the program processing device to start the desired computer game, the steps shown in the flowchart of FIG. 1A are executed again. That is, first, it is determined whether or not checksum data is stored in the area A of the RAM 13 (step S1). In this case, the above-mentioned step ST3
Since checksum data is stored in
It becomes S. Next, at that point, the application ROM 1
A checksum is calculated based on the application program data to be checked, which is stored in No. 2, and the calculated checksum data is stored in the B area of the RAM 13 (steps S2 and S3). Next, A of RAM 13
The checksum data stored in the area and the checksum data stored in the B area are compared to determine whether they match (step S4). If it is determined that they match with each other, the installed application program is considered to be valid and an instruction to start the application program stored in the application ROM 12 is issued (step S5). on the other hand,
If it is determined that they do not match, the application program is not started and the warning lamp 17 displays that the application program is not valid (step S6).

【0013】以下に、図2(a)、図2(b)のフロー
チャートを参照して本発明の第2実施例を説明する。こ
こで、プログラム処理装置の構成は第1実施例と同様で
あるが、第2実施例においては、正規のアプリケーショ
ンプログラムデータに基づいて算出されたチェックサム
データは工場出荷時にRAM13のAエリアに記憶され
る。すなわち、図2(b)のフローチャートに示すよう
に、工場出荷時においてアプリケーションROM12に
記憶された正規のアプリケーションプログラムに基づい
てチェックサムを算出して、算出されたチェックサムデ
ータをRAM13のAエリアに記憶する(ステップSM
1、SM2)。次に、アプリケーションROM12の未
使用エリアのサイズと、アプリケーションROM12に
記憶されたプログラムデータの一部をRAM13のCエ
リアに記憶して終了する(ステップSM3)。
A second embodiment of the present invention will be described below with reference to the flow charts of FIGS. 2 (a) and 2 (b). Here, the configuration of the program processing device is the same as that of the first embodiment, but in the second embodiment, the checksum data calculated based on the regular application program data is stored in the area A of the RAM 13 at the time of factory shipment. To be done. That is, as shown in the flowchart of FIG. 2B, a checksum is calculated based on a regular application program stored in the application ROM 12 at the time of factory shipment, and the calculated checksum data is stored in the area A of the RAM 13. Store (Step SM
1, SM2). Next, the size of the unused area of the application ROM 12 and a part of the program data stored in the application ROM 12 are stored in the C area of the RAM 13 and the process ends (step SM3).

【0014】次に、プログラム処理装置が所定の位置に
配置された後、その電源がONされた場合は図2(a)
のフローチャートに示す工程が実行される。すなわち、
まず、その時点でアプリケーションROM12に記憶さ
れているチェックすべきアプリケーションプログラムデ
ータに基づいてチェックサムを算出し、算出されたチェ
ックサムデータをRAM13のBエリアに記憶する(ス
テップSH1、SH2)。次に、RAM13のAエリア
に記憶されたチェックサムデータとBエリアに記憶され
たチェックサムデータとを比較してこれらが一致するか
どうかを判断する(ステップSH3)。ここで、一致し
ない場合は、アプリケーションプログラムを起動しない
ようにすると共に警告ランプ17によってこのアプリケ
ーションプログラムが正当なものでないことを表示する
(ステップSH7)。また、一致すると判断された場合
は、その時点におけるアプリケーションROM12の未
使用エリアのサイズとアプリケーションプログラムデー
タの一部をRAM13のDエリアに記憶し(ステップS
H4)、RAM13のCエリアに記憶されたデータとD
エリアに記憶されたデータとを比較してこれらが一致す
るかどうかを判断する(ステップSH5)。ここで、こ
れらのデータが一致すると判断された場合は装着されて
いるアプリケーションプログラムが正当なものであると
見なしてアプリケーションROM12に記憶されている
アプリケーションプログラムの起動を指示する(ステッ
プSH6)。一方、一致しない場合は、例えば第三者が
アプリケーションプログラムを改造したためにROM1
2の未使用エリアのサイズが変化したためと考えられ
る。したがって、この場合はアプリケーションプログラ
ムを起動しないようにすると共に警告ランプ17によっ
てこのアプリケーションプログラムが正当なものでない
ことを表示する(ステップSH7)。
Next, when the power source of the program processing device is turned on after the program processing device is placed at a predetermined position, FIG.
The steps shown in the flow chart of are executed. That is,
First, the checksum is calculated based on the application program data to be checked stored in the application ROM 12 at that time, and the calculated checksum data is stored in the B area of the RAM 13 (steps SH1 and SH2). Next, the checksum data stored in the A area of the RAM 13 and the checksum data stored in the B area are compared to determine whether or not they match (step SH3). If they do not match, the application program is not started and the warning lamp 17 displays that the application program is not valid (step SH7). If it is determined that they match, the size of the unused area of the application ROM 12 and a part of the application program data at that time are stored in the D area of the RAM 13 (step S
H4), data stored in area C of RAM 13 and D
The data stored in the area is compared to determine whether or not they match (step SH5). If it is determined that these data match, the installed application program is considered to be valid and an instruction to start the application program stored in the application ROM 12 is issued (step SH6). On the other hand, if they do not match, the ROM1 is read because a third party has modified the application program.
This is probably because the size of the unused area 2 has changed. Therefore, in this case, the application program is not started and the warning lamp 17 displays that the application program is not valid (step SH7).

【0015】以上、第1及び第2実施例により説明した
ように、本実施例のプログラムの起動方法は、正規のプ
ログラムのチェック用データと、その時点で装着されて
いるプログラムのチェック用データとを比較してその比
較結果に基づいてプログラムの正当性をチェックするの
で、マシンに装着されているプログラムの正当性を確実
にチェックできる。
As described above with reference to the first and second embodiments, the method for starting a program according to this embodiment uses the check data for the regular program and the check data for the program installed at that time. Are compared and the legitimacy of the program is checked based on the comparison result, so that the legitimacy of the program installed in the machine can be surely checked.

【0016】なお、上記した実施例は、電源がONされ
たときに正当性のチェックを行なったが、これに限定さ
れず、例えば電源ON後の所定の指示時でもよい。ま
た、2つのチェックサムが一致するかどうかに基づいて
アプリケーションプログラムの正当性をチェックしてい
るがこれに限定されず、例えば、どちらか一方のデータ
を反転させたデータが他方のデータと一致するかどうか
に基づいて正当性をチェックするようにしてもよい。
In the above-mentioned embodiment, the validity is checked when the power is turned on, but the invention is not limited to this. For example, a predetermined instruction may be given after the power is turned on. Also, the validity of the application program is checked based on whether or not the two checksums match, but the invention is not limited to this. For example, data obtained by inverting one of the data matches the other data. The validity may be checked based on whether or not.

【0017】さらに、上記したチェック用データはチェ
ックサムを算出することによって得られたデータのみな
らず、アプリケーションROMの未使用データなど、単
に抽出されたデータをも含むものとする。
Further, the above-mentioned checking data includes not only the data obtained by calculating the checksum, but also simply extracted data such as unused data in the application ROM.

【0018】[0018]

【発明の効果】本発明によれば、マシンに装着されてい
るプログラムの正当性を確実にチェックできるので、不
正プログラムの使用を禁止して正当なプログラムのみに
よる処理が可能となる。
According to the present invention, since the legitimacy of the program installed in the machine can be surely checked, it is possible to prohibit the use of the illegal program and perform the processing only by the legitimate program.

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

【図1】本発明の第1実施例に係るプログラム起動方法
を説明するためのフローチャートである。
FIG. 1 is a flowchart for explaining a program starting method according to a first embodiment of the present invention.

【図2】本発明の第2実施例に係るプログラム起動方法
を説明するためのフローチャートである。
FIG. 2 is a flowchart for explaining a program starting method according to a second embodiment of the present invention.

【図3】本発明の第1及び第2実施例に係るプログラム
の起動方法が適用されるプログラム処理装置の概略構成
図である。
FIG. 3 is a schematic configuration diagram of a program processing device to which a program starting method according to first and second embodiments of the present invention is applied.

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

10…CPU、11…OS(オペレーティングシステ
ム)ROM、12…アプリケーションROM、13…R
AM、14…入力部、15…表示部、16…表示コント
ローラ、17…警告ランプ。
10 ... CPU, 11 ... OS (operating system) ROM, 12 ... Application ROM, 13 ... R
AM, 14 ... Input unit, 15 ... Display unit, 16 ... Display controller, 17 ... Warning lamp.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 正規のプログラムに基づいたチェック用
データをあらかじめ記憶し、 プログラムの立ち上げ時に、その時点で装着されている
プログラムからチェック用データを抽出し、 上記あらかじめ記憶されたチェック用データと上記抽出
されたチェック用データとに基づいて、その時点で装着
されているプログラムの正当性をチェックし、 正当なプログラムであると判断された場合はそのプログ
ラムを起動することを特徴とするプログラムの起動方
法。
1. The check data based on a regular program is stored in advance, and when the program is started up, the check data is extracted from the program installed at that time, and the check data stored in advance is stored. Based on the extracted check data above, the legitimacy of the program installed at that time is checked, and if it is judged to be a legitimate program, that program is activated. starting method.
JP5188319A 1993-07-29 1993-07-29 Starting method for program Pending JPH0744378A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5188319A JPH0744378A (en) 1993-07-29 1993-07-29 Starting method for program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5188319A JPH0744378A (en) 1993-07-29 1993-07-29 Starting method for program

Publications (1)

Publication Number Publication Date
JPH0744378A true JPH0744378A (en) 1995-02-14

Family

ID=16221530

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5188319A Pending JPH0744378A (en) 1993-07-29 1993-07-29 Starting method for program

Country Status (1)

Country Link
JP (1) JPH0744378A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002023349A1 (en) * 2000-09-18 2002-03-21 Kabushiki Kaisha Toshiba Portable electronic medium
US6549993B2 (en) 2000-06-29 2003-04-15 Fujitsu Limited Contents check method, contents renewal method and processing apparatus
US7682252B2 (en) 2003-11-19 2010-03-23 Creatures, Inc. Game data control program, game data overwriting program and game data overwriting device
JP2013220764A (en) * 2012-04-18 2013-10-28 Mitsubishi Electric Corp Electronic controller for vehicle

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549993B2 (en) 2000-06-29 2003-04-15 Fujitsu Limited Contents check method, contents renewal method and processing apparatus
WO2002023349A1 (en) * 2000-09-18 2002-03-21 Kabushiki Kaisha Toshiba Portable electronic medium
US6490667B1 (en) 2000-09-18 2002-12-03 Kabushiki Kaisha Toshiba Portable electronic medium
US7682252B2 (en) 2003-11-19 2010-03-23 Creatures, Inc. Game data control program, game data overwriting program and game data overwriting device
JP2013220764A (en) * 2012-04-18 2013-10-28 Mitsubishi Electric Corp Electronic controller for vehicle

Similar Documents

Publication Publication Date Title
US9792440B1 (en) Secure boot for vehicular systems
JP4708414B2 (en) Autonomous memory checker for runtime security assurance
US6092229A (en) Single chip systems using general purpose processors
US9092598B2 (en) Version-based software product activation
WO2000019317A8 (en) Protection of boot block code while allowing write accesses to the boot block
US20200293694A1 (en) Protect computing device using hash based on power event
CN112379898B (en) Software safety starting method and system for V2X equipment
JPH0744378A (en) Starting method for program
CN111931192A (en) rootkit detection method and device and electronic equipment
US20030214305A1 (en) System with a monitoring device that monitors the proper functioning of the system, and method of operating such a system
US20090210613A1 (en) Method for Programming a Controller in a Motor Vehicle
JP2004206716A (en) Deciding method of code downloaded for run time constitution
JPH0744361A (en) Starting method for program
JPH09106690A (en) Rom with copy preventing function
JP2954173B1 (en) Method for preventing unauthorized use of pager device and pager device with unauthorized use prevention
JPH03136153A (en) Microcontroller
JPH02113345A (en) Pseudo machine error generation system
JPH05158804A (en) Ram checking method
JPH08241194A (en) Video game system, information processor and software storage means thereof
JPH08314715A (en) Data processor
JP2000242528A (en) Device for monitoring cpu runaway
CN118862046A (en) Password verification method, device, electronic equipment and readable storage medium
JPS63109558A (en) Program load system
JPS63307560A (en) Error checking method for ram
JP2000099302A (en) Image forming device support system