JPH0245849A - Program protecting method to use memory card - Google Patents

Program protecting method to use memory card

Info

Publication number
JPH0245849A
JPH0245849A JP63196861A JP19686188A JPH0245849A JP H0245849 A JPH0245849 A JP H0245849A JP 63196861 A JP63196861 A JP 63196861A JP 19686188 A JP19686188 A JP 19686188A JP H0245849 A JPH0245849 A JP H0245849A
Authority
JP
Japan
Prior art keywords
memory card
program
address
host
bus
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
JP63196861A
Other languages
Japanese (ja)
Inventor
Atsuhiro Yamagishi
山岸 篤弘
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP63196861A priority Critical patent/JPH0245849A/en
Publication of JPH0245849A publication Critical patent/JPH0245849A/en
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

PURPOSE:To protect the contents of a program to be stored in a ROM and to simultaneously prevent the unfair copy of the program with the third person by directly accessing the ROM in a memory card from a host CPU and controlling the output of the ROM in the memory card with a microprocess which is provided in the memory card. CONSTITUTION:When a fair user executes the protected program, the fair user stores an interruption processing program to a part, which is not overlapped with a memory card 6, on a main storage 3 in advance. When the memory card 6 is connected through a bus adapter 5 to a system bus 2, out of the address areas of the main storage 3, a part from an (n) address to an M address is allocated to a ROM8 and a RAM9 in the memory card 6 like being shown in a figure. Next, the program to be stored to the ROM8 in the memory card 6 and to be the subject of the protection is executed by a host CPU1.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、情報処理システムにより実行されるプログ
ラムが不正に複写されるのを防止するなめのメモリカー
ドを用いたプログラム保護方法に関するものである。
[Detailed Description of the Invention] [Field of Industrial Application] The present invention relates to a program protection method using a slotted memory card to prevent a program executed by an information processing system from being illegally copied. .

〔従来の技術〕[Conventional technology]

第7図は例えば文献([マイクロコンピュータインタフ
ェース技術」昭和58年2月20日、株式会社マイテン
ク)に記載されているような従来の情報処理システムに
より、第3者により作成されたプログラムを実行する際
の基本的な構成を示すブロック図である0図において、
lはプログラムを実行する中央処理装置(以下ホス)C
PUという)、2はこのCPUIとプログラムやデータ
を蓄える主記憶および第3者によって作成されたプログ
ラムが格納されたフレキシブルディスク等を駆動する駆
動装置を結ぶシステムバス、3は主記憶装置、4は第3
者によって作成されたプログラムを格納したフレキシブ
ルディスク等の記憶媒体である。
Figure 7 shows a program created by a third party being executed by a conventional information processing system such as that described in the literature ([Microcomputer Interface Technology], February 20, 1980, Maitenku Co., Ltd.). In Figure 0, which is a block diagram showing the basic configuration of the
l is the central processing unit (hereinafter referred to as host) that executes the program
2 is a system bus that connects the CPU with the main memory that stores programs and data, and a drive device that drives a flexible disk that stores programs created by a third party, 3 is a main storage device, and 4 is a system bus that connects the CPU Third
A storage medium such as a flexible disk that stores programs created by a person.

次に保護動作について説明する。記憶媒体4上に保護の
対象となるプログラムを記憶する際に、通常の複写プロ
グラムでは読み取ることのできない領域に保護の対象と
なるプログラムの一部分を記憶させておく。
Next, the protection operation will be explained. When storing a program to be protected on the storage medium 4, a part of the program to be protected is stored in an area that cannot be read by a normal copying program.

この保護されたプログラムを実行するためには、まず、
専用の読み込みプログラムを記憶媒体4より、システム
バス2を経由して、主記憶装置3へ読み込み、その専用
の読み込みプログラムをシステムバス2を経由して、ホ
ス1−CPUIで逐次実行することで、保護すべきプロ
グラムがシステムバス2を経由して、主記憶装置3へ読
み込みホストCPU1で逐次実行される。
To run this protected program, first,
By loading a dedicated reading program from the storage medium 4 to the main storage device 3 via the system bus 2, and sequentially executing the dedicated reading program on the host 1-CPUI via the system bus 2, A program to be protected is read into the main storage device 3 via the system bus 2 and sequentially executed by the host CPU 1.

しかし、通常の複写プログラムで、保護されたプログラ
ムを別の記憶媒体4に複写したとすれば、通常読み取る
ことのできない領域に記憶されたプログラムの一部は、
複写された記憶媒体上には複写されないので、複写され
た媒体上のプログラムを実行しても正常には作用しない
ことになり、記憶媒体4上のプログラムは保護されるこ
とになる。
However, if a protected program is copied to another storage medium 4 using a normal copying program, part of the program stored in an area that cannot be read normally will be
Since the program is not copied onto the copied storage medium, even if the program on the copied medium is executed, it will not function normally, and the program on the storage medium 4 will be protected.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

従来のプログラム保護方法は以上のように構成されてい
るので、記憶媒体4の全体を複写したり、専用の読込み
プログラムを主記憶装置3上に読込むために専用の読込
みプログラムの内容を容易に解析することができ、通常
読込まれない部分の内に記憶されたプログラムの一部が
明らかにされて複写されてしまうという課題があった。
Since the conventional program protection method is configured as described above, it is possible to copy the entire storage medium 4 or easily analyze the contents of a dedicated reading program in order to read the dedicated reading program onto the main storage device 3. However, there is a problem in that a part of the program stored in a part that is not normally read may be revealed and copied.

この発明は上記のような課題を解消するためになされた
もので、メモリカード内に記憶されたプログラムを複写
されないようにするメモリカードを用いたプログラム保
護方法を得ることを目的とする。
The present invention has been made to solve the above-mentioned problems, and an object of the present invention is to provide a program protection method using a memory card that prevents a program stored in the memory card from being copied.

〔課題を解決するための手段] この発明に係るプログラム保護方法は、マイクロプロセ
ッサを内蔵し、読出し専用メモリ(ROM) 、ランダ
ムアクセスメモリ(RAM)、を備えたメモリカードと
、このメモリカードをシステムバスに直結するバスアダ
プタを備えた情報処理システムにおいて、上記メモリカ
ード内のマイクロプロセンサによりメモリカードに対す
るアクセスが正当か不正かを判断してメモリカード内の
システムバスを切替えてROM、RAMからの人出力を
制御して複写を妨げるようにしたものである。
[Means for Solving the Problems] A program protection method according to the present invention includes a memory card that includes a built-in microprocessor, a read-only memory (ROM), and a random access memory (RAM), and a system that uses this memory card. In an information processing system equipped with a bus adapter that is directly connected to a bus, the micro processor in the memory card determines whether the access to the memory card is legitimate or unauthorized and switches the system bus in the memory card to access data from the ROM and RAM. It is designed to prevent copying by controlling human output.

〔作 用] この発明においては、メモリカード内に記憶されたプロ
グラム内に任意に設定されたアドレスに対してアクセス
が行われたことをメモリカ1−ド内のマイクロプロセッ
サが検出することにより、メモリカード内のバスを切り
替えるとともに、ホストCPUに対して割り込みを発生
させ、ホストCPUの割込み処理プログラムから、メモ
リカード内のマイクロプロセッサに割込みの生じた時の
プログラムカウンタの内容を送信し、そのプログラムカ
ウンタの値がマイクロプロセッサで検出したアドレスと
比較し、一致しなければ複写が行われたと判断されるこ
とによりプログラムの保護を行なうことができる。
[Function] In the present invention, when the microprocessor in the memory card detects that an address arbitrarily set in a program stored in the memory card is accessed, the memory In addition to switching the bus in the card, an interrupt is generated to the host CPU, and the contents of the program counter at the time of the interrupt are sent from the host CPU's interrupt processing program to the microprocessor in the memory card. The value of the address is compared with the address detected by the microprocessor, and if they do not match, it is determined that copying has occurred, thereby protecting the program.

〔実施例〕〔Example〕

以下、この発明の一実施例を図について説明する。第1
図において、1は保護対象となるプログラムを実行する
ホストCPtJ、2はホストCPU1と主記憶装置など
をつなぐシステムバス、3はデータ等を蓄える主記憶装
置、5はシステムバス2にカードを接続するバスアダプ
タ、6は保護対象となるプログラムを格納したメモリカ
ード、第2図は、メモリカード6の内部構成の1実施例
であり、7はバスアダプタ5を経由してシステムバスへ
直結されるメモリカード内のバス、8は保護対象となる
プログラムを記憶し、さらにプログラム内の特定アドレ
スに対してアクセスされたことを検出し、内蔵されたマ
イクロプロセッサに対して割込みを発生される機能を備
えたROM、9はROMBに記憶されたプログラムをホ
ストCPU1で実行するときに必要となるデータ類を記
憶するRAM、10はROMBに記憶された保護対象と
なるプログラムの特定なアドレスをアクセスされたとき
に生じる割込みを解析し、ホストCPU1に割込みを発
生するとともに、ROMBからの出力を制御するバス切
替5W12を制御する信号を発生し、さらにホストCP
UIがら送信されるデータを解析する内蔵マイクロプロ
セッサ、11は、内蔵マイクロプロセッサ1oで実行さ
れるプログラムを記憶したROMである。第3図は、ボ
ストCPU上のメモリの割付は図であり、(alは主記
憶装置3のアドレス空間であり、(b)、(C)はメモ
リカード6に割り当てられたアドレス空間である。
An embodiment of the present invention will be described below with reference to the drawings. 1st
In the figure, 1 is the host CPtJ that executes the program to be protected, 2 is the system bus that connects the host CPU 1 and the main memory, etc., 3 is the main memory that stores data, etc., and 5 is the card that connects to the system bus 2. A bus adapter 6 is a memory card storing a program to be protected; FIG. 2 shows an example of the internal configuration of the memory card 6; 7 is a memory directly connected to the system bus via the bus adapter 5; The bus 8 inside the card stores the program to be protected, and also has the function of detecting access to a specific address within the program and generating an interrupt to the built-in microprocessor. ROM, 9 is a RAM that stores data required when the host CPU 1 executes a program stored in the ROMB, and 10 is a RAM that stores data necessary when the program stored in the ROMB is executed by the host CPU 1; Analyzes the interrupt that occurs, generates an interrupt to the host CPU 1, generates a signal to control the bus switching 5W12 that controls the output from the ROMB, and then
The built-in microprocessor 11 that analyzes data transmitted from the UI is a ROM that stores a program to be executed by the built-in microprocessor 1o. FIG. 3 shows the memory allocation on the boss CPU (al is the address space of the main storage device 3, and (b) and (C) are the address spaces allocated to the memory card 6.

主記憶装置3とメモリカード6との間では、n番地から
、M番地までのアドレスが重複しているが、メモリカー
ド6をバスアダプタ5を介してシステムバス2へ直結し
た場合に、メモリカード上の記憶領域へ割り当て、主記
憶装置3上の該領域をシステムバスから切り離す。第3
図において、バス切替3W12は保護対象となるプログ
ラムの記憶された領域内でプログラム供給者によって任
意に設定された特定のアドレスを持つデータの記憶場所
である。
The addresses from address n to address M overlap between the main storage device 3 and the memory card 6, but when the memory card 6 is directly connected to the system bus 2 via the bus adapter 5, the memory card The storage area on the main storage device 3 is allocated to the upper storage area, and the area on the main storage device 3 is separated from the system bus. Third
In the figure, bus switching 3W12 is a storage location of data having a specific address arbitrarily set by the program supplier within the area where the program to be protected is stored.

次にこの発明による保護動作の説明を第4図〜第6図の
フローチャートを含めて説明する。第4図はホス)CP
UIで実行する割込み処理プログラムのフローチャート
で、このプログラムはステップSLで割込み発生プログ
ラムカウンタの内容をメモリカードへ送ると、ステップ
S2の再開許可へ進み、許可しない場合はステップS3
においてメモリカードでのチエツク結果の読取りを行な
いステップS2へ戻り、許可をすればステップS4で中
断点より再開し終了する。また、第5図はメモリカード
6で実行する割込み処理プログラムのフローチャートで
あって、これは、ステップS1で割込み発生アドレスを
退避し、ステップS2でバス切替SWを切り替えると、
ステップS3においてホス)CPUへ割込みを発生させ
る。その後、ステップS4でホストCPUよりのアドレ
スデータを読込み、ステップS5において退避アドレス
とデータを比較し、一致すればステップS6においてバ
ス切替SWを元へ戻し、不一致であればそのまま終了す
る。さらに第6図は第3者がメモリカードの内容を主記
憶装置3上に複写するためのプログラムのフローチャー
トで、ステップStでメモリカード内の1番地のデータ
をホストCPUのレジスタへ読込むと、ステップS2に
おいてホストCPUのレジスタへ読込まれたデータを主
記憶装置3のP番地へ書込む。その後、ステップS3で
全領域を終了すると再びこれをくり返す。
Next, the protection operation according to the present invention will be explained with reference to the flowcharts of FIGS. 4 to 6. Figure 4 shows Hos) CP
In the flowchart of the interrupt processing program executed on the UI, when this program sends the contents of the interrupt generation program counter to the memory card in step SL, it proceeds to step S2 to permit restart, and if it is not permitted, it proceeds to step S3.
In step S4, the check result is read from the memory card and the process returns to step S2. If permission is granted, the process resumes from the interrupted point in step S4 and ends. FIG. 5 is a flowchart of an interrupt processing program executed by the memory card 6, which saves the interrupt generation address in step S1 and switches the bus switching SW in step S2.
In step S3, an interrupt is generated to the host CPU. Thereafter, address data from the host CPU is read in step S4, and the saved address and data are compared in step S5. If they match, the bus switching SW is returned to its original state in step S6, and if they do not match, the process ends. Furthermore, FIG. 6 is a flowchart of a program for a third party to copy the contents of the memory card onto the main storage device 3. In step St, when the data at address 1 in the memory card is read into the register of the host CPU, step In S2, the data read into the register of the host CPU is written to address P of the main storage device 3. After that, when the entire area is completed in step S3, this process is repeated again.

さて、メモリカード6上に記憶された保護対象となるプ
ログラムを複写するために、主記憶装置3上のメモリカ
ード内に割り当てられていないアドレスの領域に移動す
るために、第6図に示すような複写用のプログラムを主
記憶装置3の空き領域(0番地〜n−1番地)に記憶し
、ホス) CPU1で実行する。複写が開始され、メモ
リカード6内の特定のアドレスArの内容の読み込みを
行おうとすると、メモリカード6の内蔵CP U 1’
0に割り込みが発生し、第4図に示したメモリカード6
内のROMIIに記憶されたプログラムが内蔵cput
oで実行される。内蔵CPUl0はまず、バス切替5W
12を切り替えて、ROMの内容がシステムバスに伝わ
らない状態になし、次いでホストCPUIに割込みを発
生ずる。しかし、ホストCPU1には、この割込みを処
理するプログラムが存在しないので、複写プログラムは
停止し、従ってメモリカード6内のROM8に記憶され
たプログラムは保護される。
Now, in order to copy the program to be protected stored on the memory card 6, in order to move it to an address area that is not allocated in the memory card on the main storage device 3, as shown in FIG. A copying program is stored in the free area (addresses 0 to n-1) of the main storage device 3 and executed by the CPU 1 of the host computer. When copying is started and an attempt is made to read the contents of a specific address Ar in the memory card 6, the built-in CPU 1' of the memory card 6
An interrupt occurs at memory card 6 shown in FIG.
The program stored in the ROMII of the built-in cput
It is executed at o. Built-in CPU10 first has bus switching 5W
12 so that the contents of the ROM are not transmitted to the system bus, and then generates an interrupt to the host CPUI. However, since the host CPU 1 does not have a program to handle this interrupt, the copying program is stopped, and the program stored in the ROM 8 in the memory card 6 is therefore protected.

次に第4図に示す、ホス)CPU1例の割込み処理プロ
グラムが、複写を実行しようとする悪意の第3者に明ら
かにされてしまった場合について説明する。上述の場合
と同様に、第6回に示す複写プログラムと第4図に示す
プログラムを主起↑、q装置3上の空き領域(0番地〜
n−1番地)に記憶させ、ホストCPU 1により逐次
実行する。複写が開始され、メモリカード6内の特定ア
ドレスArの内容を読み込もうとすると、メモリカード
6の内蔵CPUl0に割込みが発生し、第5図に示した
メモリカード6内のROM11に記憶されたプログラム
が内蔵CPUl0により実行される。
Next, a case will be described in which the interrupt processing program of the example host CPU shown in FIG. 4 is revealed to a malicious third party who attempts to execute copying. Similarly to the above case, start the copy program shown in Part 6 and the program shown in FIG.
(address n-1) and executed sequentially by the host CPU 1. When copying is started and the content of a specific address Ar in the memory card 6 is to be read, an interrupt occurs in the built-in CPU10 of the memory card 6, and the program stored in the ROM 11 in the memory card 6 shown in FIG. It is executed by the built-in CPU10.

内蔵CPUl0では、まず特定アドレスArを記↑、9
し、バス切替5W12を切り替え、システムハスにRO
M8の内容が正しく伝わらないようにした後、ホストC
PUIに割込みを発生する。ホストCPU 1ではメモ
リカードからの割込みが検出されると、割込み発生時の
全レジスタの内容を退避した後、第4図に示した割込み
処理プログラムを実行する。第4図の割込み処理プログ
ラムでは、退避したレジスタの内容から、メモリカード
6からの割込みが発生した時点でのプログラムカウンタ
の値を読み取り、メモリカード6に送信する。
For the built-in CPU10, first write the specific address Ar↑, 9
Then, switch the bus switch 5W12 and switch the system to RO.
After preventing the contents of M8 from being transmitted correctly, host C
Generates an interrupt to the PUI. When the host CPU 1 detects an interrupt from the memory card, the contents of all registers at the time of occurrence of the interrupt are saved, and then the interrupt processing program shown in FIG. 4 is executed. In the interrupt processing program shown in FIG. 4, the value of the program counter at the time when the interrupt from the memory card 6 occurs is read from the contents of the saved register and transmitted to the memory card 6.

メモリカード6の内蔵CPUl0では、ホストCPUI
から送信されたプログラムカウンタの値をチエツクし、
予め記憶しておいた特定のアドレスの値Arとつき合せ
る。ところが、割込みが発生した時点でのホス)CPU
1が実行している第6図に示す複写プログラムのアドレ
スは、メモリカード6に割り当てられたアドレス以外の
領域にあるため、メモリカード6内の特定アドレスAr
とホストCPUIから送信されたプログラムカウンタの
値は一致することがないので、内蔵CPUl0は、不正
な読み取りと判断して、バス切替5W12を元の状態へ
戻さずに、ホストCPUI側の処理の再開を許可する。
The built-in CPU10 of the memory card 6 uses the host CPU
Check the program counter value sent from
It is matched with a pre-stored specific address value Ar. However, at the time the interrupt occurred, the CPU
The address of the copying program shown in FIG.
Since the value of the program counter sent from the host CPUI and the value of the program counter never match, the built-in CPU10 determines that the reading is invalid and resumes processing on the host CPUI side without returning the bus switching 5W12 to its original state. Allow.

ホストCPU lでは、複写プログラムが引き続き実行
されるが、特定のアドレスAr以降のデータについては
保証されず、メモリカード6内のROM8に記憶された
プログラムの内容は複写に対して保護される。
In the host CPU 1, the copy program continues to be executed, but data after a specific address Ar is not guaranteed, and the contents of the program stored in the ROM 8 in the memory card 6 are protected against copying.

次に正当な使用者が、保護されたプログラムを実行する
場合について説明する。正当な使用者は、予め第4図に
示す割込み処理゛プログラムを主記憶装置3上のメモリ
カード6と重複しない部分に記憶させておく。メモリカ
ード6をバスアダプタ5を経由してシステムバス2へ接
続することにより、第3図に示すように主記憶装置3の
アドレス領域のうち、n#r地からM番地までを、メモ
リカード6内のROMB、RAM9に割り当てる。次い
で、メモリカード6内のROMBに記憶された保護の対
象となるプログラムをホストCPtJ1で実行する。ホ
ストCPUIより特定のアドレスArの内容を読み出し
て実行しようとする時に、メモリカード6内の内蔵CP
Ul0に割込みが発生し、メモリカード6内のROMI
Iに記憶された第5Vに示したプログラムがメモリカー
ド6内の内蔵CPUl0により実行される。内蔵CPU
l0では、まず、割込みの発生した特定のアドレスAr
を記憶し、バス切替え5W12を切り替えて、メモリカ
ード6内のROM8の内容が、メモリカード6内のシス
テムバス7を経由して、本体側のシステムバス2へ正し
いデータが読み出せないようにし、ホストCPUIへ割
り込みを発生する。ホストCPUIでは、CPUI内の
全レジスタを退避して、第4図に示す割り込み処理プロ
グラムを実行する。このとき退避されたプログラムカウ
ンタの内容は、割込みの発生した特定のアドレスArと
なっている。ホストCPUIでは退避されたプログラム
カウンタの内容、すなわち、特定のアドレスArがメモ
リカード6に送出される。メモリカード6では、ホスト
CPtJ 1から送られてきたプログラムカウンタの内
容と、メモリカード6内の内15EcPU10で予め記
憶した割込みの発生した特定アドレスの値^rを比較す
るが、ホストCPUIから送られてきたプログラムカウ
ンタの内容とメモリカード6に内蔵された内蔵CPUl
0で記憶された特定アドレスの値は共にアドレス値^r
で一致するので、バス切替5W12を元の状態に戻して
、メモリカード6内のROMBの内容がシステムバス7
.2を経由してホストCPUIに正しく読み込める状態
とし、CPUI側での処理を中断点より再開する。この
場合は、ホストCPU1に正しい情報が伝わるので処理
は正しく実行される。
Next, a case in which a legitimate user executes a protected program will be explained. An authorized user stores in advance the interrupt processing program shown in FIG. 4 in a portion of the main storage device 3 that does not overlap with the memory card 6. By connecting the memory card 6 to the system bus 2 via the bus adapter 5, as shown in FIG. Allocate to ROMB and RAM9 within. Next, the program to be protected stored in the ROMB in the memory card 6 is executed by the host CPtJ1. When attempting to read and execute the contents of a specific address Ar from the host CPU, the built-in CPU in the memory card 6
An interrupt occurs in Ul0, and the ROMI in memory card 6
The program shown in the fifth V stored in I is executed by the built-in CPU I0 in the memory card 6. Built-in CPU
In l0, first, the specific address Ar where the interrupt occurred
and switch the bus switching 5W12 to prevent the contents of the ROM 8 in the memory card 6 from being read out to the system bus 2 on the main body side via the system bus 7 in the memory card 6, Generates an interrupt to the host CPUI. The host CPUI saves all registers in the CPUI and executes the interrupt processing program shown in FIG. 4. The contents of the program counter saved at this time are the specific address Ar where the interrupt occurred. The host CPUI sends the contents of the saved program counter, that is, the specific address Ar, to the memory card 6. The memory card 6 compares the contents of the program counter sent from the host CPtJ 1 with the value ^r of the specific address where the interrupt occurred, which is stored in advance in the 15EcPU 10 in the memory card 6. The contents of the program counter and the built-in CPU built into the memory card 6
The value of a specific address stored as 0 is the address value ^r
Since they match, return the bus switching 5W12 to its original state and change the contents of the ROMB in the memory card 6 to the system bus 7.
.. 2 so that it can be read correctly into the host CPUI, and the processing on the CPUI side is resumed from the interrupted point. In this case, correct information is transmitted to the host CPU 1, so that the process is executed correctly.

なお、上記実施例では、ホス)CPUIの割込み処理プ
ログラムで割込みの発生した時のプログラムカウンタの
値をメモリカード6に送出したが、プログラムカウンタ
の値ではなく、メモリカード6内の別の番地の内容を送
出してもよい。また、上記実施例では、メモリカード6
内のバス切替5W12は、ROMBとメモリカード6内
のバス7の間に設けたが、メモリカード6内のRAM9
とバス7の間に設けてもよい。
In the above embodiment, the value of the program counter when an interrupt occurs in the interrupt processing program of the CPU (host) is sent to the memory card 6. You may also send the contents. Furthermore, in the above embodiment, the memory card 6
The bus switching 5W12 in the internal memory card 6 is provided between the ROMB and the bus 7 in the memory card 6;
and the bus 7.

(発明の効果〕 以上説明したようにこの発明によれば、メモリカード内
のROMをホストCPUから直接アクセスできるように
し、メモリカード内のROMの出力をメモリカード内に
設けたマイクロプロセッサにより制御することで、RO
Mに記憶されたプログラムの内容を保護し、第3者が複
写するのを防止することができる。
(Effects of the Invention) As explained above, according to the present invention, the ROM in the memory card can be directly accessed from the host CPU, and the output of the ROM in the memory card can be controlled by the microprocessor provided in the memory card. So, R.O.
The contents of the program stored in M can be protected and prevented from being copied by a third party.

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

第1図はこの発明の一実施例によるプログラム保護方法
を説明するためのシステムのブロック図、第2図はメモ
リカードの内部構成のブロック図、第3図はホストCP
U上のメモリの割付は図、第4図はホストCPUで実行
する割込み処理プログラムのフローチャート図、第5図
はメモリカードで実行する割込み処理プログラムのフロ
ーチャート図、第6図は第3者がメモリカードの内容を
主記憶装置上に複写するためのプログラムのフローチャ
ート図、第7図は従来の情報処理システムのフ゛ロンク
図である。 1・・・ホストCPU、2・・・システムバス、3・・
・主記憶装置、5・・・バスアダプタ、6・・・メモリ
カード、8・・・ROM、9・・・RAM。 なお、図中同一符号は同−又は相当部分を示す。 代理人    大  岩  増  雄 第 図 9:RAM 第 図 第 図 第 図 手 続 補 正 1よ (自発) 1、事件の表示 特願昭 196861号 2、発明の名称 メモリカードを用いたプログラム保護方法3、補正をす
る者 代表者 岐 守 哉 5゜ 補正の対象 6゜ 補正の内容 (1)  明細書8頁20行の「終了すると」を「終了
するまで」と訂正する。 (2)  同9頁4行の「移動」を「複写」と訂正する
。 以  上
FIG. 1 is a block diagram of a system for explaining a program protection method according to an embodiment of the present invention, FIG. 2 is a block diagram of the internal configuration of a memory card, and FIG. 3 is a block diagram of a host CP.
The memory allocation on the U is shown in the figure, Figure 4 is a flowchart of the interrupt processing program executed by the host CPU, Figure 5 is a flowchart of the interrupt processing program executed by the memory card, and Figure 6 is the memory allocation by a third party. FIG. 7 is a flowchart of a program for copying the contents of a card onto the main storage device, and is a block diagram of a conventional information processing system. 1...Host CPU, 2...System bus, 3...
- Main storage device, 5... bus adapter, 6... memory card, 8... ROM, 9... RAM. Note that the same reference numerals in the figures indicate the same or equivalent parts. Agent Masuo Oiwa Figure 9: RAM Figure Figure Figure Procedure Amendment 1 (voluntary) 1. Indication of the incident Patent Application No. 196861 2. Name of the invention Program protection method using a memory card 3. Amendment 5. Target of amendment 6. Contents of amendment (1) "Upon completion" on page 8, line 20 of the specification is corrected to "until completion." (2) "Move" in line 4 on page 9 is corrected to "copy."that's all

Claims (1)

【特許請求の範囲】[Claims] マイクロプロセッサを内蔵し、読出し専用メモリ(RO
M)、ランダムアクセスメモリ(RAM)を備えたメモ
リカードと、このメモリカードをシステムバスに直結す
るバスアダプタを備えた情報処理システムにおいて、上
記メモリカード内のマイクロプロセッサによりメモリカ
ードに対するアクセスが正当か不正かを判断してメモリ
カード内のシステムバスを切替えてROM、RAMから
の入出力を制御して複写を妨げるようにしたことを特徴
とするメモリカードを用いたプログラム保護方法。
Built-in microprocessor and read-only memory (RO
M) In an information processing system equipped with a memory card equipped with random access memory (RAM) and a bus adapter that directly connects this memory card to a system bus, whether access to the memory card by a microprocessor in the memory card is legitimate. A program protection method using a memory card, characterized in that the system bus in the memory card is switched after determining whether it is fraudulent, and input/output from ROM and RAM is controlled to prevent copying.
JP63196861A 1988-08-06 1988-08-06 Program protecting method to use memory card Pending JPH0245849A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63196861A JPH0245849A (en) 1988-08-06 1988-08-06 Program protecting method to use memory card

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63196861A JPH0245849A (en) 1988-08-06 1988-08-06 Program protecting method to use memory card

Publications (1)

Publication Number Publication Date
JPH0245849A true JPH0245849A (en) 1990-02-15

Family

ID=16364877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63196861A Pending JPH0245849A (en) 1988-08-06 1988-08-06 Program protecting method to use memory card

Country Status (1)

Country Link
JP (1) JPH0245849A (en)

Similar Documents

Publication Publication Date Title
JP4234202B2 (en) System for controlling access to registers mapped to I / O address space of a computer system
US5237616A (en) Secure computer system having privileged and unprivileged memories
KR100205740B1 (en) A secure application card for sharing application data and procedures among a plurality of microprocessors
US5483649A (en) Personal computer security system
EP1209563B1 (en) Method and system for allowing code to be securely initialized in a computer
US7444668B2 (en) Method and apparatus for determining access permission
US6651150B2 (en) Data-processing apparatus and method of controlling the rewriting of a nonvolatile storage device
US10223290B2 (en) Processing device with sensitive data access mode
JPH08272625A (en) Device and method for multiprogram execution control
US7523279B2 (en) Information processing apparatus for accessing memory spaces including a user memory space and a secure memory space
JP2009129394A (en) Information processor and program execution control method
CN112818327A (en) TrustZone-based user-level code and data security credibility protection method and device
JPS5992500A (en) Protection system for data processor
US6591366B1 (en) Method and configuration for loading data for basic system routines of a data processing system
JPH0245849A (en) Program protecting method to use memory card
JP4335940B2 (en) Data processing apparatus and peripheral device protection method in data processing apparatus
JP2020140689A (en) Computer, operating system, and method
JPH07253931A (en) Destruction prevention system for program data storage area
JPS6250863B2 (en)
JPH02138622A (en) Microprocessor
JPH0242551A (en) Data processing system and nonvolatile semiconductor memory
JP3047839B2 (en) Single-chip microcomputer
JPH01180656A (en) Memory protecting device
JPH05334195A (en) Information processor
JP2003330800A (en) Semiconductor integrated circuit