JP3642533B2 - プログラムカード及びこれを用いた計算機 - Google Patents

プログラムカード及びこれを用いた計算機 Download PDF

Info

Publication number
JP3642533B2
JP3642533B2 JP08706394A JP8706394A JP3642533B2 JP 3642533 B2 JP3642533 B2 JP 3642533B2 JP 08706394 A JP08706394 A JP 08706394A JP 8706394 A JP8706394 A JP 8706394A JP 3642533 B2 JP3642533 B2 JP 3642533B2
Authority
JP
Japan
Prior art keywords
program
address value
program information
instruction
card
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 - Fee Related
Application number
JP08706394A
Other languages
English (en)
Other versions
JPH07295802A (ja
Inventor
直志 内平
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP08706394A priority Critical patent/JP3642533B2/ja
Publication of JPH07295802A publication Critical patent/JPH07295802A/ja
Application granted granted Critical
Publication of JP3642533B2 publication Critical patent/JP3642533B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

【0001】
【産業上の利用分野】
この発明は、プログラムカード及びこれを用いた計算機に関するものである。
【0002】
【従来の技術】
近年、集積回路(LSI,VLSI等を含む。以下「IC等」という)に対する集積化技術の発達はめざましく、カートリッジ又は薄型のカード(以下「カード等」という)内にROM型又はRAM型のIC等を設け、これに計算の手順を示すプログラムと計算データとを(以下「プログラム情報」という)記憶させることにより、容易に着脱可能な計算機の主記憶装置や補助記憶装置(以下「記憶装置」という)として利用することが一般的となっている。
【0003】
ところで、このIC等に記憶されるプログラム情報等は、2進数で表現されており、このプログラム情報は、一括して計算機内のメインメモリに読み込まれる。そして、このメインメモリから計算機の中央処理装置(以下「CPU」という)が逐次読み出しながら、その内容を解釈して命令を実行する。このように、プログラム情報を計算機の記憶装置の中に読み込んで、それを逐次読み出しながら、解釈実行していく計算機をノイマン(Neumann )型計算機と呼ばれている。
【0004】
しかしながら、上記ノイマン型計算機における従来の着脱可能な記憶装置では、計算機本体のCPUとの間で所定の信号線を介してプログラム情報の通信を行う必要がある。従って、この信号線を介してあたかもCPUがプログラム情報を読み出すのと同じように、ユーザはプログラム解読装置によりプログラム情報を読み出してプログラム情報の解読を行うことが可能である。このことは、たとえIC化されていても、プログラム情報を信号線を介して通信する限り、プログラム情報の解読が可能であることを意味し、莫大な開発費をかけて生産したプログラム情報を、第三者による不正な複製又は改造から保護することが困難であった。
【0005】
【発明が解決しようとする課題】
上記ノイマン型計算機における従来の着脱可能な記憶装置では、計算機本体のCPUとの間で所定の信号線を介してプログラム情報の通信を行う必要がある。従って、この信号線を介してあたかもCPUがプログラム情報を読み出すのと同じように、ユーザはプログラム解読装置によりプログラム情報を読み出してプログラム情報の解読を行うことが可能である。このことは、たとえIC化されていても、プログラム情報を信号線を介して通信する限り、プログラム情報の解読が可能であることを意味し、莫大な開発費をかけて生産したプログラム情報を、第三者による不正な複製又は改造等から保護することが困難であった。
そこで、本発明は、プログラム情報の不正な複製又は改造等を困難とする記憶装置及びこれを用いた計算機を提供するものである。
【0006】
【課題を解決するための手段】
第1発明のうち請求項1に係る発明は、アドレスの付された単位記憶セル群にプログラム情報が記憶され、計算機本体からの指令により所定のインターフェースを介して前記プログラム情報が読出されるプログラムカードにおいて、前記計算機本体から送出される前記アドレスを示すアドレス値に従って前記単位記憶セルからプログラム情報を読出すプログラム情報読出し手段と、この手段により読出されたプログラム情報を前記計算機本体に送出する手段とを備えたプログラムカードである。
【0007】
ここで、プログラムカード内の単位記憶セル群は、以下の実施例中、プログラム記憶装置に対応する。そして、外部からのアドレス指定信号(アドレス値)及び読み出し/書き込み信号により、アドレス指定信号の示すアドレスの割り当てられた単位記憶セルからプログラム情報を読み出し、また、単位記憶セルに書き込むことができる
また、第1発明のうち請求項2に係る発明は、アドレスの付された単位記憶セル群にプログラム情報を記憶したプログラムカードと、このプログラムカードに記憶されたプログラム情報を所定のインターフェースを介して読み出して、解釈・実行する計算機本体とを備えたプログラムカード及びこれを用いた計算機であって、前記プログラムカードは、前記アドレスを示すアドレス値に従って前記単位記憶セルからプログラム情報を読出すプログラム情報読出し手段と、この手段により読出されたプログラム情報を前記計算機本体に送出する手段とを備え、前記計算機本体は、前記アドレス値を保持するアドレス値保持手段と、この手段に保持されたアドレス値を前記プログラムカードのプログラム情報読出し手段に送出するアドレス値送出手段と、前記プログラム情報送出手段から送出されたプログラム情報に基づいて命令制御を実行する命令制御実行手段とを備えたプログラムカード及びこれを用いた計算機である。
【0008】
第2発明のうち請求項3に係る発明は、アドレスの付された単位記憶セル群にプログラム情報が記憶され、計算機本体からの指令により所定のインターフェースを介して前記プログラム情報が読出されるプログラムカードにおいて、前記計算機本体から送出された前記アドレスを示すアドレス値を、所定の暗号キーに基づいて復号化する復号化手段と、この手段により復号化されたアドレス値に従って前記単位記憶セルからプログラム情報を読出すプログラム情報読出し手段と、この手段により読出されたプログラム情報のうち、命令コード部とアドレスオペランド部とを識別する手段と、この手段により識別されたアドレスオペランド部を、所定の暗号キーに基づいて暗号化する暗号化手段と、前記命令コード部及び前記暗号化手段により暗号化されたアドレスオペランド部を前記計算機本体に送出するプログラム情報送出手段とを備えたプログラムカードである。
【0009】
また、第2発明のうち請求項4に係る発明は、アドレスの付された単位記憶セル群にプログラム情報を記憶したプログラムカードと、このプログラムカードに記憶されたプログラム情報を所定のインターフェースを介して読み出して、解釈・実行する計算機本体とを備えたプログラムカード及びこれを用いた計算機であって、前記プログラムカードは、前記アドレスを示すアドレス値を所定の暗号キーに基づいて復号化する復号化手段と、この手段により復号化されたアドレス値に従って前記単位記憶セルからプログラム情報を読出すプログラム情報読出手段と、この手段により読出されたプログラム情報のうち、命令コード部とアドレスオペランド部とを識別する手段と、この手段により識別されたアドレスオペランド部を、所定の暗号キーに基づいて暗号化する暗号化手段と、前記命令コード部及び前記暗号化手段により暗号化されたアドレスオペランド部を前記計算機本体に送出するプログラム情報送出手段とを備え、前記計算機本体は、前記アドレス値を保持するアドレス値保持手段と、この手段に保持されたアドレス値を前記プログラムカードのプログラム情報読出し手段に送出するアドレス値送出手段と、前記プログラム情報送出手段により送出された命令コード部及び暗号化されたアドレスオペランド部に基づいて命令制御を実行する命令制御実行手段とを備えたプログラムカード及びこれを用いた計算機である。
【0010】
第3発明のうち請求項5に係る発明は、アドレスの付された単位記憶セル群にプログラム情報が記憶され、計算機本体からの指令により所定のインターフェースを介して前記プログラム情報が読出されるプログラムカードにおいて、前記アドレスを示すアドレス値を保持するアドレス値保持手段と、この手段に保持されたアドレス値に従って前記単位記憶セルからプログラム情報を読出すプログラム情報読出手段と、この手段により読出されたプログラム情報が所定の条件を満たす場合に、前記アドレス値保持手段に保持されているアドレス値を変更するアドレス値変更手段と、前記プログラム情報読出手段により読出されたプログラム情報を前記計算機本体に送出するプログラム情報送出手段とを備えたプログラムカードである。
【0011】
また、第3発明のうち請求項6に係る発明は、アドレスの付された単位記憶セル群にプログラム情報を記憶したプログラムカードと、このプログラムカードに記憶されたプログラム情報を所定のインターフェースを介して読み出して、解釈・実行する計算機本体とを備えたプログラムカード及びこれを用いた計算機であって、前記プログラムカードは、前記アドレスを示すアドレス値を保持するアドレス値保持手段と、この手段に保持されたアドレス値に従って前記単位記憶セルからプログラム情報を読出すプログラム情報読出手段と、この手段により読出されたプログラム情報が所定の条件を満たす場合に、前記アドレス値保持手段に保持されているアドレス値を変更するアドレス値変更手段と、前記プログラム情報読出手段により読出されたプログラム情報を前記計算機本体に送出するプログラム情報送出手段とを備え、前記計算機本体は、前記プログラム情報送出手段により送出されたプログラム情報に基づいて命令制御を実行する命令制御実行手段とを備えたプログラムカード及びこれを用いた計算機である。
【0012】
【作用】
第1発明によれば、プログラム情報を格納したプログラム記憶装置と機械語命令読み出し装置とをプログラムカード内に設けて、1ステップずつ計算機本体に機械語命令を送出する。これによって、全プログラム情報を計算機の主記憶装置にロードする必要がなくなる。
【0013】
第2発明によれば、プログラムカード内に暗号化装置、暗号キー発生装置及び復号化装置を設け、プログラムカウンタの内容を暗号化装置により暗号化する。ここで、生成される暗号キーは毎回変化するので、もとのアドレス値が同じであっても毎回異なる暗号化されたアドレス値になる。従って、外部からはプログラム上のどの場所に戻ったのかがわからなくなり、プログラムの実行制御を外部から隠ぺいすることができる。
【0014】
第3発明によれば、プログラムカウンタ及びこのプログラムカウンタの内容を制御するプログラムカウンタ計算装置をプログラムカード内に設けているので、プログラムの実行制御が計算機本体と完全に分離されることになる。これにより、通常のプログラムカウンタの更新及び実行制御命令に基づくプログラムカウンタの更新をプログラムカード内で行うので、JUMP命令等によりプログラムを実行する場合にも実行制御を完全に隠ぺいすることができるようになる。
【0015】
【実施例】
以下、図面を参照しながら本発明の一実施例について説明する。
図1は、本発明に係るプログラムカード及びこれを用いた計算機の適用対象を示す図である。同図に示すように、本発明は、プログラム情報が記憶されたプログラムカード1をプログラムカードリーダ2に装着することにより計算機本体3からアクセス可能とし、該プログラム情報に従ってプログラムを実行するものに関するものである。
【0016】
ここで、プログラムカード1は、内部に設けられたROMやRAM、EEPROM等の集積回路によりプログラム情報を記憶することが可能ないわゆるICカードであり、カード型のみならずカートリッジ型のものも含まれるものとする。また、このプログラムカード1は、外部ケースにより内部の集積回路が保護されているが、外部ケースを開封するとICカードの内容が消失するような構造になっている方が好ましい。
【0017】
また、プログラムカードリーダ2は、プログラムカード1を着脱することができ、装着されたプログラムカード1内に記憶されたプログラム情報を読出し、また、計算機本体3からのプログラム情報を書込む場合の入出力装置の役目を果たしている。
【0018】
計算機本体3は、キーボートやディスプレイ、補助記憶装置、主記憶装置、中央処理装置等から構成され、通常の計算機の機能を備えているものとし、本発明ではそれに加え、プログラムカードリーダ2を介して後述するプログラムカード1とアクセスするための機能を備えている。
[第1発明]
図2は、第1発明に係るプログラムカード及びこれを用いた計算機の構成を示す概念図である。
【0019】
本発明は、プログラムカード内にプログラム情報を記憶し、計算機本体からの読み出し要求により、プログラムカード内に格納されたプログラム情報をその都度計算機本体に送出する
即ち、同図において、命令制御装置201は、プログラムカウンタ(PC)202の内容(アドレス値)をプログラムリーダ2を介してプログラムカード1内の機械語命令読み出し装置203に送出する。機械語命令読み出し装置203は、アドレス値に従ってプログラム記憶装置204から機械語命令を読み出し、これをプログラムリーダ2を介して計算機本体3の命令解釈実行装置205に送出する。命令解釈実行装置は、この機械語命令を解釈し、その結果に基づいて命令の実行を行い、必要であれば主記憶装置206をアクセスする。
【0020】
以上のような本発明に係るプログラムカード及びこれを用いた計算機の構成をさらに詳述する。
図3は、第1発明に係るプログラムカード及びこれを用いた計算機の構成を示す詳細図である。
【0021】
同図において、計算機本体に設けられている演算装置(ALU)301は、Lバス及びRバスで与えられたデータに対し演算指定により指定された演算を行って、演算結果をOバスに出力する。
【0022】
条件コードレジスタ(CCR)302は、演算装置301で行われた演算結果の状態(例えば、N,Z,V,C)を後述する命令制御装置201からの指定によりセットすることができる。
【0023】
アキュムレータレジスタ(ACC)303は、いわゆる作業用レジスタであり、Oバスから取り込んだデータをLバスに出力することができる。
上述したプログラムカウンタ202は、命令制御装置201からの指令により、そのアドレス値を1増加することができるようになっている。プログラムカウンタ202の内容は、Lバス及びA1 バスに出力することができるようになっている。
【0024】
主記憶番地レジスタ(MAR)304、読み出し用データレジスタ(RDR)305、書き込み用データレジスタ(WDR)306は、それぞれ主記憶装置の読み書きに使われる。
【0025】
命令レジスタ(IR)307は、命令コード部とオペランド部とから構成される機械語命令をセットすることができ、命令コード部は命令制御装置201に、オペランド部はLバスに送出される。
【0026】
命令制御装置201は、命令コード部や条件コードレジスタ302の内容により、上記各レジスタから各バスへの出力、各バスから各レジスタへの入力、演算の指定、主記憶装置206の読み書き制御等を行うことができる。このための制御信号線は、命令制御装置201から各レジスタに配線されているが、ここでは省略する。
【0027】
一方、プログラムカード内に設けられている機械語命令読み出し装置203は、計算機本体に設けられたプログラムカウンタ202からアドレス値を取り込み、これをプログラム記憶装置204に送出する。同時に、機械語命令読み出し装置203は、そのアドレス値を受けることによって、読み出し信号線308aを読み出し状態(例えば、「H」)に、選択信号線309aをアクティブ(例えば、「L」)にして、プログラム記憶装置204からデータを読み出し、これを計算機本体の命令レジスタ307に送出する。
【0028】
以上のように構成された本発明に係るプログラムカーと及びこれを用いた計算機は、以下のように動作する。
即ち、命令制御装置201は、まずプログラムカウンタ202の内容をA1 バスに出力する。A1 バスに出力されたアドレス値は、プログラムカードリーダ(図示せず)を介して命令読み出し装置203に送出される。命令読み出し装置203は、プログラムカウンタ202からのアドレス値をプログラム記憶装置204に送出するとともに、読み出し信号線308aを「H」に、選択信号線309bをアクティブにする。そして、プログラム記憶装置読み出し時間だけ待った後、つまり、読み出されたデータが命令読み出し装置203に取り込まれるであろう時間後に、これを取り込む。さらに命令読み出し装置203は、読み出されたデータをプログラムカードリーダを介して命令レジスタ307に送出し、命令レジスタ307はこれを取り込む。この動作は、通常の計算機でいう命令フェッチに相当する。命令フェッチの後、次の命令の実行へ移る準備としてプログラムカウンタ202の内容を1増加させる。
【0029】
命令レジスタ307は、取り込まれたデータのうち命令コード部を命令制御装置201に送出することにより、命令制御装置201ではその命令コードを解釈し、その結果に従って動作を行う。
【0030】
例えば、命令レジスタに取り込まれたデータがLOAD命令であるとする。すると命令制御装置201は、命令レジスタ307のオペランド部をRバスに出力し、Lバスには何も出力せずに、演算指定を加算にする。これによってLバスのデータはそのままOバスに出力されるので、このデータを主記憶番地レジスタ304に取り込む。
【0031】
次に、主記憶番地レジスタ5の内容をA2 バスに出力し、読み出し信号線308bを「H」に選択信号線309bをアクティブにして主記憶装置206を読む。これによって主記憶番地レジスタ304の内容、つまりLOAD命令のオペランド部で示された値に従って主記憶装置から読み出される。この動作は、通常の計算機でいうオペランドフェッチに相当する。そして、記憶装置の読み出し時間だけ待った後、Dバス上に読み出されたデータを読み出し用データレジスタ305に取り込む。
【0032】
次に、読み出し用データレジスタ305の内容をRバスに出力し、Lバスには何も出力せずに、演算指定を加算にする。この結果、Rバス上のデータはそのままOバスに出力されるので、Oバス上のデータをアキュムレータレジスタ303に取り込む。また、演算装置の演算結果の状態のうちの「N」と「Z」に対応する部分を条件コードレジスタ302に取り込む。この動作は、命令実行に相当する。
【0033】
このようにしてLOAD命令の実行が完了するので、命令制御装置201は、命令フェッチ、オペランドフェッチ、命令実行を繰り返す。
なお、本実施例においては、LOAD命令のみ示したが、主記憶装置206に書込む命令であるSTORE命令や実行順序を制御するJUMP命令においても同様に動作する。
【0034】
以上のように、第1の発明によれば、プログラム情報を格納したプログラム記憶装置311と機械語命令読み出し装置とをプログラムカード内に設けて、1ステップずつ計算機本体に機械語命令を送出しているので、全プログラム情報を計算機の主記憶装置にロードする必要がなくなる。従って、ユーザは、プログラム情報の特定の実行系列については把握することができるが、たかだか1回の実行では全ての命令が実行されず、プログラム全体がどのようになっているかを容易に解読することができない。
[第2発明]
図4は、第2発明に係るプログラムカード及びこれを用いた計算機の構成を示す概念図である。
【0035】
本発明は、プログラムカード内に格納されたプログラム情報を特定の実行系列に対しても解読を困難とすべく、第1発明に対しさらに暗号化・復号化に関する構成を加えている。なお、第1発明と同じものに対しては、同じ符号を付している。
【0036】
即ち、同図において、プログラムカウンタ202からの内容をプログラムリーダ2を介してプログラムカード1内の復号化装置401に送出する。ここで、プログラムカウンタ202の内容は、後述する暗号化装置402により暗号化されたアドレス値X(Xは任意のビット数)とインデックス値C(Cは任意のビット数)とから構成されており、これを「(X,C)」と表すこととする。
【0037】
復号化装置401では、暗号化されたアドレス値Xを復号化し、この復号化された値xにインデックス値Cを加えた値を本来のアドレス値として、機械語命令読み出し装置203に送出する。機械語命令読み出し装置203は、このアドレス値に従ってプログラム記憶装置204から機械語命令を読み出し、これを暗号化装置402に送出する。
【0038】
暗号化装置402では、機械語命令のうちオペランド部の値を暗号キー発生装置403により生成された暗号キーに従って暗号化した後、この暗号化されたアドレス値X’をプログラムリーダ2を介して計算機本体3の命令解釈実行装置205に送出する。
【0039】
命令解釈実行装置205は、この機械語命令を解釈し、その結果に基づいて命令の実行を行い、必要であれば主記憶装置206をアクセスする。また、本発明では、命令解釈実行装置205によって実行制御命令(例えば、JUMP命令等)であると解釈された場合には、オペランド部に記述されている暗号化されたアドレス値X’をプログラムカウンタ202に新たにセットする。これに対して、実行制御命令以外の命令(例えば、LOAD命令等)の場合には、プログラムカウンタ202の内容のインデックス値を1つ増やす。
【0040】
例えば、プログラムの実行アドレスを図5(a)に示すプログラムに従って説明する。即ち、同図(a)に示すプログラムは、メモリM2の内容にメモリM3の内容を乗じた値をメモリM1の内容とするプログラムである。今、メモリM3の内容が「2」の場合、プログラムカウンタ202の内容は同図(b)のようになる。つまり、S5やS9のJUMP命令(BLE、JMP)を解釈実行する際に、オペランド部に記述されたアドレス値「S10」や「S2」が暗号化されるので、外部からはプログラム上のどの場所に戻ったのかがわからなくなる。これによって、S2乃至S9のループ構造が隠ぺいすることができ、プログラムの解読画より一層困難なものとなる。
【0051】
【発明の効果】
以上のように、第1発明によれば、プログラム情報を格納したプログラム記憶装置と機械語命令読み出し装置とをプログラムカード内に設けて、1ステップずつ計算機本体に機械語命令を送出しているので、全プログラム情報を計算機の主記憶装置にロードする必要がなくなる。従って、ユーザは、プログラム情報の特定の実行系列については把握することができるが、たかだか1回の実行では全ての命令が実行されず、プログラム全体がどのようになっているかを容易に解読することができなくなる。
【0052】
第2発明によれば、実行制御命令であるJUMP命令等を解釈実行する際に、オペランド部に記述されたアドレス値が暗号化されるので、外部からはプログラム上のどの場所に戻ったのかがわからなくなる。これによって、プログラムのループ構造が隠ぺいすることができ、プログラムの解読画より一層困難なものとなる。
【0053】
第3発明によれば、通常のプログラムカウンタの更新及び実行制御命令に基づくプログラムカウンタの更新をプログラムカード内で行うので、実行制御命令であるJUMP命令等によりプログラムを実行する場合にも実行制御を完全に隠ぺいすることができるようになる。
【図面の簡単な説明】
【図1】 本発明に係るプログラムカード及びこれを用いた計算機の適用対象を示す図。
【図2】 第1発明に係るプログラムカード及びこれを用いた計算機の構成を示す概念図。
【図3】 第1発明に係るプログラムカード及びこれを用いた計算機の構成を示す詳細図。
【図4】 第2発明に係るプログラムカード及びこれを用いた計算機の構成を示す概念図。
【図5】 実行制御を説明するためのプログラムを示す図。
【図6】 第3発明に係るプログラムカード及びこれを用いた計算機の構成を示す概念図。
【図7】 第3発明に係るプログラムカード及びこれを用いた計算機の構成を示す詳細図。
【符号の説明】
1…プログラムカード
2…プログラムカードリーダ
3…計算機本体
201…命令制御装置
202…プログラムカウンタ
203…機械語命令読みだし装置
204…プログラム記憶装置
205…命令解釈実行装置
206…主記憶装置

Claims (4)

  1. 1ステップのプログラム情報が記憶されアドレスの付された単位記憶セルからなる単位記憶セル群にプログラムを構成する機械語命令からなるプログラム情報が記憶され、計算機本体からの指令により所定のインターフェースを介して前記プログラム情報が読出されるプログラムカードにおいて、
    前記計算機本体から送出された前記アドレスを示すアドレス値を、所定の暗号キーに基づいて復号化する復号化手段と、
    この手段により復号化されたアドレス値に対応する前記単位記憶セルからプログラム情報を1ステップずつ読出すプログラム情報読出し手段と、
    この手段により読出されたプログラム情報のうち、命令コード部とアドレス値とを識別する手段と、
    この手段により識別された命令コードが実行制御命令の場合にアドレス値を、所定の暗号キーに基づいて暗号化する暗号化手段と、
    前記命令コード部及び前記暗号化手段により暗号化されたアドレス値を前記計算機本体に送出するプログラム情報送出手段とを備えたことを特徴とするプログラムカード。
  2. 1ステップのプログラム情報が記憶されアドレスの付された単位記憶セルからなるアドレスの付されたプログラムを構成する機械語命令列からなる単位記憶セル群にプログラム情報を記憶したプログラムカードと、このプログラムカードに記憶されたプログラム情報を所定のインターフェースを介して読み出して、解釈・実行する計算機本体とを備えたプログラムカード及びこれを用いた計算機であって、
    前記プログラムカードは、
    前記アドレスを示すアドレス値を所定の暗号キーに基づいて復号化する復号化手段と、
    この手段により復号化されたアドレス値に対応する前記単位記憶セルからプログラム情報を1ステップずつ読出すプログラム情報読出手段と、
    この手段により読出されたプログラム情報のうち、命令コード部とアドレス値とを識別する手段と、
    この手段により識別された命令コードが実行制御命令の場合にアドレス値を、所定の暗号キーに基づいて暗号化する暗号化手段と、
    前記命令コード部及び前記暗号化手段により暗号化されたアドレス値を前記計算機本体に送出するプログラム情報送出手段とを備え、
    前記計算機本体は、
    前記アドレス値を保持するアドレス値保持手段と、
    この手段に保持されたアドレス値を前記プログラムカードのプログラム情報読出し手段に送出するアドレス値送出手段と、
    前記プログラム情報送出手段により送出された命令コード部及び暗号化されたアドレス値に基づいて命令制御を実行する命令制御実行手段とを備えたことを特徴とするプログラムカードを用いた計算機。
  3. 1ステップのプログラム情報が記憶されアドレスの付された単位記憶セルからなる単位記憶セル群にプログラムを構成する機械語命令からなるプログラム情報が記憶され、計算機本体からの指令により所定のインターフェースを介して前記プログラム情報が読出されるプログラムカードにおいて:
    前記計算機本体から送出された前記アドレスを示すアドレス値とこのアドレス値との相対位置を示すインデックス値とを受け取り、所定の暗号キーに基づいて前記アドレス値を復号化する復号化手段と;
    この復号化手段により復号化されたアドレス値と前記インデックス値から計算されるアドレスに対応する前記単位記憶セルからプログラム情報を読出すプログラム情報読出し手段と;
    この手段により読出されたプログラム情報のうち、命令コード部とアドレス値とを識別する手段と;
    この手段により識別された命令コードが実行制御命令の場合にアドレス値を、所定の暗号キーに基づいて暗号化する暗号化手段と、
    前記命令コード部及び前記暗号化手段により暗号化されたアドレス値を前記計算機本体に送出するプログラム情報送出手段とを備えたことを特徴とするプログラムカード。
  4. 1ステップのプログラム情報が記憶されアドレスの付された単位記憶セルからなるアドレスの付されたプログラムを構成する機械語命令列からなる単位記憶セル群にプログラム情報を記憶したプログラムカードと、このプログラムカードに記憶されたプログラム情報を所定のインターフェースを介して読み出して、解釈・実行する計算機本体とを備えたプログラムカード及びこれを用いた計算機であって:
    前記プログラムカードは、
    前記計算機本体から送出された前記アドレスを示すアドレス値とこのアドレス値との相対位置を示すインデックス値とを受け取り、所定の暗号キーに基づいて前記アドレス値を復号化する復号化手段と;
    前記復号化手段により復号化されたアドレス値と前記インデックス値から計算されるアドレスに対応する前記単位記憶セルからプログラム情報を読出すプログラム情報読出し手段と;
    この手段により読出されたプログラム情報のうち、命令コード部とアドレス値とを識別する手段と;
    この手段により識別された命令コードが実行制御命令の場合にアドレス値を、所定の暗号キーに基づいて暗号化する暗号化手段と;
    前記命令コード部及び前記暗号化手段により暗号化されたアドレス値を前記計算機本体に送出するプログラム情報送出手段とを備え、
    前記計算機本体は、
    前記アドレス値を保持するアドレス値保持手段と;
    前記アドレス値とこのアドレス値との相対位置を示すインデックス値とを前記プログラムカードのプログラム情報読み出し手段に送出するアドレス値送出手段と;
    前記プログラム情報送出手段により送出された命令コード部及び暗号化されたアドレス値に基づいて命令制御を実行する命令制御実行手段とを備えたことを特徴とするプログラムカードを用いた計算機。
JP08706394A 1994-04-26 1994-04-26 プログラムカード及びこれを用いた計算機 Expired - Fee Related JP3642533B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP08706394A JP3642533B2 (ja) 1994-04-26 1994-04-26 プログラムカード及びこれを用いた計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP08706394A JP3642533B2 (ja) 1994-04-26 1994-04-26 プログラムカード及びこれを用いた計算機

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2004279924A Division JP2005122723A (ja) 2004-09-27 2004-09-27 プログラムカード及びこれを用いた計算機

Publications (2)

Publication Number Publication Date
JPH07295802A JPH07295802A (ja) 1995-11-10
JP3642533B2 true JP3642533B2 (ja) 2005-04-27

Family

ID=13904488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP08706394A Expired - Fee Related JP3642533B2 (ja) 1994-04-26 1994-04-26 プログラムカード及びこれを用いた計算機

Country Status (1)

Country Link
JP (1) JP3642533B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4556277B2 (ja) * 1999-03-30 2010-10-06 ソニー株式会社 情報処理装置および方法、情報処理システム、並びにプログラム格納媒体
US8156343B2 (en) * 2003-11-26 2012-04-10 Intel Corporation Accessing private data about the state of a data processing machine from storage that is publicly accessible
CN100424611C (zh) 2005-07-28 2008-10-08 国际商业机器公司 用于处理加密软件的方法和中央处理单元
JP2008033457A (ja) * 2006-07-26 2008-02-14 Internatl Business Mach Corp <Ibm> 暗号化ソフトウェアを処理する方法及び中央処理装置

Also Published As

Publication number Publication date
JPH07295802A (ja) 1995-11-10

Similar Documents

Publication Publication Date Title
US7673152B2 (en) Microprocessor with program and data protection function under multi-task environment
US6158004A (en) Information storage medium and security method thereof
US9471513B2 (en) Cache structure for a computer system providing support for secure objects
US7107459B2 (en) Secure CPU and memory management unit with cryptographic extensions
US5237616A (en) Secure computer system having privileged and unprivileged memories
US5301231A (en) User defined function facility
US8103860B2 (en) Optional function multi-function instruction
US8191155B2 (en) Microprocessor
US7707645B2 (en) Microprocessor
US9280675B2 (en) Encrypting and storing confidential data
JPH08305558A (ja) 暗号化プログラム演算装置
US20050105738A1 (en) On-chip multi-core type tamper resistant microprocessor
JPH06112937A (ja) データ処理システム及び方法
US7409251B2 (en) Method and system for writing NV memories in a controller architecture, corresponding computer program product and computer-readable storage medium
EP1717723A1 (en) Improved virtual machine or hardware processor for IC-card portable electronic devices
JP4591163B2 (ja) バスアクセス制御装置
JP2723231B2 (ja) ソフトウェア権利管理制御方法
JP2007310601A (ja) マイクロコンピュータおよびそのソフトウェア保護方法
JP2005216027A (ja) 暗号化装置及びこれを備えた暗号化システム並びに復号化装置及びこれを備えた半導体システム
JP3642533B2 (ja) プログラムカード及びこれを用いた計算機
JP4047281B2 (ja) キャッシュメモリをメインメモリに同期させる方法
JPH1079000A (ja) プログラム書き込み可能なicカード
US8171311B2 (en) Transferring data values via a data bus or storing data values using a selectable representation
JP2009278491A (ja) マイクロプロセッサ及びマイクロプロセッサ応用装置
JP2005122723A (ja) プログラムカード及びこれを用いた計算機

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040727

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041019

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050121

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050124

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080204

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090204

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100204

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees