JP2006345234A - 暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム - Google Patents

暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム Download PDF

Info

Publication number
JP2006345234A
JP2006345234A JP2005169093A JP2005169093A JP2006345234A JP 2006345234 A JP2006345234 A JP 2006345234A JP 2005169093 A JP2005169093 A JP 2005169093A JP 2005169093 A JP2005169093 A JP 2005169093A JP 2006345234 A JP2006345234 A JP 2006345234A
Authority
JP
Japan
Prior art keywords
packet
encrypted
seed
encryption
seed information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005169093A
Other languages
English (en)
Inventor
Keiko Saeki
恵子 佐伯
Shunichi Soma
俊一 相馬
Hisashi Tateno
久之 館野
Hirobumi Shimada
博文 島田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2005169093A priority Critical patent/JP2006345234A/ja
Publication of JP2006345234A publication Critical patent/JP2006345234A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】コンテンツの不正なコピーをより強固に防止する。
【解決手段】 Seed生成部124は、1以上のTSパケットからなるGOPごとに、そのGOPに属するTSパケットを暗号化するのに用いられる暗号鍵を生成する基となるSeedを生成し、このSeedに基づいて、グループ鍵生成部125は、GOPごとに異なるグループ鍵Kbを生成する。暗号化部126は、グループ鍵Kbを用いて、TSパケットを構成するヘッダとペイロード全体を、そのTSパケットが属するグループに対応するグループ鍵Kbを用いて暗号化して、暗号化TSパケットを生成する。データ付加部127は、TSパケットの暗号化に用いられたグループ鍵Kbを生成する基となったSeedを、そのTSパケットの暗号化データ付加する。本発明は、例えば、コンテンツを暗号化する装置に適用できる。
【選択図】図4

Description

本発明は、暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラムに関し、特に、コンテンツの不正なコピーをより強固に防止することができるようにした暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラムに関する。
ディジタルビデオ信号をディジタル圧縮する符号化方式の一つにMPEG(Moving Picture Experts Group)2方式がある。例えば、近年始まったディジタル放送では、放送番組のコンテンツが、MPEG2方式で符号化され、トランスポートストリーム(以下、適宜、MPEG2-TSという)と呼ばれるフォーマットで伝送されている。
MPEG2-TSは、TS(トランスポートストリーム)パケットが連続したストリームであり、TSパケットは、ビデオストリームやオーディオストリームなどがパケット化されたものである。TSパケットは、188バイトの固定長で、例えば、4バイトのTSヘッダと184バイトのペイロードとで構成される。各TSパケットのTSヘッダには、そのTSパケットを識別するためのPID(Packet Identification)が含まれる。
MPEG2-TSには、複数の放送番組のTSパケットが多重されており、さらに、各放送番組と、その放送番組のコンテンツ(コンテンツのデータ)をペイロードに含むTSパケットのPIDとを関連付ける情報であるPAT(Program Association Table)やPMT(Program Map Table)などを含むTSパケットも多重されている。
ところで、コンテンツをディジタル信号のまま、即ち、MPEG2-TSをデコードや再エンコードすることなく、コンテンツを全くの劣化なしで、別の記録媒体にコピーすることができてしまうことは、いわゆる著作権の観点から好ましくない。
そこで、コンテンツに、コピー制御情報(Copy Control Information)を持たせて、コンテンツのコピーを制限することが行われている。コピー制御情報としては、「Copy Free(コピー可)」、「Copy Once(一世代のみコピー可)」、「No More Copy (この世代以上のコピー不可)」、「Copy Prohibited(コピー禁止)」という世代によってコピーを制限するコピー世代管理情報(Copy generation management information)がある。MPEG2方式では、コピー制御情報を示すdigital_copy_control_descriptorを、PMTに配置することで、コンテンツのコピーを制限している。
コンテンツを記録することができるハードディスクレコーダなどの記録装置は、上述のようなコピー制御情報に従って、コンテンツをハードディスクなどに記録する。このとき、記録装置は、コンテンツを構成するTSパケットのペイロードの部分を暗号化し、コンテンツを記録する。
また、ディジタル放送では、コンテンツを構成するTSパケットのペイロードの部分にスクランブルが施される(例えば、特許文献1参照)。
特開2003−92566号公報
しかしながら、コンテンツを記録するときに、TSパケットのペイロードの部分のみが暗号化され、TSヘッダが暗号化されていないと、TSヘッダに含まれるPIDから、PMTを含むTSパケットが推測されてしまい、そのTSパケットを欠落させることで、コピー制御情報によるコピーの制限を回避して、不正なコピーが行われる可能性があった。
例えば、あるコンテンツにおいて、その一部分がコピー禁止となっていて、その前後の部分がコピー可となっている場合、そのコンテンツを含むMPEG2-TSでは、まず、コピー可を表すdigital_copy_control_descriptorが配置されたPMTを含むTSパケットが送信され、そのTSパケットに続いてコピー可のコンテンツを含むTSパケットが送信される。次に、コピー禁止を表すdigital_copy_control_descriptorが配置されたPMTを含むTSパケットが送信され、そのTSパケットに続いてコピー禁止のコンテンツを含むTSパケットが送信される。そして、コピー可を表すdigital_copy_control_descriptorが配置されたPMTを含むTSパケットが送信され、そのTSパケットに続いてコピー可のコンテンツを含むTSパケットが送信される。
この場合、コピー禁止を表すdigital_copy_control_descriptorが配置されたPMTを含むTSパケットが欠落すると、記録装置では、本来はコピー禁止のコンテンツを含むTSパケットがコピー可であると認識され、コピーが行われてしまう。
本発明は、このような状況に鑑みてなされたものであり、コンテンツの不正なコピーをより強固に防止することができるようにするものである。
本発明の暗号化装置は、1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成する種情報生成手段と、種情報に基づいて、グループごとに異なる暗号鍵を生成する暗号鍵生成手段と、パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする暗号化手段と、パケットの暗号化に用いられた暗号鍵を生成する基となった種情報を、パケットの暗号化パケットに付加する付加手段とを備えることを特徴とする。
また、本発明の暗号化装置は、復号をすることが許可されている暗号化パケットに付加された種情報を示す復号許可情報を有するライセンスデータを生成するライセンスデータ生成手段をさらに備えることができる。
本発明の暗号化方法は、1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成する種情報生成ステップと、種情報に基づいて、グループごとに異なる暗号鍵を生成する暗号鍵生成ステップと、パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする暗号化ステップと、パケットの暗号化に用いられた暗号鍵を生成する基となった種情報を、パケットの暗号化パケットに付加する付加ステップとを含むことを特徴とする。
本発明の第1のプログラムは、1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成する種情報生成ステップと、種情報に基づいて、グループごとに異なる暗号鍵を生成する暗号鍵生成ステップと、パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする暗号化ステップと、パケットの暗号化に用いられた暗号鍵を生成する基となった種情報を、パケットの暗号化パケットに付加する付加ステップとを含むことを特徴とする。
本発明の復号装置は、暗号化ストリームから種情報を取得する種情報取得手段と、種情報取得手段によって取得された種情報と、復号をすることが許可されている暗号化パケットに付加された種情報を示す復号許可情報を有するライセンスデータとに基づいて、暗号化パケットを復号することが許可されているか否かを判定する判定手段と、判定手段において暗号化パケットを復号することが許可されていると判定された場合、暗号化パケットに付加されている種情報に基づいて、暗号鍵を生成する暗号鍵生成手段と、暗号鍵を用いて、暗号化パケットを復号する復号手段とを備えることを特徴とする。
本発明の復号方法は、暗号化ストリームから種情報を取得する種情報取得ステップと、種情報取得ステップにおいて取得された種情報と、復号をすることが許可されている暗号化パケットに付加された種情報を示す復号許可情報を有するライセンスデータとに基づいて、暗号化パケットを復号することが許可されているか否かを判定する判定ステップと、判定ステップにおいて暗号化パケットを復号することが許可されていると判定された場合、暗号化パケットに付加されている種情報に基づいて、暗号鍵を生成する暗号鍵生成ステップと、暗号鍵を用いて、暗号化パケットを復号する復号ステップとを含むことを特徴とする。
本発明の第2のプログラムは、暗号化ストリームから種情報を取得する種情報取得ステップと、種情報取得ステップにおいて取得された種情報と、復号をすることが許可されている暗号化パケットに付加された種情報を示す復号許可情報を有するライセンスデータとに基づいて、暗号化パケットを復号することが許可されているか否かを判定する判定ステップと、判定ステップにおいて暗号化パケットを復号することが許可されていると判定された場合、暗号化パケットに付加されている種情報に基づいて、暗号鍵を生成する暗号鍵生成ステップと、暗号鍵を用いて、暗号化パケットを復号する復号ステップとを含むことを特徴とする。
本発明の暗号化装置および暗号化方法、並びに第1のプログラムにおいては、1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報が生成され、この種情報に基づいて、グループごとに異なる暗号鍵が生成される。そして、パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする。さらに、パケットの暗号化に用いられた暗号鍵を生成する基となった種情報を、パケットの暗号化パケットに付加する。
本発明の復号装置および復号方法、並びに第2のプログラムにおいては、暗号化ストリームから種情報が取得され、その種情報と、復号をすることが許可されている暗号化パケットに付加された種情報を示す復号許可情報を有するライセンスデータとに基づいて、暗号化パケットを復号することが許可されているか否かが判定される。そして、暗号化パケットを復号することが許可されていると判定された場合、暗号化パケットに付加されている種情報に基づいて、暗号鍵が生成され、その暗号鍵を用いて、暗号化パケットが復号される。
本発明によれば、コンテンツの不正なコピーをより強固に防止することができる。
以下に本発明の実施の形態を説明するが、請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係を例示すると、次のようになる。この記載は、請求項に記載されている発明をサポートする具体例が、発明の実施の形態に記載されていることを確認するためのものである。従って、発明の実施の形態中には記載されているが、構成要件に対応するものとして、ここには記載されていない具体例があったとしても、そのことは、その具体例が、その構成要件に対応するものではないことを意味するものではない。逆に、具体例が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その具体例が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
さらに、この記載は、発明の実施の形態に記載されている具体例に対応する発明が、請求項に全て記載されていることを意味するものではない。換言すれば、この記載は、発明の実施の形態に記載されている具体例に対応する発明であって、この出願の請求項には記載されていない発明の存在、すなわち、将来、分割出願されたり、補正により追加される発明の存在を否定するものではない。
請求項1に記載の暗号化装置は、1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報(例えば、Seed)を生成する種情報生成手段(例えば、図4のSeed生成部124)と、種情報に基づいて、グループごとに異なる暗号鍵を生成する暗号鍵生成手段(例えば、図4のグループ鍵生成部125)と、パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする暗号化手段(例えば、図4の暗号化部126)と、パケットの暗号化に用いられた暗号鍵を生成する基となった種情報を、パケットの暗号化パケットに付加する付加手段(例えば、図4のデータ付加部127)とを備えることを特徴とする。
請求項2に記載の暗号化装置は、復号をすることが許可されている暗号化パケットに付加された種情報を示す復号許可情報を有するライセンスデータを生成するライセンスデータ生成手段(例えば、図7のステップS22の処理を実行する図4のライセンス処理部115)をさらに備えることができる。
請求項3に記載の暗号化装置は、暗号化パケットに付加された種情報と、ライセンスデータとに基づいて、暗号化パケットを復号することが許可されているか否かを判定する判定手段(例えば、図9のステップS35の処理を実行する図8のライセンス処理部115)と、判定手段において暗号化パケットを復号することが許可されていると判定された場合、暗号化パケットに付加されている種情報に基づいて生成される暗号鍵を用いて、暗号化パケットを復号する復号手段(例えば、図8の復号部164)とを備えることができる。
請求項4に記載の暗号化装置は、ユーザからの指令に基づいて、パケットが暗号化パケットに暗号化されたストリームを第1と第2の分割ストリームに分割する分割手段(例えば、図3の分割処理部113)をさらに備え、ライセンスデータ生成手段は、ストリームのライセンスデータに基づき、第1の分割ストリームを構成するパケットの暗号化パケットに付加されている種情報を示す復号許可情報を有する第1の分割ライセンスデータと、第2の分割ストリームを構成するパケットの暗号化パケットに付加されている種情報を示す復号許可情報を有する第2の分割ライセンスデータとを生成することができる。
請求項6に記載の暗号化方法は、1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成する種情報生成ステップ(例えば、図7のステップS14や、ステップS21)と、種情報に基づいて、グループごとに異なる暗号鍵を生成する暗号鍵生成ステップ(例えば、図7のステップS15)と、パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする暗号化ステップ(例えば、図7のステップS17)と、パケットの暗号化に用いられた暗号鍵を生成する基となった種情報を、パケットの暗号化パケットに付加する付加ステップ(例えば、図7のステップS18)とを含むことを特徴とする。
請求項8に記載の復号装置は、暗号化ストリームから種情報を取得する種情報取得手段(例えば、図8のSeed取得部162)と、種情報取得手段によって取得された種情報と、復号をすることが許可されている暗号化パケットに付加された種情報を示す復号許可情報を有するライセンスデータとに基づいて、暗号化パケットを復号することが許可されているか否かを判定する判定手段(例えば、図9のステップS35の処理を実行する図8のライセンス処理部115)と、判定手段において暗号化パケットを復号することが許可されていると判定された場合、暗号化パケットに付加されている種情報に基づいて、暗号鍵を生成する暗号鍵生成手段(例えば、図8のグループ鍵生成部163)と、暗号鍵を用いて、暗号化パケットを復号する復号手段(例えば、図8の復号部164)とを備えることを特徴とする。
請求項9に記載の復号装置は、ユーザからの指令に基づいて、パケットが暗号化パケットに暗号化されたストリームを第1と第2の分割ストリームに分割する分割手段(例えば、図3の分割処理部113)と、ストリームのライセンスデータに基づき、第1の分割ストリームを構成するパケットの暗号化パケットに付加されている種情報を示す復号許可情報を有する第1の分割ライセンスデータと、第2の分割ストリームを構成するパケットの暗号化パケットに付加されている種情報を示す復号許可情報を有する第2の分割ライセンスデータとを生成するライセンスデータ生成手段(例えば、図12のステップS63の処理を実行する図3のライセンス処理部115)とをさらに備えることができる。
請求項11に記載の復号方法は、暗号化ストリームから種情報を取得する種情報取得ステップ(例えば、図9のステップS34)と、種情報取得ステップにおいて取得された種情報と、復号をすることが許可されている暗号化パケットに付加された種情報を示す復号許可情報を有するライセンスデータとに基づいて、暗号化パケットを復号することが許可されているか否かを判定する判定ステップ(例えば、図9のステップS35)と、判定ステップにおいて暗号化パケットを復号することが許可されていると判定された場合、暗号化パケットに付加されている種情報に基づいて、暗号鍵を生成する暗号鍵生成ステップ(例えば、図9のステップS37)と、暗号鍵を用いて、暗号化パケットを復号する復号ステップ(例えば、図9のステップS38)とを含むことを特徴とする。
なお、本発明のプログラムの請求項に記載の構成要件と、発明の実施の形態における具体例との対応関係は、上述した本発明の暗号化方法または復号方法のものと同様であるので、その記載は省略する。
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。
図1は、本発明を適用した情報処理システムの一実施の形態の構成例を示す図である。
パーソナルコンピュータ11は、配信サーバ12とネットワーク21を介して接続されており、配信サーバ12から供給されるコンテンツを受け付ける。パーソナルコンピュータ11はまた、DVD(Digital Versatile Disc)を再生するDVDプレーヤ13から供給されるコンテンツを受け付ける。
さらにパーソナルコンピュータ11は、デジタルテレビジョンチューナを有するデジタルテレビジョン受像機14と、DTCP/IP(Digital Transmission Content Protection Internet Protocol)を用いて通信を行うホームネットワーク22を介して接続されており、デジタルテレビジョン受像機14から供給されるコンテンツを受け付ける。なお、パーソナルコンピュータ11とデジタルテレビジョン受像機14とは、ホームネットワーク22を介さずに、例えば、図示しないIEEE(Institute of Electrical and Electronics Engineers)1394ケーブルを介して接続されていてもよい。
このように、パーソナルコンピュータ11は、配信サーバ12、DVDプレーヤ13またはデジタルテレビジョン受像機14から供給されるコンテンツを受け付ける。
図2は、図1のパーソナルコンピュータ11のハードウエアの一実施の形態の構成例を示すブロック図である。
パーソナルコンピュータ11は、CPU(Central Processing Unit)51、ROM(Read Only Memory)52、RAM(Random Access Memory)53、内部バス54、入出力インターフェース55、入力部56、表示部57、スピーカ58、記憶部59、通信部60、およびドライブ81を備える。
CPU51、ROM52、およびRAM53は、内部バス54を介して相互に接続されている。この内部バス54にはまた、入出力インターフェース55も接続されている。
CPU51は、ROM52に記憶されているプログラム、または、記憶部59からRAM53にロードされたプログラムに従って各種の処理を実行する。RAM53にはまた、CPU51が各種の処理を実行する上で必要なデータなどが適宜記憶される。
入出力インターフェース55には、キーボード、マウスなどよりなる入力部56、LCD(Liquid Crystal Display)、CRT(Cathode Ray Tube)などよりなる表示部57、スピーカ58、ハードディスクなどより構成される記憶部59、通信部60、およびドライブ81が接続されている。
通信部60は、モデム、ターミナルアダプタ、その他の通信インターフェースなどより構成され、電話回線またはCATVを含む各種のネットワーク(例えば、図1のネットワーク21またはホームネットワーク22など)を介しての通信処理を行う。
ドライブ81には、磁気ディスク、光ディスク、光磁気ディスク、あるいは半導体メモリなどよりなるリムーバブルメディア91が適宜装着され、リムーバブルメディア91に記憶(記録)されているコンテンツが読み出されたり、コンテンツがリムーバブルメディア91に記憶される。また、ドライブ81には、コンピュータプログラムが記憶されたリムーバブルメディア91が装着され、リムーバブルメディア91から読み出されたコンピュータプログラムが、必要に応じて記憶部59にインストールされる。
なお、パーソナルコンピュータ11には、例えば、入出力インターフェース55に接続する形でデジタルテレビジョンチューナ(図示せず)を内蔵させることができ、パーソナルコンピュータ11は、内蔵するデジタルテレビジョンチューナによってコンテンツを取得してもよい。
図3は、図2のパーソナルコンピュータ11の機能的構成例を説明するブロック図である。図3のパーソナルコンピュータ11の機能的構成は、図2のパーソナルコンピュータ11のCPU51が、記憶部59に記憶された各種のコンピュータプログラムを実行することで実現される。
図3において、パーソナルコンピュータ11には、データ受信部101、操作受付部102、主制御部103、記憶部104、デコード処理部105、耐タンパモジュール106、およびデータ出力部107が設けられている。耐タンパモジュール106には、暗号化処理部111、復号処理部112、分割処理部113、結合処理部114、およびライセンス処理部115が設けられている。
データ受信部101は、図2の通信部60に対応し、ネットワーク(ネットワーク21、ホームネットワーク22(図1))を介して送信されてくるデータを受信し、主制御部103に供給する。例えば、データ受信部101は、図1のデジタルテレビジョン受像機14からホームネットワーク22を介して供給されてきたコンテンツを受信し、これを主制御部103に供給する。
操作受付部102は、図2の入力部56に対応し、ユーザからの操作入力を受け付け、ユーザの操作入力に基づく制御信号(ユーザの指令に基づく信号)を、主制御部103に供給する。
主制御部103は、操作受付部102から供給される制御信号に基づいて、パーソナルコンピュータ11の各部を制御する。
記憶部104は、図2の記憶部59またはリムーバブルメディア91に対応し、コンテンツなどの各種のデータを記憶する。
デコード処理部105は、所定の形式でエンコードされているコンテンツを、エンコードの形式に対応する形式でデコードする。例えば、デコード処理部105は、コンテンツがMPEGの規格に基づいてエンコードされていた場合、コンテンツをMPEGの規格に基づいてデコードする。
耐タンパモジュール106は、耐タンパ性のあるセキュアなモジュールであり、その内部で保持あるいは処理されるデータが、主制御部103などの正規の手段以外の外部の手段によって取得され、あるいは改変されることを防止するようになっている。このようにセキュアな耐タンパモジュール106において、後述する暗号化処理、復号処理、またはライセンス処理などが実行される。
データ出力部107は、主制御部103からの制御に基づいて、データを出力する。例えば、データ出力部107は、コンテンツを出力し、図2の表示部57に画像を表示させたり、スピーカ58に音声を出力させる。
暗号化処理部111は、コンテンツを暗号化する暗号化処理を実行する。暗号化処理部111は、例えば、AES(Advanced Encryption Standard)やDES(Data Encryption Standard)の暗号化方式で、コンテンツを暗号化する。暗号化処理部111の詳細は、図4を参照して後述する。
復号処理部112は、暗号化されているコンテンツを復号する復号処理を実行する。復号処理部112は、例えば、暗号化処理部111により暗号化されたコンテンツを、暗号化処理部111での暗号化方式に対応する方式で復号する。復号処理部112の詳細は、図8を参照して後述する。
分割処理部113は、コンテンツを分割する分割処理を実行する。分割処理については、図10を参照して後述する。
結合処理部114は、コンテンツを結合する結合処理を実行する。例えば、結合処理部114は、分割処理部113により分割されたコンテンツを結合する。結合処理については、図12を参照して後述する。
ライセンス処理部115は、コンテンツのライセンスに関するライセンス処理を実行する。例えば、ライセンス処理部115は、暗号化処理部111がコンテンツを暗号化する際に、コンテンツを復号することが許可されていることを示す復号許可情報などを有するライセンスデータを生成する。また、ライセンス処理部115は、例えば、暗号化処理部111によって暗号化されたコンテンツを復号処理部112が復号する際に、コンテンツに対するライセンスデータに基づいて、コンテンツを復号することが許可されているか否かの判定を行う。
ここで、例えば、パーソナルコンピュータ11が、図1のデジタルテレビジョン受像機14からホームネットワーク22を介して送信されてくるコンテンツを受信し、記憶部104に記憶するまでの処理の概略的な流れを説明する。
なお、デジタルテレビジョン受像機14からパーソナルコンピュータ11には、コンテンツが、MPEG2-TSの形で送信されてくるようになっている。また、そのMPEG2-TSを構成する各TSパケットは、ホームネットワーク22上における不正なコピーを防止するために、DTCP/IPの規定に基づいて暗号化されている。
パーソナルコンピュータ11は、データ受信部101によって、デジタルテレビジョン受像機14から送信されてくる、コンテンツやPMTなどがペイロードに含まれるTSパケットを受信する。デジタルテレビジョン受像機14から送信されてくるTSパケットは、上述したように、DTCP/IPの規定に基づいて暗号化されているので、データ受信部101は、そのTSパケットをDTCP/IPの規定に基づいて復号し、再度、データ受信部101独自の暗号化方式によってTSパケットを暗号化して、主制御部103に供給する。
ここで、データ受信部101において、TSパケットを暗号化して主制御部103に供給するのは、データ受信部101と主制御部103との間の伝送路上での盗聴を防止するためである。
主制御部103は、データ受信部101から供給されたTSパケットを耐タンパモジュール106に供給する。
耐タンパモジュール106では、暗号化処理部111が、データ受信部101によって暗号化されたTSパケットを復号し、データ受信部101による暗号化方式よりも、よりセキュア(強固)な暗号化方式によってTSパケットを暗号化(この暗号化の処理(暗号化処理)については、図7を参照して後述する)し、暗号化TSパケットを生成する。
ここで、データ受信部101は、例えば、1のコンテンツ(を含む一連のTSパケット)の全体を1の暗号鍵で暗号化する。従って、データ受信部101によって暗号化されたTSパケットを、そのまま記憶部104に記憶させた場合、コンテンツの暗号化に用いられた1の暗号鍵が盗まれてしまうと、そのコンテンツ全体が不正に利用されてしまう。そこで、暗号化処理部111は、例えば、1のコンテンツを複数の暗号鍵で暗号化する。これにより、よりセキュアにコンテンツを暗号化することができる。
一方、ライセンス処理部115は、暗号化処理部111によって暗号化されたTSパケット(暗号化TSパケット)にペイロードとして含まれるコンテンツに対する、後述するライセンスデータを生成する。
暗号化TSパケットとライセンスデータとは、耐タンパモジュール106から主制御部103を介して記憶部104に供給されて記憶される。
次に、図4は、図3の暗号化処理部111およびライセンス処理部115の詳細な機能的構成例を示すブロック図である。
暗号化処理部111には、復号部121、タイムスタンプ付加部122、コンテンツ鍵生成部123、Seed生成部124、グループ鍵生成部125、暗号化部126、データ付加部127、および暗号化コンテンツ出力部128が設けられている。ライセンス処理部115には、秘密鍵保持部131および電子署名処理部132が設けられている。
また、暗号化処理部111とライセンス処理部115とは、耐タンパモジュール106の内部で互いに接続されており、図4において、復号部121、コンテンツ鍵生成部123、Seed生成部124、および暗号化コンテンツ出力部128が、ライセンス処理部115に接続されている。
復号部121には、コンテンツを構成するTSパケット(コンテンツがペイロードに含まれるTSパケット)が、主制御部103から供給される。TSパケットは、データ受信部101独自の暗号化方式によって暗号化されており、復号部121とデータ受信部101とは、共通する暗号鍵を保持している。復号部121は、この暗号鍵を使用して、データ受信部101によって暗号化されたTSパケットを復号し、平文のTSパケットを、タイムスタンプ付加部122、コンテンツ鍵生成部123、Seed生成部124、およびライセンス処理部115に供給する。
タイムスタンプ付加部122は、復号部121から供給される平文のTSパケットにタイムスタンプを付加し、暗号化部126に供給する。また、タイムスタンプ付加部122は、TSパケットに付加したタイムスタンプと同一のタイムスタンプを、データ付加部127に供給する。タイムスタンプとしては、例えば、データ受信部101がTSパケットを受信した24時間計算の時刻や、DTCP/IPの規格に基づくタイムスタンプを用いることができる。なお、タイムスタンプは、コンテンツのシークポイントを検索するとき等に利用される。
コンテンツ鍵生成部123は、例えば、内蔵する乱数発生器(図示せず)を用いて、コンテンツ鍵Kcを生成する。コンテンツ鍵Kcは、1つのコンテンツを構成する一連のTSパケットを暗号化するときに、その一連のTSパケットに共通して使用される。例えば、コンテンツ鍵生成部123は、あるコンテンツに対しては、あるコンテンツ鍵Kcを生成し、他のコンテンツに対しては、他のコンテンツ鍵Kc’を生成する。コンテンツ鍵生成部123は、コンテンツ鍵Kcをグループ鍵生成部125およびライセンス処理部115に供給する。
Seed生成部124は、1以上のTSパケットからなるグループごとに、1つのSeed(後述するグループ鍵Kbの基となる種情報)を生成する。例えば、Seed生成部124は、復号部121から供給されるTSパケットに基づいて、1GOP(Group of Pictures)分のTSパケットごとに異なるSeed、即ち、1GOPに対して1つのSeedを生成する。
なお、Seed生成部124の内部には、例えば、カウンタ(図示せず)が設けられており、Seed生成部124は、コンテンツの先頭のGOPの先頭のTSパケットが復号部121から供給されたときに、カウンタの値を、初期値としての、例えば、1にリセットし、以下、次のGOPの先頭のTSパケットが復号部121から供給されるごとに、カウンタの値を1ずつインクリメントして、その値(カウント値)を、Seedとする。Seed生成部124は、Seedをグループ鍵生成部125、データ付加部127、およびライセンス処理部115に供給する。
グループ鍵生成部125は、コンテンツ鍵生成部123から供給されたコンテンツ鍵Kcと、Seed生成部124から供給されたSeedとを用いて、そのSeedに対応するGOPの各TSパケットを暗号化するのに用いられる暗号鍵としてのグループ鍵Kbを生成する。例えば、グループ鍵生成部125は、AESやDESの暗号化方式を用いて、Seedをコンテンツ鍵Kcで暗号化することによって、グループ鍵Kbを生成する。このように、Seedはグループ鍵Kbを生成する基(種)となる種情報である。
ここで、上述したように、Seed生成部124では、1GOPごとに値が1ずつインクリメントされたSeed、つまり、1GOPごとに異なるSeedが生成されるので、グループ鍵生成部125では、1GOPごとに異なるグループ鍵Kbが生成される。グループ鍵生成部125は、グループ鍵Kbを、暗号化部126に供給する。
暗号化部126には、タイムスタンプが付加されたTSパケットがタイムスタンプ付加部122から供給されるとともに、グループ鍵Kbがグループ鍵生成部125から供給される。暗号化部126は、タイムスタンプが付加されたTSパケットを、グループ鍵生成部125から供給されるグループ鍵Kbを用いて暗号化し、その暗号化によって得られる暗号化TSパケットをデータ付加部127に供給する。即ち、暗号化部126は、TSパケットのTSヘッダとペイロードとの全体、さらには、そのTSパケットに付加されたタイムスタンプを暗号化する。例えば、暗号化部126は、AES-CBC-PLUSの暗号化方式で、TSパケットを暗号化する。
なお、上述したように、グループ鍵生成部125では1GOPごとに異なるグループ鍵Kbが生成されるので、暗号化部126では、1GOPごとに異なるグループ鍵KbでTSパケットが暗号化される。即ち、暗号化部126は、MPEG2方式においてシークが可能な単位であるGOPごとに、暗号鍵を変更して、TSパケットを暗号化する。
データ付加部127は、暗号化部126から供給される暗号化TSパケットに、Seed生成部124から供給される、その暗号化TSパケットのGOP(暗号化TSパケットにペイロードとして含まれるコンテンツが属するGOP)に対して生成されたSeedを付加する。さらに、データ付加部127は、タイムスタンプ付加部122から供給されるタイムスタンプに基づき、暗号化部126からの暗号化TSパケットにタイムスタンプ付加部122が付加したのと同一のタイムスタンプを、暗号化TSパケットに対して付加する。
データ付加部127は、暗号化部126から供給される暗号化TSパケットに、Seedおよびタイムスタンプを付加したデータ(以下、暗号化データという)を、暗号化コンテンツ出力部128に供給する。
暗号化コンテンツ出力部128は、データ付加部127から供給された暗号化データと、ライセンス処理部115から供給されたライセンスデータとから構成される暗号化コンテンツファイルを出力する。この暗号化コンテンツファイルは、図3の主制御部103を介して記憶部104に供給され、記憶部104に記憶される。
ライセンス処理部115は、復号部121から供給された平文のコンテンツのTSパケット、コンテンツ鍵生成部123から供給されたコンテンツ鍵Kc、およびSeed生成部124から供給されたSeedを用いて、コンテンツのライセンスに関する情報からなるライセンスデータを生成する処理を実行する。ライセンスデータは、コピー制御情報などのコンテンツの利用条件に関する利用条件情報、コンテンツ鍵Kc、および復号許可情報を有する(含む)。
利用条件情報は、例えば、ライセンス処理部115によって、平文のコンテンツのTSパケットから、そのコンテンツに対するコピー制御情報(を含むPMT)が読み出されて生成される。また、例えば、図1の配信サーバ12からパーソナルコンピュータ11に対して、コンテンツの再生回数や、分割の可否などのライセンスに関する情報が供給されているとき、利用条件情報には、それらの情報も含められる。
復号許可情報は、復号をすることが許可されている暗号化TSパケットに付加されたSeedを示し、Seed生成部124から供給されるSeedに基づいて生成される。ある暗号化TSパケットを復号する際に、その暗号化TSパケットに付加されたSeedが、復号許可情報に示されていれば、その暗号化TSパケットが復号される。
ここで、上述したように、Seed生成部124は、GOPごとにカウンタの値を1ずつインクリメントして、その値(カウント値)をSeedとしているので、Seedは昇順の整数値になっている。従って、あるコンテンツをペイロードとして含む一連の暗号化TSパケットについては、復号をすることが許可されている(ライセンスの有効な)暗号化TSパケットに付加されているSeedは、先頭の暗号化TSパケットに付加されているSeedから、最後の暗号化TSパケットに付加されているSeedまでの、Seedの範囲によって表すことができる。
そこで、復号許可情報としては、例えば、復号をすることが許可されている一連の暗号化TSパケットの先頭の暗号化TSパケットに付加されているSeed(以下、適宜、先頭Seedという)と、最後の暗号化TSパケットに付加されているSeed(以下、適宜、最後Seedという)を採用することができる。また、復号許可情報としては、例えば、先頭Seedまたは最後Seedのうちのいずれか一方と、最後Seedから先頭Seedを減算した値とを採用することができる。
なお、Seedとしては、昇順の整数値を採用する他、例えば、降順の整数値を採用することができる。Seedとして、降順の整数値を採用する場合にも、昇順のSeedを採用する場合と同様に、先頭Seedと最後Seed等を、復号許可情報として用いることができる。
また、Seedとしては、昇順の整数値や降順の整数値などの、いわば規則性がある情報の他、例えば、乱数や、任意の文字列などの、規則性がない情報を採用することができる。但し、Seedとして、規則性がない情報を採用する場合には、復号許可情報としては、復号をすることが許可されている一連の暗号化TSパケットに付加されているSeedのすべてを羅列する必要がある。
ライセンス処理部115は、利用条件情報、コンテンツ鍵Kc、および復号許可情報からなるライセンスデータを生成すると、そのライセンスデータに対して、電子署名処理部132によって電子署名を生成する。さらに、ライセンス処理部115は、秘密鍵保持部131が保持する秘密鍵によってライセンスデータを暗号化し、電子署名を付加して、その電子署名付きのライセンスデータを、暗号化コンテンツ出力部128に供給する。
以上のように、ライセンスデータは暗号化され、さらに、電子署名が付加されているので、ライセンスデータが改竄されることを防止することができる。
次に、図5は、図4のデータ付加部127が出力する暗号化データの一構成例を示している。
暗号化データ141は、その先頭から、タイムスタンプ142(4bytes)、Seed143(4bytes)、リザーブ情報144(8bytes)、タイムスタンプ145(4bytes)、TSヘッダ146(4bytes)、およびペイロード147(184bytes)が順次配置されて構成されている。
暗号化データ141において、タイムスタンプ142、Seed143、リザーブ情報144は、図4のデータ付加部127で、暗号化TSパケットに付加される。また、タイムスタンプ145、TSヘッダ146、およびペイロード147が、暗号化部126によって暗号化された暗号化TSパケットを構成している。なお、リザーブ情報144は、将来の拡張用の情報である。
ここで、暗号化部126がTSパケットの暗号化に用いるAESは、データを16bytesごとのブロックに分割して暗号化するブロック暗号化方式であり、AESで暗号化されるデータのデータ長は16bytesの倍数である必要がある。図5に示すように、暗号化データ141の暗号化TSパケットは、タイムスタンプ145が付加されたTSパケット(TSヘッダ146およびペイロード147)を暗号化したものであり、そのデータ長は、192bytesで、16bytesの倍数になっている。
即ち、TSパケットは、4bytesのTSヘッダと184bytesのペイロードとからなる188bytesの固定長のパケットであり、本実施の形態においては、TSパケットに、4bytesのタイムスタンプを付加することで、暗号化部126での暗号化の対象を、16bytesの倍数である192bytesのデータとしている。なお、TSパケットには、タイムスタンプ以外のパディング用のデータ等を付加して、16bytesの倍数のデータ長のデータとしてもよい。
次に、図6は、図4の暗号化コンテンツ出力部128が出力する暗号化コンテンツファイルの一構成例を示している。
図6において、暗号化コンテンツファイルは、暗号化データ1411−1乃至1411−N1、暗号化データ1412−1乃至1412−N2、・・・、暗号化データ1415−1乃至1415−N5と、ライセンスデータ152とから構成されている。なお、暗号化データ1411−1乃至1415−N5のそれぞれは、図5に示したように構成されるが、図6では、Seedと暗号化TSパケット以外の部分の図示は省略してある。
また、上述したように、Seed生成部124は、1GOPごとにSeedを生成しており、暗号化データ141j−1乃至141j−Nj(図6では、j=1,2,3,4,5)は、1GOP分のコンテンツをペイロードに含むTSパケットが暗号化された暗号化TSパケットからなる。従って、暗号化データ1411−1乃至1411−N1、暗号化データ1412−1乃至1412−N2,・・・,暗号化データ1415−1乃至1415−N5では、それぞれSeedが異なる値になっている。
即ち、暗号化データ1411−1乃至1411−N1は、コンテンツの、ある1GOPのデータをペイロードに含むTSパケットが暗号化された暗号化TSパケットを含み、その暗号化TSパケットに付加されたSeedは1となっている。暗号化データ1412−1乃至1412−N2は、コンテンツの次の1GOPのデータをペイロードに含むTSパケットが暗号化された暗号化TSパケットを含み、その暗号化TSパケットに付加されたSeedは2となっている。以下、同様に、暗号化データ1413−1乃至1413−N3に含まれる暗号化TSパケットに付加されたSeedは3に、暗号化データ1414−1乃至1414−N4に含まれる暗号化TSパケットに付加されたSeedは4に、暗号化データ1415−1乃至1415−N5に含まれる暗号化TSパケットに付加されたSeedは5に、それぞれなっている。
ライセンスデータ152は、復号許可情報、コンテンツ鍵Kc、および利用条件情報に、電子署名が付加されて構成される。図6において、復号許可情報は、1乃至5となっており、従って、ライセンスデータ152に基づいて暗号化コンテンツファイルを復号する処理において、1乃至5のSeedが付加された暗号化データ1411−1乃至1415−N5の暗号化TSパケットを復号することが許可されている。
次に、図7は、コンテンツを暗号化する暗号化処理を説明するフローチャートである。
ステップS11において、図4の復号部121は、図3のデータ受信部101独自の暗号化方式によって暗号化されているTSパケットを受信し、復号する。復号部121は、平文のTSパケットを、タイムスタンプ付加部122、コンテンツ鍵生成部123、Seed生成部124、およびライセンス処理部115に供給し、ステップS12に進む。
ステップS12において、コンテンツ鍵生成部123は、復号部121から供給された平文のTSパケットに基づいて、コンテンツ鍵Kcを生成するか否かを判定する。コンテンツ鍵Kcは、1つのコンテンツで共有される鍵であり、コンテンツ鍵生成部123は、コンテンツを構成する最初のTSパケットが供給されると、コンテンツ鍵Kcを生成すると判定する。
ステップS12において、コンテンツ鍵生成部123が、コンテンツ鍵Kcを生成すると判定した場合、ステップS13に進み、コンテンツ鍵生成部123は、コンテンツ鍵Kcを生成し、グループ鍵生成部125およびライセンス処理部115に供給して、ステップS14に進む。
ステップS14において、Seed生成部124は、値が1のSeedを生成する。即ち、Seed生成部124は、Seedの値を初期化し、Seed=1をセットする。Seed生成部124は、生成したSeedを、グループ鍵生成部125、データ付加部127、およびライセンス処理部115に供給し、ステップS15に進む。
ステップS15において、グループ鍵生成部125は、Seed生成部124から供給されたSeedを、コンテンツ鍵生成部123から供給されたコンテンツ鍵Kcで暗号化することで、グループ鍵Kbを生成する。具体的には、グループ鍵生成部125は、E(Kc,Seed)を演算する。ここで、E(Kc,Seed)は、SeedをKcで暗号化することを意味する。すなわち、Kb=E(Kc,Seed)とされる。
グループ鍵生成部125は、グループ鍵Kbを暗号化部126に供給して、ステップS15からステップS16に進む。
ステップS16において、タイムスタンプ付加部122は、復号部121から供給される平文のTSパケットにタイムスタンプを付加し、暗号化部126に供給する。
暗号化部126は、タイムスタンプ付加部122からタイムスタンプ付きのTSパケットが供給されると、ステップS17において、グループ鍵生成部125から供給されたグループ鍵Kbで、タイムスタンプ付きのTSパケットを暗号化し、その結果得られる暗号化TSパケットをデータ付加部127に供給する。即ち、暗号化部126は、図5に示すように、タイムスタンプ145、TSヘッダ146、およびペイロード147を暗号化する。
ステップS17の処理後、ステップS18において、データ付加部127は、暗号化部126から供給される暗号化TSパケットに、Seed生成部124から供給されるSeed、タイムスタンプ付加部122から供給されるタイムスタンプ、およびリザーブ情報を付加し、その結果得られる暗号化データを、暗号化コンテンツ出力部128に供給する。即ち、タイムスタンプ付加部122は、図5に示すような暗号化データ141を得て、暗号化コンテンツ出力部128に供給する。
ステップS19において、復号部121は、次のTSパケットが供給されているか否かを判定し、次のTSパケットが供給されていると判定した場合、ステップS11に戻り、復号部121は、データ受信部101独自の暗号化方式によって暗号化されているTSパケットを復号し、タイムスタンプ付加部122、コンテンツ鍵生成部123、Seed生成部124、およびライセンス処理部115に供給して、ステップS12に進む。
ここで、復号部121が復号したTSパケットが、コンテンツを構成する最初のTSパケットではない場合、ステップS12において、コンテンツ鍵生成部123は、コンテンツ鍵Kcを生成しないと判定し、ステップS20に進む。
ステップS20において、Seed生成部124は、復号部121から供給された平文のTSパケットに基づいて、Seedのカウントアップが必要か否かを判定する。ここでは、Seedとして、1GOPごとに1ずつインクリメントされる整数値を採用しており、GOPが変わると、Seed生成部124は、Seedのカウントアップが必要であると判定する。具体的には、Seed生成部124は、復号部121から供給された平文のTSパケットがGOPの先頭のTSパケットである場合、Seedのカウントアップが必要であると判定する。
ステップS20において、Seed生成部124が、Seedのカウントアップが必要であると判定した場合、ステップS21に進み、Seed生成部124は、現在のSeedを1だけインクリメント(Seed=Seed+1を演算してセット)することにより新たなSeedを生成し、グループ鍵生成部125、データ付加部127、およびライセンス処理部115に供給して、ステップS15に進む。
ステップS15において、グループ鍵生成部125は、Seed生成部124から新しく供給されたSeedを用いて、上述したようにグループ鍵Kbを生成する。従って、前回のステップS15で生成したグループ鍵Kbと異なる新たなグループ鍵Kbが生成される。
グループ鍵生成部125において生成された新たなグループ鍵Kbは、暗号化部126に供給され、ステップS15からステップS16に進み、以下、上述した処理が行われる。従って、暗号化部126では、復号部121からタイムスタンプ付加部122を介して供給される、GOPを構成するTSパケットが、新たなグループ鍵Kbを用いて暗号化される。
一方、ステップS20において、Seed生成部124が、Seedのカウントアップが必要でないと判定した場合、即ち、GOPが変わっていない場合、ステップS16に進み、以下、同様の処理が繰り返される。
そして、1のコンテンツを構成する全てのTSパケットが暗号化され、次のTSパケットが復号部121に供給されなくなると、ステップS19において、復号部121に、次のTSパケットが供給されていないと判定され、ステップS22に進む。
ステップS22において、ライセンス処理部115は、利用条件情報、コンテンツ鍵Kc、および復号許可情報を有するライセンスデータを生成し、暗号化コンテンツ出力部128に供給する。
即ち、ライセンス処理部115は、復号部121から供給されたコンテンツのTSパケットからPMTを得て、そのPMTに含まれるコピー制御情報に基づき、利用条件情報を生成する。また、図1の配信サーバ12から、コンテンツに対する再生回数や、分割の可否などのライセンスに関する情報が、ライセンス処理部115に供給されているとき、ライセンス処理部115は、それらの情報を有する利用条件情報を生成する。また、ライセンス処理部115は、Seed生成部124から供給されるSeedに基づいて、先頭Seedと最後Seedを認識し、その先頭Seedと最後Seedを復号許可情報とする。
さらに、ライセンス処理部115は、利用条件情報、復号許可情報、並びに、コンテンツ鍵生成部123から供給されたコンテンツ鍵Kcをライセンスデータとして、そのライセンスデータに対して、電子署名処理部132によって電子署名を生成する。そして、ライセンス処理部115は、ライセンスデータを、秘密鍵保持部131が保持する秘密鍵によって暗号化し、電子署名を付加して、暗号化コンテンツ出力部128に供給する。
ステップS22の処理後、ステップS23に進み、暗号化コンテンツ出力部128は、データ付加部127から供給された、コンテンツについての一連の暗号化データと、そのコンテンツに対して、ライセンス処理部115から供給されたライセンスデータとから構成される暗号化コンテンツファイルを出力する。暗号化コンテンツ出力部128から出力された暗号化コンテンツファイルは、図3の主制御部103を介して、記憶部104に供給されて記憶される。
図7の暗号化処理により、コンテンツの不正なコピーをより強固に防止することができる。即ち、ステップS17において、TSパケットのTSヘッダとペイロードの全体を暗号化するので、TSヘッダに含まれるPIDから、PMTを含むTSパケットを推測することが防止される。これにより、PMTを含むTSパケットを欠落させることにより、コピー制御情報によるコピーの制限を不正に回避することを防止することができる。
なお、TSパケットは固定長であり、暗号化TSパケット、さらには、暗号化データ(図5)も固定長であるから、TSパケットのTSヘッダが暗号化されていても、TSパケットの先頭から終わりまでの範囲(位置)を、容易に認識して、TSパケットを復号することができる。
一方、暗号化の対象のパケットが可変長のパケットである場合、一般に、そのパケットのパケット長(あるいはペイロードの長さ)が、パケットヘッダに含められる。従って、可変長のパケットについては、パケットヘッダとペイロードとの全体を暗号化した場合、パケットを復号しないと、パケットヘッダに含まれるパケット長を参照することができないため、パケットの先頭から終わりまでの範囲を認識することが困難となり、その結果、パケットを復号することも困難となる。よって、可変長のパケットについては、パケットヘッダを暗号化しないか、あるいは、パケットヘッダを暗号化する場合には、パケットヘッダの位置を表すデータを付加しておく必要がある。
また、暗号化処理により、コンテンツをよりセキュアに暗号化することができる。即ち、コンテンツ鍵KcとGOPごとに異なるSeedとを用いてグループ鍵Kbを生成し、GOPごとに異なるグループ鍵Kbを用いてTSパケットを暗号化するので、例えば、1のコンテンツを1の暗号鍵で暗号化する場合より、セキュアに暗号化することができる。
即ち、仮に、記憶部104に記憶されている暗号化コンテンツファイルのライセンスデータからコンテンツ鍵Kcが盗まれたとしても、コンテンツ鍵KcとSeedからグループ鍵Kbを生成する方法が分からなければ、グループ鍵Kbを得て暗号化TSパケットを復号することができないので、コンテンツの不正な利用を強固に防止することができる。
次に、図8は、図3の復号処理部112およびライセンス処理部115の詳細な機能的構成例を示すブロック図である。
復号処理部112には、暗号化コンテンツ受信部161、Seed取得部162、グループ鍵生成部163、および復号部164が設けられている。
また、復号処理部112とライセンス処理部115とは、耐タンパモジュール106の内部で互いに接続されており、図8において、暗号化コンテンツ受信部161、Seed取得部162、およびグループ鍵生成部163が、ライセンス処理部115に接続されている。
暗号化コンテンツ受信部161には、記憶部104(図3)に記憶されている暗号化コンテンツファイルが、主制御部103を介して供給される。暗号化コンテンツファイルは、例えば、図6に示すように、暗号化データ1411−1乃至1415−N5と、ライセンスデータ152とから構成される。
暗号化コンテンツ受信部161は、主制御部103から供給される暗号化コンテンツファイルを受信して、その暗号化コンテンツファイルに含まれるライセンスデータ152をライセンス処理部115に供給するとともに、その暗号化コンテンツファイルに含まれる暗号化データを、順次、Seed取得部162および復号部164に供給する。
Seed取得部162は、暗号化コンテンツ受信部161から供給される暗号化データに含まれるSeedを取得(抽出)し、ライセンス処理部115に供給する。
グループ鍵生成部163は、ライセンス処理部115から後述するようにして供給されるSeedおよびコンテンツ鍵Kcを用い、図4のグループ鍵生成部125と同様にして、グループ鍵Kbを生成して、復号部164に供給する。
復号部164は、暗号化コンテンツ受信部161から供給される暗号化データに含まれる暗号化TSパケットを、グループ鍵生成部163から供給されるグループ鍵Kbで復号し、平文のTSパケットを出力する。例えば、このTSパケットは、図3の主制御部103を介してデコード処理部105に供給されてデコードされ、その後、主制御部103を介して、データ出力部107から出力され、再生される。
なお、図8において、ライセンス処理部115は、暗号化コンテンツ受信部161から供給されるライセンスデータに基づいて、コンテンツのライセンスに関するライセンス処理を実行する。なお、暗号化コンテンツ受信部161からライセンス処理部115に供給されるライセンスデータは、上述したように、ライセンス処理部115の秘密鍵保持部131が保持する秘密鍵で暗号化されている。
ライセンス処理部115は、秘密鍵保持部131が保持する秘密鍵で、暗号化コンテンツ受信部161からのライセンスデータ152を復号するとともに、電子署名処理部132により、ライセンスデータに付加されている電子署名の検証を行う。また、ライセンス処理部115は、Seed取得部162から供給されるSeedが、暗号化コンテンツ受信部161からのライセンスデータに含まれる復号許可情報に含まれているか否かの判定を行い、Seed取得部162からのSeedが復号許可情報(が示すSeedの範囲)に含まれている場合、Seed取得部162からのSeed、および暗号化コンテンツ受信部161からのライセンスデータに含まれるコンテンツ鍵Kcをグループ鍵生成部163に供給する。
次に、図9は、暗号化コンテンツファイルを復号し、再生する復号処理を説明するフローチャートである。なお、復号処理は、図3の操作受付部102において、記憶部104に記憶されているコンテンツの再生を指令するユーザによる操作入力が受け付けられると開始される。
図8の暗号化コンテンツ受信部161には、図3の記憶部104から主制御部103を介して、暗号化コンテンツファイルが供給される。
暗号化コンテンツ受信部161は、ステップS31において、暗号化コンテンツファイルを受信する。暗号化コンテンツ受信部161が受信した暗号化コンテンツファイルが、例えば、図6に示したように、暗号化データ1411−1乃至1415−N5と、ライセンスデータ152とから構成される場合、暗号化コンテンツ受信部161は、その暗号化コンテンツファイル(図6)のライセンスデータ152をライセンス処理部115に供給して、ステップS32に進む。
ステップS32において、ライセンス処理部115は、暗号化コンテンツ受信部161から供給されたライセンスデータ152を復号する。即ち、ライセンスデータ152は、上述したように、ライセンス処理部115の秘密鍵保持部131が保持する秘密鍵で暗号化されているので、ライセンス処理部115は、その秘密鍵でライセンスデータ152を復号する。さらに、ライセンス処理部115は、電子署名処理部132により、ライセンスデータ152に付加されている電子署名の検証を行い、復号許可情報、コンテンツ鍵Kc、利用条件情報を取得する。
なお、電子署名の検証の結果、ライセンスデータの改竄などが行われていることが分かった場合には、処理を終了する。
ステップS33において、暗号化コンテンツ受信部161は、暗号化データ1411−1乃至1415−N5のうちの最初の暗号化データ1411−1を、Seed取得部162および復号部164に供給し、以下、暗号化コンテンツ受信部161は、ステップS33において、暗号化データ1411−2,暗号化データ1411−3,・・・,暗号化データ1415−1乃至1415−N5の順に、暗号化データを、Seed取得部162および復号部164に供給する。
Seed取得部162は、ステップS34において、暗号化コンテンツ受信部161から供給される暗号化データからSeedを取得し、ライセンス処理部115に供給して、ステップS35に進む。ステップS35では、ライセンス処理部115は、Seed取得部162から供給されたSeedが、復号許可情報に示されているか否か、即ち、復号をすることが許可されている暗号化TSパケットに付加されたSeedの範囲に含まれているか否かを判定する。
ステップS35において、Seed取得部162からのSeedが復号許可情報に示されていないと判定された場合、ステップS36に進み、ライセンス処理部115は、暗号化TSパケットを復号することが許可されてない旨を、図3の主制御部103に通知する。主制御部103は、その旨のメッセージなどを表示してユーザに通知するように制御するエラー処理を実行し、処理を終了する。
一方、ステップS35において、Seed取得部162からのSeedが復号許可情報に示されていると判定された場合、ライセンス処理部115は、そのSeedと、ライセンスデータ中のコンテンツ鍵Kcとをグループ鍵生成部163に供給し、ステップS37に進む。
ステップS37において、グループ鍵生成部163は、ライセンス処理部115から供給されるSeedおよびコンテンツ鍵Kcを用いて、グループ鍵Kbを生成する。
グループ鍵生成部163は、グループ鍵Kbを復号部164に供給して、ステップS38に進み、復号部164は、直前のステップS33で暗号化コンテンツ受信部161から供給された暗号化データに含まれる暗号化TSパケット、即ち、グループ鍵生成部163からのグループ鍵Kbを生成するのに用いられたSeedが付加されている暗号化TSパケットを、グループ鍵生成部163からのグループ鍵Kbで復号する。
そして、復号部164は、暗号化TSパケットを復号して得られるTSパケットを、図3の主制御部103を介してデコード処理部105に供給する。デコード処理部105は、復号部164からのTSパケットを、MPEG2の規格に基づいてデコードし、主制御部103を介して、データ出力部107に供給する。データ出力部107は、デコード処理部105によってデコードされたコンテンツを出力し、図2の表示部57に画像を表示させたり、スピーカ58に音声を出力させる。
ステップS38の処理後、ステップS39において、暗号化コンテンツファイルを構成する全ての暗号化TSパケットが復号されたか否か、即ち、暗号化コンテンツ受信部161が暗号化コンテンツファイルに含まれる全ての暗号化データを復号部164に供給したか否かが判定される。ステップS39において、全ての暗号化TSパケットが復号されていなと判定された場合、ステップS33に戻り、処理が繰り返される。
一方、ステップS39において、暗号化コンテンツファイルを構成する全ての暗号化TSパケットが復号されたと判定された場合、処理は終了する。
次に、図10は、図3の分割処理部113およびライセンス処理部115が、暗号化コンテンツファイルを分割する分割処理を説明するフローチャートである。なお、分割処理は、図3の操作受付部102において、記憶部104に記憶されているコンテンツの分割を指令するユーザによる操作入力が受け付けられると開始される。
分割処理部113には、図3の記憶部104に記憶されている暗号化コンテンツファイルが、主制御部103を介して供給される。
分割処理部113は、ステップS51において、暗号化コンテンツファイルを受信し、その暗号化コンテンツファイルに含まれるライセンスデータをライセンス処理部115に供給して、ステップS52に進む。
ステップS52において、ライセンス処理部115は、上述したようにライセンスデータを復号し、暗号化コンテンツファイルが分割可能であるか否かを判定する。具体的には、上述した図7のステップS22の処理で、分割の可否を含むデータを有する利用条件情報が生成されるので、ライセンス処理部115は、ライセンスデータに含まれる利用条件情報に基づいて、暗号化コンテンツファイルが分割可能であるか否かを判定する。
ステップS52において、暗号化コンテンツファイルが分割可能であると判定された場合、ステップS53に進み、分割処理部113は、暗号化コンテンツファイルを分割する。暗号化コンテンツファイルの分割の例を、図6および図11を参照して説明する。
分割処理部113は、ユーザによる分割の指令に従って、暗号化コンテンツファイルを分割する。例えば、ユーザによって、暗号化データ1413−N3と暗号化データ1414−1との境界の位置での分割が指令された場合、分割処理部113は、暗号化データ1411−1乃至1415−N5を有する暗号化コンテンツファイルを、図11に示すように、暗号化データ1411−1乃至1413−N3を有する暗号化コンテンツファイル#1と、暗号化データ1414−1乃至1415−N5を有する暗号化コンテンツファイル#2とに分割する。
なお、暗号化コンテンツファイルの分割は、異なるSeedを有するグループの境界でのみ、即ち、本実施の形態では、GOPの境界でのみ行われる。また、ユーザによって指令された位置が、GOPの境界でないときは、例えば、分割処理部113は、ユーザによって指令された位置に最も近いGOPの境界で暗号化コンテンツファイルを分割する。
図10に戻り、ステップS53の処理後、分割処理部113は、分割前のライセンスデータを、ライセンス処理部115に供給して、分割後の暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とのライセンスデータの生成を要求する。ライセンス処理部115は、分割処理部113からの要求を受け、ステップS54において、分割前のライセンスデータに基づき、分割後のライセンスデータを生成する。
即ち、例えば、図6および図11で説明したように、暗号化データ1411−1乃至415−N5を含む元の暗号化コンテンツファイル(図6)が、暗号化データ1411−1乃至1413−N3を含む暗号化コンテンツファイル#1と、暗号化データ1414−1乃至1415−N5を含む暗号化コンテンツファイル#2とに分割された場合(図11)、元の暗号化コンテンツファイル(図6)に含まれるライセンスデータ152の復号許可情報を、暗号化コンテンツファイル#1に対応する復号許可情報と、暗号化コンテンツファイル#2に対応する復号許可情報とに分割する。
具体的には、暗号化コンテンツファイル#1については、元の暗号化コンテンツファイル(図6)に含まれるライセンスデータ152の復号許可情報が示す1乃至5のSeedの範囲が、暗号化コンテンツファイル#1に含まれる暗号化データ1411−1乃至1413−N3の暗号化TSパケットに付加されているSeedの範囲である1乃至3と、暗号化コンテンツファイル#2に含まれる暗号化データ1414−1乃至1415−N5の暗号化TSパケットに付加されているSeedの範囲である4および5とに分割され、これにより、1乃至3のSeedの範囲を示す復号許可情報が、暗号化コンテンツファイル#1に対応する復号許可情報として生成されるとともに、4および5のSeedの範囲を示す復号許可情報が、暗号化コンテンツファイル#2に対応する復号許可情報として生成される。
そして、図11に示すように、元の暗号化コンテンツファイル(図6)に含まれるライセンスデータ152の復号許可情報が、暗号化コンテンツファイル#1に対応する復号許可情報に書き換えられることにより、新たなライセンスデータ152−1が生成されるとともに、元の暗号化コンテンツファイル(図6)に含まれるライセンスデータ152の復号許可情報が、暗号化コンテンツファイル#2に対応する復号許可情報に書き換えられることにより、新たなライセンスデータ152−2が生成される。
ここで、ライセンスデータ152−1と152−2のコンテンツ鍵Kcは、元のライセンスデータ152のコンテンツ鍵Kcと同一になっている。なお、ライセンスデータ152−1や152−2において、コンテンツ鍵Kc’は、元のライセンスデータ152のコンテンツ鍵Kcと異なっていてもよい。但し、その場合、暗号化コンテンツファイル#1に含まれる暗号化データ1411−1乃至1413−N3や、暗号化コンテンツファイル#2に含まれる暗号化データ1414−1乃至1415−N5を、グループ鍵Kbで復号し、その後、コンテンツ鍵Kc’とSeedとに基づいて生成されるグループ鍵Kbによって、再度、暗号化する処理が必要になる。逆に言えば、ライセンスデータ152−1と152−2とで、コンテンツ鍵Kcを、元のライセンスデータに含まれるコンテンツ鍵Kcと同一とすることで、分割処理において、暗号化データを復号し、再度、暗号化する処理を行うことなく暗号化コンテンツファイルを分割することができる。
なお、利用条件情報は、ライセンスデータ152と、ライセンスデータ152−1および152−2とで、変更しないものとする。但し、ライセンスデータ152と、ライセンスデータ152−1や152−2とで、利用条件情報を変更することも可能である。
ライセンス処理部115は、以上のようにして、ライセンスデータ152−1および152−2を生成すると、電子署名処理部132によって電子署名を生成するとともに、ライセンスデータ152−1および152−2のそれぞれを、秘密鍵保持部131が保持する秘密鍵によって暗号化して、電子署名を付加する。このように、新しいライセンスデータ152−1および152−2が生成されると、ライセンス処理部115は、主制御部103に対して、記憶部104に記憶されている分割前のライセンスデータ152の削除を要求し、これにより、記憶部104に記憶されている分割前のライセンスデータ152が削除される。
ライセンス処理部115は、新たなライセンスデータ152−1および152−2を分割処理部113に供給し、分割処理部113において、ライセンスデータ152−1と暗号化データ1411−1乃至1413−N3とを含む暗号化コンテンツファイル#1と、ライセンスデータ152−2と暗号化データ1414−1乃至1415−N5とを含む暗号化コンテンツファイル#2が生成される。これにより、図6の暗号化コンテンツファイルが、図11の暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とに分割される。
ステップS54の処理後、ステップS55において、分割処理部113は、暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とを、主制御部103に供給する。主制御部103は、分割処理部113からの暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とを、記憶部104に記憶させ、処理を終了する。
一方、ステップS52において、暗号化コンテンツファイルが分割可能でないと判定された場合、ステップS56に進み、ライセンス処理部115は、暗号化コンテンツファイルが分割可能でない旨を、図3の主制御部103に通知し、主制御部103は、その旨のメッセージなどを表示してユーザに通知するエラー処理を実行し、処理を終了する。
図10の分割処理により、暗号化コンテンツファイルの分割にあたって、復号許可情報を有するライセンスデータを生成するので、不正なコンテンツの利用を防ぐことができる。例えば、暗号化コンテンツファイル#1に、元の暗号化コンテンツファイルに含まれている暗号化データ1414−1乃至1415−N5が不正に含められたとしても、暗号化コンテンツファイル#1に対するライセンスデータ152−1の有する復号許可情報は1乃至3のSeedの範囲を示すので、暗号化データ1411−1乃至1413−N3は復号されるが、暗号化データ1414−1乃至1415−N5が不正に復号されることが防止される。
次に、図12は、図10の分割処理で分割された暗号化コンテンツファイルを結合する結合処理を説明するフローチャートである。
例えば、記憶部104に、図11に示した暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とが記憶されていて、ユーザにより操作受付部102に対して、記憶部104に記憶されている暗号化コンテンツファイル#1と暗号化コンテンツファイル#2との結合が指令されたとする。
この場合、結合処理部114には、記憶部104に記憶されている暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とが、主制御部103を介して供給される。結合処理部114は、ステップS61において、主制御部103を介して供給される暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とを受信する。
図11に示すように、暗号化コンテンツファイル#1は、暗号化データ1411−1乃至1413−N3と、ライセンスデータ152−1とから構成され、暗号化コンテンツファイル#2は、暗号化データ1414−1乃至1415−N5と、ライセンスデータ152−2とから構成される。結合処理部114は、暗号化コンテンツファイル#1に含まれるライセンスデータ152−1、および暗号化コンテンツファイル#2に含まれる152−2を、結合の要求とともに、ライセンス処理部115に供給し、ステップS62に進む。
ステップS62において、結合処理部114は、暗号化コンテンツファイル#1に含まれる暗号化データ1411−1乃至1413−N3と、暗号化コンテンツファイル#2に含まれる暗号化データ1414−1乃至1415−N5とを、図6に示すように暗号化データ1411−1乃至1415−N5に結合する。このとき、小さいSeedが付加されている暗号化TSパケットを含む暗号化データ1411−1乃至1413−N3の後に、大きいSeedが付加されている暗号化TSパケットを含む暗号化データ1414−1乃至1415−N5が位置するように、暗号化データ1411−1乃至1413−N3と暗号化データ1414−1乃至1415−N5とが結合される。
ステップS62の処理後、ステップS63において、ライセンス処理部115は、結合処理部114からのライセンスデータ152−1および152−2に基づいて、図10で説明した場合とは逆に、暗号化データ1411−1乃至1415−N5を復号することが許可される復号許可情報、即ち、1乃至5のSeedを示す復号許可情報を有するライセンスデータ152を生成する。
また、ライセンス処理部115は、ライセンスデータ152に対して、電子署名処理部132によって電子署名を生成するとともに、ライセンスデータ152を、秘密鍵保持部131が保持する秘密鍵によって暗号化し、電子署名を付加する。このように、ライセンスデータ152が生成されると、ライセンス処理部115は、主制御部103に対して、記憶部104に記憶されている暗号化コンテンツファイル#1と暗号化コンテンツファイル#2の削除を要求し、これにより、記憶部104に記憶されている暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とが削除される。
ライセンス処理部115は、ライセンスデータ152を結合処理部114に供給し、結合処理部114は、ライセンス処理部115からのライセンスデータ152と暗号化データ1411−1乃至1415−N5とを含む暗号化コンテンツファイルを生成する。これにより、図11の暗号化コンテンツファイル#1と暗号化コンテンツファイル#2とが、図6の暗号化コンテンツファイルに結合される。
ステップS64において、結合処理部114は、図6の暗号化コンテンツファイルを主制御部103に供給し、主制御部103は、結合処理部114からの暗号化コンテンツファイルを記憶部104に供給して記憶させ、処理を終了する。
図12の結合処理により、暗号化データを復号し、再度、暗号化するような処理を行うことなく、暗号化コンテンツファイルを結合することができる。
以上においては、固定長のTSパケットで構成されるMPEG2-TSを暗号化の対象としたが、可変長のPES(Packetized Elementary Stream)パケットで構成されるMPEG2-PS(MPEG2-プログラムストリーム)を暗号化の対象とすることができる。
図13は、MPEG2-PSの一構成例を示す図である。まず、図13を参照して、MPEG2-PSの構成について説明する。
MPEG2-PSは、MPEG2方式で符号化されたコンテンツを記録媒体(DVDなど)に記録する際に用いられるフォーマットであり、複数のパック(Pack)201の並びになっている。
パック201は、パックヘッダ202、システムヘッダ203、および1以上のPESパケット204から構成される。なお、MPEG2-PSの先頭以外のパック201は、システムヘッダ203を含まず、それ以外は同様に構成される。
PESパケット204は、PESヘッダ205とペイロードとしてのES(Elementary Stream)206から構成されている。ES206は、可変長であり、その結果、PESパケット204も、可変長のパケットとなる。なお、PESヘッダ205にES206のデータ長が含まれる。
このように構成されるMPEG2-PSにおいて、PESパケット204のES206に対して暗号化を行った場合の実施の形態を図14および15に示す。
図14は、PESパケットを暗号化した暗号化PESパケットの一実施の形態を示す図である。
図14では、ES206の一部が暗号化されている。
暗号化PESパケット210は、PESヘッダ205、Seed212、暗号化ES213、および平文ES214から構成される。
図14では、ES206のうちの一部が暗号化され、暗号化ES213となっており、残りが暗号化されないままの平文ES214になっている。
即ち、ES206を、例えば、AES-CBC-PLUSの暗号化方式で暗号化することとすると、上述したように、AES-CBC-PLUSは、データを16bytesごとのブロックに分割して暗号化するブロック暗号化方式であり、AES-CBC-PLUSで暗号化されるデータのデータ長は16bytesの倍数となる。一方、ES206は、可変長のデータであるので、ES206のデータ長が、必ずしも16bytesの倍数になるとは限らない。
そこで、図14では、ES206のうちの、16bytesの倍数となる最長のデータ長の部分を暗号化し、残りの16bytes以下のデータ長の部分を平文のままになっている。従って、暗号化ES213のデータ長は、16bytesの倍数となっており、平文ES214のデータ長は、16bytes以下となっている。
なお、ES206が16bytesの倍数のデータ長である場合には、平文ES214は存在しない。
また、図14において、PESヘッダ205に含まれるデータ長は、Seed212を含まない値、即ち、ES206のデータ長になっている。PESヘッダ205に含まれるデータ長を、Seed212とES206とをあわせた全体のデータ長とすると、ES206のデータ長が、MPEG2-PSの最大長であるときに、PESヘッダ205に記述することができなくなるからである。
図15は、暗号化PESパケットの他の実施の形態を示す図である。
暗号化PESパケット210’は、PESヘッダ205、Seed212、ES206、およびパディング215で構成され、そのうちのES206とパディング215が、AES-CBC-PLUSで暗号化されている。図15において、パディング215は、AES-CBC-PLUSで暗号化する暗号化の対象のデータを16bytesの倍数にするために、ES206に付加されている。従って、ES206が16bytesの倍数のデータ長である場合は、パディング215は存在しない。
なお、図15において、PESヘッダ205に含まれるデータ長は、Seed212およびパディング215を含まない値、即ち、ES206のデータ長になっている。PESヘッダ205に含まれるデータ長を、Seed212およびパディング215とES206とをあわせた全体のデータ長とすると、ES206のデータ長が、MPEG2-PSの最大長であるときに、PESヘッダ205に記述することができなくなるからである。
このように、ES206を暗号化することで、MPEG2-PSの形式のコンテンツの不正な利用を防止することができる。
なお、本実施の形態においては、Seedとして数(整数値)を用いたが、Seedは、グループ鍵Kbを生成するための種となる情報であれば、数以外の記号などでもよい。
また、グループ鍵生成部125は、Seedをコンテンツ鍵Kcで暗号化することによってグループ鍵Kbを生成する以外の方法で、グループ鍵Kbを生成してもよい。例えば、Seedとコンテンツ鍵Kcとの排他的論理和などの任意の演算をすることで、グループ鍵Kbを生成することができる。
さらに、本実施の形態では、暗号化方式として、いわゆる秘密鍵方式を採用したが、暗号化方式としては、公開鍵方式を採用することが可能である。
また、本実施の形態では、暗号化方式として、AES-CBC-PLUSを採用したが、その他の暗号化方式を採用することが可能である。
さらに、本実施の形態では、暗号化データ(図5)にタイムスタンプや、リザーブ情報を含めるようにしたが、タイムスタンプやリザーブ情報は、なくてもよい。
また、本実施の形態では、固定長のパケットとして、TSパケットを採用したが、固定長のパケットは、TSパケットに限定されるものではない。
さらに、本実施の形態では、GOPごとに、Seedを変更するようにしたが、Seedを変更する単位(グループ)は、GOPである必要はなく、例えば、1フレームや、その他の所定数のフレームであってもよい。
なお、上述のフローチャートを参照して説明した各処理は、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
本発明を適用した情報処理システムの一実施の形態の構成例を示す図である。 図1のパーソナルコンピュータ11のハードウエアの一実施の形態の構成例を示すブロック図である。 図2のパーソナルコンピュータ11の機能的構成例を説明するブロック図である。 図3の暗号化処理部111およびライセンス処理部115の詳細な機能的構成例を示すブロック図である。 暗号化データの一構成例を示す図である。 暗号化コンテンツファイルの一構成例を示す図である。 コンテンツを暗号化する暗号化処理を説明するフローチャートである。 図3の復号処理部112およびライセンス処理部115の詳細な機能的構成例を示すブロック図である。 暗号化コンテンツファイルを復号し、再生する復号処理を説明するフローチャートである。 暗号化コンテンツファイルを分割する分割処理を説明するフローチャートである。 分割された暗号化コンテンツファイルの一構成例を示す図である。 暗号化コンテンツファイルを結合する結合処理を説明するフローチャートである。 MPEG2-PSの一構成例を示す図である。 PESパケットを暗号化した暗号化PESパケットの一実施の形態を示す図である。 暗号化PESパケットの他の実施の形態を示す図である。
符号の説明
11 パーソナルコンピュータ, 101 データ受信部, 102 操作受付部, 103 主制御部, 104 記憶部, 105 デコード処理部, 106 耐タンパモジュール, 107 データ出力部, 111 暗号化処理部, 112 復号処理部, 113 分割処理部, 114 結合処理部, 115 ライセンス処理部, 121 復号部, 122 タイムスタンプ付加部, 123 コンテンツ鍵生成部, 124 Seed生成部, 125 グループ鍵生成部, 126 暗号化部, 127 データ付加部, 128 暗号化コンテンツ出力部, 131 秘密鍵保持部, 132 電子署名処理部, 141 暗号化データ, 142 タイムスタンプ, 143 Seed, 144 リザーブ情報, 145 タイムスタンプ, 146 TSヘッダ, 147 ペイロード, 1411−1乃至1415−N5 暗号化データ, 152 ライセンスデータ, 161 暗号化コンテンツ受信部, 162 Seed取得部, 163 グループ鍵生成部, 164 復号部

Claims (12)

  1. 固定長のパケットによって構成されるストリームを暗号化する暗号化装置において、
    1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成する種情報生成手段と、
    前記種情報に基づいて、前記グループごとに異なる暗号鍵を生成する暗号鍵生成手段と、
    前記パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする暗号化手段と、
    前記パケットの暗号化に用いられた前記暗号鍵を生成する基となった前記種情報を、前記パケットの暗号化パケットに付加する付加手段と
    を備えることを特徴とする暗号化装置。
  2. 復号をすることが許可されている前記暗号化パケットに付加された前記種情報を示す復号許可情報を有するライセンスデータを生成するライセンスデータ生成手段をさらに備える
    ことを特徴とする請求項1に記載の暗号化装置。
  3. 前記暗号化パケットに付加された前記種情報と、前記ライセンスデータとに基づいて、前記暗号化パケットを復号することが許可されているか否かを判定する判定手段と、
    前記判定手段において前記暗号化パケットを復号することが許可されていると判定された場合、前記暗号化パケットに付加されている種情報に基づいて生成される暗号鍵を用いて、前記暗号化パケットを復号する復号手段と
    を備えることを特徴とする請求項2に記載の暗号化装置。
  4. ユーザからの指令に基づいて、前記パケットが前記暗号化パケットに暗号化された前記ストリームを第1と第2の分割ストリームに分割する分割手段をさらに備え、
    前記ライセンスデータ生成手段は、前記ストリームの前記ライセンスデータに基づき、前記第1の分割ストリームを構成するパケットの暗号化パケットに付加されている前記種情報を示す前記復号許可情報を有する第1の分割ライセンスデータと、前記第2の分割ストリームを構成するパケットの暗号化パケットに付加されている前記種情報を示す前記復号許可情報を有する第2の分割ライセンスデータとを生成する
    ことを特徴とする請求項2に記載の暗号化装置。
  5. 前記種情報は、昇順または降順の数値であり、
    前記復号許可情報は、復号することが許可されている前記暗号化パケットのうちの、先頭の暗号化パケットに付加されている前記種情報としての数値から、最後の暗号化パケットに付加されている前記種情報としての数値までの範囲を表す情報である
    ことを特徴とする請求項4に記載の暗号化装置。
  6. 固定長のパケットによって構成されるストリームを暗号化する暗号化装置の暗号化方法において、
    1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成する種情報生成ステップと、
    前記種情報に基づいて、前記グループごとに異なる暗号鍵を生成する暗号鍵生成ステップと、
    前記パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする暗号化ステップと、
    前記パケットの暗号化に用いられた前記暗号鍵を生成する基となった前記種情報を、前記パケットの暗号化パケットに付加する付加ステップと
    を含むことを特徴とする暗号化方法。
  7. 固定長のパケットによって構成されるストリームを暗号化する処理を、コンピュータに実行させるプログラムにおいて、
    1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成する種情報生成ステップと、
    前記種情報に基づいて、前記グループごとに異なる暗号鍵を生成する暗号鍵生成ステップと、
    前記パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化して暗号化パケットにする暗号化ステップと、
    前記パケットの暗号化に用いられた前記暗号鍵を生成する基となった前記種情報を、前記パケットの暗号化パケットに付加する付加ステップと
    を含むことを特徴とするプログラム。
  8. 固定長のパケットによって構成されるストリームの1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成し、
    前記種情報に基づいて、前記グループごとに異なる暗号鍵を生成し、
    前記パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化パケットに暗号化し、
    前記パケットの暗号化に用いられた前記暗号鍵を生成する基となった前記種情報を、そのパケットの暗号化パケットに付加する
    ことにより得られた暗号化ストリームを復号する復号装置において、
    前記暗号化ストリームから前記種情報を取得する種情報取得手段と、
    前記種情報取得手段によって取得された前記種情報と、復号をすることが許可されている前記暗号化パケットに付加された前記種情報を示す復号許可情報を有するライセンスデータとに基づいて、前記暗号化パケットを復号することが許可されているか否かを判定する判定手段と、
    前記判定手段において前記暗号化パケットを復号することが許可されていると判定された場合、前記暗号化パケットに付加されている種情報に基づいて、前記暗号鍵を生成する暗号鍵生成手段と、
    前記暗号鍵を用いて、前記暗号化パケットを復号する復号手段と
    を備えることを特徴とする復号装置。
  9. ユーザからの指令に基づいて、前記パケットが前記暗号化パケットに暗号化された前記ストリームを第1と第2の分割ストリームに分割する分割手段と、
    前記ストリームの前記ライセンスデータに基づき、前記第1の分割ストリームを構成するパケットの暗号化パケットに付加されている前記種情報を示す前記復号許可情報を有する第1の分割ライセンスデータと、前記第2の分割ストリームを構成するパケットの暗号化パケットに付加されている前記種情報を示す前記復号許可情報を有する第2の分割ライセンスデータとを生成するライセンスデータ生成手段と
    をさらに備えることを特徴とする請求項8に記載の復号装置。
  10. 前記種情報は、昇順または降順の数値であり、
    前記復号許可情報は、復号することが許可されている前記暗号化パケットのうちの、先頭の暗号化パケットに付加されている前記種情報としての数値から、最後の暗号化パケットに付加されている前記種情報としての数値までの範囲を表す情報である
    ことを特徴とする請求項9に記載の復号装置。
  11. 固定長のパケットによって構成されるストリームの1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成し、
    前記種情報に基づいて、前記グループごとに異なる暗号鍵を生成し、
    前記パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化パケットに暗号化し、
    前記パケットの暗号化に用いられた前記暗号鍵を生成する基となった前記種情報を、そのパケットの暗号化パケットに付加する
    ことにより得られた暗号化ストリームを復号する復号装置の復号方法において、
    前記暗号化ストリームから前記種情報を取得する種情報取得ステップと、
    前記種情報取得ステップにおいて取得された前記種情報と、復号をすることが許可されている前記暗号化パケットに付加された前記種情報を示す復号許可情報を有するライセンスデータとに基づいて、前記暗号化パケットを復号することが許可されているか否かを判定する判定ステップと、
    前記判定ステップにおいて前記暗号化パケットを復号することが許可されていると判定された場合、前記暗号化パケットに付加されている種情報に基づいて、前記暗号鍵を生成する暗号鍵生成ステップと、
    前記暗号鍵を用いて、前記暗号化パケットを復号する復号ステップと
    を含むことを特徴とする復号方法。
  12. 固定長のパケットによって構成されるストリームの1以上のパケットからなるグループごとに、そのグループに属するパケットを暗号化するのに用いられる暗号鍵を生成する基となる種情報を生成し、
    前記種情報に基づいて、前記グループごとに異なる暗号鍵を生成し、
    前記パケットを構成するヘッダとペイロードの全体を、そのパケットが属するグループに対応する暗号鍵を用いて暗号化パケットに暗号化し、
    前記パケットの暗号化に用いられた前記暗号鍵を生成する基となった前記種情報を、そのパケットの暗号化パケットに付加する
    ことにより得られた暗号化ストリームを復号する処理を、コンピュータに実行させるプログラムにおいて、
    前記暗号化ストリームから前記種情報を取得する種情報取得ステップと、
    前記種情報取得ステップにおいて取得された前記種情報と、復号をすることが許可されている前記暗号化パケットに付加された前記種情報を示す復号許可情報を有するライセンスデータとに基づいて、前記暗号化パケットを復号することが許可されているか否かを判定する判定ステップと、
    前記判定ステップにおいて前記暗号化パケットを復号することが許可されていると判定された場合、前記暗号化パケットに付加されている種情報に基づいて、前記暗号鍵を生成する暗号鍵生成ステップと、
    前記暗号鍵を用いて、前記暗号化パケットを復号する復号ステップと
    を含むことを特徴とするプログラム。
JP2005169093A 2005-06-09 2005-06-09 暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム Pending JP2006345234A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005169093A JP2006345234A (ja) 2005-06-09 2005-06-09 暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005169093A JP2006345234A (ja) 2005-06-09 2005-06-09 暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム

Publications (1)

Publication Number Publication Date
JP2006345234A true JP2006345234A (ja) 2006-12-21

Family

ID=37641853

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005169093A Pending JP2006345234A (ja) 2005-06-09 2005-06-09 暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP2006345234A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008205989A (ja) * 2007-02-22 2008-09-04 Hitachi Ltd コンテンツデータ管理システム及び装置
JP2010524363A (ja) * 2007-04-27 2010-07-15 ジェネラル・インスツルメント・コーポレーション デジタル著作権管理ライセンスフォーマットを構成する方法および装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1070548A (ja) * 1996-08-28 1998-03-10 Oki Electric Ind Co Ltd 情報転送システム、情報蓄積提供装置及び情報被提供装置
JPH1188859A (ja) * 1997-06-24 1999-03-30 Internatl Business Mach Corp <Ibm> コンピュータ・システムにおけるコピーライト・データの保護方法及び装置
JP2001086481A (ja) * 1999-07-13 2001-03-30 Matsushita Electric Ind Co Ltd パケット分離装置、ディジタル信号転送システム、暗号化装置、媒体、および情報集合体
JP2003115830A (ja) * 2001-10-03 2003-04-18 Victor Co Of Japan Ltd 情報記録装置及び情報記録再生装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1070548A (ja) * 1996-08-28 1998-03-10 Oki Electric Ind Co Ltd 情報転送システム、情報蓄積提供装置及び情報被提供装置
JPH1188859A (ja) * 1997-06-24 1999-03-30 Internatl Business Mach Corp <Ibm> コンピュータ・システムにおけるコピーライト・データの保護方法及び装置
JP2001086481A (ja) * 1999-07-13 2001-03-30 Matsushita Electric Ind Co Ltd パケット分離装置、ディジタル信号転送システム、暗号化装置、媒体、および情報集合体
JP2003115830A (ja) * 2001-10-03 2003-04-18 Victor Co Of Japan Ltd 情報記録装置及び情報記録再生装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008205989A (ja) * 2007-02-22 2008-09-04 Hitachi Ltd コンテンツデータ管理システム及び装置
JP2010524363A (ja) * 2007-04-27 2010-07-15 ジェネラル・インスツルメント・コーポレーション デジタル著作権管理ライセンスフォーマットを構成する方法および装置

Similar Documents

Publication Publication Date Title
US7610626B2 (en) Recording medium, recording apparatus, reading apparatus, and program and method therefore
JP4861258B2 (ja) 後に購入し観察するためメディアプログラムを暗号化する方法および装置
US20070124252A1 (en) Reception device, transmission device, security module, and digital right management system
JP4585460B2 (ja) 同一コンテンツから派生した形式の異なるコンテンツを複数個所で同時に利用することを防ぐ記憶装置、システム及び方法
CN101499303B (zh) 记录装置和记录方法
JP4630073B2 (ja) コンテンツ暗号化装置及びそのプログラム
JP2008305465A (ja) コピー制御方法
JP4336131B2 (ja) 記録装置、読出装置、プログラム、方法
US8918909B2 (en) Output control method
US20080226259A1 (en) Recording apparatus, control method, and program
WO2018142985A1 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにプログラム
JP4886831B2 (ja) コンテンツ記録装置、再生装置、編集装置およびその方法
JP2006041570A (ja) 情報処理システム、情報処理装置、情報処理方法、並びにプログラム
JP2006345234A (ja) 暗号化装置および暗号化方法、復号装置および復号方法、並びにプログラム
JP4814615B2 (ja) コンテンツ暗号化装置、その方法およびそのプログラム、ならびに、コンテンツ復号化装置、その方法およびそのプログラム
JP3630406B2 (ja) パケット処理装置、パケット処理方法及びその記憶媒体
WO2016158554A1 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにプログラム
JP5395866B2 (ja) 記録再生システム、記録装置及び再生装置
JP5522644B2 (ja) デジタルコンテンツ送受信システム、および、デジタルコンテンツ送受信方法
US20090310780A1 (en) Broadcast receiving apparatus and broadcast receiving method
JP5236113B2 (ja) デジタルコンテンツ送受信システム、および、デジタルコンテンツ送受信方法
JP5548246B2 (ja) デジタルコンテンツ送受信方法、および、デジタルコンテンツ送受信システム
JP5236112B2 (ja) デジタルコンテンツ送受信システム、および、デジタルコンテンツ送受信方法
JP2010123240A (ja) コピー制御方法
CN101640051A (zh) 拷贝控制方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110412

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110804