(57)【要約】【課題】ＩＣカードなどの記憶装置において、記憶されているデータの秘匿性を高くする。【解決手段】データマスク部１２４はメモリアレイユニット１２１から読み出された記憶データをクロック信号のエッジタイミングとずれた所定の期間だけ出力し、マイクロコンピュータ１１０はクロック信号のエッジタイミングで、データマスク部１２４から出力されるデータを取り込む。それゆえ、クロック信号の周波数が所定の範囲にある場合にしか、マイクロコンピュータ１１０は記憶データを適切に取り込むことができないので、不正な記憶データの取得を困難にすることができる。また、上記所定の期間以外にデータマスク部１２４からランダムデータなどが出力されるようにすれば、一層、記憶データの解析を困難にして秘匿性を高くすることができる。【選択図】    図１
2004185134.tif 000002
【特許請求の範囲】
【請求項１】
メモリとマイクロコンピュータとを備え、外部から入力されるクロック信号またはこれに基づいて生成されるクロック信号に応じて、上記メモリに記憶されたデータが上記マイクロコンピュータに取り込まれるように構成された記憶装置において、
上記メモリからの記憶データの読み出しを制御する読み出し制御信号における所定のエッジから所定の時間だけずれたタイミングを示すタイミング信号を出力するタイミング信号出力回路と、
上記タイミング信号に基づいて、上記クロック信号が少なくとも１つの所定の周波数の場合にだけ、上記メモリに記憶されたデータが上記マイクロコンピュータに取り込まれるように制御する読み出しデータ制御回路と、
を備えたことを特徴とする記憶装置。
【請求項２】
請求項１の記憶装置であって、
上記読み出しデータ制御回路は、上記タイミング信号に基づいて、
上記メモリから読み出されたデータの上記マイクロコンピュータへの出力の有無、
上記メモリから読み出されたデータの上記マイクロコンピュータへの出力タイミング、および
上記マイクロコンピュータが上記メモリから読み出されたデータを取り込むタイミング
のうちの少なくとも何れか１つを制御するように構成されたことを特徴とする記憶装置。
【請求項３】
請求項２の記憶装置であって、
上記読み出しデータ制御回路は、上記タイミング信号によって示されるタイミングと、上記読み出し制御信号における上記所定のエッジよりも後のエッジが生じるタイミングとの相対関係に基づいて、上記メモリから読み出されたデータの上記マイクロコンピュータへの出力の有無を制御するように構成されたことを特徴とする記憶装置。
【請求項４】
請求項２の記憶装置であって、
上記読み出しデータ制御回路は、上記メモリから読み出されたデータを、上記タイミング信号に応じた所定の期間だけ、上記マイクロコンピュータへ出力するように構成されたことを特徴とする記憶装置。
【請求項５】
請求項２の記憶装置であって、
さらに、上記メモリから読み出されたデータを、所定の期間だけ、上記マイクロコンピュータへ出力するマスク回路を備えるとともに、
上記読み出しデータ制御回路は、上記マイクロコンピュータが、上記タイミング信号に応じた所定のタイミングで、上記マスク回路から出力されたデータを取り込むよう制御するように構成されたことを特徴とする記憶装置。
【請求項６】
請求項３から請求項５の何れか１つの記憶装置であって、
上記読み出しデータ制御回路、または上記マスク回路は、上記所定の期間以外には、上記メモリから読み出されたデータとは異なるデータを出力するように構成されたことを特徴とする記憶装置。
【請求項７】
請求項３から請求項６の何れか１つの記憶装置であって、
さらに、温度検知回路を備え、
上記読み出しデータ制御回路、または上記マスク回路は、上記温度検知回路によって所定の温度が検出されたときにだけ、上記メモリから読み出されたデータを出力するように構成されたことを特徴とする記憶装置。
【請求項８】
請求項３から請求項６の何れか１つの記憶装置であって、
さらに、光検知回路を備え、
上記読み出しデータ制御回路、または上記マスク回路は、上記光検知回路によって所定の強度の光が検出されたときにだけ、上記メモリから読み出されたデータを出力するように構成されたことを特徴とする記憶装置。
【請求項９】
メモリとマイクロコンピュータとを備え、外部から入力されるクロック信号に応じて、上記メモリに記憶されたデータが上記マイクロコンピュータに取り込まれるように構成された記憶装置において、
上記メモリから読み出されたデータを、所定の期間だけ、上記マイクロコンピュータへ出力するマスク回路と、
上記マスク回路が上記メモリから読み出されたデータを出力する上記所定の期間、および上記マイクロコンピュータが上記マスク回路から出力されたデータを取り込むタイミングを可変に制御するタイミング制御回路と、
を備えたことを特徴とする記憶装置。
【請求項１０】
請求項９の記憶装置であって、
上記タイミング制御回路は、
上記マスク回路が上記メモリから読み出されたデータを出力する上記所定の期間、および上記マイクロコンピュータが上記マスク回路から出力されたデータを取り込むタイミングを、
上記メモリにおける所定の領域に保持されたデータ、
上記マイクロコンピュータから出力されるアドレス、および
上記マイクロコンピュータから出力される所定の信号の少なくとも何れか１つに基づいて設定するように構成されたことを特徴とする記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、半導体メモリとプロセッサとを有するＩＣカード等の記憶装置に関し、特に、上記半導体メモリに記憶されたデータの秘匿性を高める技術に属するものである。
【０００２】
【従来の技術】
近年、マイクロコンピュータおよび半導体記憶部を備えた、例えばＩＣカード等の記憶装置の市場は急速に広がりを見せ、様々な用途に応用されるようになって来ている。
【０００３】
特に、個人データや金銭的なデータをＩＣカード等に格納して用いる用途も普及しつつある。このような用途に用いる場合、内部に記憶されたデータの秘匿性が重要なものとなる。
【０００４】
一方、ＩＣカードの製造や運用をする企業などにとっては、ＩＣカードを開発する場合や、市場に出荷されたＩＣカードに不具合が生じた場合などに、内部に記憶されているデータを読み出して解析等する必要が往々にしてある。
【０００５】
このため、第３者が悪意にデータを読み出すことを防ぐとともに、ＩＣカードの開発時などには容易に内部データを読み出せるようにすることが求められている。
【０００６】
上記のような機密保持と解析等の容易化などとの両立を図る技術としては、例えば、ＩＣカードに固有の番号を保持させ、ホスト装置から入力した番号と照合してゲート回路を開閉するものが提案されている（例えば、特許文献１参照）。
【０００７】
また、記憶させるデータ自体を暗号化して、データが読み出されても容易には解読できないようにする技術も知られている。
【０００８】
【特許文献１】
特開平６−１３９４２２号公報
【０００９】
【発明が解決しようとする課題】
しかしながら、上記のように固有の番号を照合する手法は、万一、その番号が漏れた場合には無防備なものとなる。また、一連の番号が順次入力されることによって機密を破られるおそれもある。さらに、ＩＣカードが分解され、配線にプローブが当てられて解析されるような場合にも、機密を保持することが困難である。
【００１０】
また、データの暗号化が用いられる場合には、秘匿性は暗号強度によって決まるため、必ずしも高い秘匿性が得られるとは限らない。
【００１１】
上記の問題に鑑み、本発明は、ＩＣカード等の記憶装置の秘匿性を高めることが、より容易にできるとともに、必要に応じて内部データを読み出すことなども容易にできるようにすることを課題とする。
【００１２】
【課題を解決するための手段】
上記の課題を解決するために、請求項１の発明が講じた解決手段は、
メモリとマイクロコンピュータとを備え、外部から入力されるクロック信号またはこれに基づいて生成されるクロック信号に応じて、上記メモリに記憶されたデータが上記マイクロコンピュータに取り込まれるように構成された記憶装置において、
上記メモリからの記憶データの読み出しを制御する読み出し制御信号における所定のエッジから所定の時間だけずれたタイミングを示すタイミング信号を出力するタイミング信号出力回路と、
上記タイミング信号に基づいて、上記クロック信号が少なくとも１つの所定の周波数の場合にだけ、上記メモリに記憶されたデータが上記マイクロコンピュータに取り込まれるように制御する読み出しデータ制御回路と、
を備えたことを特徴とする。
【００１３】
請求項１の発明によると、クロック信号が所定の周波数でなければ、メモリに記憶された記憶データはマイクロコンピュータに取り込まれず、記憶装置の外部に出力されないとともに、マイクロコンピュータも適切に動作しないようにすることができる。それゆえ、多くの場合に行われるような、低いクロック信号の周波数で不正に記憶データを解析したりする行為を防止して、記憶装置に記憶されたデータの秘匿性を高くすることが容易にできる。
【００１４】
また、請求項２の発明は、
請求項１の記憶装置であって、
上記読み出しデータ制御回路は、上記タイミング信号に基づいて、
上記メモリから読み出されたデータの上記マイクロコンピュータへの出力の有無、
上記メモリから読み出されたデータの上記マイクロコンピュータへの出力タイミング、および
上記マイクロコンピュータが上記メモリから読み出されたデータを取り込むタイミング
のうちの少なくとも何れか１つを制御するように構成されたことを特徴とする。
【００１５】
また、請求項３の発明は、
請求項２の記憶装置であって、
上記読み出しデータ制御回路は、上記タイミング信号によって示されるタイミングと、上記読み出し制御信号における上記所定のエッジよりも後のエッジが生じるタイミングとの相対関係に基づいて、上記メモリから読み出されたデータの上記マイクロコンピュータへの出力の有無を制御するように構成されたことを特徴とする。
【００１６】
また、請求項４の発明は、
請求項２の記憶装置であって、
上記読み出しデータ制御回路は、上記メモリから読み出されたデータを、上記タイミング信号に応じた所定の期間だけ、上記マイクロコンピュータへ出力するように構成されたことを特徴とする。
【００１７】
また、請求項５の発明は、
請求項２の記憶装置であって、
さらに、上記メモリから読み出されたデータを、所定の期間だけ、上記マイクロコンピュータへ出力するマスク回路を備えるとともに、
上記読み出しデータ制御回路は、上記マイクロコンピュータが、上記タイミング信号に応じた所定のタイミングで、上記マスク回路から出力されたデータを取り込むよう制御するように構成されたことを特徴とする。
【００１８】
これらによると、前記のようにメモリに記憶された記憶データがマイクロコンピュータに取り込まれないようにすることが容易にできる。
【００１９】
また、請求項６の発明は、
請求項３から請求項５の何れか１つの記憶装置であって、
上記読み出しデータ制御回路、または上記マスク回路は、上記所定の期間以外には、上記メモリから読み出されたデータとは異なるデータを出力するように構成されたことを特徴とする。
【００２０】
これによると、やはり、クロック信号が所定の周波数でない場合に、記憶データがマイクロコンピュータに取り込まれることがないとともに、記憶装置を分解し、記憶データの伝送経路にプローブを当てて解析される場合などでも、正しい記憶データを識別することが困難であるため、やはり、不正な情報の取得を容易に防止することができる。
【００２１】
また、請求項７の発明は、
請求項３から請求項６の何れか１つの記憶装置であって、
さらに、温度検知回路を備え、
上記読み出しデータ制御回路、または上記マスク回路は、上記温度検知回路によって所定の温度が検出されたときにだけ、上記メモリから読み出されたデータを出力するように構成されたことを特徴とする。
【００２２】
また、請求項８の発明は、
請求項３から請求項６の何れか１つの記憶装置であって、
さらに、光検知回路を備え、
上記読み出しデータ制御回路、または上記マスク回路は、上記光検知回路によって所定の強度の光が検出されたときにだけ、上記メモリから読み出されたデータを出力するように構成されたことを特徴とする。
【００２３】
これらによると、検知される温度や光の強度が適切でない場合にも、記憶データがマイクロコンピュータに取り込まれないようにすることができるので、不正な情報の取得を一層容易に防止することができる。
【００２４】
また、請求項９の発明は、
メモリとマイクロコンピュータとを備え、外部から入力されるクロック信号に応じて、上記メモリに記憶されたデータが上記マイクロコンピュータに取り込まれるように構成された記憶装置において、
上記メモリから読み出されたデータを、所定の期間だけ、上記マイクロコンピュータへ出力するマスク回路と、
上記マスク回路が上記メモリから読み出されたデータを出力する上記所定の期間、および上記マイクロコンピュータが上記マスク回路から出力されたデータを取り込むタイミングを可変に制御するタイミング制御回路と、
を備えたことを特徴とする。
【００２５】
また、請求項１０の発明は、
請求項９の記憶装置であって、
上記タイミング制御回路は、
上記マスク回路が上記メモリから読み出されたデータを出力する上記所定の期間、および上記マイクロコンピュータが上記マスク回路から出力されたデータを取り込むタイミングを、
上記メモリにおける所定の領域に保持されたデータ、
上記マイクロコンピュータから出力されるアドレス、および
上記マイクロコンピュータから出力される所定の信号の少なくとも何れか１つに基づいて設定するように構成されたことを特徴とする。
【００２６】
これらによれば、メモリがアクセスされるごとに、記憶データがマイクロコンピュータに入力されるタイミングが異なるので、記憶装置を分解し、記憶データの伝送経路にプローブを当てて解析するのを困難にすることができ、やはり、記憶装置に記憶されたデータの秘匿性を高くすることが容易にできる。
【００２７】
【発明の実施の形態】
以下、本発明の実施の形態に係る記憶装置としてのＩＣカードについて、図面を参照しながら説明する。
【００２８】
（実施の形態１）
図１は実施の形態１のＩＣカード１００の全体構成を示すブロック図である。
【００２９】
同図において、
マイクロコンピュータ１１０（プロセッサ）は、後述する半導体記憶部１２０から読み出されたデータを取り込むレジスタ１１１を備え、外部から入力されるクロック信号またはこれを分周やてい倍して得られるクロック信号に応じて、ＩＣカード１００に対するデータの入出力制御や種々のデータ処理等をするものである。より詳しくは、半導体記憶部１２０に記憶されたプログラム等を実行することにより、外部から入力されたデータを半導体記憶部１２０に書き込んだり、半導体記憶部１２０から読み出したデータや所定の処理を施したデータを外部に出力したりするようになっている。
【００３０】
上記半導体記憶部１２０は、マイクロコンピュータ１１０が実行するプログラムや種々のデータを記憶するもので、メモリアレイユニット１２１（メモリ）、センスアンプ１２２、出力バッファ１２３、データマスク部１２４（読み出しデータ制御回路）、データマスク信号発生回路１２５（タイミング信号出力回路）、およびアクセス制御回路１２６を備えている。
【００３１】
上記メモリアレイユニット１２１は、実際にプログラムやデータを保持するもので、アクセス制御回路１２６から出力されるロウアドレスおよびカラムアドレスに基づいて、ロウデコーダ１２１ａおよびカラムデコーダ１２１ｂによって指定されるメモリアレイ１２１ｃの領域に対して、データの書き込みや読み出しが行われるようになっている。
【００３２】
センスアンプ１２２は、上記メモリアレイ１２１ｃから出力される電圧を増幅し、ロウデコーダ１２１ａおよびカラムデコーダ１２１ｂによって指定される領域に記憶されているデータ（０または１）に応じたＨ（Ｈｉｇｈ）レベルまたはＬ（Ｌｏｗ）レベルのデータ信号を出力するものである。
【００３３】
出力バッファ１２３は、センスアンプ１２２から出力されるデータ信号をラッチし、安定した信号を出力するようになっている。
【００３４】
データマスク部１２４は、データマスク信号発生回路１２５から出力されるデータマスク信号に応じて、出力バッファ１２３から入力されたデータ信号の出力の有無を制御するものである。このデータマスク部１２４は、具体的には、例えば図２に示すようにデータのビット数に応じた数のＡＮＤ回路１２４ａを備えて構成されている。なお、ＡＮＤ回路１２４ａに代えて、出力バッファ１２３からの出力信号とＬレベルの信号とをデータマスク信号に応じて選択的に切り替えるセレクタ（スイッチ）を設けて構成するなどしてもよい。
【００３５】
データマスク信号発生回路１２５は、例えば図３に示すように、クロック信号が分周（またはてい倍）された読み出し制御信号における立ち下がりエッジから時間ｔ１だけずれたタイミングＴ３から、タイミングＴ５までの時間ｔ２の期間だけＨレベルになるデータマスク信号を出力するようになっている。ここで、上記時間ｔ１，ｔ２は、適正なクロック信号の周期をｔｃｋとすると、あらかじめ、
ｔ１＜ｔｃｋ＜ｔ１＋ｔ２
となるように設定されている。
【００３６】
アクセス制御回路１２６は、マイクロコンピュータ１１０によるメモリアレイユニット１２１へのアクセスを制御するものである。より詳しくは、例えば、マイクロコンピュータ１１０から出力される読み出し制御信号、モード信号、およびアドレス信号に基づいて、ロウアドレス信号およびカラムアドレス信号や、センスアンプ１２２の動作を制御する動作制御信号、ラッチ信号、および種々の読み出しモードなどを設定する図示しないモード制御信号を出力するようになっている。
【００３７】
なお、通常は、さらに、メモリアレイユニット１２１にデータを書き込むための回路等も設けられているが、説明の便宜上、ここでは省略する。
【００３８】
上記のように構成されたＩＣカードにおける、メモリアレイユニット１２１に記憶されたデータの読み出し動作について簡単に説明すると、例えば、１回の読み出し動作は、クロック信号の２周期分のタイミングに対応して行われる。また、アクセス制御回路１２６から出力される読み出し制御信号は、最初の１周期の期間にＬレベルになり、この期間にだけセンスアンプ１２２は動作状態になる。この動作状態のセンスアンプ１２２から出力されるデータ信号は、出力バッファ１２３によって、２周期目の終わりのタイミングまでラッチされる。出力バッファ１２３の出力はデータマスク部１２４によってマスクされ、前記のように所定のＴ３〜Ｔ５の期間だけ、有効なデータ信号が出力される。マイクロコンピュータ１１０は、１周期目の終わりにクロック信号が立ち下がるタイミングで、データマスク部１２４から出力されるデータを取り込む。
【００３９】
以下、より詳しい動作の説明として、クロック信号が所定の周波数のときに、メモリアレイユニット１２１に記憶されたデータが読み出されて、マイクロコンピュータ１１０からＩＣカードの外部に出力される場合の動作を説明する。
【００４０】
まず、ＩＣカードの外部から、クロック信号が入力されるとともに、入力データとして、メモリアレイユニット１２１内のデータをそのまま外部に出力させるモードを示す制御データ、および読み出しアドレスを指定するアドレスデータが入力される。
【００４１】
そこで、マイクロコンピュータ１１０は、例えば図３に示すタイミングＴ０で、読み出しモードを示すモード信号とアドレス信号とをアクセス制御回路１２６に出力する。これに応じて、アクセス制御回路１２６は、ロウデコーダ１２１ａおよびカラムデコーダ１２１ｂに、ロウアドレス信号およびカラムアドレス信号を出力し、メモリアレイ１２１ｃにおけるデータを読み出す領域を指定する。
【００４２】
次に、マイクロコンピュータ１１０は、クロック信号が立ち下がるタイミングＴ１で、読み出し制御信号をＬレベルにする。そこで、アクセス制御回路１２６は、センスアンプ１２２に動作制御信号（電源電圧または接地電圧）を出力し、センスアンプ１２２は、動作状態になって、ある程度の期間の不定状態を経た後（タイミングＴ２）、メモリアレイユニット１２１の記憶内容に応じたレベルの信号を出力する。出力バッファ１２３は、センスアンプ１２２から出力されたレベルの信号をそのまま出力する。
【００４３】
アクセス制御回路１２６は、また、上記センスアンプ１２２の出力が安定する上記タイミングＴ２以降の所定のタイミングで、出力バッファ１２３に出力するラッチ信号を例えばＨレベルにし、出力バッファ１２３は、その時点でセンスアンプ１２２から出力されている信号のレベルを保持する。すなわち、アクセス制御回路１２６からの動作制御信号の出力は読み出し制御信号がＨレベルになるタイミングＴ４で停止されてセンスアンプ１２２の出力は不定な状態になるが、出力バッファ１２３は、例えば次に読み出し制御信号がＬレベルになるタイミングＴ６まで、メモリアレイユニット１２１の記憶内容に応じたレベルのデータ信号を出力し続ける。
【００４４】
また、データマスク信号発生回路１２５は、読み出し制御信号の立ち下がり（Ｔ１）から所定の時間ｔ１だけ経過した後、時間ｔ２の間（Ｔ３〜Ｔ５）だけ、データマスク信号をＨレベルにする。そこで、データマスク部１２４は、上記タイミングＴ３〜Ｔ５の期間だけ、出力バッファ１２３に保持されているデータ信号を出力する。
【００４５】
一方、マイクロコンピュータ１１０は、クロック信号が立ち下がるタイミングＴ４で、データマスク部１２４から出力されているデータ信号、すなわちメモリアレイユニット１２１から読み出されたデータを取り込み、内部でデータの処理を行った後、ＩＣカードの外部に出力する。すなわち、クロック信号の周波数が、その周期（Ｔ１〜Ｔ４）がｔ１〜ｔ１＋ｔ２の範囲となるような周波数である場合には、記憶データが適切にマイクロコンピュータ１１０に取り込まれ、ＩＣカードの外部に出力される。
【００４６】
ところが、クロック信号の周波数が上記のような範囲にない場合、例えば図４に示すようにクロック信号の周期がｔ１＋ｔ２よりも長い場合には、クロック信号が立ち下がるタイミングＴ４では、データマスク部１２４は、記憶データに係らずＬレベルの信号を出力しているので、マイクロコンピュータ１１０は、このＬレベルの信号を取り込んでしまう。したがって、記憶データは、ＩＣカードから外部へ出力されることはない。（なお、実際には、マイクロコンピュータ１１０が実行する命令コードも同様にメモリアレイユニット１２１から適切に読み出されないので、マイクロコンピュータ１１０の動作自体も適切に行われないことになる。）
ここで、一般に、クロック信号に同期して動作するディジタル回路は、クロック信号の周波数を低くしても適切に動作する。このため、通常、第３者が不正にＩＣカードを解析して記憶内容を読み取ろうとするような場合には、回路動作を遅くして解析を容易にするために、低い周波数のクロック信号を与えることが多い。しかしながら、上記のように所定のクロック信号の周波数でだけマイクロコンピュータ１１０に記憶データが読み出されるようにすることにより、データの不正取得等を容易に防止することができる。
【００４７】
なお、データマスク信号がＨレベルになる期間は、１回に限らず、複数回生じるようにしてもよい。この場合には、複数種類のクロック信号周波数に対して適切な動作をさせることができるので、例えばＩＣカードに高速な動作をさせるモードと低消費電力な動作をさせるモードとでクロック信号周波数を切り替えるような場合に、何れのモードでも適切な動作をさせ、かつ、その他の周波数では適切に動作しないようにすることができる。
【００４８】
また、上記のように、クロック信号のエッジからずれたタイミングでデータマスク部１２４から記憶データが出力されるのに限らず、データマスク部１２４（マスク回路）からの記憶データの出力開始または停止のいずれか一方のタイミングをクロック信号のエッジに同期させるとともに、マイクロコンピュータ１１０による記憶データの取り込みタイミングが、クロック信号のエッジから所定の時間だけずれたタイミングになるようにしたり、さらに、記憶データの出力開始および停止、取り込みの何れもクロック信号のエッジからずれたタイミングになるようにしたりしても、同様の効果を得ることができる。
【００４９】
また、上記のようなデータマスク信号がＨレベルである期間に、クロック信号のエッジが存在する場合には、データマスク部から記憶データを出力させる一方、存在しない場合には記憶データが出力されないようにしても、やはり、所定のクロック信号の周波数のときにしかマイクロコンピュータ１１０に記憶データが取り込まれないようにすることができる。
【００５０】
また、本実施の形態のような手法は、単独で用いるのに限らず、例えば暗証番号との照合をする手法や記憶データ自体を暗号化する手法など、公知の種々の手法と組み合わせて、より秘匿性を高め得るようにしてもよい。
【００５１】
（実施の形態２）
以下、実施の形態２のＩＣカードについて説明する。なお、以下の実施の形態において、前記実施の形態１等と同様の機能を有する構成要素については同一の符号を付して説明を省略する。
【００５２】
実施の形態２のＩＣカードは、図５に示すように、前記実施の形態１のＩＣカードと比べて、データマスク部１２４に代えて、データマスク部２２４を備えるとともに、さらに、ランダムデータ発生回路２３１を備えている点が異なる。
【００５３】
上記ランダムデータ発生回路２３１は、所定のタイミングでランダムなデータ信号を出力するようになっている。
【００５４】
また、データマスク部２２４は、具体的には、例えば図６に示すように、データのビット数に応じた数のセレクタ２２４ａを備えて構成されている。
【００５５】
上記のように構成されていることにより、例えば図７に示すように、データマスク部２２４からは、データマスク信号がＨレベルの場合には、前記実施の形態１と同様にメモリアレイユニット１２１から読み出されたデータ信号が出力される一方、データマスク信号がＬレベルの場合には、ランダムデータ発生回路２３１から出力されるランダムデータ信号が出力される。
【００５６】
すなわち、クロック信号周波数が適切な場合には、ランダムデータ発生回路２３１から出力されるランダムデータ信号に係らず、マイクロコンピュータ１１０は、メモリアレイユニット１２１から読み出された信号がデータマスク部２２４から出力されているタイミングで、そのデータ信号を取り込み、適切に動作する。一方、例えばクロック信号の周波数が低い場合には、図８に示すように、マイクロコンピュータ１１０はデータマスク部１２４から出力されるランダムデータ信号を取り込むことになるので、適切に動作しないことになる。
【００５７】
また、例えば第３者がＩＣカードを分解し、ＬＳＩチップや配線パターンにプローブを当ててＩＣカード内部の信号を解析するような場合でも、記憶データとランダムデータとの区別がつきにくいので、実際上、メモリアレイユニット１２１の記憶内容を不正に取得することが困難になる。さらに、仮に適切な周波数のクロック信号が与えられてマイクロコンピュータ１１０が正常に動作する場合でも、ＩＣカードの内部でだけ用いられて外部に出力されないようなデータ（プログラムによってそのように扱われるデータ）は、ランダムデータとの区別がつきにくい以上、やはり不正に読み取ることは困難になる。
【００５８】
ここで、上記ランダムデータとしては、厳密な意味でのランダム性の高いデータである必要は必ずしもなく、記憶データとは異なるが紛らわしいダミーデータであればよい。したがって、例えば、記憶データやアドレスなどのビット位置を入れ替えたものや、これらに所定の変換を施したものなどを用いてもよい。
【００５９】
また、ランダムデータが変化する周期は特に限定されないが、データマスク信号がＨレベルになる期間と対応させる方が、より記憶データとの識別が困難になるので好ましい。
【００６０】
（実施の形態３）
実施の形態３のＩＣカードは、図９に示すように、前記実施の形態２のＩＣカードと比べて、さらに、温度検知回路３３１を備えるとともに、データマスク信号発生回路１２５に代えて、上記温度検知回路３３１によって所定の範囲の温度が検知された場合にだけ、実施の形態２と同じタイミングでデータマスク信号をＨレベルにするデータマスク信号発生回路３２５を備えている点が異なる。
【００６１】
上記のような温度検知回路３３１とデータマスク信号発生回路３２５とが設けられることによって、所定の温度範囲で、かつ、所定の周波数のクロック信号が与えられた場合にだけ、マイクロコンピュータ１１０が正常に動作し、その他の場合には記憶データが読み出されないので、一層、記憶データの秘匿性を高めることが容易にできる。
【００６２】
さらに、前記のようにＩＣカードを分解、解析されたとしても、温度範囲が適切でない場合には、データマスク部１２４とマイクロコンピュータ１１０との間の信号線（データバス）では記憶データが全く伝送されないので、プローブを当てて解析されるようなことも一層容易に防止できる。
【００６３】
ここで、メモリアレイユニット１２１からデータマスク部１２４までの間では、記憶データが伝送されるが、メモリアレイユニット１２１から出力バッファ１２３の間では、通常、伝送される信号は微弱であったり出力インピーダンスが高かったりするので、プローブを当てるなどして信号を検出すること自体が困難である。また、メモリアレイユニット１２１からデータマスク部１２４までの回路は、通常密接して形成されるので、回路を解析してデータ信号の経路であることを認識することが困難であるうえ、物理的にプローブを当てることも容易ではない。それゆえ、上記のようにデータマスク部１２４とマイクロコンピュータ１１０との間、すなわち、データバスであることが配線パターンなどから比較的容易に認識され、また配線長が比較的長くてプローブが当てられやすい信号経路に、ランダムデータ信号だけが出力される（記憶データが出力されない）ようにすることによって、実際上、秘匿性をかなり高めることができる。
【００６４】
なお、データマスク信号発生回路３２５がＨレベルのデータマスク信号を出力するための条件としては、上記のように単に所定の範囲の温度が検知されることだけでなく、例えば高温、低温、高温と変化したことが検知されることなどを条件とするようにしてもよい。
【００６５】
また、データマスク部１２４から記憶データが出力されないようにするのに代えて、マイクロコンピュータ１１０において、データマスク部１２４から出力される記憶データの取り込みが阻止されるようにしてもよい。
【００６６】
（実施の形態４）
前記実施の形態３の温度検知回路３３１に代えて、図１０に示すように光検知回路４３１を設け、検出される光の強度に応じて、データマスク信号がＨレベルになるようにしても、やはり同様に記憶データの秘匿性を高めることが容易にできる。
【００６７】
また、光強度に関しても、所定のパターンの光強度変化に応じて、データ信号がデータマスク部１２４から出力されるようにしてもよい。さらに、上記のような温度検知と光検知とを組み合わせて用いるなどしてもよい。
【００６８】
（実施の形態５）
実施の形態５のＩＣカードは、図１１に示すように、前記実施の形態１のＩＣカードと比べて、データマスク信号発生回路１２５に代えてデータマスク信号発生回路５２５を備えるとともに、さらに、アドレス演算回路５３１を備えている点と、マイクロコンピュータ１１０が、アドレス演算回路５１２と、ラッチ信号発生回路５１３とを備えている点が異なる。
【００６９】
上記アドレス演算回路５３１は、マイクロコンピュータ１１０から出力されるアドレス信号に基づいて所定の演算等（何もしない場合も含む）を行い、その演算結果をデータマスク信号発生回路５２５に出力するようになっている。具体的には、例えば、アドレスのＬＳＢの値や、所定の複数ビットの値、また、これらに所定の変換を施した値などを出力するようになっている。なお、アクセス制御回路１２６から出力されるロウアドレスやカラムアドレスに基づいて演算を行うようにしてもよい。
【００７０】
データマスク信号発生回路５２５（タイミング制御回路）は、データマスク部１２４（マスク回路）による読み出しデータ信号の出力タイミングを制御する点では実施の形態１と同じであるが、クロック信号の立ち下がりエッジからデータマスク信号がＨレベルになるまでの時間ｔ１、およびデータマスク信号がＨレベルになっている時間ｔ２の少なくとも何れか一方が、上記アドレス演算回路５３１から出力される演算結果に基づいて設定されるようになっている。すなわち、前記実施の形態１のＩＣカードでは、上記時間ｔ１，ｔ２はあらかじめ設定された一定の長さであるのに対し、本実施の形態のＩＣカードでは、データマスク信号がＨレベルになるタイミングは、メモリアクセスごとに、そのアクセスするアドレスに応じて変化するようになっている。
【００７１】
また、マイクロコンピュータ１１０のアドレス演算回路５１２は、上記アドレス演算回路５３１と同じ演算を行うように構成され、ラッチ信号発生回路５１３（タイミング制御回路）は、アドレス演算回路５１２から出力される演算結果に基づいて、レジスタ１１１にラッチ信号を出力するように構成されている。上記ラッチ信号発生回路５１３は、より詳しくは、アドレス演算回路５１２の演算結果に基づいて、時間ｔ２の期間内、すなわちデータマスク信号がＨレベルである期間内のタイミングで上記ラッチ信号のレベルを変化させる（エッジを生じさせる）ようになっている。
【００７２】
上記のように構成されたＩＣカードでは、データマスク信号とマイクロコンピュータ１１０内のラッチ信号とは、タイミングが常に対応することになるので、マイクロコンピュータ１１０は、クロック信号の周波数に係らず正常に動作することになるが、データマスク部１２４から適切な記憶データが出力されるタイミングは、メモリアクセスごとに変化するため、データマスク部１２４とマイクロコンピュータ１１０との間の信号線（データバス）にプローブを当てることによる解析などを困難にすることができる。
【００７３】
（実施の形態６）
実施の形態６のＩＣカードは、図１２に示すように、メモリアレイユニット１２１内の所定の領域に、データマスク信号がＨレベルになるタイミング（時間ｔ１，ｔ２）に応じたマスクタイミングデータを格納することによって、時間ｔ１，ｔ２やマイクロコンピュータ１１０による取り込みタイミングを設定し得るようにしたものである。
【００７４】
具体的には、実施の形態５のＩＣカードに比べ、アドレス演算回路５３１およびデータマスク信号発生回路５２５に代えて、データマスク信号発生回路６２５を備えている点と、マイクロコンピュータ１１０が、アドレス演算回路５１２およびラッチ信号発生回路５１３に代えて、ラッチ信号発生回路６１３を備えている点とが異なる。
【００７５】
上記データマスク信号発生回路６２５（タイミング制御回路）には、アドレス信号と、出力バッファ１２３から出力されるデータ信号とが入力され、メモリアレイユニット１２１における所定のアドレスの領域がアクセスされたときに、出力バッファ１２３から出力されるマスクタイミングデータに基づいて、上記時間ｔ１，ｔ２が設定され、データマスク部１２４（マスク回路）が制御されるようになっている。
【００７６】
また、マイクロコンピュータ１１０のラッチ信号発生回路６１３（タイミング制御回路）には、アドレス信号と、データマスク部１２４から入力されるデータ信号とが入力され、上記データマスク信号発生回路６２５で時間ｔ１，ｔ２が設定されるのに対応して、レジスタ１１１に出力されるラッチ信号のエッジタイミングが設定されるようになっている。
【００７７】
上記のように構成されることにより、データマスク部１２４から適切な記憶データが出力されるタイミングを柔軟に設定することができるので、やはり、データバスにプローブを当てることによる解析などを一層困難にすることができる。
【００７８】
なお、上記マスクタイミングデータは、複数格納されて選択的に用いられるようにしてもよい。
【００７９】
（実施の形態７）
実施の形態７のＩＣカードは、図１３に示すように、実施の形態５のＩＣカードに比べて、アドレス演算回路５１２，５３１に代えて、タイミング制御部７１４（タイミング制御回路）を備え、ラッチ信号発生回路５１３およびデータマスク信号発生回路５２５は、上記タイミング制御部７１４からの出力に基づいて、データマスク信号がＨレベルになるタイミングや、マイクロコンピュータ１１０のレジスタ１１１がデータマスク部１２４（マスク回路）から出力されたデータ信号を取り込むタイミングを制御するようになっている。
【００８０】
上記タイミング制御部７１４は、具体的には、例えば記憶データが読み出されるごとや、マイクロコンピュータ１１０が動作を開始する際などに、乱数などを出力するようにしたり、プログラムによって決定される値を出力するようにしたりしてもよいし、また、ＩＣカードごとに設定された値を出力するようにしてもよい。
【００８１】
これによっても、やはり前記実施の形態６、７と同様に、データバスにプローブを当てることによる解析などを一層困難にして、記憶データの秘匿性を高めることができる。
【００８２】
なお、上記の例では、メモリとマイクロコンピュータとを備えた記憶装置の例としてＩＣカードを例に挙げて説明したが、これに限らず、いわゆるタグ型の記憶装置などであってもよいし、また、ホスト装置との接続が接続端子を接触させることによって行われる接触型であってもよいし、電磁波によって行われる非接触型であってもよい。
【００８３】
また、上記各実施の形態や変形例の構成は、論理的に可能な範囲で種々組み合わせるようにしてもよい。具体的には、例えば実施の形態３〜７のようにランダムデータ信号が出力されるのに代えて、実施の形態１のようにＬ（またはＨ）レベルの信号が出力されるようにしてもよいし、また、実施の形態３、４のように温度検知回路３３１や光検知回路４３１を実施の形態５〜７の構成にも設けるなどしてもよい。
【００８４】
【発明の効果】
以上のように、本発明によると、クロック信号が所定の周波数のときにだけ、メモリから読み出されたデータが、マイクロコンピュータに取り込まれるようにしたり、上記取り込みタイミングを可変にしたりすることによって、第３者による記憶データの不正な読み出しや解析を困難にすることができるので、ＩＣカード等の記憶装置の秘匿性を高めることが容易にできる一方、所定の周波数のクロック信号を与えることなどによって、必要に応じて内部データを読み出すことなども容易にできる。
【図面の簡単な説明】
【図１】実施の形態１のＩＣカード１００の全体構成を示すブロック図である。
【図２】同、データマスク部１２４の具体的な構成を示す回路図である。
【図３】同、適切なクロック周波数での動作を示すタイミングチャートである。
【図４】同、不適切なクロック周波数での動作を示すタイミングチャートである。
【図５】実施の形態２のＩＣカード１００の全体構成を示すブロック図である。
【図６】同、データマスク部２２４の具体的な構成を示す回路図である。
【図７】同、適切なクロック周波数での動作を示すタイミングチャートである。
【図８】同、不適切なクロック周波数での動作を示すタイミングチャートである。
【図９】実施の形態３のＩＣカード１００の全体構成を示すブロック図である。
【図１０】実施の形態４のＩＣカード１００の全体構成を示すブロック図である。
【図１１】実施の形態５のＩＣカード１００の全体構成を示すブロック図である。
【図１２】実施の形態６のＩＣカード１００の全体構成を示すブロック図である。
【図１３】実施の形態７のＩＣカード１００の全体構成を示すブロック図である。
【符号の説明】
１００      ＩＣカード
１１０      マイクロコンピュータ
１１１      レジスタ
１２０      半導体記憶部
１２１      メモリアレイユニット
１２１ａ    ロウデコーダ
１２１ｂ    カラムデコーダ
１２１ｃ    メモリアレイ
１２２      センスアンプ
１２３      出力バッファ
１２４      データマスク部
１２４ａ    ＡＮＤ回路
１２５      データマスク信号発生回路
１２６      アクセス制御回路
２２４      データマスク部
２２４ａ    セレクタ
２３１      ランダムデータ発生回路
３２５      データマスク信号発生回路
３３１      温度検知回路
４３１      光検知回路
５１２      アドレス演算回路
５１３      ラッチ信号発生回路
５２５      データマスク信号発生回路
５３１      アドレス演算回路
６１３      ラッチ信号発生回路
６２５      データマスク信号発生回路
７１４      タイミング制御部
【図１】
2004185134.tif 000003
【図２】
2004185134.tif 000004
【図３】
2004185134.tif 000005
【図４】
2004185134.tif 000006
【図５】
2004185134.tif 000007
【図６】
2004185134.tif 000008
【図７】
2004185134.tif 000009
【図８】
2004185134.tif 000010
【図９】
2004185134.tif 000011
【図１０】
2004185134.tif 000012
【図１１】
2004185134.tif 000013
【図１２】
2004185134.tif 000014
【図１３】
2004185134.tif 000015