JPH07219852A - 半導体メモリ装置 - Google Patents
半導体メモリ装置Info
- Publication number
- JPH07219852A JPH07219852A JP6010779A JP1077994A JPH07219852A JP H07219852 A JPH07219852 A JP H07219852A JP 6010779 A JP6010779 A JP 6010779A JP 1077994 A JP1077994 A JP 1077994A JP H07219852 A JPH07219852 A JP H07219852A
- Authority
- JP
- Japan
- Prior art keywords
- address
- memory device
- semiconductor memory
- output
- encryption
- 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
Landscapes
- Storage Device Security (AREA)
Abstract
(57)【要約】
【目的】 小規模な回路を半導体メモリ内に追加して、
より複雑な暗号化を実現し、メモリから出力される暗号
化済みの信号をマイクロコンピュータ内部にて適宜復号
することにより、顧客のプログラムの機密性を保持しよ
うとするものである。 【構成】 入力アドレスの一部(A1〜AN)と、メモリ
セル部Aから出力されるデータd1〜dN との排他的論
理和をとることにより暗号化を行う。
より複雑な暗号化を実現し、メモリから出力される暗号
化済みの信号をマイクロコンピュータ内部にて適宜復号
することにより、顧客のプログラムの機密性を保持しよ
うとするものである。 【構成】 入力アドレスの一部(A1〜AN)と、メモリ
セル部Aから出力されるデータd1〜dN との排他的論
理和をとることにより暗号化を行う。
Description
【0001】
【産業上の利用分野】本発明は、半導体メモリと該半導
体メモリを用いたマイクロコンピュータに係り、第3者
に対して機密保護を要するメモリ内容の機密保持機能を
備えた半導体メモリ装置及びマイクロコンピュータシス
テムに係わる。
体メモリを用いたマイクロコンピュータに係り、第3者
に対して機密保護を要するメモリ内容の機密保持機能を
備えた半導体メモリ装置及びマイクロコンピュータシス
テムに係わる。
【0002】
【従来の技術】図5は特開昭55−67782に示され
る従来の機密保持メモリ装置の暗号化回路である。
る従来の機密保持メモリ装置の暗号化回路である。
【0003】アドレス信号群を半導体メモリ装置外部か
ら取り込む入力端子A1〜AM と、ユーザにて書き込み
可能なメモリ素子M1〜MN と、ユーザプログラムを格
納するメモリセル部Aと、アドレス信号群A1〜AM を
デコードするデコーダBと、指定されたアドレス番地に
従ってメモリセル部Aから出力される信号群d1〜dNと
ユーザにて書き込まれたメモリ素子M1〜MN と排他的
論理和をとる暗号化回路G1〜GN と、半導体メモリ装
置外部へ信号を出力する端子群D1〜DN にて構成され
る。
ら取り込む入力端子A1〜AM と、ユーザにて書き込み
可能なメモリ素子M1〜MN と、ユーザプログラムを格
納するメモリセル部Aと、アドレス信号群A1〜AM を
デコードするデコーダBと、指定されたアドレス番地に
従ってメモリセル部Aから出力される信号群d1〜dNと
ユーザにて書き込まれたメモリ素子M1〜MN と排他的
論理和をとる暗号化回路G1〜GN と、半導体メモリ装
置外部へ信号を出力する端子群D1〜DN にて構成され
る。
【0004】プログラムの書き込まれているROMアレ
イ部Aの出力d1〜dN は、ユーザによって書き込み可
能なメモリ素子M1〜MN の出力と暗号化回路G1〜GN
で排他的論理和がとられ、コード化されて端子D1〜DN
に出力される。以上の暗号化回路をメモリと同一半導
体上に集積することにより第3者に対して機密保持機能
を持たせている。
イ部Aの出力d1〜dN は、ユーザによって書き込み可
能なメモリ素子M1〜MN の出力と暗号化回路G1〜GN
で排他的論理和がとられ、コード化されて端子D1〜DN
に出力される。以上の暗号化回路をメモリと同一半導
体上に集積することにより第3者に対して機密保持機能
を持たせている。
【0005】以下に図5回路におけるM=4,N=4,
(M4,M3,M2,M1)=(1000)の場合の例を示
す。ROMアレイ部Aの出力d1〜d4は、M1〜M4と暗
号化回路G1〜G4によってD1〜D4に暗号化されて出力
される。
(M4,M3,M2,M1)=(1000)の場合の例を示
す。ROMアレイ部Aの出力d1〜d4は、M1〜M4と暗
号化回路G1〜G4によってD1〜D4に暗号化されて出力
される。
【0006】(例) N=4,(M4,M3,M2,M1)=(1000)の場合 M=4,(A4,A3,A2,A1)=AH とすると、 AH (d4,d3,d2,d1)→(D4,D3,D2,D1) 0H (0000) → (1000) 1H (1100) → (0100) 2H (0110) → (1110) 3H (0101) → (1101) 4H (1111) → (0111) 5H (1001) → (0001) ・ ・ ・ ・ ・ ・ 図5に示す半導体メモリ装置の出力D1〜DN を受ける
マイクロコンピュータ側には、上記メモリ素子M1〜MN
及び排他的論理和回路G1〜GN から成る暗号化回路と
同一構成の復号化回路が設けられている。
マイクロコンピュータ側には、上記メモリ素子M1〜MN
及び排他的論理和回路G1〜GN から成る暗号化回路と
同一構成の復号化回路が設けられている。
【0007】
【発明が解決しようとする課題】ROMから出力される
信号は各顧客(ユーザ)が開発したプログラムそのもの
であるため、第3者は本信号を解析することにより容易
にユーザプログラムを理解することが可能である。本行
為を防衛するために、ROMから出力される信号をある
特定のデータとの排他的論理和をとることにより暗号化
し、容易に解析できないような手法がとられてきた。し
かし、本手法では、暗号化が一意的であり、しかも単純
であるため、出力信号を分析することにより比較的容易
に暗号化プロセスが推測されてしまう危険性が高かっ
た。
信号は各顧客(ユーザ)が開発したプログラムそのもの
であるため、第3者は本信号を解析することにより容易
にユーザプログラムを理解することが可能である。本行
為を防衛するために、ROMから出力される信号をある
特定のデータとの排他的論理和をとることにより暗号化
し、容易に解析できないような手法がとられてきた。し
かし、本手法では、暗号化が一意的であり、しかも単純
であるため、出力信号を分析することにより比較的容易
に暗号化プロセスが推測されてしまう危険性が高かっ
た。
【0008】本発明は、小規模な回路を半導体メモリ内
に追加して、より複雑な暗号化を実現し、メモリから出
力される暗号化済みの信号をマイクロコンピュータ内部
にて適宜復号することにより、顧客のプログラムの機密
性を保持しようとするものである。
に追加して、より複雑な暗号化を実現し、メモリから出
力される暗号化済みの信号をマイクロコンピュータ内部
にて適宜復号することにより、顧客のプログラムの機密
性を保持しようとするものである。
【0009】
【課題を解決するための手段】本発明の半導体メモリ装
置は、出力データの一部に基づいて、出力データの他部
の暗号化を行う暗号化手段(例えば、排他的論理和回
路)を設けたことを特徴とするものである。また、上記
出力データの一部を論理演算した結果に基づいて、出力
データの他部の暗号化を行う暗号化手段を設けたことを
特徴とするものである。さらに、特定番地(例えば、初
期番地)の記憶データに基づいて、出力データの各ビッ
ト毎に暗号化の実行・不実行を制御する暗号化制御手段
を付加したことを特徴とするものである。
置は、出力データの一部に基づいて、出力データの他部
の暗号化を行う暗号化手段(例えば、排他的論理和回
路)を設けたことを特徴とするものである。また、上記
出力データの一部を論理演算した結果に基づいて、出力
データの他部の暗号化を行う暗号化手段を設けたことを
特徴とするものである。さらに、特定番地(例えば、初
期番地)の記憶データに基づいて、出力データの各ビッ
ト毎に暗号化の実行・不実行を制御する暗号化制御手段
を付加したことを特徴とするものである。
【0010】また、本発明の半導体メモリ装置は、入力
アドレスの一部または全部に基づいて、出力データの暗
号化を行う暗号化手段(例えば、排他的論理和回路)を
設けたことを特徴とするものである。また、入力アドレ
スの一部または全部を論理演算した結果に基づいて、出
力データの暗号化を行う暗号化手段を設けたことを特徴
とするものである。さらに、特定番地の記憶データに基
づいて、出力データの各ビット毎に暗号化の実行・不実
行を制御する暗号化制御手段を付加したことを特徴とす
るものである。
アドレスの一部または全部に基づいて、出力データの暗
号化を行う暗号化手段(例えば、排他的論理和回路)を
設けたことを特徴とするものである。また、入力アドレ
スの一部または全部を論理演算した結果に基づいて、出
力データの暗号化を行う暗号化手段を設けたことを特徴
とするものである。さらに、特定番地の記憶データに基
づいて、出力データの各ビット毎に暗号化の実行・不実
行を制御する暗号化制御手段を付加したことを特徴とす
るものである。
【0011】さらに、本発明の半導体メモリ装置は、出
力データの一部、及び入力アドレスの一部または全部に
基づいて、出力データの他部の暗号化を行う暗号化手段
を設けたことを特徴とするものである。
力データの一部、及び入力アドレスの一部または全部に
基づいて、出力データの他部の暗号化を行う暗号化手段
を設けたことを特徴とするものである。
【0012】
【作用】本発明によれば、従来のような一定のデータで
はなく、時々刻々変化する出力データまたは/及び入力
アドレスに基づいて、暗号化処理が実行される。また、
特定番地の記憶データに基づいて、出力データの各ビッ
ト毎に暗号化の実行・不実行が制御される。
はなく、時々刻々変化する出力データまたは/及び入力
アドレスに基づいて、暗号化処理が実行される。また、
特定番地の記憶データに基づいて、出力データの各ビッ
ト毎に暗号化の実行・不実行が制御される。
【0013】以上により、より複雑な暗号化処理が実行
される。
される。
【0014】
【実施例】以下、実施例に基づいて本発明を詳細に説明
する。
する。
【0015】図1は、本発明の一実施例の半導体メモリ
装置の内部構成図である。
装置の内部構成図である。
【0016】アドレス信号群を半導体メモリ装置外部か
ら取り込む入力端子A1〜AM と、ユーザプログラムを
格納するメモリセル部Aと、アドレス信号群A1〜AM
をデコードするデコーダBと、指定されたアドレス番地
に従ってメモリセル部Aから出力される信号群d1〜dN
とアドレス信号群A1〜AM の内N本(図1ではA1〜
AN)と排他的論理和をとる暗号化回路G1〜GN と、半
導体メモリ装置外部へ信号を出力する端子群D1〜DN
にて構成される。
ら取り込む入力端子A1〜AM と、ユーザプログラムを
格納するメモリセル部Aと、アドレス信号群A1〜AM
をデコードするデコーダBと、指定されたアドレス番地
に従ってメモリセル部Aから出力される信号群d1〜dN
とアドレス信号群A1〜AM の内N本(図1ではA1〜
AN)と排他的論理和をとる暗号化回路G1〜GN と、半
導体メモリ装置外部へ信号を出力する端子群D1〜DN
にて構成される。
【0017】マイクロコンピュータなどから該半導体メ
モリ装置に与えられるアドレス信号群A1〜AM は、ア
ドレスデコーダBにてデコードされ、メモリセル部Aの
ある番地を指定する。メモリセル部Aからは、指定され
たアドレス番地に従い、該番地に格納されるデータ信号
群d1〜dN を出力する。出力されたデータ信号群d1〜
dN は暗号化回路である排他的論理和ゲートG1〜GN
に入力される。排他的論理和ゲートG1〜GN のもう片
方の入力端子には、先に半導体メモリ装置外部から入力
されたアドレス信号群A1〜AM の一部であるN本の信
号が入力されている。これにより、半導体メモリ装置の
外部には、データ信号群d1〜dN とアドレス信号のN
本の信号(図1ではA1〜AN)の対応する各ビット毎に
排他的論理和をとった値であるD1〜DN が出力され
る。
モリ装置に与えられるアドレス信号群A1〜AM は、ア
ドレスデコーダBにてデコードされ、メモリセル部Aの
ある番地を指定する。メモリセル部Aからは、指定され
たアドレス番地に従い、該番地に格納されるデータ信号
群d1〜dN を出力する。出力されたデータ信号群d1〜
dN は暗号化回路である排他的論理和ゲートG1〜GN
に入力される。排他的論理和ゲートG1〜GN のもう片
方の入力端子には、先に半導体メモリ装置外部から入力
されたアドレス信号群A1〜AM の一部であるN本の信
号が入力されている。これにより、半導体メモリ装置の
外部には、データ信号群d1〜dN とアドレス信号のN
本の信号(図1ではA1〜AN)の対応する各ビット毎に
排他的論理和をとった値であるD1〜DN が出力され
る。
【0018】尚、図1ではアドレス信号群A1〜AM の
N本をA1〜AN としているが、これの選び方は任意に
選択してもかまわない。また、暗号化回路への入力方法
についても同様にアドレスの任意ビットが入力可能であ
る。
N本をA1〜AN としているが、これの選び方は任意に
選択してもかまわない。また、暗号化回路への入力方法
についても同様にアドレスの任意ビットが入力可能であ
る。
【0019】以下に、図1回路におけるM=8,N=4
の場合の例を示す。アドレスA1〜A8 で指定される番
地に格納されるデータd1〜d4 は、アドレス信号群の
内の4ビットA1〜A4 とビット単位で排他的論理和が
とられ、D1〜D4 として半導体メモリ装置外部に出力
される。(例) M=8,AH=(A8 A7 A6 A5 A4 A3 A2 A1) N=4とすると、 AH (A4A3A2A1) (d4d3d2d1) → (D4D3D2D1) 00H (0000) (1101) → (1101) 01H (0001) (1011) → (1010) 02H (0010) (0101) → (0111) 03H (0011) (1111) → (1100) 04H (0100) (0011) → (0111) 05H (0101) (1100) → (1001) 本半導体メモリ装置では、図1のメモリセル部Aに全て
同一のデータが格納されても、出力時には異なった値と
して出力される。
の場合の例を示す。アドレスA1〜A8 で指定される番
地に格納されるデータd1〜d4 は、アドレス信号群の
内の4ビットA1〜A4 とビット単位で排他的論理和が
とられ、D1〜D4 として半導体メモリ装置外部に出力
される。(例) M=8,AH=(A8 A7 A6 A5 A4 A3 A2 A1) N=4とすると、 AH (A4A3A2A1) (d4d3d2d1) → (D4D3D2D1) 00H (0000) (1101) → (1101) 01H (0001) (1011) → (1010) 02H (0010) (0101) → (0111) 03H (0011) (1111) → (1100) 04H (0100) (0011) → (0111) 05H (0101) (1100) → (1001) 本半導体メモリ装置では、図1のメモリセル部Aに全て
同一のデータが格納されても、出力時には異なった値と
して出力される。
【0020】 AH (A4A3A2A1) (d4d3d2d1) → (D4D3D2D1) 00H (0000) (1101) → (1101) 01H (0001) (1101) → (1100) 02H (0010) (1101) → (1111) 03H (0011) (1101) → (1110) 04H (0100) (1101) → (1001) 05H (0101) (1101) → (1000) 上記半導体メモリ装置の出力D1〜DN を受けるマイク
ロコンピュータ側には、上記排他的論理和ゲートG1〜
GN と同様の、アドレスA1〜AN 及びD1〜DNをその
入力とする排他的論理和ゲートから成る復号化回路が設
けられている。
ロコンピュータ側には、上記排他的論理和ゲートG1〜
GN と同様の、アドレスA1〜AN 及びD1〜DNをその
入力とする排他的論理和ゲートから成る復号化回路が設
けられている。
【0021】上記実施例では、入力アドレスの一部が暗
号化のために用いられているが、例えば、入力アドレス
ビット数=出力データビット数の場合は、入力アドレス
の全部が暗号化のために用いられる。
号化のために用いられているが、例えば、入力アドレス
ビット数=出力データビット数の場合は、入力アドレス
の全部が暗号化のために用いられる。
【0022】また、上記実施例では、入力アドレスをそ
のまま使用し、これと出力データとの排他的論理和をと
ることにより、暗号化を行っているが、入力アドレスを
論理演算し、その結果と出力データとの排他的論理和を
とることにより、暗号化を行う構成としてもよい。この
場合にも、マイクロコンピュータ側には、論理演算回路
を含む暗号化回路と同一構成の復号化回路が設けられ
る。
のまま使用し、これと出力データとの排他的論理和をと
ることにより、暗号化を行っているが、入力アドレスを
論理演算し、その結果と出力データとの排他的論理和を
とることにより、暗号化を行う構成としてもよい。この
場合にも、マイクロコンピュータ側には、論理演算回路
を含む暗号化回路と同一構成の復号化回路が設けられ
る。
【0023】図2は、本発明の他の実施例の半導体メモ
リ装置Y及びこれと接続されるマイクロコンピュータZ
の内部構成図である。
リ装置Y及びこれと接続されるマイクロコンピュータZ
の内部構成図である。
【0024】アドレス信号群を半導体メモリ装置外部か
ら取り込む入力端子A1〜AM と、ユーザプログラムを
格納するメモリセル部Aと、アドレス信号群A1〜AM
をデコードするデコーダBと、ある特定番地が指定され
た時にメモリセルAから出力される信号群d1〜dN を
ラッチするレジスタC(デコーダBから特定番地が指定
された時ラッチ信号Lが出力される)と、レジスタCの
値とアドレス信号群A1〜AM の内N本(図2ではA1〜
AN)とビット単位で論理積をとるアンドゲートE1〜E
N と、指定されたアドレス番地に従ってメモリセル部A
から出力される信号群d1〜dN とアンドゲートE1〜E
N の出力とビット単位で排他的論理和をとる暗号化回路
G1〜GN と、出力する端子群D1〜DN にて構成される
半導体メモリ装置Yをメモリ装置として使用し、半導体
メモリ装置のアドレス信号群A1〜AM に結線された従
来のマイクロコンピュータXから出力されたアドレス信
号群μA1〜μAM と、半導体メモリ装置の出力端子群
D1〜DN に結線された入力端子群μD1〜μDN と、従
来のマイクロコンピュータから出力されるアドレスμA
1〜μAM がある特定番地を指定した時、デコーダBか
ら信号Lが発せられると同時に信号μLを発するアドレ
スデコーダRと、信号μLが発せられた時、μD1〜μ
DN をラッチするレジスタPと、レジスタPの値とアド
レス信号群A1〜AM の内N本(図2ではA1〜AN)を
ビット単位で論理積をとるアンドゲートI1〜INと、半
導体メモリ装置から入力されるデータ信号群μD1〜μ
DNとアンドゲートI1〜IN の出力をビット単位で排他
的論理和をとる暗号解読回路(復号化回路)H1〜HN
で構成されるマイクロコンピュータZで本システムは構
成される。
ら取り込む入力端子A1〜AM と、ユーザプログラムを
格納するメモリセル部Aと、アドレス信号群A1〜AM
をデコードするデコーダBと、ある特定番地が指定され
た時にメモリセルAから出力される信号群d1〜dN を
ラッチするレジスタC(デコーダBから特定番地が指定
された時ラッチ信号Lが出力される)と、レジスタCの
値とアドレス信号群A1〜AM の内N本(図2ではA1〜
AN)とビット単位で論理積をとるアンドゲートE1〜E
N と、指定されたアドレス番地に従ってメモリセル部A
から出力される信号群d1〜dN とアンドゲートE1〜E
N の出力とビット単位で排他的論理和をとる暗号化回路
G1〜GN と、出力する端子群D1〜DN にて構成される
半導体メモリ装置Yをメモリ装置として使用し、半導体
メモリ装置のアドレス信号群A1〜AM に結線された従
来のマイクロコンピュータXから出力されたアドレス信
号群μA1〜μAM と、半導体メモリ装置の出力端子群
D1〜DN に結線された入力端子群μD1〜μDN と、従
来のマイクロコンピュータから出力されるアドレスμA
1〜μAM がある特定番地を指定した時、デコーダBか
ら信号Lが発せられると同時に信号μLを発するアドレ
スデコーダRと、信号μLが発せられた時、μD1〜μ
DN をラッチするレジスタPと、レジスタPの値とアド
レス信号群A1〜AM の内N本(図2ではA1〜AN)を
ビット単位で論理積をとるアンドゲートI1〜INと、半
導体メモリ装置から入力されるデータ信号群μD1〜μ
DNとアンドゲートI1〜IN の出力をビット単位で排他
的論理和をとる暗号解読回路(復号化回路)H1〜HN
で構成されるマイクロコンピュータZで本システムは構
成される。
【0025】上記信号L,μ Lが出力される「ある特
定アドレス」が0番地(A1〜AM ,μA1〜μAM が全
て“0”)以外の場合、システム起動時からレジスタ
C,Pに同じ値がセットされていないとシステムが正常
に動作しないため、システム起動時にレジスタC,Pは
リセットされなければならない。
定アドレス」が0番地(A1〜AM ,μA1〜μAM が全
て“0”)以外の場合、システム起動時からレジスタ
C,Pに同じ値がセットされていないとシステムが正常
に動作しないため、システム起動時にレジスタC,Pは
リセットされなければならない。
【0026】本システムの動作概略フローを図3に示
す。
す。
【0027】・ 電源投入後、マイクロコンピュータは
初期化され、従来のマイクロコンピュータから初期アド
レス(0番地)が出力される。
初期化され、従来のマイクロコンピュータから初期アド
レス(0番地)が出力される。
【0028】・ 従来のマイクロコンピュータから出力
された初期アドレスは、端子群μA1〜μAM を通して
半導体メモリ装置の入力端子群A1〜AM へ渡される。
このとき同時にマイクロコンピュータ内のアドレスデコ
ーダRにも入力される。
された初期アドレスは、端子群μA1〜μAM を通して
半導体メモリ装置の入力端子群A1〜AM へ渡される。
このとき同時にマイクロコンピュータ内のアドレスデコ
ーダRにも入力される。
【0029】・ アドレスデコーダRは初期アドレス
(0番地)を受け、レジスタPへラッチ信号 μLを出
力する。
(0番地)を受け、レジスタPへラッチ信号 μLを出
力する。
【0030】・ 半導体メモリ装置内では、入力された
初期アドレスに従いデコーダBからメモリセル部Aが指
定すると同時に、レジスタCに対してラッチ信号Lを出
力する。
初期アドレスに従いデコーダBからメモリセル部Aが指
定すると同時に、レジスタCに対してラッチ信号Lを出
力する。
【0031】・ メモリセル部Aからは初期アドレス0
番地に格納されていたデータ信号群d1〜dN が出力さ
れる。このとき、指定されている初期アドレスは0番地
のため、A1〜AN は全て“0”である。従って、アン
ドゲートE1〜EN の出力は全て“0”となり、暗号化
回路である排他的論理和ゲートG1〜GN からは入力信
号であるd1〜dN がそのまま出力される。
番地に格納されていたデータ信号群d1〜dN が出力さ
れる。このとき、指定されている初期アドレスは0番地
のため、A1〜AN は全て“0”である。従って、アン
ドゲートE1〜EN の出力は全て“0”となり、暗号化
回路である排他的論理和ゲートG1〜GN からは入力信
号であるd1〜dN がそのまま出力される。
【0032】・ 同時にラッチ信号Lに従い、データ信
号群d1〜dN は、レジスタCにラッチされる。
号群d1〜dN は、レジスタCにラッチされる。
【0033】・ 半導体メモリ装置から出力されたデー
タ信号D1〜DN (=d1〜dN)はマイクロコンピュー
タの入力端子μD1〜μDN から入力される。
タ信号D1〜DN (=d1〜dN)はマイクロコンピュー
タの入力端子μD1〜μDN から入力される。
【0034】・ 入力されたデータ信号群μD1〜μDN
は、ラッチ信号 μ Lに従いレジスタPにラッチされ
る。これにより、レジスタPには半導体メモリ装置内の
レジスタCと同じ値がラッチされることとなる。
は、ラッチ信号 μ Lに従いレジスタPにラッチされ
る。これにより、レジスタPには半導体メモリ装置内の
レジスタCと同じ値がラッチされることとなる。
【0035】・ 初期アドレスは0番地のため、アンド
ゲートI1〜IN の出力はレジスタPの値に係わらず全
て“0”となる。これにより、入力されたデータ信号群
μD1〜μDN は暗号解読回路である排他的論理和ゲー
ト群H1〜HN を通して、そのまま従来のマイクロコン
ピュータに入力される。
ゲートI1〜IN の出力はレジスタPの値に係わらず全
て“0”となる。これにより、入力されたデータ信号群
μD1〜μDN は暗号解読回路である排他的論理和ゲー
ト群H1〜HN を通して、そのまま従来のマイクロコン
ピュータに入力される。
【0036】・ 以上により、初期アドレス(0番地)
は、暗号化をしないそのままのデータを従来のマイクロ
コンピュータは得ることとなる。
は、暗号化をしないそのままのデータを従来のマイクロ
コンピュータは得ることとなる。
【0037】・ 続いて、次アドレス(初期アドレスと
は異なる)が指定され、半導体メモリ装置内では、指定
されたメモリセル部Aからの出力d1〜dN と、アドレ
ス信号群A1〜AN とレジスタCの論理積の値(E1〜E
N の出力)との排他的論理和をとることにより暗号化が
行われる。
は異なる)が指定され、半導体メモリ装置内では、指定
されたメモリセル部Aからの出力d1〜dN と、アドレ
ス信号群A1〜AN とレジスタCの論理積の値(E1〜E
N の出力)との排他的論理和をとることにより暗号化が
行われる。
【0038】・ 半導体メモリ装置から出力されたデー
タD1〜DN は、μD1〜μDN としてマイクロコンピュ
ータに取り込まれ、半導体メモリ装置と同様にアドレス
信号群A1〜AN とレジスタPの論理積の値(I1〜IN
の出力)との排他的論理和をとることにより暗号解読が
行われ、従来のマイクロコンピュータに渡され、処理さ
れる。
タD1〜DN は、μD1〜μDN としてマイクロコンピュ
ータに取り込まれ、半導体メモリ装置と同様にアドレス
信号群A1〜AN とレジスタPの論理積の値(I1〜IN
の出力)との排他的論理和をとることにより暗号解読が
行われ、従来のマイクロコンピュータに渡され、処理さ
れる。
【0039】本発明の暗号化の原理は、以下の論理数学
に基づく。
に基づく。
【0040】基本的には、アドレス信号との排他的論理
和をとることにより暗号化するのであるが、ここに初期
アドレスに格納されるデータ(レジスタC,Pにラッ
チ)が“1”であれば暗号化実施、“0”であれば暗号
化を行わないこととする。下記論理数学より、排他的論
理和で暗号化された値は、暗号化に用いた信号ともう一
度排他的論理和をとることにより解読される。
和をとることにより暗号化するのであるが、ここに初期
アドレスに格納されるデータ(レジスタC,Pにラッ
チ)が“1”であれば暗号化実施、“0”であれば暗号
化を行わないこととする。下記論理数学より、排他的論
理和で暗号化された値は、暗号化に用いた信号ともう一
度排他的論理和をとることにより解読される。
【0041】a:暗号化前信号、 c:レジスタC,
Pの特定ビット、b:アドレス信号Axの特定ビットと
する (暗号化) a+(b・c) (+:排他的論理和) (暗号解読) {a+(b・c)}+(b・c)=a+(b・c)+
(b・c) =a+{(b・c)+(b・c)} =a+0 =a 注意:x+y=バ−x・y+x・バ−y 図4は、本発明のさらに他の実施例の半導体メモリ装置
Y及びこれと接続されるマイクロコンピュータZの内部
構成図である。
Pの特定ビット、b:アドレス信号Axの特定ビットと
する (暗号化) a+(b・c) (+:排他的論理和) (暗号解読) {a+(b・c)}+(b・c)=a+(b・c)+
(b・c) =a+{(b・c)+(b・c)} =a+0 =a 注意:x+y=バ−x・y+x・バ−y 図4は、本発明のさらに他の実施例の半導体メモリ装置
Y及びこれと接続されるマイクロコンピュータZの内部
構成図である。
【0042】アドレス信号群を半導体メモリ装置外部か
ら取り込む入力端子A1〜AM と、ユーザプログラムを
格納するメモリセル部Aと、アドレス信号群A1〜AM
をデコードするデコーダBと、指定されたアドレス番地
に従ってメモリセル部Aから出力される信号群d1〜dN
の内の数本(図4では、d1,d2,d3)の論理演算を
とる論理演算回路Eと、論理演算回路Eの演算結果と、
論理演算回路Eにて論理演算をしなかった残りのデータ
信号群(図4ではd4〜dN)と排他的論理和をとる暗号
化回路G4〜GN と、半導体メモリ装置外部へ信号を出
力する端子群D1〜DN にて構成される半導体メモリ装
置Yをメモリ装置として使用し、半導体メモリ装置のア
ドレス信号群A1〜AM に結線された従来のマイクロコ
ンピュータXから出力されたアドレス信号群μA1〜μ
AM と、半導体メモリ装置の出力端子群D1〜DN に結
線された入力端子群μD1〜μDN と、半導体メモリ装
置Yから入力されるデータ信号群μD1〜μDN の内、
半導体メモリ装置内部の論理演算回路Eに入力した信号
と同じ信号を入力信号とする、論理演算回路Eと全く同
じ論理回路にて構成される論理演算回路Fと、論理演算
回路Fの演算結果と、論理演算回路Fにて論理演算をし
なかった残りのデータ信号群(図4ではμD4〜μDN)
と排他的論理和をとる暗号解読回路H4〜HN で構成さ
れるマイクロコンピュータZにて本システムは構成され
る。
ら取り込む入力端子A1〜AM と、ユーザプログラムを
格納するメモリセル部Aと、アドレス信号群A1〜AM
をデコードするデコーダBと、指定されたアドレス番地
に従ってメモリセル部Aから出力される信号群d1〜dN
の内の数本(図4では、d1,d2,d3)の論理演算を
とる論理演算回路Eと、論理演算回路Eの演算結果と、
論理演算回路Eにて論理演算をしなかった残りのデータ
信号群(図4ではd4〜dN)と排他的論理和をとる暗号
化回路G4〜GN と、半導体メモリ装置外部へ信号を出
力する端子群D1〜DN にて構成される半導体メモリ装
置Yをメモリ装置として使用し、半導体メモリ装置のア
ドレス信号群A1〜AM に結線された従来のマイクロコ
ンピュータXから出力されたアドレス信号群μA1〜μ
AM と、半導体メモリ装置の出力端子群D1〜DN に結
線された入力端子群μD1〜μDN と、半導体メモリ装
置Yから入力されるデータ信号群μD1〜μDN の内、
半導体メモリ装置内部の論理演算回路Eに入力した信号
と同じ信号を入力信号とする、論理演算回路Eと全く同
じ論理回路にて構成される論理演算回路Fと、論理演算
回路Fの演算結果と、論理演算回路Fにて論理演算をし
なかった残りのデータ信号群(図4ではμD4〜μDN)
と排他的論理和をとる暗号解読回路H4〜HN で構成さ
れるマイクロコンピュータZにて本システムは構成され
る。
【0043】動作の概略は、 従来のマイクロコンピュータから発せられたアドレ
ス信号は、出力端子μA1〜μAM を通してマイクロコ
ンピュータZ外部へ出力される。
ス信号は、出力端子μA1〜μAM を通してマイクロコ
ンピュータZ外部へ出力される。
【0044】 マイクロコンピュータZから出力され
たアドレス信号μA1〜μAM は、入力端子A1〜AM を
通してデコーダBに入力され、デコードされる。
たアドレス信号μA1〜μAM は、入力端子A1〜AM を
通してデコーダBに入力され、デコードされる。
【0045】 デコーダBによって指定された番地に
従い、メモリセル部Aからはデータ信号群d1〜dN が
出力され、内d1,d2,d3 はそのままD1,D2,D3
端子より半導体メモリ装置Y外部へ出力されると同時
に、半導体メモリ装置内部に設置する論理演算回路Eに
入力される。
従い、メモリセル部Aからはデータ信号群d1〜dN が
出力され、内d1,d2,d3 はそのままD1,D2,D3
端子より半導体メモリ装置Y外部へ出力されると同時
に、半導体メモリ装置内部に設置する論理演算回路Eに
入力される。
【0046】 論理演算回路Eから得られた演算結果
は、メモリセル部Aから出力されたd4〜dN の各ビッ
トと排他的論理和ゲートG4〜GN にて排他的論理和が
とられる。
は、メモリセル部Aから出力されたd4〜dN の各ビッ
トと排他的論理和ゲートG4〜GN にて排他的論理和が
とられる。
【0047】 排他的論理和ゲートG4〜GN の出力
は、出力端子D4〜DN を通して半導体メモリ装置Y外
部へ出力される。
は、出力端子D4〜DN を通して半導体メモリ装置Y外
部へ出力される。
【0048】 半導体メモリ装置Yから出力されたD
1〜DN は、入力端子μD1〜μDNを通してマイクロコ
ンピュータZに入力される。内 μD1,μD2,μD3
はそのまま従来のマイクロコンピュータに入力されると
同時に、マイクロコンピュータZ内部に設けられた論理
演算回路Eと全く同じ論理演算回路Fに入力される。
1〜DN は、入力端子μD1〜μDNを通してマイクロコ
ンピュータZに入力される。内 μD1,μD2,μD3
はそのまま従来のマイクロコンピュータに入力されると
同時に、マイクロコンピュータZ内部に設けられた論理
演算回路Eと全く同じ論理演算回路Fに入力される。
【0049】 論理演算回路Fの出力は、μD4〜μ
DN の各ビットと排他的論理和ゲートH4〜HN にて排
他的論理和がとられ、その結果は従来のマイクロコンピ
ュータに入力される。
DN の各ビットと排他的論理和ゲートH4〜HN にて排
他的論理和がとられ、その結果は従来のマイクロコンピ
ュータに入力される。
【0050】 従来のマイクロコンピュータでは、入
力されたNビットのデータ(これは各顧客によって作成
されたプログラムにほかならない)をフェッチし、動作
する。
力されたNビットのデータ(これは各顧客によって作成
されたプログラムにほかならない)をフェッチし、動作
する。
【0051】以下に、図4回路におけるM=8,N=
8、論理演算回路E,Fは論理和の場合の例を示す。メ
モリセルAから出力されたデータd1〜d8 の内、d1,
d2,d3はそのままD1,D2,D3 として出力され、d
4〜d8 はd1,d2,d3 の論理演算結果(論理和)と
各ビット毎に排他的論理和をとったD4〜D8 として出
力される。
8、論理演算回路E,Fは論理和の場合の例を示す。メ
モリセルAから出力されたデータd1〜d8 の内、d1,
d2,d3はそのままD1,D2,D3 として出力され、d
4〜d8 はd1,d2,d3 の論理演算結果(論理和)と
各ビット毎に排他的論理和をとったD4〜D8 として出
力される。
【0052】(例) M=8,AH=(A8A7A6A5A4A3A2A1) N=8 A3+A2+A1=B とすると AH (d8d7d6d5d4d3d2d1)B→(D8D7D6D5D4D3D2D1) 00H (10101010) 1→ (01010010) 01H (01010101) 1→ (10101101) 02H (11111111) 1→ (00000111) 03H (00000000) 0→ (00000000) 04H (11000111) 1→ (00111111) 05H (10110000) 0→ (10110000) 上記実施例においては、出力データの一部を論理演算し
た結果と他の出力データとの排他的論理和をとることに
より暗号化を行っているが、出力データをそのまま使用
する構成としてもよい。例えば、出力データが8ビット
(d1,d2,…,d8)のとき、d1とd4及びd5との排
他的論理和をとり、また、d2とd6及びd7との排他的
論理和をとり、さらに、d3とd8との排他的論理和をと
ることによって、暗号化を行う。マイクロコンピュータ
側には同様の排他的論理和回路からなる復号化回路が設
けられる。
た結果と他の出力データとの排他的論理和をとることに
より暗号化を行っているが、出力データをそのまま使用
する構成としてもよい。例えば、出力データが8ビット
(d1,d2,…,d8)のとき、d1とd4及びd5との排
他的論理和をとり、また、d2とd6及びd7との排他的
論理和をとり、さらに、d3とd8との排他的論理和をと
ることによって、暗号化を行う。マイクロコンピュータ
側には同様の排他的論理和回路からなる復号化回路が設
けられる。
【0053】更に、図4の実施例においても、図2の実
施例と同様な、特定番地の記憶データに基づくビット単
位・暗号化実行・不実行制御手段を付加する構成として
もよい。
施例と同様な、特定番地の記憶データに基づくビット単
位・暗号化実行・不実行制御手段を付加する構成として
もよい。
【0054】また、上記各実施例は、何れも、入力アド
レス又は出力データの何れか一方のみに基づいて暗号化
処理を行うものであるが、図1の実施例と図4の実施例
を組み合わせ、例えば入力アドレスの一部を論理演算し
た結果と、出力データの一部を論理演算した結果とを論
理演算し、その結果と、出力データの残りとの排他的論
理和をとることによって暗号化を行う構成としてもよ
い。この場合も、マイクロコンピュータ側には同様の構
成の論理演算回路及び排他的論理和ゲートを含む復号化
回路が設けられる。
レス又は出力データの何れか一方のみに基づいて暗号化
処理を行うものであるが、図1の実施例と図4の実施例
を組み合わせ、例えば入力アドレスの一部を論理演算し
た結果と、出力データの一部を論理演算した結果とを論
理演算し、その結果と、出力データの残りとの排他的論
理和をとることによって暗号化を行う構成としてもよ
い。この場合も、マイクロコンピュータ側には同様の構
成の論理演算回路及び排他的論理和ゲートを含む復号化
回路が設けられる。
【0055】
【発明の効果】本発明により半導体メモリ装置から出力
される信号はユーザが作成したプログラムを暗号化した
ものである。しかも、その暗号化手法は固定データとの
論理演算をとるという単純一意的に方法でなく、格納さ
れるデータの内の数ビットによって暗号化を行うか否か
を決定するという手法を用いる。これにより、第3者
が、その暗号化手法を容易に知ることのできない機密保
持機能の高い半導体メモリ装置を得ることが可能とな
る。
される信号はユーザが作成したプログラムを暗号化した
ものである。しかも、その暗号化手法は固定データとの
論理演算をとるという単純一意的に方法でなく、格納さ
れるデータの内の数ビットによって暗号化を行うか否か
を決定するという手法を用いる。これにより、第3者
が、その暗号化手法を容易に知ることのできない機密保
持機能の高い半導体メモリ装置を得ることが可能とな
る。
【0056】また、本発明により半導体メモリ装置から
出力される信号はユーザが作成したプログラムを暗号化
したものである。しかも、その暗号化手法は固定データ
との論理演算をとるという単純一意的に方法でなく、指
定されるアドレス番地毎に暗号化信号(論理演算の相
手)が異なるという手法である。これにより、第3者
が、その暗号化手法を容易に知ることができない機密保
持機能の高い半導体メモリ装置を得ることが可能とな
る。
出力される信号はユーザが作成したプログラムを暗号化
したものである。しかも、その暗号化手法は固定データ
との論理演算をとるという単純一意的に方法でなく、指
定されるアドレス番地毎に暗号化信号(論理演算の相
手)が異なるという手法である。これにより、第3者
が、その暗号化手法を容易に知ることができない機密保
持機能の高い半導体メモリ装置を得ることが可能とな
る。
【0057】更に、暗号化するビットと、しないビット
が、無造作に書き込まれた初期アドレス番地等のデータ
によって決定されるという手法によって、より高度な機
密保持性を備えている。
が、無造作に書き込まれた初期アドレス番地等のデータ
によって決定されるという手法によって、より高度な機
密保持性を備えている。
【0058】また、本暗号化手法では、従来の技術の様
に、使用する際にユーザで書き込むという、プログラム
を格納する以外のメモリを持つ必要もないため、回路が
簡略化でき、暗号化信号を書き込む手間も必要ない。
に、使用する際にユーザで書き込むという、プログラム
を格納する以外のメモリを持つ必要もないため、回路が
簡略化でき、暗号化信号を書き込む手間も必要ない。
【図1】本発明の一実施例の半導体メモリ装置の内部構
成図である。
成図である。
【図2】本発明の他の実施例の半導体メモリ装置及びこ
れと接続されるマイクロコンピュータの内部構成図であ
る。
れと接続されるマイクロコンピュータの内部構成図であ
る。
【図3】図2の実施例の動作概略フロー図である。
【図4】本発明の更に他の実施例の半導体メモリ装置及
びこれと接続されるマイクロコンピュータの内部構成図
である。
びこれと接続されるマイクロコンピュータの内部構成図
である。
【図5】従来の半導体メモリ装置の内部構成図である。
G1〜GN 排他的論理和ゲート C レジスタ E1〜EN アンドゲート E 論理演算回路
Claims (7)
- 【請求項1】 出力データの一部に基づいて、出力デー
タの他部の暗号化を行う暗号化手段を設けたことを特徴
とする半導体メモリ装置。 - 【請求項2】 出力データの一部を論理演算した結果に
基づいて、出力データの他部の暗号化を行う暗号化手段
を設けたことを特徴とする、請求項1に記載の半導体メ
モリ装置。 - 【請求項3】 特定番地の記憶データに基づいて、出力
データの各ビット毎に暗号化の実行・不実行を制御する
暗号化制御手段を設けたことを特徴とする、請求項1又
は請求項2に記載の半導体メモリ装置。 - 【請求項4】 入力アドレスの一部又は全部に基づい
て、出力データの暗号化を行う暗号化手段を設けたこと
を特徴とする半導体メモリ装置。 - 【請求項5】 入力アドレスの一部又は全部を論理演算
した結果に基づいて、出力データの暗号化を行う暗号化
手段を設けたことを特徴とする、請求項4に記載の半導
体メモリ装置。 - 【請求項6】 特定番地の記憶データに基づいて、出力
データの各ビット毎に暗号化の実行・不実行を制御する
暗号化制御手段を設けたことを特徴とする、請求項4又
は請求項5に記載の半導体メモリ装置。 - 【請求項7】 出力データの一部、及び入力アドレスの
一部又は全部に基づいて、出力データの他部の暗号化を
行う暗号化手段を設けたことを特徴とする半導体メモリ
装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6010779A JPH07219852A (ja) | 1994-02-02 | 1994-02-02 | 半導体メモリ装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6010779A JPH07219852A (ja) | 1994-02-02 | 1994-02-02 | 半導体メモリ装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07219852A true JPH07219852A (ja) | 1995-08-18 |
Family
ID=11759824
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6010779A Pending JPH07219852A (ja) | 1994-02-02 | 1994-02-02 | 半導体メモリ装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH07219852A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006023957A (ja) * | 2004-07-07 | 2006-01-26 | Sony Corp | 半導体集積回路及び情報処理装置 |
US7770027B2 (en) | 2004-11-15 | 2010-08-03 | Nintendo Co., Ltd. | Semiconductor memory device |
US8015416B2 (en) | 2004-11-19 | 2011-09-06 | Megachips Corporation | Memory information protection system and methods |
US8826042B2 (en) | 2009-04-14 | 2014-09-02 | Megachips Corporation | Memory controller, memory control apparatus, memory device, memory information protection system, control method for memory control apparatus, and control method for memory device |
US9003202B2 (en) | 2009-04-23 | 2015-04-07 | Megachips Corporation | Memory control device, semiconductor memory device, memory system, and memory control method |
WO2019155861A1 (ja) * | 2018-02-06 | 2019-08-15 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム、および情報処理システム |
-
1994
- 1994-02-02 JP JP6010779A patent/JPH07219852A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006023957A (ja) * | 2004-07-07 | 2006-01-26 | Sony Corp | 半導体集積回路及び情報処理装置 |
US7913307B2 (en) | 2004-07-07 | 2011-03-22 | Sony Corporation | Semiconductor integrated circuit and information processing apparatus |
US7770027B2 (en) | 2004-11-15 | 2010-08-03 | Nintendo Co., Ltd. | Semiconductor memory device |
US8015416B2 (en) | 2004-11-19 | 2011-09-06 | Megachips Corporation | Memory information protection system and methods |
US8826042B2 (en) | 2009-04-14 | 2014-09-02 | Megachips Corporation | Memory controller, memory control apparatus, memory device, memory information protection system, control method for memory control apparatus, and control method for memory device |
US9003202B2 (en) | 2009-04-23 | 2015-04-07 | Megachips Corporation | Memory control device, semiconductor memory device, memory system, and memory control method |
WO2019155861A1 (ja) * | 2018-02-06 | 2019-08-15 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム、および情報処理システム |
CN111699657A (zh) * | 2018-02-06 | 2020-09-22 | 索尼公司 | 信息处理装置、信息处理方法、程序以及信息处理系统 |
JPWO2019155861A1 (ja) * | 2018-02-06 | 2021-04-08 | ソニー株式会社 | 情報処理装置、情報処理方法、プログラム、および情報処理システム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4905277A (en) | Method for enciphering and deciphering instructions in a microcomputer, and a microcomputer used for effecting same | |
US4764959A (en) | Single-chip microcomputer with encryptable function on program memory | |
US5432950A (en) | System for securing a data processing system and method of operation | |
EP0536943B1 (en) | Data security arrangements for semiconductor programmable logic devices | |
US4633388A (en) | On-chip microprocessor instruction decoder having hardware for selectively bypassing on-chip circuitry used to decipher encrypted instruction codes | |
US4523271A (en) | Software protection method and apparatus | |
RU2188447C2 (ru) | Электронное устройство и система обработки данных | |
US8094816B2 (en) | System and method for stream/block cipher with internal random states | |
EP1711887B1 (en) | Protection against power analysis attacks | |
JPH03276345A (ja) | マイクロコントローラ | |
TW201918923A (zh) | 安全邏輯系統及操作安全邏輯系統的方法 | |
US7353401B2 (en) | Device and method for data protection by scrambling address lines | |
JPH06243046A (ja) | 情報保護方法及び情報メディア | |
JP2005122745A (ja) | 対称型マルチプロセッサを持つ電子機器におけるデータの暗号化 | |
KR970076809A (ko) | 반도체기억장치 및 그 억세스방법 | |
JP2005216027A (ja) | 暗号化装置及びこれを備えた暗号化システム並びに復号化装置及びこれを備えた半導体システム | |
JPH07219852A (ja) | 半導体メモリ装置 | |
US20070140482A1 (en) | Method for storing data in a random access memory and encryption and decryption device | |
JP2000235523A (ja) | 電子式データ処理用回路装置 | |
JP2000181802A (ja) | 半導体記憶装置 | |
JP2000029790A (ja) | データセキュリティシステム | |
JPH11175334A (ja) | プログラムデータ保護回路 | |
JPH10105469A (ja) | 半導体メモリの暗号コードデータ解読防止回路 | |
JP2000187618A (ja) | 情報処理装置 | |
US7707431B2 (en) | Device of applying protection bit codes to encrypt a program for protection |