(57)【要約】【課題】読み出しデータだけでなく、書き込みデータについても十分にセキュリティ機能を強化した半導体記憶装置を提供する。【解決手段】データを格納するデータ格納部と、逐次更新されるキーコードを格納するキーコード格納部とを備えたメモリと、データ格納部に格納されたデータを読出し、データスクランブル用キーコードに従って暗号化して出力するデータスクランブル回路と、暗号化されて入力されるデータをデータデスクランブル用キーコードに従って暗号を解除し、データ格納部に書込むデータデスクランブル回路と、キーコード格納部から取出した第１のキーコードに応じた擬似乱数を発生させて第２のキーコードとし、データスクランブル回路に供給すると共に、データデスクランブル回路に供給する擬似乱数発生回路と、第１のキーコードと第２のキーコードとを演算して第３のキーコードを作製し、キーコード格納部に書き込むことにより第１のキーコードを第３のキーコードに更新する演算回路とを設ける。【選択図】      図１
2010128620.tif 000002
【特許請求の範囲】
【請求項１】
データを格納するデータ格納部と、逐次更新されるキーコードを格納するキーコード格納部とを備えたメモリと、
前記データ格納部に格納されたデータを読出し、データスクランブル用キーコードに従って暗号化して出力するデータスクランブル回路と、
暗号化されて入力されるデータをデータデスクランブル用キーコードに従って暗号を解除し、前記データ格納部に書込むデータデスクランブル回路と、
前記キーコード格納部から取出した第１のキーコードに応じた擬似乱数を発生させて第２のキーコードとし、この第２のキーコードを前記データスクランブル用キーコードとして前記データスクランブル回路に供給すると共に、前記データデスクランブル用キーコードとして前記データデスクランブル回路に供給する擬似乱数発生回路と、
前記第１のキーコードと前記第２のキーコードとを演算して、第３のキーコードを作製し、前記キーコード格納部に書き込むことにより前記第１のキーコードを前記第３のキーコードに更新する演算回路とを設けたことを特徴とする半導体記憶装置。
【請求項２】
データを格納するデータ格納部と、逐次更新されるキーコードを格納する第１キーコード格納部と、初期キーコードを格納する第２キーコード格納部とを備えたメモリと、
前記データ格納部に格納されたデータを読出し、データスクランブル用キーコードに従って暗号化して出力するデータスクランブル回路と、
暗号化されて入力されるデータをデータデスクランブル用キーコードに従って暗号を解除し、前記データ格納部に書込むデータデスクランブル回路と、
前記第１キーコード格納部から取出した第１のキーコードに応じた擬似乱数を発生させて第２のキーコードとし、この第２のキーコードを前記データスクランブル用キーコードとして前記データスクランブル回路に供給すると共に、前記データデスクランブル用キーコードとして前記データデスクランブル回路に供給する擬似乱数発生回路と、
前記第２のキーコードを前記第２キーコード格納部に格納された前記初期キーコードに従って暗号化して出力するキーコードスクランブル回路と、
前記第１のキーコードと前記第２のキーコードとを演算して、第３のキーコードを作製し、前記第１キーコード格納部に書き込むことにより前記第１のキーコードを前記第３のキーコードに更新する演算回路とを設けたことを特徴とする半導体記憶装置。
【請求項３】
前記更新は、前記半導体記憶装置に供給される電源が立ち上がる際に行なわれることを特徴とする請求項１又は２に記載の半導体記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、秘密保持機構を備えた電気的にデータの書き換えが可能な不揮発性半導体記憶装置に関する。
【背景技術】
【０００２】
フラッシュメモリに代表される不揮発性半導体記憶装置は、電気的にデータの書き換えが可能で、かつ電源を切った状態でもデータを保持することができるためデータ格納用の記憶装置として広範囲に使用されている。
この際、不揮発性半導体記憶装置には、システムを所望の手順に従って動作させるためのプログラムや、個人情報や、著作権で保護された情報等が格納されることがある。
これらの情報を第三者が不正に読み出したり書き換えを行ったりすることは秘密情報保護の点で好ましくない。
そこで不揮発性半導体記憶装置には秘密保護のためにセキュリティ回路が搭載されている。
【０００３】
図２は従来の不揮発性半導体記憶装置の構成を示す回路図である。
不揮発性半導体記憶装置１００ａはデータを格納するＲＯＭ等のメモリ１０と、メモリ１０からのデータの読み出しあるいはメモリ１０へのデータの書き込みに際してデータに暗号化処理を施してセキュリティ機能を付加するためのスクランブル回路３０とから構成されている。スクランブル回路３０のセキュリティ解除はＭＰＵ２００からのキーコードによって行われる。
【０００４】
このようなセキュリティ機能を有する半導体記憶装置として、特許文献１乃至３に記載されているものが知られている。
特許文献１に記載されている半導体記憶装置では、カラムラッチ回路にセキュリティ機能を解除するためのパスワードを格納し、カラムラッチ回路に格納されたパスワードと解除コード格納部に格納されているセキュリティ解除コードとのベリファイ動作を行い、パスワードとセキュリティ解除コードとが一致すればセキュリティ機能の解除を行うように構成している。
【０００５】
また特許文献２に記載されている半導体記憶装置では、不揮発性半導体メモリに記憶するデータを暗号化する暗号化手段を設け、データを暗号化してフラッシュメモリに記憶するようにして記憶されるデータのセキュリティを強化している。
【０００６】
特許文献３に記載されている半導体記憶装置では、メモリ部の記憶データを読み出す際に入力コードが書き込まれた場合、この入力コードを予め記憶された暗証コードと比較し、それらが一致した場合にのみ出力される読み出し許可信号に従ってメモリ部の記憶データの読み出しを許可するようにしてセキュリティ機能を強化している。
【特許文献１】特開２００４−５９４１
【特許文献２】特開２００１−５１９０３
【特許文献３】特開２００１−１２５８３２
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述した従来の不揮発性半導体記憶装置においては、特定のキーコードによってデータスクランブルを行うことによりセキュリティ機能を実行している。
そのためプログラムは単一のキーコードによるスクランブルのため解析が容易であった。
そこで、上記問題点を解決するために、本願の発明者は、データスクランブル用キーコードを常に変化させるように構成した発明について、特願２００７−３２６２８７として出願した。
【０００８】
上記発明によれば、半導体記憶装置の内部のメモリから外部のＭＰＵに対する読み出しデータについてセキュリティ機能は一層強化される。
しかし、上記発明は、半導体記憶装置の外部にあるＭＰＵから、半導体記憶装置の内部のメモリへの書き込みデータについての考慮はなされていない。
本発明は、半導体記憶装置からの読み出しデータだけでなく、半導体記憶装置への書き込みデータについても十分にセキュリティ機能を強化した半導体装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明による半導体記憶装置は、データを格納するデータ格納部と、逐次更新されるキーコードを格納するキーコード格納部とを備えたメモリと、前記データ格納部に格納されたデータを読出し、データスクランブル用キーコードに従って暗号化して出力するデータスクランブル回路と、暗号化されて入力されるデータをデータデスクランブル用キーコードに従って暗号を解除し、前記データ格納部に書込むデータデスクランブル回路と、前記キーコード格納部から取出した第１のキーコードに応じた擬似乱数を発生させて第２のキーコードとし、この第２のキーコードを前記データスクランブル用キーコードとして前記データスクランブル回路に供給すると共に、前記データデスクランブル用キーコードとして前記データデスクランブル回路に供給する擬似乱数発生回路と、前記第１のキーコードと前記第２のキーコードとを演算して、第３のキーコードを作製し、前記キーコード格納部に書き込むことにより前記第１のキーコードを前記第３のキーコードに更新する演算回路とを設けたことを特徴とする。
このように構成することにより、データスクランブル用キーコード及びデータデスクランブル用キーコードは逐次更新されてメモリに格納される。
【００１０】
また、本発明の半導体記憶装置は、データを格納するデータ格納部と、逐次更新されるキーコードを格納する第１キーコード格納部と、初期キーコードを格納する第２キーコード格納部とを備えたメモリと、前記データ格納部に格納されたデータを読出し、データスクランブル用キーコードに従って暗号化して出力するデータスクランブル回路と、暗号化されて入力されるデータをデータデスクランブル用キーコードに従って暗号を解除し、前記データ格納部に書込むデータデスクランブル回路と、前記第１キーコード格納部から取出した第１のキーコードに応じた擬似乱数を発生させて第２のキーコードとし、この第２のキーコードを前記データスクランブル用キーコードとして前記データスクランブル回路に供給すると共に、前記データデスクランブル用キーコードとして前記データデスクランブル回路に供給する擬似乱数発生回路と、前記第２のキーコードを前記第２キーコード格納部に格納された前記初期キーコードに従って暗号化して出力するキーコードスクランブル回路と、前記第１のキーコードと前記第２のキーコードとを演算して、第３のキーコードを作製し、前記第１キーコード格納部に書き込むことにより前記第１のキーコードを前記第３のキーコードに更新する演算回路とを設けたことを特徴とする。
このように構成することにより、データスクランブル用キーコード及びデータデスクランブル用キーコード自体に他のコード（初期コード）によりスクランブルをかけているため一層セキュリティが向上する。
【００１１】
更に本発明は、前記キーコードの更新は、前記半導体記憶装置に供給される電源が立ち上がる際に行なわれるようにすることも出来る。
これにより、電源を立ち上げるたびにキーコードが自動的に更新される。
【発明の効果】
【００１２】
本発明においては、半導体記憶装置からの読み出しデータと半導体記憶装置への書き込みデータとは、いずれもスクランブルがかかった状態でデータバス上に現われるので、セキュリティ機能が一層強化された半導体記憶装置を実現することが出来る。
【発明を実施するための最良の形態】
【００１３】
図１は本発明による半導体記憶装置の一実施例を示すブロック回路図である。
本発明の半導体記憶装置１００ｂは、データを格納するメモリ５０と、メモリ５０からのデータを読み出し、データスクランブル用キーコードに従って暗号化して出力するデータスクランブル回路５１と、暗号化されて入力されるデータをデータデスクランブル用キーコードに従って暗号を解除し、メモリ５０に書き込むデータデスクランブル回路５７と、メモリ５０から取出した第１のキーコードに応じた擬似乱数を発生させて第２のキーコードとする擬似乱数発生回路５２と、第２のキーコードを格納する確定キーコード格納部５３と、第１のキーコードと第２のキーコードとを演算して第３のキーコードを作製し、メモリ５０に書き込む演算回路５４と、キーコード読み出し信号に応答して、スクランブルされたデータや確定キーコードを外部に読み出す読み出し回路５６とから構成されている。
【００１４】
またデータスクランブル回路５１とデータデスクランブル回路５７とに供給されるキーコードは図２に示す場合と異なりメモリ５０の側から供給される。
メモリ５０はデータを格納するためのデータ格納部５０ａと、逐次更新されるキーコードを格納するための第１格納部５０ｂ及び初期キーコードを格納しておくための第２格納部５０ｃとから構成されている。
【００１５】
第１格納部５０ｂにはデータスクランブル／デスクランブル用キーコードが格納されており、電源が立ち上がると第１格納部５０ｂから、格納されていた第１のキーコードが取り出され擬似乱数発生回路５２に伝送される。
擬似乱数発生回路５２では、この第１のキーコードに応じた乱数を第２のキーコードとして確定キーコード格納部５３に格納し、これをデータスクランブル回路５１に供給する。
すなわち第２のキーコードが確定キーコードとなるわけである。
【００１６】
確定キーコードは、データデスクランブル回路５７にも供給される。
ＭＰＵ２０からデータバス４０を介して半導体記憶装置１００ｂに入力されるデータはスクランブルされ暗号化されてデータデスクランブル回路５７に入力される。このときのスクランブルに用いられるキーコードは、確定キーコード格納部５３に格納されているキーコードと同一のキーコードである。
【００１７】
データデスクランブル回路５７には確定キーコード格納部５３から、データスクランブルに用いたのと同一のキーコードが供給されているから、入力データはデスクランブルされ、暗号が解除されてメモリ５０のデータ格納部５０ａに格納される。
【００１８】
なお第１格納部５０ｂから取り出した第１のキーコードと確定キーコードとなった第２のキーコードとは演算回路５４により演算されて第３のキーコードとなり、第１格納部５０ｂに書き込まれる。
これにより、第１格納部５０ｂに格納されていた第１のキーコードは第３のキーコードにより更新される。
【００１９】
キーコードの更新は半導体記憶装置１００ｂに供給される電源が立ち上がる際に行われるように構成されている。
したがって、電源立ち上げの度にキーコードは変化するので、キーコードの第三者による解析は困難となる。
【００２０】
また確定キーコード格納部５３に格納された確定キーコードは外部のＭＰＵ２０に伝達する必要がある。その場合、第２格納部５０ｃに予め格納されている初期キーコードによりスクランブルをかけて取り出すようにすればさらにセキュリティを上げることができる。
なお初期キーコード自体は電源が立ち上がるたびに変化するようには構成されていない。
【００２１】
なおデータスクランブル回路５１及びキーコードスクランブル回路５５を介して取り出されるデータや確定キーコードは、読み出し回路５６を介してＭＰＵ２０に取り出されるが、その際この読み出し回路５６にキーコード読み出し信号を供給することにより取り出しが行われる。
【００２２】
なお、本発明の擬似乱数発生回路５２の構成は周知の回路構成を採用することができ、第１格納部５０ｂから取り出したキーコードに応じてそれを任意に振り替えて第２のデータスクランブル用キーコードを作成する機能を有するものであればどのような回路構成を採用してもよい。
【００２３】
また、演算回路５４の構成も周知の回路構成を採用することができ、第１のデータスクランブル用キーコードと第２のデータスクランブル用キーコードとに演算を施して第３のデータスクランブル用キーコードを作成することが出来る回路構成であればどのような構成であってもよい。
さらに、データスクランブル用キーコードの更新は電源が立ち上がる際に行うように構成したが、これに限定されるものではなく、例えば一定時間ごとに更新が行われるようにすることも可能である。
【００２４】
このように本発明の半導体記憶装置ではデータスクランブル／デスクランブル用キーコードが半導体記憶装置の内部から供給されること及び所定のタイミングで更新されるためセキュリティ機能が強化される。
【００２５】
また、本発明の半導体記憶装置１００ｂでは、書き込みデータに対してＭＰＵ２０の側で同一のキーコードを用いてスクランブルをかけ、半導体記憶装置１００ｂ内にデータデスクランブル回路５７を搭載しているため、データバス４０上には常にスクランブルがかかったデータが入出力されるため、セキュリティ機能がより高くなる。
【図面の簡単な説明】
【００２６】
【図１】本発明における半導体記憶装置の構成を示す回路図。
【図２】従来の半導体記憶装置の構成を示す回路図。
【符号の説明】
【００２７】
４０    データバス
５０    メモリ
５０ａ    データ格納部
５０ｂ    第１格納部
５０ｃ    第２格納部
５１    データスクランブル回路
５２    擬似乱数発生回路
５３    確定キーコード格納部
５４    演算回路
５５    キーコードスクランブル回路
５６    読み出し回路
５７    データデスクランブル回路
【図１】
2010128620.tif 000003
【図２】
2010128620.tif 000004