(57)【要約】【課題】新規な、暗号処理装置、暗号処理システム、および暗号処理方法を提供する。【解決手段】複数の鍵データのうち、少なくとも１つの鍵データに、暗号化処理および復号処理の何れかの処理モードを当該鍵データに対応付けて設定する。そして、鍵データに対応付けて処理モードを指定するモード指定コマンドを他の装置から受け付け、当該受け付けた処理モードと鍵データに対応付けられた処理モードとが一致する場合に限って、当該鍵データを用いた当該処理モードによる処理を許可する。【選択図】図３
2015211383.tif 000002
【特許請求の範囲】
【請求項１】
データを暗号化および復号する暗号処理装置であって、
暗号化および／または復号に用いる複数の鍵データを記憶する鍵データ記憶領域と、
前記鍵データ記憶領域に記憶された複数の鍵データのうち、少なくとも１つの鍵データに、暗号化処理および復号処理の何れかの処理モードを当該鍵データに対応付けて設定するモード設定手段と、
鍵データに対応付けて処理モードを指定するモード指定コマンドを他の装置から受け付け、当該受け付けた処理モードと前記モード設定手段において設定されている当該鍵データに対応付けられた処理モードとが一致する場合に限って、当該鍵データを用いた当該処理モードによる処理を許可する処理制限手段とを備える、暗号処理装置。
【請求項２】
前記暗号化処理および復号処理の何れかの処理モードを対応付けた鍵データは、暗号化処理と復号処理とに用いることができる共通鍵の鍵データである、請求項１に記載の暗号処理装置。
【請求項３】
前記鍵データ記憶領域には、前記暗号処理装置の起動時に前記鍵データが書き込まれ、
前記モード設定手段は、前記暗号処理装置の起動時に前記書き込まれた鍵データに対応する処理モードを設定する、請求項１または２に記載の暗号処理装置。
【請求項４】
セキュアなシステムファームウエアの実行によって、前記鍵データ記憶領域に前記鍵データが書き込まれ、
前記システムファームウエアの実行によって、前記書き込まれた鍵データに対応する処理モードが前記モード設定手段に設定される、請求項１乃至３の何れか１つに記載の暗号処理装置。
【請求項５】
前記システムファームウエアは、ブートＲＯＭに格納されたブートプログラムである、請求項４に記載の暗号処理装置。
【請求項６】
前記処理制限手段は、受け付けた前記モード指定コマンドで指定された処理モードと前記モード設定手段において設定されている処理モードとが一致しない場合、当該処理モードで用いられる鍵データを前記鍵データ記憶領域から消去する、請求項１乃至５の何れか１つに記載の暗号処理装置。
【請求項７】
前記処理制限手段は、受け付けた前記モード指定コマンドで指定された処理モードと前記モード設定手段において設定されている処理モードとが一致しない場合、当該モード指定コマンドを破棄する、請求項１乃至５の何れか１つに記載の暗号処理装置。
【請求項８】
前記鍵データとは異なるダミー鍵データを記憶するダミー鍵データ記憶領域を、さらに備え、
前記処理制限手段は、受け付けた前記モード指定コマンドで指定された処理モードと前記モード設定手段において設定されている処理モードとが一致しない場合、前記処理手段において前記ダミー鍵データを用いて当該処理モードで処理する制御を行う、請求項１乃至５の何れか１つに記載の暗号処理装置。
【請求項９】
前記処理制限手段は、受け付けた前記モード指定コマンドで指定された処理モードと前記モード設定手段において設定されている処理モードとが一致しない場合、当該処理モードで処理するためのデータ入力の受付を拒否する、請求項１乃至５の何れか１つに記載の暗号処理装置。
【請求項１０】
前記処理制限手段は、受け付けた前記モード指定コマンドで指定された処理モードと前記モード設定手段において設定されている処理モードとが一致しない場合、当該処理モードによって処理されたデータとして当該処理とは異なる処理によって生成されたデータを出力する、請求項１乃至５の何れか１つに記載の暗号処理装置。
【請求項１１】
データを暗号化および復号する暗号処理装置であって、
暗号化および／または復号に用いる鍵データを記憶する鍵データ記憶領域と、
前記鍵データ記憶領域に記憶された鍵データに、暗号化処理および復号処理の何れかの処理モードを当該鍵データに対応付けて設定するモード設定手段と、
処理モードを指定するモード指定コマンドを他の装置から受け付け、当該受け付けた処理モードと前記モード設定手段において設定されている処理モードとが一致する場合に限って、当該処理モードに対応付けられている鍵データを用いて当該処理モードによる処理を許可する処理制限手段とを備える、暗号処理装置。
【請求項１２】
データを暗号化および復号する暗号処理装置および当該暗号処理装置を制御するシステムファームウエアを含む暗号処理システムであって、
前記暗号処理装置は、
前記システムファームウエアによって、暗号化および／または復号に用いる複数の鍵データが書き込まれる鍵データ記憶領域と、
前記鍵データ記憶領域に記憶された複数の鍵データのうち、少なくとも１つの鍵データに、暗号化処理および復号処理の何れかの処理モードを当該鍵データに対応付けて、前記システムファームウエアによって設定されるモード設定手段と、
鍵データに対応付けて処理モードを指定するモード指定コマンドを他の装置から受け付け、当該受け付けた処理モードと前記モード設定手段において設定されている当該鍵データに対応付けられた処理モードとが一致する場合に限って、当該鍵データを用いた当該処理モードによる処理を許可する処理制限手段とを備える、暗号処理システム。
【請求項１３】
データを暗号化および復号する暗号処理方法であって、
暗号化および／または復号に用いる複数の鍵データを記憶領域に記憶する鍵データ記憶制御ステップと、
前記記憶領域に記憶された複数の鍵データのうち、少なくとも１つの鍵データに、暗号化処理および復号処理の何れかの処理モードを当該鍵データに対応付けて設定するモード設定ステップと、
鍵データに対応付けて処理モードを指定するモード指定コマンドを他の装置から受け付け、当該受け付けた処理モードと前記モード設定手段において設定されている当該鍵データに対応付けられた処理モードとが一致する場合に限って、当該鍵データを用いた当該処理モードによる処理を許可する処理制限ステップとを含む、暗号処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号処理装置、暗号処理システム、および暗号処理方法に関し、特に例えば、データを暗号化および復号することが可能な暗号処理装置、暗号処理システム、および暗号処理方法に関する。
【背景技術】
【０００２】
従来、暗号鍵を用いて暗号化および復号する装置がある（例えば、特許文献１参照）。例えば、上記特許文献１で開示された装置は、暗号化するプログラムが改ざんされている場合、当該プログラムによる暗号化を不可能にすることによって、不正な暗号化を防止している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１６５２８９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、さらなるセキュリティの向上が求められており、新たな安全性向上技術が必要となっている。
【０００５】
それ故に、本発明の目的は、新規な、暗号処理装置、暗号処理システム、および暗号処理方法を提供することである。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、本発明は例えば以下のような構成を採用し得る。なお、特許請求の範囲の記載を解釈する際に、特許請求の範囲の記載によってのみその範囲が解釈されるべきであることが理解され、特許請求の範囲の記載と本欄の記載とが矛盾する場合には、特許請求の範囲の記載が優先する。
【０００７】
本発明の暗号処理装置の一構成例は、データを暗号化および復号する。暗号処理装置は、鍵データ記憶領域、モード設定手段、および処理制限手段を備える。鍵データ記憶領域は、暗号化および／または復号に用いる複数の鍵データを記憶する。モード設定手段は、鍵データ記憶領域に記憶された複数の鍵データのうち、少なくとも１つの鍵データに、暗号化処理および復号処理の何れかの処理モードを当該鍵データに対応付けて設定する。処理制限手段は、鍵データに対応付けて処理モードを指定するモード指定コマンドを他の装置から受け付け、当該受け付けた処理モードとモード設定手段において設定されている当該鍵データに対応付けられた処理モードとが一致する場合に限って、当該鍵データを用いた当該処理モードによる処理を許可する。
【０００８】
上記によれば、少なくとも１つの鍵データに暗号化処理および復号処理の何れかの処理モードを対応付けて設定することによって、当該鍵データを使用する処理モードを暗号化処理および復号処理の一方に限定する、新規な暗号処理を実現することができる。
【０００９】
また、暗号化処理および復号処理の何れかの処理モードを対応付けた上記鍵データは、暗号化処理と復号処理とに用いることができる共通鍵の鍵データでもよい。
【００１０】
上記によれば、共通鍵の鍵データを使用する処理モードを暗号化処理および復号処理の一方に限定する、新規な暗号処理を実現することができる。
【００１１】
また、上記鍵データ記憶領域には、暗号処理装置の起動時に鍵データが書き込まれてもよい。上記モード設定手段は、暗号処理装置の起動時に書き込まれた鍵データに対応する処理モードを設定してもよい。
【００１２】
上記によれば、起動時に鍵データおよび当該鍵データに対応する処理モードを設定することによって、他の装置が先に当該設定を行うことを防止することができるとともに、起動直後に暗号処理が可能となる。
【００１３】
また、セキュアなシステムファームウエアの実行によって、上記鍵データ記憶領域に鍵データが書き込まれてもよい。システムファームウエアの実行によって、書き込まれた鍵データに対応する処理モードが上記モード設定手段に設定されてもよい。
【００１４】
上記によれば、鍵データおよび当該鍵データに対応する処理モードの設定がセキュアなシステムファームウエアによって行われるため、設定内容に対する安全性を高めることができる。
【００１５】
また、上記システムファームウエアは、ブートＲＯＭに格納されたブートプログラムでもよい。
【００１６】
上記によれば、鍵データおよび当該鍵データに対応する処理モードの設定がブートプログラムによって行われるため、起動時に当該設定を行うことができ、設定内容に対する安全性を高めることができる。
【００１７】
また、上記処理制限手段は、受け付けたモード指定コマンドで指定された処理モードとモード設定手段において設定されている処理モードとが一致しない場合、当該処理モードで用いられる鍵データを鍵データ記憶領域から消去してもよい。
【００１８】
上記によれば、鍵データを消去することによって、当該鍵データを用いて許可されていない処理が行われることを防止することができる。
【００１９】
また、上記処理制限手段は、受け付けたモード指定コマンドで指定された処理モードとモード設定手段において設定されている処理モードとが一致しない場合、当該モード指定コマンドを破棄してもよい。
【００２０】
上記によれば、許可されていない処理モードによる処理を禁止することができる。
【００２１】
また、上記暗号処理装置は、ダミー鍵データ記憶領域を、さらに備えてもよい。ダミー鍵データ記憶領域は、鍵データとは異なるダミー鍵データを記憶する。この場合、上記処理制限手段は、受け付けたモード指定コマンドで指定された処理モードとモード設定手段において設定されている処理モードとが一致しない場合、処理手段においてダミー鍵データを用いて当該処理モードで処理する制御を行ってもよい。
【００２２】
上記によれば、正規な鍵データを用いて許可されていない処理が行われることを防止することができる。
【００２３】
また、上記処理制限手段は、受け付けたモード指定コマンドで指定された処理モードとモード設定手段において設定されている処理モードとが一致しない場合、当該処理モードで処理するためのデータ入力の受付を拒否してもよい。
【００２４】
上記によれば、許可されていない処理モードで入力データを処理することを禁止することができる。
【００２５】
また、上記処理制限手段は、受け付けたモード指定コマンドで指定された処理モードとモード設定手段において設定されている処理モードとが一致しない場合、当該処理モードによって処理されたデータとして当該処理とは異なる処理によって生成されたデータを出力してもよい。
【００２６】
上記によれば、許可されていない処理モードにおいて正規なデータが出力されることを防止することができる。
【００２７】
本発明の暗号処理装置の他の構成例は、データを暗号化および復号する。暗号処理装置は、鍵データ記憶領域、モード設定手段、および処理制限手段を備える。鍵データ記憶領域は、暗号化および／または復号に用いる鍵データを記憶する。モード設定手段は、鍵データ記憶領域に記憶された鍵データに、暗号化処理および復号処理の何れかの処理モードを当該鍵データに対応付けて設定する。処理制限手段は、処理モードを指定するモード指定コマンドを他の装置から受け付け、当該受け付けた処理モードとモード設定手段において設定されている処理モードとが一致する場合に限って、当該処理モードに対応付けられている鍵データを用いて当該処理モードによる処理を許可する。
【００２８】
上記によれば、記憶された１つの鍵データに暗号化処理および復号処理の何れかの処理モードを対応付けて設定することによって、当該鍵データを使用する処理モードを暗号化処理および復号処理の一方に限定する、新規な暗号処理を実現することができる。
【００２９】
また、本発明は、上記各手段を備える暗号処理システムや上記各手段で行われる動作を含む暗号処理方法の形態で実施されてもよい。
【発明の効果】
【００３０】
本発明によれば、少なくとも１つの鍵データに暗号化処理および復号処理の何れかの処理モードを対応付けて設定することによって、当該鍵データを使用する処理モードを暗号化処理および復号処理の一方に限定する、新規な暗号処理を実現することができる。
【図面の簡単な説明】
【００３１】
【図１】暗号処理ハードウエア３を含む暗号処理システム１の一例を示すブロック図
【図２】暗号処理ハードウエア３ａの一例を示すブロック図
【図３】第１の例の暗号処理ハードウエア３ａを含む暗号処理システム１における動作の一例を時間軸に沿って表現した図
【図４】暗号処理ハードウエア３ｂの一例を示すブロック図
【図５】第２の例の暗号処理ハードウエア３ｂを含む暗号処理システム１における動作の一例を時間軸に沿って表現した図
【図６】パスワード制御システムの概要の一例を示す図
【発明を実施するための形態】
【００３２】
図１を参照して、本発明の一実施形態に係る暗号処理装置を含む暗号処理システムについて説明する。なお、図１は、暗号処理装置の一例である暗号処理ハードウエア３を含む暗号処理システム１の一例を示すブロック図である。
【００３３】
例えば、暗号処理システム１は、情報処理装置内に設けられる。ここで、暗号処理システム１を含む情報処理装置は、交換可能なメモリカードや光ディスク等の記録媒体内に記憶された、または、サーバや他の装置から受信されたプログラムを実行可能である。また、上記情報処理装置は、携帯ゲーム装置や据置型ゲーム装置であってもよく、一般的なパーソナルコンピュータ、携帯電話機、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）等のデバイスであってもかまわない。なお、上記情報処理装置は、１以上の装置によって構成されてもよく、当該情報処理装置に含まれる暗号処理システム１は、複数の装置に分散して設けられてもよい。
【００３４】
暗号処理システム１は、ＣＰＵ２、暗号処理ハードウエア３、ＲＯＭ４、ＲＡＭ５、ＮＡＮＤ６、ＮＡＮＤ  Ｉ/Ｆ７等がバス８を介して接続されて構成されている。例えば、バス８は、データ、コマンド、アドレス等の送信に用いられ、一例として、ＣＰＵ２が実行させる各種命令（コマンド）を送信する。
【００３５】
ＣＰＵ２は、各種の情報処理を実行するための情報処理手段（コンピュータ）の一例であり、そのチップ内にブートＲＯＭ２１を内蔵している。ＣＰＵ２は、各種の情報処理の１つとして、ブートＲＯＭ２１内に設定されているデータを用いて、暗号処理ハードウエア３に対する初期設定を行う処理等を実行する機能を有する。例えば、ＣＰＵ２が所定のプログラムを実行することによって、上記機能が実現される。ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）４およびＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５、ＮＡＮＤ（ＮＡＮＤ型フラッシュメモリ）６は、それぞれＣＰＵ２がバス８および/またはＮＡＮＤ  Ｉ/Ｆ（インターフェース）７を介してアクセス可能なメモリであり、それぞれＣＰＵ２が上記処理を実行する際に用いる各種のデータを記憶する。なお、ＣＰＵ２が実行するプログラムは、ＣＰＵ２がアクセス可能な記憶装置（記憶媒体）であればどのようなものに格納されていてもよく、例えば、ＲＯＭ４やＮＡＮＤ６に格納されていてもよい。上記プログラムは、ＣＰＵ２を含む情報処理装置内に設けられる記憶装置に格納されてもよいし、ＣＰＵ２を含む情報処理装置に着脱自在に装着される記憶媒体に格納されてもよい。また、上記プログラムは、ＣＰＵ２とネットワークを介して接続される記憶装置（サーバ等）に格納されてもよい。ＣＰＵ２は、上記プログラムの一部または全部を適宜のタイミングでＲＡＭ５に読み出し、読み出されたプログラムを実行するようにしてもよい。
【００３６】
次に、図２を参照して、暗号処理ハードウエア３の第１の例（以下、第１の例に係る暗号処理ハードウエア３の参照符号を「３ａ」とする）について説明する。なお、図２は、暗号処理ハードウエア３ａの一例を示すブロック図である。
【００３７】
図２において、暗号処理ハードウエア３ａは、鍵設定レジスタ３１、モード指定レジスタ３２ａ、データ入力回路３３、データ出力回路３４、鍵使用制限ロジック回路３５ａ、および暗号復号回路３６を備えている。暗号処理ハードウエア３ａは、例えば共通鍵暗号方式を用いて入力データを暗号化および／または復号する暗号処理装置として機能する。例えば、暗号処理ハードウエア３ａは、ＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）暗号方式を用いて暗号化および／または復号が可能であり、一例としてＣＢＣ（Ｃｉｐｈｅｒ  Ｂｌｏｃｋ  Ｃｈａｉｎｉｎｇ）動作モード、ＣＴＲ（Ｃｏｕｎｔｅｒ）動作モード、ＥＣＢ（Ｅｌｅｃｔｒｏｎｉｃ  ＣｏｄｅＢｏｏｋ）動作モード、ＣＦＢ（Ｃｉｐｈｅｒ  ＦｅｅｄＢａｃｋ）動作モード、ＯＦＢ（Ｏｕｔｐｕｔ  ＦｅｅｄＢａｃｋ）操作モード等で動作する。なお、暗号処理ハードウエア３ａは、ＡＥＳ暗号方式に限らず、他の暗号化方式を用いて暗号化および／または復号する暗号処理装置であってもよい。
【００３８】
鍵設定レジスタ３１は、少なくとも１つの暗号鍵データ（第１の例では１つの暗号鍵データ）を保持する。鍵設定レジスタ３１は、いかなるソフトウエアからも書き込むことが可能であるが、読み出すことができない、アクセス制限回路を有している。そして、鍵設定レジスタ３１は、暗号処理システム１の起動時に自動的に実行されるセキュアなソフトウエアによって書き込まれた暗号鍵データを保持する。ここで、セキュアなソフトウエアとは、一般的なアプリケーションプログラムとは異なり、プログラムの平文の導出や改ざんができないシステムファームウエア等であり、ブートプログラム、ファームウエア、カーネル等を含んでいる。本実施例では、ブートプログラムは、ブートＲＯＭ２１に格納されており、ファームウエアおよびカーネルは、ＮＡＮＤ６に格納されている。なお、鍵設定レジスタ３１に保持される暗号鍵データは、暗号鍵データを生成するための種となる暗号種データでもよい。
【００３９】
モード指定レジスタ３２ａは、鍵設定レジスタ３１に保持されている暗号鍵データの用途（例えば、暗号化処理モードおよび復号処理モードの一方）を示すデータを保持する。例えば、第１の例では、鍵設定レジスタ３１に書き込まれた暗号鍵データが暗号化処理モードおよび復号処理モードの何れにも用いることができる、いわゆる共通鍵データであっても、その用途が暗号化処理モードおよび復号処理モードの何れか一方に制限される。そして、鍵設定レジスタ３１に書き込まれた暗号鍵データの処理モード制限を示すデータ（例えば、暗号化処理モードに用途が制限された暗号鍵データなのか、復号処理モードに用途が制限された暗号鍵データなのかを示す数値データ）が、暗号処理システム１の起動時に自動的に実行されるセキュアなソフトウエアによって、モード指定レジスタ３２ａに書き込まれる。また、暗号処理ハードウエア３ａを用いて他の装置がモード指定レジスタ３２ａに既に設定されている処理モードと異なる処理モードで処理をする場合は、モード指定レジスタ３２ａに保持されているデータを要求する処理モードに対応するデータに、当該他の装置によって変更される。
【００４０】
データ入力回路３３は、暗号化または復号するために他の装置が暗号処理ハードウエア３ａへ送信したデータを受け付けて、暗号処理ハードウエア３ａへデータを入力するための入力手段として機能する。データ出力回路３４は、暗号処理ハードウエア３ａによって処理されたデータを、他の装置へ出力する出力手段として機能する。
【００４１】
鍵使用制限ロジック回路３５ａは、鍵設定レジスタ３１に保持されている暗号鍵データの使用を、設定されている処理モードに応じて制限する。例えば、第１の例における鍵使用制限ロジック回路３５ａは、モード指定レジスタ３２ａに保持されているデータが変更されることに応じて、当該データによってその用途が制限されている暗号鍵データを鍵設定レジスタ３１から消去する。一例として、鍵設定レジスタ３１に保持されている暗号鍵データが復号処理モードにその用途が制限されている状態に対して、他の装置が当該暗号鍵データを暗号化処理モードで使用しようとした場合、当該他の装置がモード指定レジスタ３２ａに保持されているデータ（すなわち、復号処理モードを示すデータ）を暗号化処理モードに対応するデータに変更する。この場合、鍵使用制限ロジック回路３５ａは、上記他の装置が使用しようとしている暗号鍵データを鍵設定レジスタ３１から消去する。これによって、上記他の装置は、鍵設定レジスタ３１に保持されている暗号鍵データを暗号化処理モードで使用できないため、結果的に、共通鍵データであっても当該暗号鍵データの用途が復号処理モードに制限されることになる。
【００４２】
暗号復号回路３６は、データ入力回路３３に入力したデータを暗号化または復号して、当該処理後のデータをデータ出力回路３４へ出力する。例えば、暗号復号回路３６は、鍵設定レジスタ３１に保持されている暗号鍵データを用いて、モード指定レジスタ３２ａに保持されている処理モードで入力データを処理し、当該処理後のデータを出力する。なお、暗号復号回路３６は、モード指定レジスタ３２ａに保持されている処理モードに対応する暗号鍵データが鍵設定レジスタ３１から消去されている場合、所定の鍵データ（例えば、数値０の鍵データ）を用いて当該処理モードで入力データを処理してもよいし、入力データをそのまま出力データとして出力してもよい。
【００４３】
次に、図３を参照して、第１の例の暗号処理ハードウエア３ａを含む暗号処理システム１において行われる動作概要の一例について説明する。なお、図３は、第１の例の暗号処理ハードウエア３ａを含む暗号処理システム１における動作の一例を時間軸に沿って表現した図である。
【００４４】
図３において、暗号処理システム１の電源が投入されると、ソフトウエアＡは、暗号処理ハードウエア３ａを用いた処理を許可する処理モードを設定する。例えば、ソフトウエアＡは、セキュアなソフトウエアの一例であるシステムファームウエアである。一例として、ソフトウエアＡは、他のソフトウエアからアクセスできないソフトウエアであり、ＣＰＵ２のチップ内に設けられたブートＲＯＭ２１内に格納されたブートプログラムである。例えば、上記ブートプログラムは、暗号処理システム１の起動時に自動的にＣＰＵ２によって実行されるソフトウエアである。
【００４５】
次に、ソフトウエアＡは、モード指定値をモード指定レジスタ３２ａに書き込んで、暗号処理ハードウエア３ａによって処理可能な処理モードを制限する。例えば、ソフトウエアＡは、復号処理モードを示すモード指定値をモード指定レジスタ３２ａに書き込んで、暗号処理ハードウエア３ａによって処理可能な処理モードを復号処理モードに制限する。
【００４６】
モード指定レジスタ３２ａに新たなモード指定値が書き込まれた場合、鍵使用制限ロジック回路３５ａは、鍵設定レジスタ３１に保持されている暗号鍵データを消去する。モード指定レジスタ３２ａは、いかなるソフトウエアからも書き込み可能に構成されているが、新たなモード指定値が書き込まれたり、書き込まれた値が変更されたりした場合、鍵使用制限ロジック回路３５ａが鍵設定レジスタ３１に保持されている暗号鍵データを消去する。
【００４７】
次に、ソフトウエアＡは、暗号処理ハードウエア３ａによって処理する処理モード（例えば、復号処理モード）に用いる暗号鍵データを鍵設定レジスタ３１に書き込む。これによって、暗号処理ハードウエア３ａには、暗号処理システム１の電源投入時に、暗号鍵データと当該暗号鍵データを用いて処理可能な制限された処理モードとが設定された状態となる。
【００４８】
上述したように暗号鍵データと制限された処理モードとが設定された状態で、暗号処理ハードウエア３ａの外部にある外部装置（ソフトウエアＢ）から第１の例の暗号処理システム１に対する処理要求が行われた場合を説明する。
【００４９】
例えば、暗号処理ハードウエア３ａに設定されている制限された処理モード（例えば、復号処理モード）による処理要求がソフトウエアＢから行われる場合、暗号処理ハードウエア３ａは、ソフトウエアＢから暗号鍵データに対応付けて当該処理モードを指定するモード指定コマンドを取得する。例えば、暗号処理ハードウエア３ａは、復号処理モードを示すモード指定値をモード指定レジスタ３２ａに書き込むコマンドをソフトウエアＢから取得する。これに対して、モード指定レジスタ３２ａには既に復号処理モードを示すモード指定値が設定されているため、モード指定レジスタ３２ａを書き換える必要がなく、鍵使用制限ロジック回路３５ａは、鍵設定レジスタ３１に保持されている暗号鍵データを維持する。そして、ソフトウエアＢから復号処理するための入力データがデータ入力回路３３に入力された場合、暗号復号回路３６は、鍵設定レジスタ３１に保持されている暗号鍵データを用いて入力データを復号処理する。そして、復号されたデータは、データ出力回路３４を介して、ソフトウエアＢへ出力される。
【００５０】
一方、暗号処理ハードウエア３ａに設定されている制限された処理モードとは異なる処理モード（例えば、暗号化処理モード）による処理要求がソフトウエアＢから行われる場合も、暗号処理ハードウエア３ａは、ソフトウエアＢから暗号鍵データに対応付けて当該処理モードを指定するモード指定コマンドを取得する。例えば、暗号処理ハードウエア３ａは、暗号化処理モードを示すモード指定値をモード指定レジスタ３２ａに書き込むコマンドをソフトウエアＢから取得する。これに対して、モード指定レジスタ３２ａには既に復号処理モードを示すモード指定値が設定されているため、モード指定レジスタ３２ａが暗号化処理モードを示すモード指定値に書き換えられる。したがって、鍵使用制限ロジック回路３５ａは、モード指定レジスタ３２ａのモード指定値が書き換えられることに応じて、鍵設定レジスタ３１に保持されている暗号鍵データを消去する。そして、ソフトウエアＢから暗号化処理するための入力データがデータ入力回路３３に入力された場合、暗号復号回路３６は、例えば所定の鍵データ（例えば、数値０の鍵データ）を用いて入力データを暗号化処理して出力する。そして、暗号復号回路３６から出力されたデータは、データ出力回路３４を介して、ソフトウエアＢへ出力される。
【００５１】
このように、暗号処理ハードウエア３ａに設定されている制限された処理モードとは異なる処理モードによる処理が外部装置から要求された場合、当該処理を要求するモード指定値をモード指定レジスタ３２ａに設定すると当該処理に必要な暗号鍵データが消去されるため、当該暗号鍵データを維持したまま初期設定された処理モードを変更することができない。また、暗号鍵データは、鍵設定レジスタ３１から読み出すこともできない。さらに、ソフトウエアＡ以外のソフトウエアは、上記暗号鍵データを知らないため、一旦暗号鍵データが鍵設定レジスタ３１から消去されてしまうと、正しい暗号鍵データを再設定することもできない。このように、暗号鍵データに処理モード（例えば、暗号化処理モードおよび復号処理モードの何れか）を対応付けて設定することによって、ソフトウエアＡによって設定された暗号鍵データが悪用されることを抑止することができる。
【００５２】
なお、上述した暗号処理ハードウエア３の第１の例では、鍵設定レジスタ３１に１つの暗号鍵データを保持する場合について説明したが、鍵設定レジスタ３１に複数の暗号鍵データを保持してもよい。例えば、暗号化および／または復号するデータの用途（例えば、ハードディスク用データ、ゲームプログラム用データ、セーブ用データ、ＳＤメモリカード用データ、光ディスク用データ、メモリカード用データ、ＮＡＮＤ用データ等）、暗号方式、動作モード（例えば、ＣＢＣ動作モード、ＣＴＲ動作モード、ＥＣＢ動作モード、ＣＦＢ動作モード、ＯＦＢ操作モード）毎に、暗号鍵データを保持することが考えられる。この場合、鍵設定レジスタ３１に保持される暗号鍵データ毎にそれぞれモード指定レジスタを暗号処理ハードウエア３ａに設け、複数の暗号鍵データに処理モード（例えば、暗号化処理モードおよび復号処理モードの何れか）をそれぞれ対応付けてモード指定レジスタに設定する。また、外部装置（ソフトウエアＢ）から暗号鍵データに対応付けて処理モードを指定するモード指定コマンドを取得した場合、当該モード指定コマンドで指示されている暗号鍵データを指定するための鍵番号設定レジスタを暗号処理ハードウエア３ａに設け、指定された番号に応じた暗号鍵データとモード指定レジスタとの組を対象として上述した動作を行う。これによって、複数の暗号鍵データが保持される場合も同様に、暗号鍵データの悪用を抑止することができる。
【００５３】
次に、図４を参照して、暗号処理ハードウエア３の第２の例（以下、第２の例に係る暗号処理ハードウエア３の参照符号を「３ｂ」とする）について説明する。なお、図４は、暗号処理ハードウエア３ｂの一例を示すブロック図である。
【００５４】
図４において、暗号処理ハードウエア３ｂは、鍵設定レジスタ３１、モード指定レジスタ３２ｂ、データ入力回路３３、データ出力回路３４、鍵使用制限ロジック回路３５ｂ、暗号復号回路３６、モード制限レジスタ３７、および設定完了レジスタ３８を備えている。暗号処理ハードウエア３ｂは、暗号処理ハードウエア３ａと同様に、例えば共通鍵暗号方式を用いて入力データを暗号化および／または復号する暗号処理装置として機能する。なお、暗号処理ハードウエア３ｂが処理可能な暗号方式の例についても暗号処理ハードウエア３ａと同様であるため、詳細な説明を省略する。また、暗号処理ハードウエア３ｂに備えられている、鍵設定レジスタ３１、データ入力回路３３、データ出力回路３４、および暗号復号回路３６についても、暗号処理ハードウエア３ａと同様であるため、同一の参照符号を付して詳細な説明を省略する。
【００５５】
モード指定レジスタ３２ｂは、外部装置から要求された処理モードを示すモード指定値を保持する。例えば、第２の例でも、鍵設定レジスタ３１に書き込まれた暗号鍵データが暗号化処理モードおよび復号処理モードの何れにも用いることができる、いわゆる共通鍵データであっても、その用途が暗号化処理モードおよび復号処理モードの何れか一方に制限される。しかしながら、第２の例では、モード指定レジスタ３２ｂにはセキュアなソフトウエアによってモード指定値が書き込まれることはなく、処理要求された処理モードを示すモード指定値が当該要求に応じて書き込まれる。
【００５６】
モード制限レジスタ３７は、鍵設定レジスタ３１に保持されている暗号鍵データの用途（例えば、暗号化処理モードおよび復号処理モードの一方）を制限するモード制限値を示すデータを保持する。鍵設定レジスタ３１に書き込まれた暗号鍵データの処理モード制限を示すデータ（例えば、暗号化処理モードに用途が制限された暗号鍵データなのか、復号処理モードに用途が制限された暗号鍵データなのかを示すデータ）は、暗号処理システム１の起動時に自動的に実行されるセキュアなソフトウエアによって、モード制限レジスタ３７に書き込まれる。
【００５７】
設定完了レジスタ３８は、モード制限レジスタ３７への書き込み可否を制限する。例えば、設定未完了を意味するデータ（例えば、数値０を示すデータ）が設定完了レジスタ３８に書き込まれている場合、モード制限レジスタ３７への書き込みは可能となるが、設定完了を意味するデータ（例えば、数値１を示すデータ）の書き込みが設定完了レジスタ３８に行われると、それ以降、モード制限レジスタ３７への書き込みができなくなる。そして、設定完了レジスタ３８は、設定完了を意味するデータが書き込まれると、当該設定完了の解除はできない構成になっている。
【００５８】
鍵使用制限ロジック回路３５ｂは、鍵設定レジスタ３１に保持されている暗号鍵データの使用を、モード制限レジスタ３７に設定されている処理モードに制限する。例えば、第２の例における鍵使用制限ロジック回路３５ｂは、モード制限値が示す処理モードによる処理が要求された場合のみ、モード指定レジスタ３２ｂに対するモード指定を有効にする。具体的には、鍵使用制限ロジック回路３５ｂは、モード指定レジスタ３２ｂへ書き込まれたモード指定値に対応して有効とする処理モードを、モード制限レジスタ３７に保持されているモード制限値が示す処理モードに限定する。したがって、外部装置がモード制限レジスタ３７に保持されているモード制限値の処理モードしか有効とならないため、共通鍵データであってもモード制限値が示す処理モードに暗号鍵データの用途が制限されることになる。
【００５９】
次に、図５を参照して、第２の例の暗号処理ハードウエア３ｂを含む暗号処理システム１において行われる動作概要の一例について説明する。なお、図５は、第２の例の暗号処理ハードウエア３ｂを含む暗号処理システム１における動作の一例を時間軸に沿って表現した図である。
【００６０】
図５において、暗号処理システム１の電源が投入されると、ソフトウエアＡは、暗号処理ハードウエア３ｂを用いた処理を許可する処理モードを設定する。例えば、ソフトウエアＡは、セキュアなソフトウエアの一例であるシステムファームウエアである。一例として、ソフトウエアＡは、他のソフトウエアからアクセスできないソフトウエアであり、ＣＰＵ２のチップ内に設けられたブートＲＯＭ２１内に格納されたブートプログラムである。例えば、上記ブートプログラムは、暗号処理システム１の起動時に自動的にＣＰＵ２によって実行されるソフトウエアである。
【００６１】
次に、ソフトウエアＡは、モード制限値をモード制限レジスタ３７に書き込んで、暗号処理ハードウエア３ｂによって処理可能な処理モードを制限する。例えば、ソフトウエアＡは、復号処理モードを示すモード制限値をモード制限レジスタ３７に書き込んで、暗号処理ハードウエア３ｂによって処理可能な処理モードを復号処理モードに制限する。また、ソフトウエアＡは、暗号処理ハードウエア３ｂによって処理する処理モード（例えば、復号処理モード）に用いる暗号鍵データを鍵設定レジスタ３１に書き込む。
【００６２】
そして、ソフトウエアＡは、設定完了を意味するデータを設定完了レジスタ３８に書き込んで、モード制限レジスタ３７への書き込みができなくなる状態とする。これらの動作によって、暗号処理ハードウエア３ｂには、暗号処理システム１の電源投入時に、暗号鍵データと当該暗号鍵データを用いて処理可能な制限された処理モードとが設定され、当該処理モードの設定が変更できない状態となる。
【００６３】
上述したように暗号鍵データと制限された処理モードとが設定された状態で、外部装置（ソフトウエアＢ）から第２の例の暗号処理システム１に対する処理要求が行われた場合を説明する。
【００６４】
例えば、暗号処理ハードウエア３ｂに設定されている制限された処理モード（例えば、復号処理モード）による処理要求がソフトウエアＢから行われる場合、暗号処理ハードウエア３ｂは、ソフトウエアＢから暗号鍵データに対応付けて当該処理モードを指定するモード指定コマンドを取得する。例えば、暗号処理ハードウエア３ｂのモード指定レジスタ３２ａには、復号処理モードを示すモード指定値がソフトウエアＢによって書き込まれる。これに対して、鍵使用制限ロジック回路３５ｂは、モード制限レジスタ３７に設定されている処理モードとモード指定レジスタ３２ｂに設定されている処理モードとを比較して、双方が一致する場合（すなわち、処理要求された処理モードが処理可能な制限された処理モードである場合）、モード指定レジスタ３２ｂに設定された処理モード指定を有効にする。上記処理要求では、モード指定レジスタ３２ｂに設定された処理モードがモード制限レジスタ３７に設定されている復号処理モードと同じであるため、鍵使用制限ロジック回路３５ｂは、当該処理要求に応じて鍵設定レジスタ３１に保持されている暗号鍵データを用いた復号処理を許可する。そして、ソフトウエアＢから復号処理するための入力データがデータ入力回路３３に入力された場合、暗号復号回路３６は、鍵設定レジスタ３１に保持されている暗号鍵データを用いて入力データを復号処理する。そして、復号されたデータは、データ出力回路３４を介して、ソフトウエアＢへ出力される。
【００６５】
一方、暗号処理ハードウエア３ｂに設定されている制限された処理モードとは異なる処理モード（例えば、暗号化処理モード）による処理要求がソフトウエアＢから行われる場合も、暗号処理ハードウエア３ｂは、ソフトウエアＢから暗号鍵データに対応付けて当該処理モードを指定するモード指定コマンドを取得する。例えば、暗号処理ハードウエア３ｂのモード指定レジスタ３２ａには、暗号化処理モードを示すモード指定値がソフトウエアＢによって書き込まれる。これに対して、鍵使用制限ロジック回路３５ｂは、モード制限レジスタ３７に設定されている処理モードとモード指定レジスタ３２ｂに設定されている処理モードとを比較して、双方が一致しない場合（すなわち、処理要求された処理モードが処理可能な制限された処理モードでない場合）、モード指定レジスタ３２ｂに設定された処理モード指定を無効（モード変更をしない）にする。上記処理要求では、モード指定レジスタ３２ｂに設定された処理モードがモード制限レジスタ３７に設定されている復号処理モードと異なるため、鍵使用制限ロジック回路３５ｂは、当該処理要求に応じた暗号化処理を許可しない。したがって、ソフトウエアＢから暗号化処理するための入力データがデータ入力回路３３に入力された場合であっても、暗号復号回路３６は、入力データを暗号化処理しない。
【００６６】
このように、暗号処理ハードウエア３ｂに設定されている制限された処理モードとは異なる処理モードによる処理が外部装置から要求された場合、当該処理を要求するモード指定値がモード指定レジスタ３２ｂに設定されることによる処理が有効とならずにモード変更ができないため、要求された処理を行うことができない。また、暗号鍵データは、鍵設定レジスタ３１から読み出すこともできない。このように、暗号鍵データに処理モード（例えば、暗号化処理モードおよび復号処理モードの何れか）を対応付けて設定することによって、ソフトウエアＡによって設定された暗号鍵データが悪用されることを抑止することができる。
【００６７】
なお、上述した暗号処理ハードウエア３の第２の例では、鍵設定レジスタ３１に１つの暗号鍵データを保持する場合について説明したが、鍵設定レジスタ３１に複数の暗号鍵データを保持してもよい。例えば、第１の例と同様に、暗号化および／または復号するデータの用途（例えば、ハードディスク用データ、ゲームプログラム用データ、セーブ用データ、ＳＤメモリカード用データ、光ディスク用データ、メモリカード用データ、ＮＡＮＤ用データ等）、暗号方式、動作モード（例えば、ＣＢＣ動作モード、ＣＴＲ動作モード、ＥＣＢ動作モード、ＣＦＢ動作モード、ＯＦＢ操作モード）毎に、暗号鍵データを保持することが考えられる。この場合、鍵設定レジスタ３１に保持される暗号鍵データ毎にそれぞれモード制限レジスタを暗号処理ハードウエア３ｂに設け、複数の暗号鍵データに処理モード（例えば、暗号化処理モードおよび復号処理モードの何れか）をそれぞれ対応付けてモード制限レジスタに設定する。また、外部装置（ソフトウエアＢ）から暗号鍵データに対応付けて処理モードを指定するモード指定コマンドを取得した場合、当該モード指定コマンドで指示されている暗号鍵データを指定するための鍵番号設定レジスタを暗号処理ハードウエア３ｂに設け、指定された番号に応じた暗号鍵データとモード制限レジスタとの組を対象としてモード指定レジスタ３２ｂに設定された処理モードを有効にするか否かの判定動作を行う。これによって、複数の暗号鍵データが保持される場合も同様に、暗号鍵データの悪用を抑止することができる。
【００６８】
また、上述した暗号処理ハードウエア３の第２の例では、暗号処理ハードウエア３ｂに設定されている制限された処理モードとは異なる処理モードによる処理が外部装置から要求された場合に、モード変更ができない構成としたが、他の構成によって暗号鍵データの悪用を抑止してもよい。一例として、モード制限レジスタ３７に設定されている処理モードとモード指定レジスタ３２ｂに設定されている処理モードとを比較して、双方が一致しない場合、鍵使用制限ロジック回路３５ｂが鍵設定レジスタ３１に保持されている暗号鍵データを消去してもよい。この場合、外部装置から要求された処理に用いる暗号鍵データが暗号処理ハードウエア３ｂ内に保持されていない状態となるため、当該暗号鍵データの悪用を抑止することができる。
【００６９】
他の例として、暗号処理ハードウエア３ｂ内に予めダミー鍵データを格納しておく。そして、モード制限レジスタ３７に設定されている処理モードとモード指定レジスタ３２ｂに設定されている処理モードとを比較して、双方が一致しない場合、鍵使用制限ロジック回路３５ｂが鍵設定レジスタ３１に保持されている暗号鍵データを上記ダミー鍵データに切り替えてもよい。この場合、外部装置から要求された処理に用いる暗号鍵データがダミー鍵データに切り替えられて当該処理が行われるため、正規な処理結果を得ることができず、当該暗号鍵データの悪用を抑止することができる。なお、上記ダミー鍵データは、ブートプログラムの実行に応じて暗号処理ハードウエア３ｂ内に格納されてもいいし、暗号処理ハードウエア３ｂの製造時に書き込まれてもよい。
【００７０】
他の例として、モード制限レジスタ３７に設定されている処理モードとモード指定レジスタ３２ｂに設定されている処理モードとを比較して、双方が一致しない場合、鍵使用制限ロジック回路３５ｂがデータ入力回路３３へのデータ入力が受け付けられないようにしてもよい。この場合、外部装置（ソフトウエアＢ）が処理要求するデータをデータ入力回路３３に入力したとしても、当該データが受け付けられないため、鍵設定レジスタ３１に保持されている暗号鍵データの悪用を抑止することができる。
【００７１】
他の例として、モード制限レジスタ３７に設定されている処理モードとモード指定レジスタ３２ｂに設定されている処理モードとを比較して、双方が一致しない場合、データ出力回路３４から出力されるデータが予め設定された固定値（例えば、０）となるように鍵使用制限ロジック回路３５ｂが制御してもよい。この場合、外部装置（ソフトウエアＢ）が処理要求するデータをデータ入力回路３３に入力したとしても、常に固定値のデータがデータ出力回路３４から出力されるため、鍵設定レジスタ３１に保持されている暗号鍵データの悪用を抑止することができる。
【００７２】
また、上述した暗号処理ハードウエア３の第１の例および第２の例では、処理を許可する処理モードをモード指定レジスタ３２ａやモード制限レジスタ３７に設定しているが、処理を禁止する処理モードをモード指定レジスタ３２ａやモード制限レジスタ３７に設定してもいいことは言うまでもない。
【００７３】
また、上述した暗号処理ハードウエア３の第１の例および第２の例では、暗号鍵データが処理モードに対応付けられて設定される例を用いたが、暗号鍵データが他の情報に対応付けられて設定されてもよい。例えば、暗号化および／または復号する動作モード（例えば、ＣＢＣ動作モード、ＣＴＲ動作モード、ＥＣＢ動作モード、ＣＦＢ動作モード、ＯＦＢ操作モード）および当該動作モードで処理を許可する処理モード（例えば、暗号化処理モードおよび復号処理モードの何れか）の組み合わせに用いられる暗号鍵データを設定し、外部装置から取得した動作モードおよび処理モードを示すデータに基づいて、暗号鍵データの使用可否について判定してもよい。
【００７４】
また、上述した暗号処理ハードウエア３の第１の例および第２の例では、暗号鍵データの設定や処理を許可する処理モードの設定を、暗号処理システム１の起動時に自動的に実行されるセキュアなソフトウエアによって行われる例を用いたが、当該設定は暗号処理システム１の起動時でなくてもよい。セキュアなソフトウエアによって上記設定が行われるのであれば、暗号処理システム１の起動後の所定タイミングにおいて当該設定が行われてもよい。
【００７５】
また、上述した説明では、回路やレジスタ等のハードウエアによって暗号処理を制御する手段（暗号処理ハードウエア３）を構成したが、いわゆるソフトウエアによって当該手段を構成してもよい。例えば、上記暗号処理動作を実現するプログラムを実行する制御部（ＣＰＵ）を備える手段によって、上記暗号処理を制御する手段を構成してもよいこの場合、上記プログラムは、外部メモリ等の外部記憶媒体を通じて暗号処理システム１に供給されるだけでなく、有線または無線の通信回線を通じて暗号処理システム１に供給されてもよい。また、上記プログラムは、暗号処理システム１内部の不揮発性記憶装置に予め記録されていてもよい。なお、上記プログラムを記憶する情報記憶媒体としては、不揮発性メモリの他に、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体、フレキシブルディスク、ハードディスク、光磁気ディスク、磁気テープ、などでもよい。また、上記プログラムを記憶する情報記憶媒体としては、上記プログラムを記憶する揮発性メモリでもよい。このような記憶媒体は、コンピュータ等が読み取り可能な記録媒体ということができる。例えば、コンピュータ等に、これらの記録媒体のプログラムを読み込ませて実行させることにより、上述で説明した各種機能を提供させることができる。
【００７６】
また、上述した暗号処理ハードウエア３による暗号化および／または復号する処理は、例えば、特定種の装置にのみ実行可能なアプリケーションを実現する際に有効である。例えば、特定のゲーム装置にのみ実行可能なゲームプログラムを実現する場合、当該ゲーム装置にのみ復号可能なゲームプログラムを生成することが考えられる。一例として、ゲームプログラム生成装置において、共通鍵である暗号鍵データＡを用いて暗号化したゲームプログラムを生成する。この場合、暗号鍵データＡを用いて復号処理ができるゲーム装置のみ当該ゲームプログラムを復号して実行することが可能となり、上記ゲームプログラム生成装置は、特定のゲーム装置にのみ実行可能なゲームプログラムを生成することができる。しかしながら、上記ゲームプログラム生成装置とは異なる別の装置で暗号鍵データＡを用いた暗号化処理が可能である場合、当該別の装置で独自のゲームプログラムの生成が可能となってしまう。しかしながら、上記ゲームプログラム生成装置以外の装置では、暗号鍵データＡを用いる動作モードを復号処理モードに限定することによって、独自のゲームプログラムが生成されることを防止することができる。
【００７７】
このような効果が得られる他の例としては、ユーザが操作する装置に設定されているパスワード制御が考えられる。上記パスワード制御を用いたシステムでは、ユーザが操作する装置（ユーザ端末装置）において用いられているパスワードをユーザが忘れた場合に、当該パスワード用いるアプリケーション等を管理しているサポートから当該パスワードの代わりとなるマスターコードを受け取ることができる。
【００７８】
例えば、図６に示すように、ユーザ端末装置において上記アプリケーションを実行する際に必要なパスワードをユーザが忘れた場合、所定の操作を行うことによって問い合わせコード（例えば、問い合わせコード１２３４５６）を示す文字画像が画面に表示されるとともに、サポートに当該問い合わせコードの連絡を促す画像が画面に表示される。そして、ユーザは、電話やメール等で問い合わせコードをサポートに連絡することによって、マスターコードの連絡を待つ。
【００７９】
サポート側装置は、秘匿数値を用いて連絡された問い合わせコードを演算する演算処理を行う。次に、サポート側装置は、暗号鍵データＢを用いて上記演算処理結果を暗号化処理することによって、マスターコード（例えば、マスターコードＡＢＣＤＥ）を算出する。そして、ユーザから問い合わせコードの連絡を受けたサポートは、算出されたマスターコードを当該ユーザに連絡する。
【００８０】
マスターコードの連絡を受けたユーザは、当該マスターコードをユーザ端末装置に入力する。ユーザ端末装置は、マスターコードが入力されたことに応じて、サポート側装置が用いたものと同じ暗号鍵データＢ（すなわち、共通鍵）を用いて当該マスターコードを復号する。また、ユーザ端末装置では、当該ユーザ端末装置内に予め格納されている秘匿数値（典型的には、サポート側装置が用いた秘匿数値と同じ数値）を用いて上記所定の操作に応じて生成された問い合わせコードを演算する演算処理（典型的には、サポート側装置で行った演算と同じ演算処理）が行われる。そして、上記復号処理によって復号されたマスターコードとユーザ端末装置側の演算処理の結果とを照合する照合処理を行い、双方の処理結果が一致する場合に当該復号処理結果を新たなパスワードとして取得する。
【００８１】
上述したパスワード制御では、問い合わせコードが表示されるとともに、暗号鍵データＢを用いて復号処理ができるユーザ端末装置のみ新たなパスワードを取得することができる。また、新たなパスワードの元となるマスターコードは、上記演算処理に用いる秘匿数値および演算方法が設定されているとともに、暗号鍵データＢを用いて暗号化処理ができる装置（すなわち、サポート側装置）においてのみ生成することができる。しかしながら、上記サポート側装置とは異なる別の装置で暗号鍵データＢを用いた暗号化処理が可能である場合、上記演算処理に用いる秘匿数値および演算方法を類推するだけでマスターコードの生成が可能となってしまう。しかしながら、上記サポート側装置以外の装置では、暗号鍵データＢを用いる動作モードを復号処理モードに限定することによって、マスターコードが他の装置で生成されることを防止することができる。
【００８２】
また、上述では、１つの暗号処理ハードウエア３で暗号復号処理を行う場合の動作を説明しているが、当該暗号復号処理における動作の少なくとも一部を他の装置で行ってもかまわない。例えば、暗号処理システム１が他の装置（例えば、別のサーバ、他のゲーム装置、他の携帯端末）と通信可能に構成されている場合、上記暗号復号処理における各動作は、当該他の装置が協働することによって実行してもよい。このように、上記暗号復号処理における動作の少なくとも一部を他の装置で行うことによって、上述した暗号復号処理と同様の処理が可能となる。
【００８３】
ここで、上述した変形例によれば、いわゆるクラウドコンピューティングのシステム形態や分散型の広域ネットワークおよびローカルネットワークのシステム形態でも本発明を実現することが可能となる。例えば、分散型のローカルネットワークのシステム形態では、据置型の情報処理装置（据置型のゲーム装置）と携帯型の情報処理装置（携帯型のゲーム装置）との間で上記動作を協働により実行することも可能となる。なお、これらのシステム形態では、上述した動作をどの装置で行うかについては特に限定されず、どのような分担をしたとしても本発明を実現できることは言うまでもない。
【００８４】
また、上述した暗号復号処理で用いられる処理順序、設定値、判定に用いられる条件等は、単なる一例に過ぎず他の順序、値、条件であっても、本実施例を実現できることは言うまでもない。
【００８５】
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示に過ぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。本発明は、特許請求の範囲によってのみその範囲が解釈されるべきであることが理解される。また、当業者は、本発明の具体的な実施形態の記載から、本発明の記載および技術常識に基づいて等価な範囲を実施することができることが理解される。また、本明細書において使用される用語は、特に言及しない限り、当該分野で通常用いられる意味で用いられることが理解されるべきである。したがって、他に定義されない限り、本明細書中で使用される全ての専門用語および技術用語は、本発明の属する分野の当業者によって一般的に理解されるのと同じ意味を有する。矛盾する場合、本明細書（定義を含めて）が優先する。
【産業上の利用可能性】
【００８６】
以上のように、本発明は、新規な、暗号処理装置、暗号処理システム、および暗号処理方法等として有用である。
【符号の説明】
【００８７】
１…暗号処理システム
２…ＣＰＵ
３…暗号処理ハードウエア
３１…鍵設定レジスタ
３２…モード指定レジスタ
３３…データ入力回路
３４…データ出力回路
３５…鍵使用制限ロジック回路
３６…暗号復号回路
３７…モード制限レジスタ
３８…設定完了レジスタ
４…ＲＯＭ
５…ＲＡＭ
６…ＮＡＮＤ
７…ＮＡＮＤ  Ｉ/Ｆ
８…バス
【図１】
2015211383.tif 000003
【図２】
2015211383.tif 000004
【図３】
2015211383.tif 000005
【図４】
2015211383.tif 000006
【図５】
2015211383.tif 000007
【図６】
2015211383.tif 000008