(57)【特許請求の範囲】
【請求項１】
複数の記憶部を有するメモリ装置と、
情報処理を実行する情報処理装置と、
を備え、
前記メモリ装置は、前記複数の記憶部として、
第１情報に関連した第２情報を記憶する第１記憶部と、
前記第１情報を記憶する第２記憶部と、
を有し、
前記情報処理装置は、
前記第１情報および前記第２情報を取得する取得手段と、
前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段と、
を有し、
前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能し、
前記情報処理装置は、
前記取得手段によって前記第２記憶部から取得された前記第１情報に基づいて第３情報を生成する生成手段、
をさらに有し、
前記判断手段は、前記第２情報と、前記生成手段によって生成された前記第３情報とを比較することによって、前記組み合わせの正当性を判断するメモリシステム。
【請求項２】
複数の記憶部を有するメモリ装置と、
情報処理を実行する情報処理装置と、
を備え、
前記メモリ装置は、前記複数の記憶部として、
第１情報に関連した第２情報を記憶する第１記憶部と、
前記第１情報を記憶する第２記憶部と、
を有し、
前記情報処理装置は、
前記第１情報および前記第２情報を取得する取得手段と、
前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段と、
を有し、
前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能し、
前記第１記憶部は、ＯＴＰ（One Time Programmable）領域を有し、
前記第２情報は、前記ＯＴＰ領域に記憶されるメモリシステム。
【請求項３】
前記第２記憶部は、前記第２情報をさらに記憶し、
前記ＯＴＰ領域に記憶される前記第２情報は、前記情報処理装置の指示に基づいて、前記第２記憶部から読み出され、前記第１記憶部の前記ＯＴＰ領域に書き込まれた情報である請求項２に記載のメモリシステム。
【請求項４】
前記生成手段は、前記第１情報と鍵とを用いて、ＭＡＣ（Message Authentication Code）値を前記第３情報として生成し、
前記第１記憶部は、第１情報と前記鍵と共通の共通鍵とを用いて予め生成されたＭＡＣ値を前記第２情報として記憶し、
前記判断手段は、前記第１記憶部に記憶されていたＭＡＣ値と、前記生成手段によって生成されたＭＡＣ値とを比較することによって、前記組み合わせの正当性を判断する請求項１に記載のメモリシステム。
【請求項５】
前記情報処理装置は、前記鍵を外部から読み出し不可能に保持する請求項４に記載のメモリシステム。
【請求項６】
前記第１情報は、前記メモリ装置に固有の識別情報である請求項１から請求項５のいずれかに記載のメモリシステム。
【請求項７】
前記情報処理装置は、
前記第１記憶部に対するコマンドの発行を制御する第１コマンド発行制御手段と、
前記第２記憶部に対するコマンドの発行を制御する第２コマンド発行制御手段と、
を有し、
前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記第１コマンド発行制御手段は、前記第１記憶部に対するコマンドの発行を停止し、前記第２コマンド発行制御手段は、前記第２記憶部に対するコマンドの発行を停止する請求項１から請求項６のいずれかに記載のメモリシステム。
【請求項８】
前記第１記憶部は、暗号化された暗号化情報を記憶し、
前記情報処理装置は、
情報の復号化に用いる鍵情報を生成する鍵生成手段と、
前記暗号化情報を取得し、取得した暗号化情報を前記鍵情報に基づいて復号化する復号化手段と、
をさらに有し、
前記判断手段によって、前記組み合わせが正当であると判断された場合、前記鍵生成手段は、前記鍵情報を生成し、
前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記鍵生成手段は、前記鍵情報を生成しない請求項１から請求項７のいずれかに記載のメモリシステム。
【請求項９】
情報処理を実行する情報処理装置に、情報を供給するメモリ装置であって、
第１情報に関連した第２情報を記憶する第１記憶部と、
前記第１情報を記憶する第２記憶部と、
を有し、
前記情報処理装置は、
前記第１情報および前記第２情報を取得する取得手段と、
前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段と、
を有し、
前記メモリ装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にする情報処理装置に情報を供給し、
前記情報処理装置は、
前記取得手段によって前記第２記憶部から取得された前記第１情報に基づいて第３情報を生成する生成手段、
をさらに有し、
前記判断手段は、前記第２情報と、前記生成手段によって生成された前記第３情報とを比較することによって、前記組み合わせの正当性を判断するメモリ装置。
【請求項１０】
メモリ装置から情報の提供を受けて、情報処理を実行する情報処理装置であって、
前記メモリ装置は、
第１情報に関連した第２情報を記憶する第１記憶部と、
前記第１情報を記憶する第２記憶部と、
を有し、
前記情報処理装置は、
前記第１情報および前記第２情報を取得する取得手段と、
前記取得手段によって前記第２記憶部から取得された前記第１情報に基づいて第３情報を生成する生成手段、
前記第２情報と、前記生成手段によって生成された前記第３情報とを比較することによって、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段と、
を有し、
前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にする情報処理装置。
【請求項１１】
メモリ装置と、情報処理を実行する情報処理装置とを含むメモリシステムの動作方法であって、
ａ）前記情報処理装置が、前記メモリ装置の第１記憶部に記憶された、第１情報に関連する第２情報、および前記メモリ装置の第２記憶部に記憶された前記第１情報を取得する工程と、
ｂ）前記情報処理装置が、前記ａ）工程において取得された前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する工程と、
ｃ）前記情報処理装置が、前記ｂ）工程において、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にする工程と、
を有し、
前記ｂ）工程において、前記情報処理装置は、前記第２記憶部から取得された前記第１情報に基づいて第３情報を生成し、
前記ｃ）工程において、前記情報処理装置は、前記第２情報と、前記第３情報とを比較することによって、前記組み合わせの正当性を判断するメモリシステムの動作方法。
【請求項１２】
複数の記憶部を有するメモリ装置と、
情報処理を実行する情報処理装置と、
を備え、
前記メモリ装置は、前記複数の記憶部として、
第１情報を記憶する第１記憶部と、
前記第１情報に関連した第２情報を記憶する第２記憶部と、
を有し、
前記情報処理装置は、
前記第１情報および前記第２情報を取得する取得手段と、
前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段と、
を有し、
前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にし、
前記情報処理装置は、
前記取得手段によって前記第１記憶部から取得された前記第１情報に基づいて第３情報を生成する生成手段、
をさらに有し、
前記判断手段は、前記第２情報と、前記生成手段によって生成された前記第３情報とを比較することによって、前記組み合わせの正当性を判断するメモリシステム。
【請求項１３】
複数の記憶部を有するメモリ装置と、
情報処理を実行する情報処理装置と、
を備え、
前記メモリ装置は、前記複数の記憶部として、
第１情報を記憶する第１記憶部と、
前記第１情報に関連した第２情報を記憶する第２記憶部と、
を有し、
前記情報処理装置は、
前記第１情報および前記第２情報を取得する取得手段と、
前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段と、
を有し、
前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にし、
前記第１記憶部は、ＯＴＰ（One Time Programmable）領域を有し、
前記第１情報は、前記ＯＴＰ領域に記憶されるメモリシステム。
【請求項１４】
前記第２記憶部は、前記第１情報をさらに記憶し、
前記ＯＴＰ領域に記憶される前記第１情報は、前記情報処理装置の指示に基づいて、前記第２記憶部から読み出され、前記第１記憶部の前記ＯＴＰ領域に書き込まれた情報である請求項１３に記載のメモリシステム。
【請求項１５】
前記生成手段は、前記第１情報と鍵とを用いて、ＭＡＣ（Message Authentication Code）値を前記第３情報として生成し、
前記第２記憶部は、第１情報と前記鍵と共通の共通鍵とを用いて予め生成されたＭＡＣ値を前記第２情報として記憶し、
前記判断手段は、前記第２記憶部に記憶されていたＭＡＣ値と、前記生成手段によって生成されたＭＡＣ値とを比較することによって、前記組み合わせの正当性を判断する請求項１２に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報の保護技術に関する。
【背景技術】
【０００２】
アプリケーションソフトウェアを記憶したメモリ装置を情報処理装置に装着し、当該情報処理装置において、メモリ装置に記憶されたアプリケーションソフトウェアを実行して所定の機能を実現する技術が知られている。
【０００３】
このようなメモリ装置においては、アプリケーションソフトウェアの読み出しによるメモリ装置の複製を防止するために、セキュリティ機能が搭載されている。例えば、特許文献１では、アプリケーションソフトウェアが暗号化された状態でメモリ装置に記憶され、情報処理装置は、当該アプリケーションソフトウェアを解読するための鍵データを取得することなく、アプリケーションソフトウェアを実行することができないように構成されている。したがって、特許文献１では、適切な鍵データを取得するまでは、メモリ装置の複製が制限されることになる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２５８８５０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、上記特許文献１では、暗号化されたアプリケーションソフトウェアに対応する鍵データが特定された場合には、アプリケーションソフトウェアを記憶したメモリ装置が許可無く無断で複製される可能性があった。
【０００６】
このようなメモリ装置が無断で複製される可能性は、アプリケーションソフトウェアを記憶したものに限らず、アプリケーションソフトウェア以外の他のデータ（例えば、アプリケーションソフトウェアの実行に利用するためのデータ）等を記憶したメモリ装置に対しても生じうる。
【０００７】
そこで、本発明は、メモリ装置の複製を困難にすることが可能な技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係るメモリシステムの第１の態様は、複数の記憶部を有するメモリ装置と、情報処理を実行する情報処理装置とを備え、前記メモリ装置は、前記複数の記憶部として、第１情報に関連した第２情報を記憶する第１記憶部と、前記第１情報を記憶する第２記憶部とを有し、前記情報処理装置は、前記第１情報および前記第２情報を取得する取得手段と、前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段とを有し、前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にし、前記情報処理装置は、前記取得手段によって前記第２記憶部から取得された前記第１情報に基づいて第３情報を生成する生成手段、をさらに有し、前記判断手段は、前記第２情報と、前記生成手段によって生成された前記第３情報とを比較することによって、前記組み合わせの正当性を判断する。
【００１０】
また、本発明に係るメモリシステムの第２の態様は、複数の記憶部を有するメモリ装置と、情報処理を実行する情報処理装置とを備え、前記メモリ装置は、前記複数の記憶部として、第１情報に関連した第２情報を記憶する第１記憶部と、前記第１情報を記憶する第２記憶部とを有し、前記情報処理装置は、前記第１情報および前記第２情報を取得する取得手段と、前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段とを有し、前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にし、前記第１記憶部は、ＯＴＰ（One Time Programmable）領域を有し、前記第２情報は、前記ＯＴＰ領域に記憶される。
【００１１】
また、本発明に係るメモリシステムの第３の態様は、上記第１の態様であって、前記第２記憶部は、前記第２情報をさらに記憶し、前記ＯＴＰ領域に記憶される前記第２情報は、前記情報処理装置の指示に基づいて、前記第２記憶部から読み出され、前記第１記憶部の前記ＯＴＰ領域に書き込まれた情報である。
【００１２】
また、本発明に係るメモリシステムの第４の態様は、上記第１の態様であって、前記生成手段は、前記第１情報と鍵とを用いて、ＭＡＣ（Message Authentication Code）値を前記第３情報として生成し、前記第１記憶部は、第１情報と前記鍵と共通の共通鍵とを用いて予め生成されたＭＡＣ値を前記第２情報として記憶し、前記判断手段は、前記第１記憶部に記憶されていたＭＡＣ値と、前記生成手段によって生成されたＭＡＣ値とを比較することによって、前記組み合わせの正当性を判断する。
【００１３】
また、本発明に係るメモリシステムの第５の態様は、上記第４の態様であって、前記情報処理装置は、前記鍵を外部から読み出し不可能に保持する。
【００１４】
また、本発明に係るメモリシステムの第６の態様は、上記第１の態様から上記第５の態様のいずれかであって、前記第１情報は、前記メモリ装置に固有の識別情報である。
【００１５】
また、本発明に係るメモリシステムの第７の態様は、上記第１の態様から上記第６の態様のいずれかであって、前記情報処理装置は、前記第１記憶部に対するコマンドの発行を制御する第１コマンド発行制御手段と、前記第２記憶部に対するコマンドの発行を制御する第２コマンド発行制御手段とを有し、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記第１コマンド発行制御手段は、前記第１記憶部に対するコマンドの発行を停止し、前記第２コマンド発行制御手段は、前記第２記憶部に対するコマンドの発行を停止する。
【００１６】
また、本発明に係るメモリシステムの第８の態様は、上記第１の態様から上記第７の態様のいずれかであって、前記第１記憶部は、暗号化された暗号化情報を記憶し、前記情報処理装置は、情報の復号化に用いる鍵情報を生成する鍵生成手段と、前記暗号化情報を取得し、取得した暗号化情報を前記鍵情報に基づいて復号化する復号化手段とをさらに有し、前記判断手段によって、前記組み合わせが正当であると判断された場合、前記鍵生成手段は、前記鍵情報を生成し、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記鍵生成手段は、前記鍵情報を生成しない。
【００１８】
また、本発明に係るメモリ装置は、情報処理を実行する情報処理装置に、情報を供給するメモリ装置であって、第１情報に関連した第２情報を記憶する第１記憶部と、前記第１情報を記憶する第２記憶部とを有し、前記情報処理装置は、前記第１情報および前記第２情報を取得する取得手段と、前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段とを有し、前記メモリ装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にする情報処理装置に情報を供給し、前記情報処理装置は、前記取得手段によって前記第２記憶部から取得された前記第１情報に基づいて第３情報を生成する生成手段、をさらに有し、前記判断手段は、前記第２情報と、前記生成手段によって生成された前記第３情報とを比較することによって、前記組み合わせの正当性を判断する。
【００１９】
また、本発明に係る情報処理装置は、メモリ装置から情報の提供を受けて、情報処理を実行する情報処理装置であって、前記メモリ装置は、第１情報に関連した第２情報を記憶する第１記憶部と、前記第１情報を記憶する第２記憶部とを有し、前記情報処理装置は、前記第１情報および前記第２情報を取得する取得手段と、前記取得手段によって前記第２記憶部から取得された前記第１情報に基づいて第３情報を生成する生成手段と、前記第２情報と、前記生成手段によって生成された前記第３情報とを比較することによって、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段とを有し、前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にする。
【００２０】
また、本発明に係るメモリシステムの動作方法は、メモリ装置と、情報処理を実行する情報処理装置とを含むメモリシステムの動作方法であって、ａ）前記情報処理装置が、前記メモリ装置の第１記憶部に記憶された、第１情報に関連する第２情報、および前記メモリ装置の第２記憶部に記憶された前記第１情報を取得する工程と、ｂ）前記情報処理装置が、前記ａ）工程において取得された前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する工程と、ｃ）前記情報処理装置が、前記ｂ）工程において、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にする工程とを有し、前記ｂ）工程において、前記情報処理装置は、前記第２記憶部から取得された前記第１情報に基づいて第３情報を生成し、前記ｃ）工程において、前記情報処理装置は、前記第２情報と、前記第３情報とを比較することによって、前記組み合わせの正当性を判断する。
【００２１】
また、本発明に係るメモリシステムの第９の態様は、複数の記憶部を有するメモリ装置と、情報処理を実行する情報処理装置とを備え、前記メモリ装置は、前記複数の記憶部として、第１情報を記憶する第１記憶部と、前記第１情報に関連した第２情報を記憶する第２記憶部とを有し、前記情報処理装置は、前記第１情報および前記第２情報を取得する取得手段と、前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段とを有し、前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にし、前記情報処理装置は、前記取得手段によって前記第１記憶部から取得された前記第１情報に基づいて第３情報を生成する生成手段、をさらに有し、前記判断手段は、前記第２情報と、前記生成手段によって生成された前記第３情報とを比較することによって、前記組み合わせの正当性を判断する。
【００２３】
また、本発明に係るメモリシステムの第１０の態様は、複数の記憶部を有するメモリ装置と、情報処理を実行する情報処理装置と、を備え、前記メモリ装置は、前記複数の記憶部として、第１情報を記憶する第１記憶部と、前記第１情報に関連した第２情報を記憶する第２記憶部と、を有し、前記情報処理装置は、前記第１情報および前記第２情報を取得する取得手段と、前記第１情報および前記第２情報を用いて、前記第１記憶部と前記第２記憶部との組み合わせの正当性を判断する判断手段と、を有し、前記情報処理装置は、前記判断手段によって、前記組み合わせが正当でないと判断された場合、前記情報処理を実行不可能にし、前記第１記憶部は、ＯＴＰ（One Time Programmable）領域を有し、前記第１情報は、前記ＯＴＰ領域に記憶される。
【００２４】
また、本発明に係るメモリシステムの第１１の態様は、上記第１０の態様であって、前記第２記憶部は、前記第１情報をさらに記憶し、前記ＯＴＰ領域に記憶される前記第１情報は、前記情報処理装置の指示に基づいて、前記第２記憶部から読み出され、前記第１記憶部の前記ＯＴＰ領域に書き込まれた情報である。
【００２５】
また、本発明に係るメモリシステムの第１２の態様は、上記第９の態様であって、前記生成手段は、前記第１情報と鍵とを用いて、ＭＡＣ（Message Authentication Code）値を前記第３情報として生成し、前記第２記憶部は、第１情報と前記鍵と共通の共通鍵とを用いて予め生成されたＭＡＣ値を前記第２情報として記憶し、前記判断手段は、前記第２記憶部に記憶されていたＭＡＣ値と、前記生成手段によって生成されたＭＡＣ値とを比較することによって、前記組み合わせの正当性を判断する。
【発明の効果】
【００２６】
本発明によれば、メモリ装置の複製を困難にすることが可能になる。
【図面の簡単な説明】
【００２７】
【図１】メモリ情報保護システムの外観構成を示す図である。
【図２】メモリ情報保護システムで実行されるバインド認証の概要を説明するための図である。
【図３】第１実施形態に係るメモリ情報保護システムの機能構成を示すブロック図である。
【図４】メッセージ認証コード生成部の詳細構成を示す図である。
【図５】メモリ情報保護システムの初期化動作を説明するための図である。
【図６】メモリ情報保護システムのバインド認証動作を説明するための図である。
【図７】第２実施形態に係るメモリ情報保護システムの機能構成を示すブロック図である。
【発明を実施するための形態】
【００２８】
以下、各実施形態について図面を参照して説明する。なお、異なる図面において同一の符号を付した要素は、同一または相応する要素を示すものとする。
【００２９】
＜１．第１実施形態＞
［１−１．構成概要］
図１は、メモリ情報保護システム（単に「メモリシステム」とも称する）１Ａの外観構成を示す図である。図２は、メモリ情報保護システム１Ａで実行されるバインド認証の概要を説明するための図である。
【００３０】
図１に示されるように、メモリ情報保護システム１Ａは、情報処理装置１０とメモリ装置２０Ａとを有している。
【００３１】
メモリ装置２０Ａは、マスクＲＯＭまたはフラッシュメモリ等の半導体メモリで構成された複数の記憶部を有している。
【００３２】
メモリ装置２０Ａは、これら複数の記憶部のうち少なくとも１つの記憶部に、アプリケーションの実施に用いるアプリケーション情報を記憶している。当該アプリケーション情報には、例えば、一種のコンピュータ装置である情報処理装置１０で実行されるアプリケーションソフトウェアとしてのプログラムおよび／または、アプリケーションソフトウェアを実行する際に使用されるデータ等が含まれている。
【００３３】
また、メモリ装置２０Ａは、複数の記憶部のうち、少なくとも２つの記憶部各々に、それぞれ相互に関連した情報（「関連情報」とも称する）を記憶している。
【００３４】
このメモリ装置２０Ａは、例えばカードまたはカートリッジのような態様を有している。当該メモリ装置２０Ａは、情報処理装置１０に脱着自在に構成され、メモリ装置２０Ａは、情報処理装置１０に装着された状態で使用される。
【００３５】
メモリ装置２０Ａに格納された情報を利用する情報処理装置１０には、例えば、パーソナルコンピュータ（パソコン）、ＰＤＡ（Personal Digital Assistant）のような携帯情報端末装置、または画像処理装置が含まれる。また、メモリ装置２０Ａに記憶されたアプリケーションソフトウェアがゲームプログラムである場合は、情報処理装置１０は、据置型ゲーム機または携帯ゲーム機等のゲーム装置本体として機能する。
【００３６】
このようなメモリ情報保護システム１Ａでは、情報処理装置１０が、メモリ装置２０Ａ内の複数の記憶部のうち、少なくとも２つの記憶部各々に記憶された関連情報を用いて、当該少なくとも２つの記憶部の組み合わせの正当性を判断する「バインド認証」を行う。
【００３７】
具体的には、図２に示されるように、情報処理装置１０は、メモリ装置２０Ａ内の第１半導体メモリ２０１に記憶された関連情報Ｄ１と、第２半導体メモリ２０２に記憶された関連情報Ｄ２とを取得する。そして、情報処理装置１０は、取得した各関連情報Ｄ１，Ｄ２を用いて第１半導体メモリ２０１と第２半導体メモリ２０２との組み合わせの正当性を判断するバインド認証を行う。
【００３８】
バインド認証において、記憶部の組み合わせの正当性が確認されなかった場合、情報処理装置１０は、装着されたメモリ装置を非正規のものとみなして、情報処理装置１０における情報処理を実行不可能にする。
【００３９】
なお、このようなバインド認証は、情報処理装置１０において通常動作が開始される前、すなわち情報処理装置１０の電源投入に応じて、情報処理装置１０が起動されるとともに、電源がメモリ装置２０Ａに供給されて、システムとしての動作が開始される時点において実行されることが好ましい。また、図２では、図示簡単化のため、メモリ装置２０Ａが２つの半導体メモリ２０１，２０２を記憶部として有している態様を示しているが、当該メモリ装置２０Ａは、２つの半導体メモリ以外に他の記憶部を有していてもよい。すなわち、この場合、２つの半導体メモリと他の記憶部とが、上記複数の記憶部に相当し、バインド認証において組み合わせの認証対象となる２つの半導体メモリが、上記少なくとも２つの記憶部に相当することになる。
【００４０】
このようにメモリ情報保護システムは、メモリ装置内の少なくとも２つの記憶部の組み合わせの正当性が確認されなかった場合、装着されたメモリ装置を非正規のものとみなして、情報処理装置における情報処理を実行不可能にする構成であるため、非正規のメモリ装置を用いてアプリケーションを実施することが困難になる。すなわち、正規のメモリ装置に記憶されたデータを抜き出して、メモリ装置を単純に複製しただけでは、バインド認証を通過することができないため、無断複製者によるメモリ装置の複製は困難になる。
【００４１】
［１−２．機能ブロック］
次に、メモリ情報保護システム１Ａの機能について詳述する。図３は、第１実施形態に係るメモリ情報保護システム１Ａの機能構成を示すブロック図である。図４は、メッセージ認証コード生成部の詳細構成を示す図である。
【００４２】
図３に示されるように、メモリ情報保護システム１Ａを構成する情報処理装置１０は、全体制御部１００と、メモリ制御部（メモリコントローラ）１１０とを備えている。
【００４３】
全体制御部１００は、マイクロコンピュータとして構成され、主にＣＰＵ、ＲＡＭおよびＲＯＭ等を備える。全体制御部１００は、ＲＯＭ内に格納されるプログラムを読み出し、当該プログラムをＣＰＵで実行することによって、各種機能を実現する。
【００４４】
具体的には、全体制御部１００は、上述のプログラムの実行によって、コマンド生成部１０１を機能的に実現する。
【００４５】
コマンド生成部１０１は、メモリ装置２０Ａへの指令に関する命令コード、若しくは当該命令コードおよびアドレスを含むコマンドを生成する機能を有している。例えば、メモリ装置２０Ａに格納されたデータを読み出す際には、読出命令コードと読出対象となるデータのアドレスとを含むコマンド（「読出コマンド」とも称する）がコマンド生成部１０１によって生成される。
【００４６】
コマンド生成部１０１で生成されたコマンドは、内部バス１２０を介してメモリ制御部１１０に入力される。
【００４７】
メモリ制御部１１０は、コマンド発行制御部１１１，１１９と、暗号化部１１２，１１８と、復号化部１１３，１１７と、メッセージ認証コード生成部１１４と、比較器１１５と、鍵生成部１１６とを有し、メモリ装置２０Ａに対する各種制御を行う。
【００４８】
コマンド発行制御部１１１は、メモリ装置２０Ａ内の第１記憶部２０１に対するコマンドの発行を制御する。
【００４９】
もう一方のコマンド発行制御部１１９は、メモリ装置２０Ａ内の第２記憶部２０２に対するコマンドの発行を制御する。
【００５０】
暗号化部１１２，１１８は、入力された情報を暗号化して出力する機能を有している。暗号化部１１２によって暗号化された情報は、インターフェース（不図示）を介してメモリ装置２０Ａ内の第１記憶部２０１に供給される。また、暗号化部１１８によって暗号化された情報は、インターフェースを介してメモリ装置２０Ａ内の第２記憶部２０２に供給される。
【００５１】
復号化部１１３，１１７は、メモリ装置２０Ａから伝送されてきた情報を復号化して出力する機能を有している。すなわち、復号化部１１３は、メモリ装置２０Ａの第１記憶部２０１から伝送されてきた情報を復号化し、復号化部１１７は、メモリ装置２０Ａの第２記憶部２０２から伝送されてきた情報を復号化する。
【００５２】
メッセージ認証コード生成部１１４は、第２記憶部２０２に記憶されている固有ＩＤ（「ユニークＩＤ」または「ＵＩＤ」とも称する）２Ｕに基づいて、メッセージ認証コード（ＭＡＣ:Message Authentication Code）を生成する機能を有している。
【００５３】
具体的には、メッセージ認証コード生成部１１４は、図４に示されるように、ハードウェア鍵１４１と演算部１４２とを有している。
【００５４】
ハードウェア鍵１４１は、ハードウェアとしてチップ上に実装されている固定的な鍵データである。ハードウェア鍵１４１は、例えば、ハードウェア鍵１４１のビット長に応じた複数のインバータ（ＮＯＴ回路）を用いて、各インバータの入力を、電源電圧（Ｖｃｃ）またはＧＮＤ（接地電位）にクランプすることによって実現することができる。
【００５５】
演算部１４２は、入力されたハードウェア鍵１４１および固有ＩＤ２Ｕに基づいて、所定のＭＡＣ演算を行い、メッセージ認証コード（「ＭＡＣ値」とも称する）を出力する。なお、演算部１４２で実行される所定のＭＡＣ演算の手法としては、例えば、ＳＨＡ−１、ＭＤ５などのハッシュ関数を用いた演算手法、或いは、ＣＢＣ−ＭＡＣ等のブロック暗号アルゴリズムを用いた演算手法を採用することができる。
【００５６】
このように、メッセージ認証コード生成部１１４は、ハードウェア鍵１４１および固有ＩＤ２Ｕを用いて、ＭＡＣ値を生成する生成手段として機能する。
【００５７】
メッセージ認証コード生成部１１４によって生成されたＭＡＣ値は、比較器１１５に出力される。
【００５８】
比較器１１５は、メッセージ認証コード生成部１１４によって生成されたＭＡＣ値と、第１記憶部２０１から取得されたＭＡＣ値とを比較して、比較結果を出力する。詳細には、比較器１１５は、２つのＭＡＣ値が一致する場合は、一致することを示す信号（一致信号）を比較結果として出力し、２つのＭＡＣ値が一致しない場合は、一致しないことを示す信号（不一致信号）を比較結果として出力する。
【００５９】
比較器１１５から出力された比較結果は、コマンド発行制御部１１１，１１９に出力される。上述のコマンド発行制御部１１１，１１９では、比較結果として不一致信号が入力された場合、以降のコマンド発行が停止される。
【００６０】
また、比較器１１５から出力された比較結果は、鍵生成部１１６にも出力される。
【００６１】
鍵生成部１１６は、比較器１１５から入力された比較結果に応じて鍵情報を生成する機能を有している。
【００６２】
具体的には、２つのＭＡＣ値が一致した場合、すなわち一致信号が比較結果として入力された場合、鍵生成部１１６は、固有ＩＤに基づいて、情報の暗復号化に用いる鍵情報を生成する。一方、２つのＭＡＣ値が一致しない場合、すなわち不一致信号が比較結果として入力された場合、鍵生成部１１６は、固有ＩＤを無効として、暗号鍵の生成を行わない。
【００６３】
生成された鍵情報は、暗号化部１１２および復号化部１１３に出力され、暗号化部１１２における暗号化処理、復号化部１１３における復号化処理に用いられる。
【００６４】
一方、上述のような構成を有する情報処理装置１０に装着されるメモリ装置２０Ａは、第１記憶部２０１と、当該第１記憶部２０１を制御する第１メモリ内制御部２１１と、第２記憶部２０２と、当該第２記憶部２０２を制御する第２メモリ内制御部２１２とを有している。
【００６５】
第１記憶部２０１は、マスクＲＯＭ、フラッシュメモリ、またはＥＰＲＯＭ等の不揮発性の半導体メモリであって、暗号化されたデータ（暗号化データ）を記憶する通常の記憶領域２３１を有している。また、第１記憶部２０１は、上記通常の記録領域２３１の他に、ＯＴＰ（One Time Programmable）領域２３２をも有している。ＯＴＰ領域２３２は、１回限りの書込みが可能な領域であり、書き込み後はＯＴＰ領域２３２に記憶された情報の消去および書き換えが不可能になる。このようなＯＴＰ領域２３２は、第１記憶部２０１の全記憶領域のうちの一部を、ヒューズタイプの記憶領域として物理的に確保することによって実現してもよく、或いは第１記憶部２０１の全記憶領域のうちの一部を再書き込み不能となるようにメモリ内制御部２１１に制御させることによって実現してもよい。
【００６６】
第１メモリ内制御部２１１は、コマンド解析部２２１を有している。
【００６７】
コマンド解析部２２１は、コマンド発行制御部１１１から発行された、第１記憶部２０１に対するコマンドを解析して、当該コマンドに応じた所定動作の実行指示を行う。例えば、コマンド発行制御部１１１から発行されたコマンドが、第１記憶部２０１からのデータの読出コマンドである場合は、当該読出コマンドから読出命令コードと読出アドレスデータとを抽出して、読出信号と読出アドレスデータとを第１記憶部２０１に与える。読出信号および読出アドレスデータを受けた第１記憶部２０１は、読出アドレスに格納されている読出対象のデータを出力する。
【００６８】
第２記憶部２０２は、マスクＲＯＭ、フラッシュメモリ、またはＥＰＲＯＭ等の不揮発性の半導体メモリであって、プログラムおよび／またはデータ等のアプリケーション情報を記憶している。また、第２記憶部２０２は、メモリ装置２０Ａに固有の識別情報である固有ＩＤ（ユニークＩＤ）２Ｕと、当該固有ＩＤ２Ｕおよびハードウェア鍵１４１と共通の鍵（共通鍵）を用いて予め生成されるＭＡＣ値２Ｍとをさらに記憶している。固有ＩＤ２ＵおよびＭＡＣ値２Ｍは、工場出荷時等に第２記憶部２０２に予め記憶される。
【００６９】
なお、ＭＡＣ値２Ｍは、固有ＩＤ２Ｕを用いて生成される情報であることから、固有ＩＤ２ＵとＭＡＣ値２Ｍとは、互いに関連した「関連情報」とも称せられる。
【００７０】
第２メモリ内制御部２１２は、復号化部２２５と、コマンド解析部２２６と、暗号化部２２７とを有している。
【００７１】
復号化部２２５は、コマンド発行制御部１１９から発行され、そして暗号化部１１８によって暗号化された暗号化コマンドを復号化する機能を有している。復号化部２２５によって復号化されたコマンドは、コマンド解析部２２６に伝送される。
【００７２】
コマンド解析部２２６は、上記コマンド解析部２２１と同様の機能を有し、第２記憶部２０２に対するコマンドを解析して、当該コマンドに応じた所定動作の実行指示を行う。
【００７３】
暗号化部２２７は、第２記憶部２０２から読み出されたデータを暗号化する機能を有している。暗号化部２２７で暗号化された暗号化データは、インターフェースを介して情報処理装置１０に供給される。
【００７４】
［１−３．メモリ情報保護システム１Ａの初期化動作］
ここで、メモリ情報保護システム１Ａの動作について説明する。メモリ情報保護システム１Ａの動作には、電源投入時に実行される初期化動作と、初期化動作終了後に実行されるバインド認証動作とが存在する。以下では、初期化動作およびバインド認証動作についてこの順序で説明する。図５は、メモリ情報保護システム１Ａの初期化動作を説明するための図である。
【００７５】
初期化動作は、第２記憶部２０２に記憶されているＭＡＣ値２Ｍを第１記憶部２０１のＯＴＰ領域２３２に格納する動作であり、上述のとおり電源投入時に実行される。
【００７６】
具体的には、初期化動作開始前には、メモリ装置２０Ａが情報処理装置１０に装着されて、メモリ装置２０Ａと情報処理装置１０とが電気的に接続される。そして、情報処理装置１０の電源投入に応じて、情報処理装置１０が起動されるとともに、電源が情報処理装置１０からメモリ装置２０Ａに供給されて、初期化動作が開始される。
【００７７】
図５に示されるように、初期化動作では、まず、コマンド生成部１０１は、第２記憶部２０２に記憶されたＭＡＣ値２Ｍの読出コマンドを生成し、生成したＭＡＣ値２Ｍの読出コマンドを、コマンド発行制御部１１９に設定する（図５の（Ｓ１））。
【００７８】
そして、コマンド発行制御部１１９は、ＭＡＣ値２Ｍの読出コマンドを発行する（Ｓ２）。発行されたＭＡＣ値２Ｍの読出コマンドは、暗号化部１１８に伝送される。
【００７９】
暗号化部１１８は、ＭＡＣ値２Ｍの読出コマンドに対して暗号化処理を施す。暗号化部１１８で暗号化された、ＭＡＣ値２Ｍの読出コマンドは、メモリ装置２０Ａの復号化部２２５に伝送される（Ｓ３）。
【００８０】
復号化部２２５は、暗号化されたＭＡＣ値２Ｍの読出コマンドに対して復号化処理を施す。復号化された、ＭＡＣ値２Ｍの読出コマンドは、コマンド解析部２２６に出力される（Ｓ４）。
【００８１】
コマンド解析部２２６は、ＭＡＣ値２Ｍの読出コマンドを解析して、ＭＡＣ値２Ｍの読出信号と読出アドレスデータとを第２記憶部２０２に与え、第２記憶部２０２に記憶されたＭＡＣ値２Ｍの読出動作を実行させる（Ｓ５）。
【００８２】
第２記憶部２０２は、ＭＡＣ値２Ｍの読出動作の実行指示に応じて、記憶しているＭＡＣ値２Ｍを暗号化部２２７に出力する（Ｓ６）。
【００８３】
暗号化部２２７は、第２記憶部２０２から入力されるＭＡＣ値２Ｍに暗号化処理を施す。暗号化されたＭＡＣ値２Ｍは、情報処理装置１０の復号化部１１７に伝送される（Ｓ７）。
【００８４】
復号化部１１７は、暗号化されたＭＡＣ値２Ｍに復号化処理を施す。復号化されたＭＡＣ値２Ｍは、コマンド発行制御部１１１に伝送される（Ｓ８）。
【００８５】
ここで、コマンド生成部１０１は、第１記憶部２０１に設けられたＯＴＰ領域２３２へＭＡＣ値２Ｍを書き込むための書込コマンド（ＭＡＣ値書込コマンド）を生成し、生成したＭＡＣ値書込コマンドを、コマンド発行制御部１１１に設定する（Ｓ９）。
【００８６】
コマンド発行制御部１１１は、ＭＡＣ値書込コマンドを発行する（Ｓ１０）。発行されたＭＡＣ値書込コマンドは、メモリ装置２０Ａのコマンド解析部２２１に伝送される。
【００８７】
コマンド解析部２２１は、ＭＡＣ値書込コマンドを解析して、ＭＡＣ値２ＭをＯＴＰ領域２３２に記憶する書込動作を第１記憶部２０１に実行させる（Ｓ１１）。当該書込動作によって、ＭＡＣ値２Ｍは、第１記憶部２０１のＯＴＰ領域２３２に記憶されることになる。
【００８８】
このように、初期化動作では、情報処理装置１０の指示に基づいて、第２記憶部２０２に記憶されていたＭＡＣ値２Ｍが読み出され、当該ＭＡＣ値２Ｍが第１記憶部２０１のＯＴＰ領域２３２に書き込まれることになる。なお、初期化動作は、情報処理装置１０を起動する際に毎回実行される動作としてもよく、メモリ装置２０Ａに最初に電源が供給されたときに１度だけ実行される動作としてもよい。仮に、初期化動作が情報処理装置１０を起動する際に毎回実行される動作であったとしても、ＯＴＰ領域２３２は、情報の消去および書き換えが不能な記憶領域であるため、最初の初期化動作によってＯＴＰ領域２３２に記憶されたＭＡＣ値２Ｍは変更されない。すなわち、最初の初期化動作以降に実行される初期化動作では、ＯＴＰ領域２３２への再書込は実施されない。
【００８９】
［１−４．メモリ情報保護システム１Ａのバインド認証動作］
次に、バインド認証動作について詳述する。図６は、メモリ情報保護システム１Ａのバインド認証動作を説明するための図である。
【００９０】
バインド認証動作は、メモリ装置２０Ａ内の第１記憶部２０１と第２記憶部２０２との組み合わせの正当性を判断する動作であり、上記初期化動作終了後に、或いは、初期化動作完了済みのメモリ装置２０Ａを装着して、情報処理装置１０を起動する際に実行される。
【００９１】
具体的には、図６に示されるように、バインド認証動作では、まず、コマンド生成部１０１が、第２記憶部２０２に記憶された固有ＩＤ２Ｕの読出コマンドを生成し、生成した固有ＩＤ２Ｕの読出コマンドを、コマンド発行制御部１１９に設定する（図６の（Ｂ１））。
【００９２】
そして、コマンド発行制御部１１９は、固有ＩＤ２Ｕの読出コマンドを発行する（Ｂ２）。発行された固有ＩＤ２Ｕの読出コマンドは、暗号化部１１８に伝送される。
【００９３】
暗号化部１１８は、固有ＩＤ２Ｕの読出コマンドに対して暗号化処理を施す。暗号化部１１８で暗号化された、固有ＩＤ２Ｕの読出コマンドは、メモリ装置２０Ａの復号化部２２５に伝送される（Ｂ３）。
【００９４】
復号化部２２５は、暗号化された固有ＩＤ２Ｕの読出コマンドに対して復号化処理を施す。復号化された、固有ＩＤ２Ｕの読出コマンドは、コマンド解析部２２６に出力される（Ｂ４）。
【００９５】
コマンド解析部２２６は、固有ＩＤ２Ｕの読出コマンドを解析して、固有ＩＤ２Ｕの読出信号と読出アドレスデータとを第２記憶部２０２に与え、第２記憶部２０２に記憶された固有ＩＤ２Ｕの読出動作を実行させる（Ｂ５）。
【００９６】
第２記憶部２０２は、固有ＩＤ２Ｕの読出動作の実行指示に応じて、記憶している固有ＩＤ２Ｕを暗号化部２２７に出力する（Ｂ６）。
【００９７】
暗号化部２２７は、第２記憶部２０２から入力される固有ＩＤ２Ｕに暗号化処理を施す。暗号化された固有ＩＤ２Ｕは、情報処理装置１０の復号化部１１７に伝送される（Ｂ７）。
【００９８】
復号化部１１７は、暗号化された固有ＩＤ２Ｕに復号化処理を施して、復号化された固有ＩＤ２Ｕを取得する。このように、コマンド発行制御部１１９、暗号化部１１８および復号化部１１７は、第２記憶部２０２に記憶されていた固有ＩＤ２Ｕを取得する取得手段として機能する。復号化された固有ＩＤ２Ｕは、メッセージ認証コード生成部１１４および鍵生成部１１６に伝送される（Ｂ８）。
【００９９】
メッセージ認証コード生成部１１４は、固有ＩＤ２Ｕを用いて、当該固有ＩＤ２ＵのＭＡＣ値（メッセージ認証コード）を生成し、生成したＭＡＣ値を比較器１１５に出力する（Ｂ９）。
【０１００】
ここで、コマンド生成部１０１は、第１記憶部２０１のＯＴＰ領域２３２に記憶された情報の読出コマンド（ＯＴＰ領域情報読出コマンド）を生成し、生成したＯＴＰ領域情報読出コマンドを、コマンド発行制御部１１１に設定する（Ｂ１０）。
【０１０１】
そして、コマンド発行制御部１１１は、ＯＴＰ領域情報読出コマンドを発行する（Ｂ１１）。発行された当該ＯＴＰ領域情報読出コマンドは、メモリ装置２０Ａのコマンド解析部２２１に伝送される。
【０１０２】
コマンド解析部２２１は、ＯＴＰ領域情報読出コマンドを解析して、ＯＴＰ領域２３２に記憶された情報の読出動作を実行させる（Ｂ１２）。
【０１０３】
第１記憶部２０１は、ＯＴＰ領域情報の読出動作の実行指示に応じて、ＯＴＰ領域２３２に記憶しているＭＡＣ値を出力する（Ｂ１３）。ＯＴＰ領域２３２に記憶されているＭＡＣ値は、バインド認証動作の前に実行された初期化動作によって記憶された情報であり、当該読出動作によって、情報処理装置１０の比較器１１５に伝送される。
【０１０４】
このように、コマンド発行制御部１１１は、第１記憶部２０１のＯＴＰ領域２３２に記憶されていたＭＡＣ値を取得する取得手段として機能する。
【０１０５】
比較器１１５は、メッセージ認証コード生成部１１４によって生成されたＭＡＣ値と、第１記憶部２０１のＯＴＰ領域２３２に記憶されていたＭＡＣ値とを比較して、２つのＭＡＣ値が一致するか否かを示す比較結果を出力する（Ｂ１４）。比較器１１５から出力された比較結果は、コマンド発行制御部１１１，１１９と鍵生成部１１６とに入力される。
【０１０６】
比較器１１５から出力される比較結果は、バインド認証の認証結果を示している。すなわち、２つのＭＡＣ値が一致することを示す一致信号が比較結果として出力された場合、バインド認証は成立したことになる。一方、２つのＭＡＣ値が一致しないことを示す不一致信号が比較結果として出力された場合、バインド認証は不成立となる。
【０１０７】
このように、比較器１１５は、第１記憶部２０１と第２記憶部２０２との組み合わせの正当性を判断する判断手段として機能する。
【０１０８】
バインド認証が成立した場合、すなわち、第１記憶部２０１と第２記憶部２０２との組み合わせが正当であると判断された場合、鍵生成部１１６は、復号化部１１７から入力される固有ＩＤ２Ｕに基づいて、情報の暗復号化に用いる鍵情報を生成し、当該鍵情報を暗号化部１１２および復号化部１１３に出力する（Ｂ１５）。
【０１０９】
以後、メモリ情報保護システム１Ａでは、第１記憶部２０１に書き込む書込データは、暗号化部１１２において当該鍵情報を用いて暗号化された上で、メモリ装置２０Ａに供給されることになる。また、第１記憶部２０１に記憶されている暗号化データは、復号化部１１３において当該鍵情報を用いて復号化することが可能になる。
【０１１０】
なお、バインド認証が成立しなかった場合、すなわち、第１記憶部２０１と第２記憶部２０２との組み合わせが正当でないと判断された場合、鍵生成部１１６は、鍵情報を生成しない。これにより、バインド認証が不成立だった場合は、第１記憶部２０１へデータを書き込むこと、および第１記憶部２０１に記憶された暗号化データ（暗号化情報）を復号化して、利用可能なデータを取得することが不可能になる。
【０１１１】
また、バインド認証が不成立だった場合、コマンド発行制御部１１１，１１９は、コマンドの受け付けを拒否して、コマンドの発行を停止する。
【０１１２】
このように、情報処理装置１０は、通常の情報処理の開始前に、メモリ装置２０Ａ内の記憶部の組み合わせの正当性を判断するバインド認証を行い、バインド認証が成立しなかった場合、情報処理装置１０における情報処理を実行不可能にする。
【０１１３】
以上のように、メモリ情報保護システム１Ａは、複数の記憶部を有するメモリ装置２０Ａと、情報処理を実行する情報処理装置１０とを備えている。メモリ装置２０Ａは、複数の記憶部として、第１情報（固有ＩＤ）に関連した第２情報（ＭＡＣ値）を記憶する第１記憶部２０１と、第１情報を記憶する第２記憶部２０２とを有している。情報処理装置１０は、第１情報および第２情報を取得する取得手段と、第１情報および第２情報を用いて、第１記憶部２０１と第２記憶部２０２との組み合わせの正当性を判断する比較器１１５とを有している。そして、情報処理装置１０は、比較器１１５によって、第１記憶部２０１と第２記憶部２０２との組み合わせが正当でないと判断された場合、情報処理を実行不可能にする。
【０１１４】
このように、メモリ情報保護システム１Ａでは、情報処理装置において情報処理を実行させるためには、メモリ装置内の記憶部の組み合わせの正当性が要求されるため、無断複製者は、メモリ装置２０Ａを複製するために、メモリ装置内の記憶部の正当な組み合わせを特定することが必要になる。したがって、メモリ情報保護システム１Ａでは、無断複製者によるメモリ装置の複製は困難になる。
【０１１５】
＜２．第２実施形態＞
次に、本発明の第２実施形態について説明する。上記第２実施形態に係るメモリ情報保護システム１Ｂは、ＭＡＣ値が予め第１記憶部２０１に記憶されている点以外は、メモリ情報保護システム１Ｂとほぼ同様の構造および機能を有しており、共通する部分については同じ符号を付して説明を省略する。図７は、第２実施形態に係るメモリ情報保護システム１Ｂの機能構成を示すブロック図である。
【０１１６】
図７に示されるように、メモリ情報保護システム１Ｂのメモリ装置２０Ｂは、第１記憶部２０１において、バインド認証に用いるＭＡＣ値１Ｍを記憶している。
【０１１７】
なお、当該ＭＡＣ値１Ｍは、ＯＴＰ領域等の消去および書き換えが不可能な記憶領域に記憶されることが好ましい。
【０１１８】
このようなメモリ情報保護システム１Ｂによれば、第１記憶部２０１にＭＡＣ値１Ｍが予め記憶されているため、ＭＡＣ値を第１記憶部２０１に記憶させる上記初期化動作を実行する必要がなく、動作を簡素化することができる。また、ＭＡＣ値を第２記憶部２０２に記憶しておく必要もなくなるので、第２記憶部２０２を有効に利用することができる。
【０１１９】
＜３．変形例＞
以上、実施の形態について説明したが、この発明は、上記に説明した内容に限定されるものではない。
【０１２０】
例えば、上記各実施形態では、ＭＡＣ値を記憶した第１記憶部２０１と、固有ＩＤ２Ｕを記憶した第２記憶部２０２とを用いてバインド認証を行う態様を例示したが、これに限定されない。
【０１２１】
具体的には、固有ＩＤ２Ｕを記憶した第１記憶部２０１と、ＭＡＣ値を記憶した第２記憶部２０２とを用いてバインド認証を行ってもよい。この場合、情報処理装置１０は、第１記憶部２０１から取得した固有ＩＤ２Ｕを用いてＭＡＣ値を生成するとともに、生成したＭＡＣ値と、第２記憶部２０２から取得したＭＡＣ値とを比較することによって、第１記憶部２０１と第２記憶部２０２との組み合わせの正当性を判断するバインド認証を行うことになる。
【０１２２】
なお、当該変形例のように、固有ＩＤ２Ｕを記憶した第１記憶部２０１と、ＭＡＣ値を記憶した第２記憶部２０２とを用いてバインド認証を行う場合、第１実施形態の初期化動作では、第２記憶部２０２に記憶されている固有ＩＤ２Ｕを、第１記憶部２０１のＯＴＰ領域２３２に記憶する動作が行われる。
【０１２３】
また、上記各実施形態では、メモリ装置２０Ａ（２０Ｂ）が情報処理装置１０に着脱可能な構成としていたが、これに限定されない。具体的には、メモリ装置２０Ａ（２０Ｂ）と情報処理装置１０との間で行うデータのやりとりを無線通信で行う構成とした場合、メモリ装置２０Ａ（２０Ｂ）は、情報処理装置１０に着脱自在に構成される態様でなくてもよい。
【０１２４】
また、上記各実施形態では、バインド認証において認証判断に使用する評価値としてＭＡＣ値を用いていたが、これに限定されない。
【０１２５】
具体的には、ハードウェア鍵１４１を用いることなく、ハッシュ関数を用いた演算処理を固有ＩＤ２Ｕに施して、ハッシュ値を算出し、当該ハッシュ値を評価値として用いてバインド認証を行ってもよい。
【０１２６】
より詳細には、第１の変形例に係るメモリ情報保護システムは、バインド認証動作開始前には、第１記憶部２０１にハッシュ値を記憶し、第２記憶部２０２に固有ＩＤ２Ｕを記憶している。バインド認証動作が開始されると、情報処理装置１０は、第２記憶部２０２から取得した固有ＩＤ２Ｕを用いてハッシュ値を算出するとともに、第１記憶部２０１からハッシュ値を取得する。そして、情報処理装置１０は、固有ＩＤ２Ｕを用いて算出したハッシュ値と、第１記憶部２０１から取得したハッシュ値とを比較することによって、バインド認証を行う。
【０１２７】
またさらに、メモリ装置の第１記憶部２０１および第２記憶部２０２それぞれに記憶された情報（例えば、固有ＩＤ）をバインド認証に使用する評価値としてそのまま用いてもよい。
【０１２８】
より詳細には、第２の変形例に係るメモリ情報保護システムでは、メモリ装置の第１記憶部２０１および第２記憶部２０２それぞれに記憶された情報（例えば、固有ＩＤ）を情報処理装置１０が取得し、両者を単純に比較することによって、バインド認証を行う。
【０１２９】
ただし、上記各実施形態、第１の変形例、および第２の変形例で実行される各バインド認証の信頼性を比較すると、上記各実施形態に係るメモリ情報保護システム１Ａ，１Ｂで実行されるバインド認証の信頼性が最も高い。一方、第２の変形例に係るメモリ情報保護システムで実行されるバインド認証の信頼性が最も低い。
【０１３０】
具体的には、上記各実施形態のメモリ情報保護システム１Ａ，１Ｂでは、ＭＡＣ値の生成にハードウェア鍵１４１をも用いているため、無断複製者は、バインド認証に用いるＭＡＣ値を生成することが困難であり、バインド認証の信頼性は高い。
【０１３１】
例えば、固有ＩＤ２Ｕが無断複製者に取得されたとしても、ハードウェア鍵１４１の機密性が保たれている限り、無断複製者は、バインド認証に用いるＭＡＣ値を生成することができない。
【０１３２】
これに対して、第１の変形例に係るメモリ情報保護システムでは、固有ＩＤ２Ｕが無断複製者に取得されると、ハッシュ関数のアルゴリズムは一般に公開されているため、無断複製者は、バインド認証に用いるハッシュ値を生成することが可能になる。このようにバインド認証に用いる評価値を無断複製者に取得される可能性が高くなると、バインド認証の信頼性は低くなる。
【０１３３】
第２の変形例に係るメモリ情報保護システムは、記憶部２０２に記憶された固有ＩＤをそのままバインド認証の評価値として用いる構成であるため、バインド認証に用いる評価値が無断複製者に取得される可能性が高く、第２の変形例で実行されるバインド認証の信頼性は、第１の変形例で実行されるバインド認証の信頼性よりもさらに低いと言える。
【０１３４】
したがって、無断複製者によるメモリ装置の複製を困難にするためには、信頼性の高いバインド認証を採用する方が好ましい。
【０１３５】
また、上記各実施形態では、ＭＡＣ値の生成に用いる鍵として、ハードウェア鍵１４１を例示したが、これに限定されない。
【０１３６】
具体的には、ＭＡＣ値の生成に用いる鍵は、情報処理装置１０内の記憶部に記憶されている態様であってもよい。なお、ＭＡＣ値の生成に用いる鍵は、情報処理装置１０内で管理される鍵であり、外部から読み出し不可能に保持される。
【符号の説明】
【０１３７】
１Ａ，１Ｂ  メモリ情報保護システム（メモリシステム）
１０  情報処理装置
２０Ａ，２０Ｂ  メモリ装置
１００  全体制御部
１０１  コマンド生成部
１１０  メモリ制御部
１１１，１１９  コマンド発行制御部
１１２，１１８  暗号化部
１１３，１１７  復号化部
１１４  メッセージ認証コード生成部
１１５  比較器
１１６  鍵生成部
１４１  ハードウェア鍵
１４２  演算部
２０１  第１記憶部
２０２  第２記憶部
２１１，２１２  メモリ内制御部
Ｄ１，Ｄ２  各関連情報
２Ｍ  ＭＡＣ値
２Ｕ  固有ＩＤ
【図１】
0005759827.tif 000002
【図２】
0005759827.tif 000003
【図３】
0005759827.tif 000004
【図４】
0005759827.tif 000005
【図５】
0005759827.tif 000006
【図６】
0005759827.tif 000007
【図７】
0005759827.tif 000008