(57)【要約】【課題】暗号処理モジュールへの被処理データの供給が停止しているときに暗号処理の秘匿性を保持できる暗号処理システムおよび暗号処理方法を提供する。【解決手段】被暗号処理データの供給停止通知に応じて、暗号処理部での暗号処理を停止させ、被暗号処理データの供給再開通知に応じて、暗号処理部による暗号処理を再開させる。被暗号処理データの供給停止通知、供給再開通知に応じて、暗号処理部による暗号処理を停止、再開することで、被暗号処理データの供給停止中に攻撃者が被暗号処理データを暗号処理部に供給しても、暗号処理済データを入手できなくなる。【選択図】図２
2006101374.tif 000002
【特許請求の範囲】
【請求項１】
暗号化または復号化するための被暗号処理データを供給する被暗号処理データ供給部と、
前記被暗号処理データ供給部から供給される被暗号処理データを暗号化または復号化する暗号処理部と、
前記被暗号処理データ供給部からの被暗号処理データの供給が停止されることを通知するデータ供給停止通知部と、
前記データ供給停止通知部からの被暗号処理データの供給停止通知に応じて、前記暗号処理部による暗号処理を停止させる暗号処理停止制御部と、
前記被暗号処理データ供給部からの被暗号処理データの供給が再開されることを通知するデータ供給再開通知部と、
前記データ供給再開通知部からの被暗号処理データの供給再開通知に応じて、前記暗号処理部による暗号処理を再開させる暗号処理再開制御部と、
を具備することを特徴とする暗号処理システム。
【請求項２】
前記データ供給停止通知部からの被暗号処理データの供給停止通知の後、前記データ供給再開通知部からの被暗号処理データの供給再開通知の前に、前記暗号処理部に被暗号処理データが供給されたときに警告を発する警告部
をさらに具備することを特徴とする請求項１記載の暗号処理システム。
【請求項３】
前記被暗号処理データ供給部を認証する認証部をさらに具備し、
前記暗号処理部が、前記認証部で認証された前記被暗号処理データ供給部から供給される被暗号処理データを暗号処理する
ことを特徴とする請求項１記載の暗号処理システム。
【請求項４】
前記被暗号処理データ供給部からの被暗号処理データの供給が所定期間停止したときに、前記認証部による前記被暗号処理データ供給部の認証を解除する認証解除処理部と、
前記データ供給停止通知部からの被暗号処理データの供給停止通知に応じて、前記認証解除処理部による認証解除処理を停止させる認証解除処理停止制御部と、
前記データ供給再開通知部からの被暗号処理データの供給再開通知に応じて、前記認証解除処理部による認証解除処理を再開させる認証解除処理再開制御部と、
をさらに具備することを特徴とする請求項３記載の暗号処理システム。
【請求項５】
前記被暗号処理データ供給部からの被暗号処理データの供給量と、前記暗号処理部での暗号処理量とが対応しないときに警告を発する警告部、
をさらに具備することを特徴とする請求項１記載の暗号処理システム。
【請求項６】
被暗号処理データ供給部からの、暗号処理部で暗号化または復号化するための被暗号処理データの供給が停止されることを通知するデータ供給停止通知ステップと、
前記被暗号処理データの供給停止通知に応じて、前記暗号処理部での暗号処理を停止させる暗号処理停止ステップと、
前記被暗号処理データの供給が再開されることを通知するデータ供給再開通知ステップと、
前記被暗号処理データの供給再開通知に応じて、前記暗号処理部による暗号処理を再開させる暗号処理再開制御ステップと、
を具備することを特徴とする暗号処理方法。
【請求項７】
前記被暗号処理データの供給停止通知の後、前記被暗号処理データの供給再開通知の前に、前記暗号処理部に被暗号処理データが供給されたときに警告を発する警告ステップ
をさらに具備することを特徴とする請求項６記載の暗号処理方法。
【請求項８】
前記被暗号処理データ供給部を認証する認証ステップと、
前記認証ステップで認証された前記被暗号処理データ供給部から供給される被暗号処理データを前記暗号処理部で暗号処理するステップと、
をさらに具備することを特徴とする請求項６記載の暗号処理方法。
【請求項９】
前記被暗号処理データ供給部からの被暗号処理データの供給が所定期間停止したときに、前記被暗号処理データ供給部の認証を解除する認証解除部の認証解除処理を、前記被暗号処理データの供給停止通知に応じて、停止させる認証解除処理停止ステップと、
前記被暗号処理データの供給再開通知に応じて、前記認証解除処理部による認証解除処理を再開させる認証解除処理再開ステップと、
をさらに具備することを特徴とする請求項８記載の暗号処理方法。
【請求項１０】
前記被暗号処理データ供給部からの被暗号処理データの供給量と、前記暗号処理部での暗号処理量とが対応しないときに警告を発する警告ステップ、
をさらに具備することを特徴とする請求項６記載の暗号処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを暗号化、復号化する暗号処理システムおよび暗号処理方法に関する。
【背景技術】
【０００２】
ＤＶＤ（Digital Versatile Disk）等の記録媒体に動画、静止画、音声等のコンテンツのデータを暗号化して記録し、再生時に復号化することでコンテンツを保護する場合がある（コンテンツ保護システム）。この場合、暗号処理（暗号化、復号化、認証等を含む）を実現するための暗号化鍵や暗号処理のアルゴリズムの秘匿状態を保持する必要がある。
ここで、暗号処理の内容の秘匿状態を保持するために、ストリーム処理をするストリーム処理モジュールと、暗号処理する暗号処理モジュールとを、物理的、または論理的に分離する場合がある。暗号処理モジュールがストリーム処理モジュールの正当性を認証した後に、ストリーム処理モジュールからの暗号処理を許可することで、不正なストリーム処理モジュールによる暗号処理モジュールの使用を排除することができる。
なお、認証用のコマンドを所定の順序でのみ実行可能なものとして、セキュリティを向上する技術が公開されている（特許文献１参照）。また、外部との通信を行って照合をする際の認証レベルを複数有し、それぞれ適切なセキュリティのもとに照合手続きを実行する技術が開示されている（特許文献２参照）。
【特許文献１】特開２００１−７７８０５
【特許文献２】特開２００４−５２６７
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ストリーム処理モジュールと、暗号処理モジュールとを分離し、暗号処理モジュールがストリーム処理モジュールを認証した後に暗号処理モジュールが暗号処理を行ったとしてもセキュリティが完全であるとは限らない。例えば、認証後にストリーム処理モジュールから暗号処理モジュールへの被処理データの供給が止まった場合に（コンテンツのストリーム処理が一時的に停止している状況など）、攻撃が行われる可能性がある。この場合、暗号処理モジュールが暗号処理を実行できる状態となっている。このときに、攻撃者が通信路をアクセスして、暗号処理モジュールへのデータ入出力を行うことで、暗号処理モジュールの振る舞いを調べることが可能となる。暗号処理前後のデータを対比することにより、暗号鍵や暗号アルゴリズムを推測できる。
上記に鑑み、本発明は、暗号処理モジュールへの被処理データの供給が停止しているときに暗号処理の秘匿性を保持できる暗号処理システムおよび暗号処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
本発明に係る暗号処理システムは、暗号化または復号化するための被暗号処理データを供給する被暗号処理データ供給部と、前記被暗号処理データ供給部から供給される被暗号処理データを暗号化または復号化する暗号処理部と、前記被暗号処理データ供給部からの被暗号処理データの供給が停止されることを通知するデータ供給停止通知部と、前記データ供給停止通知部からの被暗号処理データの供給停止通知に応じて、前記暗号処理部による暗号処理を停止させる暗号処理停止制御部と、前記被暗号処理データ供給部からの被暗号処理データの供給が再開されることを通知するデータ供給再開通知部と、前記データ供給再開通知部からの被暗号処理データの供給再開通知に応じて、前記暗号処理部による暗号処理を再開させる暗号処理再開制御部と、を具備することを特徴とする。
【発明の効果】
【０００５】
以上説明したように、本発明によれば暗号処理モジュールへの被処理データの供給が停止しているときに暗号処理の秘匿性を保持できる暗号処理システムおよび暗号処理方法を提供できる。
【発明を実施するための最良の形態】
【０００６】
以下、図面を参照して、本発明の実施の形態を詳細に説明する。
図１は本発明の一実施形態に係る光ディスク装置１０を表すブロック図である。
光ディスク装置１０は、暗号化されて光ディスクに記録された暗号化コンテンツを読み出して復号、再生するシステムであり、暗号処理システムとして機能する。
【０００７】
コンテンツは、映像（動画、静止画）、音声、文章、プログラム等著作権の対象となる可能性のあるもの一般を含む広範な概念である。コンテンツのデータを暗号化（例えば、ＣＳＳ暗号化）して光ディスクに記録することでコンテンツの不正なコピー等の防止が図られる。光ディスクから暗号化されたコンテンツのデータが読み出され、復号化されて平文のデータに変換され、さらにデコードされることで映像、音声等の再生が行われる。
なお、暗号処理をデータの暗号化のみならず復号化をも含むものとして定義し、被暗号処理データをこの暗号処理の対象となるデータとして定義する。
【０００８】
光ディスク装置１０は、光ディスクドライブ１１，ストリーム処理モジュール１２，暗号処理モジュール１３，デコード処理モジュール１４，記憶部１５，入力部１６，表示部１７，音声出力部１８を有する。
【０００９】
光ディスクドライブ１１は、ＣＤ（Compact Disk）、ＤＶＤ（Digital Versatile Disk）等の光ディスクへのデータの書き込み、読み出しを行うドライブ装置である。
ストリーム処理モジュール１２は、中央演算処理装置（Central Processing Unit）およびそれを制御するプログラムで構成され、光ディスクのフォーマットの解釈、光ディスクからの暗号化データの読み出し等種々の処理を行う。なお、この詳細は後述する。
【００１０】
暗号処理モジュール１３は、中央演算処理装置（Central Processing Unit）およびそれを制御するプログラムで構成され、コンテンツデータの復号化等種々の処理を行う。なお、この詳細は後述する。
デコード処理モジュール１４は、中央演算処理装置（Central Processing Unit）およびそれを制御するプログラムで構成され、暗号処理モジュール１３で復号化されたコンテンツデータを表示部１７，音声出力部１８で処理可能なデータ形式に変更する。例えば、ＭＰＥＧ２，ＭＰＥＧ４等にエンコードされたデータ等を映像、音声のデータにデコードする。
【００１１】
記憶部１５は、例えば、半導体メモリであり、ストリーム処理モジュール１２，暗号処理モジュール１３で処理するデータそれぞれの記憶、ストリーム処理モジュール１２，暗号処理モジュール１３間でのデータの受け渡し等に用いられる。なお、この詳細は後述する。
【００１２】
入力部１６は、例えば、キースイッチ、リモートコントローラである、光ディスク装置１０を操作するための操作用情報等の入力に用いられる。
表示部１７は，光ディスクドライブ１１から読み出されたコンテンツデータに基づく映像（静止画、動画）を表示する表示装置、例えば、ＣＲＴ（陰極線管）、ＬＣＤ（液晶表示装置）である。
音声出力部１８は、光ディスクドライブ１１から読み出されたコンテンツデータに基づく音声を出力する装置、例えば、ヘッドホン、スピーカである。
【００１３】
図２は、ストリーム処理モジュール１２および暗号処理モジュール１３の詳細を表すブロック図である。ストリーム処理モジュール１２および暗号処理モジュール１３は、通信路でつながれる互いに独立したモジュールとして観念できる。
これらのモジュールは、独立のハードウェアモジュールで構成できる。但し、これらのモジュールを同一のハードウェアモジュール内の独立したソフトウェアモジュールで構成してもよい。例えば、同一のＣＰＵ上で稼働する３つのプログラムによってこれらのモジュールを構成できる。
【００１４】
ストリーム処理モジュール１２は、認証部１２１，鍵生成指示部１２２，ストリーム処理部１２３，データ供給停止通知部１２４，データ供給再開通知部１２５に区分される。
認証部１２１は、ストリーム処理モジュール１２と暗号処理モジュール１３間での認証のために後述の認証部１３２と認証処理を行う。
鍵生成指示部１２２は、暗号処理モジュール１３での復号化処理のための復号鍵の生成を指示する鍵生成コマンドを暗号処理モジュール１３に送信する。なお、鍵生成コマンドには、必要に応じて、復号鍵を生成するための鍵生成データが含められる。
【００１５】
ストリーム処理部１２３は、光ディスクからの被暗号処理データの読み出し、および暗号処理モジュール１３への提供を行うものであり、被暗号処理データを供給する被暗号処理データ供給部として機能する。
データ供給停止通知部１２４は，データ供給停止コマンドを暗号処理モジュール１３に送信することで、ストリーム処理部１２３からの被暗号処理データの供給が停止されることを通知する。
データ供給再開通知部１２５は、データ供給再開コマンドを暗号処理モジュール１３に送信することで、ストリーム処理部１２３からの被暗号処理データの供給が再開されることを通知する。
【００１６】
暗号処理モジュール１３は、管理部１３１，認証部１３２，鍵生成部１３３，暗号処理部１３４，タイムアウト処理部１３５，状態記憶部１３６に区分される。
管理部１３１は、暗号処理モジュール１３全体の動作状態を管理するものであり、暗号処理停止制御部、暗号処理再開制御部、認証解除処理停止制御部、認証解除処理再開制御部、および第１、第２の警告部として機能する。
【００１７】
管理部１３１は、データ供給停止コマンドに対応して暗号処理部１３４による暗号処理を停止させ（暗号処理停止制御部としての機能）、データ供給再開コマンドに対応して暗号処理部１３４による暗号処理を再開させる（暗号処理再開制御部としての機能）。なお、この暗号処理の停止、再開は、状態記憶部１３６内の停止状態情報の書き替え（停止中、動作中）によって行われる。
【００１８】
管理部１３１は、データ供給停止コマンドに対応してタイムアウト処理部１３５によるタイムアウト処理を停止させ（認証解除処理停止制御部としての機能）、データ供給再開コマンドに対応してタイムアウト処理部１３５によるタイムアウト処理を再開させる（認証解除処理再開制御部としての機能）。なお、このタイムアウト処理の停止、再開は、暗号処理と同様、状態記憶部１３６内の停止状態情報の書き替え（「停止中」、「動作中」）によって行われる。
【００１９】
以上のように、データ供給停止コマンドおよびデータ供給再開コマンドに対応して、暗号処理とタイムアウト処理の双方の停止および再開が行われる。但し、暗号処理とタイムアウト処理の一方の停止および再開を行うことも可能である。
【００２０】
管理部１３１は、データ供給停止コマンドの受信後、データ供給再開コマンドの受信前に、暗号処理モジュール１３に被暗号処理データが供給されたときに警告を発し（第１の警告部としての機能）、ストリーム処理モジュール１２からの被暗号処理データの供給量と、暗号処理モジュール１３での暗号処理量とが対応しないときに警告を発する（第２の警告部としての機能）。
これらの警告は、警告のためのコマンドを発行することによって行える。この警告コマンドによって、表示部１７，音声出力部１８等に何らかの表示を行いユーザの注意を促すことができる。また、データ供給再開コマンドの受信前に検出されたデータの廃棄等も行える。
【００２１】
認証部１３２は、ストリーム処理モジュール１２と暗号処理モジュール１３間での認証のために認証部１２１と認証処理を行う。
鍵生成部１３３は、鍵生成指示部１２２から発行された鍵生成コマンドに基づき、復号鍵を生成する。
暗号処理部１３４は、鍵生成部１３３で生成された復号鍵に基づき、ストリーム処理部１２３から供給された被暗号処理データを復号化する。
【００２２】
タイムアウト処理部１３５は，ストリーム処理部１２３からの被暗号処理データが所定時間受信されない場合にタイムアウト処理を行うものであり、認証解除処理部として機能する。タイムアウト処理が行われると、ストリーム処理モジュール１２と暗号処理モジュール１３間での認証が解除され、状態記憶部１３６の認証状態情報が「認証済み」から「未認証」に書き替えられる。この結果、認証を再度行わないと、暗号処理部１３４での暗号処理が行えなくなる。
状態記憶部１３６は、暗号処理モジュール１３の状態を表す状態情報を記憶する。状態情報には、例えば、ストリーム処理モジュール１２が認証済みか否かを表す認証状態情報、暗号処理が停止中か否かを表す停止状態情報が挙げられる。
なお、状態記憶部１３６は、記憶部１５を用いて実現できる。
【００２３】
図３は、記憶部１５中の記憶領域を表す模式図である。図３に示すように、記憶部１５の記憶領域は、専用領域ＡＥ１〜ＡＥ３（ストリーム処理用領域ＡＥ１，暗号処理用領域ＡＥ２，デコード処理用領域ＡＥ３）と、共用領域ＡＣ１，ＡＣ２に区分される。
専用領域ＡＥ１〜ＡＥ３は、ストリーム処理モジュール１２，暗号処理モジュール１３，デコード処理モジュール１４それぞれで専用（排他的）に用いられる記憶領域であり、他の構成要素（ストリーム処理モジュール１２，暗号処理モジュール１３，デコード処理モジュール１４）からはアクセスすることができない。この結果、ストリーム処理モジュール１２，暗号処理モジュール１３，デコード処理モジュール１４それぞれでのデータの独立性、秘匿性の保持が可能となる。
【００２４】
共用領域ＡＣ１，ＡＣ２は、ストリーム処理モジュール１２，暗号処理モジュール１３，デコード処理モジュール１４間でのデータのやり取りのための記憶領域であり、それぞれストリーム処理モジュール１２，暗号処理モジュール１３間、暗号処理モジュール１３，デコード処理モジュール１４間で共通にアクセスし、これらの間でデータを受け渡すことができる。
例えば、共用領域ＡＣ１にストリーム処理モジュール１２がデータを書き込み、暗号処理モジュール１３がこのデータを読み出すことで、ストリーム処理モジュール１２から暗号処理モジュール１３にデータを供給できる。
【００２５】
以上のように、記憶部１５中の記憶領域を専用領域ＡＥ１〜ＡＥ３および共用領域ＡＣ１，ＡＣ２に区分することで、ストリーム処理モジュール１２，暗号処理モジュール１３，デコード処理モジュール１４間でのデータの独立性および秘匿性と、データ交換の容易性との両立を図っている。
【００２６】
（光ディスク装置１０の動作）
以下、光ディスク装置１０の動作につき説明する。
図４は、光ディスク装置１０の動作手順の一例を表すフロー図である。また、図５は、光ディスク装置１０中のストリーム処理モジュール１２，暗号処理モジュール１３，デコード処理モジュール１４間での情報の流れを表すシグナルフローグラフである。
【００２７】
（１）認証処理（図４のステップＳ１１，図５のタイミングＴ１１）
ストリーム処理モジュール１２は、暗号処理モジュール１３により認証を受ける。認証が完了すると状態記憶部１３６中の認証状態情報が「未認証」から「認証済み」に書き替えられ、暗号処理モジュール１３が認証済み状態となる。また、状態記憶部１３６中の停止状態情報が「停止中」となる。
認証がなされなかった場合は、状態記憶部１３６中の認証状態情報は未認証のまま保持される。
【００２８】
なお、本発明では、主として暗号処理モジュール１３へのデータ入力時におけるデータ挿入による攻撃を考慮していることから、図４、図５でデコード処理モジュール１４との認証を明記していない。デコード処理モジュール１４も認証に参加することで、暗号処理の秘匿性の向上を図れる。例えば、暗号処理モジュール１３とデコード処理モジュール１４間で認証を行うことができる。暗号処理モジュール１３からの暗号処理済データを認証されたデコード処理モジュール１４にのみ送信することで、暗号処理済データが横取りされるおそれを低減できる。
【００２９】
（２）復号鍵の生成（図４のステップＳ１２，図５のタイミングＴ１２）
ストリーム処理モジュール１２から鍵生成コマンドが発行されると、暗号処理モジュール１３は、状態記憶部１３６中の認証状態情報が「認証済み」であれば、暗号処理モジュール１３内に復号鍵を生成させる。復号鍵の生成には、鍵生成コマンドと共に、あるいは別個に送信される鍵生成データを用いることができる。また、状態記憶部１３６中の停止状態情報を「動作中」とする。この結果、暗号処理モジュール１３が認証済み、かつ暗号処理可能な状態になる。
なお、暗号処理モジュール１３が認証済み状態でない場合には、鍵生成コマンド等の処理は拒絶される。
【００３０】
（３）復号化処理（図４のステップＳ１３，図５のタイミングＴ１３〜Ｔ１６）
暗号処理モジュール１３が暗号処理可能な状態（状態記憶部１３６中の停止状態情報が「動作中」）のときに、ストリーム処理モジュール１２から暗号処理モジュール１３に被暗号処理データを供給すると（タイミングＴ１３，Ｔ１５）、暗号処理モジュール１３内で暗号処理が行なわれ、暗号処理モジュール１３からデコード処理モジュール１４に暗号処理済データが送信される（タイミングＴ１４，Ｔ１６）。
この被暗号処理データの供給と、暗号処理済データの送信は、ストリーム処理モジュール１２でのストリーム処理が継続する間、連続的に行なわれる。
この暗号処理の際にストリーム処理モジュール１２，暗号処理モジュール１３それぞれでの処理量を確認することで、暗号処理の秘匿性を向上することができる。なお、この詳細は後述する。
【００３１】
（４）データ供給停止コマンドの発行（図４のステップＳ１４，図５のタイミングＴ１７）
入力部１６からの一時停止指示の入力等によりストリーム処理モジュール１２からのデータ供給が停止される場合、被暗号処理データが供給されない状態に移行する前に、ストリーム処理モジュール１２から暗号処理モジュール１３にデータ供給停止コマンドを発行する。
【００３２】
（５）暗号処理・タイムアウト処理の停止（図４のステップＳ１５，図５のタイミングＴ１７）
データ供給停止コマンドを受けた暗号処理モジュール１３は、状態記憶部１３６中の停止状態情報を「動作中」から「停止中」に書き替える。この結果、暗号処理モジュール１３の状態は、認証済みかつ暗号処理停止状態に移行され、暗号処理モジュール１３での暗号処理およびタイムアウト処理が停止される。
【００３３】
１）暗号処理の停止
暗号処理が停止していることは、暗号処理モジュール１３の暗号処理の秘匿性の保持に役立つ。例えば、ストリーム処理モジュール１２からの被暗号処理データの供給停止中に攻撃者がストリーム処理モジュール１２に代わって被暗号処理データを供給したとしても（タイミングＴ１８），これに対応する暗号処理済データの返信は行われない（タイミングＴ１９）。このため、攻撃者が暗号処理前後のデータから暗号化アルゴリズムや暗号鍵を解析することはできない。
なお、この攻撃者として、光ディスク、あるいはネットワーク等から光ディスク装置１０に送り込まれた寄生プログラムを挙げることができる。光ディスク装置１０がネットワークに接続可能な場合には、このような攻撃にさらされる可能性が大きくなる。
【００３４】
ここで、認証済みかつ暗号処理停止の状態において供給されたデータは不正データとみなすルールを設定できる。このようにすることで、攻撃者の被暗号処理データが暗号処理モジュール１３に供給された場合、不正なデータ供給の検出が行なえる。管理部１３１が不正なデータを検出し、警告を発する。
また、この検出に対応して、不正データの破棄や、処理自体の全面的な終了といった対策を取ることができ、攻撃の更なる無効化が可能である。
【００３５】
このような不正データの検出は、正規の被暗号処理が停止している期間におけるセキュリティ向上手段として価値がある。
一般に暗号処理モジュール１３の処理スループットには上限がある。このため、ストリーム処理モジュール１２から正規の被暗号処理データの供給中に、攻撃者が不正な被暗号処理データを供給すると、正規の暗号処理済データの単位時間あたりの暗号処理可能量が減少する。この暗号処理可能量の減少を利用して、正規の被暗号処理データを供給しているストリーム処理モジュール１２側で異常の検出を行うことが可能である。
【００３６】
・比較例１
図６は、本発明の比較例に係る光ディスク装置１０ｘでの処理シーケンスに対する攻撃の１例を示すシグナルフローグラフであり、図５と同様に、ストリーム処理モジュール１２ｘ，暗号処理モジュール１３ｘ，デコード処理モジュール１４ｘ間での情報の流れを表す。
ストリーム処理モジュール１２ｘの認証を経て、暗号処理済データを得るまでは、図５と同様である（図６のタイミングＴ５１〜Ｔ５６，図５のタイミングＴ１１〜Ｔ１６）。
ここで、ストリーム処理モジュール１２ｘ側で、処理すべきストリームが停止された場合、暗号処理モジュール１３ｘでの認証済み状態が確立したまま、被暗号処理データが供給されない状態になる。
【００３７】
この状況で、攻撃者５１が、ストリーム処理モジュール１２ｘ，暗号処理モジュール１３ｘ，デコード処理モジュール１４ｘ間の通信路に侵入し、攻撃者の被暗号処理データを供給し、暗号処理済データを取得したとする。攻撃者は、暗号処理前後のデータを収集することで、暗号処理モジュール１３ｘ内の秘密鍵や秘密の暗号処理アルゴリズムの推定などを行える。
【００３８】
これに対して、本実施形態では、暗号処理モジュール１３での暗号処理が停止されているために、攻撃者が被暗号処理データを供給しても、暗号処理済データを取得することはできない。データ供給再開コマンドの発行前にデータを供給したことで、このデータを不正データとして検出することも可能になる。
【００３９】
２）タイムアウト処理の停止
暗号処理モジュール１３は、認証以降、被暗号処理データの供給が所定期間停止しているときに、タイムアウト処理を実施し、認証状態を解除するのが通例である。暗号処理モジュール１３の状態が停止状態の場合には、このタイムアウト処理が停止される。
このタイムアウト処理は、ストリーム処理モジュール１２側の障害等に対処して、システムを安定な状態に保つために行われる。しかしながら、ストリーム供給の停止の原因が、ストリーム処理モジュール１２側の障害によるものか、ユーザの一時停止指示等によるものか、その確認が困難な場合がある。ストリーム供給の停止の発生のたびに、タイムアウト処理を行なうと、ストリーム供給の再開時に、認証を再度実施する必要があり、暗号処理が迅速に再開できない可能性がある。
【００４０】
タイムアウト処理を停止することで、このような事態の発生を防止できる。即ち、ストリーム処理モジュール１２側でユーザの一時停止指示など、正常な事象でのデータ供給停止時には、データ供給停止コマンドを発効し、認証済みかつ暗号処理停止の状態に移行させることができる。暗号処理モジュール１３では、ストリーム処理モジュール１２側をタイムアウトさせる必要がなくなり、認証済みの状態を維持できる。
なお、データ供給の停止期間は、例えば、定期的にタイマ割り込みを発生させ、データの供給が最後に行なわれてからのタイマ割込み回数を計数することで計時できる。
【００４１】
・比較例２
図７は、本発明の比較例に係る光ディスク装置１０ｙでのタイムアウト処理の１例を示すシグナルフローグラフであり、図５と同様に、ストリーム処理モジュール１２ｙ，暗号処理モジュール１３ｙ，デコード処理モジュール１４ｙ間での情報の流れを表す。
ストリーム処理モジュール１２ｙが認証を経て、暗号処理済データを得るまでは、図５と同様である（図７のタイミングＴ６１〜Ｔ６６，図５のタイミングＴ１１〜Ｔ１６）。
ここで、ストリーム処理モジュール１２ｙ側で、処理すべきストリームが停止させた場合、暗号処理モジュール１３ｙ内での認証済み状態が確立したまま、被暗号処理データが供給されない状態になる。
【００４２】
暗号処理モジュール１３への被暗号処理データの供給が一定期間ない場合、タイムアウト処理が実施され、断絶処理（認証の解除、および必要であればその通知）等が行なわれる。ストリーム供給の停止のたびに断絶処理を行なうと、ストリーム供給の再開時に認証を再度実施する必要があり、暗号処理が迅速に再開できない可能性がある。
これに対して、本実施形態では、ストリーム供給が停止されても、認証状態が解除されないので、暗号処理を迅速に再開できる。
【００４３】
（６）データ供給再開コマンドの発行（図４のステップＳ１６，図５のタイミングＴ２０）
ストリーム処理モジュール１２からのデータ供給を再開する場合は、ストリーム処理モジュール１２からデータ供給再開コマンドを発行することとし、暗号処理モジュール１３の状態を、認証済みかつ暗号処理可能な状態に移行させる。
【００４４】
（７）復号化処理の再開（図４のステップＳ１７、図５のタイミングＴ２１以降）
復号化処理が再開される。ストリーム処理モジュール１２が認証済みの状態が保持されていることから、被暗号処理データの供給を迅速に再開できる。
暗号処理モジュール１３が暗号処理可能な状態（状態記憶部１３６中の停止状態情報が「動作中」）のときに、ストリーム処理モジュール１２から暗号処理モジュール１３に被暗号処理データを供給すると（タイミングＴ２１）、暗号処理モジュール１３内で暗号処理が行なわれ、暗号処理モジュール１３からデコード処理モジュール１４に暗号処理済データが送信される（タイミングＴ２２）。
【００４５】
以上のように、ストリーム処理モジュール１２が、認証成功後、被暗号処理データの供給を一時的に停止する際に、暗号処理モジュール１３にデータ供給の停止を示すコマンドを発行し、再開のコマンドが発行されるまでの間、暗号処理を停止する。このようにして、攻撃者が暗号処理モジュール１３にデータを供給する攻撃を排除できる。このとき、供給されたデータの排除等の措置を取ることも可能である。
また、ストリーム処理モジュール１２が不具合などで正しく被暗号処理データの供給が行なえなくなった際に、タイムアウト制御を行えるようになり、攻撃者のデータ供給の攻撃を行なえる時間を短くし、また、システムの安定化を図ることが可能となる。
【００４６】
（暗号処理中における暗号処理の秘匿性の向上）
前述のように、暗号処理の際にストリーム処理モジュール１２，暗号処理モジュール１３それぞれでの処理量を確認することで、暗号処理の秘匿性を向上できる。即ち、ストリーム処理モジュール１２が暗号処理モジュール１３に被暗号化データを供給している状況において、攻撃者がデータを挿入する攻撃をより確実に排除できる。
以下、この処理量の確認による秘匿性の向上の詳細を説明する。
【００４７】
Ａ．  ストリーム処理モジュール１２，暗号処理モジュール１３それぞれが、処理したストリームの量（データ量そのもの、データをパケットとして通信している場合のパケット数、ＩＤ数（パケットを識別する識別情報）など）を通知し、お互いに処理量を確認する。
【００４８】
この通知、確認は、必ずしも双方向で行う必要はなく、一方向のみでも行える。例えば、ストリーム処理モジュール１２が被暗号処理データの供給量を暗号処理モジュール１３に通知し、暗号処理モジュール１３が被暗号処理データの暗号処理量と、通知された被暗号処理データの供給量とが一致するか否かを確認する。また、暗号処理モジュール１３が暗号処理した被暗号処理データの量をストリーム処理モジュール１２に通知し、ストリーム処理モジュール１２が被暗号処理データの供給量と、通知された被暗号処理データの暗号処理量とが一致するか否かを確認する。
【００４９】
この通知は、被暗号処理データ、暗号処理済データの送信に対応して行っても良いし（常に送信）、定期的に送信しても良い。常に送信すれば、定期的な送信と比べて、保護の確実性が向上する（定期的なチェックでは、チェック間の未チェック期間に攻撃を受ける可能性がある）。一方、定期的に送信すると処理の負担が低減される。即ち、通知の頻度は処理負担と秘匿性のバランスによって決定できる。
この通知は、被暗号化データ、暗号化データを送信するためのパケットに含めてもよいし、これらのパケットとは別個のパケットとしても差し支えない。
【００５０】
この通知の内容は、改竄等を防ぐため、暗号化して送るのが好ましい。
暗号化には次の１）、２）のような方式を利用できる。
１）共通鍵暗号方式
ストリーム処理モジュール１２，暗号処理モジュール１３双方の処理量を同一の暗号鍵で暗号化して送信する。共通の暗号鍵を用いることで暗号処理の負担を低減できる。
２）署名認証方式
通知内容に送信側が署名して受信側がその署名を確認することでセキュリティを向上できる。送信者の確実性を向上できる。
【００５１】
Ｂ．  データの処理量を通知する替わりに、次の（１）、（２）に示すような手段を採用することで実質的に同様の効果が得られる。
（１）暗号処理モジュール１３で処理したデータ量を計測するカウンタを、ストリーム処理モジュール１２から、定期的に（または常に）確認する。即ち、暗号処理したデータ量を暗号処理モジュール１３が記憶部１５に書き込み、ストリーム処理モジュール１２が読み出す。このようにして、暗号処理モジュール１３からストリーム処理モジュール１２に処理量を通知したのと実質的に同様の結果が得られる。
この場合、カウンタ上の記録を暗号化することで、攻撃者からの不正なアクセスから保護することが好ましい。
【００５２】
（２）暗号処理モジュール１３がソフトウェアで実装されている場合に、ストリーム処理モジュール１２が暗号処理モジュール１３に供給したストリーム量を定期的に（または常に）確認する。
暗号処理モジュール１３がソフトウェアで実装されている場合には、ストリーム処理モジュール１２が暗号処理モジュール１３での暗号処理量を確認することは比較的容易であるので、ストリーム処理モジュール１２が供給量を確認し、両者を比較すればよい。
【００５３】
（処理量の確認および暗号処理停止の関係）
以上の処理量の確認は被暗号処理データの供給中、停止中の何れにも適用することができる。このようにすると、被暗号処理データの停止中におけるセキュリティの大幅な向上が図られる。
一方、被暗号処理データの供給中は処理量の確認により、被暗号処理データの供給停止中は暗号処理の停止により、セキュリティを保持することも可能である。被暗号処理データの供給停止中での処理量の確認を不要とすることで、被暗号処理データの供給停止中における処理の負担が軽減される。
【００５４】
処理量の確認のみを適用し、暗号処理の停止を適用しない場合には、停止状態への移行直後に攻撃者にデータを送信されたとき、その検出に時間を要する可能性がある。この場合、暗号処理モジュール１３で暗号処理が行なわれ、処理結果が攻撃者により読み取られるおそれがある。
このように、処理量の確認と暗号処理停止とを併用することで、処理量の確認を定期的に行っている場合に、この定期的な確認に先立って攻撃を防ぐことが可能となる。
【００５５】
（その他の実施形態）
本発明の実施形態は上記の実施形態に限られず拡張、変更可能であり、拡張、変更した実施形態も本発明の技術的範囲に含まれる。
【００５６】
例えば、ストリーム処理モジュールとデコード処理モジュールを全体として、ホストシステムとして考え、暗号処理モジュールと対比することもできる。この場合には、図５のタイミングＴ１５，Ｔ１６での被暗号処理データ、暗号処理済データの送受信は、ホストシステムと暗号処理モジュール間で行っていることになる。
【００５７】
被暗号処理データ供給の停止時に、暗号処理の停止およびタイムアウト処理の一方のみを実行することも可能である。また、処理量の確認と、暗号処理の停止の一方のみを適用することも可能である。これら３つの処理は、その１つのみ、適宜な２つの組み合わせ、３つ全部の組み合わせの何れもが適用可能である。
【図面の簡単な説明】
【００５８】
【図１】本発明の一実施形態に係る光ディスク装置を表すブロック図である。
【図２】ストリーム処理モジュールおよび暗号処理モジュールの詳細を表すブロック図である。
【図３】記憶部１５中の記憶領域を表す模式図である。
【図４】光ディスク装置の動作手順の一例を表すフロー図である。
【図５】光ディスク装置中のストリーム処理モジュール、暗号処理モジュール１デコード処理モジュール間での情報の流れを表すシグナルフローグラフである。
【図６】本発明の比較例に係る光ディスク装置での処理シーケンスに対する攻撃の１例を示すシグナルフローグラフである。
【図７】本発明の比較例に係る光ディスク装置でのタイムアウト処理の１例を示すシグナルフローグラフである。
【符号の説明】
【００５９】
１０…光ディスク装置、１１…光ディスクドライブ、１２…ストリーム処理モジュール、１３…暗号処理モジュール、１４…デコード処理モジュール、１５…記憶部、１６…入力部、１７…表示部、１８…音声出力部、１２１…認証部、１２２…鍵生成指示部、１２３…ストリーム処理部、１２４…データ供給停止通知部、１２５…データ供給再開通知部、１３１…管理部、１３２…認証部、１３３…鍵生成部、１３４…暗号処理部、１３５…タイムアウト処理部、１３６…状態記憶部、ＡＣ１，ＡＣ２…共用領域、ＡＥ１〜ＡＥ３…専用領域、ＡＥ１…ストリーム処理用領域、ＡＥ２…暗号処理用領域、ＡＥ３…デコード処理用領域
【図１】
2006101374.tif 000003
【図２】
2006101374.tif 000004
【図３】
2006101374.tif 000005
【図４】
2006101374.tif 000006
【図５】
2006101374.tif 000007
【図６】
2006101374.tif 000008
【図７】
2006101374.tif 000009