【文献】
大竹 他4名,多重化方式MMTのためのスクランブル方式,電子情報通信学会2014年総合大会,一般社団法人電子情報通信学会,2014年 3月 4日,第127頁
【文献】
Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 1: MPEG mediatransport(MMT) AMENDMENT 1 : Additional technologies for MPEG Media Transport(MMT),DRAFT AMENDMENT ISO/IEC 23008-1:2013/DAM 1,ISO,2014年 4月13日
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0021】
以下、本発明の第1および第2実施形態について図面を参照して詳細に説明する。
(第1実施形態)
ここでは、説明の都合上、1.限定受信システムの概要、2.送信装置の構成、3.初期値生成アルゴリズム、4.受信装置の構成、5.限定受信システムの動作、6.第1実施形態の変形例、の各章に分けて説明する。
【0022】
[1.限定受信システムの概要]
ここでは、限定受信システムの概要として、システム構成の概要、MMTの概要、暗号利用モードの概要、の各節に分けて説明する。
<1−1.システム構成の概要>
最初に、
図1を参照して、本発明の第1実施形態に係る送信装置および受信装置を含む限定受信システムの概要について説明する。
【0023】
限定受信システム(放送システム)Sは、メディアトランスポート方式としてMMT(MPEG Media Transport)を用い、コンテンツをIPパケット化し、放送波Wまたは通信回線Nを介して、伝送するものである。
また、限定受信システムSは、ネットワークレイヤ(IPレイヤ)とメディアトランスポートレイヤ(MMTレイヤ)の2つの異なるレイヤに対して、スクランブルを施すことで、データやサービス(番組)を保護し、限定受信を実現するものである。
この限定受信システムSは、放送事業者が有するデジタル放送の送信装置1(または、通信ネットワークのサービスを行う送信装置1)と、各家庭等に設置されたデジタル放送の受信装置3,3,…とで構成される。
【0024】
送信装置1は、映像、音声、データ等のコンテンツを、MMTPパケット化したのち、IPパケット化(MMT over IP)するとともに、必要に応じて、ネットワークレイヤやメディアトランスポートレイヤに対して、スクランブルを施して、放送波Wまたは通信回線Nを介して送信するものである。
【0025】
受信装置3は、MMTPパケットをIPパケット化したコンテンツを、放送波Wまたは通信回線Nを介して受信し、保護されたスクランブルデータをデスクランブルして、コンテンツを利用可能(映像再生等)とするものである。
【0026】
<1−2.MMTの概要>
次に、
図2〜
図4を参照して、限定受信システムSにおいて、MMTを用いて、限定受信を行うために必要となる各種データについて、その概要を説明しておく。
MMTを用いて放送システムを構築する場合、
図2に示すように、各種情報を参照するテーブル情報であるPLT,MPTおよびCATによって、コンテンツをスクランブルする鍵の関連情報であるECM,EMMや、コンテンツの実体であるMPUが参照される。
【0027】
PLT(パッケージリストテーブル:Package List Table)は、IPパケットで送信されるサービスを構成するパッケージ(番組)を、MPTのリスト形式で記述したテーブル情報である。例えば、PLTに複数のMPTを含むことで、マルチ編成を構築することが可能である。このPLTは、MPTを特定するための情報として、MPTの所在を特定する配置場所(位置情報)等を指定して、MPTを特定する。
【0028】
MPT(MMTパッケージテーブル:MMT Package Table)は、1つのパッケージ(番組)を構成するアセットを特定する情報をリスト形式で記述したテーブル情報である。
ここで、アセットとは、同一の伝送特徴情報を持つコンポーネント単位である。同一の伝送特徴情報は、そのアセットが有する伝送上の特徴を示す同一の情報であって、提示対象、提示タイミング等が同一である情報を示す。例えば、アセットA1は放送で受信する主音声、アセットA2は通信で受信する副音声等の単位とすることができる。
このような単位とすることで、アセットを、サービス保護を制御可能な単位とすることもできる。例えば、アセットA2のみを課金対象としたり、アセットA3をアセットA1よりもセキュリティ要件を高め、暗号化方式を変える等である。
【0029】
このように、映像、音声等の単一メディアのデータ(提示時間を指定するデータ)、ファイル(提示時間の指定が不要なデータ)等の複数のデータ(MPU:Media Processing Unit)を、同一のID(アセットID)で管理する単位がアセットである。
すなわち、アセットは、
図3に示すように、同一のアセットID(Aid1,Aid2,Aid3)によって、1つ以上のMPUを連結したデータを示す単位である。
【0030】
また、
図2に示すように、MPTには、限定受信を行うための鍵情報として、受信装置3,3,…に共通の共通鍵情報(ECM:Entitlement Control Message)の配置場所を指定した限定受信方式記述子あるいはアクセス制御記述子が設定される。なお、MPTは、MPTで特定される1つのパッケージ(番組)に対して1つのECM(E0)を指定する場合と、番組を構成するアセット単位でECM(E2,E3)を指定する場合とがある。
このMPTおよびECMの具体的な構造については後で説明を行う。
【0031】
CAT(限定受信テーブル:Conditional Access Table)は、限定受信を行うための鍵情報として、受信装置3ごとの個別鍵情報(EMM:Entitlement Management Message)の配置場所を指定した限定受信方式記述子あるいはアクセス制御記述子を記述したテーブル情報である。
このCATおよびEMMの具体的な構造については後で説明を行う。
【0032】
次に、
図4を参照して、MMTを用いてコンテンツをIPパケット化した際のパケット構成について説明する。
図4に示すように、MMTのパケット(MMTPパケット)は、MMTPペイロードに、CAT,MPT,ECM,EMM等が制御メッセージとして配置されたり、MPUが配置されたりする。また、MPUは、MPUペイロードに、MFU(Media Fragment Unit)が配置される。このMFUは、MPUをフラグメント化したデータであって、映像、音声のエンコード、デコードの最小単位となるアクセスユニット以下のメディアデータ(アクセスユニット、NAL〔ネットワーク抽象レイヤ:Network Abstraction Layer〕ユニット、ファイル)である。
【0033】
そして、MMTPパケットは、さらに、トランスポートレイヤであるTCP/UDP(Transmission Control Protocol/User Datagram Protocol)のヘッダと、ネットワークレイヤであるIPのヘッダが付加されて、IPパケットとして構成される。
このように、MMTでは、番組およびそれに関連する情報を、MMTPペイロードに載せてMMTPパケット化したのち、IPパケット化することで、通信との高い整合性を実現することができる。
【0034】
<1−3.暗号利用モードの概要>
続いて、
図5〜
図8を参照して、暗号利用モードの概要について説明する。
暗号利用モード(Block cipher modes of operation)とは、共通鍵ブロック暗号を用いて、ブロック長よりも長いデータを暗号化する手法のことである。
この暗号利用モードは、例えば、
図5に示すCBC(Cipher Block Chaining)モード、
図6に示すCFB(Cipher Feed Back)モード、
図7に示すOFB(Output Feed Back)モード、
図8に示すCTR(Counter)モード等がある。
【0035】
CBCモード(
図5参照)は、前の平文ブロックを暗号化した結果と、その次の平文ブロックとをXOR(排他的論理和)演算し、その結果を暗号鍵key(本発明のスクランブル鍵に相当)で暗号化することで、次の暗号ブロックを生成する動作を、平文ブロックの数分順次行う。
なお、CBCモードは、最初の平文ブロックとXOR演算する値として、外部から与えられた初期ベクトル(IV:Initial Vector)を用いる。
【0036】
CFBモード(
図6参照)は、前の平文ブロックに対応する暗号ブロックを暗号鍵keyで暗号化した結果と、その次の平文ブロックとをXOR演算することで、次の平文ブロックに対応する暗号ブロックを生成する動作を、平文ブロックの数分順次行う。なお、CFBモードでは、最初の平文ブロックとXOR演算する値として、外部から与えられた初期ベクトルを暗号鍵keyで暗号化した結果を用いる。
【0037】
OFBモード(
図7参照)は、外部から与えられた初期ベクトルを暗号鍵keyで暗号化した結果と平文ブロックとをXOR演算することで暗号ブロックを生成し、先に暗号鍵keyで暗号化した結果と次の平文ブロックとをXOR演算することで次の暗号ブロックを生成する動作を、平文ブロックの数分順次行う。
【0038】
CTRモード(
図8参照)は、外部から与えられた初期カウンタ値(Initial Value of Counter:以下、IVと称す)を暗号鍵keyで暗号化した結果と平文ブロックとをXOR演算することで暗号ブロックを生成する。そして、CTRモードは、以降の平文ブロックについては、初期カウンタ値を順次インクリメント(+1)した値を暗号鍵keyで暗号化した結果とXOR演算することで暗号ブロックを生成する。
【0039】
一般に、CBCモードやCFBモードで用いられる初期ベクトルは、安全性の観点から予測不可能であることが好ましい。また、OFBモードで用いられる初期ベクトルや、CTRモードで用いられる初期カウンタ値は、安全性の観点から同じ暗号鍵を利用する場合、異なる値を用いることが好ましい。
【0040】
そこで、本発明は、コンテンツをスクランブルするために暗号利用モードを用いる際に、初期ベクトルや初期カウンタ値(以下、特に区別しない場合、単に初期値という)を任意のタイミングで更新させることとする。また、本発明は、IPレイヤのデータのスクランブルについては暗号利用モードの種別を特に限定しないが、MMTレイヤのデータのスクランブルについてはCTRモード(カウンタモード)で行うこととする。以下、本発明の実施形態に係る限定受信システムSを構成する送信装置1および受信装置3の各構成および動作について順次説明する。
【0041】
[2.送信装置の構成]
まず、
図9を参照(適宜
図1参照)して、本発明の第1実施形態に係る送信装置1の構成について説明する。
送信装置1は、コンテンツをMMTPパケット化したのち、IPパケット化して送信する際に、MMTレイヤとIPレイヤに対して、適宜スクランブルを施す処理を行うものである。また、送信装置1は、スクランブルを行う際に、暗号利用モードで用いる初期値を任意のタイミングで更新する機能を有する。
【0042】
ここでは、送信装置1は、エンコード手段10と、MPU生成手段11と、制御メッセージ生成手段12と、MMTPパケット構成手段13と、IPパケット構成手段14と、ポリシ記憶手段15と、スクランブル手段16と、パケット再構成手段17と、データ送信手段18と、PLT生成手段19と、MPT生成手段20と、CAT生成手段21と、鍵情報生成手段22と、初期値生成手段23と、を備える。
【0043】
エンコード手段10は、コンテンツ(映像、音声等のベースバンド信号)を、符号化(エンコード)するものである。このエンコード手段10は、映像については、例えば、動画圧縮規格の一つであるH.265(HEVC:High Efficiency Video Coding)で符号化する。また、エンコード手段10は、音声については、例えば、MPEG4 AAC(Advanced Audio Coding)で符号化する。
このエンコード手段10は、符号化したデータを、例えば、NALユニット等のアクセスユニット以下のメディアデータとして、MPU生成手段11に出力する。
【0044】
MPU生成手段11は、エンコード手段10で符号化されたメディアデータや、別途外部から入力(不図示)されるデータ放送で使用されるデータ(ファイル)を、MMTにおけるデータ処理単位であるメディアプロセッシングユニット(MPU)として生成するものである。
【0045】
このMPU生成手段11は、
図4に示すように、データを細分化(フラグメント化)した、NALユニット等のアクセスユニット以下のメディアデータやファイルに、シーケンス番号(データの順序)を含んだヘッダ等を付加してメディアフラグメントユニット(MFU)を構成する。さらに、MPU生成手段11は、MFUに、少なくとも、MPUを識別するためのアセット識別子(アセットID)とシーケンス番号(アセット内のMPUの順序)を含んだヘッダを付加することで、MPUを生成する。これによって、MPUが一意に特定されることになる。
なお、MPU生成手段11は、予め定めたアセット単位、例えば、映像、音声、データ等の単一のメディアごとに、MPUを生成する。
このMPU生成手段11は、生成したMPUをMMTPパケット構成手段13に出力する。
【0046】
制御メッセージ生成手段12は、受信装置3に通知するための制御情報を含んだ制御メッセージを生成するものである。ここでは、制御メッセージ生成手段12は、後記するPLT生成手段19で生成されるPLT(パッケージリストテーブル)、MPT生成手段20で生成されるMPT(MMTパッケージテーブル)、CAT生成手段21で生成されるCAT(限定受信テーブル)、鍵情報生成手段22で生成されるECM(共通鍵情報)およびEMM(個別鍵情報)等を入力し、PLT、MPT、CAT、ECM、EMM等を識別するための固有の識別情報(テーブルID)を含む制御メッセージを生成するものである。
この制御メッセージには、例えば、1つのテーブル情報や鍵情報を設定してもよいし、複数のテーブル情報をまとめて設定したり、複数の鍵情報をまとめて設定してもよい。
この制御メッセージ生成手段12は、生成した制御メッセージのうちMPTをMMTPパケット構成手段13に出力する。
【0047】
MMTPパケット構成手段13は、MPU生成手段11で生成されたMPUや、制御メッセージ生成手段12で生成された制御メッセージを、MMTPパケットにカプセル化するものである。
このMMTPパケット構成手段13は、入力されたMPUや制御メッセージを、分割または連結することで、予め定めた伝送長に調整し、MMTPパケットのペイロードを構成する。そして、MMTPパケット構成手段13は、MMTPパケットのヘッダに、少なくともペイロードタイプと、パケットID(パケット識別子)と、配信タイムスタンプと、パケットシーケンス番号とを設定する。
【0048】
ペイロードタイプは、MMTPペイロードのデータタイプを示す。このペイロードタイプは、ペイロードの内容種別を示し、例えば、MPUが設定されているのか、制御メッセージが設定されているか等の識別情報である。
パケットID(パケット識別子)は、ペイロードのデータの種類を識別するための値である。このパケットIDは、アセット、制御メッセージごとに異なる値である。
配信タイムスタンプは、配信時刻情報であって、このMMTPパケットが出力されるときの年月日や時刻を示す。
パケットシーケンス番号は、パケット順序情報であって、同一のパケットIDを持つMMTPパケットの順序を示す。このパケットシーケンス番号は、具体的には、例えば0,1,2,3…といった値を有する。なお、これらの情報は、MMTで規定されている。
このMMTPパケット構成手段13は、生成したMMTPパケットをIPパケット構成手段14に出力する。
【0049】
IPパケット構成手段14は、MMTPパケット構成手段13で生成されたMMTPパケットにトランスポートレイヤおよびネットワークレイヤの各ヘッダを付加して、IPパケットとして構成するものである。
具体的には、IPパケット構成手段14は、トランスポートレイヤのプロトコルであるTCPやUDPのペイロードをMMTPパケットで構成し、TCP/UDPヘッダを付加し、さらに、送信先や送信元のアドレス等を含んだIPヘッダを付加することで、IPパケットを生成する。
【0050】
また、このIPパケット構成手段14は、番組とは無関係なデータや、受信装置3のファームウェア更新等のエンジニアリングサービスに必要なファイル等については、MMTPパケット構成手段13を介さずに、外部から図示しない方法で直接入力することとする。
すなわち、IPパケット構成手段14は、MMTPパケットをカプセル化するだけでなく、MMTPパケット以外のデータもIPパケットで構成することができる。
なお、IPパケット構成手段14は、トランスポートレイヤのヘッダとして、TCPヘッダを付加するのか、UDPヘッダを付加するのか等のトランスポートレイヤのヘッダ情報や、IPパケットに設定する宛先情報等のネットワークレイヤのヘッダ情報については、送信装置1に入力されるコンテンツ等に対応して、外部から、または、内部で記憶する設定情報をもとに適宜設定されるものとする。
このIPパケット構成手段14は、生成したIPパケットをスクランブル手段16に出力する。
【0051】
ポリシ記憶手段15は、ネットワークレイヤ(IPレイヤ)とメディアトランスポートレイヤ(MMTレイヤ)の2つの異なるレイヤに対して、スクランブルを行うための条件(ポリシ)を記憶するものである。このポリシ記憶手段15は、例えば、半導体メモリ等の一般的な記憶媒体で構成することができる。
このポリシ記憶手段15に記憶されているポリシは、スクランブル手段16によって参照され、スクランブルの対象が判定される。
【0052】
ここで、
図10を参照して、ポリシ記憶手段15に記憶されるポリシの例について説明する。
図10では、スクランブルを行うための条件(ポリシ)として、「IP Ver」、「送信先アドレス」、「送信元アドレス」、「送信先ポート」、「送信元ポート」、「トランスポートレイヤプロトコル」、「スクランブル対象」、「MMTスクランブル条件」、「スクランブル方式」を複数設定した例を示している。
【0053】
「IP Ver」は、IPプロトコルのバージョンを示す。例えば、IPv4、IPv6の種別を示す。
「送信先アドレス」、「送信元アドレス」は、それぞれ、IPパケットを送信する送信先のIPアドレス、IPパケットを送信する送信元のIPアドレスを示す。
「送信先ポート」、「送信元ポート」は、TCPやUDPの種類ごとに予め定めた送信先と送信元のポート番号を示す。
「トランスポートレイヤプロトコル」は、トランスポートレイヤのプロトコル種別を示す。例えば、TCP、UDPの種別を示す。
【0054】
「スクランブル対象」は、IPパケット上でスクランブルを行う対象となる領域を示す。ここでは、スクランブル対象として、ネットワークレイヤのレベルでスクランブルを行うのか(IP)、メディアトランスポートレイヤのレベルでスクランブルを行うのか(MMT)を示す。
【0055】
「MMTスクランブル条件」は、スクランブル対象がメディアトランスポートレイヤである場合、さらに、どのアセットを対象にスクランブルするのか詳細な条件を示すものである。すなわち、この「MMTスクランブル条件」が設定されていれば、アセット単位で、MMTがスクランブル対象となる。
【0056】
「スクランブル方式」は、スクランブルを行う際の暗号化方式を示す。例えば、鍵長を256ビット、動作モードをCTRとして、AES(Advanced Encryption Standard)暗号により暗号化する(AES−256_CTR)というように、使用するスクランブル方式の種別を設定する。本実施形態では、スクランブル対象がIPである場合、暗号利用モードの種別を特に限定しないが、スクランブル対象がMMTである場合、CTRモードで行う。
【0057】
例えば、
図10では、IPv4で送信されるIPパケットのうちで、送信先ポートが“5730”、送信元ポートが“5000”で送信されるUDPのIPパケットは、スクランブル対象としていないことを意味している。
また、例えば、
図10では、IPv4で送信されるIPパケットのうちで、送信先ポートが“3300”、送信元ポートが“3000”で送信されるUDPのIPパケットは、IPレイヤのデータをスクランブル対象とすることを意味している。
また、例えば、IPv4で送信されるIPパケットのうちで、送信先アドレスが、“239.192.0.1”、送信元ポートが“100”、送信先ポートが“100”で伝送されるUDPのIPパケットについては、MMTレイヤで、アセット識別子が“00000001”および“00000011”のMPUをスクランブル対象とすることを意味している。
図9に戻って、送信装置1の構成について説明を続ける。
【0058】
スクランブル手段16は、IPパケット構成手段14で生成されたIPパケットに対して、ポリシ記憶手段15に記憶されているポリシを参照してスクランブルの対象を判定し、その対象に対してスクランブルを施すものである。
このスクランブル手段16は、
図10で示したポリシを参照して、IPパケットに含まれるIPヘッダ、トランスポートプロトコルヘッダ、MMTPヘッダの内容に応じて、スクランブル対象を特定する。
そして、スクランブル手段16は、スクランブル対象となったネットワークレイヤ、または、メディアトランスポートレイヤのペイロード領域(ペイロード部のデータ領域)に対して、
図10で示したポリシに記述されているスクランブル方式によって、鍵情報生成手段22で生成されるスクランブル鍵Ksでスクランブルを施す。
【0059】
ここで、スクランブル手段16は、スクランブルを行う際に、暗号利用モードの初期値として、初期値生成手段23で生成された初期値を用いることとする。
このスクランブル手段16は、初期値生成手段23から初期値が通知されるタイミングで、使用する初期値を更新する。
本実施形態では、スクランブル手段16は、スクランブル対象がIPである場合、暗号利用モードの種別を特に限定せずにポリシに応じてIPレイヤのデータにスクランブルを施すが、スクランブル対象がMMTである場合、CTRモード固定でMMTレイヤのデータにスクランブルを施す。
【0060】
スクランブル手段16は、スクランブルの対象ではないと判定したIPパケットについてはそのままデータ送信手段18に出力する。
なお、ここでは、スクランブル手段16は、ポリシ記憶手段15に記憶されているポリシを参照することとしているが、スクランブル対象やスクランブル方式を、別途外部から設定される情報として制御信号により入力することとしてもよい。
【0061】
パケット再構成手段(ヘッダ設定手段)17は、スクランブルの施されたペイロードに対して、ヘッダを付加してパケットを再構成するものである。このパケット再構成手段17は、スクランブル手段16で行ったスクランブルに関する情報を、スクランブルされたレイヤのヘッダ部分に付加してIPパケットを再構成する。
このパケット再構成手段17は、スクランブル対象がIPである場合、一般的なIPsec(Security Architecture for IP)で用いられているESP(IP暗号ペイロード:Encapsulated Security Payload)ヘッダを拡張して、スクランブルに関連する各種の情報を設定する。
【0062】
さらに、パケット再構成手段17は、スクランブル手段16でスクランブルされたペイロード領域(ペイロード部)のヘッダに、初期値生成手段23から通知される初期値情報を埋め込む機能を有する。
具体的には、
図11(a)に示すように、パケット再構成手段17は、スクランブル対象がIPである場合、IPヘッダとTCP/UDPヘッダの間に、ESPヘッダを挿入し、当該ESPヘッダに、スクランブル制御情報、スクランブル方式識別子、初期値情報を埋め込む。
【0063】
「スクランブル制御情報」は、IPがスクランブル対象であるか否かを示し、さらに、スクランブルに用いた鍵、例えば、odd鍵(奇鍵)やeven鍵(偶鍵)等の鍵情報を一意に識別可能な情報を示す。
「スクランブル方式識別子」は、IPをスクランブルする際の暗号化方式を識別するための情報を示す。
「初期値情報」は、スクランブル方式に応じて予め定められたアルゴリズムで初期値を生成するために必要なシードである。
なお、「スクランブル方式識別子」で識別されるスクランブル方式の動作モードがCTRモード(
図8参照)を示す場合、パケット再構成手段17は、初期値生成手段23から通知される更新頻度を初期値情報としてESPヘッダに埋め込む。
【0064】
また、パケット再構成手段17は、スクランブル対象がMMTである場合、MMTPヘッダに、スクランブルに関連する各種の情報を設定する。
具体的には、
図11(b)に示すように、パケット再構成手段17は、MMTPヘッダに、スクランブル制御情報、スクランブル方式識別子、初期値情報を埋め込む。
なお、これらの埋め込みデータは、
図11(a)で説明したデータと同じもので、スクランブル対象が異なるだけであるため、説明を省略する。
【0065】
ただし、本実施形態では、スクランブル対象がMMTである場合、「スクランブル方式識別子」で識別されるスクランブル方式の動作モードはCTRモード(
図8参照)に固定されていることとしているので、パケット再構成手段17は、スクランブル対象がMMTである場合、初期値生成手段23から通知される更新頻度を初期値情報としてMMTPヘッダに埋め込む。
【0066】
なお、
図11(b)に示すESPヘッダは、スクランブル対象がMMTだけである場合、不要である。一方、スクランブル対象がMMTおよびIPの両方であれば、パケット再構成手段17は、ESPヘッダおよびMMTPヘッダの両方に、
図11(a),(b)と同様のデータを埋め込む。
このパケット再構成手段17は、パケットを再構成したIPパケットを、データ送信手段18に出力する。
【0067】
なお、スクランブル制御情報、スクランブル方式識別子および初期値情報は、それぞれ個別の情報として埋め込んでもよいし、あわせて制御する場合には、スクランブルの有無、スクランブルに用いた鍵情報、暗号化方式および初期値情報の組み合わせを一意な識別子にリンク付けて管理し、その識別子を用いて1つの制御情報として埋め込んでもよい。
【0068】
データ送信手段18は、IPパケットを受信装置3に送信するものである。ここでは、データ送信手段18は、パケット再構成手段17によって、ヘッダに情報が埋め込まれて再構成されたIPパケットを、受信装置3に送信する。また、データ送信手段18は、スクランブル手段16から、スクランブルの対象ではないものとして送られてきたIPパケットを、受信装置3に送信する。
ここで、データ送信手段18は、放送送信手段180と、通信送信手段181と、を備える。
【0069】
放送送信手段180は、IPパケットを、放送波Wを介して、放送データとして送信するものである。例えば、放送送信手段180は、TLV(Type Length Value)、MPEG2−TS等で、IPパケットをカプセル化したのち、変調を行い、放送データとして出力する。なお、放送波Wを伝送する媒体は、有線であっても、無線であっても構わない。
【0070】
通信送信手段181は、IPパケットを、通信回線Nを介して、通信データとして送信するものである。例えば、通信送信手段181は、イーサネット(登録商標)等のネットワークインタフェースを介して送信する。
このデータ送信手段18は、IPパケットを放送波で伝送するか、通信回線で伝送するかについては、外部から適宜設定されるものとする。
【0071】
PLT生成手段(パッケージリスト生成手段)19は、MPTを特定するための情報をリスト形式で記述したパッケージリストテーブル(PLT)を生成するものである。
このPLT生成手段19は、MPTの配置場所を示すロケーション情報をテーブル情報として記述する。
なお、PLT生成手段19は、PLTに設定する各種情報を、適宜外部から入力することとする。
【0072】
MPT生成手段(MMTパッケージテーブル生成手段)20は、パッケージ(番組)を構成する要素(アセット)を特定する情報をリスト形式で記述したMMTパッケージテーブル(MPT)を生成するものである。
このMPT生成手段20は、番組がどのようなアセットで構成されているのか(アセットの取得先を示すロケーション情報等)をテーブル情報として記述する。
また、MPT生成手段20は、番組を限定受信させる場合、受信装置共通の鍵情報(ECM)の所在を特定する配置場所(ロケーション情報)を含んだ限定受信方式記述子あるいはアクセス制御記述子を、さらにテーブル情報として記述する。
【0073】
ここで、
図12を参照して、MPT生成手段20が生成するMPTの構造の一例について説明する。
図12(a)は、アセット単位で限定受信方式を指定するMPTの例であり、
図12(b)は、番組単位で限定受信方式を指定するMPTの例である。
図12(a)に示すように、MPT生成手段20は、テーブル情報を識別する固有の値を示すテーブル識別と、バージョンと、データ長と、アセットの数(N)に応じた各種情報を設定して、MPTを生成する。具体的には、MPTには、アセットごとに、アセット識別と、アセットのロケーション情報と、限定受信方式記述子あるいはアクセス制御記述子と、が設定される。
【0074】
「アセット識別」は、アセットを個別に識別するための固有のID(アセットID)である。
「アセットのロケーション情報」は、アセットの配置場所を示す情報であって、例えば、種類(IPv4、IPv6、URL等)に応じて、取得先アドレスおよびポートを含む情報であってもよいし、取得先のパケットIDを指し示す情報であってもよい。
「限定受信方式記述子」あるいは「アクセス制御記述子」は、限定受信方式を特定する情報を設定した記述子であって、限定受信方式識別子、ECMのロケーション情報等を含む。
ここで、「限定受信方式識別子」は、例えば、有料放送を実現するCAS(Conditional Access System)、コンテンツ保護に特化した放送を実現するRMP(Rights Management and Protection)等、複数の限定受信方式の中の一つを識別するための情報である。
【0075】
また、「ECMのロケーション情報」は、ECMの配置場所を示す情報であって、例えば、配置先のIPアドレスおよびポート(ポート番号)、パケットID等である。
なお、ECMがネットワーク上のサーバ等に配置されている場合は、「ECMのロケーション情報」にIPアドレスおよびポート(ポート番号)が設定される。また、ECMがMMTの制御メッセージとして送信される場合は、「ECMのロケーション情報」にMMTのパケットIDが設定される。
このように、アセットごとに、限定受信方式を指定することで、アセット単位で限定受信を行うことができる。
【0076】
また、
図12(b)に示すように、限定受信方式識別子を、アセットの数(N)に応じたアセットの情報の上位に設定することで、番組単位で限定受信を行うことができる。
図12(b)の各種情報は、
図12(a)と同じものであるため、説明を省略する。
なお、MPT生成手段20は、MPTに設定する各種情報を、適宜外部から、または、内部に記憶した設定情報をもとに生成することとする。
図9に戻って、送信装置1の構成について説明を続ける。
【0077】
CAT生成手段(限定受信テーブル生成手段)21は、限定受信を行うための情報を記述した限定受信テーブル(CAT)を生成するものである。
このCAT生成手段21は、番組を限定受信させる際の受信装置個別の鍵情報(EMM)の所在を特定する配置場所(ロケーション情報)を含んだ限定受信方式記述子あるいはアクセス制御記述子をテーブル情報として記述する。
【0078】
ここで、
図13を参照して、CAT生成手段21が生成するCATの構造の一例について説明する。
図13に示すように、CAT生成手段21は、テーブル情報を識別する固有の値を示すテーブル識別と、バージョンと、データ長と、限定受信方式記述子あるいはアクセス制御記述子とを設定して、CATを生成する。
この限定受信方式記述子あるいはアクセス制御記述子は、ロケーション情報がECMの配置場所を示すかEMMの配置場所を示すかが異なるだけで、
図12で説明した内容と同じであるため、説明を省略する。
なお、CAT生成手段21は、CATに設定する各種情報を、適宜外部から、または、内部に記憶した設定情報をもとに生成することとする。
図9に戻って、送信装置1の構成について説明を続ける。
【0079】
鍵情報生成手段22は、コンテンツをスクランブルするスクランブル鍵を生成するとともに、当該スクランブル鍵を受信装置3において抽出するための鍵情報として、受信装置共通の共通鍵情報(ECM)と、受信装置個別の個別鍵情報(EMM)とを生成するものである。
【0080】
ここで、
図14を参照(適宜
図9参照)して、鍵情報生成手段22の構成例について説明する。
図14に示すように、鍵情報生成手段22は、スクランブル鍵生成手段220と、ワーク鍵生成手段221と、ECM生成手段222と、マスタ鍵記憶手段223と、EMM生成手段224と、を備える。
【0081】
スクランブル鍵生成手段220は、コンテンツをスクランブルするための鍵(スクランブル鍵Ks)を生成するものである。
このスクランブル鍵生成手段220は、所定時間間隔(例えば、数秒に1回程度)で、乱数を発生させることでスクランブル鍵Ksを生成する。そして、スクランブル鍵生成手段220は、生成したスクランブル鍵KsをECM生成手段222に出力する。
なお、スクランブル鍵生成手段220は、スクランブル鍵Ksとして、現時点におけるスクランブル鍵および次に使用するスクランブル鍵を、odd鍵およびeven鍵のペアで生成することとする。これによって、送信装置1がスクランブル鍵を切り替える際に、受信装置3でスクランブル鍵が存在しない時間区間をなくすことができる。
また、スクランブル鍵生成手段220は、現時点でスクランブル手段16に出力しているスクランブル鍵Ksがodd鍵かeven鍵かを識別するための暗号鍵を識別するための情報をパケット再構成手段17に出力する。
【0082】
ワーク鍵生成手段221は、スクランブル鍵Ksを暗号化するための鍵(ワーク鍵Kw)を生成するものである。
このワーク鍵生成手段221は、スクランブル鍵Ksに比べ更新時間が長い所定時間間隔(例えば、1ヶ月程度)で、乱数を発生させることでワーク鍵Kwを生成する。そして、ワーク鍵生成手段221は、生成したワーク鍵Kwと、生成したワーク鍵Kwを識別するためのID等の鍵情報(ワーク鍵識別)とを、ECM生成手段222と、EMM生成手段224とに出力する。
なお、ワーク鍵生成手段221は、ワーク鍵Kwとして、現時点におけるワーク鍵および次に使用するワーク鍵を、odd鍵およびeven鍵のペアで生成することとすることとしてもよい。
【0083】
ECM生成手段222は、スクランブル鍵Ksをワーク鍵Kwで暗号化し、暗号化したスクランブル鍵Ksを含んだ受信装置3共通の鍵情報である共通鍵情報(ECM)を生成するものである。
このECM生成手段222は、スクランブル鍵生成手段220で生成される1つ以上のスクランブル鍵Ksのペア(odd鍵、even鍵)をワーク鍵Kwで暗号化するとともに、対応するワーク鍵Kwの鍵情報(ワーク鍵識別)を配置して、
図15に示すようなデータ構造でECMを生成する。
なお、
図15に示した他の情報である「プロトコル番号」、「事業体識別」、「時刻情報」は、ARIBのSTD−B25で規定されているECMの情報と同様の情報であって、本発明と直接的な関係がないため、ここでは説明を省略する。
そして、ECM生成手段222は、生成したECMを制御メッセージ生成手段12に出力する。
【0084】
マスタ鍵記憶手段223は、ワーク鍵生成手段221で生成されたワーク鍵Kwを暗号化する暗号鍵であって、予め個々の受信装置3に付与されている固有の鍵(マスタ鍵Km)を記憶するものである。このマスタ鍵記憶手段223は、一般的な半導体メモリ等の記憶媒体で構成することができる。
【0085】
EMM生成手段224は、ワーク鍵Kwを、受信装置3個別のマスタ鍵Kmで暗号化し、暗号化したワーク鍵Kwを含んだ受信装置3個別の鍵情報である個別鍵情報(EMM)を生成するものである。
このEMM生成手段224は、ワーク鍵生成手段221で生成されるワーク鍵Kwのペア(odd鍵、even鍵)をマスタ鍵Kmで暗号化して、
図16に示すようなデータ構造でEMMを生成する。
なお、
図16に示した他の情報である「デバイス識別」、「関連情報のバイト長」、「プロトコル番号」、「事業体識別」、「更新番号」は、ARIBのSTD−B25で規定されているEMMの情報と同様の情報であって、本発明と直接的な関係がないため、ここでは説明を省略する。
そして、EMM生成手段224は、生成したEMMを制御メッセージ生成手段12に出力する。
【0086】
なお、ここでは、EMM生成手段224が、受信装置3個別のマスタ鍵でワーク鍵Kwを暗号化することとしたが、限定受信方式の管理単位を受信機メーカや受信機機種といったデバイス単位とする場合、当該単位で予め受信装置3に割り当てられたデバイス鍵でワーク鍵Kwを暗号化することとする。
【0087】
初期値生成手段23は、スクランブル手段16において行うスクランブルの暗号利用モードの初期値を生成するものである。
この初期値生成手段23は、一定周期、あるいは、外部から指示されたタイミングで、初期値を生成する。
本実施形態では、初期値生成手段23は、スクランブル対象がIPである場合、暗号利用モードの種別に応じた初期値を生成するが、スクランブル対象がMMTである場合、CTRモードの初期カウンタ値を生成する。
初期値生成手段23は、例えば暗号利用モードの種別がCTRモード以外である場合、所定のアルゴリズムによって初期値を生成し、一方、CTRモードの場合、以下に示す生成アルゴリズムで初期値を生成する。そして、初期値生成手段23は、生成した初期値をスクランブル手段16に出力し、初期値情報(初期カウンタ値更新頻度)をパケット再構成手段17に出力する。
【0088】
[3.初期値生成アルゴリズム]
ここでは、スクランブル対象がMMTであるものとして説明する。
初期値生成手段23は、初期カウンタ値更新頻度(以下、更新頻度Rという)ごとに初期カウンタ値を生成する。ここで、更新頻度Rは、例えば16ビットの情報量の数値である。更新頻度Rは、初期値生成手段23の内部または外部の図示しない記憶手段に事前に記憶されている。あるいは外部から図示しない方法で初期値生成手段23に直接入力するようにしてもよい。
【0089】
図17に示すように、まず、初期値生成手段23は、MMTPパケットのヘッダ部から、配信タイムスタンプT(32ビット)、パケットシーケンス番号SEQ(32ビット)を取得し、さらに更新頻度R(16ビット)を取得する(ステップS1)。
次に、初期値生成手段23は、取得した現在のパケットシーケンス番号SEQと、更新頻度Rとが、次の式(1)を満たすか否かを判別する(ステップS2)。
【0090】
SEQ=0 mod R … 式(1)
【0091】
前記式(1)を満たさない場合、すなわち、パケットシーケンス番号SEQを更新頻度Rで割った余りが0ではない場合(ステップS2でNo)、初期値生成手段23は、初期カウンタ値を生成せず、処理を終了する。
【0092】
前記式(1)を満たす場合、すなわち、パケットシーケンス番号SEQを更新頻度Rで割った余りが0である場合(ステップS2でYes)、初期値生成手段23は、所定のビット長を有するパディング情報ctrに「0」の値をセットする(ステップS3)。なお、パディング情報は必ずしも「0」でなくても構わず、例えば末尾を「1」の値にセットしてもよい。
そして、初期値生成手段23は、配信タイムスタンプTと、パケットシーケンス番号SEQと、パディング情報ctrとを、次の式(2)のように連接して初期カウンタ値IVを生成する(ステップS4)。なお、記号「||」は、連接を示す。ただし、例えば、配信タイムスタンプTと、パケットシーケンス番号SEQとを連接させた後のビット列のビット長が、初期カウンタ値IVの所定のビット長と同じになる場合、パディング情報ctrは不要である。よって、初期カウンタ値IVの生成にはパディング情報ctrは必須ではなく、少なくとも配信タイムスタンプTと、パケットシーケンス番号SEQとを連接させればよい。
【0093】
IV=T || SEQ || ctr … 式(2)
【0094】
ここで、初期カウンタ値IVは、パディング情報ctrが他の情報(T,SEQ)よりも下位ビット側に配置されるように連接されて生成されてもよい。この生成アルゴリズムにおいてはパディング情報ctrの値は0である。ただし、初期カウンタ値IVの生成後には、データをCTRモードでスクランブルする際に、初期カウンタ値を順次インクリメント(+1)した値を生成する際に、パディング情報ctrの部分のビット列が表す数値が、カウンタのように1,2,…と変化していくことになる。
【0095】
そして、スクランブル方式の暗号アルゴリズムが、例えばAES 128ビットブロック暗号やCamellia 128ビットブロック暗号の場合、初期カウンタ値IVは、その暗号アルゴリズムのビット数(128ビット)に依存するので、IVは128ビットの情報となる。この場合、パディング情報ctrは、64ビットの情報となる。なお、本発明において、初期カウンタ値IVは128ビットに限定されるものではない。
【0096】
また、初期カウンタ値IVは、前記式(2)に限られず、初期値生成手段23は、ステップS1で取得した各情報を式(3)のように連接して初期カウンタ値IVを生成してもよい。
【0097】
IV=SEQ || T || ctr … 式(3)
【0098】
初期値生成手段23は、MMTで規定されている配信タイムスタンプTとパケットシーケンス番号SEQとを用いて初期カウンタ値を生成する。この初期値生成アルゴリズムは、送信装置1と受信装置3とで共通のものである。前記したように、パケット再構成手段17は、スクランブルの施されたペイロードに対して、ヘッダを付加してパケットを再構成する際に、スクランブル対象がMMTである場合、初期値生成手段23から通知される初期カウンタ値更新頻度(更新頻度R)を初期値情報としてMMTPヘッダに埋め込む。これにより再構成されたIPパケットを受信した受信装置3は、後記するように、同じ更新頻度Rで初期カウンタ値IVを生成する。本実施形態の送信装置1において、MMTで規定されている情報以外にMMTPパケットに追加する情報は、16ビットの更新頻度R(初期値情報)のみであり、例えば128ビットの初期カウンタ値IVそのものを伝送するよりも伝送帯域を大幅に抑えることができる。
【0099】
初期値生成手段23が一定周期で初期カウンタ値を生成するための更新頻度Rは、16ビットの所定値(0〜65535のいずれか)である。初期値生成手段23は、この所定値の複数のパケットごとに初期カウンタ値を初期化(更新)することができる。システム負荷を抑えたい場合、更新頻度Rの値を大きくするなど、運用に則した設定が可能である。なお、更新頻度Rが例えば3である場合、初期カウンタ値を最初に初期化したパケットを第1番目のパケットと呼ぶとき、第4番目のパケット、第7番目のパケット、…のように3パケット毎に初期カウンタ値を初期化する。このとき、第2,3,5,6番目等のパケットの初期カウンタ値は、次のように生成する。すなわち、例えば第1番目のパケットにおいて初期カウンタ値を順次インクリメント(+1)した最後の平文ブロックにおいて用いた最後の初期カウンタ値をIV
lastと表記するとき、第2番目のパケットについては、初期カウンタ値はIV
last+1となり、以降の平文ブロックについては、初期カウンタ値を順次インクリメント(+1)する。
【0100】
初期値生成手段23が生成する初期カウンタ値において、配信タイムスタンプTとパケットシーケンス番号SEQとを結合した値は、パケットごとに異なる。そのため、同じ秘密鍵(key:
図8参照)で利用されるカウンタ値を全て異なる値にすることができる。なお、CTRモードの初期カウンタ値について、「同じ秘密鍵で利用されるカウンタの値は全て異なる必要があること」は、下記参考文献1に規定されている。
(参考文献1)NIST SP800-38A,“Recommendation for Block Cipher Modes of Operation”
【0101】
以上説明したように送信装置1を構成することで、送信装置1は、コンテンツを、MMTPパケット化したのち、IPパケット化(MMT over IP)するとともに、ポリシに応じて、ネットワークレイヤ(IPレイヤ)やメディアトランスポートレイヤ(MMTレイヤ)のデータに対して、スクランブルを施して、放送波Wまたは通信回線Nを介して送信することができる。
【0102】
これによって、送信装置1は、MMTレイヤのデータに対して、スクランブルを施すことで、番組やアセットの細かな単位でサービス保護を実現することができる。例えば、送信装置1は、放送で送られる副音声のみを課金対象とし、当該副音声を構成するアセットのみを暗号化するといった処理を実現することができる。さらに、送信装置1は、IPレイヤのデータに対して、スクランブルを施すことで、番組とは関係のない各種データのデータ保護も同時に実現することができる。
また、送信装置1は、IPレイヤのデータに対してスクランブルを施す際の暗号化方式を選択することができるため、送信するデータの種類や、セキュリティ要件に応じて、暗号化に伴う計算負荷を軽減させたり、セキュリティ強度を高めたり等、送信するデータの内容に適合した暗号化方式でスクランブルを行うことができる。
【0103】
また、送信装置1は、コンテンツやデータを、ポリシに応じて、ネットワークレイヤ(IPレイヤ)やメディアトランスポートレイヤ(MMTレイヤ)に対して、スクランブルを施す際に、暗号利用モードの初期値を適宜更新することができるため、放送または通信で伝送するデータの安全性を高めることができる。
【0104】
また、送信装置1は、MMTレイヤのデータにスクランブルを施す際に、配信タイムスタンプTとパケットシーケンス番号SEQという必要最小限のシードを用いて、CTRモードの初期カウンタ値を生成することができる。また、初期値生成アルゴリズムは、送信装置1と受信装置3とで共通のものであり、スクランブル対象がMMTである場合、初期カウンタ値更新頻度(更新頻度R)をMMTPヘッダに埋め込んでIPパケットを構成するので、送信側と受信側とで同じ更新頻度Rで生成した初期カウンタ値IVを安全に共有することができる。
【0105】
[4.受信装置の構成]
次に、
図18を参照(適宜
図1参照)して、本発明の第1実施形態に係る受信装置3の構成について説明する。
受信装置3は、MMTPパケットをIPパケット化したコンテンツを、放送波Wまたは通信回線Nを介して受信し、保護されたスクランブルデータをデスクランブルして、コンテンツを利用可能(映像再生等)とするものである。また、受信装置3は、送信装置1で更新された初期値(初期ベクトルまたは初期カウンタ値)を用いて、暗号利用モードのデスクランブルを行う機能を有する。
【0106】
ここでは、受信装置3は、データ受信手段30と、IPパケットフィルタリング手段31と、MMTPパケットフィルタリング手段32と、デスクランブル手段33と、制御メッセージ分離手段34と、PLT処理手段35と、CAT処理手段36と、MPT処理手段37と、ロケーション解決手段38と、鍵情報処理手段39と、MPU処理手段40と、デコード手段41と、データ処理手段42と、初期値生成手段43とを備える。
【0107】
データ受信手段30は、送信装置1から送信された放送データ、通信データを受信するものである。ここでは、データ受信手段30は、放送受信手段300と、通信受信手段301と、を備える。
【0108】
放送受信手段300は、放送波Wを介して送信される放送データを受信するものである。例えば、放送受信手段300は、変調された放送データを復調し、TLVやMPEG2−TS等でカプセル化されたIPパケットを抽出して、IPパケットフィルタリング手段31に出力する。
【0109】
通信受信手段301は、通信回線Nを介して通信データとして送信されるIPパケットを受信するものである。この通信受信手段301は、受信したIPパケットを、IPパケットフィルタリング手段31に出力する。
【0110】
IPパケットフィルタリング手段31は、データ受信手段30で受信したIPパケットのヘッダを解析し、パケットの振り分けを行うものである。
具体的には、IPパケットフィルタリング手段31は、IPヘッダに付加されているESPヘッダ(
図11(a)参照)を参照して、IPのペイロード領域がスクランブルされているか否かを判定する。このとき、IPのペイロード領域がスクランブルされていれば、IPパケットフィルタリング手段31は、ESPヘッダに含まれているスクランブル制御情報およびスクランブル方式識別子と、IPのペイロードのデータ(スクランブルデータ)をデスクランブル手段33に出力し、デスクランブルを指示する。
【0111】
さらに、IPパケットフィルタリング手段31は、IPヘッダに付加されているESPヘッダの初期値情報(
図11(a)参照)が設定されていると判定した場合、初期値情報で生成された初期値を用いてIPのペイロードがスクランブルされていることをデスクランブル手段33に通知すると共に、EPSヘッダに付加されている初期値情報を初期値生成手段43に通知する機能を有する。
【0112】
また、IPパケットフィルタリング手段31は、トランスポートプロトコルヘッダ、または、MMTPヘッダの有無によって、スクランブルされていないIPのペイロード、および、デスクランブル手段33でデスクランブルされたIPのペイロードにMMTPパケットが含まれているか否かを判定する。
ここで、MMTPパケットが含まれている場合、IPパケットフィルタリング手段31は、IPのペイロードから抽出したMMTPパケットをMMTPパケットフィルタリング手段32に出力する。また、MMTPヘッダが含まれていない場合、IPパケットフィルタリング手段31は、IPパケットのペイロード部分を、データ処理手段42に出力する。
【0113】
MMTPパケットフィルタリング手段32は、IPパケットフィルタリング手段31でフィルタリングされたMMTPパケットのヘッダを解析し、パケットの振り分けを行うものである。
具体的には、MMTPパケットフィルタリング手段32は、MMTPヘッダに含まれているスクランブル制御情報(
図11(b)参照)で、MMTのペイロード領域(ペイロード部のデータ領域)がスクランブルされているか否かを判定する。このとき、MMTのペイロード領域がスクランブルされていれば、MMTPパケットフィルタリング手段32は、MMTPヘッダに含まれているスクランブル制御情報およびスクランブル方式識別子と、MMTのペイロードのデータ(スクランブルデータ)をデスクランブル手段33に出力し、デスクランブルを指示する。
【0114】
そして、MMTPパケットフィルタリング手段32は、MMTPヘッダに含まれているペイロードタイプ(不図示)によって、スクランブルされていないMMTのペイロード、および、デスクランブル手段33でデスクランブルされたMMTのペイロードが制御メッセージであるかMPUであるかを判定する。
【0115】
ここで、MMTのペイロードが制御メッセージであれば、MMTPパケットフィルタリング手段32は、MMTのペイロードを制御メッセージ分離手段34に出力する。また、MMTのペイロードがMPUであれば、MMTPパケットフィルタリング手段32は、MMTのペイロードをMPU処理手段40に出力する。
【0116】
ここで、MMTPパケットフィルタリング手段32は、ロケーション解決手段38から、MMTPパケットのID(パケットID)によって、鍵情報(ECM,EMM)、MPT、アセットの取得を指示されることで、当該パケットIDに対応するMMTPパケットで送信されるECM、EMMおよびMPTの制御メッセージを抽出することとする。
また、MMTPパケットフィルタリング手段32は、ロケーション解決手段38から、MMTPパケットのID(パケットID)によって、アセットを構成するMPUの取得を指示されることで、当該パケットIDに対応するMMTPパケットで送信されるMPUを抽出することとする。
なお、MMTPパケットフィルタリング手段32は、PLTおよびCATの制御メッセージについては、MMTPパケットの予め定めた固有のパケットIDに対応する制御メッセージを抽出することとする。
【0117】
さらに、MMTPパケットフィルタリング手段32は、MMTPヘッダに含まれている初期値情報(
図11(b)参照)が設定されていると判定した場合、初期値情報で生成された初期値を用いてMMTのペイロードがスクランブルされていることをデスクランブル手段33に通知すると共に、MMTPヘッダに付加されている初期値情報を初期値生成手段43に通知する機能を有する。
【0118】
ここで、MMTPヘッダに初期値情報が設定されていることは、MMTPパケットのペイロード領域(ペイロード部のデータ領域)がスクランブル対象となっていることを意味する。そして、この場合、MMTPパケットフィルタリング手段32は、初期値を生成するためのシードを指定することで、MMTPパケットのペイロード領域をデスクランブル手段33でデスクランブルし、MMTPパケットからコンテンツを抽出する。ここで、MMTPパケットフィルタリング手段32は、MMTPパケットのヘッダに設定されている配信タイムスタンプTおよびパケットシーケンス番号SEQをMMTPヘッダから取得し、配信タイムスタンプTおよびパケットシーケンス番号SEQをシードとして初期値生成手段43に通知する。
【0119】
加えて、本実施形態では、MMTPヘッダに付加されている初期値情報は、初期カウンタ値を生成するためのシードの1つとなっている。そこで、MMTPパケットフィルタリング手段32は、MMTPパケットのヘッダに設定されている初期値情報(更新頻度R)をMMTPヘッダから取得してシードとして初期値生成手段43に通知する。
【0120】
デスクランブル手段33は、スクランブルされたデータをデスクランブルするものである。ここでは、デスクランブル手段33は、鍵情報処理手段39で抽出されるスクランブル鍵の中で、IPパケットフィルタリング手段31から指定されたスクランブル制御情報に対応するスクランブル鍵Ksを用いて、スクランブル方式識別子で指定されたスクランブル方式によりIPパケットのスクランブルデータをデスクランブルする。
【0121】
また、デスクランブル手段33は、鍵情報処理手段39で抽出されるスクランブル鍵の中で、MMTPパケットフィルタリング手段32から指定されたスクランブル制御情報に対応するスクランブル鍵Ksを用いて、スクランブル方式識別子で指定されたスクランブル方式によりMMTPパケットのスクランブルデータをデスクランブルする。
なお、デスクランブル手段33は、デスクランブルしたデータを、それぞれ、デスクランブルを指示したIPパケットフィルタリング手段31またはMMTPパケットフィルタリング手段32に出力する。
【0122】
さらに、デスクランブル手段33は、IPパケットフィルタリング手段31またはMMTPパケットフィルタリング手段32から該当パケットのペイロードがスクランブルされていることを通知された場合、初期値生成手段43から通知された初期値を用いてデスクランブルを行う。
これによって、デスクランブル手段33は、送信装置1のスクランブル手段16(
図9参照)で用いられた暗号利用モードの初期値と同じ初期値を用いて、正しくデスクランブルを行うことができる。
【0123】
制御メッセージ分離手段34は、MMTPパケットフィルタリング手段32で抽出された制御メッセージに含まれている識別情報(テーブルID)に基づいて、PLT、MPT、CAT、ECM、EMM等を判別し、個別に抽出(分離)するものである。
この制御メッセージ分離手段34は、抽出したECMおよびEMMを、鍵情報処理手段39に出力する。また、制御メッセージ分離手段34は、抽出したPLTをPLT処理手段35に出力し、抽出したCATをCAT処理手段36に出力し、抽出したMPTをMPT処理手段37に出力する。
【0124】
PLT処理手段(パッケージリスト処理手段)35は、制御メッセージ分離手段34で分離されたPLTに基づいて各種の処理を行うものである。
ここでは、PLT処理手段35は、PLTに含まれているMPTの取得先であるロケーション情報をロケーション解決手段38に通知する。
【0125】
CAT処理手段(限定受信テーブル処理手段)36は、制御メッセージ分離手段34で分離されたCATに含まれている限定受信方式記述子あるいはアクセス制御記述子(
図13参照)を参照して、EMMの取得先となるEMM位置(ロケーション情報)を、ロケーション解決手段38に通知するものである。
このCAT処理手段36は、限定受信方式記述子あるいはアクセス制御記述子(
図13参照)に記述されている限定受信方式識別子と、図示を省略した記憶手段に記憶されている受信装置3が予め契約等によって設定されている限定受信方式識別子(CAS、RMP等)とが一致する限定受信方式記述子あるいはアクセス制御記述子に記述されているEMMのロケーション情報を、ロケーション解決手段38に通知する。
【0126】
MPT処理手段(MMTパッケージテーブル処理手段)37は、制御メッセージ分離手段34で分離されたMPTに基づいて各種の処理を行うものである。
ここでは、MPT処理手段37は、MPTに含まれている限定受信方式記述子あるいはアクセス制御記述子(
図12参照)を参照して、ECMの取得先となるECM位置(ロケーション情報)を、ロケーション解決手段38に通知する。
このMPT処理手段37は、限定受信方式記述子あるいはアクセス制御記述子(
図12参照)に記述されている限定受信方式識別子と、図示を省略した記憶手段に記憶されている受信装置3が予め契約等によって設定されている限定受信方式識別子(CAS、RMP等)とが一致する限定受信方式記述子あるいはアクセス制御記述子に記述されているECMのロケーション情報を、ロケーション解決手段38に通知する。
また、MPT処理手段37は、MPTに含まれているアセットの取得先となるアセット位置(ロケーション情報)を、ロケーション解決手段38に通知する。
【0127】
ロケーション解決手段38は、PLT処理手段35、CAT処理手段36およびMPT処理手段37から通知されるロケーション情報に基づいて、制御メッセージやMPUの取得制御を行うものである。
すなわち、ロケーション解決手段38は、PLT処理手段35から通知されるMPTのパケットID、CAT処理手段36から通知されるEMMのパケットID、MPT処理手段37から取得されるECMやアセットのパケットIDに対応するパケットを抽出する旨を、MMTPパケットフィルタリング手段32に指示する。
なお、ロケーション解決手段38は、ロケーション情報が、ネットワーク上の位置情報(送信先アドレス、送信先ポート(ポート番号))であれば、図示を省略した通信制御手段を介して、指定のMMTPパケットを取得する。そして、ロケーション解決手段38は、通信制御手段を介して取得したMMTPパケットを、MMTPパケットフィルタリング手段32に出力する。
【0128】
鍵情報処理手段39は、制御メッセージ分離手段34で分離されたECMおよびEMMから、コンテンツをデスクランブルためのスクランブル鍵を抽出するものである。
ここで、
図19を参照(適宜
図18参照)して、鍵情報処理手段39の構成について説明する。
図19に示すように、鍵情報処理手段39は、マスタ鍵記憶手段390と、EMM処理手段391と、ECM処理手段392と、を備える。
【0129】
マスタ鍵記憶手段390は、予め個々の受信装置3に付与されている固有の暗号鍵(マスタ鍵Kmまたはデバイス鍵)を記憶するものである。このマスタ鍵記憶手段390は、一般的な半導体メモリ等の記憶媒体で構成することができる。
【0130】
EMM処理手段391は、マスタ鍵記憶手段390に記憶されているマスタ鍵Kmで、EMMを復号し、ワーク鍵Kwを取得するものである。このEMM処理手段391は、復号したワーク鍵Kwを、ECM処理手段392に出力する。
【0131】
ECM処理手段392は、EMM処理手段391で復号されたワーク鍵KwでECMを復号し、スクランブル鍵Ksを取得するものである。このECM処理手段392は、復号したスクランブル鍵Ksを、デスクランブル手段33に出力する。
図18に戻って、受信装置3の構成について説明を続ける。
【0132】
MPU処理手段40は、MMTPパケットフィルタリング手段32で抽出されたMPUのヘッダに記述されているアセットIDが同一のMPUの集合を単位として、デコード手段41に出力するものである。
すなわち、MPU処理手段40は、同一のアセットIDであるMPUに含まれているMFUをアセット単位でデコード手段41に出力する。
【0133】
デコード手段41は、MPU処理手段40から出力されるアセット単位のMPU(MFU)を、MFU単位でデコードするものである。
例えば、デコード手段41は、MPUが映像データであれば、H.265(HEVC)によりデコードし、MPUが音声データであれば、MPEG4 AACでデコードする。
このようにデコードされたデータは、再生したコンテンツとして外部(表示装置、スピーカ等)に出力される。
【0134】
データ処理手段42は、IPパケットフィルタリング手段31から、MMTが含まれていないIPパケットを取得し、予め定めたIPパケットの処理を行うものである。
このデータ処理手段42が行う処理は、例えば、受信装置3のファームウェア更新のエンジニアリングサービスに必要なファイル等をIPパケットで取得し、ファームウェアの更新を行う処理等である。
【0135】
初期値生成手段43は、デスクランブル手段33において行うデスクランブルの暗号利用モードの初期値を生成するものである。
この初期値生成手段43は、一定周期、あるいは、外部から指示されたタイミングで、初期値を生成する。
本実施形態では、初期値生成手段43は、スクランブル対象がIPである場合、暗号利用モードの種別に応じた初期値を生成するが、スクランブル対象がMMTである場合、CTRモードの初期カウンタ値を生成する。
初期値生成手段43は、例えば暗号利用モードの種別がCTRモード以外である場合、送信側にてCTRモード以外の場合に応じて採用された所定のアルゴリズムと同じアルゴリズムによって初期値を生成し、一方、CTRモードの場合、送信装置1の初期値生成手段23にてCTRモードの場合に採用された生成アルゴリズムと同じ生成アルゴリズムで初期値を生成する。
【0136】
ここで、
図17を参照して送信装置1における処理との相違点について説明する。なお、スクランブル対象がMMTであるものとする。
まず、MMTPパケットフィルタリング手段32は、MMTPヘッダの初期値情報が設定されていると判定した場合、その旨をデスクランブル手段33に通知すると共に、MMTPパケットのヘッダに設定されている配信タイムスタンプT、パケットシーケンス番号SEQ、および初期値情報(更新頻度R)をシードとして初期値生成手段43に通知する。
【0137】
これにより、初期値生成手段43は、MMTPパケットフィルタリング手段32から、初期値生成のためのシードとして、配信タイムスタンプT(32ビット)、パケットシーケンス番号SEQ(32ビット)、および更新頻度R(16ビット)を取得する(ステップS1)。以降のステップS2〜ステップS4の処理は、送信装置1の初期値生成手段23と同様なので説明を省略する。そして、初期値生成手段43は、生成した初期値(初期カウンタ値)をデスクランブル手段33に出力する。
【0138】
以上説明したように受信装置3を構成することで、受信装置3は、ネットワークレイヤ(IPレイヤ)やメディアトランスポートレイヤ(MMTレイヤ)に対して、スクランブルされたIPパケットを受信して、それぞれのレイヤのデータをデスクランブルすることができる。
【0139】
また、受信装置3は、送信装置1において、暗号利用モードの初期値を更新してスクランブルを行う場合に、当該初期値を生成するためのシードを取得して、デスクランブルを行うことができる。これによって、受信装置3は、暗号利用モードの初期値を適宜更新することができるため、放送または通信で伝送されるデータの安全性を高めることができる。
【0140】
[5.限定受信システムの動作]
次に、
図20および
図21を参照して、本発明の第1実施形態に係る送信装置および受信装置を含む限定受信システムの動作について説明する。
なお、以降の動作において、説明を簡便にするために、制御メッセージとコンテンツとをシリアルに送受信して動作するように説明するが、制御メッセージは、逐次生成されるタイミングで送受信されることはいうまでもない。
【0141】
<5−1.送信装置の動作>
最初に、
図20を参照(構成については適宜
図9参照)して、本発明の第1実施形態に係る送信装置1の動作について説明する。なお、ポリシ記憶手段15には、
図10に示したような、予めスクランブルを行うための条件(ポリシ)を記憶しておく。
【0142】
まず、送信装置1は、コンテンツの限定受信を実現する場合に、MPT生成手段20およびCAT生成手段21によって、鍵情報(ECM,EMM)の位置情報を含んだMPT,CATを生成し、制御メッセージ生成手段12によって、制御メッセージを生成する(ステップS10)。
【0143】
すなわち、送信装置1は、MPT生成手段20によって、
図12に示したように、パッケージ(番組)を構成する要素(アセット)を特定する情報とともに、受信装置共通の鍵情報(ECM)の配置場所を含んだ限定受信方式記述子あるいはアクセス制御記述子を記述して、MPTを生成する。
また、送信装置1は、CAT生成手段21によって、
図13に示したように、受信装置個別の鍵情報(EMM)の配置場所を含んだ限定受信方式記述子あるいはアクセス制御記述子を記述して、CATを生成する。
そして、送信装置1は、MPTやCATが生成されたタイミングで、制御メッセージ生成手段12によって、固有の識別情報を付加して制御メッセージを生成する。
【0144】
また、送信装置1は、鍵情報生成手段22によって、スクランブル鍵を受信装置3において抽出するための鍵情報として、共通鍵情報(ECM)と個別鍵情報(EMM)とを生成し、制御メッセージ生成手段12によって、固有の識別情報を付加して制御メッセージを生成する(ステップS11)。
【0145】
また、送信装置1は、PLT生成手段19によって、MPTのリストを記述したPLTを生成し、制御メッセージ生成手段12によって、固有の識別情報を付加して制御メッセージを生成する(ステップS12)。
【0146】
そして、送信装置1は、入力されたコンテンツや、ステップS10〜S12で生成された制御メッセージをMMTPパケット化する(ステップS13)。すなわち、送信装置1は、エンコード手段10によって、コンテンツを符号化(エンコード)し、MPU生成手段11によって、エンコード手段10で符号化されたデータを、MMTにおけるデータ処理単位であるメディアプロセッシングユニット(MPU)として生成する。そして、送信装置1は、MMTPパケット構成手段13によって、MPUや、ステップS10〜S12で生成された制御メッセージをMMTPパケットにカプセル化する。
【0147】
さらに、送信装置1は、IPパケット構成手段14によって、ステップS13で生成されたMMTPパケットにトランスポートレイヤ(TCP/UDP)およびネットワークレイヤ(IP)の各ヘッダを付加して、IPパケット化する(ステップS14)。
そして、送信装置1は、スクランブル手段16によって、TCP/UDPヘッダおよびIPヘッダの内容と、ポリシ記憶手段15に記憶されているポリシとが合致するか否かを判定する(ステップS15)。
【0148】
そして、各ヘッダの内容がポリシに合致する場合(ステップS15でYes)、さらに、送信装置1は、スクランブル手段16によって、ポリシで規定されるスクランブル対象がIPか否かを判定する(ステップS16)。
ここで、スクランブル対象がIPの場合(ステップS16でYes)、送信装置1は、スクランブル手段16によって、IPペイロードを、ポリシで規定されているスクランブル方式でスクランブルする(ステップS17)。
【0149】
そして、送信装置1は、パケット再構成手段17によって、IPヘッダにESPヘッダを付加し、スクランブルの制御情報を示すスクランブル制御情報、および、スクランブル方式を識別するためのスクランブル方式識別子を、スクランブル情報として、ESPヘッダに設定する(ステップS18)。このとき、スクランブルを行う際の暗号利用モードの初期値を生成するための初期値情報もESPヘッダに設定する。なお、スクランブル制御情報、スクランブル方式識別子および初期値情報を組み合わせて1つの識別子に割り当て、その識別子を用いてESPヘッダに設定してもよい。
【0150】
一方、スクランブル対象がIPでなかった場合(ステップS16でNo)、さらに、送信装置1は、スクランブル手段16によって、ポリシで規定されるスクランブル対象がMMTか否かを判定する(ステップS19)。
ここで、スクランブル対象がMMTの場合(ステップS19でYes)、送信装置1は、スクランブル手段16によって、MMTPペイロードを、ポリシで規定されているスクランブル方式でスクランブルする(ステップS20)。
【0151】
このとき、初期値生成手段23は、
図17に示した生成アルゴリズムにしたがってCTRモードの初期カウンタ値を生成し、この初期値(初期カウンタ値)をスクランブル手段16に出力する。また、初期値生成手段23は、初期カウンタ値の更新頻度Rを初期値情報としてパケット再構成手段17に出力する。
【0152】
そして、送信装置1は、パケット再構成手段17によって、スクランブルの有無を示すスクランブル制御情報、スクランブル方式を識別するためのスクランブル方式識別子および初期値情報を、スクランブル情報として、MMTPヘッダに設定してIPパケットを再構成する(ステップS21)。
【0153】
そして、送信装置1は、データ送信手段18によって、ステップS18においてIPレイヤでスクランブルされたIPパケット、ステップS21においてMMTレイヤでスクランブルされたIPパケット、または、ステップS15およびステップS19でヘッダの内容がポリシに合致せずにスクランブルされなかったIPパケットを、放送または通信で受信装置3に送信する(ステップS22)。
以上の動作によって、送信装置1は、IPレイヤとMMTレイヤとの各データに対して、個別のスクランブルを施すことができる。
【0154】
<5−2.受信装置の動作>
次に、
図21を参照(構成については適宜
図18参照)して、本発明の第1実施形態に係る受信装置3の動作について説明する。
【0155】
まず、受信装置3は、データ受信手段30を介して受信し、IPパケットフィルタリング手段31およびMMTPパケットフィルタリング手段32を経由して、抽出された制御メッセージから、制御メッセージ分離手段34によって、PLTを分離する(ステップS30)。
また、同様に、受信装置3は、制御メッセージ分離手段34によって、MPTおよびCATを分離する(ステップS31)。
【0156】
そして、受信装置3は、MPT処理手段37およびCAT処理手段36によって、鍵情報(ECM,EMM)の位置情報(ロケーション情報)を抽出する(ステップS32)。
すなわち、受信装置3は、MPT処理手段37によってMPTからECMの位置情報を抽出する。また、受信装置3は、CAT処理手段36によってCATからEMMの位置情報を抽出する。
【0157】
また、受信装置3は、MMTPパケットフィルタリング手段32によって、ロケーション解決手段38の指示により、ステップS32で抽出された鍵情報の位置情報(パケットID)に対応する制御メッセージをフィルタリングし、制御メッセージ分離手段34によって、ECMおよびEMMを分離する(ステップS33)。
そして、受信装置3は、鍵情報処理手段39によって、ステップS33で分離されたECMおよびEMMから、コンテンツをデスクランブルためのスクランブル鍵を抽出する(ステップS34)。
【0158】
そして、受信装置3は、データ受信手段30を介して、IPパケットを受信した際に、IPパケットフィルタリング手段31によって、IPヘッダに付加されているESPヘッダ(
図11(a)参照)に設定されているスクランブル制御情報で、IPのペイロード領域がスクランブルされているか否かを判定する(ステップS35)。
ここで、IPペイロードがスクランブルされている場合(ステップS35でYes)、受信装置3は、デスクランブル手段33によって、スクランブル制御情報に対応付けられたスクランブル鍵Ksで、ESPヘッダに設定されているスクランブル方式によりデスクランブルを行う(ステップS36)。このとき、IPパケットフィルタリング手段31は、EPSヘッダに付加されている初期値情報を初期値生成手段43に通知し、初期値生成手段43が、スクランブル方式に応じた初期値を生成して当該初期値をデスクランブル手段33に通知する。
なお、IPペイロードがスクランブルされていない場合(ステップS35でNo)、受信装置3は、ステップS37に動作を進める。
【0159】
さらに、受信装置3は、MMTPパケットフィルタリング手段32によって、MMTPヘッダ(
図11(b)参照)に設定されているスクランブル制御情報で、MMTのペイロード領域(ペイロード部のデータ領域)がスクランブルされているか否かを判定する(ステップS37)。
ここで、MMTPペイロードがスクランブルされている場合(ステップS37でYes)、受信装置3は、デスクランブル手段33によって、スクランブル制御情報に対応付けられたスクランブル鍵Ksで、MMTPヘッダに設定されているスクランブル方式によりデスクランブルを行う(ステップS38)。
【0160】
このとき、MMTPパケットフィルタリング手段32は、MMTPヘッダに設定されている配信タイムスタンプT、パケットシーケンス番号SEQおよび更新頻度Rをシードとして初期値生成手段43に通知し、初期値生成手段43が、
図17に示した生成アルゴリズムにしたがってCTRモードの初期カウンタ値を生成し、この初期値(初期カウンタ値)をデスクランブル手段33に出力する。
なお、MMTPペイロードがスクランブルされていない場合(ステップS37でNo)、受信装置3は、ステップS39に動作を進める。
【0161】
そして、受信装置3は、MPU処理手段40によって、MMTPパケットフィルタリング手段32から、アセットを構成するMPUをアセットごとに取得し、デコード手段41でデコードすることでコンテンツを再生する(ステップS39)。
【0162】
以上の動作によって、受信装置3は、IPレイヤとMMTレイヤとに対して、それぞれ個別にスクランブルされたデータをデスクランブルすることができる。
以上、本発明の第1実施形態に係る限定受信システムS、送信装置1および受信装置3の構成および動作について説明したが、本発明は、この実施形態を種々変更して実施することができる。
【0163】
[6.第1実施形態の変形例]
ここでは、第1実施形態の変形例として、以下の変形例1〜変形例6について説明する。
【0164】
<6−1.変形例1>
例えば、ここでは、IPパケットのヘッダ(ESPヘッダ、MMTPヘッダ)に、スクランブル方式識別子を設定することとしたが、この情報は、個々のパケットに設定せずに、さらに上位の層で設定することとしてもよい。
例えば、
図22(a)、
図22(b)に示すように、MPTにスクランブル方式記述子を付加したり、
図23に示すように、CATにスクランブル方式記述子を付加する。
【0165】
この「スクランブル方式記述子」は、スクランブルに関する情報を設定した記述子であって、例えば、対象レイヤー識別子(レイヤ識別)、スクランブル方式識別子(暗号化方式識別)等である。
ここで、「対象レイヤー識別子(レイヤ識別)」は、IPまたはMMTのいずれのレイヤをスクランブル対象とするのかを示す情報である。
また、「スクランブル方式識別子(暗号化方式識別)」は、スクランブル方式を識別するための情報である。
なお、このスクランブル方式記述子は、
図22(a)に示すように、アセットごとに設定してもよいし、
図22(b)に示すように、アセットの数(N)に応じたアセットの情報の上位に設定することで、パッケージ単位で設定してもよい。
また、スクランブル方式記述子は、
図23に示すように、CAT内に設定してもよい。
【0166】
なお、このように、MPTやCATにスクランブル方式記述子を設定するには、
図9の送信装置1において、MPT生成手段20およびCAT生成手段21を以下のように動作させればよい。
すなわち、MPT生成手段20は、ポリシ記憶手段15を参照し、ネットワークレイヤ(IP)またはメディアトランスポートレイヤ(MMT)がスクランブル対象となっており、スクランブル方式が設定されていれば、MPTにスクランブル方式記述子を設定する。
【0167】
なお、ポリシ記憶手段15において、個々のアセットIDに対してスクランブル方式が設定されていれば、MPT生成手段20は、
図22(a)に示すように、アセットごとに、スクランブル方式記述子を設定する。また、ポリシ記憶手段15において、個々のアセットIDに対してスクランブル方式が設定されていなければ、MPT生成手段20は、
図22(b)に示すように、パッケージ単位でスクランブル方式記述子を設定する。
【0168】
また、ポリシ記憶手段15において、特定のMMTスクランブル条件が設定されておらず、同じスクランブル方式が設定されていた場合、CAT生成手段21が、
図23に示すように、CAT内にスクランブル方式記述子を設定する。
【0169】
この場合、
図18の受信装置3では、CAT処理手段36やMPT処理手段37において、CATやMPTにスクランブル方式記述子が設定されていることを認識した際に、スクランブル方式記述子で特定される内容(対象レイヤー識別子、スクランブル方式識別子等)を、IPパケットフィルタリング手段31やMMTPパケットフィルタリング手段32に通知すればよい。
なお、変形例1として送信装置1および受信装置3を構成する場合、
図9および
図18において、点線で示した関係で各構成がデータの送受や参照を行うことになる。
【0170】
<6−2.変形例2>
また、ここでは、IPパケットのヘッダ(ESPヘッダ、MMTPヘッダ)に、初期値情報を設定することとしたが、この情報は、前記変形例1で説明したように、個々のパケットに設定せずに、さらに上位の層で設定することとしてもよい。
その場合、
図22(a),
図22(b)に示したMPTのスクランブル方式記述子(4行分)や、
図23に示したCATのスクランブル方式記述子(4行分)を、
図24(a)に示したスクランブル方式記述子(5行分)に替えればよい。
なお、
図24(a)は、
図22(a),
図22(b),
図23に示したスクランブル方式記述子に対して、初期値情報を新たに付加している。
【0171】
そして、受信装置3は、CAT処理手段36やMPT処理手段37において、CATやMPTにスクランブル方式記述子が設定されていることを認識した際に、スクランブル方式記述子で特定される内容(対象レイヤー識別子、スクランブル方式識別子、初期値情報等)を、IPパケットフィルタリング手段31やMMTPパケットフィルタリング手段32に通知する。さらに、この場合、IPパケットフィルタリング手段31やMMTPパケットフィルタリング手段32は、取得した初期値情報を初期値生成手段43に通知する。
【0172】
<6−3.変形例3>
また、ここでは、送信装置1は、ポリシ記憶手段15にスクランブル方式を設定し、IPレイヤのデータのスクランブルに関しては複数のスクランブル方式の中から1つを選択する例を説明した。
しかし、IPレイヤのデータのスクランブルに関してもMMTレイヤのデータのスクランブルと同様にして、予め定めた1つのスクランブル方式(CTRモード)を用いることとしてもよい。
その場合、送信装置1のポリシ記憶手段15に記憶するポリシから「スクランブル方式」を省略することとする。
そして、スクランブル手段16は、IPのレイヤおよびMMTのレイヤの各データをCTRモードでスクランブルを行うこととする。このとき、パケット再構成手段17は、
図11に示した各ヘッダに設定する情報のうち「スクランブル方式識別子」を設定しないこととする。
【0173】
また、受信装置3では、IPパケットフィルタリング手段31やMMTPパケットフィルタリング手段32において、ヘッダの「スクランブル方式識別子」を参照することなく、デスクランブル手段33において、IPパケットおよびMMTPパケットの各ペイロード領域(ペイロード部のデータ領域)をCTRモードにてデスクランブルを行えばよい。
【0174】
さらに、送信装置1は、予め定めた1つのスクランブル方式(CTRモード)を用いた場合、スクランブル方式記述子において、
図24(b)に示すように、
図24(a)からスクランブル方式識別子を省略すればよい。
【0175】
<6−4.変形例4>
また、ここでは、送信装置1は、初期値情報として更新頻度RをMMTPパケットのヘッダ部に埋め込む例と、初期値情報を個々のパケットに設定せずに上位の層で設定する例(変形例2)を説明した。
しかし、初期値情報を送信装置1から受信装置3へ伝送することなく、初期値情報を送信装置1と受信装置3とで予め共有しておくようにしてもよい。受信装置3は、送信装置1が保有する初期値情報と同じものを、受信装置3の記憶手段に事前に記憶する。
この場合、送信装置1において、MMTで規定されている情報以外にMMTPパケットに追加する情報は存在しないので、初期値情報を伝送する場合よりも伝送帯域をさらに抑えることができる。その場合、スクランブル方式記述子は、
図24(c)に示すように、
図24(b)から初期値情報を省略すればよい。
【0176】
<6−5.変形例5>
また、ここでは、送信装置1は、初期値情報をパケットのヘッダや上位の層に設定して受信装置3へ伝送する例を説明した。
しかし、送信装置1が保有する初期値情報を、受信装置3の外部のサーバに事前に格納しておき、送信装置1が、初期値情報を事前に格納したサーバにアクセスするためのアドレス情報を、パケットのヘッダや上位の層に設定して受信装置3へ伝送するようにしてもよい。この場合、受信装置3は、アドレス情報で特定されるサーバにアクセスして初期値情報を取得し、初期値を生成する。
これによれば、送信装置1から受信装置3へ初期値情報そのものを伝送することなく、初期値情報の値を送信側の都合で変更する運用が可能となる。例えばシステム運用中のシステム負荷が当初予想よりも大きい場合、送信側および受信側で共有していた当初の更新頻度Rを値が大きいものに安全に変更することで、システム負荷を抑えることができる。
【0177】
<6−6.変形例6>
また、ここでは、送信装置1において、パケット再構成手段17は、スクランブル対象がMMTである場合、初期値生成手段23から通知される初期カウンタ値更新頻度を初期値情報としてMMTPヘッダに埋め込む例を説明した。
しかし、送信装置1において、MMTPパケット構成手段13は、MMTPパケットのヘッダに、ペイロードタイプ、パケットID、配信タイムスタンプ、パケットシーケンス番号等を設定する際に、さらに初期カウンタ値更新頻度も設定することとしてもよい。
【0178】
(第2実施形態)
次に、本発明の第2実施形態に係る送信装置および受信装置を含む限定受信システムについて説明する。
ここでは、説明の都合上、7.限定受信システムの概要、8.送信装置の構成、9.受信装置の構成、10.限定受信システムの動作、11.第2実施形態の変形例、の各章に分けて説明する。なお、第1実施形態で既に説明した事項については適宜省略する。
【0179】
[7.限定受信システムの概要]
この第2実施形態に係る限定受信システムは、
図1で説明した限定受信システムSに対し、さらに、IPレイヤおよびMMTレイヤのデータに対する改竄検知機能を有する。なお、第2実施形態に係る限定受信システムは、
図1で説明した限定受信システムSの送信装置1および受信装置3を、それぞれ、送信装置1B(
図25)および受信装置3B(
図29)に替えて構成する。
【0180】
[8.送信装置の構成]
まず、
図25を参照して、本発明の第2実施形態に係る送信装置1Bの構成について説明する。
【0181】
送信装置1Bは、コンテンツをMMTPパケット化したのち、IPパケット化して送信する際に、MMTレイヤとIPレイヤに対して、適宜スクランブルを施す処理を行うものである。また、送信装置1Bは、MMTレイヤとIPレイヤに対して認証データを付加する機能を有する。
【0182】
ここでは、送信装置1Bは、エンコード手段10と、MPU生成手段11と、制御メッセージ生成手段12と、MMTPパケット構成手段13と、IPパケット構成手段14と、ポリシ記憶手段15Bと、スクランブル手段16と、パケット再構成手段17Bと、データ送信手段18と、PLT生成手段19と、MPT生成手段20と、CAT生成手段21と、鍵情報生成手段22Bと、初期値生成手段23と、認証データ付与手段24と、を備える。
ポリシ記憶手段15B、パケット再構成手段17B、鍵情報生成手段22Bおよび認証データ付与手段24以外の構成は、
図9で説明した送信装置1と同じ構成であるため、同一の符号を付して説明を省略する。
【0183】
ポリシ記憶手段15Bは、IPレイヤとMMTレイヤの2つの異なるレイヤに対して、スクランブルを行うための条件(ポリシ)を記憶するものであって、
図9で説明したポリシ記憶手段15と同じ情報を記憶する。
さらに、ポリシ記憶手段15Bは、スクランブルの条件に加え、認証方式を記憶することする。このポリシ記憶手段15Bに記憶されているポリシのうち、認証方式は、パケット再構成手段17Bによって参照され、認証データの対象とその認証方式が判定される。
【0184】
ここで、
図26を参照して、ポリシ記憶手段15Bに記憶されるポリシの例について説明する。
図26では、スクランブルおよび認証を行うための条件(ポリシ)として、「IP Ver」、「送信先アドレス」、「送信元アドレス」、「送信先ポート」、「送信元ポート」、「トランスポートレイヤプロトコル」、「スクランブル認証対象」、「MMTスクランブル認証条件」、「スクランブル方式」、「認証方式」を複数設定した例を示している。なお、「スクランブル認証対象」、「MMTスクランブル認証条件」および「認証方式」以外の情報は、
図10で説明した情報と同じであるため、説明を省略する。
【0185】
「スクランブル認証対象」は、IPパケット上でスクランブル/認証を行う対象となる領域を示す。ここでは、スクランブル/認証対象として、ネットワークレイヤのレベルでスクランブル/認証を行うのか(IP)、メディアトランスポートレイヤのレベルでスクランブル/認証を行うのか(MMT)を示す。
【0186】
「MMTスクランブル認証条件」は、スクランブル/認証対象がメディアトランスポートレイヤである場合、さらに、どのアセットを対象にスクランブル/認証するのか詳細な条件を示すものである。すなわち、この「MMTスクランブル認証条件」が設定されていれば、アセット単位で、MMTがスクランブル/認証対象となる。
【0187】
「認証方式」は、IPレイヤやMMTレイヤに対して認証データを付与する際の認証方式の種別を示す。
この「認証方式」は、一般的な認証の方式を設定すればよい。例えば、共通鍵(認証鍵)を用いて認証を行うHMAC−SHA−1(Keyed Hashing for Message Authentication Code-SHA-1)、HMAC−SHA−256等である。
図26の例では、IPv4で送信されるIPパケットのうちで、送信先ポートが“3300”、送信元ポートが“3000”で送信されるUDPのIPパケットは、IPレイヤのペイロードのデータを認証対象とし、HMAC−SHA−1で認証データを付与することを意味している。
なお、ここでは、スクランブル対象と認証対象とを同じ対象としているが、それぞれ異なる対象としてもよい。例えば、スクランブル対象をIPレイヤ、認証対象をMMTレイヤに設定する等である。
【0188】
パケット再構成手段(ヘッダ設定手段)17Bは、スクランブル手段16でスクランブルされたペイロード領域(ペイロード部のデータ領域)にヘッダを付加してIPパケットを再構成するものである。
さらに、パケット再構成手段17Bは、ポリシ記憶手段15に記憶されているポリシを参照して、IPパケットに設定されているIPのバージョン、送信先アドレス、送信元アドレス、送信先ポート、送信元ポート、トランスポートレイヤプロトコルに応じて、認証対象および認証方式を特定し、その情報をヘッダに設定する。
すなわち、パケット再構成手段17Bは、スクランブル対象や認証対象がIPである場合、一般的なIPsec(Security Architecture for IP)で用いられているESP(IP暗号ペイロード:Encapsulated Security Payload)ヘッダを拡張して、スクランブルに関連する情報や認証に関連する情報を設定する。
【0189】
具体的には、
図27(a)に示すように、パケット再構成手段17Bは、IPヘッダとTCP/UDPヘッダの間に、ESPヘッダを挿入し、当該ESPヘッダに、スクランブル制御情報、スクランブル方式識別子、初期値情報、認証制御情報、認証方式識別を埋め込む。
【0190】
「スクランブル制御情報」、「スクランブル方式識別子」、「初期値情報」は、
図11と同じ情報であるため、説明を省略する。
「認証制御情報」は、認証データを付加するか否かを示すとともに、認証鍵を識別する情報を指し示す。
「認証方式識別」は、IPを認証する際の認証方式を識別するための情報を示す。
【0191】
また、パケット再構成手段17Bは、認証対象がMMTである場合、MMTPヘッダに、認証に関連する各種の情報を設定する。
具体的には、
図27(b)に示すように、パケット再構成手段17Bは、MMTPヘッダに、スクランブル制御情報、スクランブル方式識別子、初期値情報、認証制御情報、認証方式識別を埋め込む。
なお、これらの埋め込みデータは、
図27(a)で説明したデータと同じもので、スクランブル対象が異なるだけである。
【0192】
また、
図27(b)に示すESPヘッダは、認証対象がMMTだけである場合、不要である。これに対して、認証対象が
図27(c)に示すように、IPおよびMMTの両方であれば、パケット再構成手段17Bは、ESPヘッダおよびMMTPヘッダの両方に、
図27(a),(b)と同様のデータを埋め込む。
また、ここでは、パケット再構成手段17Bは、スクランブルに関連する情報や認証に関連する情報をヘッダに設定したが、スクランブルに関連する情報や認証に関連する情報を対応付けた一意な識別子をヘッダに設定することで、具体的な内容を指し示してもよい。
【0193】
鍵情報生成手段22Bは、コンテンツをスクランブルするスクランブル鍵を生成するとともに、当該スクランブル鍵を受信装置3Bにおいて抽出するための鍵情報として、受信装置共通の共通鍵情報(ECM)と、受信装置個別の個別鍵情報(EMM)とを生成するものである。さらに、鍵情報生成手段22Bは、所定の認証方式によって認証データを付与する際の鍵である認証鍵を管理するものでもある。
なお、ここで、認証鍵を用いて認証データを生成するのは、以下の理由による。
すなわち、ハッシュ関数のみで認証行う(メッセージダイジェスト)場合、伝送途中でデータが改竄され、同じハッシュ関数を用いて新たな認証データが付与された場合、改竄検出を行うことができない。そこで、本発明では、通信による伝送を考慮して、中間攻撃を防止するため、認証鍵を用いて認証データを生成する。
【0194】
ここで、
図28を参照して、鍵情報生成手段22Bの構成について説明する。
図28に示すように、鍵情報生成手段22Bは、スクランブル鍵生成手段220と、ワーク鍵生成手段221と、ECM生成手段222と、マスタ鍵記憶手段223と、EMM生成手段224と、認証鍵管理手段225と、を備える。
認証鍵管理手段225以外の構成は、
図14で説明した、鍵情報生成手段22と同じ構成であるため、同一の符号を付して説明を省略する。
【0195】
認証鍵管理手段225は、認証鍵を予め管理(記憶)するものである。
この認証鍵管理手段225は、認証データ付与手段24から要求があった場合に、認証鍵Kaを認証データ付与手段24に通知する。また、認証鍵管理手段225は、複数の認証鍵を管理する場合、認証データ付与手段24から鍵の識別情報を含む要求があった際に、識別情報に対応付けられた認証鍵Kaを応答することとする。
図25に戻って、送信装置1Bの構成について説明を続ける。
【0196】
認証データ付与手段24は、パケット再構成手段17Bで各ヘッダに情報が設定されたIPパケットに対して、IPレイヤおよび/またはMMTレイヤに認証データを付与するものである。
ここでは、認証データ付与手段24は、各レイヤ(IPレイヤ、MMTレイヤ)のヘッダに設定されている認証制御情報を参照し、認証データを付加する情報が設定されている場合に、それぞれのレイヤに対して認証データを付与する。
このとき、認証データ付与手段24は、鍵情報生成手段22Bの認証鍵管理手段225(
図28参照)で管理される認証鍵Kaを用い、各レイヤのヘッダに設定されている認証方式で認証データを生成する。なお、各レイヤのヘッダに設定されている認証制御情報に、鍵の識別情報を含む場合には、認証データ付与手段24は、その識別情報に対応する認証鍵Kaを用いて、認証データを生成する。
【0197】
また、認証データ付与手段24は、IPレイヤを認証範囲とする場合、
図27(a)に示すように、IPヘッダの後ろに付加されたESPヘッダ以降のデータに対して認証データ(IP認証データ)を付与する。
また、認証データ付与手段24は、MMTレイヤを認証範囲とする場合、
図27(b)に示すように、MMTPヘッダ以降のデータに対して認証データ(MMT認証データ)を付与する。
【0198】
なお、認証データ付与手段24は、IPレイヤとMMTレイヤの両方に対して認証データを付与する場合、
図27(c)に示すように、先にMMTレイヤに対する認証データを付与したのち、IPレイヤに対する認証データを付与する。
このように、認証データ付与手段24は、認証データを付与した場合、IPヘッダにおいて、パケット長を更新することはいうまでもない。
【0199】
以上説明したように送信装置1Bを構成することで、送信装置1Bは、コンテンツやデータを、ポリシに応じて、ネットワークレイヤ(IPレイヤ)やメディアトランスポートレイヤ(MMTレイヤ)に対して、スクランブルを施すことができるとともに、認証データを付与することができる。これによって、送信装置1Bは、コンテンツやデータの改竄を受信装置において検出させることができる。
【0200】
[9.受信装置の構成]
次に、
図29を参照して、本発明の第2実施形態に係る受信装置3Bの構成について説明する。
【0201】
受信装置3Bは、MMTPパケットをIPパケット化したコンテンツを、放送波Wまたは通信回線Nを介して受信し、保護されたスクランブルデータをデスクランブルして、コンテンツを利用可能(映像再生等)とするものである。また、受信装置3Bは、送信装置1Bで認証データが付与されたレイヤのデータ認証を行うデータの改竄を検出する機能を有する。
【0202】
ここでは、受信装置3Bは、データ受信手段30と、IPパケットフィルタリング手段31Bと、MMTPパケットフィルタリング手段32Bと、デスクランブル手段33と、制御メッセージ分離手段34と、PLT処理手段35と、CAT処理手段36と、MPT処理手段37と、ロケーション解決手段38と、鍵情報処理手段39と、MPU処理手段40と、デコード手段41と、データ処理手段42と、初期値生成手段43と、認証手段44と、を備える。
IPパケットフィルタリング手段31B、MMTPパケットフィルタリング手段32Bおよび認証手段44以外の構成は、
図18で説明した受信装置3と同じ構成であるため、同一の符号を付して説明を省略する。
【0203】
IPパケットフィルタリング手段31Bは、データ受信手段30で受信したIPパケットのヘッダを解析し、パケットの振り分けを行うものであって、
図18で説明したIPパケットフィルタリング手段31と同じ機能を有する。
【0204】
さらに、IPパケットフィルタリング手段31Bは、IPヘッダに付加されているESPヘッダの認証制御情報(
図27(a)参照)で、認証データが付与されていると判定した場合、認証データが付与されたIPパケットを、認証手段44において認証させる。
このとき、IPパケットフィルタリング手段31Bは、ESPヘッダに設定されている認証方式識別(
図27(a)参照)を認証手段44に通知することで、送信装置1Bと同じ認証方式によって、認証を行わせることができる。
なお、認証によって改竄が検出された場合、IPパケットフィルタリング手段31Bは、当該IPパケットを破棄することとする。
【0205】
MMTPパケットフィルタリング手段32Bは、IPパケットフィルタリング手段31BでフィルタリングされたMMTPパケットのヘッダを解析し、パケットの振り分けを行うものであって、
図18で説明したMMTPパケットフィルタリング手段32と同じ機能を有する。
【0206】
さらに、MMTPパケットフィルタリング手段32Bは、MMTPヘッダの認証制御情報(
図27(b)参照)で、認証データが付与されていると判定した場合、認証データが付与されたMMTPパケットを、認証手段44において認証させる。
このとき、MMTPパケットフィルタリング手段32Bは、MMTPヘッダに設定されている認証方式識別(
図27(b)参照)を認証手段44に通知することで、送信装置1Bと同じ認証方式によって、認証を行わせることができる。
なお、認証によって改竄が検出された場合、MMTPパケットフィルタリング手段32Bは、当該MMTPパケットを含んだIPパケットを破棄することとする。
【0207】
認証手段44は、認証データが付与されたデータを認証するものである。
この認証手段44は、IPパケットフィルタリング手段31BまたはMMTPパケットフィルタリング手段32Bから認証を行う旨が指示された場合、指示された認証方式識別に対応する認証鍵Kaを、予め認証方式識別に対応する認証鍵を記憶する記憶手段(不図示)から取得し、指示された認証方式でIPレイヤまたはMMTレイヤの認証を行う。
なお、認証手段44は、認証した結果を、認証を要求したIPパケットフィルタリング手段31BまたはMMTPパケットフィルタリング手段32Bに通知する。
【0208】
以上説明したように受信装置3Bを構成することで、受信装置3Bは、送信装置1Bにおいて、IPレイヤやMMTレイヤに認証データが付与された場合に、送信装置1Bと同じ認証方式でデータの認証を行うことができる。これによって、受信装置3Bは、データの改竄を検出することができるため、放送または通信で伝送されるデータの安全性を高めることができる。
【0209】
[10.限定受信システムの動作]
以上、本発明の第2実施形態に係る限定受信システムを構成する送信装置1Bおよび受信装置3Bの各構成について説明した。
第2実施形態に係る限定受信システムの基本動作は、
図20および
図21で説明した第1実施形態の限定受信システムの動作と同様である。第2実施形態に係る限定受信システムでは、送信装置1Bにおいて、
図20のステップS18やステップS21において、さらに認証に関する情報(認証制御情報、認証方式識別)を設定し、その後、認証データを付与する。また、受信装置3Bは、ステップS35の前に、認証データの認証を行う。それ以外の動作は基本的に第1実施形態と同じであるため、詳細な説明を省略する。
【0210】
[11.第2実施形態の変形例]
ここでは、第2実施形態の変形例として、以下の変形例7〜変形例9について説明する。
【0211】
<11−7.変形例7>
なお、ここでは、IPパケットのヘッダ(ESPヘッダ、MMTPヘッダ)に、認証に関連する情報(認証制御情報、認証方式識別)を設定することとしたが、この認証に関連する情報は、第1実施形態の変形例1で説明したように、個々のパケットに設定せずに、さらに上位の層で設定することとしてもよい。
その場合、
図22(a),
図22(b)に示したMPTのスクランブル方式記述子(4行)や、
図23に示したCATのスクランブル方式記述子(4行)を、
図30(a)に示したスクランブル方式記述子(7行)に替えればよい。
なお、
図30(a)は、
図22(a),
図22(b)のスクランブル方式記述子に対して、認証の有無や認証鍵識別情報(認証制御情報に対応)、認証方式識別を新たに付加している。
さらに、送信装置1Bは、第1実施形態の変形例2で説明したように、予め定めた1つのスクランブル方式を用いることとしてもよい。その場合、スクランブル方式記述子は、
図30(b)に示すように、
図30(a)からスクランブル方式識別子を省略すればよい。
【0212】
<11−8.変形例8>
また、第2実施形態に係る限定受信システムにおいて、IPパケットのヘッダ(ESPヘッダ、MMTPヘッダ)に、認証に関連する情報(認証制御情報、認証方式識別)や、初期値情報を設定する替わりに、さらに上位の層で認証に関連する情報や初期値情報を設定することとしてもよい。
例えば、
図22(a),
図22(b)に示したMPTのスクランブル方式記述子(4行)や、
図23に示したCATのスクランブル方式記述子(4行)を、
図30(c)に示したスクランブル方式記述子に替えればよい。
【0213】
この場合、
図29の受信装置3Bでは、CAT処理手段36やMPT処理手段37において、CATやMPTにスクランブル方式記述子が設定されていることを認識した際に、スクランブル方式記述子で特定される内容(認証制御情報、認証方式識別等)を、IPパケットフィルタリング手段31BやMMTPパケットフィルタリング手段32Bに通知すればよい。
【0214】
<11−9.変形例9>
さらに、送信装置1Bは、第1実施形態の変形例2で説明したように、予め定めた1つのスクランブル方式を用いることとしてもよい。その場合、スクランブル方式記述子は、
図30(d)に示すように、
図30(c)からスクランブル方式識別子を省略すればよい。
【0215】
(第3実施形態)
次に、本発明の第3実施形態に係る送信装置および受信装置を含む限定受信システムについて説明する。なお、第1実施形態で既に説明した事項については適宜省略する。また、第3実施形態では、CTRモードの初期カウンタ値の生成アルゴリズムのパラメータが第3実施形態と異なるだけなので、既に参照した図面を用いて説明することとする。
【0216】
第1実施形態では、例えば送信装置1の初期値生成手段23は、スクランブル対象がMMTである場合、CTRモードの初期カウンタ値を、前記した生成アルゴリズムで生成することとした。この生成アルゴリズムによれば、前記したように、初期値生成手段23が生成する初期カウンタ値において、MMTで規定された配信タイムスタンプとパケットシーケンス番号とを結合した値は、パケットごとに異なるため、同じ秘密鍵で利用されるカウンタ値を全て異なる値にすることができる。すなわち、前記した生成アルゴリズムは、MMTPパケットにユニークで、MMTで規定された少なくとも2つのパラメータをシードにして初期カウンタ値を生成するものである。そして、組み合わせるパラメータは、配信タイムスタンプとパケットシーケンス番号とに限定されるものではない。
【0217】
そもそもパケットシーケンス番号は、同一のパケットID(パケット識別子)を持つMMTPパケットの順序を示す情報であり、MMTPパケットのヘッダ部には、そのパケット識別子(16ビット)が含まれている。そこで、第3実施形態に係る送信装置1の初期値生成手段23は、前記した生成アルゴリズムにおいて、初期カウンタ値を生成するためのシードとして、MMTで規定されたパケット識別子とパケットシーケンス番号とを採用することとした。
【0218】
この場合、初期値生成手段23は、
図17に示す処理の流れに沿って、MMTPパケットのヘッダ部から、配信タイムスタンプの代わりにパケット識別子(16ビット)を取得すると共に、パケットシーケンス番号SEQ(32ビット)を取得し、さらに更新頻度R(16ビット)を取得する(ステップS1)。以下、パケット識別子をパケット識別子Tと表記する。
次に、初期値生成手段23は、取得した現在のパケットシーケンス番号SEQと、更新頻度Rとが、前記した式(1)を満たすか否かを判別する(ステップS2)。
前記式(1)を満たさない場合、すなわち、パケットシーケンス番号SEQを更新頻度Rで割った余りが0ではない場合(ステップS2でNo)、初期値生成手段23は、初期カウンタ値を生成せず、処理を終了する。
【0219】
前記式(1)を満たす場合、すなわち、パケットシーケンス番号SEQを更新頻度Rで割った余りが0である場合(ステップS2でYes)、初期値生成手段23は、所定のビット長を有するパディング情報ctrに「0」の値をセットする(ステップS3)。なお、パディング情報は必ずしも「0」でなくても構わず、例えば末尾を「1」の値にセットしてもよい。
そして、初期値生成手段23は、パケット識別子T、パケットシーケンス番号SEQと、パディング情報ctrとを、前記式(2)のように連接して初期カウンタ値IVを生成する(ステップS4)。ただし、例えば、パケット識別子Tと、パケットシーケンス番号SEQとを連接させた後のビット列のビット長が、初期カウンタ値IVの所定のビット長と同じになる場合、パディング情報ctrは不要である。よって、初期カウンタ値IVの生成にはパディング情報ctrは必須ではなく、少なくともパケット識別子Tと、パケットシーケンス番号SEQとを連接させればよい。
【0220】
第1実施形態では、例えば受信装置3のMMTPパケットフィルタリング手段32は、MMTPパケットのヘッダに設定されている配信タイムスタンプおよびパケットシーケンス番号をMMTPヘッダから取得し、初期値生成手段43に通知することとしたが、第3実施形態では、初期カウンタ値を生成するシードである2つのパラメータの組み合わせが異なる。よって、第3実施形態では、MMTPパケットフィルタリング手段32は、MMTPパケットのヘッダに設定されているパケットID(パケット識別子)およびパケットシーケンス番号をMMTPヘッダから取得し、初期値生成手段43に通知する。
【0221】
この場合、MMTPパケットフィルタリング手段32は、MMTPヘッダの初期値情報が設定されていると判定した場合、その旨をデスクランブル手段33に通知すると共に、MMTPパケットのヘッダに設定されているパケット識別子、パケットシーケンス番号、および初期値情報(更新頻度)をシードとして初期値生成手段43に通知する。
【0222】
これにより、初期値生成手段43は、
図17に示す処理の流れに沿って、MMTPパケットフィルタリング手段32から、初期値生成のためのシードとして、パケット識別子T(16ビット)、パケットシーケンス番号SEQ(32ビット)、および更新頻度R(16ビット)を取得する(ステップS1)。以降のステップS2〜ステップS4の処理は、送信装置1の初期値生成手段23と同様なので説明を省略する。そして、初期値生成手段43は、生成した初期値(初期カウンタ値)をデスクランブル手段33に出力する。
【0223】
ここで、更新頻度Rは、前記したように16ビットの所定値(0〜65535のいずれか)である。つまり、R=1としてもよい。R=1の場合、パケットシーケンス番号SEQを更新頻度Rで割った余りが0であり、常に前記式(1)を満たし(
図17のステップS2で常にYes)、パケット毎に初期カウンタ値を生成することができる。つまり、R=1の場合、1つの初期カウンタ値を異なるパケットのために用いることはせず、パケットが異なれば異なる初期カウンタ値を用いて暗号ブロックを生成するので、安全性を高める効果を奏する。