JP4041491B2 - 半導体集積回路装置,データ記憶検証装置およびデータ記憶検証方法 - Google Patents
半導体集積回路装置,データ記憶検証装置およびデータ記憶検証方法 Download PDFInfo
- Publication number
- JP4041491B2 JP4041491B2 JP2004513943A JP2004513943A JP4041491B2 JP 4041491 B2 JP4041491 B2 JP 4041491B2 JP 2004513943 A JP2004513943 A JP 2004513943A JP 2004513943 A JP2004513943 A JP 2004513943A JP 4041491 B2 JP4041491 B2 JP 4041491B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- data
- stored
- integrated circuit
- semiconductor integrated
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/572—Secure firmware programming, e.g. of basic input output system [BIOS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/51—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Description
(実施の形態1)
図1は、本発明の実施の形態1に係る半導体集積回路装置を示す図であり、暗号化された書き換えプログラムをダウンロードする例を示す。
制御用マイコン105の制御にしたがい、暗号化されていないデータを書き換え可能なRAM108の外部読出し可能領域103に入力する(ステップS201)。次に、外部読出し可能領域103に入力したデータが正しいかを半導体集積回路109外部に読み出して制御用マイコン105等でチェックする(ステップS202)。ステップS202でチェックした結果が正しい場合は、制御用マイコン105の制御にしたがいメモリ101の暗号化された書き換えプログラムを復号化回路102に入力し(ステップS203)、復号化回路102は、暗号化された書き換えプログラムを復号する(ステップS204)。次に、ステップS204で復号化された書き換えプログラムを書き換え可能なRAM108の外部読出し不可能領域104に入力する(ステップS205)。以上の処理により、第三者に漏洩したくない書き換えプログラムの機密性を保ちながら、該書き換えプログラムが正しく格納されているか否かをチェックすることができる。
本発明の実施の形態2に係る半導体集積回路装置は、第三者に漏洩したくない機密情報である書き換えプログラムの機密性を保ちながら、該書き換えプログラムが半導体集積回路内の書き換え可能なRAMに正しく格納されているかを確認するために、格納した書き換えプログラムの特定部分のみを半導体集積回路に読み出すように制御する制御回路を備えたものである。
図において、300は、暗号化された書き換えプログラムをダウンロードしてなる半導体集積回路装置であり、301は制御用マイコン、303はあらかじめ暗号化された書き換えプログラムを格納しているメモリ(第1の格納手段)である。半導体集積回路308は、暗号化された書き換えプログラムを復号化するための復号化回路(復号化手段)302と、復号化回路302で復号した書き換えプログラムを格納するための書き換え可能なRAM(第2の格納手段)304と、復号化されたプログラムの制御手順に従って動作し、コンテンツデータ307の処理を行う演算処理回路(演算処理ユニット)305と、RAM304に格納された書き換えプログラムのうち特定アドレスのみ出力するように制御する制御回路306とから構成される。制御回路306はRAM304の特定のアドレスのみを外部に読み出す機能を有する。
暗号化された書き換えプログラムを格納するメモリ303からの該書き換えプログラムを復号化回路302で復号し(ステップS401)、該復号化した書き換えプログラムをRAM304に入力する(ステップS402)。次に、制御回路306から、RAM304に格納されている書き換えプログラムの特定アドレスの読み出しを行い(ステップS403)、該特定アドレスのプログラムを半導体集積回路308外部に読み出してチェックする(ステップS404)。
これは、外部に読み出したのが特定アドレスであっても、それが正しい値であれば、書き換えプログラム全体が正しく格納されていると考えられるからである。
本発明の実施の形態3に係る半導体集積回路装置は、第三者に漏洩したくない機密情報の書き換えプログラムが半導体集積回路内の書き換え可能なRAMに正しく格納されているかを判断するために、該半導体集積回路のRAMに格納した書き換えプログラムの一部を実行するものである。
図において、500は、暗号化された書き換えプログラムをダウンロードしてなる半導体集積回路装置であって、501は制御用マイコン、503は、あらかじめ暗号化された書き換えプログラムを格納しているメモリ(第1の格納手段)である。半導体集積回路507は、暗号化された書き換えプログラムを復号化するための復号化回路(復号化手段)502と、復号化回路502で復号化された書き換えプログラムを格納するための書き換え可能なRAM(第2の格納手段)504と、復号化されたプログラムの制御手順に従って動作し、コンテンツデータ506の処理を行う演算処理回路(演算処理ユニット)505とから構成される。
メモリ503からの暗号化した書き換えプログラムを復号化回路502で復号し(ステップS601)、該復号した書き換えプログラムをRAM504に入力する(ステップS602)。次に、RAM504に格納した書き換えプログラムの一部を実行させ(ステップS603)、正しいか否かが判断されたら、半導体集積回路507外部に正しいか否かを通知する信号を出力する(ステップS604)。
本発明の実施の形態4に係る半導体集積回路装置は、第三者に漏洩したくない機密情報である書き換えプログラムが半導体集積回路内に正しく格納されているかを確認するために、半導体集積回路内のRAMに書き換えプログラムを書き込む際に、転送データを監視する転送監視回路を備え、転送されるデータ単位ごとの算術和をとって結果を保持し、チェックサムなどをとるようにしたものである。
図において、801は、暗号化された書き換えプログラムをダウンロードしてなる半導体集積回路装置であって、802はあらかじめ暗号化された書き換えプログラムが格納されているメモリ(第1の格納手段)であり、803は制御用のマイコンである。半導体集積回路810は、暗号化された書き換えプログラムを復号化するための復号化回路(復号化手段)805と、復号化回路805で復号化された書き換えプログラムを格納するためのRAM(第2の格納手段)806と、復号化されたプログラムの制御手順に従って動作し、コンテンツデータ807の処理を行う演算処理回路(演算処理ユニット)808と、復号化回路805から転送されるデータ単位ごとの算術和をとる転送監視回路(転送監視手段)809とから構成される。
以上のように構成された半導体集積回路装置801において、あらかじめ暗号化されメモリ802に格納された書き換えプログラムを、制御用マイコン803の制御のもと、復号化回路805をとおして復号しながらRAM806に格納する。この時、同時に、データ転送用のデータパスの一部である復号化回路805からRAM806への信号線を転送監視回路809が常に監視し、転送されるデータ単位ごとの算術和をとって結果を保持していく。そして、メモリ802に格納されたデータのうちあらかじめ決められたデータ量の転送が終了した時点で、転送監視回路809に保持されている算術和のデータを読み出し、制御用マイコン803において、あらかじめ計算しておいた正しく転送がおこなわれたときのデータの算術和と比較し、同じ値であれば転送が正しくおこなわれたと判断し、その後、本来実行すべき処理を行う。もし、この両者の値が異なっていれば、正しく転送がおこなわれなかったと判断し、メモリ802に入っているデータを再度転送し直すなど、しかるべき処置を施す。
本発明の実施の形態5に係る半導体集積回路装置は、第三者に漏洩したくない機密情報である書き換えプログラムが、半導体集積回路に正しく格納されているか否かを確認するために、演算処理回路のワークメモリから該演算処理回路を動作させることと、RAMに格納されたプログラムデータを演算処理回路に入力させることとを可能にし、演算処理回路にて、チェックサムなどをとるようにしたものである。
図において、901は、暗号化された書き換えプログラムをもつ半導体集積回路装置であって、902はあらかじめ暗号化された書き換えプログラムが格納されているメモリ(第1の格納手段)であり、903は制御用のマイコンである。半導体集積回路915は、暗号化された書き換えプログラムを復号化するための復号化回路(復号化手段)905と、復号化回路905で復号化された書き換えプログラムを格納するためのRAM(第2の格納手段)906と、復号化されたプログラムの制御手順に従って動作し、コンテンツデータ907の処理を行う演算処理回路(演算処理ユニット)908と、演算処理回路908のワークメモリ911と、RAM906、及びワークメモリ911のそれぞれを、演算処理回路908の命令プログラムを読み込むバス913、及びデータを入出力するバス914に接続できるように切り替える接続切り替え回路(接続切り替え手段)912とから構成されている。また、本実施の形態5において、RAM906と演算処理回路908の命令プログラムを読み込むバス913とが接続され、ワークメモリ911とデータを入出力するバス914とが接続される形態を第1の形態とし、また、RAM906とデータを入出力するバス914とが接続され、ワークメモリ911と演算処理回路908の命令プログラムを読み込むバス913とが接続される形態を第2の形態とし、接続切り替え回路912は、上記第1、及び第2の形態のいずれかの形態に切り替えるものである。通常の状態では、上記第1の形態を取るものとし、これらの構成により、演算処理回路908は、自分自身の命令プログラムを読み込むバス913とデータを読み込むバス914とは独立しているいわゆるハーバードアーキテクチュアを取ることができ、より高速にコンテンツデータ907に対するデータ処理が実行できるものである。
あらかじめ暗号化されメモリ902に格納された書き換えプログラムを制御用マイコン903の制御のもと、復号化回路905をとおして復号しながらRAM906に格納する。その後、演算処理回路908の動作を開始する。このとき演算処理回路908は、RAM906の中の書き換えプログラムに組み込まれた実行ステップに応じて動作する。
このRAM906は、図10に示すような論理的構成をとるものである。a2400、a2401、a2402は、メモリアドレスを示しており、右上がり斜線ハッチをつけたアドレスa2400で始まり、アドレスa2401で終わる空間に書き換えプログラムを格納する。また、アドレスa2401で始まり、アドレスa2402で終わる空間には、上記右上がり斜線ハッチをつけたアドレスa2400で始まりアドレスa2401で終わる空間に格納されたデータの、たとえばメモリアドレスごとなどのように、あらかじめ決められた単位ごとに対する、たとえばパリティフラグを格納するものとする。
本発明の実施の形態6に係る半導体集積回路装置は、第三者に漏洩したくない機密情報である書き換えプログラムが半導体集積回路に正しく格納されたか否かの確認を安定して行うために、RAMに格納された書き換えプログラムが正しいか否かの確認をするためのチェックプログラムを予めROMに格納して、該ROMに格納したチェックプログラムによって、上記書き換えプログラムの確認動作を行うものである。
図において、1101は暗号化された書き換えプログラムをもつ半導体集積回路装置であって、1102はあらかじめ暗号化された書き換えプログラムが格納されているメモリ(第1の格納手段)であり、半導体集積回路1116は、制御用のマイコン1103と、暗号化された書き換えプログラムを復号化するための復号化回路(復号化手段)1105と、復号化回路1105で復号化した書き換えプログラムを格納するためのRAM(第2の格納手段)1106と、復号化したプログラムの制御手順に従って動作し、コンテンツデータ1107の処理を行う演算処理回路(演算処理ユニット)1108と、演算処理回路1108のワークメモリ1111と、RAM1106、及びワークメモリ1111のそれぞれを、演算処理回路1108の命令プログラムを読み込むバス1113、及びデータを入出力するバス1114に接続できるように切り替える接続切り替え回路(接続切り替え手段)1112と、演算処理回路1108によって実行できるRAM1106に展開された書き換えプログラムが正しいか否かを判定するためのプログラム(チェックプログラム)を格納したROM1115とから構成され、ROM1115は、常に演算処理回路1108の命令プログラムを読み込むバス1113に接続される。また、接続切り替え回路1112によって切り替える第1、及び第2の形態は実施の形態5と同様なので説明を省略する。また、実施の形態5と同様、通常の状態では、上記第1の形態を取るものとする。
まず最初に、あらかじめ暗号化されメモリ1102に格納された書き換えプログラムを制御用マイコン1103の制御のもと、復号化回路1105をとおして復号しながらRAM1106に格納する。その後、演算処理回路1108の動作を開始する。この時、切り替え回路1112は、第1の形態になるよう接続されているものとする。演算処理回路1108は、RAM1106の中に展開された書き換えプログラムの実行ステップに応じて動作する。この書き換えプログラムの中に、ROM1115の中にあるデータチェック用のプログラムに制御を移すようなプログラムがあり、これを実行する。そして、演算処理回路1108の実行プログラムがROM1115に移った後、接続切り替え回路1112を第2の形態になるように切り替える。
図12は、本発明の実施の形態6に係る半導体集積回路装置のRAM1106の例を示したものである。
まず最初に、RAM1106のアドレスa2600からa2601までの部分にメモリ1102から復号化回路1105を通してデータをダウンロードする。そのあと、アドレスa2601からa2604までの領域にも、RAM1102に格納されている先に展開したアドレスa2600からa2601までのデータと全く同じデータを、これも同様に復号化しながらダウンロードする。この後、接続切り替え回路1112を切り替えてRAM1106のデータを読み出す。この読み出し時に、アドレスa2600からとアドレスa2601からとのそれぞれ等距離にあるものを順次アクセスし、得られたデータのビットごとの排他的論理和を取る。暗号が正しく解け、データパスに異常がなく、かつ、RAM1106の格納域ビットに異常がなければ、この排他的論理和の結果は、あるデータと同じデータとの排他的論理和となるため、0になる。したがって、この手順を準次繰り返し、各排他的論理和が0であることを確かめれば、メモリ1102から復号化回路1105を通してRAM1106に正しく展開できているという判断ができる。上記手順を残り領域の1/2ずつ繰り返し実行することで、RAM1106には、演算処理回路1108のプログラムが復号化されてダウンロードされ、同時に、そのデータ内容が期待どおりであることが確かめられる。
図13は、本発明の実施の形態6に係る半導体集積回路装置におけるメモリ1102の例を示したものである。
まず、RAM1106のアドレスa2600からa2601までの部分にメモリ1102から復号化回路1105を通して「データA」をダウンロードする。そのあと、上記手順にて述べたメモリ1102に格納されている今ダウンロードしたデータの反転データを暗号化したものである「データA´」を、これも同様に復号化しながらダウンロードする。この後、接続切り替え回路1112を切り替えてRAM1106のデータを読み出す。この読み出し時に、アドレスa2600からとアドレスa2601からとのそれぞれ等距離にあるものを順次アクセスし、得られたデータのビットごとの論理積を取る。暗号が正しく解け、データパスに異常がなく、かつ、RAM1106の格納域ビットに異常がなければ、この論理積の結果は、あるデータとその反転データとの論理積となるため、0になる。したがって、この手順を順次繰り返し、各論理積が0であることをたしかめれば、メモリ1102から復号化回路1105を通してRAM1106に正しく展開できているということになる。メモリ1102には、RAM1106の各手順における残りの領域の1/2ずつのデータとその反転データが暗号化されて「データB」「データB´」「データC」「データC´」などのように対になって必要な量だけ格納されており、上記手順を残り領域の1/2づつデータがなくなるまで繰り返し実行することで、RAM1106には、演算処理回路1108のプログラムが復号化されてダウンロードされ、同時に、そのデータ内容が期待どおりであることが確かめられる。
本発明の実施の形態7に係る半導体集積回路装置は、予め暗号化された書き換えプログラムをメモリに格納した半導体集積回路装置において、第三者に漏洩したくない機密情報である書き換えプログラムが正しく格納されたか否かを、該書き換えプログラムの機密性を保持しながら確認するために、上記暗号化された書き換えプログラムを復号してRAMに格納した後、該書き換えプログラムを再度暗号化し、該再度暗号化したプログラムデータと、上記予め暗号化されたプログラムデータとを比較するようにしたものである。
図において、1401は暗号化された書き換えプログラムをもつ半導体集積回路装置であり、1402はあらかじめ暗号化された書き換えプログラムが格納されているメモリ(第1の格納手段)であり、1403は制御用のマイコンである。半導体集積回路1411は、暗号化された書き換えプログラムを復号化するための復号化回路(復号化手段)1405と、復号化回路で復号された書き換えプログラムを格納するためのRAM(第2の格納手段)1406と、復号化されたプログラムの制御手順に従って動作し、コンテンツデータ1407の処理を行う演算処理回路(演算処理ユニット)1408と、上記RAM1406に転送されたデータを再度暗号化する暗号化回路(暗号化手段)1410とから構成される。
まず、あらかじめ暗号化されメモリ1402に格納された書き換えプログラムを制御用マイコン1403の制御のもと、復号化回路1405をとおして復号しながらRAM1406に格納する。そして、メモリ1402に格納されたデータのうち、あらかじめ決められたデータ量の転送が終了した時点で、今度は、制御用マイコン1403の制御のもと、今復号化してメモリ1406に格納した書き換えプログラムを読み出し、暗号化回路1410を通して再度暗号化し、該再度暗号化したプログラムデータとメモリ1402に格納されている予め暗号化したプログラムデータとを比較する。この両者のデータが一致すれば、最初にメモリ1402から読み出し、復号化回路1405にて復号化し、RAM1406に格納した書き換えプログラムが、正しいと判断できる。
本発明の実施の形態8に係る半導体集積回路装置は、RAMに格納した書き換えプログラムが正しくないと判定された場合、該書き換えプログラムの修正箇所を検出して書き換えプログラムを修正可能にしたものである。
以下、本発明の実施の形態8に係る半導体集積回路装置を、図15、図16、及び図17を用いて説明する。
まず、暗号化した書き換えプログラムを復号化回路1502で復号し(ステップS1601)、制御用マイコン1501にしたがい、復号化した書き換えプログラムをRAM1504に入力する(ステップS1602)。ステップS1602でRAM1504に入力した書き換えプログラムを暗号化回路1506で再度、暗号化し(ステップS1603)、ステップS1603で暗号化した書き換えプログラムとメモリ1503に保持している書き換えプログラムとを比較する(ステップS1604)。ステップS1604でのチェックで正しくない場合、制御用マイコン1501に従って、正しくない部分のRAMのビットを使用しないように書き換えプログラムを修正する(ステップS1605)。そして、ステップS1605で修正したプログラムを復号化し(ステップS1606)、該復号化したプログラムをRAM1504に入力する(ステップS1607)。
Claims (20)
- 半導体集積回路内の演算処理ユニットにコンテンツを処理する動作をさせるためのプログラムを、書き換え可能に格納する第2の格納手段を半導体集積回路内に有し、該第2の格納手段に格納されたプログラムに対し、上記演算処理ユニットにコンテンツを処理する動作をさせるための、書き換え用である書き換えプログラムを格納する第1の格納手段を用いて書き換えを行うようにした半導体集積回路装置において、
上記半導体集積回路内に、上記第1の格納手段から上記第2の格納手段に転送される上記書き換えプログラムの転送エラーを監視する転送監視手段を備えた、
ことを特徴とする半導体集積回路装置。 - 半導体集積回路内の演算処理ユニットにコンテンツを処理する動作をさせるためのプログラムを、書き換え可能に格納する第2の格納手段を半導体集積回路内に有し、該第2の格納手段に格納されたプログラムに対し、上記演算処理ユニットにコンテンツを処理する動作をさせるための、書き換え用である書き換えプログラムを格納する第1の格納手段を用いて書き換えを行うようにした半導体集積回路装置において、
上記書き換えプログラムは、プログラムの正誤の判定を行うチェックプログラムが含まれたものであり、
上記半導体集積回路内に、上記演算処理ユニットのワークメモリと、
上記第2の格納手段または上記ワークメモリと、上記演算処理ユニットのプログラム入力またはデータ入力との接続を切り替える接続切り替え手段とを備え、
上記第2の格納手段に格納された上記書き換えプログラムから抽出した上記チェックプログラムを上記ワークメモリに格納し、該ワークメモリに格納したチェックプログラムにより、上記演算処理ユニットを動作させ、上記書き換えプログラムの正誤チェックを行う、
ことを特徴とする半導体集積回路装置。 - 請求項2に記載の半導体集積回路装置において、
上記第2の格納手段は、上記書き換えプログラムを格納するとともに、該書き換えプログラムのうち、ある決められたかたまりから所定の法則に従い一意に得られるデータを格納するものとした、
ことを特徴とする半導体集積回路装置。 - 請求項3に記載の半導体集積回路装置において、
上記一意に得られるデータを、上記プログラムの正誤チェックをするためのチェックコードとして使用する、
ことを特徴とする半導体集積回路装置。 - 請求項2に記載の半導体集積回路装置において、
上記第2の格納手段は、その構成を、上記書き換えプログラムが格納されていない領域を順次2分割した構成とし、該2分割した各々の領域に同じプログラムデータを格納するものであり、
上記チェックプログラムは、上記2分割した両領域の各々に格納された同じプログラムデータを比較して正誤を判定するプログラムと、
前回の判定結果が正しいと判定されたときに、前回2分割した領域の一方の領域を、プログラムが格納されていない領域としてさらに2分割し、該分割した領域の各々に同じプログラムデータを格納する動作を繰り返すプログラムとを有し、
上記第2の格納手段に格納すべきプログラムすべてを順次格納する、
ことを特徴とする半導体集積回路装置。 - 請求項5に記載の半導体集積回路装置において、
上記第2の格納手段は、該第2の格納手段の上記書き換えプログラムが格納されていない領域を順次2分割した各々の領域に、上記書き換えプログラムデータと、該プログラムデータから所定の法則に従い一意に得られるデータとを格納するものとした、
ことを特徴とする半導体集積回路装置。 - 請求項6に記載の半導体集積回路装置において、
上記一意に得られるデータが、該プログラムデータの反転データである、
ことを特徴とする半導体集積回路装置。 - 請求項2ないし請求項7のいずれかに記載の半導体集積回路装置において、
上記チェックプログラムを予め格納したROM(Read Only Memory)を備え、
上記ROMにより上記演算処理ユニットを動作させて、上記書き換えプログラムの正誤チェックを行う、
ことを特徴とした半導体集積回路装置。 - 半導体集積回路内の演算処理ユニットにコンテンツを処理する動作をさせるためのプログラムを、書き換え可能に格納する第2の格納手段を半導体集積回路内に有し、該第2の格納手段に格納されたプログラムに対し、上記演算処理ユニットにコンテンツを処理する動作をさせるための、書き換え用である、予め暗号化された書き換えプログラムを格納する第1の格納手段を用いて書き換えを行うようにした半導体集積回路装置において、
上記半導体集積回路内に、上記第1の格納手段からの上記暗号化された書き換えプログラムを復号化し、該復号化した書き換えプログラムを上記第2の格納手段に転送する復号化手段と、
上記第2の格納手段に格納した書き換えプログラムを再度暗号化する暗号化手段とを備え、
上記暗号化手段で暗号化された書き換えプログラムと上記第1の格納手段に保持している暗号化された書き換えプログラムとを比較する、
ことを特徴とする半導体集積回路装置。 - 請求項9に記載の半導体集積回路装置において、
上記第2の格納手段にデータが正しく格納されていない場合、不良箇所を検出し、上記第1の格納手段に保持した書き換えプログラムを修正可能とした、
ことを特徴とする半導体集積回路装置。 - 機密データを外部からアクセス不可能な第1の領域を有する記憶手段に記憶させる第4の手段と、
機密データの一部であり、前記第1の領域に記憶されている検査プログラムを第2の領域を有する記憶手段に記憶させる第5の手段と、
前記第2の領域に記憶されている検査プログラムを実行して、前記第1の領域の機密データの正当性を検査する第6の手段とを備えた、
ことを特徴とするデータ記憶検証装置。 - 請求項11に記載のデータ記憶検証装置において、
前記第6の手段の終了後に前記第1の領域の命令に制御を移す第7の手段をさらに備えた、
ことを特徴とするデータ記憶検証装置。 - 請求項11に記載のデータ記憶検証装置において、
前記第5の手段は、前記第1の領域に記憶されている機密データ内に存在する命令により前記検査プログラムの記憶を実行する、
ことを特徴とするデータ記憶検証装置。 - 請求項11に記載のデータ記憶検証装置において、
前記第5の手段は、第3の領域に前記第4の手段による記憶の実行以前に記憶された命令により前記検査プログラムの記憶を実行する、
ことを特徴とするデータ記憶検証装置。 - 機密データを復号する手段と、
前記復号されたデータを外部からアクセス不可能な領域を有する記憶手段に記憶させる手段と、
前記記憶されたデータを暗号化する手段と、
前記暗号化されたデータと前記機密データとを比較して前記記憶されたデータが正しく記憶されたか否かを判定する手段とを備えた、
ことを特徴とするデータ記憶検証装置。 - 機密データを外部からアクセス不可能な第1の領域を有する記憶手段に記憶させる第4の工程と、
機密データの一部であり、前記第1の領域に記憶されている検査プログラムを第2の領域を有する記憶手段に記憶させる第5の工程と、
前記第2の領域に記憶されている検査プログラムを実行して、前記第1の領域の機密データの正当性を検査する第6の工程とを含む、
ことを特徴とするデータ記憶検証方法。 - 請求項16に記載のデータ記憶検証方法において、
前記第6の工程の終了後に前記第1の領域の命令に制御を移す第7の工程をさらに含む、
ことを特徴とするデータ記憶検証方法。 - 請求項16に記載のデータ記憶検証方法において、
前記第5の工程は、前記第1の領域に記憶されている機密データ内に存在する命令により前記検査プログラムの記憶を実行する、
ことを特徴とするデータ記憶検証方法。 - 請求項16に記載のデータ記憶検証方法において、
前記第5の工程は、前記第3の領域に前記第4の工程による記憶の実行以前に記憶された命令により前記検査プログラムの記憶を実行する、
ことを特徴とするデータ記憶検証方法。 - 機密データを復号する工程と、
前記復号されたデータを外部からアクセス不可能な領域を有する記憶手段に記憶させる工程と、
前記記憶されたデータを暗号化する工程と、
前記暗号化されたデータと前記機密データとを比較して前記記憶されたデータが正しく記憶されたか否かを判定する工程とを含む、
ことを特徴とするデータ記憶検証方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002174883 | 2002-06-14 | ||
JP2002174883 | 2002-06-14 | ||
PCT/JP2003/007541 WO2003107193A1 (ja) | 2002-06-14 | 2003-06-13 | 半導体集積回路装置、データ記憶検証装置およびデータ記憶検証方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2003107193A1 JPWO2003107193A1 (ja) | 2005-10-20 |
JP4041491B2 true JP4041491B2 (ja) | 2008-01-30 |
Family
ID=29727997
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004513943A Expired - Fee Related JP4041491B2 (ja) | 2002-06-14 | 2003-06-13 | 半導体集積回路装置,データ記憶検証装置およびデータ記憶検証方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20050223241A1 (ja) |
JP (1) | JP4041491B2 (ja) |
WO (1) | WO2003107193A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007239673A (ja) * | 2006-03-10 | 2007-09-20 | Honda Motor Co Ltd | 制御装置およびそのプログラム |
JP2008009798A (ja) * | 2006-06-30 | 2008-01-17 | Matsushita Electric Ind Co Ltd | ソフトウェア修正装置 |
JP5124244B2 (ja) * | 2007-11-16 | 2013-01-23 | 株式会社リコー | 半導体集積回路、機密保護方法、機密保護プログラム及び記録媒体 |
JP5171300B2 (ja) * | 2008-02-18 | 2013-03-27 | エヌ・ティ・ティ・ソフトウェア株式会社 | 仕様適合性検証装置 |
JP2010049559A (ja) * | 2008-08-22 | 2010-03-04 | Toshiba Corp | 記憶装置及び記録再生システム |
GB201314231D0 (en) | 2013-08-08 | 2013-09-25 | Harwood William T | Data Comparator Store |
KR102078853B1 (ko) * | 2013-11-27 | 2020-02-18 | 삼성전자 주식회사 | 메모리 시스템, 호스트 시스템 및 메모리 시스템에서의 라이트 동작 수행 방법 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6267800A (ja) * | 1985-09-20 | 1987-03-27 | Hitachi Ltd | 半導体集積回路装置 |
JPH0658627B2 (ja) * | 1987-01-28 | 1994-08-03 | アンリツ株式会社 | 電子機器 |
US5224160A (en) * | 1987-02-23 | 1993-06-29 | Siemens Nixdorf Informationssysteme Ag | Process for securing and for checking the integrity of the secured programs |
DE3705736A1 (de) * | 1987-02-23 | 1988-09-01 | Nixdorf Computer Ag | Verfahren zum sichern von programmen und zur integritaetskontrolle gesicherter programme |
JPH0566937A (ja) * | 1991-02-12 | 1993-03-19 | Oki Electric Ind Co Ltd | データ処理装置及びその処理変更方法 |
JPH06259242A (ja) * | 1993-03-03 | 1994-09-16 | Hitachi Ltd | 基本制御プログラムの修正方法および装置 |
JP2586805B2 (ja) * | 1993-10-06 | 1997-03-05 | 日本電気株式会社 | シングルチップマイクロコンピュータ |
US5734819A (en) * | 1994-10-12 | 1998-03-31 | International Business Machines Corporation | Method and apparatus for validating system operation |
JPH1011279A (ja) * | 1996-06-24 | 1998-01-16 | Tamura Electric Works Ltd | 電子機器 |
US6230267B1 (en) * | 1997-05-15 | 2001-05-08 | Mondex International Limited | IC card transportation key set |
JPH11282756A (ja) * | 1998-03-31 | 1999-10-15 | Nakamichi Corp | 秘密デ−タ管理方法 |
JP3305667B2 (ja) * | 1998-11-11 | 2002-07-24 | 日本電気株式会社 | ファームウェアデータの書込み方法 |
US7000115B2 (en) * | 2001-06-19 | 2006-02-14 | International Business Machines Corporation | Method and apparatus for uniquely and authoritatively identifying tangible objects |
US6641050B2 (en) * | 2001-11-06 | 2003-11-04 | International Business Machines Corporation | Secure credit card |
JP3971941B2 (ja) * | 2002-03-05 | 2007-09-05 | 三洋電機株式会社 | データ記憶装置 |
US7299364B2 (en) * | 2002-04-09 | 2007-11-20 | The Regents Of The University Of Michigan | Method and system to maintain application data secure and authentication token for use therein |
-
2003
- 2003-06-13 WO PCT/JP2003/007541 patent/WO2003107193A1/ja active Application Filing
- 2003-06-13 JP JP2004513943A patent/JP4041491B2/ja not_active Expired - Fee Related
- 2003-06-13 US US10/517,258 patent/US20050223241A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
WO2003107193A1 (ja) | 2003-12-24 |
US20050223241A1 (en) | 2005-10-06 |
JPWO2003107193A1 (ja) | 2005-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7461268B2 (en) | E-fuses for storing security version data | |
JP4851182B2 (ja) | マイクロコンピュータ、マイクロコンピュータに対するプログラム書込み方法、及び書込み処理システム | |
JP4568196B2 (ja) | プロセッサ、コンピュータシステムおよび認証方法 | |
US8127144B2 (en) | Program loader operable to verify if load-destination information has been tampered with, processor including the program loader, data processing device including the processor, promgram loading method, and integrated circuit | |
US8909941B1 (en) | Programmable integrated circuit and a method of enabling the detection of tampering with data provided to a programmable integrated circuit | |
CN100559486C (zh) | 信息处理装置和程序加载方法 | |
CN112699383B (zh) | 数据密码设备、存储器系统及其操作方法 | |
WO2003065225A1 (fr) | Dispositif de memoire, appareil terminal et systeme de reparation de donnees | |
US11455115B2 (en) | Storage device | |
JP4041491B2 (ja) | 半導体集積回路装置,データ記憶検証装置およびデータ記憶検証方法 | |
CN115562565A (zh) | 存储器装置及维持其数据镜像完整性的方法 | |
US11461476B2 (en) | Method for executing a binary code of a function secured by a microprocessor | |
KR101954439B1 (ko) | 이중보안기능을 가지는 SoC 및 SoC의 이중보안방법 | |
JP2006523870A (ja) | 制御装置内のソフトウェアのデータ整合性を検査する方法 | |
JP3106947B2 (ja) | 不揮発性半導体記憶装置 | |
US20150249467A1 (en) | Storage device, controller, and data writing method | |
JP4135413B2 (ja) | メモリチェックシステムおよびメモリチェック方法、信号処理装置および信号処理装置のメモリチェック方法、ならびに、メモリチェックプログラム | |
JP2018194948A (ja) | 半導体記憶装置、メモリコントローラ及びメモリの監視方法 | |
JP5298791B2 (ja) | 情報処理装置 | |
JP4937365B2 (ja) | プロセッサ、コンピュータシステムおよび認証方法 | |
US8943327B2 (en) | Apparatus and method to enable operation between a main assembly and a sub-assembly that are cryptographically related | |
JP2008123160A (ja) | メモリ管理方法 | |
JP4104998B2 (ja) | データダウンロード方法 | |
JP2023016643A (ja) | 電子制御装置 | |
JP2004252852A (ja) | 情報処理装置及び情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070612 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070808 |
|
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: 20071017 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071109 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101116 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111116 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121116 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |