Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPS63822B2 - - Google Patents
[go: Go Back, main page]

JPS63822B2 - - Google Patents

Info

Publication number
JPS63822B2
JPS63822B2 JP55134762A JP13476280A JPS63822B2 JP S63822 B2 JPS63822 B2 JP S63822B2 JP 55134762 A JP55134762 A JP 55134762A JP 13476280 A JP13476280 A JP 13476280A JP S63822 B2 JPS63822 B2 JP S63822B2
Authority
JP
Japan
Prior art keywords
key
address
signal
signals
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.)
Expired
Application number
JP55134762A
Other languages
Japanese (ja)
Other versions
JPS5759248A (en
Inventor
Masashi Saito
Katsuyoshi Arikawa
Toshiaki Eguchi
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.)
SOFUIA SHISUTEMUZU KK
Original Assignee
SOFUIA SHISUTEMUZU KK
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 SOFUIA SHISUTEMUZU KK filed Critical SOFUIA SHISUTEMUZU KK
Priority to JP55134762A priority Critical patent/JPS5759248A/en
Publication of JPS5759248A publication Critical patent/JPS5759248A/en
Publication of JPS63822B2 publication Critical patent/JPS63822B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/123Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Remote Sensing (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Storage Device Security (AREA)

Description

【発明の詳細な説明】[Detailed description of the invention]

この発明は、所謂、テレビゲーム装置等のよう
に、マイクロコムピユータとROM若しくは
RAMに記憶されたプログラムを主要な構成要素
とする電子装置のためのプログラム盗用防止装置
に係わり、特に、過去に授受された信号の履歴に
基づいて特定されるキー信号を出力するように構
成されたキーデバイスを含むプログラム盗用防止
装置を提供する。 近年、マイクロコムピユータの普及に伴つて、
マイクロコムピユータを組み込んだ各種の機器が
大量に製造・販売されるようになつた。 このような機器では、プログラムの作成がコス
トに占める割合が相当に高く、多大の財産的価値
を備えている反面、販売された機器からの直接的
複製による模倣が比較的容易であるために、プロ
グラムの盗用が横行し、オリジナルのプログラム
を開発した製造者・販売者は甚大な被害を被つて
いるのが実情である。かかる被害は、プログラム
を採用した機器の流通量の増大化傾向に伴う盗用
機会の増大、加えて、プログラムの複雑高度化傾
向に伴う財産価値の増大を反映して、一層深刻に
なつている。 従前のプログラム盗用防止装置は、プログラム
作成者だけが知つている特定のキー数値(達)を
ROMの特定のアドレス(達)に記憶させてお
き、プログラムの進行に応じて所定の工程でキー
数値(達)を読み出して、プログラムで規定され
る演算処理(以下、キー処理作業という)の変数
として使用するように構成されていた。 上記キー処理作業として、例えば、 (1) 主作業の演算結果にキー数値を乗ずる。 (2) キー処理作業の演算結果を特定のキー数値と
照合し、不一致の場合に特定のアドレスにジヤ
ンプさせる。 (3) キー数値で規定される間接アドレスを使用す
る。 等の処理が提案されている。 しかしながら、プログラム中にかかるキー処理
作業のためのプログラムを含ませることによつ
て、他人によるプログラムの解読を相当に困難化
することはできるものの、プログラム中には本質
的にキー処理作業のためのプログラムも含まれて
いるのであるから、所謂、そつくりそのまま盗用
を防止することは困難であるという欠点があつ
た。 この発明の目的は、従前のプログラム盗用防止
装置におけるそつくりそのまま盗用の問題点に鑑
み、キー処理作業のためのプログラムの主要部を
ハードウエア化したキーデバイスを設けることに
より、キーデバイスのハードウエア上の構成を複
製しない限り、プログラムの盗用を不可能にし
て、上記欠点を解消し、盗用防止を極めて効果的
に行うことのできるプログラム盗用防止装置を提
供せんとするものである。 上記目的に沿うこの発明の構成は、キー操作信
号手段を設けて、アドレス バス若しくはデータ
バスを通じて一連の信号(以下、キー操作信号
という)をキーデバイスに対して授受し、キー処
理操作に際しては、キーデバイスの特定のアドレ
ス(以下、キーアドレスという)から信号を読み
出すと、キーデバイスは過去に授受した一連のキ
ー操作信号を変数とする特定の関数で規定される
信号(以下、キー信号という)を出力し、このキ
ー信号をキー信号処理手段でもつて演算処理し、
プログラム作成者が知つている所定のキー信号が
得られない場合には、プログラムの主作業を異常
な状態に至らしめるようにしたことを特徴とする
ものである。 この発明の一実施例の構成と動作を第1図〜第
2図に基づいて説明すれば以下の通りである。 第1図はこの発明の一実施例の構成を示すブロ
ツク図である。 同図において、1は中央処理装置(以下、
CPUという)であり、プログラムにより機能的
に実現されるキー操作信号手段1aとキー信号処
理手段1bとを含む。2はデータ バスであつ
て、多くの場合8本の導体から成り、3はアドレ
ス バスであつて、多くの場合16本の導体から成
り、4は制御線である。 バス2,3及び制御線4はそれぞれ分枝して読
み出し専用メモリ(以下、ROMという)若しく
はランダムアクセスメモリ(以下、RAMとい
う)5まで延び、バス2はそのデータ入出力端子
に、バス3はそのアドレス端子に、そして、制御
線4は読み出し書き込み制御端子に、それぞれ共
通に接続される。6はキーデバイスであつて、
ROM若しくはRAMと同様に、そのデータ入出
力端子にはデータ バス2が、アドレス端子には
アドレス バス3が、そして、読み出し書き込み
制御端子には制御線4がそれぞれ接続される。 一般にCPUとプログラムを記憶したROM若し
くはRAMから成る装置では、CPU1に内蔵さ
れ、順次に歩進するプログラムカウンタの内容を
デバイス選択信号とキー操作信号とから成るアド
レス信号としてアドレス バス3に送出し、複数
のROM若しくはRAM5のうちいずれか一つを
選択するためのアドレスをデバイス選択信号によ
り指定し、さらに選択されたROM若しくは
RAM中のアドレスをキー操作信号により指定
し、同時にCPU1から制御線4を通じて読み出
し信号をROM若しくはRAM5に伝達し、これ
らを読み出しモードにして、データ バス2を通
じて選択されたROM若しくはRAM中の指定さ
れたアドレスに記憶されている命令(プログラム
を構成している)を順次に読み出し、これを
CPU1にて解読し実行する動作、プログラム中
の特定の命令で指示されたアドレス信号と、読み
出し信号とを前記同様に伝達し、ROM若しくは
RAM5のいずれか一つについて指定されたアド
レスの記憶内容を読み出す動作及びプログラム中
の特定の命令で指示されたアドレス信号と書き込
み信号とを前記同様に伝達し、ROM若しくは
RAM5のいずれか一つについて指定されたアド
レスに特定のデータを記憶させる動作が基本動作
となつている。 キーデバイス6もCPU1との信号の授受に関
する限り、ROM若しくはRAM5と全く同じで
あり、接続ピンを共用して互換可能なものであ
る。 しかし、キーデバイス6はROM若しくは
RAM5のように指定されたアドレスに記憶され
た内容を再度そのまま読み出すものではなく、制
御線4経由で供給される書き込み信号又は読み出
し信号のいずれかに応答して、アドレスバス3経
由で該デバイス6に伝達された一連のキー操作信
号、あるいは、データバス2経由で該デバイス6
にて授受された一連のデータ信号をここに一時的
に記憶し、これらを変数として特定のキーデバイ
スの個有の関数について演算処理を行つてキー信
号を算出し、これをキーアドレスに記憶するよう
に結線された記憶素子群と論理回路素子でもつて
構成される。そして、キー処理作業に際しては、
アドレスバス3経由での、選択されたキーデバイ
ス6のアドレス中の特定のキーアドレスを指定す
るためのアドレス信号であるキー操作信号と、制
御線4経由での、該キーデバイスの作動モードを
読み出しモードにするための読み出し信号とが供
給されることで、該キーデバイス6がアクセスさ
れるたびごとに、データバス2には、該デバイス
6のキーアドレスへの過去のアクセスごとでのキ
ー操作信号の履歴、あるいは、それに加えて、デ
ータバス2経由で該デバイス6について過去に授
受されたデータの履歴に関連付けられたところ
の、該デバイス6に固有のキー信号が出力される
ものである。 次に、特定のキーデバイスに個有のキー信号を
算出するための動作を第1図及び第1表を参照し
つつ説明すれば以下の通りである。 いま、2000番地を容量2Kバイトのキーデバイ
スに割当てると、キー操作信号手段1aからアド
レス バス3を通じてキーデバイス6に供給され
る16ビツトのアドレス信号(以下、A15
This invention relates to a microcomputer and a ROM or
It relates to a program theft prevention device for an electronic device whose main component is a program stored in a RAM, and is particularly configured to output a key signal specified based on a history of signals sent and received in the past. The present invention provides a program theft prevention device including a key device. In recent years, with the spread of microcomputers,
Various devices incorporating microcomputers began to be manufactured and sold in large quantities. For such devices, the creation of programs accounts for a considerable proportion of the cost and has great property value, but on the other hand, it is relatively easy to imitate by direct copying from sold devices. The reality is that program plagiarism is rampant, and manufacturers and sellers who have developed original programs are suffering tremendous damage. Such damage is becoming more serious as a result of the increasing opportunities for theft due to the increasing distribution of devices incorporating the program, as well as the increasing property value due to the increasing complexity and sophistication of programs. Previous program plagiarism prevention devices use specific key figures known only to the program creator.
The key values are stored at specific addresses in the ROM, read out at predetermined steps as the program progresses, and used as variables for arithmetic processing specified in the program (hereinafter referred to as key processing work). It was configured to be used as Examples of the above key processing work include: (1) Multiplying the calculation result of the main work by a key value. (2) Compare the calculation result of key processing work with a specific key value, and if there is a mismatch, jump to a specific address. (3) Use indirect addresses specified by key figures. Such processing has been proposed. However, by including a program for such key processing work in a program, it is possible to make it considerably difficult for someone else to decode the program; Since it also includes programs, it has the disadvantage that it is difficult to prevent plagiarism as is. An object of the present invention is to provide a key device in which the main part of the program for key processing work is implemented in hardware, in view of the problem of theft in the original program theft prevention device. It is an object of the present invention to provide a program theft prevention device which can eliminate the above-mentioned drawbacks by making it impossible to plagiarize programs unless the above configuration is duplicated, and which can extremely effectively prevent theft. In accordance with the above object, the present invention includes a key operation signal means that sends and receives a series of signals (hereinafter referred to as key operation signals) to and from a key device via an address bus or a data bus, and upon key processing operations, When a signal is read from a specific address of the key device (hereinafter referred to as a key address), the key device receives a signal defined by a specific function whose variables are a series of key operation signals sent and received in the past (hereinafter referred to as a key signal). is output, and this key signal is processed by a key signal processing means,
The present invention is characterized in that if a predetermined key signal known to the program creator cannot be obtained, the main operation of the program is brought into an abnormal state. The structure and operation of an embodiment of the present invention will be described below with reference to FIGS. 1 and 2. FIG. 1 is a block diagram showing the configuration of an embodiment of the present invention. In the figure, 1 is a central processing unit (hereinafter referred to as
It includes key operation signal means 1a and key signal processing means 1b which are functionally realized by a program. 2 is a data bus, often consisting of 8 conductors; 3 is an address bus, often consisting of 16 conductors; and 4 are control lines. The buses 2, 3 and the control line 4 are branched and extend to a read-only memory (hereinafter referred to as ROM) or a random access memory (hereinafter referred to as RAM) 5, with bus 2 being the data input/output terminal, and bus 3 being The control line 4 is commonly connected to the address terminal and the read/write control terminal. 6 is a key device,
Similar to ROM or RAM, a data bus 2 is connected to its data input/output terminal, an address bus 3 is connected to its address terminal, and a control line 4 is connected to its read/write control terminal. In general, in a device consisting of a CPU and a ROM or RAM that stores programs, the contents of a sequentially incrementing program counter built into the CPU 1 are sent to the address bus 3 as an address signal consisting of a device selection signal and a key operation signal. The address for selecting one of the plurality of ROMs or RAMs 5 is specified by the device selection signal, and the selected ROM or
An address in the RAM is designated by a key operation signal, and at the same time, a read signal is transmitted from the CPU 1 to the ROM or RAM 5 through the control line 4, and these are set to read mode, and the designated address in the ROM or RAM selected through the data bus 2 is transmitted. The instructions (constituting the program) stored at the specified address are sequentially read out and executed.
The operation to be decoded and executed by the CPU 1, the address signal specified by a specific instruction in the program, and the read signal are transmitted in the same manner as described above, and the ROM or
The operation of reading the storage contents at a specified address for any one of the RAMs 5 and the address signal and write signal instructed by a specific command in the program are transmitted in the same manner as described above, and the ROM or
The basic operation is to store specific data at a designated address for any one of the RAMs 5. The key device 6 is also exactly the same as the ROM or RAM 5 as far as the transmission and reception of signals with the CPU 1 is concerned, and is compatible by sharing the connection pins. However, the key device 6 is ROM or
The device 6 does not read out the contents stored at a specified address as is, as in the RAM 5, but responds to either a write signal or a read signal supplied via the control line 4 to the device 6 via the address bus 3. or a series of key operation signals transmitted to the device 6 via the data bus 2.
Temporarily stores a series of data signals sent and received here, uses these as variables and performs arithmetic processing on the unique functions of a specific key device to calculate a key signal, and stores this in the key address. It is composed of a group of memory elements and logic circuit elements connected in this way. And when processing keys,
A key operation signal, which is an address signal for specifying a specific key address among the addresses of the selected key device 6, is read out via the address bus 3, and the operating mode of the key device is read out via the control line 4. Each time the key device 6 is accessed, the data bus 2 receives the key operation signal for each past access to the key address of the device 6. or, in addition, a key signal unique to the device 6 associated with the history of data transmitted and received in the past with respect to the device 6 via the data bus 2. Next, the operation for calculating a key signal specific to a specific key device will be described below with reference to FIG. 1 and Table 1. Now, when address 2000 is assigned to a key device with a capacity of 2 Kbytes, a 16-bit address signal (hereinafter referred to as A 15 ,

【表】【table】

【表】 A14,A13,………A4,A3,A2,A1,A0で表わ
す。)の第12ビツトA11〜第16ビツトA15のうち、
第14ビツトA13のみが「1」で他のビツトが
「0」のとき、このキーデバイス6が指定され、
更に、アドレス信号の第1ビツトA0〜第11ビツ
トA10によつてキーデバイス6内の記憶領域、即
ち、キーデバイス6のアドレスが指定される。
A11〜A15のビツト状態が上記と異なる場合には
ROM若しくはRAM5等のようにバスに接続さ
れた他の要素が選択されるものである。 そして、キーデバイス6についてはA0〜A10
用いて、2048個のキーアドレスを指定することが
可能であるが、一例として、A0=「0」、A4
「1」をキーアドレスに選定すると、キー操作信
号手段1aから供給されるアドレス信号のうち
A0=「0」、A4=「1」であるものがキー操作信号
であり、かつ、読み出し信号を受けたときに、キ
ーデバイス6はデータ バス2に対して8ビツト
のキー信号を出力することになる。 かかる8ビツトのキー信号(以下、R7,R6
………R1,R0で表わす。)はキーデバイス6に対
して供給されたアドレス信号の履歴に基づいて以
下に示すような関数で定義されている。 R0=A1(n−1) R1=A7(n−3) R22() R3=A10(n−2) R4=A3(n−2) R5=A1(n−2)*A4(n) R69(−1) R7=A5(n−1)+A3(n) ただし、(n)(n−1)(n−2)(n−3)は
キーデバイスのキーアドレスがアクセスされた順
位(キーデバイスがキー操作信号、A0=「0」、
A4=「1」、を受けた順位)を表わすものであり、
例えば、(n−1)は現在のアクセスの1回前に
アクセスされた時点を示す。 したがつて、例えば、R0=A1(n−1)は前回
のアクセス時点におけるアドレス信号の第2ビツ
トA1の状態が今回のアクセス時点におけるキー
信号の第1ビツトR0の状態と同じになるという
意味である。 そして、アドレス信号のA0を「0」、A4
「1」に選定して他のビツトA10〜A5、A3〜A4
種々に変化させた一連のキー操作信号(この実施
例ではアドレス信号そのもの)をキー操作信号手
段1aからキーデバイス6に供給した場合に、各
アクセス毎にキーデバイス6からデータ バス2
に出力されるべきキー信号R7,R6………R1,R0
のビツト状態を示すものが第1表である。 なお、同表中空白の部分は定義されていない状
態を、そして、Xは冗長を表わす。 キー処理作業に際しては、キー操作信号手段1
aからアドレス信号A0=「0」、A4=「1」である
複数のキー操作信号を順次にキーデバイス6に供
給し、例えば、第1表中第5のアクセス順位の時
点で、キー信号処理手段1bから制御線4経由で
読み出し信号を該デバイス6に供給して、キー信
号を読み出すと、「10111001」なるキー信号が得
られる。 このキー信号はデータ バス2を通じてキー信
号処理手段1bに伝達され、キー信号処理手段1
bはこのキー信号が予定されたキー信号
「10111001」であるかどうかを判定し、予定され
たキー信号でない場合にはプログラムの進行を異
常な状態に移行させる。 プログラム作成者はいかなるキー操作信号をい
かなる順序でキーデバイス6に与えるかを決定す
ることができ、更に、このキーデバイス6に個有
のキー信号を定義する関数を知つているのである
から、特定のキー処理作業に際して得られるべき
キー信号を予定することができるのである。 上記の実施例では、キー操作信号としてアドレ
ス信号のみを使用しているが、データ バス2を
通じてキーデバイス6に授受されるデータ信号を
利用することもできる。 また、A0=「0」、A4=「1」なる一つのアドレ
スが選定されているが、一つのキーデバイスにつ
いて二以上のキーアドレスを選定することは随意
である。 更に、上記実施例ではキーデバイス6をキー処
理作業の目的にのみ使用し、プログラムの主作業
に係わるデータ等は記憶しない構成となつている
が、通常のRAMと同等の機能を持つ構成にする
こともできる。この場合には、通常のアドレスを
指定して、RAMとして作動させ、キーアドレス
を指定して、そのキーアドレスに対応して定まる
キー信号を出力させればよい。 ただし、キー操作信号はプログラムの主作業を
離れて自由に選定できなくなるので、キー信号も
主作業のプログラムに拘束されることとなる。 第2図はこの発明の主要な構成要素であるキー
デバイス6の形態を示すものであり、同図Aはキ
ーデバイスとソケツトを示す斜視図、同図Bはキ
ーデバイスをプリント基板に実装した状態を示す
斜視図である。 同図Aにおいて、キーデバイス6は標準的な形
状を有し、更に、標準的な配列・形状のピン7を
備えている。ピン7はソケツト8のピン穴9に嵌
合し、ソケツト8の底部には固定ピン10が植設
されている。 同図Bに示すように、ソケツト8はプリント基
板11を貫通してプリントパタンに接続された固
定ピン10でもつて基板上面に固定され、キーデ
バイス6はピン7とピン穴9の嵌合によりソケツ
ト8を介してプリント基板11上面に実装され
る。 キーデバイス6を上記のような形態にまとめる
と、一旦、販売されたテレビゲーム装置等を回収
して、プログラムを交換し、新たなゲーム機能を
備えさせるに際して多用されている標準的な
ROM若しくはRAMの予備用ソケツトを利用し
てキーデバイスを追加的に装着することにより、
ハードウエア上の改変を伴うことなく交換後のプ
ログラムの盗用を防止できるという実益がある。 以上のようにこの発明は、キー操作信号手段か
ら供給される一連のキー操作信号の関数で表わさ
れる個有のキー信号を出力するキーデバイスを設
け、しかも、このキーデバイスのハードウエアに
個有のキー信号が得られるように構成されている
ので、プログラム盗用者はキー信号を算出するた
めの関数を解読するためにはキーデバイスのハー
ドウエア上の構成を複製しなければならず、盗用
が極めて困難となり、効果的に盗用防止ができる
という優れた効果がある。 更に、この発明の一実施例に示すように、プロ
グラム盗用防止装置を小型にまとめあげることは
実用上不可避的な要請であるから、プログラム盗
用者は必然的にキーデバイスをカスタム集積回路
等で複製しなければならない。 したがつて、盗用には高度の技術と大量の資金
を必要とすることとなるので、盗用の経済的動機
を減退せしめ、効果的に盗用防止ができるという
利点がある。 加うるに、この発明によれば、キーデバイスを
キー操作信号手段からアドレスバス経由で供給さ
れるアドレス信号のうちのキー操作信号と該信号
手段から制御線経由で供給される書き込み信号又
は読み出し信号とによる特定のキーアドレスへの
アクセスのたびごとに、該キーアドレスへの過去
のアクセスごとでのキー操作信号の履歴により規
定されるキー信号を、キー信号処理手段から制御
線経由で供給される読み出し信号に応答して出力
するものとして構成したことにより、プログラム
命令群中に他の記憶素子ROM,RAMに対する
データの書き込み又は読み出しのアクセスを実行
するためのものと同様のプログラム命令群を挿入
することで、キーデバイスからのキー信号が得ら
れるので、主作業のためのプログラム命令群に簡
単な変更処理を施すだけで主作業のためのプログ
ラム命令の実行中の所望の時期にプログラム盗用
防止の作業をも同時的にかつ極めて簡単に実現で
きるという優れた効果も奏され、かかる効果の故
に、運転開始時に主作業とは別にプログラムロー
ドの作業を必要とすることのないソフトウエア構
成のもの、典型的には、テレビゲーム装置等での
プログラム盗用防止作業も簡単に実現できるとい
う利点を伴う。 その上、この発明によれば、キーデバイスをア
ドレスバス、データバス及び制御線に対して他の
記憶素子ROM,RAMと互換可能に接続して、
キー操作信号手段からのアドレス信号のうちのデ
バイス選択信号にてこれを選択して択一的に作動
させる構成としたことにより、既知の装置に対し
てキーデバイス自体を簡便な装置で付加すること
ができるので、プログラムの拡張改良作業の時点
で事後的な処理によつてもプログラム盗用防止を
図ることができるという優れた効果も奏される。
[Table] Represented by A 14 , A 13 , A 4 , A 3 , A 2 , A 1 , A 0 . ) of the 12th bit A 11 to 16th bit A 15 ,
When only the 14th bit A13 is "1" and the other bits are "0", this key device 6 is specified,
Furthermore, the storage area within the key device 6, ie, the address of the key device 6, is specified by the first bit A0 to the eleventh bit A10 of the address signal.
If the bit states of A11 to A15 are different from the above,
Other elements connected to the bus, such as ROM or RAM 5, are selected. For the key device 6, it is possible to specify 2048 key addresses using A 0 to A 10 , but as an example, A 0 = "0", A 4 =
When "1" is selected as the key address, among the address signals supplied from the key operation signal means 1a,
When A 0 = “0” and A 4 = “1” are key operation signals and a read signal is received, the key device 6 outputs an 8-bit key signal to the data bus 2. I will do it. These 8-bit key signals (hereinafter referred to as R 7 , R 6 ,
…Represented by R 1 and R 0 . ) is defined by the following function based on the history of address signals supplied to the key device 6. R 0 = A 1 (n-1) R 1 = A 7 (n-3) R 2 = 2 () R 3 = A 10 (n-2) R 4 = A 3 (n-2) R 5 = A 1 (n-2) *A 4 (n) R 6 = 9 (-1) R 7 = A 5 (n-1) + A 3 (n) However, (n) (n-1) (n-2) (n-3) is the order in which the key address of the key device is accessed (the key device is the key operation signal, A 0 = "0",
A 4 = “1”, the received rank),
For example, (n-1) indicates the time point at which the access was made one time before the current access. Therefore, for example, R 0 = A 1 (n-1) means that the state of the second bit A 1 of the address signal at the time of the previous access is the same as the state of the first bit R 0 of the key signal at the time of the current access. It means to become. Then , a series of key operation signals (in this implementation In the example, when the address signal itself) is supplied from the key operation signal means 1a to the key device 6, the data bus 2 is sent from the key device 6 to the data bus 2 for each access.
Key signals to be output to R 7 , R 6 ...... R 1 , R 0
Table 1 shows the bit states of . Note that blank parts in the table indicate undefined states, and X indicates redundancy. During key processing work, the key operation signal means 1
A plurality of key operation signals with address signals A 0 = "0" and A 4 = "1" are sequentially supplied to the key device 6 from a, and for example, at the fifth access order in Table 1, the key operation signals are When a readout signal is supplied from the signal processing means 1b to the device 6 via the control line 4 and the key signal is read out, a key signal "10111001" is obtained. This key signal is transmitted to the key signal processing means 1b through the data bus 2.
Step b determines whether this key signal is the scheduled key signal "10111001", and if it is not the scheduled key signal, the program progresses to an abnormal state. The program creator can decide what key operation signals to give to the key device 6 and in what order, and also knows the function that defines the key signals unique to this key device 6. The key signal to be obtained during the key processing operation can be scheduled. In the above embodiment, only the address signal is used as the key operation signal, but it is also possible to use the data signal sent to and received from the key device 6 through the data bus 2. Furthermore, although one address, A 0 = "0" and A 4 = "1", is selected, it is optional to select two or more key addresses for one key device. Furthermore, in the above embodiment, the key device 6 is configured to be used only for the purpose of key processing work and does not store data related to the main work of the program, but it is configured to have the same function as a normal RAM. You can also do that. In this case, it is sufficient to designate a normal address to operate as a RAM, designate a key address, and output a key signal determined in accordance with the key address. However, since the key operation signal cannot be freely selected apart from the main work of the program, the key signal is also bound to the main work program. Figure 2 shows the form of the key device 6, which is the main component of this invention. Figure A is a perspective view showing the key device and socket, and Figure B shows the key device mounted on a printed circuit board. FIG. In FIG. 1A, the key device 6 has a standard shape and is further provided with pins 7 having a standard arrangement and shape. The pin 7 fits into a pin hole 9 of a socket 8, and a fixing pin 10 is implanted in the bottom of the socket 8. As shown in Figure B, the socket 8 is fixed to the top surface of the board with a fixing pin 10 that passes through the printed circuit board 11 and is connected to the printed pattern, and the key device 6 is fixed to the socket by fitting the pin 7 and the pin hole 9. It is mounted on the upper surface of the printed circuit board 11 via 8. When the key device 6 is put together in the form described above, it is a standard device that is often used when collecting sold video game devices, exchanging programs, and equipping them with new game functions.
By additionally installing a key device using the ROM or RAM spare socket,
There is a practical benefit in that it is possible to prevent theft of programs after replacement without modifying the hardware. As described above, the present invention provides a key device that outputs a unique key signal expressed as a function of a series of key operation signals supplied from a key operation signal means, and furthermore, the hardware of this key device has a unique key signal. Since the program is configured in such a way that a key signal of This has the excellent effect of effectively preventing plagiarism. Furthermore, as shown in one embodiment of the present invention, it is practically unavoidable to make the program theft prevention device compact, so the program theft person inevitably copies the key device with a custom integrated circuit or the like. There must be. Therefore, since plagiarism requires advanced technology and a large amount of funds, there is an advantage in that the economic motivation for plagiarism is reduced and plagiarism can be effectively prevented. In addition, according to the present invention, the key operation signal of the address signals supplied from the key operation signal means via the address bus and the write signal or read signal supplied from the signal means via the control line can be used to control the key device. Each time a specific key address is accessed by the key address, a key signal defined by the history of key operation signals for each past access to the key address is supplied from the key signal processing means via the control line. By configuring the program to be output in response to a read signal, a group of program instructions similar to those for executing data write or read access to other storage elements ROM and RAM are inserted into the program instruction group. By doing this, the key signal from the key device can be obtained, so by simply making changes to the program commands for the main work, program theft prevention can be implemented at the desired time during the execution of the program commands for the main work. It also has the excellent effect of being able to perform the tasks simultaneously and extremely easily, and because of this effect, it has a software configuration that does not require program loading work in addition to the main work at the start of operation. Typically, this method has the advantage that it is easy to prevent program plagiarism in video game devices and the like. Moreover, according to the present invention, the key device is connected to the address bus, data bus, and control line so as to be compatible with other storage elements ROM and RAM.
The key device itself can be added to a known device using a simple device by selecting the device selection signal from among the address signals from the key operation signal means and selectively activating it. Therefore, an excellent effect can be achieved in that program plagiarism can be prevented even through post-processing at the time of program expansion and improvement work.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はこの発明の一実施例の構成を示すブロ
ツク図、第2図はキーデバイスの形態を示すもの
で、同図Aはキーデバイスとソケツトを示す斜視
図、同図Bはキーデバイスをプリント基板に実装
した状態を示す斜視図である。 1……中央処理装置、1a……キー操作信号手
段、1b……キー信号処理手段、2……データ
バス、3……アドレス バス、4……制御線、5
……読み出し専用メモリ若しくはランダムアクセ
スメモリ、6……キーデバイス、7……ピン、8
……ソケツト、9……ピン穴、10……固定ピ
ン、11……プリント基板。
Figure 1 is a block diagram showing the configuration of an embodiment of the present invention, Figure 2 shows the form of a key device, Figure A is a perspective view showing the key device and socket, Figure B is a perspective view of the key device. FIG. 3 is a perspective view showing a state where the device is mounted on a printed circuit board. 1...Central processing unit, 1a...Key operation signal means, 1b...Key signal processing means, 2...Data
Bus, 3...Address Bus, 4...Control line, 5
...Read-only memory or random access memory, 6...Key device, 7...Pin, 8
...Socket, 9...Pin hole, 10...Fixing pin, 11...Printed circuit board.

Claims (1)

【特許請求の範囲】 1 実行中のプログラム命令に基づいて、デバイ
ス選択信号A11〜A15とキー操作信号A0〜
A10とから成るアドレス信号A0〜A15をア
ドレスバス3上に、書き込み信号を制御線4上
に、それぞれ出力するキー操作信号手段1aと、 アドレスバス3、データバス2及び制御線4に
対して他の記憶素子ROM,RAMと互換可能に
接続される半導体集積回路から成り、アドレスバ
ス3経由で供給されるアドレス信号A0〜A15
のうちのデバイス選択信号A11〜A15により
自己が選択されているときに限り、該アドレス信
号のうちのキー操作信号A0〜A10と制御線4
経由で供給される書き込み信号とによる特定のキ
ーアドレスへのアクセスごとに、該キーアドレス
への過去のアクセスごとでのキー操作信号A0〜
A10の履歴により規定されるキー信号R0〜R
7を制御線4上の読み出し信号に応答してデータ
バス2上に出力するキーデバイス6と、 実行中のプログラム命令に基づいて、読み出し
信号を制御線4上に出力し、該信号に応答して、
キーデバイス6からデータバス2経由で供給され
るキー信号R0〜R7が予め予定された所定のキ
ー信号でないときに、実行中のプログラム命令に
基づく主作業を遂行不能にするキー信号処理手段
1bとを備えたプログラム盗用防止装置。
[Claims] 1. Based on the program command being executed, device selection signals A11 to A15 and key operation signals A0 to
A key operation signal means 1a for outputting address signals A0 to A15 consisting of A10 onto the address bus 3 and a write signal onto the control line 4, respectively; It consists of a semiconductor integrated circuit that is compatiblely connected to the storage elements ROM and RAM, and the address signals A0 to A15 are supplied via the address bus 3.
Only when the device is selected by the device selection signals A11 to A15 among the address signals, the key operation signals A0 to A10 of the address signals and the control line 4
For each access to a specific key address with the write signal supplied via the key operation signal A0 to each previous access to the key address
Key signals R0 to R defined by the history of A10
7 on the data bus 2 in response to a read signal on the control line 4; hand,
a key signal processing means 1b that makes it impossible to carry out the main work based on the program command being executed when the key signals R0 to R7 supplied from the key device 6 via the data bus 2 are not predetermined key signals scheduled in advance; A program plagiarism prevention device equipped with
JP55134762A 1980-09-27 1980-09-27 Prevention device for surreptitious use of program Granted JPS5759248A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP55134762A JPS5759248A (en) 1980-09-27 1980-09-27 Prevention device for surreptitious use of program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP55134762A JPS5759248A (en) 1980-09-27 1980-09-27 Prevention device for surreptitious use of program

Publications (2)

Publication Number Publication Date
JPS5759248A JPS5759248A (en) 1982-04-09
JPS63822B2 true JPS63822B2 (en) 1988-01-08

Family

ID=15135959

Family Applications (1)

Application Number Title Priority Date Filing Date
JP55134762A Granted JPS5759248A (en) 1980-09-27 1980-09-27 Prevention device for surreptitious use of program

Country Status (1)

Country Link
JP (1) JPS5759248A (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2525790A1 (en) * 1982-04-22 1983-10-28 Enigma Logic Inc SECURITY DEVICE FOR CONTROLLING AND CONTROLLING ACCESS TO LOCATIONS AND DETERMINED OBJECTS
JPS60116537U (en) * 1984-01-18 1985-08-07 竹林 春海 Electronic computer program plagiarism prevention device
JPS60263867A (en) * 1984-06-12 1985-12-27 Mitsubishi Electric Corp Frequency and voltage converting device
JP2544099B2 (en) * 1985-03-09 1996-10-16 株式会社 メルコ Computer program anti-theft device
JP2553495B2 (en) * 1985-05-14 1996-11-13 キャダムシステム 株式会社 Program keyboard mechanism
JP2544101B2 (en) * 1985-05-23 1996-10-16 株式会社 メルコ Computer program anti-theft device
JPS61296433A (en) * 1985-06-24 1986-12-27 Nintendo Co Ltd Software control system in external storage device
FR2586310A1 (en) * 1985-08-14 1987-02-20 Daneluzzo Claude Protection system intended especially for software
JP4891284B2 (en) * 2008-03-28 2012-03-07 ジヤトコ株式会社 Belt type continuously variable transmission

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5320368A (en) * 1976-08-09 1978-02-24 Fujikura Ltd Measuring device for resistance of conductor

Also Published As

Publication number Publication date
JPS5759248A (en) 1982-04-09

Similar Documents

Publication Publication Date Title
JP2883784B2 (en) Microcomputer
US4315321A (en) Method and apparatus for enhancing the capabilities of a computing system
US5832251A (en) Emulation device
JP2501874B2 (en) IC card
JPS63822B2 (en)
US4807185A (en) Stack pointer control circuit
JPH0758502B2 (en) IC card
US5127096A (en) Information processor operative both in direct mapping and in bank mapping, and the method of switching the mapping schemes
US6647475B2 (en) Processor capable of enabling/disabling memory access
JP3380827B2 (en) Emulator device
JP2000194551A (en) Flash memory rewriting circuit
US5428767A (en) Data retention circuit
US5233697A (en) PLC processor and PLC
US4388707A (en) Memory selecting system
JP3144424B2 (en) CPU restart circuit
JPS61500992A (en) Improvements in or relating to computer systems
JPH0246970B2 (en) MEMORIKA KUCHOHOSHIKI
JPS5854418A (en) Interrupt processing method
JPH0226252B2 (en)
DE69905671T2 (en) Electronic circuit for data backup in a semiconductor device
JPH0129638Y2 (en)
JPS5947624A (en) Loading system of system program
JPH0418043Y2 (en)
JP3182287B2 (en) Microprocessor
JP2959299B2 (en) Status display circuit