(57)【要約】【課題】不正アクセスが行われた場合であっても、機密データを保護することができる、半導体装置、機密データ管理システム、及び機密データ管理方法を提供する。【解決手段】メモリ（外部メモリ１８・メモリ２８）に機密データ３０を分割した分割機密データ（３０−Ａ〜３０−Ｃ）の各々と対応する分割パリティデータ（３２−Ａ〜３２−Ｃ）を交互に記憶させて管理している。機密データ３０を読み出す際は、分割機密データのエラーを分割パリティデータで検査し、エラーが生じている場合は、訂正し、読み出す。機密データ３０がメモリに一様に記憶されないため、機密データ管理システム１０（半導体装置２０）に不正アクセス（ハッキング）された場合であっても、機密データ３０が判別されづらくなる。【選択図】図２
2013222272.tif 000002
【特許請求の範囲】
【請求項１】
１つの機密データを分割した複数の分割機密データと、当該複数の分割機密データのエラーを訂正する複数の分割訂正用データと、が交互に記憶された記憶手段に記憶されている、前記分割機密データのエラーを前記分割訂正用データに基づいて訂正する訂正手段と、
前記訂正手段から出力される前記複数の分割機密データを合成する合成手段と、
を備えた半導体装置。
【請求項２】
複数の分割機密データは、前記訂正手段が検査及び訂正を行う所定の単位に応じて、機密データを複数に分割したデータであり、前記分割訂正用データは、前記所定の単位の分割機密データに対応した訂正用のデータである、請求項１に記載の半導体装置。
【請求項３】
前記記憶手段には、少なくとも１つ以上のダミーデータが前記分割機密データ及び分割訂正用データの間に記憶されており、前記合成手段は、前記ダミーデータを避けて読み出された複数の前記分割機密データを合成する、請求項１または請求項２に記載の半導体装置。
【請求項４】
前記ダミーデータが前記記憶手段に記憶されている位置及び容量を記憶するダミーデータ情報記憶手段を備え、前記合成手段は、前記ダミーデータ情報記憶手段に記憶されている前記ダミーデータの位置及び容量に基づいて前記ダミーデータを避けて読み出された複数の前記分割機密データを読み出す、請求項３に記載の半導体装置。
【請求項５】
前記分割機密データは、前記分割訂正用データで訂正可能に壊されたエラーデータを含む、請求項１から請求項４のいずれか１項に記載の半導体装置。
【請求項６】
前記記憶手段を自装置内部に備えた、
請求項１から請求項５のいずれか１項に記載の半導体装置。
【請求項７】
前記請求項１から前記請求項５のいずれか１項に記載の半導体装置と、
前記半導体装置の外部に設けられ、１つの機密データを分割した複数の分割機密データと、当該複数の分割機密データのエラーを訂正する複数の分割訂正用データと、が交互に記憶された記憶手段と、
を備えた機密データ管理システム。
【請求項８】
１つの機密データを分割した複数の分割機密データと、当該複数の分割機密データのエラーを訂正する複数の分割訂正用データと、が交互に記憶された記憶手段から、複数の分割機密データとして分割された状態で記憶されている機密データを読み出す際に、
前記分割機密データのエラーの有無を前記分割訂正用データに基づいて検査し、エラーが生じている場合は当該エラーが訂正された分割機密データを読み出す工程と、
前記複数の分割機密データから前記機密データを合成する工程と、
を備えた、機密データ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置、機密データ管理システム、及び機密データ管理方法に関するものである。
【背景技術】
【０００２】
一般的に、暗号化キーや、個人情報等の機密データを管理し、情報漏洩を抑制してセキュリティを向上させた半導体装置やデータ管理方法が知られている。例えば、特許文献１には、データ全般を一つのメモリ内で分割し、アドレス等の場所を変えて格納する技術が記載されている。また例えば、特許文献２には、暗号化された印刷データを印刷する画像形成装置内で暗号化キーを分割して管理する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−６０１３６号公報
【特許文献２】特開２００９−８３２１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述の特許文献１に記載の技術では、特定の領域に保存する機密データの場合適用が難しく、不正アクセス（ハッキング）された際に容易に機密データを見つけられてしまうという懸念がある。
【０００５】
また、上述の特許文献２に記載の技術のように、装置として別々に分割して管理する場合、システムＬＳＩに適用する場合を考慮すると、構成が複雑となるため、ＩＣパッケージ内で完結させたい場合には適用が困難になるという懸念がある。
【０００６】
また、不揮発性記憶媒体等の記憶手段内に一様に機密データを記憶（格納）する従来技術の場合、機密データが読み取りやすくなり、不正アクセスの危険性を高めるという問題があった。なお、ここで、「一様」とは、データがアドレスに対してリニアに単純に並び、格納されていることをいう。
【０００７】
本発明は、上述した問題を解決するために提案されたものであり、不正アクセスが行われた場合であっても、機密データを保護することができる、半導体装置、機密データ管理システム、及び機密データ管理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明の半導体装置は、１つの機密データを分割した複数の分割機密データと、当該複数の分割機密データのエラーを訂正する複数の分割訂正用データと、が交互に記憶された記憶手段に記憶されている、前記分割機密データのエラーを前記分割訂正用データに基づいて訂正する訂正手段と、前記訂正手段から出力される前記複数の分割機密データを合成する合成手段と、を備える。
【０００９】
また、本発明の機密データ管理システムは、前記請求項１から前記請求項５のいずれか１項に記載の半導体装置と、前記半導体装置の外部に設けられ、１つの機密データを分割した複数の分割機密データと、当該複数の分割機密データのエラーを訂正する複数の分割訂正用データと、が交互に記憶された記憶手段と、を備える。
また、本発明の機密データ管理方法は、１つの機密データを分割した複数の分割機密データと、当該複数の分割機密データのエラーを訂正する複数の分割訂正用データと、が交互に記憶された記憶手段から、複数の分割機密データとして分割された状態で記憶されている機密データを読み出す際に、前記分割機密データのエラーの有無を前記分割訂正用データに基づいて検査し、エラーが生じている場合は当該エラーが訂正された分割機密データを読み出す工程と、前記複数の分割機密データから前記機密データを合成する工程と、を備える。
【発明の効果】
【００１０】
本発明によれば、不正アクセスが行われた場合であっても、機密データを保護することができる、という効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】第１の実施の形態の機密データ管理システム及び機密データを管理するための半導体装置の概略構成の一例を示す回路図である。
【図２】第１の実施の形態のメモリ・外部メモリに記憶されている機密データ及びパリティデータを説明するための模式図である。
【図３】第１の実施の形態の機密データ読み出し動作の一例のフローチャートである。
【図４】第２の実施の形態の機密データ管理システム及び機密データを管理するための半導体装置の概略構成の一例を示す回路図である。
【図５】第２の実施の形態のメモリ・外部メモリに記憶されている機密データ及びパリティデータを説明するための模式図である。
【図６】第２の実施の形態の機密データ読み出し動作の一例のフローチャートである。
【図７】第３の実施の形態のメモリ・外部メモリに記憶されている機密データ及びパリティデータを説明するための模式図である。
【発明を実施するための形態】
【００１２】
［第１の実施の形態］
以下、図面を参照して、本実施の形態の機密データ管理システム及び機密データを管理するための半導体装置について説明する。
【００１３】
まず、本実施の形態の機密データ管理システム及び機密データを管理するための半導体装置の構成について説明する。本実施の形態の機密データ管理システム及び機密データを管理するための半導体装置の概略構成の一例を図１に示す。図１に示した本実施の形態の機密データ管理システム１０は、外部メモリ１８、及び外部メモリ１８やメモリ２８に記憶されている機密データを管理するための半導体装置２０により構成されている。
【００１４】
外部メモリ１８は、不揮発性の記憶媒体であり、例えば、フラッシュメモリ等である。
【００１５】
半導体装置２０は、ＣＰＵ２２、外部メモリコントローラ２４、及びメモリ２８を備えている。ＣＰＵ２２、外部メモリコントローラ２４、及びメモリ２８はバス２９により、互いに信号（データ）等の授受が可能に接続されている。
【００１６】
ＣＰＵ２２は、半導体装置２０全体の動作を制御する機能を有している。また本実施の形態では、ＣＰＵ２２がＲＯＭ（図示省略）等に記憶されているソフトウェア（プログラム）を実行することにより、外部メモリ１８やメモリ２８等に記憶されている機密データを管理し、機密データの読み出しを行う。
【００１７】
本実施の形態の外部メモリコントローラ２４は、ＣＰＵ２２が外部メモリ１８へデータの書き込み（記憶）や読み出しを行う際に、外部メモリ１８を制御する機能を有している。本実施の形態の外部メモリコントローラ２４は、ＥＣＣ（Ｅｒｒｏｒ  Ｃｈｅｃｋ  ａｎｄ  Ｃｏｒｒｅｃｔ）２４−Ａ機能を備えている。ＥＣＣ２４−Ａは、外部メモリ１８から機密データを読み出す際に、外部メモリ１８に記憶されているパリティデータに基づいて、当該機密データに誤りや破壊がないかどうかを検査し、エラー（誤り・破壊）が生じている場合は、訂正する機能を有している。
【００１８】
本実施の形態のメモリ（内部メモリ）２８は、不揮発性の記憶媒体であり、例えば、書き換え可能なフラッシュメモリや一度のみの書き込みが可能なＲＯＭや製造時に書き込み済みのマスクＲＯＭ等である。また、本実施の形態のメモリ（内部メモリ）２８は、ＥＣＣ２８−Ａ機能を備えた、いわゆるＥＣＣメモリである。ＥＣＣ２８−Ａは、メモリ２８から機密データを読み出す際に、メモリ２８に記憶されているパリティデータに基づいて、当該機密データに誤りや破壊がないかどうかを検査し、エラー（誤り・破壊）が生じている場合は、訂正する機能を有している。
【００１９】
本実施の形態では、外部メモリ１８及びメモリ２８に記憶されている機密データを管理する場合について説明するが、外部メモリ１８及びメモリ２８のいずれか一方のみに機密データ３０が記憶されていてもよい。また、機密データ管理システム１０は、外部メモリ１８及び外部メモリコントローラ２４と、メモリ２８と、のいずれか一方のみを備えるように構成されていてもよい。なお、以下では、外部メモリ１８及びメモリ２８を総称する場合は、単に「メモリ」という。
【００２０】
外部メモリ１８及びメモリ２８の少なくとも一方に記憶されている機密データ、及び当該機密データをＥＣＣ２４−Ａ・ＥＣＣ２８−Ａで検査・訂正するためのパリティデータについて説明する。
【００２１】
図２に、本実施の形態の機密データ及びパリティデータの模式図を示す。なお、本実施の形態で「機密データ」とは、暗号データ解読用の暗号キーデータや、個人情報等、権限を持たない他者に情報漏洩されてはいけないデータのことをいう。
【００２２】
本実施の形態では、１つ（１データ）の機密データ３０を、所定の単位（容量）に応じて分割して、複数の分割機密データ３０−Ａ〜３０−Ｃとしている。なお、図２に示した一例では、３つに分割した場合を示している。また、図２では、各分割機密データ３０−Ａ〜３０−Ｃの単位（容量）を任意としている。なお、本実施の形態では、分割機密データ３０−Ａ〜３０−Ｃの各々が異なった単位のデータとなるように機密データ３０を分割しているがこれに限らず、同一単位のデータとなるように分割してもよい。
【００２３】
本実施の形態では、図２に示すように、分割機密データ３０−Ａには分割パリティデータ３２−Ａが対応し、分割機密データ３０−Ｂには分割パリティデータ３２−Ｂが対応し、分割機密データ３０−Ｃには分割パリティデータ３２−Ｃが対応している。なお、分割パリティデータ（３２−Ａ〜３２−Ｃ）について以下では、機密データ３０に対する分割パリティデータ（３２−Ａ〜３２−Ｃ）の総称として、単に「パリティデータ３２」という場合もある。
【００２４】
本実施の形態では、機密データ３０及びパリティデータ３２は、予めメモリに記憶されている。具体的には、図２に示すように、分割機密データ（３０−Ａ〜３０−Ｃ）、及び分割パリティデータ（３２−Ａ〜３２−Ｃ）が、メモリ内の機密データ３０を記憶させておくための所定の領域に交互に、予め格納（記憶）された状態になっている。なお、図２では、分割機密データ３０を先にして、分割機密データ３０−Ａから順番に、交互に分割パリティデータ３２−Ｃまで記憶させてある場合を示しているがこれに限らず、分割パリティデータを先にして、分割パリティデータ３２−Ａから順番に、交互に分割機密データ３０−Ｃまで記憶させておいてもよい。
【００２５】
次に、本実施の形態の半導体装置２０における、メモリに格納（記憶）された機密データ３０の読出動作について説明する。本実施の形態では、メモリに格納された分割機密データ（３０−Ａ〜３０−Ｃ）を分割パリティデータ（３２−Ａ〜３２−Ｃ）で検査及び訂正して読み出し、一連のデータに合成する動作（処理）を機密データ３０の「読出動作」という。図３に、本実施の形態の半導体装置２０における機密データ３０の読出動作の一例のフローチャートを示す。当該機密データ３０の読出動作は、半導体装置２０の外部等から機密データ３０の読み出し指示が入力されると実行される。
【００２６】
ステップＳ１００では、分割機密データを対応する分割パリティデータで検査する。本実施の形態では、上述したように具体的には、分割機密データ３０−Ａは、分割パリティデータ３２−Ａで検査する。また、分割機密データ３０−Ｂは、分割パリティデータ３２−Ｂで検査し、分割機密データ３０−Ｃは、分割パリティデータ３２−Ｃで検査する。本ステップでは、メモリに格納（記憶）されている１つの分割機密データを対応する分割パリティデータで検査する。検査の仕方は、一般的なＥＣＣメモリにおけるエラーチェックと同様にすればよく、ここでは詳細な説明を省略する。
【００２７】
次のステップＳ１０２では、検査の結果、エラーが生じているか否かを判断する。エラーが生じていない場合は、ステップＳ１０６へ進む。一方、エラーが生じている場合は、ステップＳ１０４へ進み、対応する分割パリティデータを用いて当該エラーを訂正した後、ステップＳ１０６へ進む。
【００２８】
ステップＳ１０６では、全部の分割機密データ（３０−Ａ〜３０−Ｃ）の検査が終了したか否かを判断する。終了していない場合は、ステップＳ１００に戻り本処理を繰り返す。一方、終了した場合は、ステップＳ１０８へ進む。
【００２９】
ステップＳ１０８では、分割機密データ（３０−Ａ〜３０−Ｃ）を読み出し、合成して、機密データ３０とした後、本処理を終了する。なお、本合成処理は、一意に決められた処理として一時格納メモリに順次格納することで実現する場合や、ＣＰＵ２２が分割機密データ（３０−Ａ〜３０−Ｃ）を受け取り、ソフトウェア処理として実現する場合を含む。ソフトウェア処理として実現する場合は、当該データを続く処理で使用することも可能である。
【００３０】
このように本実施の形態の機密データ管理システム１０では、メモリ（外部メモリ１８・メモリ２８）に機密データ３０を分割した分割機密データ（３０−Ａ〜３０−Ｃ）の各々と対応する分割パリティデータ（３２−Ａ〜３２−Ｃ）を交互に記憶させて管理している。機密データ３０を読み出す際は、分割機密データのエラーを分割パリティデータで検査し、エラーが生じている場合は、訂正して、読み出し、合成して機密データ３０としている。
【００３１】
機密データ３０がメモリに一様に記憶されないため、機密データ管理システム１０（半導体装置２０）に不正アクセス（ハッキング）された場合であっても、機密データ３０が判別されづらくなる。従って、機密データ３０を保護することができる。また、ハッキングを抑制する効果も得られる。また、本実施の形態では、パリティデータ３２（分割パリティデータ（３２−Ａ〜３２−Ｃ）を用いて、機密データ３０が一様に記憶されないようにしているため、機密データ３０のエラーを訂正することができる。
【００３２】
［第２の実施の形態］
本実施の形態は、第１の実施の形態の機密データ管理システム１０及び半導体装置２０と略同様の構成及び動作を含むため、略同様の構成及び動作については、同一符号を付してその旨を記し、詳細な説明を省略する。
【００３３】
本実施の形態の機密データ管理システム及び機密データを管理するための半導体装置の概略構成の一例を図４に示す。図４に示すように、本実施の形態の半導体装置２０は、第１の実施の形態の半導体装置２０の構成（図１参照）に加えて、さらにレジスタ２６を備えている。
【００３４】
レジスタ２６は、後述するダミーデータ毎に、格納位置（開始アドレス等）及び容量を予め記憶しておく機能を有している。なお、容量そのものを記憶しておかなくても、ダミーデータ毎の開始アドレス及び終了アドレスを記憶しておいてもよい。
【００３５】
図５に、外部メモリ１８及びメモリ２８の少なくとも一方（上述と同様に「メモリ」と総称）に記憶されている本実施の形態の機密データ３０及びパリティデータ３２の模式図を示す。本実施の形態ではメモリに、機密データ３０（分割機密データ（３０−Ａ〜３０−Ｄ））、及びパリティデータ３２（分割パリティデータ（３２−Ａ〜３２−Ｄ））に加えて、さらに複数のダミーデータ３４が記憶されている。
【００３６】
なお、本実施の形態で「ダミーデータ」とは、機密データ３０及びパリティデータ３２のいずれとも無関係のデータをいう。なお、不正アクセスに対して、機密データ３０及びパリティデータ３２を判別しづらくするためには、単に無意味なデータ（例えば、数字の羅列等）ではなく、一見、意味のあるデータのように見えながらも、機密データ３０及びパリティデータ３２のいずれとも無関係のデータとすることが好ましい。
【００３７】
図５では、４つに分割された機密データ３０（分割機密データ（３０−Ａ〜３０−Ｄ））と、当該機密データ３０に対応するパリティデータ３２（分割パリティデータ（３２−Ａ〜３２−Ｄ））が交互に格納されている間に、ダミーデータ３４（３つのダミーデータ（３４−Ａ〜３４−Ｃ））が挿入された状態で格納されている場合を示している。
【００３８】
図５に示すように各ダミーデータ３４は、分割機密データと分割パリティデータとの間に挿入されていてもよいし、分割パリティデータと分割機密データとの間に挿入されていてもよい。また、ダミーデータ３４を１つの分割機密データの間や１つの分割パリティデータの間に挿入するようにしてもよい。
【００３９】
なお、挿入するダミーデータ３４の数は特に限定されない。セキュリティの向上の観点からは数が多い方が好ましい。しかしながら、ダミーデータ３４の数が多くなるとデータを格納する総容量が大きくなったり、機密データ３０の読み出し処理が煩雑になったりするため、これらを考慮して数を定めればよい。また、各ダミーデータ３４は、同一のデータであってもよいし、異なるデータであってもよい。なお、不正アクセスに対して、機密データ３０及びパリティデータ３２を判別しづらくするためには、異なるデータとすることが好ましい。
【００４０】
次に、本実施の形態の半導体装置２０における、メモリに格納（記憶）された機密データ３０の読出動作について説明する。図６に、本実施の形態の半導体装置２０における機密データ３０の読出動作の一例のフローチャートを示す。当該機密データ３０の読出動作は、半導体装置２０の外部等から機密データ３０の読み出し指示が入力されると実行される。
【００４１】
まず、ステップＳ２００では、レジスタ２６から、ダミーデータ３４（３４−Ａ〜３４−Ｃ）の位置、及び容量を取得する。これにより、ダミーデータ３４（３４−Ａ〜３４−Ｃ）の位置、及び容量がわかるため、ダミーデータ３４を除いて、機密データ３０（分割機密データ（３０−Ａ〜３０−Ｄ））を読み出すことができる。
【００４２】
以降のステップＳ２０２〜ステップＳ２１０の処理は、第１の実施の形態の機密データの読出処理のステップＳ１００〜ステップＳ１０８（図３参照）にそれぞれ対応している。分割機密データを対応する分割パリティデータで検査し、エラーが生じている場合は、対応する分割パリティデータを用いて当該エラーを訂正する処理を繰り返し行い、全部の分割機密データ（３０−Ａ〜３０−Ｄ）の検査が終了した場合は、分割機密データ（３０−Ａ〜３０−Ｄ）を合成して、機密データ３０として読み出した後、本処理を終了する。
【００４３】
このように本実施の形態の機密データ管理システム１０では、メモリ（外部メモリ１８・メモリ２８）に機密データ３０を分割した分割機密データ（３０−Ａ〜３０−Ｃ）の各々と対応する分割パリティデータ（３２−Ａ〜３２−Ｃ）を交互に記憶させる際に、さらに、ダミーデータ３４を挿入して管理している。機密データ３０を読み出す際は、レジスタ２６に格納されているダミーデータ３４の位置及び容量に基づいて、ダミーデータ３４を除いて、分割機密データのエラーを分割パリティデータで検査し、エラーが生じている場合は、訂正して、読み出し、合成して機密データ３０としている。
【００４４】
本実施の形態では、本来不要なダミーデータ３４を故意に挿入して機密データ３０をメモリに記憶させて管理しているため、より、機密データ３０が判別されづらくなる。従って、さらに機密データ３０を保護することができ、ハッキングを抑制する効果が得られる。
【００４５】
［第３の実施の形態］
本実施の形態は、第１の実施の形態及び第２の実施の形態の機密データ管理システム１０及び半導体装置２０と略同様の構成及び動作を含むため、略同様の構成及び動作については、同一符号を付してその旨を記し、詳細な説明を省略する。
【００４６】
本実施の形態の機密データ管理システム及び機密データを管理するための半導体装置の概略構成は、第２の実施の形態と略同様の構成動作であるため、説明を省略する。
【００４７】
図７に、外部メモリ１８及びメモリ２８の少なくとも一方（上述と同様に「メモリ」と総称）に記憶されている本実施の形態の機密データ及びパリティデータの模式図を示す。本実施の形態では第２の実施の形態における機密データ及びパリティデータと略同様（図５参照）に、交互に記憶されていると共に、ダミーデータ３４が挿入された状態で管理されている。
【００４８】
さらに本実施の形態では、各分割機密データ（３０−Ａ〜３０−Ｄ）の一部が、故意に壊されたエラーデータ４０となっている。なお、エラーデータ４０は、各分割パリディデータ（３２−Ａ〜３２−Ｄ）により訂正可能なビット数を超えることがないようにしている。また、挿入するエラーデータ４０の数は、特に限定されず、各分割パリティデータ（３２−Ａ〜３２−Ｄ）により訂正可能な範囲内であればよい。セキュリティの向上の観点からは数が多い方が好ましい。しかしながら、エラーデータ４０の数が多くなると、機密データ３０の読み出し処理が煩雑になったりするため、これらを考慮して数を定めればよい。
【００４９】
また、本実施の形態では、全部の分割機密データ（３０−Ａ〜３０−Ｄ）にエラーデータ４０が挿入されているがこれに限らず、分割機密データ（３０−Ａ〜３０−Ｄ）の一部にエラーデータ４０が挿入されているようにしてもよい。なお、セキュリティの向上の観点からは、本実施の形態のように全部の分割機密データ（３０−Ａ〜３０−Ｄ）にエラーデータ４０が挿入されていることが好ましい。
【００５０】
本実施の形態の半導体装置２０における、メモリに格納（記憶）された機密データ３０の読出動作は、第２の実施の形態（図６参照）と同様である。なお、本実施の形態では、ステップＳ２００で分割機密データを分割パリティデータで検査した際に、エラーデータ４０が挿入されているため、次のステップＳ２０４でエラー有と判断されてステップＳ２０６へ進む。ステップＳ２０６では、エラーデータ４０をパリティデータ３２（分割パリティデータ（３２−Ａ〜３２−Ｄ）により訂正する。
【００５１】
このように本実施の形態の機密データ管理システム１０では、メモリ（外部メモリ１８・メモリ２８）に機密データ３０を分割した分割機密データ（３０−Ａ〜３０−Ｄ）の各々と対応する分割パリティデータ（３２−Ａ〜３２−Ｄ）を交互に記憶させる際に、機密データの一部をパリティデータで訂正可能な範囲内で壊したエラーデータ４０にして管理している。機密データ３０を読み出す際は、分割機密データ（３０−Ａ〜３０−Ｄ）のエラーデータ４０は分割パリティデータ（３２−Ａ〜３２−Ｄ）により訂正されるため、正常なデータとして機密データ３０を読み出すことができる。
【００５２】
本実施の形態では、パリティデータ３２によるエラー訂正機能を有効に活用することにより、機密データ３０の一部を故意に壊した状態でメモリに記憶させて管理している。これにより、不正アクセス（ハッキング）され、メモリ内のデータを不正に読み取られた場合であっても、正常な（正解の）データ値が判明しづらくなる。従って、さらに機密データ３０を保護することができ、ハッキングを抑制する効果が得られる。
【００５３】
なお、本実施の形態では、ダミーデータ３４が挿入された状態で機密データ３０が管理されている場合（第２の実施の形態の場合）について説明したがこれに限らず、ダミーデータ３４を挿入せずに機密データ３０が管理されている場合（第１の実施の形態の場合９に適用してもよい。
【００５４】
なお、上記各実施の形態では、外部メモリコントローラ２４やメモリ２８がＥＣＣ機能を備えた場合について説明したがこれに限らず、外部メモリコントローラやメモリ（内部メモリ）と別途に、パリティデータに基づいて機密データの検査及び訂正を行う機能部を設けてもよい。また、このような検査及び訂正は、回路的に行ってもよいし、ソフトウェア的に行ってもよい。
【００５５】
また、上記各実施の形態では、メモリ（外部メモリ１８、メモリ２８）に予め機密データ及びパリティデータが記憶されているものとして説明したが、メモリへの記憶方法は特に限定されない。ＣＰＵ２２により、ソフトウェア的に処理して、メモリに記憶させるようにしてもよい。
【００５６】
また、メモリに記憶させておく分割機密データ、分割パリティデータ、さらにダミーデータ３４の順番や容量等は上記各実施の形態に限定されない。なお、例えばランダムに並び替えた場合等は、レジスタ２６等に、それぞれの格納位置や容量を示す情報を格納しておくことが好ましい。
【００５７】
また、上記代２の実施の形態及び第３の実施の形態では、レジスタ２６を用いているがこれに限らず、メモリ等であってもよい。なお、簡便性の観点からレジスタを用いることが好ましい。
【００５８】
また、本実施の形態で説明した機密データ管理システム１０、半導体装置２０、外部メモリ１８、及びメモリ２８等の構成、動作等は一例であり、本発明の主旨を逸脱しない範囲内において状況に応じて変更可能であることは言うまでもない。
【符号の説明】
【００５９】
１０  機密データ管理システム
１８  外部メモリ
２０  半導体装置
２２  ＣＰＵ
２４  外部メモリコントローラ、２４−Ａ  ＥＣＣ
２６  レジスタ
２８  メモリ、２８−Ａ  ＥＣＣ
【図１】
2013222272.tif 000003
【図２】
2013222272.tif 000004
【図３】
2013222272.tif 000005
【図４】
2013222272.tif 000006
【図５】
2013222272.tif 000007
【図６】
2013222272.tif 000008
【図７】
2013222272.tif 000009