(57)【要約】【課題】メモリ装置に記憶されたデータの違法複製をより困難にすること。【解決手段】復号化するための鍵情報を記憶した暗号解読キー格納部１６ａと外部からの読出し対象となるデータを記憶したデータ格納部１６ｂとを有する記憶部１６と、外部より入力された暗号化された読出指令及びアドレスを暗号解読キー格納部１６ａの鍵情報に基づいて復号化し、復号化された読出指令及びアドレスに応じたデータをデータ格納部１６ｂから外部に出力させる処理を実行可能な復号制御部１４とを備えている。暗号解読キー格納部１６ａはフラッシュメモリのアレイによって構成されている。【選択図】図２
2007304847.tif 000002
【特許請求の範囲】
【請求項１】
暗号化された読出指令及びアドレスが外部より入力され、これに応じたデータを外部に出力するメモリ装置であって、
復号化するための鍵情報を記憶した第１記憶部と、
外部からの読出し対象となるデータを記憶した第２記憶部と、
外部より入力された暗号化された読出指令及びアドレスを前記鍵情報に基づいて復号化し、復号化された読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行可能な復号制御手段と、
を備え、
前記第１記憶部と前記第２記憶部と前記復号制御手段を構成する回路は、耐タンパ性が比較的弱い回路領域と、耐タンパ性が比較的強い回路領域とを有し、
前記第１記憶部は前記耐タンパ性が比較的強い回路領域によって構成されている、メモリ装置。
【請求項２】
暗号化された読出指令及びアドレスが外部より入力され、これに応じたデータを外部に出力するメモリ装置であって、
復号化するための鍵情報を記憶した第１記憶部と、
外部からの読出し対象となるデータを記憶した第２記憶部と、
外部より入力された暗号化された読出指令及びアドレスを前記鍵情報に基づいて復号化し、復号化された読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行可能な復号制御手段と、
を備え、
前記第１記憶部は電荷蓄積タイプの記憶手段である、メモリ装置。
【請求項３】
請求項１又は請求項２記載のメモリ装置であって、
前記復号制御手段は、外部より入力された暗号化された読出指令及びアドレスを前記鍵情報に基づいて復号化し、復号化された読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行する暗号化モードと、外部より入力された暗号化されていない読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行する通常モードとを切替えて実行可能である、メモリ装置。
【請求項４】
請求項１〜請求項３のいずれかに記載のメモリ装置であって、
前記第１記憶部の記憶領域と前記第２記憶部の記憶領域とは、一つのアドレス空間として管理されており、
前記第１の記憶部の記憶領域は、外部から読出し不能に構成されている、メモリ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、メモリ装置に記憶されたデータの違法複製を困難にするための技術に関する。
【背景技術】
【０００２】
従来より、家庭用のゲーム装置に対して、ゲームカートリッジの形態で種々のゲームが提供されている。一般的なゲームカートリッジは、ワイヤードロジックの方式で情報を記憶するマスクＲＯＭを内蔵しており、このマスクＲＯＭに所定のゲームを実行させるためのアプリケーションソフトウエア等を格納している。そして、ゲーム装置にセットするゲームカートリッジを交換することによって、種々な種類のゲームを楽しめるようになっている。
【０００３】
ところで、このようなゲームカートリッジは違法複製の対象となり易い。
【０００４】
ゲームカートリッジ内のデータを読取るための一つの手法として、ゲームカートリッジの入出力信号を解析するものがある。
【０００５】
このような解析手法によるデータ読取りを防止するために、特許文献１のように、ゲームカートリッジへの入力信号やゲームカートリッジからの出力信号を暗号化するという技術がある。
【０００６】
【特許文献１】特開２００２−９１８２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記のようにゲームカートリッジに対する入力信号又は出力信号を暗号化するためには、暗号化又は復号化に係る鍵情報を、ゲームカートリッジ内に予め格納しておく必要がある。
【０００８】
ところが、鍵情報がカートリッジでワイヤードロジックの方式で情報を記憶するマスクＲＯＭに格納されている場合、マスクＲＯＭの回路構成を解析する等することで鍵情報を解析される恐れがあった。
【０００９】
そこで、本発明は、メモリ装置に記憶されたデータの違法複製をより困難にすることを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するため、このメモリ装置は、暗号化された読出指令及びアドレスが外部より入力され、これに応じたデータを外部に出力するメモリ装置であって、復号化するための鍵情報を記憶した第１記憶部と、外部からの読出し対象となるデータを記憶した第２記憶部と、外部より入力された暗号化された読出指令及びアドレスを前記鍵情報に基づいて復号化し、復号化された読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行可能な復号制御手段と、を備え、前記第１記憶部と前記第２記憶部と前記復号制御手段を構成する回路は、耐タンパ性が比較的弱い回路領域と、耐タンパ性が比較的強い回路領域とを有し、前記第１記憶部は前記耐タンパ性が比較的強い回路領域によって構成されているものである。
【００１１】
また、この発明に係る他のメモリ装置は、暗号化された読出指令及びアドレスが外部より入力され、これに応じたデータを外部に出力するメモリ装置であって、復号化するための鍵情報を記憶した第１記憶部と、外部からの読出し対象となるデータを記憶した第２記憶部と、外部より入力された暗号化された読出指令及びアドレスを前記鍵情報に基づいて復号化し、復号化された読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行可能な復号制御手段と、を備え、前記第１記憶部は電荷蓄積タイプの記憶手段としたものである。
【００１２】
これらの場合に、前記復号制御手段は、外部より入力された暗号化された読出指令及びアドレスを前記鍵情報に基づいて復号化し、復号化された読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行する暗号化モードと、外部より入力された暗号化されていない読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行する通常モードとを切替えて実行可能であるとよい。
【００１３】
また、前記第１記憶部の記憶領域と前記第２記憶部の記憶領域とは、一つのアドレス空間として管理されており、前記第１の記憶部の記憶領域は、外部から読出し不能に構成されていてもよい。
【発明の効果】
【００１４】
以上のように構成されたメモリ装置によると、暗号化された読出指令及びアドレスが外部より入力されるため、メモリ装置への入力信号を解析することによって、メモリ装置に記憶されたデータを解析することは困難である。しかも、鍵情報を記憶した第１記憶部は耐タンパ性が比較的強い回路領域によって構成されているため、メモリ装置を分解等してリバースエンジニアリングすることにより、鍵情報を取得することも困難である。従って、メモリ装置に記憶されたデータの違法複製を困難にすることができる。
【００１５】
以上のように構成されたメモリ装置によると、暗号化された読出指令及びアドレスが外部より入力されるため、メモリ装置への入力信号を解析することによって、メモリ装置に記憶されたデータを解析することは困難である。しかも、鍵情報を記憶した第１記憶部は電荷蓄積タイプの記憶手段であるため、メモリ装置を分解等してリバースエンジニアリングすることにより、鍵情報を取得することも困難である。従って、メモリ装置に記憶されたデータの違法複製を困難にすることができる。
【００１６】
さらに、前記復号制御手段は、外部より入力された暗号化された読出指令及びアドレスを前記鍵情報に基づいて復号化し、復号化された読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行する暗号化モードと、外部より入力された暗号化されていない読出指令及びアドレスに応じたデータを前記第２記憶部から外部に出力させる処理を実行する通常モードとを切替えて実行可能であると、セキュリティ重視の処理を暗号化モードで実行し、データの読出し速度重視の処理を通常モードで実行できる。
【００１７】
また、前記第１記憶部の記憶領域と前記第２記憶部の記憶領域とは、一つのアドレス空間として管理されており、前記第１の記憶部の記憶領域は、外部から読出し不能に構成されていると、第１記憶部に記憶された鍵情報を取得することを、より困難にすることができる。
【発明を実施するための最良の形態】
【００１８】
＜実施形態＞
以下、この発明の実施形態に係るメモリ装置について説明する。図１はメモリ装置の外観構成を示す図である。
【００１９】
このメモリ装置２０は内部にデータを記憶しており、情報処理装置１０に装着された状態で使用される。メモリ装置２０内のデータは情報処理装置１０での使用に供されるデータを含んでいる。そのようなデータは、例えば、一種のコンピュータ装置である情報処理装置１０で実行されるアプリケーションソフトウエアとしてのデータや、そのアプリケーションソフトウエアで使用されるデータ等である。
【００２０】
そして、メモリ装置２０が情報処理装置１０に着脱自在に装着された状態で情報処理装置１０とメモリ装置２０との間でデータ転送が可能になる。この状態で、情報処理装置１０がメモリ装置２０からデータを読出すことでアプリケーションソフトウエアの実行等、所定の処理を実行するようになっている。
【００２１】
なお、このような情報処理装置１０とメモリ装置２０の適用例としては、ビデオゲーム機や携帯ゲーム機等のゲーム機本体とゲームカートリッジ、パソコンとパソコンのＵＳＢ端子等に接続されるフラッシュメモリ装置、ＰＤＡ（Personal Digital Assistant）等の携帯情報端末装置とそれに接続されるメモリ装置、ＡＶ（Audio Visual）機器とそれに接続されるメモリ装置等が挙げられる。
【００２２】
メモリ装置２０は、樹脂製のケース本体内に電気回路を内蔵した構成となっており、その内蔵された電気回路により後述する諸機能が実現される。また、メモリ装置２０の一側部（例えば、図１の下部）には、コネクタ部が設けられている。そして、本メモリ装置２０が情報処理装置１０にセットされた状態で、メモリ装置２０側のコネクタ部内の各端子と情報処理装置１０側のコネクタ部内の各端子とが電気的に接続される。この状態で、情報処理装置１０からメモリ装置２０に電源供給がなされると共に、情報処理装置１０からメモリ装置２０に同期信号が与えられる。これにより、情報処理装置１０より読出指令等の諸指令及びアドレス等がメモリ装置２０に対して入力可能になると共に、これに応じたデータがメモリ装置２０がら情報処理装置１０に出力可能になる。
【００２３】
図２はメモリ装置を示す機能ブロック図である。このメモリ装置２０は、情報処理装置１０より暗号化されたコマンドが入力されると、そのコマンドを復号化し、そのコマンドに応じたデータを出力するようになっている。
【００２４】
ここで、情報処理装置１０について説明しておく。情報処理装置１０は、所定の指令及びアドレスを含むコマンドを生成しこれを暗号化して外部に出力する。そして、この暗号化されたコマンドをメモリ装置２０に与えることにより、情報処理装置１０はメモリ装置２０に対するデータ読出し、書込み等の制御を行う。特に、情報処理装置１０がメモリ装置２０から所定のデータを読出す場合には、読出指令と読出対象となるデータのアドレスとを含むコマンドを生成し、このコマンドを暗号化して外部に出力して、メモリ装置２０に与える。ここでの暗号化は予め設定された方式で行われるようになっており、これを復号化するための鍵情報である暗号解読キーがメモリ装置２０側に格納されている。
【００２５】
このメモリ装置２０は、インターフェース部１２と、復号制御部１４と、記憶部１６とを備えている。まず、これらの各機能を説明する。
【００２６】
インターフェース部１２は、復号制御部１４の制御下で情報処理装置１０との間でデータをやりとりするものである。ここでは情報処理装置１０から入力されるコマンドが本インターフェース部１２を介して復号制御部１４に与えられると共に、記憶部１６からのデータがインターフェース部１２を介して外部に出力されるようになっている。
【００２７】
記憶部１６は、暗号化コマンドを復号化するための鍵情報としての暗号解読キーを記憶した第１記憶部としての暗号解読キー格納部１６ａと、外部、即ち、情報処理装置１０からの読出し対象となるデータを記憶した第２記憶部としてのデータ格納部１６ｂとを有している。このような記憶部１６としては、メモリ装置２０を情報処理装置１０から抜いた状態でも上記各データを保持可能なものを用いる必要があり、ここでは、記憶部１６はフラッシュメモリのメモリアレイによって構成されている。なお、暗号解読キー格納部１６ａとデータ格納部１６ｂとは別々の記憶手段によって構成されていてもよく、例えば、暗号解読キー格納部１６ａがフラッシュメモリのメモリアレイによって構成され、データ格納部１６ｂがマスクＲＯＭ等のアレイによって構成されていてもよい。ここでは、少なくとも暗号解読キー格納部１６ａがフラッシュメモリのメモリアレイによって構成されていればよい。
【００２８】
復号制御部１４は、外部より入力された暗号化コマンドを復号化し、復号化された読出指令及びアドレスに応じたデータを記憶部１６から外部に出力させる処理を実行する機能を有している。
【００２９】
ここで、暗号化コマンドを復号化するための処理は、情報処理装置１０側での暗号化方式に応じて予め設定されている。そして、復号制御部１４は、記憶部１６内に格納された暗号解読キーを読出し、この暗号解読キーを利用して所定の復号化手順に従って暗号化コマンドの復号化を行うことで、復元された読出指令とアドレスとを得る。
【００３０】
そして、復号制御部１４は、記憶部１６に対してアドレスを指定することで、記憶部１６のデータ格納部１６ｂ内のデータであって該アドレスに応じたものを出力させるようにする。このデータは、インターフェース部１２を介して外部に出力されて、情報処理装置１０に入力される。つまり、本復号制御部１４は、上記記憶部１６からのデータ読出しを制御するメモリコントローラとしても機能する。
【００３１】
この復号制御部１４は、上記処理を実行するように回路設計されたワイヤードロジック回路によって構成されるものであってもよいし、或は、記憶手段に記憶されたプログラムに従ってマイクロプロセッサ（ＭＰＵ）が動作するプログラム制御回路によって構成されるものであってもよい。後者の場合、プログラムは、復号制御部１４に内蔵されたメモリに格納されていてもよいし、記憶部１６又は他の外部のメモリに格納されていてもよい。また、上記記憶部１６と復号制御部１４とは、別々のＩＣチップによって構成されていてもよいし、１つのＩＣチップに統合して構成されていてもよい。
【００３２】
なお、上記第１記憶部としての暗号解読キー格納部１６ａを、外部から読出し不能に構成するとよい。このような構成は、例えば、次のようにして実現される。すなわち、第１記憶部としての暗号解読キー格納部１６ａと情報処理装置１０からの読出し対象となるデータを記憶した第２記憶部としてのデータ格納部１６ｂとは、復号制御部１４等により同一のアドレス空間として管理されている。そして、復号制御部１４は、次のようにしてアドレス指定の許可及び禁止を制御するアドレス制御回路部を有している。このアドレス制御回路部は、暗号化コマンドを復号化する処理を実行する際等、本メモリ装置内部だけでの処理に関しては、暗号解読キー格納部１６ａに属するアドレス指定を許可すると共に、その他の場合（例えば、外部からの読出しコマンドで暗号解読キー格納部１６ａに属するアドレスが指定されたような場合等、指定されたアドレス先の情報を外部に与えてしまうような場合）には、暗号解読キー格納部１６ａに属するアドレス指定を禁止する、アドレス制御回路を有している。
【００３３】
かかる構成により、例えば、外部からのコマンド入力によって、暗号解読キー格納部１６ａ内に格納された暗号解読キーを読出すことを不能にすることができ、より高いセキュリティ性を得ることができる。
【００３４】
このように構成されたメモリ装置の動作について図３のフローチャートを参照して説明する。ここでは、暗号化された読出指令及びアドレスが外部より入力された場合に、これに応じたデータをメモリ装置２０が外部に出力する動作について説明する。
【００３５】
すなわち、外部よりコマンドが入力されると、ステップＳ１及びステップＳ６間のループ１の処理を繰返す。このループ１の処理は、コマンド入力が有れば繰返し行われる。すなわち、外部からのコマンド入力が繰返される間、本ループ１内のステップＳ２〜Ｓ５の処理を繰返し行い、外部からのコマンド入力が途絶えた場合に、本ループ１処理を抜出して処理を終了する。
【００３６】
上記ループ１内の最初のステップＳ２では、復号制御部１４が記憶部１６の暗号解読キー格納部１６ａから暗号解読キーを読出す（鍵情報取得）。
【００３７】
次ステップＳ３において、復号制御部１４は、入力された暗号化コマンドに対して上記暗号解読キーを用いて復号処理を施す（復号処理）。これにより、復号化された指令及びアドレスが得られる。
【００３８】
次ステップＳ４では、復号制御部１４は指令が読出指令か否かを判断する。指令が読出指令であった場合には、ステップＳ５に進んで、復号制御部１４は、記憶部１６のデータ格納部１６ｂに対してアドレスを指定し、これにより該アドレスに応じたデータを出力させる（アドレス指定に応じたデータ出力）。このデータは、インターフェース部１２を介して外部に出力されて、情報処理装置１０に入力される。
【００３９】
上記ステップＳ４において読出指令無しと判断された後、及び、ステップＳ５終了後、次のコマンド入力が有れば、ループ１内の処理（ステップＳ２〜Ｓ５の処理）を繰返す。一方、ここで、次コマンド入力が無い場合には、ループ１処理を抜出して処理を終了する。
【００４０】
なお、ステップＳ４において、指令が読出指令では無い場合としては、その指令が書込指令である場合やその他の制御指令である場合等があり得る。これらの復号化後の処理については、一般的なメモリ装置の動作と同様であるため、その説明については省略する。
【００４１】
なお、書込み指令の対象となる領域は、第２記憶部としてのデータ格納部１６ｂに制限されており、第１記憶部としての暗号解読キー格納部１６ａの書換えは不能に構成されている。
【００４２】
このように構成されたメモリ装置２０によると、読出指令及びアドレスが暗号化された暗号化コマンドとして入力されるため、このメモリ装置２０への入力信号を解析することによってメモリ装置２０に記憶されたデータを解析することは困難である。しかも、鍵情報を記憶した暗号解読キー格納部１６ａはフラッシュメモリのメモリアレイによって構成されているため、本メモリ装置２０を分解等してリバースエンジニアリングすることによって、鍵情報を取得することも困難である。
【００４３】
つまり、ワイヤードロジックの方式で復号化を行う方式では、そのロジック回路を解析することで復号化処理方法を解析することが可能である。これに対して、フラッシュメモリの場合、各メモリセルにおける電荷の蓄積によってデータを記憶する仕組であるため、それを分解観察してもデータ内容を解析取得することは困難である。よって、フラッシュメモリのメモリアレイに鍵情報を格納することで、その鍵情報の取得を困難にすることができる。従って、メモリ装置２０に記憶されたデータの違法複製を困難にすることができる。
【００４４】
また、仮に鍵情報が解析可能だとしても、各種メモリ装置２０で異なる鍵情報が格納される場合、その各種毎に鍵情報を解析する必要がある。このため、解析に要する費用とデータの違法複製によって得られる効果との関係で費用対効果を得ることが難しく、この点からも違法複製を抑制することができる。
【００４５】
上記を一般化していえば、鍵情報の格納先として適している記憶手段は、耐タンパ性が比較的強い回路領域によって構成されていればよいことになる。ここで、耐タンパ性とは、ハードウエアとしての構成に対する物理的なリバースエンジニアリングによる解析困難性をいい、その強弱は当業者であれば経験的、実験的、理論的に容易に決定することができる。例えば、所定の論理演算を行うワイヤードロジック回路や、回路自体にデータが書き込まれてしまっているマスクＲＯＭに対して、ＥＰＲＯＭ（Erasable Programmable ROM）やＥＥＰＲＯＭ（Elecrically Erasable Programmable）、フラッシュメモリ、ＦｅＲＡＭ等の各メモリアレイは耐ダンパ性が強いといえる。ワイヤードロジック回路やマスクＲＯＭは分解して回路自体を観察することでその処理手順やデータ内容を比較的容易に解析することができるのに対して、ＥＰＲＯＭやＥＥＰＲＯＭ、フラッシュメモリ、ＦｅＲＡＭのメモリアレイについては、そのような回路の観察によってはデータを解析することはできないからである。
【００４６】
さらに、一つのメモリセルで蓄えることができる電荷の量をコントロールして電気的に複数の状態を保持できるようにした多値技術や、一つのメモリセルにおいて複数箇所で電荷を蓄積するようにし、各箇所での電荷蓄積状態に応じて複数の状態を保持できるようにしたＮＢＩＴ技術、さらにはこれらを併用した技術等を採用したメモリにおいては、それぞれの電気的状態の解析がより困難となるため、より耐タンパ性が強いといえる。
【００４７】
これらの耐タンパ性が強いメモリの領域は、上記鍵情報の格納先として適しているといえる。つまり、暗号解読キー格納部１６ａは、必ずしもフラッシュメモリ等の電荷蓄積タイプの記憶手段である必要はなく、比較的耐タンパ性の強い回路領域によって構成されていれば上記効果を奏することができる。
【００４８】
これを、記憶部１６と復号制御部１４を構成する回路に関して相対的に特定すれば、記憶部１６と復号制御部１４を構成する回路が、耐タンパ性が比較的弱い回路領域と、耐タンパ性が比較的強い回路領域とを有し、暗号解読キー格納部１６ａが耐タンパ性の比較的強い回路領域によって構成されていればよい。具体的には、復号制御部１４が比較的耐タンパ性が弱いワイヤードロジック回路だけで或はワイヤードロジック回路とマスクＲＯＭ又はフラッシュメモリ等とで構成されると共に、記憶部１６がＥＰＲＯＭ（Erasable Programmable ROM）やＥＥＰＲＯＭ（Elecrically Erasable Programmable）、フラッシュメモリ、ＦｅＲＡＭ等のアレイで構成されている例或は記憶部１６のデータ格納部１６ｂが上記のＮＢＩＴ技術や多値技術等を採用したメモリのアレイによって構成されている例等である。
【００４９】
もっとも、上記のような耐タンパ性の強弱の検討に拘らず、暗号解読キー格納部１６ａの格納手段として、フラッシュメモリのアレイを用いれば上記効果をすることができる。さらにいえば、鍵情報の取得を困難にするために鍵情報の格納先として用いることができる記憶手段として、フラッシュメモリのアレイに限られず、電荷の蓄積によってデータを記憶する諸記憶手段を用いることができる。このような記憶手段としては、例えば、ＥＰＲＯＭ（Erasable Programmable Read Only Memory）やＥＥＰＲＯＭ（Electrically Erasable Programmable Read-Only Memory）等の各メモリアレイが挙げられる。
【００５０】
＜変形例＞
上記実施形態では、暗号化された読出指令及びアドレスが外部より入力された場合に、これに応じたデータを外部に出力する動作を説明したが、必ずしも全てのデータをこのような処理によって出力させる必要はない。
【００５１】
すなわち、上記復号制御部１４は、暗号化モードと通常モードとを切替えて実行可能としてもよい。この暗号化モードは、上記実施形態で説明したように、外部より入力された暗号化された読出指令及びアドレスを暗号解読キーに基づいて復号化し、復号化された読出指令及びアドレスに応じたデータを暗号解読キー格納部１６ａから出力させる処理を実行するモードである。通常モードは、外部より入力された暗号化されていない読出指令及びアドレスに応じたデータを暗号解読キー格納部１６ａから外部に出力させる処理を実行するモードである。
【００５２】
上記動作を図４に示すフローチャートを参照して説明する。本モードで動作する前提として、情報処理装置１０は、セキュリティモードへの設定指令を与えてから、暗号化された読出指令及びアドレスを出力してデータを読出す。また、通常モードへの設定指令を与えてから、暗号化されない読出指令及びアドレスを出力してデータを読出す。
【００５３】
このメモリ装置２０に対して外部よりコマンドが入力されると、まず、ステップＳ１１において、メモリ装置２０の復号制御部１４はセキュリティモードに設定する（セキュリティモード設定）。つまり、メモリ装置２０は、初期状態では、セキュリティモードで処理を実行するように設定されている。
【００５４】
この後、ステップＳ１２とステップＳ１９間のループ２の処理を繰返す。このループ２の処理は、コマンド入力が有れば繰返し行われる。すなわち、外部からのコマンド入力が繰返される間、本ループ２内の処理を繰返し行い、外部からのコマンド入力が途絶えた場合に、本ループ２の処理を抜出して処理を終了する。
【００５５】
本ループ２内の最初のステップＳ１３では、復号制御部１４は、セキュリティモードか通常モードかを判定する。ここで、セキュリティモードと判定された場合には、ステップＳ１４に進む。
【００５６】
ステップＳ１４では、復号制御部１４が記憶部１６の暗号解読キー格納部１６ａから暗号解読キーを読出す（鍵情報取得）。
【００５７】
次ステップＳ１５において、復号制御部１４は、入力された暗号化コマンドに対して上記暗号解読キーを用いて復号処理を施す（復号処理）。これにより、復号化された指令及びアドレスが得られる。
【００５８】
次ステップＳ１６では、復号制御部１４は指令が読出指令か通常モード設定指令かその他の指令かを判定する。指令が読出指令であった場合には、ステップＳ１７に進んで、復号制御部１４は、記憶部１６のデータ格納部１６ｂに対してアドレスを指定し、これにより該アドレスに応じたデータを出力させる（アドレス指定に応じたデータ出力）。このデータは、インターフェース部１２を介して外部に出力されて、情報処理装置１０に入力される。
【００５９】
上記ステップＳ１４において通常モード設定指令と判定されたときには、復号制御部１４は通常モードに設定する。
【００６０】
そして、ステップＳ１７及びステップＳ１８終了後と、ステップＳ１６において読出指令及び通常モード設定指令無しと判断された場合には、次のコマンド入力が有る場合には、ループ２の処理が繰返される。一方、次コマンド入力が無い場合には、ループ２処理を抜出して処理を終了する。
【００６１】
一方、ループ２内の最初のステップＳ１３で、通常モードと判定された場合には、ステップＳ２０に進む。
【００６２】
ステップＳ２０では、復号制御部１４は指令が読出指令かセキュリティモード設定指令かその他の指令かを判定する。指令が読出指令であった場合には、ステップＳ２１に進んで、復号制御部１４は、記憶部１６のデータ格納部１６ｂに対してアドレスを指定し、これにより該アドレスに応じたデータを出力させる（アドレス指定に応じたデータ出力）。このデータは、インターフェース部１２を介して外部に出力されて、情報処理装置１０に入力される。
【００６３】
上記ステップＳ２０においてセキュリティモード設定指令と判定されたときには、復号制御部１４はセキュリティモードに設定する。
【００６４】
そして、ステップＳ２１及びステップＳ２２終了後と、ステップＳ２０において読出指令及びセキュリティモード設定指令無しと判断された場合に、次のコマンド入力が有る場合には、ループ２の処理が繰返される。一方、次コマンド入力が無い場合には、ループ２処理を抜出して処理を終了する。
【００６５】
なお、ステップＳ１６，Ｓ２０において、指令が読出指令及び各モード設定指令で無い場合としては、その指令が書込指令である場合やその他の制御指令である場合等があり得る。これらの場合の処理については、一般的なメモリ装置の動作と同様であるため、その説明については省略する。
【００６６】
このように構成されたメモリ装置２０では、上記実施形態と同様の効果に加えて次のような利点がある。すなわち、本メモリ装置２０では、暗号化モードと通常モードとを切替えて実行可能であるため、セキュリティ重視の処理を暗号化モードで実行することができ、また、読出し速度重視の処理を、復号化に要する時間を省いた通常モードで実行できる。従って、読出しするデータ内容や必要とされる読出速度等に応じたモード設定することで、適切な処理を行うことができる。
【００６７】
なお、本変形例において、第２記憶部としてのデータ格納部１６ｂを２つの記録領域に分け、そのうちの一方を上記暗号化モードにおいて読出し可能な領域にすると共に、他方を上記通常モードにおいて読出し可能な領域とに分けるようにするとよい。これにより、暗号化モードにおいて読出し可能な領域に記憶されたデータに対するセキュリティ性をより向上させることができる。
【００６８】
＜その他の変形例＞
なお、上記実施形態及び変形例では、情報処理装置１０での暗号化処理内容及び暗号解読キーが一つ予め決っている例で説明したが、必ずしもその必要はない。例えば、暗号化処理内容及び暗号解読キーは予め決定された順で順次変更されるものであってもよい。また、例えば、暗号解読キー格納部１６ａ内に複数の暗号解読キーが格納されており、メモリ装置２０に入力される暗号化コマンドに含まれる指定情報に基づいて複数の暗号解読キーのうちの一つを決定する方式であってもよい。暗号化コマンドに指定情報を含ませる態様としては、暗号化コマンドに追加的に指定情報を付加し又は暗号化コマンド全体を指定情報とし、これらからハッシュ関数等を用いて暗号解読キーを決定する方法等であってもよい。
【００６９】
また、上記暗号化コマンドは繰返し暗号化されたものであってもよい。この場合、メモリ装置２０では、繰返し暗号化されたコマンドを、予め指定された複数の暗号解読キーを用いて、或は、その暗号化コマンドで指定された複数の暗号解読キーを用いて、逐次復号化処理を繰返して元の指令及びアドレスを得る。
【００７０】
また、上記実施形態及び変形例では、メモリ装置２０から出力されるデータについては何らの処理を施していないが、この出力データについても暗号化処理して出力するようにしてもよい。
【図面の簡単な説明】
【００７１】
【図１】実施形態に係るメモリ装置及び情報処理装置を示す図である。
【図２】メモリ装置を示すブロック図である。
【図３】メモリ装置の動作を説明するフローチャートである。
【図４】変形例に係るメモリ装置の動作を説明するフローチャートである。
【符号の説明】
【００７２】
１０  情報処理装置
１４  復号制御部
１６  記憶部
１６ａ  暗号解読キー格納部
１６ｂ  データ格納部
２０  メモリ装置
【図１】
2007304847.tif 000003
【図２】
2007304847.tif 000004
【図３】
2007304847.tif 000005
【図４】
2007304847.tif 000006