JPH02297626A - System for masking contents of program and data - Google Patents
System for masking contents of program and dataInfo
- Publication number
- JPH02297626A JPH02297626A JP1118898A JP11889889A JPH02297626A JP H02297626 A JPH02297626 A JP H02297626A JP 1118898 A JP1118898 A JP 1118898A JP 11889889 A JP11889889 A JP 11889889A JP H02297626 A JPH02297626 A JP H02297626A
- Authority
- JP
- Japan
- Prior art keywords
- program
- data
- encrypted
- buffer
- instruction
- 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
- 230000000873 masking effect Effects 0.000 title 1
- 230000003213 activating effect Effects 0.000 claims description 2
- 238000000034 method Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はプログラム及びプログラムの実行中に記憶装置
に設定するデータの内容を隠蔽することができるプログ
ラム及びデータの内容隠蔽方式に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a program and data content hiding method that can hide the content of a program and data set in a storage device during execution of the program.
従来より、プログラムの内容を隠蔽するため、プログラ
ムライブラリ等に格納しておくプログラムを暗号化して
おくということが行なわれているが、暗号化されたプロ
グラムを実行する場合、従来は暗号化されたプログラム
を解読した後、利用者システムの記憶装置にロードする
ようにしている。また、プログラムの実行中にデータを
記憶装置に設定することが必要になった場合は、データ
をそのまま記憶装置に設定するようにしている。Conventionally, programs stored in program libraries etc. have been encrypted in order to hide the program contents, but when running an encrypted program, conventionally After the program is decoded, it is loaded into the storage device of the user's system. Furthermore, if it becomes necessary to set data in the storage device during execution of a program, the data is set in the storage device as is.
従来は上述したように、プログラムを実行する際、暗号
化されたプログラムを解読した後、記憶装置にロードす
るようにしており、また、プログラムの実行中にデータ
を記憶装置に設定することが必要になった場合、データ
をそのまま記憶装置に設定するようにしているため、プ
ログラムの実行中に記憶装置が参照された場合、プログ
ラム及びデータの内容を隠蔽することができないという
問題があった。Conventionally, as mentioned above, when executing a program, the encrypted program is decrypted and then loaded into the storage device, and it is also necessary to set data to the storage device while the program is running. In this case, since the data is set in the storage device as is, there is a problem that if the storage device is referenced while the program is being executed, the contents of the program and data cannot be hidden.
本発明の目的はプログラムの実行時に記憶装置が参照さ
れても、プログラム及びデータの内容を隠蔽できるよう
にすることにある。An object of the present invention is to make it possible to hide the contents of the program and data even if the storage device is referenced when the program is executed.
本発明は上記目的を達成するため、
暗号化された暗号化プログラムを実行するシステムに於
いて、
中央処理装置と、
該中央処理装置で実行する暗号化プログラムが設定され
る記憶装置と、
該記憶装置に前記中央処理装置が実行する暗号化プログ
ラムを設定すると共に、前記中央処理装置に対して暗号
化プログラムの実行を指示するプログラム実行開始手段
とを含み、
前記中央処理装置は、
命令解読バフフッと、
該命令解読バッファに設定された暗号化プログラムを解
読し、解読結果を前記命令解読バッファに設定する暗号
化プログラム解読手段と、データバッファと、
該データバッファに設定されたデータを暗号化して前記
記憶装置に設定するデータ暗号化手段と、前記記憶装置
に設定された暗号化データを解読して解読結果を前記デ
ータバッファに設定する暗号化データ解読手段と、
前記プログラム実行開始手段からの指示に応答して前記
記憶手段に設定されている暗号化プログラムの命令を前
記命令解読バッファに設定した後、前記暗号化プログラ
ム解読手段を起動し、前記暗号化プログラム解読手段に
よって解読され、前記命令解読バッファに設定された命
令が前記記憶装置にデータを設定する命令である場合は
前記データバッファにデータを設定して前記データ暗号
化手段を起動させ、前記記憶手段からデータを人力する
命令である場合は前記暗号化データ解読手段を起動させ
、前記暗号化データ解読手段により前記データバッファ
に設定されたデータを入力するプログラム実行手段とを
含んでいる。In order to achieve the above object, the present invention provides a system for executing an encrypted encryption program, which includes: a central processing unit; a storage device in which an encryption program to be executed by the central processing unit is set; and the storage. a program execution start means for setting an encrypted program to be executed by the central processing unit in the device and instructing the central processing unit to execute the encrypted program; , an encrypted program decryption means for decrypting the encrypted program set in the instruction decoding buffer and setting the decryption result in the instruction decoding buffer; a data buffer; data encryption means for setting in the storage device; encrypted data decryption means for decrypting the encrypted data set in the storage device and setting the decryption result in the data buffer; In response, the instructions of the encrypted program set in the storage means are set in the instruction decoding buffer, and then the encrypted program decoding means is started, and the encrypted program is decoded by the encrypted program decoding means, and the instructions are read in the instruction decoding buffer. If the command set in is a command to set data in the storage device, set the data in the data buffer and start the data encryption means, and if it is a command to manually input data from the storage means. and program execution means for activating the encrypted data decryption means and inputting data set in the data buffer by the encrypted data decryption means.
プログラム実行開始手段は中央処理装置に暗号化プログ
ラムを実行させる場合、暗号化プログラムを記憶装置に
設定すると共に、中央処理装置に設けられているプログ
ラム実行手段にプログラムの実行開始を指示する。プロ
グラム実行手段はこの指示に応答して記憶装置に設定さ
れている暗号化プログラムの命令をデータバッファに設
定し、その後、暗号化プログラム解読手段を起動させる
。When causing the central processing unit to execute the encrypted program, the program execution starting means sets the encrypted program in the storage device and instructs the program execution means provided in the central processing unit to start executing the program. In response to this instruction, the program execution means sets the command of the encrypted program set in the storage device in the data buffer, and then activates the encrypted program decryption means.
暗号化プログラム解読手段は起動がかけられると、命令
解読バッファに設定されている暗号化プログラムの命令
を解読して命令解読バッファに設定し、プログラム実行
手段は暗号化プログラム解読手段によって解読され、命
令解読バッファに設定された命令を実行する。命令解読
バッファに設定された命令が記憶装置にデータを設定す
る命令である場合には、プログラム実行手段はデータバ
ッファにデータを設定した後、データ暗号化手段を起動
する。データ暗号化手段は起動されることにより、プロ
グラム実行手段がデータバッファに設定したデータを暗
号化して記憶装置に設定する。また、命令解読バッファ
に設定された命令が記憶装置に設定されているデータを
入力する命令である場合にはプログラム実行手段は暗号
化データ解読手段を起動する。暗号化データ解読手段は
起動されることにより記憶装置に設定されているデータ
を入力し、解読してデータバッファに設定する。プログ
ラム実行手段は暗号化データ解読手段がデータバッファ
に設定した解読済みのデータを入力する。When activated, the encrypted program decoding means decodes the encrypted program command set in the instruction decoding buffer and sets it in the instruction decoding buffer, and the program execution means is decoded by the encrypted program decoding means and reads the instructions. Execute the instructions set in the decoding buffer. If the instruction set in the instruction decoding buffer is an instruction to set data in the storage device, the program execution means sets the data in the data buffer and then activates the data encryption means. When activated, the data encryption means encrypts the data set in the data buffer by the program execution means and sets it in the storage device. Furthermore, if the instruction set in the instruction decoding buffer is an instruction to input data set in the storage device, the program execution means activates the encrypted data decoding means. When activated, the encrypted data decryption means inputs data set in the storage device, decrypts it, and sets it in the data buffer. The program execution means inputs the decrypted data set in the data buffer by the encrypted data decryption means.
次に本発明の実施例について図面を参照して詳細に説明
する。Next, embodiments of the present invention will be described in detail with reference to the drawings.
第1図は本発明の実施例のブロック図であり、内容が暗
号化された暗号化供給プログラム1を実行する利用者シ
ステム(情報処理装置)3はプログラム実行開始手段4
と、記憶装置5と、中央処理装置8とから構成されてお
り、中央処理装置f8は暗号化データ解読手段9と、デ
ータ暗号化手段lOと、データバッファ11と、プログ
ラム実行手段12と、命令解読バッファ13と、暗号化
プログラム解読手段14とを含んでいる。FIG. 1 is a block diagram of an embodiment of the present invention, in which a user system (information processing device) 3 that executes an encrypted supply program 1 whose contents are encrypted is a program execution starting means 4.
, a storage device 5, and a central processing unit 8, and the central processing unit f8 includes an encrypted data decryption means 9, a data encryption means IO, a data buffer 11, a program execution means 12, and an instruction It includes a decryption buffer 13 and an encrypted program decryption means 14.
次に本実施例の動作を説明する。Next, the operation of this embodiment will be explained.
暗号化供給プログラム1を利用者システム3で実行する
場合、利用者2はプログラム実行開始手段4を起動する
。プログラム実行開始手段4は起動がかけられることに
より、暗号化供給プログラムlを記憶装置5上に暗号化
プログラム6として設定し、その後プログラム実行手段
12を起動する。When executing the encrypted supply program 1 on the user system 3, the user 2 starts the program execution starting means 4. When activated, the program execution starting means 4 sets the encrypted supply program 1 as the encrypted program 6 on the storage device 5, and then starts the program executing means 12.
プログラム実行手段12は記憶装置5上に設定されてい
る暗号化プログラム6から命令を取り出して命令解読バ
ッファ13に設定した後、暗号化プログラム解読手段1
4を起動する。暗号化プログラム解読手段14は起動が
かけられることにより、命令解読バッファ13に設定さ
れている命令を解読してプログラム実行手段12で実行
可能な形に変換し、命令解読バッファ13に設定する。The program execution means 12 extracts an instruction from the encrypted program 6 set on the storage device 5 and sets it in the instruction decoding buffer 13, and then the encrypted program decoding means 1
Start 4. When activated, the encrypted program decoding means 14 decodes the command set in the command decoding buffer 13, converts it into a form executable by the program execution means 12, and sets it in the command decoding buffer 13.
プログラム実行手段12は命令解読バッファ13に実行
可能な形に変換された命令が設定されると、その命令を
実行する。その際、実行する命令が記憶装置5にデータ
を設定するものである場合はデータバッファ11にデー
タを設定した後、データの設定位置を指定してデータ暗
号化手段10を起動する。これにより、データ暗号化手
段10はデータバッファ11に設定されたデータを暗号
化し、暗号化した内容を記憶装置5の指定された位置に
暗号化データ7として設定する。また、実行する命令が
記憶装置5からデータを入力するものである場合は、デ
ータの設定位置を指定して暗号化データ解読手段9を起
動する。暗号化データ解読手段9は起動がかけられるこ
とにより、記憶装置5の指定された位置から暗号化デー
タ7を入力し、人力した内容を解読して解読結果をデー
タバッファ11に設定する。プログラム実行手段12は
データバッファ11に解読済みのデータが設定されるこ
とにより、そのデータを入力する。When an instruction converted into an executable form is set in the instruction decoding buffer 13, the program execution means 12 executes the instruction. At this time, if the command to be executed is to set data in the storage device 5, the data is set in the data buffer 11, the data setting position is specified, and the data encryption means 10 is activated. Thereby, the data encryption means 10 encrypts the data set in the data buffer 11, and sets the encrypted contents in the designated location of the storage device 5 as encrypted data 7. Furthermore, if the command to be executed is to input data from the storage device 5, the encrypted data decryption means 9 is activated by specifying the data setting position. When the encrypted data decryption means 9 is activated, it inputs the encrypted data 7 from a designated location in the storage device 5, decrypts the manually input contents, and sets the decryption result in the data buffer 11. When the decoded data is set in the data buffer 11, the program execution means 12 inputs the data.
以上説明したように、本発明は、記憶装置には暗号化プ
ログラムをそのまま設定し、プログラム実行手段により
暗号化プログラムの命令を実行する場合には暗号化プロ
グラム解読手段によって暗号化プログラムの命令をプロ
グラム実行手段で実行可能な形に変換するようにしたも
のであるので、プログラムの実行中に記憶装置が参照さ
れても、プログラムの内容を隠蔽することができる効果
がある。また、更に、本発明はプログラムの実行中に記
憶装置にデータを設定することが必要な場合、データ暗
号化手段を用いてデータを暗号化した後に記憶装置に設
定するようにしたものであるので、プログラムの実行中
に記憶装置が参照されても、データの内容を躇蔽するこ
とができる効果がある。As explained above, in the present invention, an encrypted program is set in the storage device as it is, and when the program execution means executes the instructions of the encrypted program, the encrypted program decryption means is used to program the instructions of the encrypted program. Since the program is converted into a format executable by the execution means, it is possible to hide the contents of the program even if the storage device is referenced while the program is being executed. Furthermore, according to the present invention, when it is necessary to set data in the storage device during program execution, the data is encrypted using a data encryption means and then set in the storage device. This has the effect that even if the storage device is referenced during program execution, the contents of the data can be hidden.
第1図は本発明の実施例のブロック図である。 図に於いて、 1・・・暗号化供給プログラム 2・・・利用者 3・・・利用者システム 4・・・プログラム実行開始手段 5・・・記憶装置 6・・・暗号化プログラム 7・・・暗号化データ 8・・・中央処理装置 9・・・暗号化データ解読手段 10・・・データ暗号化手段 11・・・データバッファ 12・・・プログラム実行手段 13・・・命令解読バッファ FIG. 1 is a block diagram of an embodiment of the invention. In the figure, 1... Encryption supply program 2...User 3...User system 4...Program execution start means 5...Storage device 6...Encryption program 7... Encrypted data 8...Central processing unit 9...Encrypted data decryption means 10...Data encryption means 11...Data buffer 12...Program execution means 13...Instruction decoding buffer
Claims (1)
いて、 中央処理装置と、 該中央処理装置で実行する暗号化プログラムが設定され
る記憶装置と、 該記憶装置に前記中央処理装置が実行する暗号化プログ
ラムを設定すると共に、前記中央処理装置に対して暗号
化プログラムの実行を指示するプログラム実行開始手段
とを含み、 前記中央処理装置は、 命令解読バッファと、 該命令解読バッファに設定された暗号化プログラムを解
読し、解読結果を前記命令解読バッファに設定する暗号
化プログラム解読手段と、 データバッファと、 該データバッファに設定されたデータを暗号化して前記
記憶装置に設定するデータ暗号化手段と、前記記憶装置
に設定された暗号化データを解読して解読結果を前記デ
ータバッファに設定する暗号化データ解読手段と、 前記プログラム実行開始手段からの指示に応答して前記
記憶手段に設定されている暗号化プログラムの命令を前
記命令解読バッファに設定した後、前記暗号化プログラ
ム解読手段を起動し、前記暗号化プログラム解読手段に
よって解読され、前記命令解読バッファに設定された命
令が前記記憶装置にデータを設定する命令である場合は
前記データバッファにデータを設定して前記データ暗号
化手段を起動させ、前記記憶手段からデータを入力する
命令である場合は前記暗号化データ解読手段を起動させ
、前記暗号化データ解読手段により前記データバッファ
に設定されたデータを入力するプログラム実行手段とを
含むことを特徴とするプログラム及びデータの内容隠蔽
方式。[Scope of Claim] A system for executing an encrypted program, comprising: a central processing unit; a storage device in which an encrypted program to be executed by the central processing unit is set; program execution start means for setting an encrypted program to be executed by a processing unit and instructing the central processing unit to execute the encrypted program; the central processing unit includes: an instruction decoding buffer; and a command decoding buffer. an encrypted program decryption unit that decrypts an encrypted program set in a buffer and sets the decryption result in the instruction decoding buffer; a data buffer; and a data buffer that encrypts the data set in the data buffer and sets it in the storage device. data encryption means for decrypting the encrypted data set in the storage device and setting the decryption result in the data buffer; After setting the instructions of the encrypted program set in the storage means in the instruction decoding buffer, the encrypted program decoding means is activated, and the encrypted program decrypting means decrypts the instructions and sets them in the instruction decoding buffer. If the instruction is an instruction to set data in the storage device, the data is set in the data buffer and the data encryption means is started; if the instruction is an instruction to input data from the storage device, the encrypted data is 1. A program and data content hiding method, comprising program execution means for activating a decryption means and inputting data set in the data buffer by the encrypted data decryption means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1118898A JPH02297626A (en) | 1989-05-12 | 1989-05-12 | System for masking contents of program and data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1118898A JPH02297626A (en) | 1989-05-12 | 1989-05-12 | System for masking contents of program and data |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02297626A true JPH02297626A (en) | 1990-12-10 |
Family
ID=14747898
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1118898A Pending JPH02297626A (en) | 1989-05-12 | 1989-05-12 | System for masking contents of program and data |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02297626A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5632024A (en) * | 1993-06-08 | 1997-05-20 | Hitachi, Ltd. | Microcomputer executing compressed program and generating compressed branch addresses |
WO2000057278A1 (en) * | 1999-03-19 | 2000-09-28 | Hitachi, Ltd. | Information processing device |
US7131133B1 (en) | 1996-09-18 | 2006-10-31 | Kabushiki Kaisha Toshiba | Access control method and information utilization apparatus |
WO2014125639A1 (en) * | 2013-02-18 | 2014-08-21 | 三菱電機株式会社 | Control program management apparatus, controller apparatus, and control system |
-
1989
- 1989-05-12 JP JP1118898A patent/JPH02297626A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5632024A (en) * | 1993-06-08 | 1997-05-20 | Hitachi, Ltd. | Microcomputer executing compressed program and generating compressed branch addresses |
US7131133B1 (en) | 1996-09-18 | 2006-10-31 | Kabushiki Kaisha Toshiba | Access control method and information utilization apparatus |
WO2000057278A1 (en) * | 1999-03-19 | 2000-09-28 | Hitachi, Ltd. | Information processing device |
WO2000057290A1 (en) * | 1999-03-19 | 2000-09-28 | Hitachi, Ltd. | Information processor |
US7082539B1 (en) | 1999-03-19 | 2006-07-25 | Hitachi, Ltd. | Information processing apparatus |
WO2014125639A1 (en) * | 2013-02-18 | 2014-08-21 | 三菱電機株式会社 | Control program management apparatus, controller apparatus, and control system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH08305558A (en) | Ciphering program arithmetic unit | |
WO2004072891A3 (en) | System and method for regulating execution of computer software | |
JPH02297626A (en) | System for masking contents of program and data | |
JPS6113232B2 (en) | ||
JPH08185361A (en) | Semiconductor integrated circuit device | |
JP2001318768A (en) | Entertainment device, component therefor, method for loading digital information with entertainment device and computer program | |
WO2013042409A1 (en) | Module encryption/decryption program | |
JP2696219B2 (en) | Information protection method | |
WO2016095506A1 (en) | Ciphertext data decryption method, system and computer storage medium | |
KR100391932B1 (en) | Method for protecting digital data through real-time system api controller without modifying application program | |
JPH02128221A (en) | Central processing unit with function for concealing content of program | |
CN101458756A (en) | File real time decrypting method | |
JP2002305515A5 (en) | ||
JPS58184608A (en) | Numerical control system | |
JPS6358538A (en) | Software protecting system | |
JPH01195505A (en) | Numerical controller | |
JPH02120901A (en) | Programmable controller | |
JPS6278644A (en) | Password storage | |
JPH06332781A (en) | File controlling method | |
JP5829959B2 (en) | Information processing apparatus and program | |
JPS61195427A (en) | Program identifier | |
JPH05151092A (en) | Data protection device | |
JPS6145548Y2 (en) | ||
JPS647355U (en) | ||
KR20090096769A (en) | A method for real-time program decryption using a separate process which interacts with the execution process |