説明

電子機器、コンテンツ再生制御方法、プログラム、記憶媒体、集積回路

【課題】ユーザの権利を不当に制限することなく、タイマ割り込み等を用いず、コンテンツの利用にかかる権利を管理してコンテンツの再生を制御する装置を提供する。
【解決手段】例えばコンテンツの再生の合計時間など、コンテンツの利用にかかる権利を管理しながらコンテンツの再生を行うために、電子機器は、権利一時記憶部59に権利情報を記憶して、フレームの復号にかかる処理において、コンテンツの利用が許可されているかの判定を行う。また、権利一時記憶部59に記憶されている権利情報の更新を行う。そして、再生するフレームが所定番目になると、権利一時記憶部59に記憶されている権利情報を、保存領域20に記憶させる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテンツの権利を管理しながらコンテンツの再生を行う電子機器に関し、特に、コンテンツの権利の確認や更新を行う技術に関する。
【背景技術】
【0002】
コンテンツの利用形態を多様化するために、音楽や動画などのコンテンツの利用にかかるユーザの権利を、コンテンツの提供者が制御できる技術が普及してきている。このような技術は、DRM(Digital Rights Management)と言われている。例えば、OMA(Open Mobile Alliance)DRM規格が策定されている。
このようなDRM技術においては、ユーザがコンテンツを利用するのに併せて、ユーザの権利を管理するための権利情報を更新する必要がある。例えば、特許文献1には、主に、再生期限が定められているコンテンツについて、そのコンテンツの再生、および、コンテンツの権利の更新を制御する技術が開示されている。
【0003】
ところで、近年では、OMA DRM R2規格が策定され、この規格においては、accumulatedという、コンテンツの再生の合計時間を管理する方式が定義されている。つまり、電子機器において、コンテンツを再生した合計時間が、予め権利者により定められた時間の上限に達するまではコンテンツの再生が許可され、上限に達すると、コンテンツの再生が中止されるというものである。上述のOMA DRM R2規格においては、「可能な限り時間的に正確に」再生を中止するべきであることが要求されている。
【特許文献1】日本国 特開2005−301634号公報
【非特許文献1】「逆解析や改変からソフトを守る」 日経エレクトロニクス1998.1.5(p.209-220)
【非特許文献2】「ソフトウェアの耐タンパー化技術」富士ゼロックス(商標)テクニカルレポート No.13(p.20-28)
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかし、特許文献1記載の技術では、コンテンツの再生開始の前に権利の確認を行い、コンテンツの再生の終了まで権利の更新を行わないため、コンテンツの再生途中に権利が消費されたとしても、コンテンツの再生を「可能な限り時間的に正確に」中止することはできない。
また、上述のaccumulatedの方式を実現するために、電子機器において、コンテンツの復号や再生とは別プロセスで、タイマ等を用いて時間を計測して権利の確認および権利の更新を逐次行い、権利が消費された時点で割り込み等によりコンテンツを復号する復号部やコンテンツを再生する再生部の動作を停止させることが考えられる。
【0005】
ここで、通常、コンテンツは、複数のフレームから構成され、1または複数のフレーム単位でコンテンツの復号および再生がなされる。しかし、上述のようにコンテンツの再生や復号とは別プロセスでタイマ割り込み等により復号部や再生部の動作を制御することとすると、権利の更新時に割り込みによるオーバヘッドのために電子機器に負荷がかかり、例えばコマ落ちや音飛び等が発生して、コンテンツの再生に悪影響を及ぼす可能性が高い。さらに、このような権利の確認や更新は、不正な改ざんを防止するために、耐タンパー技術を用いて実装される場合が多く、電子機器の動作を高速化するために権利の確認および更新にかかる処理の全てをハードウェアにより実装しようとすると高コストとなり、現実的ではない。
【0006】
また、あるフレームの復号の開始時点では権利が有効であるために当該フレームを復号部により復号している間に、上記のタイマ割り込み等により復号部の動作が停止すると、当該フレームについては本来権利が有効であったにもかかわらず、復号部の動作が停止することにより、当該フレームの復号が行われなくなる。そうすると、本来、ユーザが再生できたフレームについても再生を制限することとなり、ユーザの権利を本来よりも小さくしてしまう。
【0007】
そこで、本発明は、ユーザの権利を不当に制限することなく、また、タイマ割り込み等を用いずとも、コンテンツの利用にかかる権利を管理してコンテンツの再生を制御する技術を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明は、耐タンパモジュールを備え、前記耐タンパモジュールにおいて、コンテンツの利用にかかる権利を管理してコンテンツの再生を制御する電子機器であって、不正アクセスから保護された状態で、前記コンテンツの再生の可否を管理するための権利情報を記憶する記憶手段を備え、前記耐タンパモジュールは、複数のフレームから構成され、暗号化されたコンテンツを、フレーム単位で取得する受信手段と、前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する機能を有する権利判定手段と、Nを自然数としたとき、コンテンツの再生を開始してからN番目に再生されるフレームであって、Nの値が所定の判定条件を満たすフレームを前記受信手段により取得するごとに、当該N番目のフレームの復号にかかる処理において、前記権利判定手段に前記判定を行わせ、前記権利判定手段により肯定的な判定がなされた場合は、当該N番目のフレームを復号し、否定的な判定がなされた場合は、当該N番目のフレーム以降のコンテンツの再生を制限する制御手段とを含むことを特徴とする電子機器である。
【発明の効果】
【0009】
上述の電子機器は、前記制御手段を備えることにより、フレームの復号にかかる処理において、コンテンツの再生が許可されているかの判定、つまりコンテンツの利用にかかる権利の確認を行う。
したがって、タイマ割り込み等の別プロセスによらず、復号処理とともに権利の確認を行うため、割り込みによるオーバヘッドなどの悪影響のおそれが小さい。すなわち、現実的な方法により、コンテンツの利用にかかる権利の確認を行うことができる。また、権利が有効であればフレームが復号されるため、ユーザの権利を不当に制限することもない。
【0010】
上記の構成において、前記権利情報は、前記コンテンツの再生がなされた時間の合計である再生合計時間を示す再生合計時間情報と、前記コンテンツの再生が許可されている時間の合計である再生権利時間を示す再生権利時間情報とを含み、前記権利判定手段は、コンテンツの再生中に経過した時間と、前記権利情報に示される前記再生合計時間との和を、前記再生権利時間と比較することにより前記判定を行い、前記制御手段は、コンテンツの再生を開始してからN番目に再生されるフレームであって、Nの値が所定の更新条件を満たすフレームの復号にかかる処理において、コンテンツの再生中に経過した時間に応じて、前記記憶手段に記憶されている前記再生合計時間情報を更新する権利更新部を含むこととしてもよい。
【0011】
これにより、コンテンツの利用にかかる権利が、コンテンツの再生の合計時間を制限する場合に、タイマ割り込み等を用いた別プロセスによらずに、コンテンツの利用にかかる権利を管理しながらコンテンツを再生することができる。
ここで、前記電子機器は、前記記憶手段よりも高速アクセス可能な記憶領域を有する権利一時記憶手段を備え、前記制御手段は、前記記憶手段に記憶されている前記権利情報を、前記権利一時記憶手段において記憶させ、前記権利判定手段は、前記権利一時記憶手段に記憶されている権利情報に基づいて、前記判定を行い、前記権利更新部は、フレームの復号にかかる処理において、前記権利一時記憶手段において記憶されている権利情報の再生合計時間情報を、コンテンツの再生中に経過した時間に応じて更新する第1の処理と、フレームの復号にかかる処理において、前記権利一時記憶手段において記憶されている権利情報を、前記記憶手段に記憶させる第2の処理とを行い、前記制御手段は、コンテンツの再生を開始してからN番目に再生されるフレームの復号にかかる処理において、Nの値に応じて、前記第1の処理または前記第2の処理のうちいずれかまたは両方を前記権利更新部により実行することとするとよい。
【0012】
前記権利情報は、不正アクセスから保護された状態で、前記記憶手段に記憶されている。ここで、不正アクセスから保護された状態で権利情報が記憶されるとは、前記権利情報が、暗号化された状態で記憶されていること、または、前記記憶手段が不正アクセスを防止する機構を有していること、あるいはその両方をいう。したがって、前記記憶手段に記憶されている権利情報にアクセスするには、権利情報の復号化や、記憶手段への認証等が必要となり、必ずしも前記記憶手段に対して、十分なアクセス速度でアクセスできるとは限らない。その結果、権利の確認や更新の処理に時間を要する可能性がある。
【0013】
これに対し、上述の構成を備える電子機器は、前記記憶手段よりも高速アクセス可能な記憶領域を有する権利一時記憶手段において権利情報を記憶する。そして、電子機器は、前記権利一時記憶手段に記憶されている権利情報に基づいて、コンテンツの利用にかかる権利を管理する。
したがって、コンテンツの利用にかかる権利が、コンテンツの再生時間の合計を制限するものである場合等、逐次、権利の確認および更新の処理が必要な場合に、電子機器は、これらの処理を高速で行うことができる。
【0014】
また、前記制御手段は、フレームの復号にかかる処理において、前記権利更新部による前記第1の処理および前記第2の処理のいずれの実行も禁止して前記権利判定手段に前記判定を行わせる第3の処理と、フレームの復号にかかる処理において、前記第3の処理と、前記権利更新部による前記第1の処理と、前記第2の処理とのいずれも禁止して当該フレームの復号を行う第4の処理とを行い、各フレームの復号にかかる処理において、前記第3の処理と、前記第4の処理と、前記権利更新部による前記第1の処理と、前記第2の処理と、前記第1および第2の両方の処理とのうちいずれかを実行することとするとよい。
【0015】
上述のように、前記記憶手段は、不正アクセスから保護された状態で権利情報を記憶するため、アクセスに比較的時間を要する。すなわち、前記記憶手段にアクセスしない場合は、前記電子機器は、比較的高速で処理を行うことができる。そこで、上述のように電子機器を構成することで、電子機器は、記憶手段に記憶されている権利情報の更新以外の処理を行いつつ、処理性能に応じて、記憶手段の権利情報の更新を行うことができる。
【0016】
また、上述の構成において、前記制御手段は、コンテンツの再生終了の要求を受け付けたとき、前記権利一時記憶手段に記憶されている権利情報を、前記記憶手段に記憶させることとするとよい。
これにより、ユーザによるコンテンツの再生状況を、権利情報に忠実に反映させることができる。
【0017】
また、上述の構成において、前記制御手段は、コンテンツの再生終了の要求を受け付けたとき、前記権利一時記憶手段に記憶されている権利情報を消去することとするとよい。
こうすると、権利一時記憶手段の権利情報が消去されるので、不正な解析等が権利情報に対してなされるのを困難にすることができる。
また、前記制御手段は、コンテンツの再生終了の要求を受け付けたとき、暗号化された前記コンテンツの復号を行うための復号鍵を、前記耐タンパモジュールから消去することとするとよい。
【0018】
これにより、コンテンツの復号を行うための復号鍵が不正に取得されるおそれを小さくすることができ、コンテンツの保護を強化することができる。
ところで、本発明は、コンテンツの利用にかかる権利が、コンテンツの再生期限を示すものである場合も適用することができる。
すなわち、本発明は、前記権利情報は、コンテンツの再生期限を示す再生期限情報を含み、前記電子機器は、さらに、時刻を計時するクロックと、前記クロックが計時している時刻を取得する時刻取得手段を備え、前記制御手段は、前記権利判定手段による前記判定の際に前記時刻取得手段により時刻を取得し、前記権利判定手段は、前記判定の際に取得された時刻が前記権利情報の前記再生期限情報に示される再生期限を越えている場合に、否定的な判定を行うこととしてもよい。
【0019】
これにより、コンテンツの利用にかかる権利が、コンテンツの再生期限を示すものである場合に、電子機器は、コンテンツにかかる権利を管理しながらコンテンツの再生を行うことができる。
また、コンテンツの利用にかかる権利が、コンテンツの再生期限を示すものである場合、権利の判定時点において、コンテンツの再生期限まで余裕がある場合は、電子機器に負荷をかけて権利の確認を頻繁に行う必要性は比較的小さい。しかし、コンテンツの再生期限が近い場合、例えばコンテンツの再生期限の当日に再生を行っている場合は、権利の確認の頻度を上げて、権利が無効になると直ちにコンテンツの再生を停止することが望ましい。
【0020】
そこで、前記制御手段は、前記権利判定手段による前記判定の際に前記時刻取得手段により時刻を取得し、前記権利情報の前記再生期限情報に示される期限までの残り時間の長さに応じて、前記権利判定手段に前記判定を行わせる頻度を決定する判定タイミング決定部を含むこととしてもよい。
こうすることで、コンテンツの再生期限までの残り時間の長さに応じて、権利の確認にかかる電子機器の負荷を調節することができる。
【0021】
また、上述の構成において、前記制御手段は、コンテンツの再生を開始してから最初のフレームの復号にかかる処理において、前記権利判定手段に前記判定を行わせ、否定的な判定がなされた場合は、前記コンテンツの再生を禁止することとするとよい。
これにより、コンテンツの再生開始時において、コンテンツの再生期限が過ぎていれば、コンテンツの再生を行われることがなくなる。
【0022】
上述の構成においても、前記電子機器は、前記記憶手段よりも高速アクセス可能な記憶領域を有する権利一時記憶手段を備え、前記制御手段は、前記記憶手段に記憶されている前記権利情報を、前記権利一時記憶手段において記憶させ、前記権利判定手段は、前記権利一時記憶手段に記憶されている権利情報に基づいて、前記判定を行うこととするとよい。
【0023】
また、前記制御手段は、コンテンツの再生開始時に、前記記憶手段に記憶されている権利情報を前記権利一時記憶手段に記憶させ、コンテンツの再生終了の要求を受け付けたとき、前記権利一時記憶手段に記憶されている権利情報を消去することとするとよい。
また、コンテンツの利用にかかる権利としては、コンテンツの再生の合計時間と、コンテンツの再生期限の場合を例にしてきた。この他に、コンテンツの利用にかかる権利が、コンテンツの再生回数の合計を制限するものである場合も本発明を適用することができる。
【0024】
すなわち、本発明は、前記権利情報は、コンテンツが再生された再生回数を示す再生回数情報と、コンテンツの再生が許可されている回数である権利回数を示す権利回数情報とを含み、前記権利判定手段は、前記権利情報に示される前記再生回数が前記権利回数以上の場合に否定的な判定を行うこととしてもよい。
これにより、コンテンツの利用にかかる権利が、コンテンツの再生回数の合計を制限するものである場合に、電子機器は、コンテンツにかかる権利を管理しながらコンテンツの再生を行うことができる。
【0025】
この場合において、前記制御手段は、コンテンツの再生を開始してから最初のフレームの復号にかかる処理において、前記権利判定手段に前記判定を行わせ、否定的な判定がなされた場合は、前記コンテンツの再生を禁止することとするとよい。
これにより、コンテンツの再生開始時において、コンテンツの再生回数が、コンテンツを再生可能な回数を超えている場合に、コンテンツの再生を行われることがなくなる。
【0026】
なお、コンテンツの利用にかかる権利が、コンテンツの再生回数の合計を制限するものである場合、仮にユーザが誤ってコンテンツを再生してしまうと、ユーザが意図していないにもかかわらず権利が消費されることとなり、ユーザの保護にかける。また、コンテンツの提供者としても、コンテンツの一部の利用や、所定時間の利用については権利を消費することなくユーザに利用してもらうことで、ユーザにコンテンツを試用させたい場合もある。例えば、音楽や動画などのコンテンツであれば、所定時間以内の利用を無償で認めたい場合がある。
【0027】
そこで、前記制御手段は、コンテンツの再生を開始してからの経過時間が所定時間を超えない場合には、前記記憶手段に記憶されている権利情報の前記再生回数をインクリメントせず、所定時間を超えた場合に、前記インクリメントを行う権利更新部を含むこととするとよい。
これにより、ユーザが操作を誤ったとしても、所定時間以内にコンテンツの再生を停止すれば、コンテンツの利用にかかる権利が消費されないで済む。また、コンテンツの提供者は、一定の条件の下で、コンテンツをユーザに試用させること等が可能となる。
【0028】
なお、具体的には、前記電子機器は、さらに、時刻を計時するクロックを備え、前記制御手段は、前記クロックが計時している時刻を取得する時刻取得手段と、時刻取得手段により取得された時刻を記憶する時刻記憶部と、コンテンツの再生開始時に前記時刻取得手段により時刻を取得して開始時刻情報として前記時刻記憶部において記憶させる開始時刻取得部と、コンテンツの再生を開始してからN番目に再生されるフレームであって、Nの値が所定の更新タイミング条件を満たすフレームの復号にかかる処理において、前記時刻取得手段により、その復号にかかる処理時における時刻を取得する判定時刻取得部と、当該フレームの復号にかかる処理において判定時刻取得部により取得された時刻と前記時刻記憶部に記憶されている開始時刻情報に示される時刻との差分に基づいて経過時間を算出する経過時間算出部とを含み、前記権利更新部は、前記経過時間算出部により算出された経過時間が所定時間を超えない場合には、前記記憶手段の権利情報の前記再生回数をインクリメントせず、前記所定時間を超える場合に、前記インクリメントを行うこととするとよい。
【0029】
また、この構成においても、前記電子機器は、前記記憶手段よりも高速アクセス可能な記憶領域を有する権利一時記憶手段を備え、前記制御手段は、前記記憶手段に記憶されている前記権利情報を、前記権利一時記憶手段において記憶させ、コンテンツの再生を開始してからの経過時間が所定時間を超えるまでに、前記権利判定手段に、前記権利一時記憶手段に記憶されている権利情報に基づいて前記判定を行わせ、前記判定の後、前記権利一時記憶手段に記憶されている権利情報の前記再生回数をインクリメントし、前記権利更新部は、コンテンツの再生を開始してからの経過時間が所定時間を超えた場合に、前記権利一時記憶手段に記憶されている、前記再生回数がインクリメントされた権利情報を前記記憶手段に記憶させることとするとよい。
【0030】
さらに、この構成において、前記制御手段は、前記権利更新部により前記記憶手段に記憶されている権利情報の前記再生回数がインクリメントされた場合に、前記権利一時記憶手段に記憶されている権利情報を消去する一時記憶消去部を含むこととするとよい。
また、この構成において、前記電子機器は、コンテンツの再生終了の要求を受け付けたとき、前記権利一時記憶手段に記憶されている権利情報を消去することとするとよい。
【0031】
なお、コンテンツの利用にかかる権利が、コンテンツの再生回数の合計を制限するものである場合に、上記では、コンテンツの再生が所定時間経過してから権利情報を更新するものとしたが、このほかに、以下のようにしてもよい。
すなわち、前記制御手段は、コンテンツの再生を開始してから、所定数のフレームを再生するまでは、前記記憶手段に記憶されている権利情報の前記再生回数をインクリメントせず、所定数以上のフレームを再生した場合に、前記インクリメントを行う権利更新部を含むこととするとよい。
【0032】
これにより、電子機器が所定数のフレームを再生したか否かに応じて権利の更新を行うので、時間を計測するためのクロック等が不要となる。
なお、この構成においても、前記電子機器は、前記記憶手段よりも高速アクセス可能な記憶領域を有する権利一時記憶手段を備え、前記制御手段は、前記記憶手段に記憶されている前記権利情報を、前記権利一時記憶手段において記憶させ、コンテンツの再生を開始してから所定数のフレームを再生するまでに、前記権利判定手段に、前記権利一時記憶手段に記憶されている権利情報に基づいて前記判定を行わせ、前記判定の後、前記権利一時記憶手段に記憶されている権利情報の前記再生回数をインクリメントし、前記権利更新部は、コンテンツの再生を開始してから所定数のフレームを再生した場合に、前記権利一時記憶手段に記憶されている、前記再生回数がインクリメントされた権利情報を前記記憶手段に記憶させることとするとよい。
【0033】
また、この構成において、前記制御手段は、前記権利更新部により前記再生回数がインクリメントされた権利情報が前記記憶手段に記憶されると、前記権利一時記憶手段に記憶されている権利情報を消去する一時記憶消去部を含むこととするとよい。
また、この構成において、前記制御手段は、ユーザからコンテンツの再生終了の要求を受け付けたとき、前記権利一時記憶手段に記憶されている権利情報を消去する権利情報消去部を含むこととするとよい。
【0034】
ここで、コンテンツにかかる権利の保護を強化するために、以下のようにするとよい。
すなわち、本発明は、前記権利情報は、1以上のコンテンツのそれぞれについて、コンテンツの再生の可否を管理するための情報であり、各コンテンツの再生の可否を管理するための情報であるエントリ情報を1以上含み、各エントリ情報は、それぞれ異なる暗号鍵で暗号化されており、前記記憶手段は、さらに、各エントリ情報を復号するための鍵の鍵リストを、暗号鍵を用いて暗号化された状態で記憶し、前記鍵リストを暗号化するための暗号鍵をリスト暗号鍵として不正アクセスから保護された状態で記憶し、前記リスト暗号鍵は、不正アクセスから保護された状態にあるセキュアカウンタのカウント値に基づいて生成され、前記セキュアカウンタのカウント値は、所定のタイミングで増加または減少し、前記記憶手段は、前記セキュアカウンタのカウント値が増加または減少するたびに前記リスト暗号鍵を生成して前記鍵リストを暗号化して記憶し、前記権利判定手段は、前記リスト暗号鍵を用いて復号した鍵リストに含まれる鍵を用いて、前記判定にかかるコンテンツのエントリ情報を復号し、復号したエントリ情報を用いて前記判定を行うこととすることもできる。
【0035】
権利情報が不正に取得されると、コンテンツが不正に再生されるおそれが高まる。ここで、上述の構成では、権利情報に含まれる各エントリ情報は、それぞれ異なる暗号鍵で暗号化されている。したがって、権利情報が不正に解析されたとしても、すべてのコンテンツについて、そのエントリ情報を解析するのは困難となる。すなわち、権利情報が1の暗号鍵により暗号化されている場合と比べて、コンテンツの保護を強化することができる。
【0036】
ところで、上述のように、記憶手段に記憶されている権利情報を更新する処理を電子機器が行うと、更新しない場合と比べて電子機器の負荷が大きくなる。その結果、コンテンツの再生等に悪影響を及ぼす場合がある。しかし、電子機器は、さまざまな処理を行うため、電子機器の動作状況によっては、例えば電子機器が比較的低い負荷で動作している場合は、記憶手段に記憶されている権利情報を更新する頻度を上げてもよい。そして、このように権利情報の更新の頻度を上げると、例えば、記憶手段の記憶内容が、電子機器の電源が遮断されても保持されている場合に、不正者が電子機器の電力の供給を不正に止めることで権利の消費を回避しようとしたとしても、そのような不正の影響を小さくすることができる。
【0037】
そこで、本発明において、前記電子機器は、前記電子機器の動作状況を管理する環境検知部を含み、前記権利更新部は、前記環境検知部の管理している前記動作状況に応じて、コンテンツの再生時における前記第2の処理の実行を制御することとすることもできる。
これにより、電子機器の動作状況に応じて、負荷の大きい処理の割合、具体的には記憶手段に記憶されている権利情報を更新する処理の割合等を、適切に定めることができる。すなわち、電子機器が負荷の小さい動作を行っている場合は、コンテンツの再生等に悪影響を及ぼさないよう、記憶手段に記憶されている権利情報を更新する処理の割合を増やすこととし、電子機器が負荷の大きい動作を行っている場合は、この処理の割合を小さくすることができる。
【0038】
また、本発明において、前記電子機器は、前記電子機器の動作状況を管理する環境検知部を含み、前記権利更新部は、前記環境検知部の管理している前記動作状況に応じて、コンテンツの再生時における前記第1の処理、前記第2の処理、前記第1および第2の両方の処理、前記第3の処理、前記第4の処理の処理の割合を制御することとすることもできる。
【0039】
これにより、電子機器の動作状況にあわせて、記憶手段に記憶されている権利情報を更新する処理の割合や、権利判定手段による判定処理の割合を小さくしたり大きくしたりすることができる。
なお、電子機器の動作状況とは、具体的には以下のようなものが挙げられる。
例えば、上述の構成において、前記環境検知部は、前記電子機器のCPU使用率を管理しており、前記権利更新部は、前記CPU使用率に応じて、コンテンツの再生時において前記第2の処理を行うフレームの割合を制御することとしてもよい。
【0040】
これにより、電子機器のCPU使用率に応じて、記憶手段に記憶されている権利情報を更新する処理の割合を制御することができる。
また、上述の構成において、前記環境検知部は、コンテンツの再生時間を管理しており、前記権利更新部は、前記環境検知部により管理されている前記再生時間が所定時間を超えたときに、前記第2の処理を実行することとしてもよい。
【0041】
このように構成すると、コンテンツの再生時間が所定時間を超えた場合に、記憶手段に記憶されている権利情報を更新することができるので、コンテンツの再生が行われているにもかかわらず権利情報の更新がいつまでも行われない事態を防ぐことができる。
また、上述の構成において、前記電子機器は、マルチタスク機能を有しており、前記環境検知部は、同時に起動しているアプリケーションの数を管理しており、前記権利更新部は、前記環境検知部により管理されている、前記同時に起動しているアプリケーションの数に応じて、コンテンツの再生時において前記第2の処理を行うフレームの割合を制御することとしてもよい。
【0042】
これにより、電子機器において起動しているアプリケーションの数に応じて、記憶手段に記憶されている権利情報を更新する処理の割合を制御することができる。例えば、アプリケーションの同時起動数が比較的多い場合に、上述の権利情報の更新処理の割合を小さくすることができる。
また、上述の構成において、前記環境検知部は、再生にかかるコンテンツの種類を管理しており、前記権利更新部は、前記環境検知部により管理されているコンテンツの種類に応じて、コンテンツの再生時において前記第2の処理を行うフレームの割合を制御することとしてもよい。
【0043】
これにより、それぞれの種類のコンテンツの再生に必要となる電子機器の処理負荷を考慮して、上述の権利情報の更新処理の割合を制御することができる。例えば、音楽と比べてコンテンツの再生処理の負荷が大きい動画を再生する場合には、上述の権利情報の更新処理の割合を小さくし、音楽を再生する場合にはその更新処理の割合を多くすること等が可能となる。
【0044】
また、上述の構成において、前記環境検知部は、前記電子機器がアイドル状態であるか否かを管理しており、前記権利更新部は、前記電子機器がアイドル状態であるか否かに応じて、コンテンツの再生時において前記第2の処理を行うフレームの割合を制御することとしてもよい。
これにより、電子機器がアイドル状態であるか否かに応じて上述の権利情報の更新処理の割合を制御することができる。例えば、電子機器がアイドル状態であれば、アイドル状態でない場合と比べて、上述の権利情報の更新処理の割合を増やすこと等が可能となる。
【0045】
また、上述の構成において、前記環境検知部は、前記電子機器が省電力モードで動作しているか否かを管理しており、前記権利更新部は、前記電子機器が省電力モードで動作しているか否かに応じて、コンテンツの再生時において前記第2の処理を行うフレームの割合を制御することとしてもよい。
これにより、電子機器が省電力モードであるか否かに応じて上述の権利情報の更新処理の割合を制御することができる。例えば、電子機器が省電力モードでない場合には、省電力モードである場合と比べて、上述の権利情報の更新処理の割合をふやすこと等が可能となる。
【0046】
ここで、上述の電子機器において、コンテンツにかかる権利の保護を強化するために、以下のようにするとよい。
すなわち、本発明において、前記制御手段は、所定のタイミングになるごとに、前記電子機器の一部または全部に対して改ざん検出を行う改ざん検出部を含むこととするとよい。
【0047】
このようにすると、電子機器の一部または全部が改ざんされているか否かを、所定にタイミングになるごとに確認するので、不正にコンテンツが再生されるおそれを小さくすることができる。
ここで、前記改ざん検出部は、前記改ざん検出の際、前記電子機器の一部に対して改ざん検出を行う場合、前記改ざん検出のたびに、前記電子機器の、改ざん検出の済んでいない部分を対象として改ざん検出を行うこととするとよい。
【0048】
これにより、電子機器の全部を対象として一度に改ざん検出を行うことが困難な場合、例えば全部を一度に改ざん検出しようとすると、電子機器の処理能力に負荷がかかりすぎてコンテンツの再生等に支障をきたす場合に、改ざん検出のタイミングになるごとに一部分ずつ順に改ざん検出を行うことができる。したがって、上述の構成によると、電子機器の処理能力を考慮して、改ざん検出を行うことができる。
【0049】
なお、改ざん検出の対象としては、以下のものが考えられる。
すなわち、前記改ざん検出部は、前記コンテンツの再生処理を行うアプリケーションである再生アプリに対して改ざん検出を行うこととするとよい。
これにより、コンテンツの再生処理を行うアプリケーションが改ざんされているか否かを検出することができ、コンテンツを不正に再生されるおそれを小さくすることができる。
【0050】
なお、この場合において、前記電子機器は、さらに、ユーザへの通知を行うユーザ通知部を備え、前記ユーザ通知部は、前記改ざん検出部により改ざんが検出された場合に、前記再生アプリのアップデートが必要であることをユーザに通知することとするとよい。
こうすると、アプリケーションの改ざんが検出された場合に、ユーザに対してアップデートを促すことができ、アップデートにより正規のアプリケーションがユーザにより実行されることにより、コンテンツを不正に再生されるおそれを小さくすることができる。
【0051】
また、この場合において、前記制御手段は、前記前記改ざん検出部により改ざんが検出された場合、前記再生アプリを停止させることとするとよい。
これにより、コンテンツが不正なアプリによって再生されるのを防ぐことができる。
また、改ざん検出のタイミングとしては、以下のものが考えられる。
すなわち、前記改ざん検出部は、フレームの復号にかかる処理の際に前記記憶手段に記憶されている権利情報にアクセスするタイミングにおいて、前記改ざん検出を行うこととするとよい。
【0052】
また、前記改ざん検出部は、再生にかかるコンテンツの、最初のフレームの復号にかかる処理において、前記改ざん検出を行うこととするとよい。
また、前記改ざん検出部は、再生にかかるコンテンツのフレームを所定数復号するたびに、前記改ざん検出を行うこととするとよい。
また、前記改ざん検出部は、前記権利判定手段による前記判定が行われるタイミングで、前記改ざん検出を行うこととするとよい。
【0053】
また、前記制御手段は、所定のタイミングになるごとに、前記電子機器に対して改ざん検出を行う改ざん検出部を含み、前記改ざん検出部は、前記セキュアカウンタのカウント値が増加または減少するタイミングにおいて前記改ざん検出を行うこととするとよい。
また、前記制御手段は、所定のタイミングになるごとに、前記電子機器に対して改ざん検出を行う改ざん検出部を含み、前記改ざん検出部は、前記コンテンツの再生処理を行うアプリケーションである再生アプリがインストールされたタイミングまたはアップデートされたタイミングにおいて前記改ざん検出を行うこととするとよい。
【0054】
また、本発明は、不正アクセスから保護された状態で記憶手段に記憶されている、コンテンツの再生の可否を管理するための権利情報を用いて、コンテンツの利用にかかる権利を管理してコンテンツの再生を制御するコンテンツ再生制御方法であって、複数のフレームから構成され、暗号化されたコンテンツを、フレーム単位で取得する受信ステップと、前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する処理を行う権利判定ステップと、Nを自然数としたとき、コンテンツの再生を開始してからN番目に再生されるフレームであって、Nの値が所定の判定条件を満たすフレームを前記受信ステップにおいて取得するごとに、当該N番目のフレームの復号にかかる処理において、前記権利判定ステップにより前記判定を行わせ、前記権利判定ステップにより肯定的な判定がなされた場合は、当該N番目のフレームを復号し、否定的な判定がなされた場合は、当該N番目のフレーム以降のコンテンツの再生を制限する制御ステップとを含むことを特徴とするコンテンツ再生制御方法でもある。
【0055】
また、本発明は、不正アクセスから保護された状態で記憶手段に記憶されている、コンテンツの再生の可否を管理するための権利情報を用いて、コンテンツの利用にかかる権利を管理してコンテンツを再生する処理を電子機器に行わせるための制御プログラムであって、複数のフレームから構成され、暗号化されたコンテンツを、フレーム単位で取得する受信ステップと、前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する処理を行う権利判定ステップと、Nを自然数としたとき、コンテンツの再生を開始してからN番目に再生されるフレームであって、Nの値が所定の判定条件を満たすフレームを前記受信ステップにおいて取得するごとに、当該N番目のフレームの復号にかかる処理において、前記権利判定ステップにより前記判定を行わせ、前記権利判定ステップにより肯定的な判定がなされた場合は、当該N番目のフレームを復号し、否定的な判定がなされた場合は、当該N番目のフレーム以降のコンテンツの再生を制限する制御ステップとを含むことを特徴とする制御プログラムでもある。
【0056】
また、本発明は、不正アクセスから保護された状態で記憶手段に記憶されている、コンテンツの再生の可否を管理するための権利情報を用いて、コンテンツの利用にかかる権利を管理してコンテンツを再生する処理を電子機器に行わせるための制御プログラムを記憶し、コンピュータ読み取り可能な記憶媒体であって、前記制御プログラムは、複数のフレームから構成され、暗号化されたコンテンツを、フレーム単位で取得する受信ステップと、前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する処理を行う権利判定ステップと、Nを自然数としたとき、コンテンツの再生を開始してからN番目に再生されるフレームであって、Nの値が所定の判定条件を満たすフレームを前記受信ステップにおいて取得するごとに、当該N番目のフレームの復号にかかる処理において、前記権利判定ステップにより前記判定を行わせ、前記権利判定ステップにより肯定的な判定がなされた場合は、当該N番目のフレームを復号し、否定的な判定がなされた場合は、当該N番目のフレーム以降のコンテンツの再生を制限する制御ステップとを含むことを特徴とする記憶媒体でもある。
【0057】
また、本発明は、不正アクセスから保護された状態で記憶手段に記憶されている、コンテンツの再生の可否を管理するための権利情報を用いて、コンテンツの利用にかかる権利を管理してコンテンツの再生を制御する集積回路であって、複数のフレームから構成され、暗号化されたコンテンツを、フレーム単位で取得する受信手段と、前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する機能を有する権利判定手段と、Nを自然数としたとき、コンテンツの再生を開始してからN番目に再生されるフレームであって、Nの値が所定の判定条件を満たすフレームを前記受信手段により取得するごとに、当該N番目のフレームの復号にかかる処理において、前記権利判定手段に前記判定を行わせ、前記権利判定手段により肯定的な判定がなされた場合は、当該N番目のフレームを復号し、否定的な判定がなされた場合は、当該N番目のフレーム以降のコンテンツの再生を制限する制御手段とを備えることを特徴とする集積回路でもある。
【発明を実施するための最良の形態】
【0058】
1 実施の形態1
以下、本発明の実施の一形態について、図面を用いて説明する。
以下の実施例では、コンテンツの利用にかかる権利を管理しながらコンテンツの再生を行う電子機器1を例にして説明する。コンテンツの利用にかかる権利とは、例えば、コンテンツの再生可能時間や、再生期限や、再生回数などである。コンテンツの利用にかかる権利の詳細は後述する。
【0059】
1.1 概要
電子機器1の概要を、図面を用いて説明する。
図1に示す電子機器1は、具体的には、通信機能を有しており、コンテンツ配信サービス等を利用することによりネットワークを介してコンテンツを取得する。電子機器1は、例えば、通信機能を具備したセットトップボックス、テレビ、HDD(Hard Disk Drive)/DVD(Digital Video Disc)レコーダ、ゲーム機、携帯電話機、PDA等である。ここで、コンテンツとは、例えば動画、静止画、音楽、地図などである。コンテンツは、通常、暗号化された状態で配布される。
【0060】
また、電子機器1は、コンテンツの利用にかかる権利を管理するための権利情報を、通信機能を利用して取得する。電子機器1は、権利情報を参照しながらコンテンツの復号および再生を行う。
ここで、電子機器1は、暗号化されたコンテンツを復号して再生する際、コンテンツのCodecのフレーム単位でコンテンツにかかる権利の確認、コンテンツの復号および再生を行う。図3(a)に示すように、コンテンツ21は、複数のフレームから構成されている。なお、フレームについて補足すると、例えばAAC(Advanced Audio Codec)のような音声圧縮Codecでは、オーディオ信号は、所定数のサンプルごとにブロック化されており、各ブロックが1フレームとして処理される。一般的に、デコーダ側では、フレームを一単位としてコンテンツの再生処理を行う。
【0061】
なお、電子機器1は、取得した権利情報を保存領域20において記憶し、権利情報の少なくとも一部を、図2に示す、高速アクセス可能な権利一時記憶部59に記憶させ、コンテンツの再生中は、権利一時記憶部59に記憶させたエントリ情報を用いて、逐次、権利の判定および権利の更新を行う。エントリ情報は、権利の判定のために用いられる情報であり、詳しくは後述する。そして、電子機器1は、再生したフレームの数に応じて、権利一時記憶部59に記憶されている、更新されたエントリ情報を、保存領域20に書き出す。こうすると、権利の確認および権利の更新をしつつ、保存領域20の権利情報に、更新内容を反映させることができる。その結果、コンテンツの再生中に、不正者が電源切断する等により権利一時記憶部59の記憶内容を消失させて、例えばコンテンツの再生可能時間の消費を無くそうとしたとしても、保存領域20に書き出されている権利情報が消失しなければ、権利情報がある程度は更新されているので、不正者の得られる利益を小さくすることができる。
【0062】
なお、通信機能を用いてコンテンツを取得することとしたが、必ずしも通信機能を用いてコンテンツを取得する必要はない。例えば、SDメモリカード等の記録媒体を電子機器1に装着し、前記記録媒体に記録されたコンテンツを取得することとしてもよい。
1.2 構成
次に、電子機器1の構成を具体的に説明する。
【0063】
図1は、本発明の電子機器1の機能ブロック図である。
図1に示すように、電子機器1は、コンテンツ管理部10と、保存領域20と、時変鍵記憶部30と、セキュアクロック40とを含む。
1.2.1 コンテンツ管理部10
コンテンツ管理部10は、取得したコンテンツの権利を管理しつつコンテンツを再生する。詳細は後述する。
【0064】
1.2.2 保存領域20
保存領域20は、電子機器1が取得した1以上のコンテンツ21(コンテンツ21a、21b、・・)や、権利情報(権利管理テーブル25)を記憶する。ここで、権利管理テーブル25は、後述する時変鍵記憶部30に記憶されている時変鍵31を用いて暗号化されている。不正な改ざんを防ぐため、保存領域20に記憶されるコンテンツや権利管理テーブル25は、暗号化されて記憶されるか、保存領域20そのものを、不正アクセスを防止する機構を有するセキュアフラッシュなどにより実現するとよい。本実施形態では、コンテンツそのものは電子機器1のユーザが他の電子機器のユーザに再配信すること等を想定して、コンテンツは、AES(Advanced Encryption Standard)などの暗号化アルゴリズムで暗号化されていることとする。なお、AES以外の暗号化アルゴリズムを用いてコンテンツの暗号化を行ってもよい。なお、暗号化されたコンテンツを復号するための復号鍵は、権利管理テーブル25に含まれている。また、本実施形態では、暗号化されたコンテンツ等への解析を防ぐために、保存領域20は、不正アクセスを防止する機構を有していることとする。なお、不正アクセスを防止する機構を有しつつ、コンテンツや権利管理テーブル25等を暗号化して保持していてもよい。
【0065】
ここで、保存領域20が記憶する権利管理テーブル25について説明する。
図4は、権利管理テーブル25を示す図である。
図4に示すように、権利管理テーブル25の1件のレコード(これを、以下、「エントリ情報」と言う)は、コンテンツID25aと、コンテンツ鍵25bと、権利タイプ25cと、再生回数25dと、権利回数25eと、再生合計時間25fと、再生権利時間25gと、再生期限25hとを含む。
【0066】
コンテンツID25aは、コンテンツを識別する識別子を示す。
コンテンツ鍵25bは、コンテンツID25aで示されるコンテンツの復号鍵である。なお、コンテンツが暗号化アルゴリズムとしてAESを用いて暗号化されている場合、復号鍵は128ビットや192ビットの情報となる。
権利タイプ25cは、コンテンツID25aで示されるコンテンツの権利タイプを示す。権利タイプの詳細は後述する。
【0067】
再生回数25dは、コンテンツID25aで示されるコンテンツが再生された回数を示す。コンテンツが再生されると、再生回数25dの値が更新される。
権利回数25eは、コンテンツID25aで示されるコンテンツの再生が許可されている回数を示す。
再生合計時間25fは、コンテンツID25aで示されるコンテンツが再生された時間の合計を示す。コンテンツが再生されると、再生した時間の分だけ再生合計時間25fの値が更新される。
【0068】
再生権利時間25gは、コンテンツID25aで示されるコンテンツの再生が許可されている再生時間の合計を示す。
再生期限25hは、コンテンツID25aで示されるコンテンツの再生が許可されている期限を示す。
ここで、権利タイプについて説明する。権利タイプとは、どのようにしてコンテンツの利用にかかる権利を制限するかを示すものであり、権利タイプとしては、本実施形態では、「回数制限」「期間制限」「時間制限」「期間回数制限」「無制限」の5つがある。
【0069】
「回数制限」とは、あらかじめコンテンツの再生回数の上限がコンテンツ提供者によって定められている権利タイプである。コンテンツID25aが「001」の例においては、再生回数の上限が5回の権利がユーザによって1回消費されていることが、再生回数25dおよび権利回数25eにより示されている。
「期間制限」とは、あらかじめコンテンツの再生期限がコンテンツ提供者によって定められている権利タイプである。コンテンツID25aが「002」の例においては、再生期限が2006年3月31日であることが、再生期限25hにより示されている。
【0070】
「時間制限」とは、あらかじめコンテンツを再生することができる合計時間がコンテンツ提供者によって定められている権利タイプである。コンテンツID25aが「003」の例においては、再生合計時間の上限が20分であることが再生権利時間25gにより示されており、ユーザによって消費された再生合計時間が6分であることが再生合計時間25fにより示されている。
【0071】
「期間回数制限」とは、あらかじめコンテンツの再生期限とそれまでの再生回数の上限がコンテンツ提供者によって定められている権利タイプである。権利タイプ「回数制限」と「期間制限」の組み合わせといえる。すなわち、「回数制限」と「期間制限」の両方の条件が満たされなくなると(再生期限切れ、かつ、再生回数が上限に達した場合)コンテンツの再生が許可されなくなる。なお、「回数制限」と「期間制限」のいずれかの条件が満たされなくなった場合(再生期限が切れるか、または再生回数が上限に達した場合)にコンテンツの再生が許可されなくなることとしてもよい。コンテンツID25aが「004」の例においては、再生期限が2006年3月31日までで、再生回数の上限が10回の権利がユーザによって3回消費されていることが示されている。
【0072】
「無制限」とは、コンテンツの期間や回数に関する制限が全くない権利タイプである。
なお、権利タイプの名称は上記に限定されるものではない。また、権利管理テーブル25において管理対象となる権利タイプは、この他にも種類があってもよい。
保存領域20の説明に戻って補足すると、保存領域20は、電力が保存領域20に供給されなくとも記憶内容を保持することができる記憶媒体、例えば不揮発性メモリやHDDにより実現するとよい。
【0073】
なお、上述のように、不正アクセスからの保護機構を備えた保存領域20は、データの暗号化および復号化処理、また、正当なユーザからのアクセスであるかを確認する処理が必要となるため、高速アクセスを行うことは困難である。
1.2.3 時変鍵記憶部30
時変鍵記憶部30は、不正アクセスを防止する機構を備える記憶領域、例えばセキュアメモリであり、時変鍵31を記憶する。
【0074】
上述のように、時変鍵31は、権利管理テーブル25を暗号化するための暗号鍵である。時変鍵記憶部30は、図示しないセキュアカウンタがカウントしたカウント値に基づいて時変鍵31を生成する。前記セキュアカウンタは、所定タイミングでカウントアップする。例えば、コンテンツの所定数のフレームが復号されるごとにカウントアップする。前記セキュアカウンタのカウント値が変化するごとに、時変鍵31が生成され、生成の都度、時変鍵記憶部30は、記憶している時変鍵31を更新する。なお、保存領域20に記憶されている権利管理テーブル25は、時変鍵31が生成される都度、更新前の時変鍵31で復号され、更新後の時変鍵31で暗号化されることとする。すなわち、最新の時変鍵31で再暗号化されていることとする。
【0075】
1.2.4 セキュアクロック40
セキュアクロック40は、時刻を計時し、時刻情報取得部55の要求に応じて、計時している時刻を時刻情報として出力する。セキュアクロック40は、不正アクセスを防止する機構を有し、不正者が不正に書き換えることが困難である。
なお、セキュアクロック40は、時刻を、日付および時間単位で計時する。すなわち何月何日の何時何分何秒、さらに、秒よりも細かい時間単位、例えば1/30単位で時刻を計時することとする。ただし、これに限るものではなく、例えば日付については別に記憶しておき、セキュアクロック40では計時しないこととしてもよい。
【0076】
1.2.5 コンテンツ管理部10の詳細
ここで、コンテンツ管理部10の詳細を説明する。
図1に示すように、コンテンツ管理部10は、再生要求受付部11と、コンテンツ判定部12と、コンテンツ取り出し部13と、復号要求送信部14と、権利判定復号部15と、再生部16と、ユーザ通知部17とを含む。
【0077】
なお、コンテンツ管理部10は、コンテンツの権利を管理しながら再生を行うため、改ざん等の不正アクセスから保護されていることが望ましい。そのため、コンテンツ管理部10の一部または全部を耐タンパー技術により実装することが望ましい。なお、耐タンパー技術としては、例えば国際公開パンフレットWO 2004/013744 A2に記載されている技術を用いるとよい。
【0078】
1.2.6 再生要求受付部11
再生要求受付部11は、再生するコンテンツをユーザが指定する操作を受け付ける。例えば、コンテンツ管理部10が、図示しない表示部にコンテンツのリストを表示し、ユーザが特定のコンテンツを選択する操作を、図示しない操作部に対して行うことで、再生要求受付部11は、ユーザによるコンテンツの指定を受け付ける。
【0079】
1.2.7 コンテンツ判定部12
コンテンツ判定部12は、ユーザが指定したコンテンツを、コンテンツIDおよび規格情報によって特定する。特定した規格情報およびコンテンツIDをコンテンツ取り出し部13へ出力する。なお、規格情報は、主に、権利判定復号部15を特定するために用いられ、コンテンツIDは、主に、保存領域20からコンテンツを読み出したり、コンテンツにかかる権利の制限内容(権利タイプ25c)を特定するために用いられる。
【0080】
なお、規格情報とは、コンテンツのコーデックを示す情報である。コンテンツが音楽の場合はAAC、動画の場合はMPEG2(Motion Picture Expert Group 2)、静止画の場合はJPEG(Joint Photographic Expert Group)などがコーデックとして挙げられる。
1.2.8 コンテンツ取り出し部13
コンテンツ取り出し部13は、再生の対象となっているコンテンツを保存領域20から読み出す。
【0081】
具体的には、コンテンツ取り出し部13は、図3(b)に示すコンテンツ管理テーブル22を記憶している。図3(b)に示すように、コンテンツ管理テーブル22の1件のレコードは、コンテンツID22aとファイル名22bとからなる。コンテンツID22aは、コンテンツを識別する識別子を示す。ファイル名22bは、保存領域20のディレクトリ構造のどこにコンテンツが記憶されているかを示す。なお、ディレクトリにおける位置と、保存領域20におけるアドレスとの対応は、電子機器1のOS(Operating System)が管理していることとする。
【0082】
コンテンツ取り出し部13は、コンテンツ判定部12から規格情報およびコンテンツIDを受け付ける。コンテンツ取り出し部13は、コンテンツ管理テーブル22に基づいて、コンテンツIDにより識別されるコンテンツが保存領域20のどこに記憶されているかを特定してコンテンツを読み出す。
コンテンツ取り出し部13は、コンテンツ判定部12から受け付けたコンテンツIDおよび規格情報、そして、読み出したコンテンツを、復号要求送信部14へ出力する。
【0083】
なお、コンテンツを読み出す単位について補足すると、コンテンツ全体を一度に読み出すこととしてもよいし、50キロバイトなど所定のデータサイズごとに保存領域20から読み出すこととしてもよい。
1.2.9 復号要求送信部14
復号要求送信部14は、1以上の権利判定復号部15の中から、コンテンツの復号に用いる権利判定復号部15を特定する。特定した権利判定復号部15に、コンテンツをフレーム単位で出力する。なお、権利判定復号部15は、コンテンツの規格情報に対応して1つずつ用意されている。
【0084】
具体的には、復号要求送信部14は、コンテンツ取り出し部13からコンテンツと、コンテンツIDと、規格情報とを受け付ける。規格情報に基づいて、規格情報に対応する権利判定復号部15を特定する。そして、復号要求送信部14は、コンテンツのフレームを解析して、所定数のフレームごと、例えば1フレームごとに、コンテンツの復号を要求するコンテンツ復号要求を、特定した権利判定復号部15に出力する。
【0085】
図3(c)は、コンテンツ復号要求23を示す図である。図3(c)に示すように、コンテンツ復号要求23には、フラグ23aと、コンテンツID23bと、フレーム23cとが含まれる。フラグ23aは、コンテンツIDに示されるコンテンツの復号要求の出力が初めてであるか否かを示す。コンテンツID23bは、コンテンツ復号要求にかかるコンテンツを識別する識別子を示す。フレーム23cは、復号の対象となる所定数のフレームである。
【0086】
復号要求送信部14は、コンテンツの再生を開始して、そのコンテンツにかかるコンテンツ復号要求23を初めて権利判定復号部15に出力するときは、コンテンツ復号要求23のフラグ23aを有効にする。
なお、復号要求送信部14は、フレームの送信を止めることを示す停止要求を再生部16から受け付け、停止要求を受け付けると、権利判定復号部15へのコンテンツ復号要求23の出力を停止する。
【0087】
1.2.10 権利判定復号部15
権利判定復号部15は、コンテンツの権利判定を行い、判定結果に応じてコンテンツの再生を制御する。
具体的には、権利判定復号部15は、復号要求送信部14からコンテンツ復号要求23を受け付けて、権利管理テーブル25に基づいて権利判定を行う。判定の結果、コンテンツを利用する権利があれば、再生許可情報と、復号したフレームとを再生部16へ出力する。また、判定の結果、コンテンツを利用する権利がなければ、再生不許可情報を再生部16へ出力する。
【0088】
なお、権利判定復号部15は、受け付けたコンテンツ復号要求23のフラグ23aが有効であれば、保持しているデータを初期化する。例えば、後述する権利一時記憶部59に記憶されているデータや、コンテンツ復号部61において保持されているコンテンツ鍵を初期化により消去する。これは、権利判定復号部15は前回のコンテンツ再生時に使用した鍵情報等を保持しており、それらの情報が不正にアクセスされないようにするためである。なお、権利判定復号部15の詳細は後述する。また、権利判定復号部15は、権利の判定やコンテンツの復号を行うため、コンテンツ管理部10の中でも、特に、耐タンパー技術を用いて実装されていることが望ましい。
【0089】
なお、フラグ23aが有効である場合、権利判定復号部15は、上述のように、保持しているデータの一部を消去するとして説明したが、コンテンツの再生処理を行うためにメモリの確保を行うこととしてもよい。
1.2.11 再生部16
再生部16は、権利判定復号部15の処理結果に応じて、コンテンツの再生を制御する。
【0090】
具体的には、再生部16は、権利判定復号部15から復号済みのフレームおよび再生許可情報を受け付けたときは、フレームのデコードを行い、図示しない出力手段に、デコード済みのデータを出力する。
また、権利判定復号部15から再生不許可情報を受け付けたときは、ユーザ通知部17に、再生権利の無い旨の、ユーザへの通知を要求する。そして、フレームの送信を止めることを示す停止要求を復号要求送信部14へ出力する。
【0091】
1.2.12 ユーザ通知部17
ユーザ通知部17は、ユーザに対するメッセージを、図示しない表示部に表示する、またはスピーカを用いて音声出力する等の方法で通知する。
特に、ユーザ通知部17は、コンテンツの利用にかかる権利の有無についてユーザに対してメッセージを通知する。なお、具体的な通知方法としては、ダイアログを表示したりビープ音を発生させたりすることが考えられるが、その他、画像や音声を用いて、周知または慣用されている通知方法を用いてもよい。
【0092】
また、このとき、電子機器1が音楽配信などに対応している場合は、ユーザに対してコンテンツの利用にかかる権利の購入を促す旨のメッセージを通知することとしてもよい。例えば、権利がないと判定された場合はもちろん、権利がある場合であっても、権利が切れかけていれば(例えば、再生期限が近づいている場合)、上述の購入を促すメッセージを通知するとよい。
【0093】
1.3 権利判定復号部15の詳細
ここで、権利判定復号部15の詳細を説明する。
図2は、権利判定復号部15の機能ブロック図である。
図2に示すように、権利判定復号部15は、復号要求受信部51と、制御手順決定部52と、鍵取得部53と、権利管理テーブルアクセス部54と、時刻情報取得部55と、再生状態記憶部56と、復号制御部57と、権利判定部58と、権利一時記憶部59と、開始時刻記憶部60と、コンテンツ復号部61とを含む。
【0094】
1.3.1 復号要求受信部51
復号要求受信部51は、復号要求送信部14からコンテンツ復号要求23を受け付ける。コンテンツ復号要求23に含まれるコンテンツのフレームをコンテンツ復号部61へ出力する。また、コンテンツIDを、制御手順決定部52へ出力する。
1.3.2 制御手順決定部52
制御手順決定部52は、コンテンツの再生を開始したときに、コンテンツの権利判定および復号の手順を示す制御手順を決定する。
【0095】
なお、制御手順は、予め権利タイプごとに所定のメモリ等の記憶部に記憶されていることとする。制御手順決定部52は、復号要求受信部51からコンテンツIDを受け付け、また、権利管理テーブル25を取得して、コンテンツIDと権利管理テーブル25とから、コンテンツの権利タイプを取得する。取得した権利タイプに対応している制御手順を記憶部から読み出して復号制御部57へ出力する。
【0096】
なお、制御手順決定部52の動作の詳細は後述する。
1.3.3 鍵取得部53
鍵取得部53は、制御手順決定部52および復号制御部57の制御に応じて、権利管理テーブル25を復号するための時変鍵31を時変鍵記憶部30から取得する。
1.3.4 権利管理テーブルアクセス部54
権利管理テーブルアクセス部54は、保存領域20の権利管理テーブル25にアクセスする。具体的には、制御手順決定部52および復号制御部57の制御に応じて保存領域20から権利管理テーブル25を読み出す等の処理を行う。
【0097】
1.3.5 時刻情報取得部55
時刻情報取得部55は、復号制御部57の制御に応じてセキュアクロック40から時刻情報を取得する。
1.3.6 再生状態記憶部56
再生状態記憶部56は、あるコンテンツについて、再生が開始された時点から何フレームが再生されているかを示す再生状態情報を記憶する。再生状態情報は、例えば、図3(d)に示すように、再生されたフレームの数を示す。なお、再生状態情報の初期値は0とする。また、復号要求受信部51が受信したコンテンツ復号要求23のフラグ23aが有効であれば、再生状態情報の値が初期値の0になることとする。
【0098】
また、再生状態記憶部56は、電子機器1が再生しているコンテンツのコンテンツID、制御手順決定部52により決定された制御手順、さらに、コンテンツの再生が許可されているか否かを示す再生許可フラグを記憶する。
1.3.7 復号制御部57
復号制御部57は、制御手順決定部52から制御手順を受け付ける。そして、制御手順に従って、再生状態情報に示される数、すなわち再生されたフレームの数に応じて、権利判定部58による権利の判定や、判定結果に応じて復号の可否を制御する処理や、権利管理テーブル25の更新などを行う。
【0099】
具体的には、復号制御部57は、本実施形態では、図5(a)に示すように、権利判定部58等を用いて4パターンの処理を行う。これら各パターンの処理の手順は、制御手順決定部52が決定した制御手順に示されている。
図5(a)を補足すると、図示するように、パターンPは、権利の確認および権利の更新を行うが、ここでいう権利の確認とは、権利判定部58による処理のことをいう。また、権利の更新とは、権利判定部58が、後述する権利一時記憶部59に記憶されているエントリ情報を更新することをいう。
【0100】
また、パターンQは、権利の確認と、権利の更新と、権利の書き出しとを行うが、ここでいう権利の書き出しとは、保存領域20に記憶されている権利管理テーブル25を読み出して、権利一時記憶部59に記憶されているエントリ情報の更新内容を権利管理テーブル25に反映させた上で、更新された権利管理テーブル25を保存領域20に書き出すことをいう。
【0101】
また、パターンRは、図示するように、権利の確認を行う。つまり、権利一時記憶部59に記憶されているエントリ情報の更新は行わない。
パターンSは、権利の確認等を行わないで、フレームの復号を行う。なお、パターンP、Q、Rにおいても、権利の確認の結果、コンテンツの利用にかかる権利が有効であれば、フレームの復号を行うことは言うまでもない。
【0102】
そして、本実施形態では、図5(b)に示すように、再生されるフレームのそれぞれを、再生開始からN番目(Nは自然数)に再生されるフレームとして区別すると、復号制御部57は、Nの値それぞれについて、上記4パターンのいずれかを対応づけてあらかじめ処理手順として記憶しておき、処理手順に定められた内容に従って各パターンの処理を行う。例えば、同図の例では、取得した再生状態情報に「2」と示されていれば、すでに2フレーム分の再生が行われたことになるので、復号制御部57は、3フレーム目の処理内容であるパターンQの処理を行う。
【0103】
なお、Nの値それぞれについて、上記4パターンのいずれかを対応づけるのではなく、図5(b)のように、Nの値が所定の数式を満たすフレームに関しては所定のパターンの処理を行うこととしてもよい。例えば、奇数番目のフレーム(すなわち、N=2n+1、ただしnは0以上の整数)はパターンPの処理を行い、偶数番目のフレーム(すなわち、N=2n、ただしnは1以上の整数)はパターンQの処理を行う、としてもよい。
【0104】
なお、復号制御部57の動作の詳細は後述する。
1.3.8 権利判定部58
権利判定部58は、復号制御部57から受け付けた情報に基づいて、コンテンツの利用にかかる権利が有効であるか判定し、判定結果を復号制御部57へ出力する。権利判定部58は、再生にかかるコンテンツのエントリ情報を権利一時記憶部59に記憶させて前記判定を行っており、復号制御部57の制御に従って、権利一時記憶部59に記憶させているエントリ情報の更新およびエントリ情報の出力を行う。
【0105】
なお、権利判定部58の動作の詳細は後述する。
1.3.9 権利一時記憶部59
権利一時記憶部59は、保存領域20よりも高速アクセス可能な記憶媒体である。例えば揮発性のメモリである。
権利一時記憶部59は、権利の判定に用いるためのエントリ情報を記憶する。なお、保存領域20よりも高速アクセス可能とするため、権利一時記憶部59に記憶するエントリ情報は、特に暗号化されていないこととする。そのため、権利一時記憶部59に記憶されているエントリ情報は、保存領域20から逐一権利管理テーブル25を読み出して更新する場合と比べて、コンテンツの再生にあわせて高速で更新することが可能である。その結果、例えば、コンテンツを再生した再生合計時間25fが再生権利時間25gに示される時間に達したときに直ちにコンテンツの再生を停止させること等の処理が可能である。
【0106】
ただし、高速アクセスを可能とするために暗号化等を行わないため、権利一時記憶部59は、保存領域20等と比べてセキュリティの強度は落ちる。また、権利一時記憶部59は、上述のように高速アクセスを可能とするために例えば揮発性のメモリで構成されており、電力が供給されなくなると記憶内容が消失してしまう。すなわち、権利一時記憶部59においてエントリ情報を更新していても、その更新内容が消失してしまう。そうすると、権利一時記憶部59に記憶されているエントリ情報のみを用いて権利の判定を行うと、悪意のある不正者が電力の供給を停止させることにより、消費したはずの権利が消費されないこととなる。そのため、本実施形態では、何らかのタイミングで復号制御部57が上述のパターンQの処理を行うことで、権利一時記憶部59に記憶されているエントリ情報の更新内容を、保存領域20の権利管理テーブル25に反映させる。
【0107】
なお、上述のように、権利一時記憶部59は、高速アクセスを可能とするために揮発性のメモリであるとしているが、コンテンツの再生に支障をきたさないのであれば、権利一時記憶部59を不揮発性のメモリで実現してもよいし、権利一時記憶部59に記憶させるエントリ情報を暗号化してもよい。
1.3.10 開始時刻記憶部60
開始時刻記憶部60は、権利判定部58による判定の際に用いられる時刻情報を記憶する。この時刻情報は、時刻情報取得部55により取得される。
【0108】
1.3.11 コンテンツ復号部61
コンテンツ復号部61は、復号制御部57の制御に従って、コンテンツにかかるフレームの復号を行う。
具体的には、コンテンツ復号部61は、復号要求受信部51からフレームを受け付ける。また、復号制御部57から、再生許可情報又は再生不許可情報を受け付ける。また、復号制御部57からコンテンツ鍵を受け付ける。コンテンツ復号部61は、受け付けたコンテンツ鍵を保持しておく。コンテンツ復号部61は、復号制御部57から再生許可情報を受け付けたときは、受け付けたコンテンツ鍵を用いてフレームを復号する。復号したフレームと再生許可情報とを再生部16へ出力する。また、コンテンツ復号部61は、復号制御部57から再生不許可情報を受け付けたときは、フレームを復号せず、再生不許可情報を再生部16へ出力する。この場合、コンテンツ復号部61は、コンテンツ鍵の盗難を防ぐため保持しているコンテンツ鍵を消去することとしてもよい。また、コンテンツ鍵の消去は、ユーザがコンテンツの再生を終了する操作を行ったときに行われることとしてもよい。
【0109】
1.4 動作
以下、電子機器1の各機能ブロックの動作の詳細を説明する。以下の説明では、コンテンツの権利タイプが「時間制限」である場合について説明する。
1.4.1 制御手順決定部52の動作の詳細
制御手順決定部52は、復号制御部57の動作の手順を示す制御手順を決定する。また、制御手順決定部52は、コンテンツの再生が開始直後であるか、再生途中であるかに応じて異なる処理を行う。
【0110】
図7は、制御手順決定部52の動作の詳細を示すフローチャートである。以下、図7を参照しながら具体的に説明すると、制御手順決定部52は、復号要求受信部51からコンテンツIDを受け付ける(S101)。コンテンツIDを受け付けると、再生状態記憶部56から再生状態情報を取得する(S102)。
制御手順決定部52は、再生状態情報が初期値を示しているか判断する(S103)。
【0111】
1.4.1.1 再生状態情報が初期値の場合の動作
以下、初期値を示している場合、すなわちコンテンツの再生開始の直後における制御手順決定部52の動作を説明すると(S103:YES)、制御手順決定部52は、鍵取得部53により時変鍵31を取得し、また、権利管理テーブルアクセス部54により権利管理テーブル25を取得する(S104)。
【0112】
制御手順決定部52は、取得した時変鍵31を用いて、権利管理テーブル25を復号する。ステップS101において受け付けたコンテンツIDをキーとして、復号した権利管理テーブル25から、再生しようとしているコンテンツの権利タイプ25cに示される権利タイプを取得する(S105)。そして、取得した権利タイプに対応して予め定められた権利判定と復号の制御手順を記憶部から読み出すことにより、制御手順を決定する(S106)。実施の形態1では、制御手順決定部52は、権利タイプ「時間制限」に対応した制御手順を読み出す。
【0113】
制御手順決定部52は、制御手順を決定すると、復号した権利管理テーブル25を復号制御部57へ出力する(S107)。また、決定した制御手順、取得した再生状態情報、受け付けたコンテンツIDを、復号制御部57へ出力する(S108)。そして、再生状態情報に示される値を1つインクリメントし、インクリメント済みの再生状態情報と、コンテンツIDと、制御手順とを再生状態記憶部56に記憶させる(S109)。
【0114】
1.4.1.2 再生状態情報が初期値ではない場合の動作
また、ステップS103において、再生状態情報が初期値ではない場合、すなわちコンテンツの再生途中における制御手順決定部52の動作を説明すると(S103:NO)、制御手順決定部52は、再生状態記憶部56で記憶している再生状態情報と、制御手順と、コンテンツIDとを読み出して復号制御部57へ出力する(S110)。そして、読み出した再生状態情報に示される値を1つインクリメントし、インクリメント済みの再生状態情報を、再生状態記憶部56に記憶させる(S111)。
【0115】
1.4.2 復号制御部57の動作の詳細
次に、復号制御部57の動作の詳細を説明する。
復号制御部57は、再生するフレームを再生開始からN番目のフレームとすると、Nの値に応じて権利の判定および復号を制御する。また、復号制御部57は、コンテンツの再生が開始直後であるか、再生途中であるかに応じて処理を行う。復号制御部57が行う処理の内容は、制御手順決定部52が決定した制御手順に示されている。
【0116】
図8は、復号制御部57の動作の詳細を示すフローチャートである。以下、図8を参照しながら具体的に説明すると、復号制御部57は、まず、制御手順決定部52から権利管理テーブル25を受け付ける(S201)。また、制御手順決定部52から、コンテンツIDと、制御手順と、再生状態情報とを受け付ける(S202)。
復号制御部57は、受け付けた再生状態情報が初期値を示しているか判断する(S203)。
【0117】
1.4.2.1 再生状態情報が初期値の場合の動作
以下、初期値を示している場合、すなわちコンテンツの再生開始の直後における復号制御部57の動作を説明すると(S203:YES)、復号制御部57は、時刻情報取得部55によりセキュアクロック40から時刻情報を取得する(S204)。また、受け付けたコンテンツIDに対応するエントリ情報を、ステップS201において受け付けた権利管理テーブル25から抽出し、抽出したエントリ情報と、ステップS204において取得した時刻情報と、ステップS202において受け付けた再生状態情報とを権利判定部58へ出力する(S205)。
【0118】
権利判定部58が権利の判定を行うと、復号制御部57は、その判定結果を権利判定部58から受け付ける(S206)。そして、判定の結果、権利が有効であるか判断し(S207)、有効であれば(S207:YES)、エントリ情報のコンテンツ鍵25bに示されるコンテンツ鍵と、コンテンツ復号部61の動作を制御するための再生許可情報とをコンテンツ復号部61へ出力する(S208)。
【0119】
なお、ステップS207において、権利判定部58の判定結果が否定的なもの、つまり権利が無効であれば(S207:NO)、復号制御部57は、コンテンツ復号部61の動作を制御するための再生不許可情報をコンテンツ復号部61へ出力する(S209)。また、再生状態記憶部56に記憶されている再生許可フラグを、再生が許可されていないことを示す値に設定する(S210)。その後、ステップS202の処理に戻る。
【0120】
1.4.2.2 再生状態情報が初期値ではない場合の動作
ここで、ステップS203において、再生状態情報が初期値ではない場合、すなわちコンテンツの再生途中である場合の動作を説明すると、復号制御部57は、再生状態情報に示される値に基づいて、復号要求受信部51が受信した復号要求にかかるフレームについての権利の判定および復号の処理のパターン(パターンの概要は、図5参照)を決定し、決定したパターンに応じた処理を行う(S211)。その後、ステップS202の処理に戻る。なお、各パターンの処理の詳細については後述する。
【0121】
ここで、復号制御部57が処理のパターンを決定する方法について説明すると、例えば、図5の例で説明すると、再生状態情報に「2」と示されていれば、既に2フレーム分の復号処理が行われており、次に再生する対象となるフレームは3フレーム目である。そこで、図5(b)に示すように、復号制御部57は、パターンQにより権利の判定および復号を行うと決定する。
【0122】
1.4.2.3 パターンQの場合の動作
ここで、ステップS211において、復号制御部57が再生状態情報に示される値を参照してパターンQの動作を行う場合、つまり権利判定部58において権利の確認と、権利一時記憶部59に記憶されているエントリ情報の更新とを行わせ、権利一時記憶部59に記憶されている、更新されたエントリ情報の更新内容を保存領域20の権利管理テーブル25に反映させる処理について説明する。
【0123】
図9は、ステップS211において復号制御部57がパターンQの動作を行う場合のフローチャートである。
復号制御部57は、時刻情報取得部55により時刻情報を取得する(S301)。そして、取得した時刻情報と、制御手順決定部52から受け付けた再生状態情報とを権利判定部58へ出力する(S302)。また、権利一時記憶部59の記憶内容を権利判定部58に更新させる指示である更新指示を権利判定部58へ出力する(S303)。また、権利一時記憶部59の記憶内容を復号制御部57に出力させる指示であるエントリ情報出力指示を権利判定部58へ出力する(S304)。
【0124】
権利判定部58が判定を行った後、その判定結果を復号制御部57は受け付ける(S305)。そして、権利判定部58において権利が有効だと判断された場合(S306:YES)、復号制御部57は、再生状態記憶部56の再生許可フラグを、再生が許可されていることを示す値に設定し、また、再生許可情報をコンテンツ復号部61へ出力する(S307)。
【0125】
また、復号制御部57は、上述のエントリ情報出力指示により権利判定部58から出力されたエントリ情報を受け付ける。そして、鍵取得部53により時変鍵31を取得する。また、権利管理テーブルアクセス部54により権利管理テーブル25を取得する(S308)。復号制御部57は、時変鍵31を用いて権利管理テーブル25を復号する。復号化された権利管理テーブル25のうち、コンテンツID(ステップS202において制御手順決定部52より取得)により特定されるエントリ情報を、権利判定部58から出力されたエントリ情報により上書きする(S309)。
【0126】
復号制御部57は、上書きがなされた権利管理テーブル25を、時変鍵31を用いて暗号化し、権利管理テーブルアクセス部54により保存領域20に記憶させる(S310)。
また、ステップS306において、権利判定部58が権利は無効だと判断した場合(ステップS306:NO)、復号制御部57は、再生状態記憶部56の再生許可フラグを、再生が許可されていないことを示す値に設定し、また、再生不許可情報をコンテンツ復号部61へ出力する(S311)。その後、上述のステップS308〜S310の処理を行う。
【0127】
1.4.2.4 他のパターンの場合の動作
ここで、他のパターンの場合の動作を説明する。
(パターンP)
パターンPは、図5に示すように、権利判定部58において権利の確認と、権利一時記憶部59に記憶されているエントリ情報との更新を行わせる。パターンQのように、エントリ情報の更新内容を保存領域20の権利管理テーブル25に反映させる処理は行わない。図9のフローチャートで説明すると、パターンPにおいては、図9のうち、ステップS304と、ステップS308と、ステップS309と、ステップS310の処理を省いた動作を行う。
【0128】
(パターンR)
パターンRは、図5に示すように、権利判定部58において権利の確認を行わせる。図9のフローチャートで説明すると、パターンRにおいては、図9のうち、ステップS303と、ステップS304と、ステップS308と、ステップS309と、ステップS310の処理を省いた動作を行う。
【0129】
(パターンS)
パターンSは、図5に示すように、権利の確認を行わず、フレームの復号のみを行う。図9のフローチャートで説明すると、パターンSにおいては、図9のうち、ステップS307の処理を行う。
1.4.3 権利判定部58の動作の詳細
次に、権利判定部58の動作の詳細を説明する。
【0130】
権利判定部58は、権利の判定を行う。また、復号制御部57からの更新指示およびエントリ情報出力指示に従って、権利一時記憶部59の記憶内容の更新や出力を行う。また、権利判定部58は、コンテンツの再生が開始直後であるか、再生途中であるかに応じて処理を行う。
図10は、権利判定部58の動作の詳細を示すフローチャートである。以下、図10を参照しながら具体的に説明すると、権利判定部58は、まず、ステップS205において復号制御部57から出力されたエントリ情報を受け付ける(S401)。また、ステップS205またはステップS302において復号制御部57から出力された時刻情報と再生状態情報を受け付ける(S402)。
【0131】
権利判定部58は、受け付けた再生状態情報が初期値を示しているか判断する(S403)。
1.4.3.1 再生状態情報が初期値の場合の動作
以下、初期値を示している場合、すなわちコンテンツの再生開始の直後における権利判定部58の動作を説明すると(S403:YES)、権利判定部58は、ステップS401において取得したエントリ情報のうち、再生合計時間25fと再生権利時間25gとを参照し、再生合計時間25fに示される時間(以下、「再生合計時間」)が再生権利時間25gに示される時間(以下、「再生権利時間」)より小さいか、すなわち
再生合計時間 < 再生権利時間
であるか判断する(S404)。
【0132】
ステップS404において、再生合計時間が再生権利時間以上の場合は(S404:NO)、既に再生合計時間が再生権利時間を上回っているので、コンテンツを利用する権利が消費されている。この場合、権利判定部58は、権利が無効であることを示す判定結果を復号制御部57へ出力する(S408)。その後、ステップS401の処理に戻る。
また、ステップS404において、再生合計時間が再生権利時間よりも小さい場合、すなわちまだ権利が消費され尽くしていない場合は(S404:YES)、権利判定部58は、ステップS402において取得した時刻情報を、開始時刻記憶部60に記憶させる(S405)。また、エントリ情報を、権利一時記憶部59に記憶させる(S406)。以降、権利判定部58は、権利一時記憶部59に記憶されているエントリ情報を用いて権利が有効であるか判定する。そして、権利判定部58は、権利が有効であることを示す判定結果を復号制御部57へ出力する(S407)。その後、ステップS402の処理に戻る。
【0133】
1.4.3.2 再生状態情報が初期値ではない場合の動作
次に、ステップS403において、再生状態情報が初期値ではない場合、すなわちコンテンツの再生途中における権利判定部58の動作を説明する(S403:NO)。
図11は、コンテンツの再生途中における権利判定部58の動作を示すフローチャートである。コンテンツの再生途中であるので、開始時刻記憶部60には以前に判定されたときの時刻情報が記憶されている。なお、権利判定部58は、復号制御部57からの更新指示およびエントリ情報出力指示に応じた動作を行う。
【0134】
権利判定部58は、ステップS402において取得した時刻情報に示される時刻から、開始時刻記憶部60に記憶されている時刻情報に示される時刻を引くことにより、経過時間を算出する(S409)。経過時間とは、以前に権利一時記憶部59の記憶内容を更新した時から経過した時間である。経過時間を算出すると、権利判定部58は、権利一時記憶部59に記憶されているエントリ情報から再生合計時間と再生権利時間を取得し、再生合計時間と、算出した経過時間との和を算出し(S410)、算出した和が、再生権利時間よりも小さいか判定する(S411)。すなわち、権利判定部58は、
再生合計時間 + 経過時間 < 再生権利時間
であるか判定する。
【0135】
ステップS411において、和が再生権利時間よりも小さければ、まだ権利を消費し尽くしていない。そこで、権利判定部58は、権利が有効であることを示す判定結果を復号制御部57へ出力する(S412)。また、ステップS411において、和が再生権利時間以上になっていれば、既に権利を消費してしまっている。そこで、権利判定部58は、権利が無効であることを示す判定結果を復号制御部57へ出力する(S413)。
【0136】
1.4.3.3 復号制御部57からの指示に応じた動作
上記判定の後、権利判定部58は、復号制御部57からの更新指示およびエントリ情報出力指示に応じた動作を行う。
権利判定部58は、復号制御部57から更新指示が出力されているか判断する(S414)。
【0137】
更新指示が出力されていれば(S414:YES)、権利一時記憶部59の記憶内容を更新する必要がある。このとき、権利判定部58は、上述のステップS410で算出した和(再生合計時間+経過時間)を、権利一時記憶部59に記憶されているエントリ情報の、再生合計時間25fに上書きする(S415)。そして、ステップS402において取得した時刻情報を、開始時刻記憶部60に記憶させる(S416)。更新指示が出力されていなければ(S414:NO)、上述のステップS415およびステップS416の処理を行わない。
【0138】
続いて、権利判定部58は、復号制御部57からエントリ情報出力指示が出力されているか判断する(S417)。
エントリ情報出力指示が出力されていれば(S417:YES)、復号制御部57は、権利一時記憶部59に記憶されているエントリ情報を読み出して復号制御部57へ出力する(S418)。なお、エントリ情報出力指示が出力されていなければ、上述のステップS418の処理は行わない。
【0139】
その後、権利判定部58は、ステップS402の処理に戻る。
1.4.4 各機能ブロックの動作の概略
ここで、権利判定復号部15の動作の概略を、図12に示す。
図12に示すように、復号要求受信部51は、復号要求送信部14からコンテンツ復号要求23を受け付ける(S501)。
【0140】
復号要求受信部51は、コンテンツ復号要求23に含まれるフレームをコンテンツ復号部61へ出力し、コンテンツIDを制御手順決定部52へ出力する。
制御手順決定部52は、図示するように、図7で説明したステップS102等の処理を行う。なお、再生状態情報が初期値ではない場合は、制御手順決定部52は、ステップS104、ステップS106の処理は行わない。制御手順決定部52は、コンテンツIDと、決定した制御手順と、復号した権利管理テーブル25と、再生状態情報を復号制御部57へ出力する。なお、再生状態情報が初期値ではない場合は、制御手順決定部52は、復号した権利管理テーブル25の出力を行わない。そして、再生状態情報に示される値を1つインクリメントして再生状態記憶部56に記憶させる(図7のステップS109またはステップS111)。
【0141】
復号制御部57は、再生状態情報の値に応じて各パターンの処理を行う。復号制御部57は、時刻情報を取得し(図8のステップS204または図9のステップS301)、エントリ情報と、再生状態情報と、時刻情報とを権利判定部58へ出力する。また、更新指示およびエントリ情報出力指示の出力も、処理のパターンに応じて出力する。なお、再生状態情報が初期値ではない場合は、復号制御部57は、エントリ情報の出力を行わない。
【0142】
権利判定部58は、受け付けた情報に基づいて権利が有効であるか判定する(S505)。ステップS505の処理は、図10に示した通りである。そして、判定結果を復号制御部57へ出力する。また、必要に応じて権利一時記憶部59のエントリ情報を復号制御部57へ出力する。
復号制御部57は、権利判定部58からの判定結果に応じて、再生許可情報または再生不許可情報をコンテンツ復号部61へ出力する。また、復号制御部57は、パターンQの処理の場合には、保存領域20の権利管理テーブル25の上書きを行う(S507)。ステップS507の処理は、図9に示したステップS308からステップS310の処理と同一である。
【0143】
コンテンツ復号部61は、再生許可情報を受け付けた場合はフレームを復号する(S509)。再生不許可情報を受け付けた場合はフレームを復号しない。
1.4.5 権利判定復号部15の動作の概略
ここで、権利判定復号部15の動作の概略を説明する。
図13は、権利判定復号部15の動作の概略を示す図である。
【0144】
図13(a)は、コンテンツの再生を開始した直後、すなわち再生状態情報が初期値のときの権利判定復号部15の動作の概略を示す図である。このとき、権利判定復号部15は、権利管理テーブル25を保存領域20から取得し、時変鍵31を時変鍵記憶部30から取得し、時刻情報をセキュアクロック40から取得する。そして、権利判定部58により権利の判定を行い、また、取得した時刻情報を開始時刻記憶部60において記憶する(S511)。判定結果に応じてフレームを復号する(S509)。
【0145】
また、復号制御部57がパターンPの動作をするときの権利判定復号部15の動作の概略を図13(b)に示す。権利判定復号部15は、セキュアクロック40から時刻情報を取得し、権利判定部58において権利の判定、権利一時記憶部59に記憶されているエントリ情報の更新、開始時刻記憶部60に記憶されている時刻情報の更新を行う(S513)。判定結果に応じてフレームを復号する(S509)。
【0146】
また、復号制御部57がパターンQの動作をするときの権利判定復号部15の動作の概略を図13(c)に示す。パターンPの動作に加えて、権利一時記憶部59に記憶されているエントリ情報を、保存領域20に記憶されている権利管理テーブル25に反映させる処理が加わっている。
また、復号制御部57がパターンRの動作をするときの権利判定復号部15の動作の概略を図13(d)に示す。パターンRでは、権利判定復号部15は、権利の判定を行い、権利一時記憶部59に記憶されているエントリ情報の更新は行わない(S515)。
【0147】
また、復号制御部57がパターンSの動作をするときの権利判定復号部15の動作の概略を図13(e)に示す。パターンSでは、権利判定復号部15は、権利の判定を行わず、フレームの復号を行う。
1.4.6 電子機器1の動作
以上のように構成された電子機器1の動作について、説明する。
【0148】
図14は、電子機器1のコンテンツ管理部10がコンテンツを再生するときの動作を示すフローチャートである。
電子機器1は、再生要求受付部11により、再生するコンテンツの指定をユーザから受け付ける(S601)。
コンテンツ判定部12は、ユーザが指定したコンテンツの規格情報およびコンテンツIDを特定する(S602)。
【0149】
コンテンツ取り出し部13は、コンテンツ管理テーブル22を参照して、保存領域20におけるユーザ指定のコンテンツの記憶位置を特定し、コンテンツを保存領域20から取得する(S603)。
復号要求送信部14は、規格情報に基づいて、1以上の権利判定復号部15の中から、コンテンツの復号に用いる権利判定復号部15を特定する(S604)。復号要求送信部14は、1のフレームをコンテンツ復号要求23に含ませて、特定した権利判定復号部15へコンテンツ復号要求23を逐次出力する(S605)。なお、コンテンツ復号要求23に含ませるフレームの数は1以上でもよい。
【0150】
権利判定復号部15は、所定数のフレーム単位でコンテンツにかかる権利が有効であるかを権利判定部58により判定し(S606)、権利が有効であれば(S606:YES)、コンテンツ復号要求23に含まれるフレームを復号して再生部16へ出力する(S607)。再生部16は、復号されたフレームのデコードを行い、デコード済みのデータを出力することによりコンテンツを再生する(S608)。その後、ステップS605の処理に戻る。
【0151】
また、ステップS606において、権利が無効であれば(S606:NO)、再生部16は、コンテンツを再生せず(S609)、コンテンツ管理部10は、動作を終了する。
なお、権利判定復号部15の動作については詳しく説明したので、ここでは詳細な説明を省略する。
また、フローチャートには示していないが、ユーザがコンテンツの再生を終了する操作を行ったときは、電子機器1は、OSによりプロセスの割り込みを発生させて再生部16によるコンテンツの再生を停止する(S609と同様)。このとき、復号制御部57は、再生状態記憶部56に記憶されている再生許可フラグを、再生が許可されていないことを示す値に設定する。また、復号制御部57は、ユーザによるコンテンツの再生を終了する操作を受け付けたとき、パターンQの動作を行って、権利一時記憶部59に記憶されているエントリ情報を更新し、さらに、保存領域20の権利管理テーブル25に、エントリ情報の更新内容を反映させる処理を行うこととしてもよい。さらに、このとき、権利一時記憶部59に記憶されているエントリ情報を削除するとよい。また、このとき、上述の「1.3.11 コンテンツ復号部61」で説明したように、コンテンツ復号部61において保持されているコンテンツ鍵を消去することとしてもよい。
【0152】
2 実施の形態2
次に、実施の形態2について説明する。
実施の形態1では、権利タイプが「時間制限」の場合について説明してきたが、コンテンツの権利タイプが「時間制限」以外の場合、例えば「期間制限」や「回数制限」であっても、実施の形態1のようにフレーム単位で権利の判定や権利の更新を行うことができる。
【0153】
以下、実施の形態1との相違点を中心に説明する。
2.1 権利タイプが「期間制限」の場合
まず、権利タイプが「期間制限」であるコンテンツを再生する場合の、電子機器1bの動作について説明する。実施の形態1の電子機器1とは、権利判定復号部15の動作が異なる。特に、権利判定部58の動作が異なる。権利タイプが「期間制限」の場合、再生時の時刻が、権利管理テーブル25の再生期限25hに示される期限を越えているか否かが問題となり、権利管理テーブル25の更新は行われないからである。
【0154】
以下、具体的に実施の形態1との相違点を説明する。
2.1.1 制御手順決定部52
制御手順決定部52は、図7のステップS106において、権利タイプ「期間制限」に対応した制御手順を読み出す。
なお、制御手順決定部52は、コンテンツの再生途中では、ステップS110において、コンテンツIDを復号制御部57へ出力しないこととしてもよい。以下、この理由を説明する。実施の形態1では、権利一時記憶部59に記憶されているエントリ情報の更新内容を保存領域20の権利管理テーブル25に反映させるには、権利管理テーブル25のうち、上書きの対象となるエントリ情報を特定する必要があり、この際にコンテンツIDが必要となる(図9のステップS309の処理を参照)。しかし、権利タイプが「期間制限」の場合、権利管理テーブル25の更新が行われないので、コンテンツの再生途中においては、復号制御部57においてコンテンツIDを保持する必要がない(ただし、実施の形態1においても、復号制御部57は、権利一時記憶部59に記憶されているエントリ情報を権利判定部58から受け付けているので、受け付けたエントリ情報に示されるコンテンツID25aを参照することで、権利管理テーブル25のうち上書きの対象となるエントリ情報を特定することはできる)。
【0155】
2.1.2 復号制御部57
復号制御部57は、実施の形態1において図8を用いて説明したのとほぼ同様の動作を行う。相違点は、図8のステップS211において、復号制御部57は、パターンR(権利の確認)またはパターンS(権利の確認なし)の処理を行い、パターンP、パターンQの処理を行わないことである。なお、復号制御部57は、パターンRのみを行うこととしてもよい。なお、パターンR、パターンSの場合の動作は、既に実施の形態1において説明したので、ここでは説明を省略する。
【0156】
2.1.3 権利判定部58
権利判定部58は、実施の形態1において図10を用いて説明した処理に近い動作を行う。
図15は、権利タイプが「再生期限」の場合における権利判定部58の動作を示すフローチャートである。
【0157】
処理の内容は、図示する通りであり、図10と同一の処理は、同一の参照符号を付して説明を省略する。図10との相違点は、図10のステップS404に代えて、図15では、権利判定部58は、ステップS421の処理を行う点である。また、権利判定部58は、図10におけるステップS405の処理は、権利タイプが「再生期限」の場合は行わない。時刻情報を保持する必要がないからである。ステップS421では、権利判定部58は、復号制御部57から取得した時刻情報と、復号制御部57から取得したエントリ情報の再生期限25hに示される再生期限とを比較して、時刻情報に示される時刻が、再生期限に示される期限を超えていないか判断する。なお、図4に示すように、再生期限は、通常、日付で管理するため、復号制御部57は、日付のみを時刻情報として取得することとしてもよい。
【0158】
続いて、ステップS403において再生状態が初期値ではない場合、つまりコンテンツの再生途中である場合の動作について説明する(S403:NO)。
図16は、権利タイプが「再生期限」の場合であって、コンテンツの再生途中における権利判定部58の動作を示すフローチャートである。
この場合の実施の形態1での動作は、図11を用いて説明した。図16の各処理と図11の各処理との相違点は、図16の処理においては、図11のステップS411に代えてステップS423の処理を行う点である。また、図11のステップS409、S410、S414〜S418の処理が、図16の処理では行われない点も相違点である。
【0159】
権利判定部58は、復号制御部57から取得した時刻情報と、権利一時記憶部59に記憶されているエントリ情報の再生期限25hに示される再生期限とを比較して、時刻情報に示される時刻が、再生期限に示される期限を超えていないか判断する(S423)。
なお、権利管理テーブル25の再生期限25hに示される期限まで時間がある場合は(例えば数日以上)、フレームの復号に併せて逐一権利の確認を行う必要はあまりない。そこで、再生期限まであまり時間が残っていない場合(例えば、再生期限に示される当日にコンテンツの再生を行う場合)に限り、上述のようにフレームの復号に併せて権利の確認を行うこととするとよい。
【0160】
例えば、図15のステップS421において、時刻情報に示される時刻が再生期限を越えない場合に、さらに、時刻情報に示される日付と、再生期限に示される日付とが一致するか否かを判断する。一致する場合は、以降のステップS406や図16のステップS423等の処理を逐次行い、一致しない場合は、ステップS407において、肯定的な判定結果とともに、権利判定をフレームの復号に併せて行う必要がないことを復号制御部57に通知するための所定の情報を出力する。
【0161】
そして、復号制御部57は、ステップS206において、判定結果とともに上述の所定の情報を受け付けると、パターンS(権利の確認なし)の処理の割合を増加させることとすればよい。
また、上述の例では、権利一時記憶部59にエントリ情報を記憶させた上で、権利の確認を行うこととしているが、権利の確認の頻度が大きくない場合もあるため、権利一時記憶部59にエントリ情報を記憶させず、権利確認のたびに保存領域20から権利管理テーブル25を読み出して権利判定部58による判定を行うこととしてもよい。この場合、権利一時記憶部59が不要となる。
【0162】
2.2 権利タイプが「再生回数」の場合
次に、権利タイプが「再生回数」であるコンテンツを再生する場合の、電子機器1cの動作について説明する。権利タイプが「時間制限」の場合と比べると、復号制御部57と権利判定部58の動作が特に異なる。なお、制御手順決定部52は、権利タイプ「再生回数」に対応した制御手順を決定して復号制御部57へ出力することとする。
【0163】
なお、本実施形態では、再生を開始した時にコンテンツの権利の確認(すなわち、コンテンツの再生回数が権利回数を超えているか否か)を行い、コンテンツの再生を開始した後、所定時間が経過してから、保存領域20の権利管理テーブル25を更新することとする。これは、ユーザが操作を誤ってコンテンツを再生した場合等、ユーザが意図しないにもかかわらずコンテンツの再生が行われた場合に、直ちに権利が消費されるのではなく、ある程度コンテンツの再生が行われてから権利が消費されるようにするためである。
【0164】
以下の動作例では、コンテンツの再生の開始時に権利判定部58において権利の確認を行い、権利一時記憶部59に、再生回数を増加させたエントリ情報を記憶させる。そして、コンテンツの再生途中においては、権利判定部58において、コンテンツの再生を開始してから所定時間が経過したか判定させる。所定時間が経過したと判定された場合、権利判定部58は、権利一時記憶部59に記憶されているエントリ情報を復号制御部57に出力し、復号制御部57は、権利判定部58から受け付けたエントリ情報を、保存領域20の権利管理テーブル25に書き出すこととする。
【0165】
2.2.1 復号制御部57
権利タイプが「再生回数」のコンテンツを再生する場合の、復号制御部57の動作について説明する。なお、再生状態情報が初期値の場合の動作は、実施の形態1で図8を用いて説明した処理と同等であるため説明を省略する。再生状態情報が初期値ではない場合の動作、つまり図8のステップS211の動作の詳細が実施の形態1とは異なる。
【0166】
図17は、再生状態情報が初期値ではない場合の、権利タイプ「再生回数」のコンテンツを再生する場合の復号制御部57の動作を示すフローチャートである。
なお、図9で説明した処理と同一の処理は、図9と同一の参照符号を付して説明を省略する。図9との相違点は、図9のステップS303、S304、S307、S311の処理が図17では行われない点と、図9のステップS306に代えて図17ではステップS331が行われる点である。また、図17では、ステップS333が行われる点も図9の各処理と異なる。
【0167】
ステップS331において、復号制御部57は、コンテンツの再生を開始してから所定時間が経過したか否かの判定結果を権利判定部58から受け付けて、判定結果において、所定時間が経過したと示されていれば、ステップS308、ステップS309、ステップS310の処理によって保存領域20の権利管理テーブル25を更新する。更新の後、復号制御部57は、以降の動作を、「権利の確認なし」、つまり実施の形態1でいうパターンSに設定する。これは、既に保存領域20の権利管理テーブル25が更新されているため、以降の処理では権利の確認を行う必要がないからである。
【0168】
2.2.2 権利判定部58
続いて、権利判定部58の動作について説明する。
図18は、権利タイプが「再生回数」のコンテンツを再生する場合の、権利判定部58の動作を示すフローチャートである。図18では、主に、再生状態情報が初期値の場合の動作を示している。再生状態情報が初期値ではない場合の動作は、図19を用いて後述する。なお、図10に示した各処理と同一の処理については、同一の参照符号を付して説明を省略する。
【0169】
図10で示した処理との相違点は、図18においては、図10のステップS404に代えてステップS431を行っている点と、図10のステップS406に代えてステップS433を行っている点である。
ステップS431において、権利判定部58は、復号制御部57から受け付けたエントリ情報の、再生回数25dに示されている値が、権利回数25eに示されている値より小さいか(再生回数<権利回数)判断する。小さいと判断した場合、ステップS405の処理を行った後、エントリ情報の再生回数25dに示されている値を1つインクリメントして権利一時記憶部59に記憶させる(S433)。
【0170】
次に、再生状態情報が初期値ではない場合の動作を説明する。
図19は、権利タイプが「再生回数」で、再生状態情報が初期値ではない場合の権利判定部58の動作を示すフローチャートである。なお、図11に示した各処理と同一の処理については、同一の参照符号を付して説明を省略する。
図11で示した処理との相違点は、図11のステップS410等の処理が行われず、図19ではステップS435、S437、S439が行われる点である。
【0171】
図19に示すように、権利判定部58は、ステップS409により経過時間を算出する。つまり、ステップS402において復号制御部57から受け付けた時刻情報に示される時刻から、ステップS405において開始時刻記憶部に記憶させた時刻情報に示される時刻を引いて経過時間を算出する。
そして、権利判定部58は、ステップS435において、経過時間が所定時間を超えたか否かを判断する。なお、所定時間を示す情報は、予め権利判定部58が保持していることとしてもよいし、ステップS401やS402において復号制御部57から通知されることとしてもよい。
【0172】
経過時間が所定時間を超えていれば(S435:YES)、所定時間が経過していることを示す判定結果を復号制御部57へ出力する(S437)。そして、S418の処理を行って権利一時記憶部59に記憶されているエントリ情報を復号制御部57へ出力する。
また、ステップS435において、経過時間が所定時間を超えていないと判断されると(S435:NO)、所定時間が経過していないことを示す判定結果を復号制御部57へ出力する(S439)。
【0173】
2.2.3 その他の更新方法
上述の例では、時刻を比較することにより所定時間が経過することとして説明したが、この他に、再生したフレーム数が所定数に達した場合に、保存領域20の権利管理テーブル25を更新することとしてもよい。
例えば、上述のように、権利判定部58は、再生状態情報が初期値を示している場合に、権利の確認と、権利一時記憶部59に、更新したエントリ情報を記憶させておく(S433)。そして、復号制御部57は、再生状態情報の値に応じて、再生状態情報の値が所定値に達するまでは、権利の確認を行わずフレームの復号を行い(すなわち、図5のパターンSの処理)、所定値に達した場合に、権利判定部58に一時記憶部59に記憶されているエントリ情報を出力させて、保存領域20の権利管理テーブル25に上書きすることとしてもよい。この場合は、時刻情報を用いないので、復号制御部57は、時刻情報取得部55により時刻情報を取得する必要がない。すなわち、復号制御部57は、図8のステップS204の処理を行う必要がない。このような場合の復号制御部57および権利判定部58の動作の例を、図20〜23に示す。
【0174】
図20は、復号制御部57の動作を示すフローチャートである。
図8と比較すると、図20においては、ステップS204の処理(時刻情報の取得)を行わず、図8のステップS205に代えてステップS205bを行う点が異なる。なお、ステップS205bでは、時刻情報を出力しない点がステップS205と異なる。
そして、コンテンツの再生途中において、再生状態情報の値が所定値に達して、復号制御部57が保存領域20の権利管理テーブル25を更新する場合の動作のフローチャートを、図21に示す。図17と比較すると、図21においては、ステップS301、S305、S331、S333の処理を行わず、ステップS302に代えてステップS302bを行い、また、ステップS304の処理を行う点が異なる。なお、ステップS302bでは、時刻情報を出力しない点がステップS302と異なる。
【0175】
このようにして保存領域20の権利管理テーブル25を更新した後は、復号制御部57は、権利の確認を行わずフレームの復号を行う処理を行えばよい。
図22は、権利判定部58の動作を示すフローチャートである。
図18と比較すると、図22においては、ステップS405の処理(時刻情報の記憶)を行わず、図18のステップS402に代えてステップS402bを行う点が異なる。なお、ステップS402bでは、時刻情報を受信しない点がステップS402と異なる。
【0176】
図23は、コンテンツの再生途中において、復号制御部57から再生状態情報を受信した場合の動作を示すフローチャートである。
図19と比較すると、図23においては、ステップS409、S435、S437、S439の処理を行わず、ステップS417の処理を行う点が異なる。
なお、各ステップの詳細な説明は既に行ったのでここでは省略する。
【0177】
2.3 補足
なお、上述の実施の形態1や2において、権利の判定の結果、コンテンツの利用ができない場合には、ユーザ通知部17は、コンテンツの再生ができない旨の通知を行うこととしてもよい。例えば、再生期限が切れている場合は、「再生期限を過ぎています」等のメッセージを表示部に表示するとよい。
【0178】
3 変形例
なお、上述の各実施例は、以下のように変形してもよい。
3.1 変形例1
上述の実施例では、権利管理テーブル25は、時変鍵31により暗号化されているものとして説明した。この他に、図24に示すように、権利管理テーブル25のそれぞれのエントリ情報を、異なる暗号鍵で暗号化しておき、コンテンツIDと対応づけて暗号鍵のリスト(暗号鍵リスト28)を記憶しておく。そして、この暗号鍵リスト28を暗号化するための鍵(リスト暗号化鍵33)を、セキュアカウンタのカウンタ値に基づいて生成することとしてもよい。なお、暗号鍵リスト28の暗号化は、例えばCBC(Cipher Block Chain)モードなどにより行う。なお、このセキュアカウンタのカウント値は、例えば、再生要求受付部11によりコンテンツの再生要求を受け付けた時や、保存領域20の権利管理テーブル25が更新された時などの所定のタイミングで、逐次、更新されることが望ましい。更新の前後において、暗号鍵リスト28を復号および暗号化して、暗号鍵リスト28は、更新後のセキュアカウンタのカウント値に基づいて生成されたリスト暗号鍵33により暗号化される。なお、リスト暗号化鍵33は、セキュアカウンタの値をそのまま用いたものか、所定ビットだけ抽出したものであるとしてもよい。
【0179】
ここで、暗号鍵リスト28やリスト暗号化鍵33は、例えば耐タンパモジュールの内部など、不正アクセスから保護された領域において記憶することが望ましい。時変鍵記憶部30において記憶することとしてもよい。権利管理テーブル25は、各エントリ情報が、それぞれ異なる暗号鍵で暗号化されている。そのため、権利管理テーブル25が不正に解析されたとしても、すべてのエントリ情報を復号するのは困難である。したがって、権利管理テーブル25を、耐タンパモジュールの外部の高速アクセス可能なメモリに記憶させておくこととしてもよい。
【0180】
また、このとき、リスト暗号化鍵33および暗号鍵リスト28は、不正アクセスから保護された環境で保持しておく必要がある。暗号鍵リスト28が不正に解析されて復号されてしまうと、すべてのエントリ情報の暗号鍵が不正者に取得されてしまうからである。
この場合、復号制御部57は、上述の時変鍵31に代えて、鍵取得部53により、暗号鍵リスト28とリスト暗号化鍵33とを取得する。取得した暗号鍵リスト28とリスト暗号鍵33とを用いて権利管理テーブル25からコンテンツIDに対応するエントリ情報を復号して権利判定部58へ出力する。保存領域20の権利管理テーブル25を更新する場合も、同様に暗号鍵リスト28とリスト暗号化鍵33とを取得して権利管理テーブル25の復号化および暗号化を行う。
【0181】
なお、リスト暗号化鍵33は、時変鍵31と同一であるとしてもよい。
3.2 変形例2
また、上述の各実施例において、所定のタイミングになるごとに、電子機器1の一部または全部に対して改ざん検出を行うこととしてもよい。
例えば、電子機器1は、コンテンツの最初のフレームを復号する際に、再生部16などに対して改ざん検出を行うこととするとよい。特に、コンテンツの再生を行うアプリの改ざん検出を行うとよい。不正なアプリによってコンテンツが不正に再生されるおそれを小さくできるからである。さらに、電子機器1は、再生を行うアプリの改ざんを検出すると、アプリのアップデートをユーザに促す旨の通知をユーザ通知部17によって行うこととするとよい。
【0182】
また、電子機器1は、上記アプリのアップデート時や、インストール時に、改ざん検出を行うこととするとよい。そして、電子機器1は、上記アプリの実行中に上記アプリの改ざんを検出すると、即座に上記アプリを停止することとしても良い。
3.2.1 改ざん検出の対象
ここで、改ざん検出の対象となるものとしては、保護すべきデータ、例えば、上述のように再生を行うアプリや、権利管理テーブル25などの保存領域20に記憶されているデータや、権利一時記憶部59に記憶されているエントリ情報などが挙げられる。
【0183】
3.2.2 改ざん検出のタイミング
また、改ざん検出のタイミングとしては、保護すべきデータにアクセスする時が考えられる。
例えば、権利管理テーブルアクセス部54が保存領域20の権利管理テーブル25を取得した時(S104、S308など)や、権利一時記憶部59に記憶されているエントリ情報の内容を権利管理テーブル25に反映させた時(S309、S310、S418など)などがある。また、これ以外にも、権利管理テーブル25を更新しない場合にも(例えば復号制御部57がパターンPの動作を行う時)、保存領域20の権利管理テーブル25やその他のデータの改ざん検出を行うとしてもよい。
【0184】
また、権利判定部58が権利一時記憶部59にエントリ情報を記憶させるタイミング(S406)や、権利一時記憶部59に記憶されているエントリ情報を権利判定部58が更新するタイミング(S415)や、権利一時記憶部59に記憶されているエントリ情報に基づいて権利の確認を行うタイミング(S411など)などにおいて改ざん検出を行うとしてもよい。また、権利一時記憶部59に記憶されているエントリ情報の更新を行わないタイミング(S414:NOなど)や、権利判定部58において権利の確認を行わないタイミング(例えば復号制御部57がパターンSの動作を行う時)において改ざん検出を行うとしてもよい。
【0185】
また、時刻情報取得部55がセキュアクロック40から時刻情報を取得したタイミング(S204、S301など)や、時刻情報を開始時刻記憶部60に記憶させるタイミング(S405、S416など)において改ざん検出を行うとしてもよい。
また、上述の変形例1やセキュアクロック40のセキュアカウンタが値を更新したタイミングや、セキュアカウンタの値を取得したタイミングで改ざん検出を行うとしてもよい。
【0186】
また、上述のように、コンテンツを再生するアプリが起動して、コンテンツの最初のフレームが復号されるとき、つまり再生状態情報が初期値を示しているときに改ざん検出を行うとしてもよい。
また、再生状態情報が所定値を示すたびに、つまり所定数のフレームを復号するたびに改ざん検出を行うとしてもよい。例えば、25フレーム復号するごとに改ざん検出が行われるとしてもよい。
【0187】
なお、コンテンツを再生するアプリ等の、検出対象の全てを一度に改ざん検出するのは困難である場合が多いため、改ざん検出時には、検出対象のうち一部に対して改ざん検出を行い、改ざん検出のたびに、検出対象を変更していくとよい。例えば、改ざん検出時においては、コンテンツを再生するアプリの一部について改ざん検出を行い、次の改ざん検出時には、その他の部分について順次改ざん検出を行うとよい。例えば図25に示すように、25フレーム復号するごとに改ざん検出を行い、検出対象を順次切り替えていくとよい。
【0188】
3.2.3 改ざん検出のための動作
上述の改ざん検出は、例えば、耐タンパーモジュールにより行うことが望ましい。例えば耐タンパー技術で実装された権利判定復号部15が行うとよい。権利判定復号部15が改ざん検出を行う場合であって、再生状態記憶部56に記憶されている再生状態情報の値に応じて、フレーム単位での復号とともに、フレーム単位で定期的に改ざん検出を行うとすると、タイマー割り込み等による処理が不要となる。そのため、実装が容易となる。
【0189】
なお、改ざん検出の方法としては、保護すべきデータ、例えばコンテンツの再生を行うアプリや、権利管理テーブル25などのハッシュ値を保持しておき、改ざん検出時に、検出対象のハッシュ値を計算して、保持しているハッシュ値と比較して一致するか否かにより行うことなどが考えられる。この場合、コンテンツの再生の前に、上記比較のために予め保持するハッシュ値が不正なものでないようにしなければならないが、こうするために、例えば、アプリや権利管理テーブル25等が正当な権利者から配布されている場合は、電子署名によりこれらアプリ等が改ざんされていない正規なものであることを確認する。そうして、コンテンツの再生の前に、これら正規であると確認されたアプリ等のハッシュ値を保持しておくとよい。また、コンテンツの再生途中においても、電子署名を用いてアプリ等が正規なものであるか確認することとしてもよい。
【0190】
3.3 変形例3
また、上述の実施の形態1において、電子機器1の動作状況に応じて、復号制御部57が行う各パターンの処理の割合を動的に変化させることとしてもよい。
図26は、変形例3における権利判定復号部15bを示す機能ブロック図である。図2の権利判定復号部15と比較して、環境検知部62が備わる点が異なる。
【0191】
3.3.1 環境検知部62
環境検知部62は、電子機器1の動作状況に応じて、復号制御部57が行う各パターンの処理それぞれの割合を制御する。電子機器1の動作状況とは、例えば、電子機器1のCPUの使用率である。電子機器1の動作状況は、電子機器1のOS(Operating System)により管理されている。環境検知部62は、OSにアクセスして電子機器1の動作状況を取得する。
【0192】
具体的に説明すると、図6(a)に示すようなテーブルを、環境検知部62は記憶している。図6(a)は、電子機器1のCPUの使用率と、復号制御部57が行う各パターン(パターンP、Q、R、S、図5(a)参照)の割合とを対応づけたテーブル26aである。例えば、環境検知部62は、CPU使用率を検知して、CPU使用率に応じた各パターンの割合を示す情報を保持している。復号制御部57は、環境検知部62に逐次アクセスし、環境検知部62に保持されている情報に基づいて、コンテンツの未再生フレームについてどのパターンをどれくらいの割合にするかを決定する。例えば、CPU使用率が環境検知部62により10%と検知されていたら、環境検知部62は、各パターンの割合が「パターンP:20%、パターンQ:80%、パターンR:0%、パターンS:0%」であることを示す情報を保持する。復号制御部57は、環境検知部62が保持している情報にアクセスし、コンテンツの未再生のフレームのうち、パターンPの割合が20%、パターンQの割合が80%となるように、フレームの番目ごとの処理手順を決定する。なお、復号制御部57が環境検知部62にアクセスする頻度は、例えば、復号制御部57が所定数のフレームを復号するごととすることが考えられる。
【0193】
ここで、電子機器1の動作状況に応じた各パターンの割合は、各パターンの処理負荷を考慮して決定する。パターンQは、保存領域20への権利の書き出しを伴うため、各パターンのうち、最も処理負荷が大きい。そのため、電子機器1の処理能力に余裕のあるときはパターンQの割合を多くしても良いが、電子機器1の処理能力に余裕が無くなってきたら、パターンQ以外のパターンの割合を増やすようにするとよい。
【0194】
また、この他にも、図6(b)に示すような書き出し条件テーブル26bを環境検知部62が保持しておき、環境検知部62は、検知したCPU使用率に応じて書き出し条件を選択する。書き出し条件とは、権利一時記憶部59に記憶されているエントリ情報の更新内容を保存領域20の権利管理テーブル25に反映させる条件を示す。例えば、CPU使用率が0〜20%であれば、書き出し条件は、「1フレームごとに書き出し」であり、1フレーム再生されるごとに保存領域20の権利管理テーブル25が上書きにより更新されるべきであることを示す。環境検知部62は、選択した書き出し条件を復号制御部57へ出力する。復号制御部57は、環境検知部62から書き出し条件を受け付けて、受け付けた書き出し条件に従って、保存領域20の権利管理テーブル25の上書きを行う。具体的には、復号制御部57は、権利管理テーブル25の上書きを行った時の再生状態情報の値を記憶しておき、新たにフレームを復号する際に取得した再生状態情報に示される値と、既に記憶している値を用いて、書き出し条件に従って権利管理テーブル25の上書きを行う。こうすると、例えば復号制御部57は、権利判定復号部15が所定数のフレーム復号するごとに、権利管理テーブル25を上書きすることができる。
【0195】
なお、この場合、図6(b)に示すように、CPU使用率が81%以上であると、コンテンツの再生終了までに一度も保存領域20の権利管理テーブル25の上書きが行われない可能性があるため、所定数、例えば50個のフレームが復号されるごとに復号制御部57により上書きが行われることとするとよい。
また、権利管理テーブル25の上書きについて補足すると、CPU使用率に限らず、コンテンツの再生時間が所定時間を超えたときに強制的に上書きが行われることとしてもよい。例えば、復号制御部57は、コンテンツの再生を開始した時刻をセキュアクロック40から取得し、開始時刻情報として記憶しておく。その後、復号制御部57は、フレームの復号のたびに時刻情報をセキュアクロック40から取得して、開始時刻情報と、取得した時刻情報とに示される時刻の差分が所定時間以上となれば強制的に保存領域20の権利管理テーブル25の上書きを行うこととしてもよい。
【0196】
CPU使用率やコンテンツの再生時間の他にも、例えば電子機器1がマルチタスクで動作している場合は、アプリケーションの実行数などに応じて上述の権利管理テーブル25の上書きタイミングを復号制御部57が決定するとしてもよい。アプリケーションの実行数は、環境検知部62がOSから取得し、復号制御部57へと通知される。アプリケーションの実行数が多くなるほど、復号制御部57は、権利管理テーブル25の上書きの頻度を小さくする。
【0197】
また、再生するコンテンツの種類(音楽、動画など)に応じて、復号制御部57は、権利管理テーブル25の上書きの頻度を調節するとしてもよい。例えば、音楽データと比べてデータ量の大きい動画をコンテンツ管理部10が再生する場合は、再生処理の負荷が大きくなるので、復号制御部57は、音楽データを再生する場合と比べて、権利管理テーブル25の上書きの頻度を小さくする。
【0198】
また、電子機器1がアイドル状態であるか否か、省電力モードで動作しているか否かに応じて、復号制御部57は、上述の権利管理テーブル25の上書きタイミングを決定するとしてもよい。アイドル状態であれば、上述の権利管理テーブル25の上書きの頻度を大きくし、省電力モードであれば、権利管理テーブル25の上書きの頻度を小さくする。要するに、電子機器1の処理能力に余裕があり性能が十分に発揮される場合は、頻繁に権利管理テーブル25を上書きし、処理能力に余裕がなければ上書きの頻度を小さくするとよい。
【0199】
3.3.2変形例3の補足
(1)上述の変形例3においては、環境検知部62により各パターンの割合が定められた後、未再生のフレームそれぞれについてどのような順序でパターンを割り当てるかは、(a)復号制御部57が行ってもよいし、(b)環境検知部62が行ってもよい。すなわち、(a)の場合、環境検知部62は、電子機器1の動作状況に応じて、復号制御部57が行う各パターンの割合を動的に変化させ、各パターンの割合を示す情報を保持しておく。つまり環境検知部62は、各パターンの割合のみを決定するが、各フレームにどのパターンを割り当てるかまでは決定しない。復号制御部57は、環境検知部62から各パターンの割合を示す情報を逐次取得して、割合に従って、再生するフレームそれぞれについて割り当てるパターンを決定する。また、(b)の場合、環境検知部62は、電子機器1の動作状況に応じて各パターンの割合を逐次決定し、決定した割合になるように、未再生のフレームそれぞれに割り当てるパターンを決定する。
(2)実施の形態1の「1.4.6 電子機器1の動作」において、権利一時記憶部59に記憶されているエントリ情報の更新内容を保存領域20の権利管理テーブル25に反映させるタイミングとして、ユーザによってコンテンツの再生を終了する操作がなされた場合を例として説明した。
【0200】
変形例3においては、環境検知部62等により電子機器1の電力が低下したことが検知された場合に、電子機器1は、OSによりプロセスの割り込みを発生させて、復号制御部57により、権利一時記憶部59に記憶されているエントリ情報の更新内容を保存領域20の権利管理テーブル25に反映させる処理を行うこととしてもよい。この場合は、電力の供給が無くなることにより権利管理テーブル25の上書きが失敗することを防ぐため、電子機器1は、予備の電池等を備えておくとよい。
【0201】
3.4 その他の変形例
なお、本発明を上記実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる
(1)上記の各装置は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット、ディスプレイユニット、キーボード、マウスなどから構成されるコンピュータシステムである。前記RAMまたはハードディスクユニットには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、各装置は、その機能を達成する。ここでコンピュータプログラムは、所定の機能を達成するために、コンピュータに対する指令を示す命令コードが複数個組み合わされて構成されたものである。
【0202】
(2)上記の各装置を構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。
【0203】
また、上記の各装置を構成する構成要素の各部は、個別に1チップ化されていても良いし、一部又は全てを含むように1チップ化されてもよい。
また、システムLSIは集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもあるが、システムLSI100を上記のいずれの集積度で実現した場合も本発明に含まれることは言うまでもない。また、LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
【0204】
さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて構成要素の集積化を行ってもよい。バイオ技術の適応等が可能性としてありえる。
(3)上記の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパー性を有するとしてもよい。
【0205】
(4)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるディジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記ディジタル信号をコンピュータ読み取り可能な記憶媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなどに記憶したものとしてもよい。また、これらの記憶媒体に記憶されている前記ディジタル信号であるとしてもよい。
【0206】
また、本発明は、前記コンピュータプログラムまたは前記ディジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
【0207】
また、前記プログラムまたは前記ディジタル信号を前記記憶媒体に記憶して移送することにより、または前記プログラムまたは前記ディジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(5)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
【0208】
(6)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をCPUの処理として実現するプログラムであるとしてもよいし、前記コンピュータプログラムからなるディジタル信号であるとしてもよい。
(7)また、本発明は、前記コンピュータプログラムまたは前記ディジタル信号をコンピュータ読み取り可能な記憶媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−rayDisc)、半導体メモリなどに記憶したものとしてもよい。また、これらの記憶媒体に記憶されている前記ディジタル信号であるとしてもよい。
【0209】
(8)これらの実施の形態および変形例の組合せであってもよい。
【産業上の利用可能性】
【0210】
本発明にかかる再生時間制限コンテンツの権利更新方法等の技術は、DRM技術のようなコンテンツの著作権を保護する技術を実装した電子機器において、コンテンツが再生中であってもその権利の期限が来たとき速やかに再生を終了させる場合などに極めて有用である。
【図面の簡単な説明】
【0211】
【図1】本発明の電子機器1の機能ブロック図。
【図2】権利判定復号部15の機能ブロック図。
【図3】コンテンツ21、コンテンツ管理テーブル22、コンテンツ復号要求23、再生状態情報を示す図。
【図4】権利管理テーブル25を示す図。
【図5】復号制御部57の動作の各パターンの概要と、各パターンと再生するフレームとの関係を示す図。
【図6】電子機器1のCPUの使用率と、復号制御部57が行う各パターンの割合とを対応づけたテーブル26a、および、書き出し条件テーブル26bを示す図。
【図7】制御手順決定部52の動作の詳細を示すフローチャート。
【図8】復号制御部57の動作の詳細を示すフローチャート。
【図9】ステップS211において復号制御部57がパターンQの動作を行う場合のフローチャート。
【図10】権利判定部58の動作の詳細を示すフローチャート。
【図11】コンテンツの再生途中における権利判定部58の動作を示すフローチャート。
【図12】権利判定復号部15の動作の概略を示す図。
【図13】権利判定復号部15の動作の概略を示す図。
【図14】電子機器1のコンテンツ管理部10がコンテンツを再生するときの動作を示すフローチャート。
【図15】権利タイプが「再生期限」の場合における権利判定部58の動作を示すフローチャート。
【図16】権利タイプが「再生期限」の場合であって、コンテンツの再生途中における権利判定部58の動作を示すフローチャート。
【図17】再生状態情報が初期値ではない場合の、権利タイプ「再生回数」のコンテンツを再生する場合の復号制御部57の動作を示すフローチャート。
【図18】権利タイプが「再生回数」のコンテンツを再生する場合の、権利判定部58の動作を示すフローチャート。
【図19】権利タイプが「再生回数」で、再生状態情報が初期値ではない場合の権利判定部58の動作を示すフローチャート。
【図20】復号制御部57の動作を示すフローチャート。
【図21】コンテンツの再生途中において、再生状態情報の値が所定値に達して、復号制御部57が保存領域20の権利管理テーブル25を更新する場合の動作のフローチャート。
【図22】権利判定部58の動作を示すフローチャート。
【図23】コンテンツの再生途中において、復号制御部57から再生状態情報を受信した場合の動作を示すフローチャート。
【図24】変形例1の権利管理テーブル25、暗号鍵リスト28、リスト暗号鍵33、セキュアカウンタを示す図。
【図25】所定フレームごとに改ざん検出を行う場合の例。
【図26】変形例3における権利判定復号部15bを示す機能ブロック図。
【符号の説明】
【0212】
1 電子機器
10 コンテンツ管理部
11 再生要求受付部
12 コンテンツ判定部
13 コンテンツ取り出し部
14 復号要求送信部
15 権利判定復号部
16 再生部
17 ユーザ通知部
20 保存領域
30 時変鍵記憶部
40 セキュアクロック
51 復号要求受信部
52 制御手順決定部
53 鍵取得部
54 権利管理テーブルアクセス部
55 時刻情報取得部
56 再生状態記憶部
57 復号制御部
58 権利判定部
59 権利一時記憶部
60 開始時刻記憶部
61 コンテンツ復号部
62 環境検知部

【特許請求の範囲】
【請求項1】
不正アクセスから保護された状態で、コンテンツの再生の可否を管理するための権利情報を記憶する記憶手段と、
複数のフレームから構成され、暗号化された前記コンテンツを、1フレームずつ取得する受信手段と、
前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する機能を有する権利判定手段と、
Nをコンテンツの再生を開始してからのフレームの位置を示す自然数としたとき、N番目のフレームが取得され、かつ、Nの値が所定の判定条件を満たすごとに、前記権利判定手段に前記判定を行わせ、前記権利判定手段により前記コンテンツの再生が許可されているとの判定がなされた場合は、当該N番目のフレームを復号し、前記コンテンツの再生が許可されていないとの判定がなされた場合は、当該N番目のフレーム以降のフレームの再生を制限する制御手段と、
所定のタイミングになるごとに、前記電子機器の一部または全部に対して改ざん検出を行う改ざん検出手段とを備える
ことを特徴とする電子機器。
【請求項2】
前記改ざん検出手段は、
前記改ざん検出の際、前記電子機器の一部に対して改ざん検出を行う場合、前記改ざん検出のたびに、前記電子機器の、改ざん検出の済んでいない部分を改ざん検出を行う対象として選択する
ことを特徴とする請求項1記載の電子機器。
【請求項3】
前記改ざん検出手段は、
前記コンテンツの再生処理を行うアプリケーションである再生アプリに対して改ざん検出を行う
ことを特徴とする請求項1記載の電子機器。
【請求項4】
前記電子機器は、さらに、
ユーザへの通知を行うユーザ通知手段を備え、
前記ユーザ通知手段は、
前記改ざん検出手段により改ざんが検出された場合に、前記再生アプリのアップデートが必要であることをユーザに通知する
ことを特徴とする請求項3記載の電子機器。
【請求項5】
前記制御手段は、
前記前記改ざん検出手段により改ざんが検出された場合、前記再生アプリを停止させることを特徴とする請求項3記載の電子機器。
【請求項6】
前記改ざん検出手段は、
フレームの復号にかかる処理の際に前記記憶手段に記憶されている権利情報にアクセスするタイミングにおいて、前記改ざん検出を行う
ことを特徴とする請求項1記載の電子機器。
【請求項7】
前記改ざん検出手段は、
再生にかかるコンテンツの、最初のフレームの復号にかかる処理において、前記改ざん検出を行う
ことを特徴とする請求項1記載の電子機器。
【請求項8】
前記改ざん検出手段は、
再生にかかるコンテンツのフレームを所定数復号するたびに、前記改ざん検出を行う
ことを特徴とする請求項1記載の電子機器。
【請求項9】
前記改ざん検出手段は、
前記権利判定手段による前記判定が行われるタイミングで、前記改ざん検出を行う
ことを特徴とする請求項1記載の電子機器。
【請求項10】
前記改ざん検出手段は、
前記コンテンツの再生処理を行うアプリケーションである再生アプリがインストールされたタイミングまたはアップデートされたタイミングにおいて前記改ざん検出を行う
ことを特徴とする請求項1記載の電子機器。
【請求項11】
前記制御部は、更に、前記改ざん検出手段によって改ざんが検出されると、前記コンテンツの再生を制限することを特徴とする請求項1記載の電子機器。
【請求項12】
電子機器がコンテンツの再生を制御するコンテンツ再生制御方法であって、
前記電子機器は、不正アクセスから保護された状態で、コンテンツの再生の可否を管理するための権利情報を記憶する記憶手段を備え、
コンテンツ再生制御方法は、
複数のフレームから構成され、暗号化されたコンテンツを、1フレームずつ取得する受信ステップと、
前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する処理を行う権利判定ステップと、
Nをコンテンツの再生を開始してからのフレームの位置を示す自然数としたとき、N番目のフレームが取得され、かつ、Nの値が所定の判定条件を満たすごとに、前記権利判定ステップにより前記判定を行わせ、前記権利判定ステップにより前記コンテンツの再生が許可されているとの判定がなされた場合は、当該N番目のフレームを復号し、前記コンテンツの再生が許可されていないとの判定がなされた場合は、当該N番目のフレーム以降のフレームの再生を制限する制御ステップと、
所定のタイミングになるごとに、前記電子機器の一部または全部に対して改ざん検出を行う改ざん検出ステップとを含む
ことを特徴とするコンテンツ再生制御方法。
【請求項13】
コンテンツを再生する処理を電子機器に行わせるための制御プログラムであって、
前記電子機器は、不正アクセスから保護された状態で、コンテンツの再生の可否を管理するための権利情報を記憶する記憶手段を備え、
前記制御プログラムは、
前記電子機器のコンピュータに対し、
複数のフレームから構成され、暗号化されたコンテンツを、1フレームずつ取得する受信ステップと、
前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する処理を行う権利判定ステップと、
Nをコンテンツの再生を開始してからのフレームの位置を示す自然数としたとき、N番目のフレームが取得され、かつ、Nの値が所定の判定条件を満たすごとに、前記権利判定ステップにより前記判定を行わせ、前記権利判定ステップにより前記コンテンツの再生が許可されているとの判定がなされた場合は、当該N番目のフレームを復号し、前記コンテンツの再生が許可されていないとの判定がなされた場合は、当該N番目のフレーム以降のフレームの再生を制限する制御ステップと、
所定のタイミングになるごとに、前記電子機器の一部または全部に対して改ざん検出を行う改ざん検出ステップと
を実行させることを特徴とする制御プログラム。
【請求項14】
コンテンツを再生する処理を電子機器に行わせるための制御プログラムを記憶した、コンピュータ読み取り可能な記憶媒体であって、
前記電子機器は、不正アクセスから保護された状態で、コンテンツの再生の可否を管理するための権利情報を記憶する記憶手段を備え、
前記電子機器のコンピュータに対し、
複数のフレームから構成され、暗号化されたコンテンツを、1フレームずつ取得する受信ステップと、
前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する処理を行う権利判定ステップと、
Nをコンテンツの再生を開始してからのフレームの位置を示す自然数としたとき、N番目のフレームが取得され、かつ、Nの値が所定の判定条件を満たすごとに、前記権利判定ステップにより前記判定を行わせ、前記権利判定ステップにより前記コンテンツの再生が許可されているとの判定がなされた場合は、当該N番目のフレームを復号し、前記コンテンツの再生が許可されていないとの判定がなされた場合は、当該N番目のフレーム以降のフレームの再生を制限する制御ステップと、
所定のタイミングになるごとに、前記電子機器の一部または全部に対して改ざん検出を行う改ざん検出ステップと
を実行させるための前記制御プログラムを記憶していることを特徴とする記憶媒体。
【請求項15】
コンテンツを再生する電子機器で用いられる集積回路であって、
前記電子機器は、不正アクセスから保護された状態で、コンテンツの再生の可否を管理するための権利情報を記憶する記憶手段を備え、
前記集積回路は、
複数のフレームから構成され、暗号化された前記コンテンツを、1フレームずつ取得する受信手段と、
前記権利情報に基づいて、前記コンテンツの再生が許可されているか判定する機能を有する権利判定手段と、
Nをコンテンツの再生を開始してからのフレームの位置を示す自然数としたとき、N番目のフレームが取得され、かつ、Nの値が所定の判定条件を満たすごとに、前記権利判定手段に前記判定を行わせ、前記権利判定手段により前記コンテンツの再生が許可されているとの判定がなされた場合は、当該N番目のフレームを復号し、前記コンテンツの再生が許可されていないとの判定がなされた場合は、当該N番目のフレーム以降のフレームの再生を制限する制御手段と
所定のタイミングになるごとに、前記電子機器の一部または全部に対して改ざん検出を行う改ざん検出手段とを備える
ことを特徴とする集積回路。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate


【公開番号】特開2009−110539(P2009−110539A)
【公開日】平成21年5月21日(2009.5.21)
【国際特許分類】
【出願番号】特願2008−316652(P2008−316652)
【出願日】平成20年12月12日(2008.12.12)
【分割の表示】特願2008−516675(P2008−516675)の分割
【原出願日】平成19年5月18日(2007.5.18)
【出願人】(000005821)パナソニック株式会社 (73,050)
【Fターム(参考)】