(57)【特許請求の範囲】
【請求項１】
連続する複数の単位データから構成されるストリームデータが前記単位データ毎に順次暗号化されていく場合、複数の前記単位データのそれぞれが暗号化されるときに利用される暗号化鍵が所定の規則で更新されていくことが規定されている第１の暗号化手法に従って、そのストリームデータが暗号化された結果得られる暗号化データに対して、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを利用して復号処理を施す情報処理装置であって、
前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵を利用して復号処理を施す復号手段と、
前記メタデータを取得して、前記メタデータに含まれる複数の前記暗号化鍵のそれぞれに対応する複数の復号鍵のそれぞれを生成し、前記メタデータに含まれる前記更新情報に従って、複数の前記復号鍵のうちの対応する１つを前記復号手段に提供するメタデータ取得手段と
を備え、
複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、
前記メタデータ取得手段は、
前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成する復号鍵生成手段と、
前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行する更新指令手段と、
前記更新指令手段により前記更新指令が発行されるまでの間、前記復号鍵生成手段により生成された第１の復号鍵を前記復号手段に出力し、前記更新指令手段により前記更新指令が発行された以降、前記復号鍵生成手段により前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力する復号鍵出力手段と、
前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が前記復号鍵生成手段により既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う更新指令制御手段と
を有する情報処理装置。
【請求項２】
複数の前記暗号化鍵のそれぞれには、自身を特定するためのKey IDがそれぞれ付されており、
前記メタデータは、複数の前記単位データ毎に生成される、SMPTE（Society of Motion Picture and Television Engineers）291Mに準拠したMeta packet1，2，3から構成され、
前記第２の暗号化手法に従って暗号化された複数の前記暗号化鍵のうちの所定の１つが、所定の単位データについての前記Meta packet1，2に含まれており、
各単位データについての前記Meta packet3には、Next Key IDとCurrent Key IDが少なくとも含まれている
請求項１に記載の情報処理装置。
【請求項３】
前記更新指令制御手段は、前記第１の復号鍵から前記第２の復号鍵への更新タイミングの直前に前記復号鍵生成手段により生成された復号鍵に対応する暗号化鍵のKey IDと、前記第１の復号鍵から前記第２の復号鍵への更新タイミングの直前の単位データについての前記Meta packet3に含まれる前記Next Key IDとを比較し、一致するという比較結果の場合、前記第２の復号鍵が前記復号鍵生成手段により既に生成されていると判定し、一致しないという比較結果の場合、前記第２の復号鍵が前記復号鍵生成手段によりまだ生成されていないと判定する
請求項２に記載の情報処理装置。
【請求項４】
前記更新指令制御手段は、前記第２の復号鍵が前記復号鍵生成手段によりまだ生成されていないと判定した場合、その判定がなされた第１の時点以降、前記復号鍵生成手段により最新に生成された復号鍵に対応する暗号化鍵のKey IDと、前記第１の時点以降の単位データについての前記Meta packet3に含まれる前記Current Key IDとを比較し、一致するという比較結果の場合、前記第２の復号鍵が前記復号鍵生成手段により生成されたと判定し、その判定がなされた第２の時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う
請求項３に記載の情報処理装置。
【請求項５】
連続する複数の単位データから構成されるストリームデータが前記単位データ毎に順次暗号化されていく場合、複数の前記単位データのそれぞれが暗号化されるときに利用される暗号化鍵が所定の規則で更新されていくことが規定されている第１の暗号化手法に従って、そのストリームデータが暗号化された結果得られる暗号化データに対して、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを利用して復号処理を施す情報処理装置であって、
前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵を利用して復号処理を施す復号手段と、
前記メタデータを取得して、復号鍵生成手段と、更新指令手段と、復号鍵出力手段と、更新指令制御手段と有するメタデータ取得手段と
を備える前記情報処理装置の情報処理方法において、
複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、
前記復号鍵生成手段が、前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成し、
前記更新指令手段が、前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行し、
前記復号鍵出力手段が、前記更新指令手段により前記更新指令が発行されるまでの間、前記復号鍵生成手段により生成された第１の復号鍵を前記復号手段に出力し、前記更新指令手段により前記更新指令が発行された以降、前記復号鍵生成手段により前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力し、
前記更新指令制御手段が、前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が前記復号鍵生成手段により既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う
ステップを有する情報処理方法。
【請求項６】
連続する複数の単位データから構成されるストリームデータが前記単位データ毎に順次暗号化されていく場合、複数の前記単位データのそれぞれが暗号化されるときに利用される暗号化鍵が所定の規則で更新されていくことが規定されている第１の暗号化手法に従って、そのストリームデータが暗号化された結果得られる暗号化データに対して、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを利用する復号処理を施す情報処理装置のコンピュータを、
前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵を利用して復号処理を施す復号手段と、
前記メタデータを取得して、前記メタデータに含まれる複数の前記暗号化鍵のそれぞれに対応する複数の復号鍵のそれぞれを生成し、前記メタデータに含まれる前記更新情報に従って、複数の前記復号鍵のうちの対応する１つを前記復号手段に提供するメタデータ取得手段と
して機能させ、
複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、
さらに、前記メタデータ取得手段を、
前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成する復号鍵生成手段と、
前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行する更新指令手段と、
前記更新指令手段により前記更新指令が発行されるまでの間、前記復号鍵生成手段により生成された第１の復号鍵を前記復号手段に出力し、前記更新指令手段により前記更新指令が発行された以降、前記復号鍵生成手段により前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力する復号鍵出力手段と、
前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が前記復号鍵生成手段により既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う更新指令制御手段と
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法並びにプログラムに関し、特に、ストリームデータの復号に必要な鍵が暗号化されている場合、その鍵の復号処理が間に合わなかったときの悪影響を可能な限り低減させることができる情報処理装置および方法並びにプログラムに関する。
【背景技術】
【０００２】
近年、連続する複数の単位データから構成されるストリームデータが単位データ毎に順次暗号化されていく場合、複数の単位データのそれぞれが暗号化されるときに利用される暗号化鍵が所定の規則で更新されていくことが規定されている暗号化手法が存在し、その利用が検討されている（例えば特許文献１参照）。
【０００３】
また、このような暗号化手法に従ってストリームデータを暗号化するとともに、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを生成する暗号化装置の実現化も検討されている。
【０００４】
そして、このような暗号化装置により暗号化された暗号化データに対して、その暗号化装置により生成されたメタデータを利用して復号処理を施す復号装置の実現化も検討されている。
【０００５】
さらに、これらの複数の暗号化鍵の秘匿性を強化するために、これらの複数の暗号化鍵を第２の暗号化手法に従って暗号化した上で、メタデータに含めることも検討されている。
【０００６】
従って、この場合、復号装置は、メタデータに含まれる、第２の暗号化手法に従って暗号化された複数の暗号化鍵のそれぞれを復号することで、複数の復号鍵のそれぞれを生成し、複数の復号鍵のそれぞれを利用して復号処理を施す必要がある。
【特許文献１】特開2003-143548号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、復号装置は、第２の暗号化手法に従って暗号化された複数の暗号化鍵のうちの、ストリームデータに対する復号処理に必要な鍵を、その復号処理の前に必ず生成しておかないと、その復号処理を正常に実行できなくなる、という問題があった。
【０００８】
即ち、ストリームデータに対する復号処理で利用される鍵が暗号化されている場合、その鍵の復号が間に合わないときには、ストリームデータに対する復号処理を正常に実行できなくなる、という悪影響が出てしまい、その悪影響の可能な限りの低減が要望されていた。
【０００９】
本発明は、このような状況に鑑みてなされたものであり、ストリームデータの復号に必要な鍵が暗号化されている場合、その鍵の復号処理が間に合わなかったときの悪影響を可能な限り低減させるようにするものである。
【課題を解決するための手段】
【００１０】
本発明の一側面の情報処理装置は、連続する複数の単位データから構成されるストリームデータが前記単位データ毎に順次暗号化されていく場合、複数の前記単位データのそれぞれが暗号化されるときに利用される鍵が所定の規則で更新されていくことが規定されている第１の暗号化手法に従って、そのストリームデータが暗号化された結果得られる暗号化データに対して、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを利用して復号処理を施す情報処理装置であって、前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵を利用して復号処理を施す復号手段と、前記メタデータを取得して、前記メタデータに含まれる複数の前記暗号化鍵のそれぞれに対応する複数の復号鍵のそれぞれを生成し、前記メタデータに含まれる前記更新情報に従って、複数の前記復号鍵のうちの対応する１つを前記復号手段に提供するメタデータ取得手段とを備え、複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、前記メタデータ取得手段は、前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成する復号鍵生成手段と、前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行する更新指令手段と、前記更新指令手段により前記更新指令が発行されるまでの間、前記復号鍵生成手段により生成された第１の復号鍵を前記復号手段に出力し、前記更新指令手段により前記更新指令が発行された以降、前記復号鍵生成手段により前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力する復号鍵出力手段と、前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が前記復号鍵生成手段により既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う更新指令制御手段とを有する。
【００１１】
複数の前記暗号化鍵のそれぞれには、自身を特定するためのKey IDがそれぞれ付されており、前記メタデータは、複数の前記単位データ毎に生成される、SMPTE（Society of Motion Picture and Television Engineers）291Mに準拠したMeta packet1，2，3から構成され、前記第２の暗号化手法に従って暗号化された複数の前記暗号化鍵のうちの所定の１つが、所定の単位データについての前記Meta packet1，2に含まれており、各単位データについての前記Meta packet3には、Next Key IDとCurrent Key IDが少なくとも含まれていることができる。
【００１２】
前記更新指令制御手段は、前記第１の復号鍵から前記第２の復号鍵への更新タイミングの直前に前記復号鍵生成手段により生成された復号鍵に対応する暗号化鍵のKey IDと、前記第１の復号鍵から前記第２の復号鍵への更新タイミングの直前の単位データについての前記Meta packet3に含まれる前記Next Key IDとを比較し、一致するという比較結果の場合、前記第２の復号鍵が前記復号鍵生成手段により既に生成されていると判定し、一致しないという比較結果の場合、前記第２の復号鍵が前記復号鍵生成手段によりまだ生成されていないと判定することができる。
【００１３】
前記更新指令制御手段は、前記第２の復号鍵が前記復号鍵生成手段によりまだ生成されていないと判定した場合、その判定がなされた第１の時点以降、前記復号鍵生成手段により最新に生成された復号鍵に対応する暗号化鍵のKey IDと、前記第１の時点以降の単位データについての前記Meta packet3に含まれる前記Current Key IDとを比較し、一致するという比較結果の場合、前記第２の復号鍵が前記復号鍵生成手段により生成されたと判定し、その判定がなされた第２の時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行うことができる。
【００１４】
本発明の一側面の情報処理方法は、次の情報処理装置の情報処理方法である。即ち、連続する複数の単位データから構成されるストリームデータが前記単位データ毎に順次暗号化されていく場合、複数の前記単位データのそれぞれが暗号化されるときに利用される鍵が所定の規則で更新されていくことが規定されている第１の暗号化手法に従って、そのストリームデータが暗号化された結果得られる暗号化データに対して、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを利用して復号処理を施す情報処理装置であって、前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵を利用して復号処理を施す復号手段と、前記メタデータを取得して、復号鍵生成手段と、更新指令手段と、復号鍵出力手段と、更新指令制御手段と有するメタデータ取得手段とを備える前記情報処理装置の情報処理方法が、本発明の一側面の情報処理方法である。この本発明の一側面の情報処理方法は、複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、前記復号鍵生成手段が、前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成し、前記更新指令手段が、前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行し、前記復号鍵出力手段が、前記更新指令手段により前記更新指令が発行されるまでの間、前記復号鍵生成手段により生成された第１の復号鍵を前記復号手段に出力し、前記更新指令手段により前記更新指令が発行された以降、前記復号鍵生成手段により前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力し、前記更新指令制御手段が、前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が前記復号鍵生成手段により既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う。
【００１５】
本発明の一側面のプログラムは、次のような復号処理をコンピュータに実行させるプログラムである。即ち、連続する複数の単位データから構成されるストリームデータが前記単位データ毎に順次暗号化されていく場合、複数の前記単位データのそれぞれが暗号化されるときに利用される鍵が所定の規則で更新されていくことが規定されている第１の暗号化手法に従って、そのストリームデータが暗号化された結果得られる暗号化データに対して、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを利用する復号処理を施す情報処理装置のコンピュータを、前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵を利用して復号処理を施す復号手段と、前記メタデータを取得して、前記メタデータに含まれる複数の前記暗号化鍵のそれぞれに対応する複数の復号鍵のそれぞれを生成し、前記メタデータに含まれる前記更新情報に従って、複数の前記復号鍵のうちの対応する１つを前記復号手段に提供するメタデータ取得手段として機能させる。また、複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、本発明の一側面のプログラムは、さらに、前記メタデータ取得手段を、前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成する復号鍵生成手段と、前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行する更新指令手段と、前記更新指令手段により前記更新指令が発行されるまでの間、前記復号鍵生成手段により生成された第１の復号鍵を前記復号手段に出力し、前記更新指令手段により前記更新指令が発行された以降、前記復号鍵生成手段により前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力する復号鍵出力手段と、前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が前記復号鍵生成手段により既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う更新指令制御手段として機能させる。
【００１６】
本発明の一側面においては、次のような復号処理が実行される。即ち、連続する複数の単位データから構成されるストリームデータが前記単位データ毎に順次暗号化されていく場合、複数の前記単位データのそれぞれが暗号化されるときに利用される鍵が所定の規則で更新されていくことが規定されている第１の暗号化手法に従って、そのストリームデータが暗号化された結果得られる暗号化データに対して、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを利用する復号処理であって、前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵を利用して復号処理が実行される。この復号処理が実行される際、複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、前記メタデータが取得されて、前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれが、暗号化に使用された順に順次復号されていくことで、複数の前記復号鍵のそれぞれが順次生成され、前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングが特定され、特定された各更新タイミング毎に、更新指令が発行され、前記更新指令が発行されるまでの間、生成された第１の復号鍵を前記復号手段に出力され、前記更新指令が発行された以降、前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力される。その際、前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が既に生成されているか否かが判定され、前記第２の復号鍵がまだ生成されていないと判定された場合、それ以降、前記第２の復号鍵が生成されたか否かが監視され、前記第２の復号鍵が生成されたとき、その時点が、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなされて、前記更新指令を強制的に発行させる制御が行われる。
【発明の効果】
【００１７】
以上のごとく、本発明の一側面によれば、ストリームデータの復号に必要な鍵が暗号化されている場合、その鍵を復号した上で、ストリームデータを復号することができる。特に、その鍵の復号処理が間に合わなかったときにその悪影響を可能な限り低減させることができる。
【発明を実施するための最良の形態】
【００１８】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００１９】
本発明の一側面の情報処理装置（例えば図１の復号装置２）は、
連続する複数の単位データから構成されるストリームデータ（例えば図１のAVデータ。この例の場合、単位データとは、後述するフレーム（データ）をいう）が前記単位データ毎に順次暗号化されていく場合、複数の前記単位データのそれぞれが暗号化されるときに利用される鍵が所定の規則で更新されていくことが規定されている第１の暗号化手法に従って（例えば、図６に示されるAES暗号を利用した暗号化手法に従って）、そのストリームデータが暗号化された結果得られる暗号化データ（例えば図１の暗号化部１１のAVデータ暗号化部３２から出力される、後述する暗号化AVデータ）に対して、そのストリームデータの暗号化に利用された複数の暗号化鍵（例えば、図１のLE Key６１−Ｅであって、後述する例では、それがさらにRSA暗号により暗号化されたもの）およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータ（例えば図１のメタデータ６４）を利用して復号処理を施す情報処理装置であって、
前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵（例えば図１のLE Key６１−Ｄ）を利用して復号処理を施す復号手段（例えば図１の復号部２２）と、
前記メタデータを取得して、前記メタデータに含まれる複数の前記暗号化鍵のそれぞれに対応する複数の復号鍵のそれぞれを生成し、前記メタデータに含まれる前記更新情報に従って、複数の前記復号鍵のうちの対応する１つを前記復号手段に提供するメタデータ取得手段（例えば図５の構成を有する図１のメタデータ抽出部２１）と
を備え、
複数の前記暗号化鍵は第２の暗号化手法(例えば後述するRSA暗号を利用した暗号化手法)に従って暗号化されており、
前記メタデータ取得手段は、
前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成する復号鍵生成手段（例えば図５のLEKP復元部１０２）と、
前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行する更新指令手段（例えば図５のキーチェンジトリガ生成部１０４）と、
前記更新指令手段により前記更新指令が発行されるまでの間、前記復号鍵生成手段により生成された第１の復号鍵を前記復号手段に出力し、前記更新指令手段により前記更新指令が発行された以降、前記復号鍵生成手段により前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力する復号鍵出力手段（例えば図５のレジスタ１０５）と、
前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が前記復号鍵生成手段により既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う更新指令制御手段（例えば図５のキーチェンジタイミング補正部１１１）とを有する。
【００２０】
本発明の一側面の情報処理装置において、
複数の前記暗号化鍵のそれぞれには、自身を特定するためのKey IDがそれぞれ付されており、
前記メタデータは、複数の前記単位データ毎に生成される、SMPTE（Society of Motion Picture and Television Engineers）291Mに準拠したMeta packet1，2，3（例えば図２のMeta packet1であるメタデータ６４−１、図３のMeta packet2であるメタデータ６４−２、図４のMeta packet3であるメタデータ６４−３）から構成され、
前記第２の暗号化手法に従って暗号化された複数の前記暗号化鍵のうちの所定の１つが、所定の単位データについての前記Meta packet1，2に含まれており（例えば図２と図３のElekp dataとして含まれており）、
各単位データについての前記Meta packet3には、Next Key IDとCurrent Key IDが少なくとも含まれている。
【００２１】
本発明の一側面の情報処理方法およびプログラムは、上述した本発明の一側面のメタデータ取得手段（例えば図５の構成を有する図１のメタデータ抽出部２１）の処理に対応する情報処理方法およびプログラムであって、
複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、
前記メタデータを取得して、
復号鍵生成手段が、前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成し（例えば図５のLEKP復元部１０２の処理）、
更新指令手段が、前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行し（例えば図５のキーチェンジトリガ生成部１０４の処理）、
復号鍵出力手段が、前記更新指令が発行されるまでの間、生成された第１の復号鍵を、前記復号処理で使用される復号鍵として出力し、前記更新指令が発行された以降、前記第１の復号鍵の次に生成された第２の復号鍵を、前記復号処理で使用される復号鍵として出力し（例えば図５のレジスタ１０５の処理）、
更新指令制御手段が、前記第１の復号鍵から前記第２の復号鍵への更新タイミングまでに、前記第２の復号鍵が既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令を強制的に発行させる制御を行う（例えば図５のキーチェンジタイミング補正部１１１の処理であって、具体的には例えば図９の処理）。
【００２２】
以下、図面を参照して、本発明の実施の形態について説明する。
【００２３】
図１は、本発明を適用した暗号化装置と復号装置とからなるシステム（以下、暗号復号システムと称する）の構成例を示す図である。
【００２４】
なお、図１において、実線で囲まれた四角は、装置の構成要素としてのブロックを示し、点線で囲まれた四角は、所定の情報を示している。このような実線と点線の使い分け方は、後述する他の図においても同様とされる。
【００２５】
図１の例では、暗号復号システムは、例えばフレーム単位で構成されるコンテンツ（映画等）に対応するストリームデータ（以下、AVデータと称する）を暗号化する暗号化装置１と、暗号化装置１により暗号化されたAVデータを復号する復号装置２とから構成されている。
【００２６】
図１の例では、暗号化装置１は、共通鍵暗号方式の一つのAES(Advanced Encryption Standard)暗号を利用してAVデータを暗号化する。このため、暗号化装置１は、暗号化部１１、メタデータ生成部１２、および、重畳部１３から構成されている。また、暗号化部１１は、AES暗号データ生成部３１とAVデータ暗号化部３２とから構成されている。
【００２７】
AES暗号データ生成部３１は、AES暗号を利用してAVデータを暗号化するための共通鍵（AES Keyと称される場合もあるが、本明細書ではLE Keyと称する）６１−Ｅと、AES Input６２−Ｅとを用いて、AVデータを直接暗号化するためのデータ（以下、AES暗号データと称する）６５を生成し、AVデータ暗号化部３２に提供する。なお、AES Input６２−Eについては後述する。
【００２８】
AVデータ暗号化部３２は、AES暗号データ生成部３１から提供されたAES暗号データ６５を用いて、AVデータを暗号化し、重畳部１３に提供する。その際、AVデータ暗号化部３２は、メタデータ生成部１２から供給されるFrame reset６３−Ｅを利用して、フレーム単位でAVデータを暗号化する。
【００２９】
具体的には例えば、本実施の形態のAVデータは、HD-SDIのデータであって、１以上のフレームデータから構成されているとする。また、フレームデータは、そのフレームを構成する各画素の輝度を示すデータY、および、そのフレームを構成する各画素の色を示すデータCb/Crから構成されているとする。また、例えばLE Key６１−Ｅと、AES Input６２−Ｅとのそれぞれは、128ビットで構成されているとする。
【００３０】
この場合、例えば、AES暗号データ生成部３１は、128ビットのLE Key６１−Ｅと、128ビットのAES Input６２−Ｅとの総計256ビットの入力データから、128ビットのAES暗号データ６５を生成し、AVデータ暗号化部３２に供給する。より詳細には例えば、AES暗号データ生成部３１は、AES暗号データ６５を構成する128ビットのうち下位120ビットだけを、AVデータの暗号化に実際使用するデータとして10ビット毎に切り出して、AVデータ暗号化部３２にそれぞれ提供する。
【００３１】
AVデータ暗号化部３２は、10ビット毎のデータの１つずつを利用して、データYとデータCb/Crとのそれぞれをリアルタイムに暗号化し、それぞれ個別に重畳部１３に提供する。
【００３２】
ただし、以下の説明においては、特に説明が必要な場合を除いて、データYとデータCb/Crとをまとめて、単にAVデータとして説明していく。
【００３３】
メタデータ生成部１２は、暗号化部１１の暗号化処理で必要となる各種情報（換言すると、復号装置２の復号処理で必要となる各種情報）、例えば上述したように、LE Key６１−Ｅ、AES input６２−Ｅ、および、Frame reset６３−Ｅ等を生成する。さらに、メタデータ生成部１２は、LE Key６１-Ｅに、これらの各種情報のうちの幾つかの補足情報を付加し、その結果得られるデータ（以下、LEKP:Link:Encryption Key Payloadと称する）に対して、例えば復号装置２側の公開鍵を利用するRSA（R. Rivest、A. Shamir、L. Adelman）2048bitの暗号方式（以下、RSA暗号と称する）による暗号化処理を施す。なお、以下、LEKPがRSA暗号により暗号化された結果得られるデータを、ELEKPと称する。即ち、メタデータ生成部１２は、ELEKPを生成する。そして、メタデータ生成部１２は、ELEKPの他、AES input６２−Ｅの一構成要素（後述するLe_attribute_data）等から構成されるメタデータ６４を生成し、重畳部１３に提供する。なお、メタデータ６４の具体例については、図２乃至図４を参照して後述する。
【００３４】
重畳部１３は、HD-SDIであるAVデータがAVデータ暗号化部３２により暗号化された結果得られるデータ（以下、暗号化AVデータと称する）のうちの、例えばV-Blanking期間に、メタデータ生成部１２により生成されたメタデータ６４を重畳（挿入）して、その結果得られるデータ（以下、メタデータ重畳暗号化AVデータと称する）を、復号装置２に出力する（伝送する）。即ち、メタデータ６４はフレーム単位で挿入される。
【００３５】
ところで、本実施の形態では、１つのAVデータ（ストリームデータ全体）に対して、LE Key６１−Ｅは１つのみが使用される訳ではなく、随時更新される。即ち、１つのAVデータに対して、LE Key６１−Ｅは複数使用される。その理由は次の通りである。
【００３６】
即ち、悪意を持つ第三者が、AES暗号が掛かったコンテンツ（ここではAVデータ暗号化部３２から出力される暗号化AVデータ等）を盗んだと仮定した場合、１種類のAES鍵（ここではLE Key６１−Ｅ）でコンテンツが暗号化されていると、AES鍵が直接的に解読される危険性が増す、という問題点が発生する。そこで、この問題点を解決すべく、本実施の形態のメタデータ生成部１２は、このような第三者がコンテンツを直接的に解読することをより困難となるように、AES暗号で使う鍵（ここではLE Key６１−Ｅ）を周期的に変化させる（随時更新する）ようにしているのである。
【００３７】
ただし、本実施の形態では、上述したように、メタデータ生成部１２が、LE Key６１−Ｅを復号装置２に直接送信せず、そのLE Key６１−Ｅと補足データとを合わせたLEKPを生成し、そのLEKPに対してRSA暗号による暗号化処理を施し、その結果得られるELEKPを含むメタデータ６４を生成する。そして、重畳部１３が、このメタデータ６４を暗号化AVデータとともに（即ち、メタデータ重畳暗号化AVデータとして）、復号装置２に提供（送信）している。即ち、本実施の形態では、暗号化装置１は、複数のLE Key６１−Ｅのそれぞれに対してRSA暗号による一度の暗号化処理をそれぞれ施し、複数のRSA暗号がかけられたLE Key６１−Ｅのそれぞれを個別に（生成順に所定のフレームに含めて）復号装置２に送信している。このため、後述するように、復号装置２側でも、複数のRSA暗号がかけられたLE Key６１−Ｅのそれぞれに対して、RSA暗号に対応する復号処理をそれぞれ施す必要がある。
【００３８】
従って、メタデータ生成部１２によるLE Key６１−Ｅの更新周期は、RSA暗号による暗号化処理と復号処理の処理時間に依存する。即ち、RSA暗号による暗号化処理と復号処理の処理時間に従って、LE Key６１−Ｅの更新周期の最短周期も自ずと決定される。例えば本実施の形態では、この最短周期は1minとされている。
【００３９】
このように、本実施の形態では、１つのAVデータに対して、LE Key６１−Ｅは１つのみが使用される訳ではなく複数使用される（随時更新される）。即ち、１つのAVデータを構成する各フレームのそれぞれの暗号化に利用されるLE Key６１−Ｅは１つのみが使用される訳ではなく、何枚かのフレーム毎に更新されて別のLE Key６１−Ｅが使用される。
【００４０】
このため、本実施の形態では、メタデータ生成部１２は、これらの複数のLE Key６１−Ｅのそれぞれを生成する度に、それらを特定するための識別子（以下、Key IDと称する）をそれぞれ付し、後述するように、このKey IDもメタデータ６４に含めるとする。
【００４１】
また、AVデータを暗号化するためのLE Key６１−Ｅは、AVデータ暗号化部３２がそのAVデータに対して暗号化処理を施す前に生成されている必要がある。即ち、暗号化AVデータと、それを暗号化するためのLE Key６１−Ｅとの生成タイミングにはタイムラグがある。その結果、重畳部１３において、暗号化AVデータのうちの所定のフレーム（データ）に重畳されるメタデータ６４に含まれる（より正確にはRSA暗号がかけられる前のLEKPに含まれる）LE Key６１−Ｅは、その所定のフレーム（データ）を暗号化した際に利用されたものではなく、その所定のフレームよりも前のフレーム（データ）を暗号化した際に利用されたものである。
【００４２】
ここで、復号装置２の構成例を説明する前に、図２乃至図４を参照して、メタデータ生成部１２により生成されるメタデータの具体例について説明する。
【００４３】
即ち、図２と図３のそれぞれは、上述したELEKP（RSA で暗号化されたLE Key６１−Ｅ等）を含むメタデータ６４−１，６４−２のそれぞれの構成例を示している。また、図４は、AES input６２−Ｅを含むメタデータ６４−３のそれぞれの構成例を示している。
【００４４】
本実施の形態で採用されているメタデータ６４−１，６４−２，６４−３のそれぞれのパケット構造は、SMPTE（Society of Motion Picture and Television Engineers）291M(Proposal SMPTE STANDARD for Television-Ancillary Data Packet and Space Formatting)に準拠しており、一般的にはMeta packet1，2，3のそれぞれと称されている。即ち、SMPTE291Mでは、例えば図２乃至図４に示されるように、ADF(Ancillary Data Flag：コンポーネントのとき000,3FF,3FF,コンポジットのとき3FC) , DID（Data ID） , SDID(Secondary Data ID) , DC(Data Count) ， User Data , CS(Check Sum)といった情報がその順番で配置されるパケット構造が定義されている。メタデータ６４−１，６４−２，６４−３のそれぞれは、このパケット構造を有し、そのUser dataとして、例えば本実施の形態では次のような情報をそれぞれ格納している。
【００４５】
即ち、メタデータ６４−１のUser dataには、Key ID , Type , SHA1 digest , Lekp length , Elekp length , Elekp dataが格納されており、メタデータ６４−２のUser dataには、Elekp dataが格納されている。
【００４６】
順不同に説明するが、Elekp dataは、上述したように、LE Key６１−Ｅ等からなるLEKPが、RSA暗号による暗号化処理が施された結果得られるデータ、即ち、ELEKPのことである。KeyIDは、上述したように、そのELEKPに暗号化されて含まれているLE Key６１−Ｅの識別子である。Elekp lengthは、そのELEKPのデータ長であり、Lekp lengthは、そのLEKPに対応するLEKPのデータ長である。
【００４７】
Typeは、LEKPが暗号化された際の暗号化方式（アルゴリズムのタイプ）である。本実施の形態では、RSA暗号を示す0がTypeとして代入される。SHA1 digestは、そのELEKPが生成された際（LEKPがRSA暗号により暗号化された際）に使用された公開鍵の識別子である。
【００４８】
なお、以上説明したような各種情報により構成されるメタデータ６４−１とメタデータ６４−２のUser dataを、以下、LEKM(Link Encryption Key Message)と称する。
【００４９】
このようなLEKM（メタデータ６４−１とメタデータ６４−２のUser data）に対して、メタデータ６４−３のUser dataには、Next Key ID , Current Key ID , Current Frame Count , Key Changing Timing , HD-SDI Link Numberが格納されている。
【００５０】
ここで、対象とするメタデータ６４−３が挿入されるフレームを、当該フレームと称することにする。また、当該フレーム（AVデータのうちの当該フレームに対応する部分のデータ）の暗号化開始直前等を現時点として、現時点のLE Key６２−Ｅを、Current LE Key６２−Ｅと称することにする。そして、Current LE Key６２−Ｅの次に生成される（次の更新タイミングでメタデータ生成部１２により生成される）LE Key６２−Ｅを、Next LE Key６２−Ｅと称し、一方、Current LE Key６２−Ｅの直前に生成された（直前の更新タイミングでメタデータ生成部１２により生成された）LE Key６２−Ｅを、Previos LE Key６２−Ｅと称することにする。
【００５１】
この場合、当該フレームに挿入されるメタデータ６４−３における、Next Key ID , Current Key ID , Current Frame Count , Key Changing Timing , HD-SDI Link Numberは、次のような情報となる。
【００５２】
即ち、Next Key IDは、Next LE Key６２−ＥのKey IDであり、Current Key IDは、Current LE Key６２−ＥのKey IDである。
【００５３】
Current Frame Countは、当該フレームが、Previos LE Key６２−ＥからCurrent LE Key６２−Ｅに更新された時点（以下、このような時点をKey Change Timingと称する）のフレームから数えて（そのフレームを０番目として）何番目のフレームであるのかを示す値である。
【００５４】
Key Changing Timingには、2'b11，2'b10，2'b01，2'b00のうちの何れかの値が代入される。これらの値は、次のKey Changing Timingはどのフレームであるのかをそれぞれ示している。具体的には、2'b11（＝３）は、当該フレームから３フレーム先以降がKey Changing Timingであることを示している。2'b10（＝２）は、当該フレームから２フレーム先がKey Changing Timingであることを示している。2'b01（＝１）は、当該フレームから１フレーム先（即ち、次のフレーム）がKey Changing Timingであることを示している。2'b00（＝０）は、当該フレームがKey Changing Timingであることを示している。
【００５５】
HD-SDI Link Numberは、暗号化装置１と復号装置２との間のHD-SDI信号の伝送形態（本実施の形態では、メタデータ重畳暗号化AVデータの伝送形態）を示す値である。即ち、例えばHD-SDI Link Numberとして０が代入されていた場合、その０は、シングルリンク（１つのHD-SDIインタフェースによる伝送形態）か、或いは、デュアルリンク（２つのHD-SDIインタフェースによる形態）のLink-Aであることを示す。また例えば、HD-SDI Link Numberとして１が代入されていた場合、その１は、デュアルリンクのLink-Bであることを示す。
【００５６】
なお、当該フレームに挿入されたメタデータ６４−１，６４−２のELEKPに含まれる（より正確には、暗号化前のLEKPに含まれる）LE Key６１−Ｅは、当該フレームよりも後のフレームの暗号化に利用されるものである。即ち、当該フレームに利用されるLE Key６１−Ｅは、当該フレームよりも前のフレームに挿入されたメタデータ６４−１，６４−２のELEKPに含まれる（より正確には、暗号化前のLEKPに含まれる）。
【００５７】
図１に戻り、以上説明したように、本実施の形態では、メタデータ６４−１乃至６４−３が重畳された暗号化AVデータ（メタデータ重畳暗号化AVデータ）が、暗号化装置１により生成され、復号装置２に伝送（提供）される。
【００５８】
かかる復号装置２は、図１の例では、メタデータ抽出部２１と復号部２２とから構成される。
【００５９】
メタデータ抽出部２１は、暗号化装置１から提供されたメタデータ重畳暗号化AVデータから、メタデータ６４（本実施の形態では、メタデータ６４−１乃至６４−３）等の情報を抽出する。そして、メタデータ抽出部２１は、それらの抽出情報から、LE Key６１−Ｄ、AES input６２−Ｄ、Frame reset６３−Ｄを生成し、それらを復号部２２に提供する。LE Key６１−Ｄ、AES input６２−Ｄ、Frame reset６３−Ｄのそれぞれは、暗号化装置１で暗号化AVデータが生成される際に利用された、LE Key６１−Ｅ、AES input６２−Ｅ、Frame reset６３−Ｅのそれぞれが復元されたものである。従って、メタデータ抽出部２１は、LE Key６１−Ｅ、AES input６２−Ｅ、Frame reset６３−Ｅのそれぞれを復元して復号部２２に提供している、と捉えることもできる。
【００６０】
なお、メタデータ抽出部２１の詳細については、図５を参照して後述する。
【００６１】
復号部２２は、図１の例では、AES復号データ生成部４１とAVデータ復号部４２とから構成されている。
【００６２】
AES復号データ生成部４１は、メタデータ抽出部２１から提供されたLE Key６１−ＤとAES Input６２−Ｄとを用いて、暗号化AVデータ（AES暗号を利用して暗号化されたAVデータ）を直接復号するためのデータ（以下、AES復号データと称する）６６を生成し、AVデータ復号部４２に提供する。即ち、AES復号データ６６は、AES暗号データ６５に対応する復号用のデータである。
【００６３】
AVデータ復号部４２は、AES復号データ生成部４１から提供されたAES復号データを用いて、暗号化AVデータに対して復号処理を施し、その結果得られるAVデータ（復元されたAVデータ）を外部に出力する。その際、AVデータ復号部４２は、メタデータ抽出部２１から供給されるFrame reset６３−Ｄを利用して、暗号化AVデータをフレーム単位で復号する。
【００６４】
ここで、図５を参照して、メタデータ抽出部２１の詳細について説明する。即ち、図５は、メタデータ抽出部２１の詳細な構成例を示している。
【００６５】
図５の例では、メタデータ抽出部２１は、メタデータ抽出分離部１０１乃至キーチェンジタイミング補正部１１１から構成されている。
【００６６】
メタデータ抽出分離部１０１は、暗号化装置１から提供されたメタデータ重畳暗号化AVデータから、メタデータ６４（本実施の形態では、図２乃至図４のメタデータ６４−１乃至６４−３）等の情報を抽出する。さらに、メタデータ抽出分離部１０１は、メタデータ６４を構成する各種情報を分離する。
【００６７】
具体的には例えば、図５の例では、LEKM１２１、Current LE_Key ID１２２、Next LE_Key ID１２３、Key Change Timing１２４、Frame/line reset１２９、HD-SDI Link number１３３、および、Current frame Count１３４が、メタデータ抽出分離部１０１により抽出または分離される。
【００６８】
なお、Frame/line reset１２９は、Frame reset１３０とline reset１３１とから構成されている。また、上述したように、LEKM１２１とは、メタデータ６４−１，６４−２のUser dataの記述値のことであり、Current LE_Key ID１２２とは、メタデータ６４−３のCurrent Key IDの記述値のことであり、Next LE_Key ID１２３とは、メタデータ６４−３のNext Key IDの記述値のことであり、Key Change Timing１２４とは、メタデータ６４−３のKey Change Timingの記述値のことであり、HD-SDI Link number１３３とは、メタデータ６４−３のHD-SDI Link numberの記述値のことであり、Current Frame Count１３４とは、メタデータ６４−３のCurrent Frame Countの記述値のことである。
【００６９】
そして、LEKM１２１は、LEKP復元部１０２に提供される。Current LE_Key ID１２２とNext LE_Key ID１２３は、LEKPテーブル１０３およびキーチェンジタイミング補正部１１１のそれぞれに提供される。Key Change Timing１２４は、キーチェンジトリガ生成部１０４、および、キーチェンジタイミング補正部１１１のそれぞれに提供される。Current Frame Count１３４は、レジスタ１０７に提供される。Frame reset１３０は、キーチェンジトリガ生成部１０４に提供される。line reset１３１は、カウンタ１０８に提供される。Frame reset１３０とline reset１３１からなるFrame/line reset１２９は（図１でいうFrame reset６３−Ｄとして）、復号部２２に提供される。HD-SDI Link number１３３は、レジスタ１０９に提供される。
【００７０】
LEKP復元部１０２は、LEKM１２１からLEKPを復元し、そのKey ID等と対応付けてLEKPテーブル１０３に格納する。即ち、LEKM１２１とは、上述したように、図２のメタデータ６４−１と図３のメタデータ６４−２のUser Dataの記述値のことである。このUser Dataには、ELEKP（図２と図３には、Elekp dataと記述されている）が含まれている。このELEKPは、上述したように、RSA暗号による暗号化処理をLEKPに対して施した結果得られるデータである。従って、LEKP復元部１０２は、LEKM１２１に含まれるELEKPに対して、その生成用の公開鍵のペア鍵（秘密鍵）を利用する復号処理を施し、その結果得られるLEKP（復元されたLEKP）を、そのKey ID等と対応付けてLEKPテーブル１０３に格納する。
【００７１】
このように、LEKPテーブル１０３には、１以上のLEKPのそれぞれが、自身を特定するKey ID等と対応付けられて格納される。LEKPテーブル１０３に格納されるLEKPは、上述したように、LE Key６１−Ｄ（復元された図１のLE Key６１-Ｅ）と、幾つかの補足情報とから構成されている。本実施の形態では、この補足情報には、図１のAES input６２−Ｅの構成要素のひとつであるLe_attribute_data１２６が含まれているとする。そこで、LEKPテーブル１０３は、レジスタ１０５から要求があったとき（後述するキーチェンジの指令後の所定のタイミングで）、Current LE_Key ID１２２と同一のKey IDを有するLEKPに含まれるLE Key６１−Ｄ（以下、Current LE Key６１−Ｄと称する）とLe_attribute_data１２６（以下、Current Le_attribute_data１２６と称する）、または、Next LE_Key ID１２３と同一のKey IDを有するLEKPに含まれるLE Key６１−Ｄ（以下、Next LE Key６１−Ｄと称する）とLe_attribute_data１２６（以下、Next Le_attribute_data１２６と称する）をレジスタ１０５に格納させる。
【００７２】
キーチェンジトリガ生成部１０４は、Frame reset１３０が提供される毎に、キーチェンジトリガ１２７をレジスタ１０５に提供する。具体的には例えば、このキーチェンジトリガ１２７として、キーチェンジの指令とキーチェンジの禁止の指令とが存在し、これらの指令のうちの何れか一方が、レジスタ１０５に提供されるとする。この場合、キーチェンジトリガ生成部１０４は、Key Change Timing１２４の値を監視し、その値が2'b00（＝０）となったときには、即ち、当該フレームがKey Change Timingとなったときには、キーチェンジトリガ１２７としてキーチェンジの指令をレジスタ１０５に提供し、それ以外の値のときは、キーチェンジトリガ１２７としてキーチェンジ禁止の指令をレジスタ１０５に提供する。
【００７３】
レジスタ１０５には、通常、Current LE Key６１−ＤおよびCurrent Le_attribute_data１２６が格納されている。
【００７４】
キーチェンジトリガ１２７としてキーチェンジの禁止の指令が提供されている限り、レジスタ１０５は、Current LE Key６１−Ｄを復号部２２に提供し、Current Le_attribute_data１２６をAES input生成部１１０に提供する。これにより、復号部２２においては、Current LE Key６１−Ｄが使用されて、当該フレーム（AES暗号により暗号化されたフレームデータ）が復号されることになる。
【００７５】
これに対して、キーチェンジトリガ１２７としてキーチェンジの指令が提供されると、レジスタ１０５は、記憶内容の更新をLEKPテーブル１０３に要求する。すると、上述したように、LEKPテーブル１０３は、レジスタ１０５から要求があった時点のNext LE Key６１−ＤとNext Le_attribute_data１２６をレジスタ１０５に格納させる。即ち、Next LE Key６１−ＤとNext Le_attribute_data１２６とのそれぞれが、キーチェンジ後における新たなCurrent LE Key６１―ＤとCurrent Le_attribute_data１２６とのそれぞれとしてレジスタ１０５に格納され、そして、Current LE Key６１−Ｄ（これまでNext LE Key６１−Ｄであったもの）が復号部２２に提供され、Current Le_attribute_data１２６（これまでNext Le_attribute_data１２６であったもの）がAES input生成部１１０に提供される。これにより、復号部２２においては、復号用のLE Key６１−ＤがこれまでのCurrent LE Key６１−ＤからNext LE Key６１−Ｄ（新たなCurrent LE Key６１−Ｄ）に更新されて、当該フレーム（AES暗号により暗号化されたフレームデータ）が復号されることになる。
【００７６】
レジスタ１０７は、Current Frame Cont１３４を保持し、適宜AES input生成部１１０に提供する。
【００７７】
カウンタ１０８は、line reset１３１が供給される毎に、カウント値を１ずつインクリメントし、そのカウント値をAES input生成部１１０に提供する。
【００７８】
レジスタ１０９は、HD-SDI Link Number１３３を保持し、適宜AES input生成部１１０に提供する。
【００７９】
このようにして、AES input生成部１１０には、レジスタ１０５からのLe_attribute_data１２６、レジスタ１０７からのCurrent Frame Count１３４、メタデータ抽出分離部１０１からのLine number of HD SDI１３２、カウンタ１０８のカウント値、および、レジスタ１０９からのHD-SDI Link Number１３３が入力される。そこで、AES input生成部１１０は、Le_attribute_data１２６、Current Frame Count１３４、Line number of HD SDI１３２、カウンタ１０８のカウント値、および、HD-SDI Link Number１３３を少なくとも含むAES input６２−Ｄを生成し（図１のAES input６２−Ｅを復元し）、復号部２２に提供する。
【００８０】
キーチェンジタイミング補正部１１１は、LEKPテーブル１０３に記憶されているNext LE Key６１−ＤのKey ID１５１（即ち、次のKey Change Timingで切り替えられるLE Key６１−ＤのKey ID１５１であって、以下、キーチェンジ用Key ID１５１と称する）、並びに、Current LE_Key ID１２２およびNext LE_Key ID１２３を監視し、LEKP復元部１０２によるLE Key６１−Ｄの復号処理が間に合っているのか否かを判定する。そして、キーチェンジタイミング補正部１１１は、間に合っていないと判定した場合、LEKP復元部１０２が次のLE Key６１−Ｄを復号し終えた時点で、Key Change Timingの補正指令を、キーチェンジトリガ生成部１０４に出力する。すると、キーチェンジトリガ生成部１０４は、Key Change Timingの補正、即ち、キーチェンジトリガ１２７をキーチェンジの指令に強制的に切り替える補正を行う。
【００８１】
ここで、キーチェンジグタイミング補正部１１１の詳細（その動作等）について、図６乃至図９を参照して説明する。
【００８２】
即ち、本実施の形態では、上述したように、AES暗号によるAVデータの暗号化処理に使用されているLE Key(AES 鍵)６１−Ｅは、所定の更新間隔（ただし、最小更新間隔は1分)で更新される。この更新の様子の例が、図６に示されている。即ち、図６の例では、時刻t0eから、Key Change Timing-1の時刻t1eまでの間は、Key ID=XのLE Key６１−ＥでAVデータが暗号化され、時刻t1eになると、それ以降、次のKey Change Timing-2の時刻t2eまでの間は、Key ID=YのLE Key６１−ＥでAVデータが暗号化され、そして、時刻t2eになると、それ以降、Key ID=ZのLE Key６１−ＥでAVデータが暗号化されている。
【００８３】
この場合、復号装置２側では、時刻t0dから、Key ID=XのLE Key６１−Ｄで暗号化AVデータが復号されるとすると、通常、Key Change Timing-1である時刻t1dまでに、Key ID=YのLE Key６１−Ｄが準備されること、即ち、Key ID=YのLE Key６１−Ｄが図５のLEKPテーブル１０３にNext LE Key６１-Ｄとして格納されることになる。そして、時刻t1dまでの間は、レジスタ１０５からKey ID=XのLE Key６１−Ｄが復号部２２に出力されているので、即ち、復号部２２の復号処理ではKey ID=XのLE Key６１−Ｄが利用されることになる。
【００８４】
そして、時刻t1dになると、キーチェンジトリガ生成部１０４よりキーチェンジの指令が提供されることになるので、レジスタ１０５は、記憶内容の更新をLEKPテーブル１０３に要求する。すると、LEKPテーブル１０３は、レジスタ１０５から要求があった時点のNext LE Key６１−Ｄ、即ち、Key ID=YのLE Key６１−Ｄをレジスタ１０５に格納させるので、それ以降、レジスタ１０５からはKey ID=YのLE Key６１−Ｄが復号部２２に出力される。即ち、時刻t1d以降、次のKey Change Timing-2である時刻t2dまでの間、復号部２２の復号処理ではKey ID=YのLE Key６１−Ｄが利用されることになる。
【００８５】
また、通常、Key Change Timing-2である時刻t2dまでに、Key ID=ZのLE Key６１−Ｄが準備されること、即ち、Key ID=ZのLE Key６１−Ｄが、図５のLEKPテーブル１０３にNext LE Key６１-Ｄとして格納されることになる。
【００８６】
そして、時刻t2dになると、キーチェンジトリガ生成部１０４よりキーチェンジの指令が提供されることになるので、レジスタ１０５は、記憶内容の更新をLEKPテーブル１０３に要求する。すると、LEKPテーブル１０３は、レジスタ１０５から要求があった時点のNext LE Key６１−Ｄ、即ち、Key ID=ZのLE Key６１−Ｄをレジスタ１０５に格納させるので、それ以降、レジスタ１０５からはKey ID=ZのLE Key６１−Ｄが復号部２２に出力される。即ち、時刻t2d以降、復号部２２の復号処理ではKey ID=ZのLE Key６１−Ｄが利用されることになる。
【００８７】
ところが、図７に示されるように、LEKP復元部１０２の復号処理が遅れてしまい、Key Change Timing-1である時刻t1dまでに、Key ID=YのLE Key６１−Ｄの準備が間に合わなかったとする。即ち、図７の例では、時刻t１dよりも後の時刻tadに、Key ID=YのLE Key６１−Ｄが準備されたとする。
【００８８】
この場合、時刻t1dまでに、図５のLEKPテーブル１０３には、Key ID=YのLE Key６１−Ｄが当然ながらまだ格納されていないので、その前のKey ID=XのLE Key６１−Ｄが、依然としてNext LE Key６１-Ｄのまま格納されていることになる。
【００８９】
従って、このままの状態で、時刻t1dになると、キーチェンジトリガ生成部１０４よりキーチェンジの指令が提供されることになるので、レジスタ１０５は、記憶内容の更新をLEKPテーブル１０３に要求する。すると、LEKPテーブル１０３は、レジスタ１０５から要求があった時点のNext LE Key６１−Ｄ、即ち、Key ID=XのLE Key６１−Ｄをレジスタ１０５に格納させるので、それ以降においても、レジスタ１０５からはKey ID=XのLE Key６１−Ｄが復号部２２に出力され続けることになってしまう。その結果、復号部２２は、時刻t1d以降、Key ID=YのLE Key６１−Ｅを利用して暗号化された結果得られる暗号化AVデータ（フレーム）を、Key ID=XのLE Key６１-Dというまったく別のAES鍵で復号してしまうことになり、その暗号化AVデータを正しく復号できなくなってしまう、という問題点が発生してしまう。
【００９０】
この問題は、少なくとも次のKey Change Timing-2である時刻t2dまでの間、継続することになる。
【００９１】
そこで、本発明人は、かかる問題点を可能な限り軽減すべく、図８に示される手法を発明した。即ち、本発明人が発明した手法とは、正規の Key Change Timing(図８の例では、Key Change Timing-1である時刻t1d)に間に合わなかったAES鍵、即ち、復号部２２で利用すべき正規なAES鍵（図８の例では、Key ID=YのLE Key６１−Ｄ）が到着した時点(図８の例では、時刻tadであって、具体的には例えば本実施の形態では、図５のLEKP復元部１０２によるRSA 復号が完了し、その結果得られるKey ID=YのLE Key６１−Ｄが、LEKPテーブル１０３にNext LE Key６１-Ｄとして格納された時点)を、強制的なKey Change Timing（以下、Compulsory Key Change Timingと称する）とする、といった手法である。
【００９２】
具体的には例えば、本実施の形態の図５のメタデータ抽出部２１が採用されており、図８の例の状態の場合に、次のような一連の処理を実現可能な手法が、本発明人が発明した手法の一例となる。
【００９３】
即ち、図８の例では、キーチェンジグタイミング補正部１１１は、Key Change Timing-1である時刻t1dまでに、LEKP復元部１０２によるRSA 復号の処理が間に合ったか否か、即ち、LEKPテーブル１０３にNext LE Key６１-Ｄとして格納されているAES鍵は、正規な鍵であるKey ID=YのLE Key６１-Ｄであるのか否かについて判定する。この判定処理は、時刻t1dの直前時点における、メタデータ抽出分離部１０１からの（図４のメタデータ６４−３に含まれる）Current LE_KEY ID１２２およびNext LE_Key ID１２３、並びに、LEKPテーブル１０３からのキーチェンジ用 Key ID１５１を比較することで行われる。
【００９４】
即ち、時刻t1dの直前時点で、Next LE_Key ID１２３とキーチェンジ用 Key ID１５１とがYで一致する場合には、RSA 復号が間に合ったと判定される。
【００９５】
これに対して、図８の例では、時刻t1dの直前時点で、Current LE_KEY ID１２２とキーチェンジ用 Key ID１５１とがXで一致するので、RSA 復号が間に合わなかったと判定される。この場合、キーチェンジグタイミング補正部１１１は、RSA 復号遅延フラグをアサートする（立てる）。
【００９６】
キーチェンジタイミング補正部１１１は、RSA復号遅延フラグがアサートされた状態で、Current LE_KEY ID１２２（時刻t1d以降、その値がXからYに変化している）とキーチェンジ用 Key ID１５１とがYで一致する様になった時点である時刻tad、即ち、Key ID=YのLE Key６１−ＤがNext LE Key６１−DとしてLEKPテーブル１０３に格納された時点である時刻tadになると、この Key ID=YのLE Key６１−Ｄは、Key Change Timing-2のためではなく、Key Change Timing-1 のために準備されたAES 鍵であると判断する。そして、キーチェンジタイミング補正部１１１は、強制的にAES 鍵を更新してやるために、正規のAES鍵が到着した時点である時刻tadをCompulsory Key Change Timingとして、Key Change Timingの補正指令を、キーチェンジトリガ生成部１０４に出力する。
【００９７】
すると、キーチェンジトリガ生成部１０４は、キーチェンジトリガ１２７をキーチェンジの指令に強制的に切り替える補正を行う。
【００９８】
これにより、レジスタ１０５は、記憶内容の更新をLEKPテーブル１０３に要求する。すると、LEKPテーブル１０３は、レジスタ１０５から要求があった時点のNext LE Key６１−Ｄ、即ち、正規のAES鍵であるLE Key６１−Ｄ（図８の例ではKey ID=YのLE Key６１−Ｄ）をレジスタ１０５に格納させるので、Compulsory Key Change Timing以降（図８の例では時刻tad以降）、レジスタ１０５からは正規のAES鍵（図８の例ではKey ID=YのLE Key６１−Ｄ）が復号部２２に出力される。
【００９９】
以上の一連の処理を実現可能な手法が、本発明人が発明した手法の一例となる。
【０１００】
このような一連の処理により、正規のAES鍵が到着した時点である時刻tadから、復号部２２では、その正規のAES 鍵(図８の例ではKey ID=YのLE Key６１−Ｄ)を利用した復号処理が可能になり、RSA 復号の遅延による影響を最小限に抑えることが可能になる。即ち、本発明人が発明した上述した手法が適用されない場合（図７の例の場合）、時刻t1dから時刻t2dまでの間が、RSA 復号の遅延による影響を受ける時間となる。これに対して、本発明人が発明した上述した手法が適用される場合（図８の例の場合）時刻t1dから時刻tadまでの間が、RSA 復号の遅延による影響を受ける時間となる。従って、図８に示される時間Ｔ１分だけ、RSA 復号の遅延による影響を抑えることが可能になる。
【０１０１】
より一般的には、次の図９のフローチャートに従った処理を実現可能な手法が、本発明人が発明した手法の一例となる。即ち、図９は、かかる手法を実現させる処理の一例であって、キーチェンジタイミング補正部１１１の処理の一例を示すフローチャートである。
【０１０２】
ステップＳ１において、キーチェンジタイミング補正部１１１は、次のKey Change Timingとなったか否か（より正確にはその直前となったか否か）を判定する。
【０１０３】
ステップＳ１において、次のKey Change Timingにまだなっていないと判定された場合、処理はステップＳ１に戻され、次のKey Change Timingとなったか否かが再度判定される。
【０１０４】
そして、ステップＳ１において、次のKey Change Timingになったと判定されると、処理はステップＳ２に進む。
【０１０５】
ステップＳ２において、キーチェンジタイミング補正部１１１は、Next LE_Key ID１２３とキーチェンジ用Key ID１５１とが一致するか否かを判定する。
【０１０６】
ステップＳ２において、Next LE_Key ID１２３とキーチェンジ用Key ID１５１とが一致すると判定した場合、キーチェンジタイミング補正部１１１は、ステップＳ３において、LEKP復元部１０２による復号用のLE Key６１−Ｄの復号処理が間に合ったと判定する。その後、処理はステップＳ９に進む。ただし、ステップＳ９以降の処理については後述する。
【０１０７】
これに対して、ステップＳ２において、Next LE_Key ID１２２とキーチェンジ用Key ID１５１とが一致しないと判定された場合、処理はステップＳ４に進む。ステップＳ４において、キーチェンジタイミング補正部１１１は、LEKP復元部１０２による復号用のLE Key６１−Ｄの復号処理が間に合わなかったと判定して、上述したRSA復号遅延フラグを立てる（アサートする）。
【０１０８】
ステップＳ５において、キーチェンジタイミング補正部１１１は、次のKey Change Timingとなったか否か（より正確にはその直前となったか否か）を判定する。
【０１０９】
ステップＳ５において、次のKey Change Timingになったと判定されると、処理はステップＳ８に進む。ただし、ステップＳ８以降の処理については後述する。
【０１１０】
これに対して、ステップＳ５において、次のKey Change Timingにまだなっていないと判定された場合、処理はステップＳ６に進む。
【０１１１】
ステップＳ６において、キーチェンジタイミング補正部１１１は、Current LE_Key ID１２２とキーチェンジ用Key ID１５１とが一致するか否かを判定する。即ち、上述したように、ステップＳ６の処理で、Current LE_Key ID１２２とキーチェンジ用Key ID１５１とが一致するか否かが判定されることで、結局、復号に用いられるLE Key６１−Ｄとして、次のLE Key６１−Ｄが準備されたか（LEKPテーブル１０３にNext LE Key６１−Ｄとして格納されたか）否かが判定される。
【０１１２】
ステップＳ６において、Current LE_Key ID１２２とキーチェンジ用Key ID１５１とが一致していないと判定された場合、即ち、復号に用いられるLE Key６１−Ｄとして、次のLE Key６１−Ｄがまだ準備されていないと判定された場合、処理はステップＳ５に戻され、それ以降の処理が繰り返される。即ち、復号に用いられるLE Key６１−Ｄとして、次のLE Key６１−Ｄが準備されるまでの間、ステップＳ５ＮＯ，Ｓ６ＮＯのループ処理が繰り返される。ただし、このループ処理の最長期間は次のKey Change Timingになるまでの間であり、上述したように、次のKey Change Timingになると、処理は、後述するステップＳ８に進むことになる。
【０１１３】
また、次のKey Change Timingになる前に、復号に用いられるLE Key６１−Ｄとして、次のLE Key６１−Ｄが準備されると、ステップＳ６において、Current LE_Key ID１２２とキーチェンジ用Key ID１５１とが一致すると判定されることになり、これにより、処理はステップＳ７に進む。
【０１１４】
ステップＳ７において、キーチェンジタイミング補正部１１１は、例えばそのステップＳ７の開始時点をCompulsory Key Change Timingとして、Key Change Timingの補正指令をキーチェンジトリガ生成部１０４に対して発行する。
【０１１５】
すると、上述したように、キーチェンジトリガ生成部１０４は、キーチェンジトリガ１２７をキーチェンジの指令に強制的に切り替える補正を行う。これにより、レジスタ１０５は、記憶内容の更新をLEKPテーブル１０３に要求し、LEKPテーブル１０３は、レジスタ１０５から要求があった時点のNext LE Key６１−Ｄ、即ち、正規のAES鍵であるLE Key６１−Ｄをレジスタ１０５に格納させるので、Compulsory Key Change Timing以降、レジスタ１０５からは正規のAES鍵が復号部２２に出力される。
【０１１６】
以上のようなステップＳ７の処理が終了するか、或いは、上述したステップＳ５の処理でＹＥＳであると判定されると、処理はステップＳ８に進む。
【０１１７】
ステップＳ８において、キーチェンジタイミング補正部１１１は、RSA復号フラグを降ろす（アサート状態を解除する）。
【０１１８】
ステップＳ９において、キーチェンジタイミング補正部１１１は、処理の終了が指示されたか否かを判定する。
【０１１９】
ステップＳ９において、処理の終了がまだ指示されていないと判定された場合、処理はステップＳ１に戻され、それ以降の処理が繰り返される。
【０１２０】
これに対して、ステップＳ９において、処理の終了が指示されたと判定された場合、キーチェンジタイミング補正部１１１の処理は終了となる。
【０１２１】
以上、本発明が適用される情報処理装置の一実施の形態として、図１の構成の復号装置２（図５の構成のメタデータ抽出部２１を含む復号装置２）について説明した。
【０１２２】
しかしながら、本発明が適用される情報処理装置は、上述した復号装置に限定されず、様々な実施の形態を取ることができる。
【０１２３】
具体的には、本発明が適用される情報処理装置は、次のような情報処理装置であれば足り、その実施の形態は特に問わない。
【０１２４】
即ち、連続する複数の単位データから構成されるストリームデータが前記単位データ毎に順次暗号化されていく場合、暗号化鍵が所定の規則で更新されていき、複数の前記単位データのそれぞれが暗号化されるとき、その時点で存在する暗号化鍵を利用することが規定されている第１の暗号化手法に従って、そのストリームデータが暗号化された結果得られる暗号化データに対して、そのストリームデータの暗号化に利用された複数の暗号化鍵およびそれらの複数の暗号化鍵の更新タイミングを特定する更新情報を含むメタデータを利用して復号処理を施す情報処理装置であって、前記暗号化データを取得して、その暗号化データを構成する、複数の暗号化された前記単位データのそれぞれに対して、複数の前記暗号化鍵のうちの暗号化されたときに利用された暗号化鍵に対応する復号鍵を利用して復号処理を施す復号手段と、前記メタデータを取得して、前記メタデータに含まれる複数の前記暗号化鍵のそれぞれに対応する複数の復号鍵のそれぞれを生成し、前記メタデータに含まれる前記更新情報に従って、複数の前記復号鍵のうちの対応する１つを前記復号手段に提供するメタデータ取得手段とを備え、複数の前記暗号化鍵は第２の暗号化手法に従って暗号化されており、前記メタデータ取得手段は、前記メタデータに含まれる、前記第２の暗号化手法に従って暗号化されている複数の前記暗号化鍵のそれぞれを、暗号化に使用された順に順次復号していくことで、複数の前記復号鍵のそれぞれを順次生成する復号鍵生成手段と、前記メタデータに含まれる前記更新情報に従って、複数の前記暗号化鍵の各更新タイミングに対応する複数の前記復号鍵の各更新タイミングを特定し、特定された各更新タイミング毎に、更新指令を発行する更新指令手段と、前記更新指令手段により前記更新指令が発行されるまでの間、前記復号鍵生成手段により生成された第１の復号鍵を前記復号手段に出力し、前記更新指令手段により前記更新指令が発行された以降、前記復号鍵生成手段により前記第１の復号鍵の次に生成された第２の復号鍵を前記復号手段に出力する復号鍵出力手段と、複数の前記復号鍵の前記各更新タイミングまでに、前記第２の復号鍵が前記復号鍵生成手段により既に生成されているか否かを判定し、前記第２の復号鍵がまだ生成されていないと判定した場合、それ以降、前記第２の復号鍵が生成されたか否かを監視し、前記第２の復号鍵が生成されたとき、その時点を、前記第１の復号鍵から前記第２の復号鍵への更新タイミングであるとみなして、前記更新指令手段から前記更新指令を強制的に発行させる制御を行う更新指令制御手段とを有する情報処理装置であれば、本発明が適用される情報処理装置として足り、その実施の形態は問わない。
【０１２５】
即ち、復号手段、メタデータ取得手段、復号鍵生成手段、更新指令手段、復号鍵出力手段、および、更新指令制御手段のそれぞれは、上述した機能を有していれば、その実施の形態は問わない。
【０１２６】
ところで、上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１２７】
図１０は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。即ち、例えば上述した一連の処理をプログラムにより実行する場合には、メタデータ抽出部２１等は、図１０の構成のパーソナルコンピュータまたはその一部で構成することも可能である。
【０１２８】
図１０において、CPU（Central Processing Unit）２０１は、ROM（Read Only Memory）２０２、または記憶部２０８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）２０３には、CPU２０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU２０１、ROM２０２、およびRAM２０３は、バス２０４により相互に接続されている。
【０１２９】
CPU２０１にはまた、バス２０４を介して入出力インタフェース２０５が接続されている。入出力インタフェース２０５には、キーボード、マウス、マイクロホンなどよりなる入力部２０６、ディスプレイ、スピーカなどよりなる出力部２０７が接続されている。CPU２０１は、入力部２０６から入力される指令に対応して各種の処理を実行する。そして、CPU２０１は、処理の結果を出力部２０７に出力する。
【０１３０】
入出力インタフェース２０５に接続されている記憶部２０８は、例えばハードディスクからなり、CPU２０１が実行するプログラムや各種のデータを記憶する。通信部２０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０１３１】
また、通信部２０９を介してプログラムを取得し、記憶部２０８に記憶してもよい。
【０１３２】
入出力インタフェース２０５に接続されているドライブ２１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア２１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部２０８に転送され、記憶される。
【０１３３】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図１０に示されるように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア２１１、または、プログラムが一時的もしくは永続的に格納されるROM２０２や、記憶部２０８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部２０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０１３４】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１３５】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１３６】
さらにまた、本発明は、上述した図１のシステムだけではなく、様々なシステムに適用することができる。例えば、上述した図１の例では、メタデータ６４と、AVデータ暗号化部３２によりAVデータが暗号化された結果得られる暗号化AVデータは一緒に、即ち、メタデータ重畳暗号化AVデータとして、送信側である暗号化装置１から受信側である復号装置２に送信されているが、メタデータ６４と暗号化AVデータとは必ずしも一緒に送信する必要はない。即ち、メタデータを、暗号化AVデータとは別の伝送経路で送信側から受信側に伝送するシステムに対しても、本発明を適用することが可能である。
【図面の簡単な説明】
【０１３７】
【図１】本発明が適用される暗号復号システムの構成例を示す図である。
【図２】図１の暗号化装置による暗号化処理で利用されたデータであって、復号装置による復号処理で利用されるデータを含むメタデータの構造例を示す図である。
【図３】図１の暗号化装置による暗号化処理で利用されたデータであって、復号装置による復号処理で利用されるデータを含むメタデータの構造例を示す図である。
【図４】図１の暗号化装置による暗号化処理で利用されたデータであって、復号装置による復号処理で利用されるデータを含むメタデータの構造例を示す図である。
【図５】図１の復号装置のメタデータ抽出部の詳細な構成例を示すブロック図である。
【図６】暗号化AVデータの復号処理に使用されるLE Key(AES 鍵)の更新の正常時の様子の例を示す図である。
【図７】暗号化AVデータの復号処理に使用されるLE Key(AES 鍵)の更新の異常時の様子の例を示す図である。
【図８】図７の異常状態を解決可能な本発明が適用される手法を説明する図である。
【図９】図８の手法が適用された、図５のキーチェンジタイミング補正部の処理例を説明するフローチャートである。
【図１０】本発明が適用されるプログラムを実行するパーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０１３８】
１  暗号化装置，  ２  復号装置，  １１  暗号化部，  １２  メタデータ生成部，  １３  重畳部，  ２１  メタデータ抽出部，  ２２  復号部，  ３１  AES暗号データ生成部，  ３２  AVデータ暗号化部  ，  ４１AES復号データ生成部，  ４２  AVデータ復号部，  ６１−Ｄ，６１−Ｅ  LE Key，  ６２−Ｄ，６２−Ｅ  AES input，  ６３−Ｄ，６３−Ｅ  Frame reset，  ６４，６４−１乃至６４−３  メタデータ，  ６５  AES暗号データ，  ６６  AES復号データ，  １０１  メタデータ抽出分離部，  １０２  LEKP復元部，  １０３  LEKPテーブル，  １０４  キーチェンジトリガ生成部，  １０５  レジスタ，  １０８  カウンタ，  １０９  レジスタ，  １１０  AES Input生成部，  １１１  キーチェンジングタイミング補正部，  １１２  LE Frameカウント値補正部，  １２１  LEKM，  １２２  Current LE_Key ID，  １２３  Next LE_Key ID，  １２４  Key Change Timing，  １２６  LE_attribute_data，  １２７  キーチェンジトリガ，  １２９  Frame/line reset，  １３０  Frame reset，  １３１  line reset，  １３２  Line number of HD SDI，  １３３  HD-SDI Link Number，  １３４  Current Frame Count，  １３５  補正後Current Frame Count，  ２０１  CPU，  ２０２  ROM，  ２０８  記憶部，  ２１１  リムーバブルメディア
【図１】
0004524656.tif 000002
【図２】
0004524656.tif 000003
【図３】
0004524656.tif 000004
【図４】
0004524656.tif 000005
【図５】
0004524656.tif 000006
【図６】
0004524656.tif 000007
【図７】
0004524656.tif 000008
【図８】
0004524656.tif 000009
【図９】
0004524656.tif 000010
【図１０】
0004524656.tif 000011