JPS60254347A - Rom保護機構 - Google Patents

Rom保護機構

Info

Publication number
JPS60254347A
JPS60254347A JP60109208A JP10920885A JPS60254347A JP S60254347 A JPS60254347 A JP S60254347A JP 60109208 A JP60109208 A JP 60109208A JP 10920885 A JP10920885 A JP 10920885A JP S60254347 A JPS60254347 A JP S60254347A
Authority
JP
Japan
Prior art keywords
bit
exclusive
encoding
decoding
conductor
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
JP60109208A
Other languages
English (en)
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.)
American Microsystems Holding Corp
Original Assignee
American Microsystems Holding 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 American Microsystems Holding Corp filed Critical American Microsystems Holding Corp
Publication of JPS60254347A publication Critical patent/JPS60254347A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y04INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
    • Y04SSYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
    • Y04S40/00Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
    • Y04S40/20Information technology specific aspects, e.g. CAD, simulation, modelling, system security

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野および従来の技術)本発明は、しば
しばファームウェアとして知られている様に、コンピュ
ータ中の内部回路に置かれたコンピュータコードを保護
するための装置および方法に関するものである。本発明
は、所与の符号化語とあらかじめ決められた回路マトリ
クスに従って回路ファームウェアからデータバス上に置
かれたデータを1スクランブル]すること、あるいは変
更することによってこのことを達成している。
ファームウェア中に置かれたデータの認可されないコピ
ーは、コンピュータ産業の保全に脅威を与えている。典
型的なものとして、ファームウェア中に置かれたデータ
の量は大きくないが、特定の機械の運用(例えば、コン
ピュータブートストラップ、ビデオゲーム、コンピュー
タO8など)にとってはしばしば非常に重大なものにな
る。
工場でプログラムされた読取り専用メモリ(ROM)あ
るいは現場でプログラム可能な読取り専用メモリ(PR
OM>に対し、蓄積データはシステムの運用について重
大な情報を示すことになろう。この様なデータを保護す
る1つのアプローチは、ROMメモリアレイ中のに溶断
連結線を具え、データが一度プログラムされると簡単に
外部からアクセスできぬ様にすることである。例えば、
アール バーフナ−等(R,Birkner、 et 
al、 )の米国特許第4’、124,899号[プロ
グラムできる読取り専用メモリ(” p rogram
mable Read −0nly Memory ”
 ) Jを見られたい。このアブローヂは、一度可溶断
片(フユーズ)が開放されると、PROMは変更されな
くなり、診断ルーチンの使用は従って禁じらてしまうと
いう不利益を有している。
コピー保護機構は、4つの広いカテゴリーに分りられる
。すなわち、ハードウェア依存のアブロー千、負荷フォ
ーマット変更、その実行に応じて環境をヂエツクするソ
フトウェア、および「フィルタリング」によって実行す
るソフトウェアの4つである。各々の場合、保護機構は
ソフトウェアとハードウェアの相互作用を含んでいる。
ソフトウェアが使用されているところでは、マイクロプ
ロセッサ−が通常含まれており、従ってコピーの都合の
良い技術は、命令と、マイクロプロセッサに供給された
デー々を横取いすることである。本発明はデータの横取
りを更に回動にしでいる。ソフトウェアの保護に用いら
れている種々のアブローヂは、ジエーコマンダー等(J
 、Cornrnander。
et al、 )の[貴方のソフトウェアは如何に完全
であるか? (1−low 5afe is Yot+
r 3oftware?)Jマイクロコンピユーテイン
グ(M icrocomputing ) 1982年
 77ip60で議論されている。
データ保護回路ができる限り少ない部品で構成されるの
は望ましいことである。このことは2つの利点を与える
。まず第1に、データ保護回路の目的で用いられている
特定の集積回路チップの面積の総量が最小になることで
ある。第2に、特定のデータ通路中の各コンポーネント
(よ、データ通路中でデバイスの特性によって決められ
た特定の川だUデータの伝ばんを遅くするので、f−タ
通路中のより少ないコンポーネントはより早い回路動作
となる。
本発明の目的は、これ等のデータ線路−にに運ばれスデ
ータを保護Jるために、あらかじめ決められたある様式
C東梢回路間を通過η−るデータ線路上に運ばれるデー
タを符号化することである。更に本発明の目的は、この
ことを最小の数のコンボーネン1−で実行Jることであ
る。
(問題点を解決りるための手段〉 符号化排仙的論理和ゲートが各データ伝送導線に対して
具えられている。各符号化排伯的論理和ゲートの1個の
入力導線は、アクセス可能なデータ線路上に伝送される
データを受・イハするために対応する入りデータ伝送導
線に接続されている。各符号化1〕1他的論理和ゲート
の仙の入ツノ導線は、コードマトリクスを経由してラン
ダム間ピッ1〜2進数のソースに接続されている。各M
 (l!!的論理和ゲートによって与えられる出力信号
は、1個のアクセス可能なデータ線路に印加されている
符号化されたデータヒツトである。
符号化されたデータは符号化回路に類似した回路によっ
て復号化される。復号化回路において、復号化排他的論
理和ゲートが各データ伝送導線に対して具えられている
。各復号化排他的論理和ゲートの入力導線は、入り?:
J″;′J化データ伝送導線に接続されている。復号化
1)1仙的論理和ゲートへの他の入力導線は、符号化回
路に具えられているコードマトリクスに類似した」−ド
アトリクスを経由して、ランダム間ピッ1−2進数のソ
ースに接続されている。ここでMピッ1−2進数は符号
化回路に与えられた同じMlでット2進数ぐある。復号
化排他的論理和ゲートの出力導線は、復帰化されてデー
タを運ぶ伝送線路である。
符号化マトリクスとランダム間ピッ(−詔は同じ旬)弓
化回路J3よび復号化回路に存在しており、従ってIJ
I他的論理和ゲー1〜の出力導線上のデータは適切に復
号化されよう。
しかしながら、集積回路の間を通過するバス線路上のデ
ータは、それは論理プローブの使用【Jよって横取りさ
れるのだが、符号化された形をしており、それによつ−
(ファームウ■ア中に蓄積されたデータを不法に決める
のに必要とされている労力を実質的に大きくしている。
(実施例) 第1図は、本発明の一実施例に従って構成されたブロッ
ク図を示している。読取り専用メモリ(ROM>1はア
ドレスバス10とROMイネーブル回路4を紅白して中
央制御装置(CPtJ)5によっC制御されている。ア
ドレスバス10は111−1から10−kまでの複数の
データ線路を含んでいる。ここでkは選択された整数で
ある。CPLI5がROM1に含まれているメモリ語を
(アドレスバス1゜を経由して)アドレスすると、RO
Mイネーブル回路4は論理″1イネーブル信号をROM
1に与える。す゛るとROMIは選択されたデータ詔(
ずなわら、アドレスバス10上でCPU5によって与え
られたアドレスに対応するところのROMI内に蓄積さ
れたデータ詔)をデータバス7に置く。回路2はデータ
バス7に置かれたデータを符号化し、バス8上に符号化
されたデータを置く。回路3はデータバス8上に置かれ
たデータを復号化し、復号化されたデータをデータバス
9上に置く。望ましい実施態様では、データバス8のみ
が集積回路6および12の間を通過し、従って集積回路
6あるいは12を外づことなしにアクセスされる。
第2a図および第2b図は、第1図の符号器2と復号器
3それぞれの一実施例の略図である。入力データは、デ
ータバス7を経由して第2a図の回路2に印加される。
これは第2a図の実施態様において、7−1から7−N
までの複数のNデータ導線を含み、Nビットデータ語を
受信できる。排仙的論理和ゲートバンク23は、23−
1から23−Nまでの複数のN排他的論理和ゲートを含
み、各々は7−1から7−Nまでのデータ導線の1個に
独自に関係付けられている。データバス7中の7−1か
ら7−Nまでの各データ導線は、排他的論理和ゲートバ
ンク23中の23−1から23−Nまでの対応する排他
的論理和ゲートの1個の入力導線と接続されている。2
3−1から23−Nまでの排他的論理和ゲートの他の入
力導線は符号化マトリクス22によってMビットカウン
ター21に接続されている。第2a図に示されているM
ビットカウンター21は、第1図のROMイネーブル回
路4の出力導線11に接続されている。Mビットカウン
ター21はMビット符号化/復号化語を与えるl〔めの
手段である。アンドゲート24は、Mビットカウンター
21がいわゆる「疑似ランダム」カウンターとして機能
する様に具えられている。
カウンターは技術的に良く知られている。カウンターは
論理Mビット数を予想できかつ良く知られた様式で与え
る。Mビット疑似ランダムカウンターは予想できる様式
でMビット数を与える。いかに特定の疑似ランダムカウ
ンターが振るまうかは、能力はあるが権限の無い、ラフ
1〜ウエアをコピーする者の確認を困難にする。ゲート
24は、カウンター21によってゲート24に印加され
た受信入力信号に応じてゲート24の出力導線に接続さ
れたピットを変更する。ゲート24はカウンター21が
動作している様式を変更するから、カウンター21とゲ
ート24の組み合せは疑似ランダムカウンターとして引
用されている。もし如何に疑似ランダムカウンターが設
Mされているかを知っているなら、疑似ランダムカウン
ターは予想通り振るまう。アンドゲート24の入力およ
び出力導線の特定の接続は例としてのみ与えられている
。入力導線と出力1mの他の接続および他のタイプの論
理ゲートの使用は、2人力導線あるいは1出力導線以外
の論理ゲートを含んでいるのだが、本発明の教示によっ
てこの技術に熟練した人にとっては明らかなものになろ
う。ゲート24は、カウンター21によってゲート24
に印130された受信入力信号に応じて、ゲート24の
出力導線に接続されたビットを変更する。
重要なことは、Mビット符号化器が第1図の符号器回路
2で使われており、第1図の復号器回路3で使われてい
るMビット復号語は、バス8−Lに置かれた符号化され
たデータが適切に復号化されかつバス9上に設定される
ために、同じでなければならぬことである。第3a図と
第3b図はそれぞれ第2a図および第2b図中のカウン
ター21.31の実施態様の論理図である。一般にカウ
ンターの動作、特にこのカウンターの動作は従前の技術
でよく知られている。第3a図と第3b図中に示された
カウンターは一例としてのみ与えられいる。他のタイプ
のカウンターの使用は、本発明の教示の下でこの技術に
通常熟達した人々にとって明白なものとなろう。計数さ
れるべき入力信号は、それぞれカウンター21.31の
人力導線211.311に置かれている。所望の任意の
他の信号はカウンター21と31を計数させるのに役立
つことは理解されているが、示された実施態様では、双
方の入力導線211.311は第1図のROMイネーブ
ル導線11に接続されている。210−1から210−
Mまで、および310−1から310−Mまでの出力導
線は、それぞれ212〜1から212−Mまで、および
312−1から312−Mまでの出力信号を運んでいる
。出力信号212−1および312−1はカウンターの
最下位ピッl−(+−8B)である。
しかし、重要なことは、21−1から21−Mまで、お
よび31−1から37−MまでのそれぞれのD型フリッ
プ70ツブのすべてのクリア入力導線に接続されている
入力導線213と313を含んでいることである。導線
213と313は、212−1から212−Mまで、お
よび312−1から312−までの出力導線によって運
ばれたMピッ1−語が同じであることを保証するために
具えられている。周期的に、論理1人力信号が入力環@
 213と313に同時に印加され、従って21−1か
ら21−Mまで、および31−1から31−Mまでの7
リツプ70ツブを論理O出力状態に設定している。入力
導線213と313に印加された入力信号は多数のソー
スによって与えられている。例えば、アドレスバス10
に印加された特定のアドレスは、ROM1の(示されて
いないが)内部回路から導出された入力導線213ど3
13にパルスをトリガーする。代案として、(示されて
いない)外部リセットクロックが使用され、これは、も
しりけットクロックの周期がカウンター21.31の動
作速度よりもずっとゆっくりしているなら、論理1パル
スを周期的に供給する。第3a図と第3b図は第2a図
と第2b図中のゲート24と34の特定の接続を示して
いる。第3a図と第3b図に示されている例では、ゲー
ト24ど34の出力導線はそれぞれ、フリップ70ツブ
21−3と31−3の入力導線に接続されている。第3
a図および第3b図の実施態様に示されている様に、排
他的論理和ゲート201−2と301−2の出力導線は
それぞれ、フリップ70ツブ21−3と31−3への入
力導線から外されている。代案として、(第3a図の)
ゲート201−3.24の出力導線と、(第3b図の)
ゲ−l−301−2と34の出力導線は、ワイアードア
ンドの形態で一緒に接続される。ゲート24の接続がゲ
ー134の接続と同じと言う条件で、ゲート24と34
への入力導線は、それぞれ21−1から21−Mまで、
および31−1から31−Mまでの7リツプフロツプの
任意の出力導線に接続され、そしてゲート24と34の
出力導線は21−1から21−Mまで、および31−か
ら31−Mまでの任意の7リツプ70ツブの入力導線に
接続されよう。
第2a図の符号化回路2の符号化された出力信号は、こ
れはNビットの符号化されたデータ語の伝送に適してい
る8−1から8−Nまでの複数のNデータを含んでいる
データバスによって運ばれる。
第2b図において、符号化されたデータはデータバス8
を経由して復号化回路3に印加される。排他的論理和ゲ
ートバンク33は33−1から33−Nまでの複数のN
排他的論理和ゲートを含んでおり、各々はそれぞれ8−
1から8−Nまでのデータ導線の1つと独自に関係付け
られている。データバス8中の8−1から8−Nまでの
各データ導線は、排伯的論理和ゲートバンク33中の3
3−1から33−Nまでの排他的論理和ゲートに対応す
る1つの入力導線と接続されている。33−1から33
−Nまでの排他的論理和ゲートの他の入力導線は、符号
化マトリクス32によってMピットカウンター31に接
続されている。
Mビットカウンター31はMビット復号化涌を発4トす
るための手段である。Mビットカウンター31はMピッ
1−カウンター21と同じ様式で構成されている。復号
化された出力信号は、33−1から33−Nまでの排他
的論理和ゲートの出力導線に与えられている。回路3の
復号化された出力語は、Nビットの復号化されたデータ
語の伝送に適した9−1から9−Nまでの複数のNデー
タ伝送導線を含んでいるところのデータバス9によって
運ばれている。9−1から9−Nまでの各伝送導線は3
3−1から33−Nまでの排他的論理和ゲートの出力導
線の1つに独自に接続されている。
Mビットカウンター22によって与えられたMビット語
はカウンターによって与えられる必要は無い。第4図と
第5a図、第5b図は、本発明の一実施態様を示してお
り、これは第58図中のMビット符号死語および第5b
図中のMピッ1ル復号化語として、第5a図、第5b図
中のアドレスバス10の上の論理語を使用している゛。
復号化マトリクス32によって与えられたMビット論理
語が、符号化マトリクス22に与えられたMビット論理
zhと同じであることを保証するのに種々の手段が使わ
れていると言う条件では、符号化マトリクス22に接続
されているMビット珀は任意のMビット語であろう。
同様に、符号化マトリクス22は、Mビットカウンター
21に含まれているMビット語中の任意の語を有する排
他的論理和ゲートバンク23中の任意の排他的論理和ゲ
ートの第2人力導線を接続しよう。
それは、符号化マトリクス22中の接続が、第28図中
の符号化回路2と第2b図中の復号化回路3中の符号化
マトリクス32と丁度同じであると言う条件の下でそう
である。もしNがデータ線路の数であり(ここでNは正
の整数である)、MがMビット符号化/11号化語中の
ビットの数であるとすると、可能な符号化マトリクスの
数はMl/Nlとなる。
選択されIこJJI他的論的論理和ゲート2の入力)4
線は接続されぬままにされるか、あるいは2つの第2人
力導線はMピッj〜符号化/復号化語の1つのヒツトに
接続されよう。この場合、NはMより少なく、前の式は
適用されない。
Nビットデータ語の特定のビットについての符号化/復
号化回路の効果は、第1表に示されている。例えば、も
しデータビットが論理Oであり、また例えば、Nビット
復号死語と符号化マトリクスによって与えられたコード
ビットが論理Oであるなら、データ導線8−x(ここで
Xは1からNの間の正の整数である)上の出力信号は、
符号化されたデータ出力バス8中の特定のビットに対し
て論理Oである。第2b図の復号回路3中のMビット復
号死語は同じMビット語であり、復号化回路3中の符号
化マトリクス32は排他的論理和ゲートバンク33の第
2の入力導線に接続されなくてはならず、接続に対応す
るMカウンター31によって与えられた論理語のビット
は符号化回路2中の符号化マトリクス22によって作ら
れる。従って、第1表の復号器3によって与えられたコ
ードピットは第1表の符号器2によって与えられたコー
ドピットと同じで、この例では論理0となっている。こ
の特定のビットに対する復号化回路3中の排他的論理和
ゲートは、入カバスフ上の入力ビツトと同様に、符号化
されたデータバス8上の論理0と出力信号Oを与えるた
めの論理0コードピツトとを組合せる。代案として、も
しデータ入カバスフによって与えられたデータビットが
論理1であり、Mピットカウンター21と符号化マトリ
クス22によって与えられたコードピットがまた論理1
であるなら、その特定ビットに対する符号化されたデー
タバス8上の出力信号は論理0である。符号化されたデ
ータバス8上のその論理0ビツトは、復号死語によって
与えられた論理1復号化ビットと回路3中で組合される
。従って、出力信号は入力データビッ1−と同様に、論
理1であろう。第1表はデータビットとコードピットの
任意の組み合せに対してデータバス9上の出力信号がデ
ータバス7上の入力データビットと正確に同じであるこ
とを示している。
なお、第2表は、排他的論理和ゲートの真理値表を示し
ている。
符号化マトリクス22はいくつかのやり方で構成されよ
う。この発明が集積回路として実現された際に使われた
1つの方法は、Mビットカウンター21に含まれたMビ
ット語と、排他的論理和ゲートバンク23中の排他的論
理和ゲートとの間の接続の所望の組み合せに対応する集
積回路の金属導体パターンを構成することである。これ
はマトリクス構成の有効な方法である。多くのROMは
ROMチップ上の導体を構成するのに用いられた金属化
マスクを変更することによってプログラムされている。
マトリクスはこのステップの間に簡単に実現される。符
号化マトリクス22と32を構成する他の方法は、第6
a図と第6b図に示されている。マトリクスの導体は第
6a図に示されている様に四角なりロスハツチパターン
に設計される。ここでNはデータバス7.8.9の導線
の数であり、MはMビットカウンター22と32中のビ
ットの数である。
もしXビット(ここでXはMビット語の1とMの間の数
である)が排他的論理和ゲート23−Z(ここで7は1
とNの間の数である)に接続されると酸化絶縁体42中
で正孔が作られ、導体43−7と41−7がそれによっ
て接続される。もしMビット語のビットXと排仙的論理
和ゲート7が接続されないと、2つの導体の間の酸化絶
縁体42はそのままに残される。これらの例は、本発明
の符号化マトリクス22の1つの特定の実施態様である
。本発明は決してこれらの例あるいは集積回路に用いら
れたものに限られない。
本明細用は、本発明の特定の実tM態様を例示している
とは言え、本発明の範囲を限るものと解釈してはならな
い。本発明の多くの具体化は、この明細書に従ってこの
技術の通常の熟達者にとって明らかなものとなろう。
第1表 データビット ビット 出力符号器/入力復号器 ビッ
ト 出力復号器o o 、o o−。
0 1 .1 1 0 1 0 1 0 1 1 1 0 1.1 第2表 0 1 1 1 0 1 1 1 0 (要約) 平行データバス線路(8)によって伝送される符号化お
よび復号化データに対する手段が提供されている。符号
化排他的論理和ゲート(23−1から23−Nまで)が
各データ伝送導線に対して具えられている。各符号化排
他的論理和ゲート(23−1から23−Nまで)の入力
導線が、アゲセス可能なデータ線路(8−1から8−N
まで)に伝送すべきデータを受信覆るために対応する入
りデータ伝送導線に接続されている。各符号化排他的論
理和グー1〜(23−1から23−Nまで)の他の入力
導線が符号化マトリクス(22)を経由してランダム間
ビット2進数のソース(21)に接続されている。各排
他的論理和ゲートによって与えられた出力信号は、アク
セス可能なデータ線路(8−1から8=Nまで)の1つ
に印加されているどころの符号化されたデータヒツトで
ある。
符号化されたデータは符号化回路に類似の回路によって
復号化される。復号化回路において、復号化排他的論理
和ゲート(33−1から33−Nまで)が各データ伝送
導線に対して具えられている。各復号化排仙的論理和ゲ
ート(33−1から33−Nまで)の1つの入力導線は
入り符号化データ伝送導線(8−1から8−Nまで)に
接続されている。復号化排他的論理和ゲート(33−1
から33−Nまで)への他の入力導線は、符号化回路(
22)に具えられた符号化マトリクスに類似している符
号化ン1ヘリクス(32)を経由してランダム間ビット
2進数のソース(31)に接続されている。ここで与え
られたMビット2進数は、符号化回路(22)中に与え
られた同じMビット2進数である。復号化排他的論理和
ゲート(33−1から33−Nまで)の出力導線は、復
号化されたデータ(9−1から9−Nまで)を運ぶ伝送
線路である。
集積回路の間を通過し、従って論理ブ[1−ブの使用に
よって横取りされたところのバス線路上のデータは、符
号化された形をしており、それによりファームウェアに
蓄積されたデータを不法に決めるのに必要とされる労ツ
ノを実質的に大きくする。
【図面の簡単な説明】
第1図は本発明の一実施例のブロック図を、第2a図お
よび第2b図は、第1図の符号器および復号器の一実施
例を、 第3a図および第31)図は、第2a図おJ、び第2b
図のカウンター21ど31の一実施例を示す論理図を、
第1図は、読取り専用メモリからデータをアクはスする
マイクロプロセッサのブロック図を、第jIa図、t3
J:び第5b図は、第3図の符号器と復号器の実施例そ
れぞれの略図を、 第6a図は、発明の詳細な説明するマトリクスを実現す
る一つの方法である集積回路の電気導体パターンを、 第6b図は、第6a図に示された集積回路の電気導体パ
ターンの断面図を示している。 1・・・ROM 2・・・符号器(あるいは符号化回路)3・・・復号器
(あるいは復号化回路)4・・・ROMイネーブル回路 5・・・中央制御装置 6.12・・・集積回路7.8
.9・・・データバス 10・・・アドレスバス11・
・・出力導線(あるいはROMイネーブル導線)21.
31・・・(Mビット)カウンター22.32・・・符
号化(復号化)マトリクス23.33・・・排他的論理
和ゲートバンク24.34・・・アンドゲート 201.301・・・排他的論理和グー1〜202.3
02・・・ゲート 210.310・・・出力導線 211.311・・・入力導線 212.312・・・出力信号 213 、313・・・ 入 ツノ 導 線41.43
・・・導体 42・・・酸化絶縁体FIG、 1 124 FIG、2a FIG、2b FIG、 5a FIG、 5b FIG、6a

Claims (1)

  1. 【特許請求の範囲】 1、データピッ1〜の符号化および復号化の方法におい
    て、 符号化排他的論理和ゲート中で、上記のデータピッ1〜
    を符号化ピッ1〜と組合わせることにより上記のデータ
    ビットを符号化し、それにより」−記の排他的論理和ゲ
    ートの出力導線上に符号化されたデータビットを与え、
    データ伝送導線上に上記の符号化されたデータビットを
    伝送し、 復号化排他的論理和ゲート中で、上記の符号化されたデ
    ータビットを復号化ビットと組合わせることにより上記
    の符号化されたデータビットを復号化し、それにより上
    記の復号化排他的論理和ゲートの出力導線上に復号化さ
    れたデータビットを与え、 ここですべての時間において同等であると言う条件の下
    で上記の符号化ビットと上記の復号化ビットが任意の論
    理状態であることを特徴とするデータピッ1〜の符号化
    および復号化方法。 2、 Nが任意の正の整数であるNデータ入力線路を具
    えた入力データパスを有する符号化/復号化回路におい
    て、上記の回路が、 Mが任意の正の整数であるMビット符号化/復号化語を
    与える手段と、 N個の符号化排他的論理和ゲートのバンクであって、第
    1の入力導線を有する上記の符号化排他的論理和ゲート
    の各々が、上記の入力データパスの1個の線路に独自に
    接続され、第2の入ツノ導線が上記のMビット符号化/
    復号化語の1つのビットに独自に接続され、かつ出力導
    線を有し、 符号化されたデータ伝送バスがN個の符号化されたデー
    タ伝送線路を具え、上記の符号化されたデータ線路の各
    々が、排他的論理和ゲートの上記の第1バンクの1つの
    排他的論理和ゲートの出力導線に独自に接続され、N個
    の復号化排他的論理和ゲートのバンクであって、第1の
    入力導線を有する上記の復号化排他的論理和ゲート各々
    が上記の符号化されたデータ伝送線路の1つに独自に接
    続され、第2の入力導線が上記のMビット符号化/復号
    化語の上記のデータビットの1つに独自に接続され、こ
    こで上記の、復号化排他的論理和ゲートの各々の上記の
    第2の入力導線が、上記の符号化排他的論理和ゲートの
    その関連した1つの上記の第2の入力導線として上記の
    Mビット論理語の同じビットに接続され、かつ上記の復
    号化排他的論理和ゲートの各々が出力導線を有し、 出力データパスがN個の復号化されたデータ出力線路を
    具え、上記の復号化された出力線路の各々が、上記の第
    2の排他的論理和ゲートバンクの上記の出力導線の1つ
    に独自に接続されていることを特徴とする符号化/復号
    化回路。 3、 Mビット符号化/復号化詔を与える上記の手段が
    Mビットカウンターであることを更に特徴とする特許請
    求範囲第2項記載の符号化/復号化回路。 4、 Mビット符号化/復号化詔を与える上記の手段が
    Mビット疑似ランダムカウンターであることを更に特徴
    とする特許請求範囲第2項記載の符号化/復号化回路。 5、 Mビット符号化/復号化語を与える上記の手段が
    、論理ゲートを有するMビット疑似ランダムカウンター
    であり、この論理ゲートは上記の疑似ランダムカウンタ
    ーの選択されたビットの1個あるいはそれ以上の出力導
    線と接続された少なくとも1つの入力導線を有し、かつ
    上記の疑似ランダムカウンターのビットの少くとも1つ
    の入力導線に接続された少くとも1つの出力導線を有す
    ることを更に特徴とする特許請求範囲第2項記載の符号
    化/復号化回路。 6、上記のカウンターが、上記のカウンターが計数する
    入力信号として、マイクロプロセッサのチップイネーブ
    ル導線を使用することを更に特徴とづる特許請求範囲第
    3項記載の符号化/復号化回路。 1、上記の疑似ランダムカウンターが、上記のカウンタ
    ーが計数する入力信号として、マイクロプロセッサのチ
    ップイネーブル導線を使用することを更に特徴とする特
    許請求範囲第4項記載の符号化/復号化回路。 8、上記の疑似ランダムカウンターが、上記のカウンタ
    ーが計数する入力信号として、マイクロプロセッサのチ
    ップイネーブル導線を使用することを更に特徴とする特
    許請求範囲第5項記載の符号化/復号化回路。 9、Nが任意の正の整数であるNデータ入力線路を具え
    た入力データパスを有する符号化/復号化回路において
    、上記の回路が Mが任意の正の整数であるMビット符号化涌を与える手
    段と、 Mビット復号化語を与える手段と、 N個の符号化排他的論理和ゲートのバンクであって、第
    1の入力導線を有する上記の符号化排他的論理和ゲート
    の各々が、上記の入力データパスの1つの線路に独自に
    接続され、第2の入力導線が上記のMビット符号化語の
    1ビツトに独自に接続され、かつ出力導線を有し、 N個の符号化されたデータ伝送線路を具える符号化され
    たデータ伝送パスであって、上記の符号化されたデータ
    線路の各々は排他的論理和ゲートの上記の第1のバンク
    1の1つの排他的論理和ゲートの出力導線に独自に接続
    され、 N個の復号化排他的論唾和ゲートのバンクであって、第
    1の入力導線を有する上記の復号化排他的論理和ゲート
    の各々が、上記の符号化されたデータ伝送線路の1つに
    独自に接続され、第2の入力導線は上記のMビット復号
    語の上記のデータビットの1つに独自に接続され、ここ
    で上記の復号化排他的論理和ゲ−トの各々の上記の第2
    の入力導線が、上記の符号化排他的論理和ゲートのその
    関連した1つの上記の第2の入力導線として、上記のM
    ビット論理語の同じビットに接続され、かつ上記の復号
    化排他的論理和ゲートの各々が出力導線を有し、 出力データパスがN個の復号化されたデータ出力線路を
    具え、上記の復号化された出力線路の各々が、上記の第
    2の排他的論理和ゲートバンクの上記の出力導線の1つ
    に独自に接続されていることを特徴とづる同号化/復号
    化回路。 10、Mビット論哩飴を生成する上記の手段が、上記の
    復号化および符号化排他的論理和ゲートバンクの各々に
    対づるMビットカウンターで与えられ、ここで上記のカ
    ウンターは構成されたカウンターの双方に共通な論理入
    力導線によって起動されており、 ここで上記の第1 J3よび第2の排他的論理和ゲート
    バンクに対する上記のMピッ゛トカウンターに含まれる
    Mビット論理詰が同じNビット論理語に初期値化される
    ことを保証する手段を具えていることを更に特徴とする
    特許請求範囲第9項記載の符号化/復号化回路。 11、Mビット符号化語を具える」−記の手段と、Mビ
    ット復号化語を具よる上記の手段がMビット疑似ランダ
    ムカウンターであることを史に特徴とする特許請求範囲
    第9項記載の符号化/復号化回路。 12、Mビット符号化語を具える上納の手段と、Mビッ
    ト復号化冊を具える上記の手段が論理ゲートを有するM
    ビット疑似ランダムカウンターであり、この論理ゲート
    は上記の疑似ランダムカウンターの選択されたビットの
    少くとも1つの出力smに接続された少くとも1つの人
    力導線を有し、かつ上記の疑似ランダムカウンターのビ
    ットの1つあるいはそれ以上の入力導線に接続されてい
    ることを更に特徴とする特許請求範囲第9項記載の符号
    化/復号化回路。 13、上記のカウンターが、上記のカウンターが計数す
    る入力信号として、マイクロプロセッサのチップイネー
    ブル導線を使用することを更に特徴とする特許請求範囲
    第3項の符号化/復号化回路。 14、上記の疑似ランダムカウンターが、上記のカウン
    ターが計数する入力信号として、マイクロプロセッサの
    チップイネーブル導線を使用することを更に特徴とする
    特許請求範囲第11項の符号化/復号化回路。 15、上記の疑似ランダムカウンターが、上記のカウン
    ターが計数する入力信号として、マイクロプロセッサの
    チップイネーブル導線を使用することを更に特徴とする
    特許請求範囲第12項の符号化/復号化回路。
JP60109208A 1984-05-22 1985-05-21 Rom保護機構 Pending JPS60254347A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US06/613,115 US4698617A (en) 1984-05-22 1984-05-22 ROM Protection scheme
US613115 1984-05-22

Publications (1)

Publication Number Publication Date
JPS60254347A true JPS60254347A (ja) 1985-12-16

Family

ID=24455923

Family Applications (2)

Application Number Title Priority Date Filing Date
JP60109208A Pending JPS60254347A (ja) 1984-05-22 1985-05-21 Rom保護機構
JP006035U Pending JPH08249U (ja) 1984-05-22 1995-06-16 符号化/復号化回路

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP006035U Pending JPH08249U (ja) 1984-05-22 1995-06-16 符号化/復号化回路

Country Status (5)

Country Link
US (1) US4698617A (ja)
EP (1) EP0162707A3 (ja)
JP (2) JPS60254347A (ja)
CA (1) CA1234920A (ja)
DE (1) DE162707T1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS53109931U (ja) * 1977-02-09 1978-09-02
US4937861A (en) * 1988-08-03 1990-06-26 Kelly Services, Inc. Computer software encryption apparatus
US5007082A (en) * 1988-08-03 1991-04-09 Kelly Services, Inc. Computer software encryption apparatus
US5095525A (en) * 1989-06-26 1992-03-10 Rockwell International Corporation Memory transformation apparatus and method
JP2672861B2 (ja) * 1989-07-10 1997-11-05 アルプス電気株式会社 駆動制御回路
IT1234909B (it) * 1989-09-11 1992-06-02 Farina Attilio Dispositivo di telecomando per ricevitore di televisione atto a cifrare in modo esclusivo i codici di comando e corrispondente circuito decifratore
DE4120398A1 (de) * 1991-06-20 1993-01-07 Standard Elektrik Lorenz Ag Datenverarbeitungsanlage
GB9121591D0 (en) * 1991-10-11 1991-11-27 Pilkington Micro Electronics Data security arrangement for semiconductor programmable logic devices
GB2260431B (en) * 1991-10-11 1995-06-14 Pilkington Micro Electronics Data security arrangements for semiconductor programmable logic devices
JPH06243046A (ja) * 1993-02-19 1994-09-02 Sansei Denshi Japan Kk 情報保護方法及び情報メディア
US5349249A (en) * 1993-04-07 1994-09-20 Xilinx, Inc. Programmable logic device having security elements located amongst configuration bit location to prevent unauthorized reading
US5894515A (en) * 1995-08-14 1999-04-13 United Microelectronics Corporation Random access memory device having inconsistent write-in and read-out data
US5937063A (en) * 1996-09-30 1999-08-10 Intel Corporation Secure boot
GB2321728B (en) * 1997-01-30 2001-12-19 Motorola Inc Apparatus and method for accessing secured data stored in a portable data carrier
US6711683B1 (en) * 1998-05-29 2004-03-23 Texas Instruments Incorporated Compresses video decompression system with encryption of compressed data stored in video buffer
US6678833B1 (en) 2000-06-30 2004-01-13 Intel Corporation Protection of boot block data and accurate reporting of boot block contents
WO2002077878A1 (en) * 2001-03-26 2002-10-03 Galois Connections Inc Crypto-pointers for secure data storage
DE10124139A1 (de) * 2001-05-17 2002-11-21 Philips Corp Intellectual Pty Verfahren und Vorrichtung zur Sicherung der Datenübertragung zwischen einem Zentralprozessor und einem Speicher
US20040064457A1 (en) * 2002-09-27 2004-04-01 Zimmer Vincent J. Mechanism for providing both a secure and attested boot
JP2004361986A (ja) * 2003-04-08 2004-12-24 Sharp Corp スクランブル回路
KR101497456B1 (ko) * 2008-04-29 2015-03-02 삼성전자주식회사 전기퓨즈 회로를 갖는 보안 회로 및 보안 키 프로그램 방법

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4176247A (en) * 1973-10-10 1979-11-27 Sperry Rand Corporation Signal scrambler-unscrambler for binary coded transmission system
US3920894A (en) * 1974-03-11 1975-11-18 Bell Telephone Labor Inc Pseudo-random parallel word generator
US4202051A (en) * 1977-10-03 1980-05-06 Wisconsin Alumni Research Foundation Digital data enciphering and deciphering circuit and method
US4278837A (en) * 1977-10-31 1981-07-14 Best Robert M Crypto microprocessor for executing enciphered programs
JPS5567855A (en) * 1978-11-14 1980-05-22 Mitsubishi Electric Corp Data processor
JPS5843743B2 (ja) * 1979-12-25 1983-09-28 富士通株式会社 暗号化方式
DE3010969A1 (de) * 1980-03-21 1981-10-01 Siemens AG, 1000 Berlin und 8000 München Pcm-system mit sendeseitigem verwuerfler und empfangsseitigem entwuerfler
US4475208A (en) * 1982-01-18 1984-10-02 Ricketts James A Wired spread spectrum data communication system
JPS592071A (ja) * 1982-06-28 1984-01-07 キヤノン株式会社 デ−タ変換回路
US4555591A (en) * 1982-09-07 1985-11-26 At&T Bell Laboratories Integrated circuit devices for secure data encryption
EP0114522A3 (en) * 1982-12-27 1986-12-30 Synertek Inc. Rom protection device
US4531022A (en) * 1983-01-13 1985-07-23 International Standard Electric Corporation Device for generating binary digit pseudo-random sequences

Also Published As

Publication number Publication date
EP0162707A3 (en) 1987-10-07
CA1234920A (en) 1988-04-05
EP0162707A2 (en) 1985-11-27
DE162707T1 (de) 1986-09-04
US4698617A (en) 1987-10-06
JPH08249U (ja) 1996-02-06

Similar Documents

Publication Publication Date Title
JPS60254347A (ja) Rom保護機構
EP0455064B1 (en) Data encryption device and method for data encryption
US4465901A (en) Crypto microprocessor that executes enciphered programs
US4278837A (en) Crypto microprocessor for executing enciphered programs
US4168396A (en) Microprocessor for executing enciphered programs
US4120030A (en) Computer software security system
US5206905A (en) Password protected device using incorrect passwords as seed values for pseudo-random number generator for outputting random data to thwart unauthorized accesses
US4598170A (en) Secure microprocessor
US5802541A (en) Method and apparatus in a data processing system for using chip selects to perform a memory management function
US20070172053A1 (en) Method and system for microprocessor data security
CN108205502A (zh) 轻量可信任务
WO1983004356A1 (en) Software protection methods and apparatus
WO1981002351A1 (en) Digital computer
JP2002328845A (ja) 半導体集積回路及びicカードのセキュリティー保護方法
JPH08123680A (ja) データのデジタル式スクランブル化方法と、そのプログラマブル回路への使用
EP0008033A1 (en) Microprocessor for executing enciphered programs
US20050278551A1 (en) Method for system level protection of field programmable logic devices
US11017128B2 (en) Data security using bit transposition during memory accesses
US6525557B1 (en) Method for watermarking a register-based programmable logic device core
US20060050876A1 (en) Integrated circuit with coded security signal, security process, corresponding security device and signal coded using a dynamic key
US10719387B2 (en) Memory interface with tamper-evident features to enhance software security
JPS59501128A (ja) デジタル情報コ−ド化方法および装置
CA2130239A1 (en) Method for protecting netlists provided for simulation
JPH03204053A (ja) 読出し専用メモリ
US5153921A (en) Microcomputer