(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022136001
(43)【公開日】2022-09-15
(54)【発明の名称】放送送出装置及び中継装置
(51)【国際特許分類】
H04N 21/236 20110101AFI20220908BHJP
H04N 21/2347 20110101ALI20220908BHJP
H04N 21/4405 20110101ALI20220908BHJP
H04H 20/28 20080101ALI20220908BHJP
H04H 20/95 20080101ALI20220908BHJP
【FI】
H04N21/236
H04N21/2347
H04N21/4405
H04H20/28
H04H20/95
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022031187
(22)【出願日】2022-03-01
(31)【優先権主張番号】P 2021035479
(32)【優先日】2021-03-05
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】110001106
【氏名又は名称】弁理士法人キュリーズ
(72)【発明者】
【氏名】西村 敏
(72)【発明者】
【氏名】袴田 千草
(72)【発明者】
【氏名】梶田 海成
(72)【発明者】
【氏名】大竹 剛
(72)【発明者】
【氏名】松村 欣司
(72)【発明者】
【氏名】山本 正男
【テーマコード(参考)】
5C164
【Fターム(参考)】
5C164FA11
5C164GA04
5C164PA04
5C164SB03P
5C164SB14P
5C164SB25S
5C164UB03P
5C164UB21S
5C164UB71S
(57)【要約】 (修正有)
【課題】デジタル放送で伝送されたスクランブルコンテンツを多様な端末で再生可能な放送送出装置及び中継装置を提供する。
【解決手段】放送送出装置100は、放送コンテンツのストリームを分割してサンプルを得るサンプル化手段110、サンプルを少なくとも最後のサブサンプル以外の各々のスクランブル部が暗号鍵長の整数倍となるようにサブサンプルに分割するサブサンプル化手段120、サブサンプルをMMTPパケットに収め、かつ、少なくとも最後のユニット以外のMMTPパケット内のスクランブル部が暗号鍵の整数倍となるユニットに分割するユニット化手段130、サブサンプルのスクランブル対象であるスクランブル部に対してスクランブルを施すスクランブル手段150及びスクランブル部と非スクランブル部とをサブサンプルが含む場合、スクランブル部と非スクランブル部とを別々のMMTPパケットに格納するパケット化手段160を備える。
【選択図】
図3
【特許請求の範囲】
【請求項1】
多重化方式としてMMTを用いるデジタル放送システムのための放送送出装置であって、
映像又は音声の放送コンテンツのストリームを分割してサンプルを得るサンプル化手段と、
前記サンプルを分割し、少なくとも最後のサブサンプル以外について各々のスクランブル部が暗号鍵長の整数倍となるサブサンプルを得るサブサンプル化手段と、
前記サブサンプルを分割し、MMPTパケットに収まるサイズであり、かつ、少なくとも最後のユニット以外についてMMTPパケット内のスクランブル部が暗号鍵の整数倍となるユニットを得るユニット化手段と、
前記ユニットにおけるスクランブルの対象であるスクランブル部に対してスクランブルを施すスクランブル手段と、
スクランブルの対象ではない非スクランブル部と前記スクランブル部とを前記ユニットが含む場合、前記スクランブルが施された前記スクランブル部と前記非スクランブル部とを別々のMMTPパケットに格納するパケット化手段と、
を備えることを特徴とする放送送出装置。
【請求項2】
前記スクランブル手段は、前記ユニット単位でのスクランブル初期値であるMMTPパケットスクランブル初期値を設定するMMTPパケットスクランブル初期値設定手段を含み、
前記パケット化手段は、前記スクランブルが施された前記スクランブル部をペイロードに含み、且つ前記MMTPパケットスクランブル初期値を拡張ヘッダ領域に含むスクランブルMMPTパケットを生成する
ことを特徴とする請求項1に記載の放送送出装置。
【請求項3】
前記MMTPパケットスクランブル初期値設定手段は、前記サンプルを分割して得られた複数のサブサンプルをさらに分割して得られた複数のユニットについて、最初のスクランブル部を含むユニットに対する前記MMTPパケットスクランブル初期値として、前記サンプルのスクランブル初期値であるサンプルスクランブル初期値を設定し、2つ目以降の各ユニットに対するMMTPパケットスクランブル初期値として、直前のスクランブル部を含むユニットの前記MMTPパケットスクランブル初期値に所定値を加算した値を設定し、
前記所定値は、前記直前のスクランブル部を含むユニットの前記スクランブル部のバイト数を前記暗号鍵のバイト数で除算した値である
ことを特徴とする請求項2に記載の放送送出装置。
【請求項4】
前記パケット化手段は、前記スクランブルが施された前記スクランブル部を格納したMMPTパケットとは別のMMTPパケットとして、前記非スクランブル部をペイロードに含む非スクランブルMMPTパケットを生成する
ことを特徴とする請求項1乃至3のいずれか1項に記載の放送送出装置。
【請求項5】
1つ又は複数のサンプルをグループ化したムービーフラグメントを単位としてISO-BMFF形式でコンテナ化するためのムービーフラグメントメタ情報を生成するコンテナ化手段をさらに備え、
前記ムービーフラグメントメタ情報は、前記グループを構成するサンプルごとに、サンプルスクランブル初期値と、当該サンプルを構成するサブサンプル数の情報と、当該サンプルを構成する各サブサンプルの前記非スクランブル部及び前記スクランブル部のそれぞれのバイト数の情報と、を含み、
前記パケット化手段は、前記スクランブルが施された前記スクランブル部を格納したMMPTパケット及び前記非スクランブル部を格納したMMPTパケットとは別のMMTPパケットとして、前記ムービーフラグメントメタ情報をペイロードに含むMMPTパケットを生成する
ことを特徴とする請求項1乃至4のいずれか1項に記載の放送送出装置。
【請求項6】
前記スクランブル手段は、AES CTRモードにより前記スクランブルを行う
ことを特徴とする請求項1乃至5のいずれか1項に記載の放送送出装置。
【請求項7】
多重化方式としてMMTを用いるデジタル放送システムのための中継装置であって、
受信ストリームから、サブサンプルのうちスクランブルの対象ではない非スクランブル部を格納した非スクランブルMMTPパケットと、前記サブサンプルのうちスクランブルされたスクランブル部を格納したスクランブルMMTPパケットとを抽出する分離手段と、
前記非スクランブルMMTPパケットから取得した前記非スクランブル部と前記スクランブルMMTPパケットから取得した前記スクランブル部とから、前記サブサンプルを含んで構成されるスクランブルコンテンツを復元する復元手段と、
前記復元されたスクランブルコンテンツを、スクランブル復号を施すことなく、通信ネットワークを介して通信端末に送信する送信手段と、
を備えることを特徴とする中継装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、デジタル放送システムのための放送送出装置及び中継装置に関する。
【背景技術】
【0002】
従来のデジタル放送では、有料放送において契約者のみに放送を限定して受信させる限定受信方式、及び、無料放送用のコンテンツ保護方式が用いられている(非特許文献1参照)。
【0003】
一方、通信コンテンツの保護技術として知られるDRM(Digital Rights Management)には、主なものとしてMicrosoftのPlayReady、GoogleのWidevine、AppleのFairplayなどが知られている。これら異なるDRM技術をサポートする多様な通信端末への対応を実現するためのスクランブル(コンテンツの暗号化)方式としては、MPEG(Moving Picture Experts Group)のCENC(Common Encryption)と呼ばれる方式が知られている(非特許文献2参照)。
【0004】
この方式は、同一のスクランブルコンテンツを、異なるDRMや鍵管理システムでも同様に復号可能とするための国際標準技術である。具体的には、1つのスクランブルコンテンツのヘッダ部分に複数のDRMへの対応情報を併記することによって、いずれのDRMをサポートした通信端末でもライセンスサーバから該当のライセンスを取得して、スクランブルコンテンツを復号・再生することが可能になるというものである。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】ARIB STD-B61 「デジタル放送におけるアクセス制御方式(第2世代)及びCASプログラムのダウンロード方式」 第一編 「アクセス制御方式(第2世代)」
【非特許文献2】ISO/IEC 23001-07 「Information technology-MPEG systems technologies-Part7:Common encryption in ISO base media file format files」
【発明の概要】
【発明が解決しようとする課題】
【0006】
今後、放送コンテンツの視聴形態として、従来通りのチューナーを搭載した放送受信端末で視聴する形態に加え、チューナーを搭載した中継装置が放送経由で伝送された放送コンテンツを宅内の通信回線を利用してスマートフォンやタブレット端末など多様な通信端末に中継し、それら通信端末で視聴する形態が想定される。その際、コンテンツ保護の観点からは、放送コンテンツがスクランブルされたままの状態で中継されることが望ましい。
【0007】
ここで、多重化方式としてMMT(MPEG Media Transport、ISO/IEC 23008-1)を用いるデジタル放送のアクセス制御方式では、放送コンテンツを伝送するMMTPパケットにおけるMMTPペイロードのデータ部分を範囲として、MMTPパケット単位でスクランブルが施される。
【0008】
一方、MPEG-DASH(ISO/IEC 23009-1)などの通信コンテンツで用いられるCENC方式においては、サンプル(例えば映像・音声の1フレーム)を単位としてサンプル全体にスクランブルを施すFull Sample encryption方式と、サンプルを、非スクランブル部及びスクランブル部で構成されるサブサンプル単位でスクランブルするSubsample encryption方式とがある。
【0009】
放送コンテンツ及び通信コンテンツで共通の暗号アルゴリズム(AES CTRモードなど)を用いることは可能であるが、スクランブルの単位が異なるため、放送コンテンツをスクランブルしたまま通信端末に中継し、通信端末においてスクランブルの復号及び再生を可能とする方法が確立していなかった。
【0010】
そこで、本発明は、デジタル放送で伝送されたスクランブルコンテンツを多様な端末で再生できるようにする放送送出装置及び中継装置を提供することを目的とする。
【課題を解決するための手段】
【0011】
第1の態様に係る放送送出装置は、多重化方式としてMMTを用いるデジタル放送システムのための放送送出装置であって、映像又は音声の放送コンテンツのストリームを分割してサンプルを得るサンプル化手段と、前記サンプルを分割し、少なくとも最後のサブサンプル以外について各々のスクランブル部が暗号鍵長の整数倍となるサブサンプルを得るサブサンプル化手段と、前記サブサンプルを分割し、MMPTパケットに収まるサイズであり、かつ、少なくとも最後のユニット以外についてMMTPパケット内のスクランブル部が暗号鍵の整数倍となるユニットを得るユニット化手段と、前記ユニットにおけるスクランブルの対象であるスクランブル部に対してスクランブルを施すスクランブル手段と、スクランブルの対象ではない非スクランブル部と前記スクランブル部とを前記ユニットが含む場合、前記スクランブルが施された前記スクランブル部と前記非スクランブル部とを別々のMMTPパケットに格納するパケット化手段と、を備えることを要旨とする。
【0012】
第2の態様に係る中継装置は、多重化方式としてMMTを用いるデジタル放送システムのための中継装置であって、受信ストリームから、サブサンプルのうちスクランブルの対象ではない非スクランブル部を格納した非スクランブルMMTPパケットと、前記サブサンプルのうちスクランブルされたスクランブル部を格納したスクランブルMMTPパケットとを抽出する分離手段と、前記非スクランブルMMTPパケットから取得した前記非スクランブル部と前記スクランブルMMTPパケットから取得した前記スクランブル部とから、前記サブサンプルを含んで構成されるスクランブルコンテンツを復元する復元手段と、前記復元されたスクランブルコンテンツを、スクランブル復号を施すことなく、通信ネットワークを介して通信端末に送信する送信手段と、を備えることを要旨とする。
【発明の効果】
【0013】
本発明によれば、デジタル放送で伝送されたスクランブルコンテンツを多様な端末で再生できるようにする放送送出装置及び中継装置を提供できる。
【図面の簡単な説明】
【0014】
【
図1】実施形態に係るデジタル放送システムの構成を示す図である。
【
図2】実施形態に係るデジタル放送システムにおける多重化方法の概要を説明するための図である。
【
図3】実施形態に係る放送送出装置の構成を示す図である。
【
図4】実施形態に係る放送送出装置の動作を説明するための図である。
【
図5】実施形態に係る放送送出装置の動作を説明するための図である。
【
図6】実施形態に係るmoofに含まれるsencの構成を示す図である。
【
図7】実施形態に係るスクランブル手段の構成を示す図である。
【
図8】実施形態に係るマルチタイプヘッダー拡張の構成を示す図である。
【
図9】実施形態に係る放送受信端末、中継装置、及び通信端末の構成を示す図である。
【
図10】実施形態に係る多重化方法を示すフロー図である。
【発明を実施するための形態】
【0015】
図面を参照して実施形態について説明する。なお、以下の図面の記載において、同一又は類似の部分には、同一又は類似の符号を付している。
【0016】
(デジタル放送システム)
まず、本実施形態に係るデジタル放送システムについて説明する。
図1は、本実施形態に係るデジタル放送システム1の構成を示す図である。
【0017】
図1に示すように、本実施形態に係るデジタル放送システム1は、ARIB規格に基づく放送システムであって、放送送出装置100と、放送受信端末200と、中継装置300と、通信端末400とを有する。
【0018】
放送送出装置100は、スクランブルされた放送コンテンツ(スクランブルコンテンツ)を送出する装置である。放送送出装置100は、例えば放送局に設けられる。本実施形態において、放送送出装置100は、映像・音声などのメディアデータである放送コンテンツをISO-BMFF(ISO/IEC 14496-12)形式でコンテナ化し、MMTの規格に基づいてMMTP化したストリームとして伝送する。
【0019】
放送受信端末200は、放送伝送路10を介してスクランブルコンテンツを受信する受信装置の一例である。放送伝送路10は、いずれの放送の伝送路であってもよいが、例えば地上放送、衛星放送、ケーブル放送などの伝送路である。放送受信端末200は、チューナーなどの放送受信機能を搭載した端末であり、デジタル放送で伝送されたスクランブルコンテンツを受信し、受信したスクランブルコンテンツに対してスクランブル復号を施し、放送コンテンツを再生する。放送受信端末200は、ARIB STD-B61で規定されるデジタル放送のアクセス制御方式(以下、「ARIB方式」と呼ぶ)に従ってスクランブル復号(以下、「放送スクランブル復号」と呼ぶ)を行う。
【0020】
中継装置300は、放送伝送路10を介してスクランブルコンテンツを受信する受信装置の他の例である。中継装置300は、チューナーなどの放送受信機能を搭載した中継装置であり、デジタル放送で伝送されたスクランブルコンテンツを受信し、スクランブル復号を施すことなく、通信ネットワーク20を介してスクランブルコンテンツを通信端末400に中継する。通信ネットワーク20は、例えば宅内に設けられるLAN(Local Area Network)である。LANは、無線LANであってもよい。
【0021】
通信端末400は、放送受信機能を搭載していない端末である。通信端末400は、例えば、PC(Perosonal Computer)、スマートフォン、又はタブレット端末などである。通信端末400は、中継装置300により中継されたスクランブルコンテンツを通信ネットワーク20経由で受信し、受信したスクランブルコンテンツに対してスクランブル復号を施し、放送コンテンツを再生する。通信端末400は、通信コンテンツ向けのスクランブル方式であるCENC方式に従ってスクランブル復号(以下、「通信スクランブル復号」と呼ぶ)を行う。
【0022】
このように、中継装置300によりスクランブルコンテンツを通信端末400に中継することにより、放送受信機能を搭載していない通信端末400であっても放送コンテンツを再生可能である。ここで、通信ネットワーク20上ではスクランブルが施された状態で伝送されるため、コンテンツ保護も担保できる。しかしながら、スクランブルの方式に関し、ARIB方式はCENC方式と互換性がないため、通信端末400がARIB方式でスクランブルされた放送コンテンツに対して通信スクランブル復号を行うことは困難である。
【0023】
そこで、本実施形態において、放送送出装置100は、ARIB方式に準拠しつつ、CENC方式と互換性があるかたちで放送コンテンツのスクランブル及び多重化を行ってスクランブルコンテンツを伝送することにより、通信端末400がスクランブルコンテンツに対して通信スクランブル復号を行うことを可能とする。
【0024】
図2は、本実施形態に係るデジタル放送システム1における多重化方法の概要を説明するための図である。
図2(a)はARIB方式及びCENC方式を比較して示し、
図2(b)は本実施形態に係る多重化方法の概要を示す。
【0025】
図2(a)に示すように、ARIB方式は、MMTPパケットにおけるMMTPペイロードのデータ部分をスクランブル範囲として、MMTPパケット単位でスクランブルを施す。スクランブルに用いるスクランブル初期値(IV:Initialization Vector)はMMTPパケット単位で設定される。
【0026】
一方、CENC方式のSubsample encryptionは、サンプル(例えば映像・音声の1フレーム)を分割して得たサブサンプル単位でスクランブルを施す。但し、コンテンツのヘッダ情報(非スクランブル部)をスクランブルせずに、スクランブル部のみをスクランブルする。スクランブルに用いるスクランブル初期値(IV)は、サンプル単位で設定される。
【0027】
図2(b)に示すように、本実施形態に係る多重化方法は、サンプルを分割し、各々のスクランブル部が暗号鍵長の整数倍となるようにサブサンプル化し、各サブサンプルをさらに分割し、MMTPパケットに収まるサイズであり、かつMMTPパケット内のスクランブル部が暗号鍵長の整数倍となるようにユニット化することにより、MMTPパケット単位でスクランブルを完結させる(サブサンプルとユニットは等しくても良い)。これにより、ARIB方式及びCENC方式の両方式のスクランブル単位に関する制約を満たすことができる。但し、サンプルの最後のサブサンプルに限り、スクランブル部が暗号鍵長の整数倍でなくても良い。また、最後のサブサンプルの最後のユニットに限り、スクランブル部が暗号鍵長の整数倍でなくても良い。
【0028】
また、本実施形態に係る多重化方法は、サブサンプルの非スクランブル部とスクランブル部とを別々のMMTPパケットに格納し、スクランブル部を運ぶMMTPパケットのペイロードをスクランブル範囲とする。これにより、ARIB方式及びCENC方式の両方式のスクランブル範囲に関する制約を満たすことができる。
【0029】
さらに、本実施形態に係る多重化方法は、サンプルの最初のスクランブル部を含むユニットのIVはサンプルのIVと共通とし、2つ目以降の各ユニットに対するIVは直前のスクランブル部を含むユニットのIVに基づきMMTPパケットごとに設定する。これにより、ARIB方式及びCENC方式の両方式のスクランブル初期値に関する制約を満たすことができる。
【0030】
なお、本実施形態に係る多重化方法は、スクランブルに用いる暗号アルゴリズムとして、ARIB方式及びCENC方式の両方式で利用可能な暗号アルゴリズムを採用する。このような暗号アルゴリズムは、AES CTRモードである。
【0031】
このような多重化方法を用いることにより、ARIB方式に準拠しつつ、CENC方式と互換性があるかたちで放送コンテンツのスクランブル及び多重化を行うことができるため、放送受信端末200及び通信端末400のいずれも同一のスクランブルコンテンツに対してスクランブル復号を行うことが可能である。よって、デジタル放送で伝送されたスクランブルコンテンツを多様な端末で再生できるようになる。
【0032】
(放送送出装置)
次に、本実施形態に係る放送送出装置100について説明する。
図3は、本実施形態に係る放送送出装置100の構成を示す図である。
図4及び
図5は、本実施形態に係る放送送出装置100の動作を説明するための図である。
【0033】
図3に示すように、本実施形態に係る放送送出装置100は、サンプル化手段110と、サブサンプル化手段120と、ユニット化手段130と、コンテナ化手段140と、スクランブル手段150と、パケット化手段160と、多重化手段170とを有する。
【0034】
サンプル化手段110は、
図4(a)及び(b)に示すように、入力される放送コンテンツの映像・音声ストリームを、例えば1フレーム毎のサンプルに分割する。放送コンテンツは、例えば、H.264|MPEG-4 AVC(Advanced Video Coding)、H.265|MPEG-H HEVC(High Efficiency Video Coding)といった映像符号化方式によりエンコードされたNAL(Network Abstraction Layer)構造の映像ストリームや、MPEG-4 AAC(Advanced Audio Coding)などの音声ストリームなどを含むものとする。
【0035】
サブサンプル化手段120は、サンプル毎のスクランブルの初期値情報であるサンプルスクランブル初期値を決定するとともに、
図4(b)及び(c)に示すように、映像・音声のサンプルをサブサンプルに分割する。
【0036】
この時、サブサンプル化手段120は、NAL構造の映像フレームにおいては、VCL(Video Coding Layer)NALユニットの前に配置された複数の非VCL(Video Coding Layer)NALユニットをVCL NALユニットとは別のサブサンプルとしてもよい。また、サブサンプル化手段120は、
図4(c)及び(d)に示すように、サブサンプルを非スクランブル部とスクランブル部とに分割してもよい。この時、スクランブル部は暗号鍵長の整数倍となるようにする(ただし、最後のサブサンプルに限りスクランブル部は暗号鍵長の整数倍でなくても良い)。非スクランブル部は、例えば、非VCL NALユニットや、VCL NALユニットのうち先頭に位置するNALユニット長やNALユニットタイプを含む部分(NALヘッダ)とする。また、スクランブル部を暗号鍵長の整数倍となるようにするため、NALヘッダに続くVCL NALユニットのデータの先頭に位置する、暗号鍵長の整数倍で除算した余りに相当する長さの部分を非スクランブル部とする。
【0037】
ユニット化手段130は、
図4(e)に示すように、サブサンプルを予め設定したMMTPパケットの最大サイズ(例えば、1400バイト)を超えないようにユニットに分割する。この時、ユニットがスクランブル部を含む場合は、スクランブル部が暗号鍵長の整数倍となるようにする(ただし、最後のサブサンプルの最後のユニットに限り、暗号鍵長の整数倍でなくても良い)。例えば、
図4(d)に示すように、スクランブル部が暗号鍵長のN倍の長さである場合、ユニット化手段130は、
図4(e)に示すように、スクランブル部を含むユニット#1及び#2について、ユニット#1のスクランブル部の長さを暗号鍵長のn倍(n<N)とし、ユニット#2のスクランブル部の長さを暗号鍵長の(N-n)倍とする。
【0038】
コンテナ化手段140は、サンプルをISO-BMFF形式でコンテナ化するためのメタ情報を生成する。コンテナ化手段140は、
図5(a)に示すように、moov、moof、及びmdatのヘッダ情報を生成する。ここで、moovは、入力映像・音声ストリームの符号化パラメータなどを含むストリーム全体の初期化情報であり、メディア全体のメタ情報に相当する。moofは、サンプルを単独あるいは符号化の参照関係にある複数のサンプルをグループ化したムービーフラグメントのメタ情報である。すなわち、moofは、1つ又は複数のサンプルをグループ化したムービーフラグメントを単位としてISO-BMFF形式でコンテナ化するためのムービーフラグメントメタ情報である。mdatは、グループ毎のサンプルを格納するものである。mdatの先頭部分には、mdat長及びタイプが格納される。moof及びmdatは、ムービーフラグメントを構成する。
【0039】
スクランブルに関しては、CENC規格に基づき、moovに、暗号鍵の取得先を示す情報を含むpsshや暗号アルゴリズムに関する情報を含むschm、デフォルトパラメータを含むtencなどを配置することができる。また、moofには、psshやmoofの暗号鍵を特定するための識別子などを含むsbgp、sgpdや、サンプルやサブサンプルのスクランブルに関する情報を含むsaiz、saio、sencなどを配置することができる。
【0040】
図6は、本実施形態に係るmoofに含まれるsencの構成を示す図である。
図6に示すように、本実施形態に係るsencは、ムービーフラグメントのサンプル数を示すsample_countと、サンプル毎のInitializationVector及びsubsample_countと、サブサンプル毎のBytesOfClearData及びBytesOfProtectedDataとを有する。ここで、InitializationVectorは、対応するサンプルのスクランブル初期値であり、subsample_countは、対応するサンプルにおけるサブサンプル数を示す値である。BytesOfClearDataは、対応するサブサンプルにおける非スクランブル部のバイト数を示す値であり、BytesOfProtectedDataは、対応するサブサンプルにおけるスクランブル部のバイト数を示す値である。
【0041】
スクランブル手段150は、別途設定する暗号鍵を用いて、AES 128ビットCTRモードにより、サンプルの最初のサブサンプルから順次スクランブルを施す。
図7は、本実施形態に係るスクランブル手段150の構成を示す図である。
【0042】
図7に示すように、スクランブル手段150は、ブロック分割手段151と、カウンタ手段152と、AES暗号化手段153と、ブロック暗号化手段154と、MMTPパケットスクランブル初期値設定手段155とを有する。
【0043】
ブロック分割手段151は、ユニットのスクランブル部を暗号鍵長(例えば16バイト)毎のブロックに分割する。
【0044】
カウンタ手段152は、サンプルスクランブル初期値とカウンタ値とを足し合わせた値を出力する。ここで、カウンタ値は、サンプルの最初のスクランブル部を含むユニットの最初のブロックでは0であり、サンプル内のすべてのユニットの全てのブロックのスクランブルが終わるまで継続してブロック毎に1ずつインクリメントされる。サンプルのスクランブルが終了すると、カウンタ値は0にリセットされる。
【0045】
AES暗号化手段153は、カウンタ手段152の出力と暗号鍵とから、ブロック毎にAES暗号を生成する。
【0046】
ブロック暗号化手段154は、AES暗号化手段153により生成されたAES暗号で、対応するブロックを暗号化し、スクランブルデータを出力する。
【0047】
MMTPパケットスクランブル初期値設定手段155は、ユニットのスクランブル部の最初のブロックのカウンタ値とサンプルスクランブル初期値とを足し合わせた値を、当該ユニットのMMTPパケットスクランブル初期値として設定する。具体的には、MMTPパケットスクランブル初期値設定手段155は、サンプルを分割して得られた複数のサブサンプルをさらにMMTPパケットに収まり、かつスクランブル部が暗号鍵長の整数倍になるサイズに分割したユニットについて(最後のサブサンプルの最後のユニットに限り、スクランブル部が暗号鍵長の整数倍でなくても良い)、先頭のユニットに対するMMTPパケットスクランブル初期値として、当該サンプルのスクランブル初期値であるサンプルスクランブル初期値を設定する。また、MMTPパケットスクランブル初期値設定手段155は、2つ目以降の各ユニットに対するMMTPパケットスクランブル初期値として、直前のスクランブル部を含むユニットのMMTPパケットスクランブル初期値に所定値を加算した値を設定する。当該所定値は、直前のスクランブル部を含むユニットのスクランブル部のバイト数を暗号鍵のバイト数(16バイト)で除算した値である。
【0048】
パケット化手段160は、ISO-BMFF形式でコンテナ化するためのメタ情報と、スクランブルが施されたユニット及びMMTPパケットスクランブル初期値とを基にMMTPパケットを生成し、MMTPパケット化を行う。
【0049】
図5(b)に示すように、パケット化手段160は、moovなどのメディア全体のメタデータはMMT規格のfragment_typeが0のMMTPパケット(非スクランブルMMTPパケット)としてパケット化する。また、パケット化手段160は、ムービーフラグメントのメタ情報(moof)と、mdatのバイト長(mdat長)・タイプフィールドは、fragment_typeが1のMMTPパケットとしてパケット化する。さらに、パケット化手段160は、mdatにおけるサブサンプルのデータはfragment_typeが2のMMTPパケットとしてパケット化する。
【0050】
上述のように、スクランブル手段150は、ユニットにおけるスクランブルの対象であるスクランブル部に対してスクランブルを施し、非スクランブル部にはスクランブルを施さない。パケット化手段160は、スクランブル部と非スクランブル部とを含むユニットについて、スクランブル部と非スクランブル部とを別々のMMTPパケットのペイロードに格納することでMMTPパケット化する。
【0051】
ユニットを格納するMMTPパケットのスクランブルに関する情報は、ARIB STD-B61に基づき、マルチ拡張ヘッダータイプを0x0001とするマルチタイプヘッダー拡張を用いて記載できる。すなわち、スクランブルに関する情報は、MMTPパケットのヘッダにおける拡張ヘッダ領域に格納される。
【0052】
図8は、本実施形態に係るマルチタイプヘッダー拡張の構成を示す図である。なお、本図の一部は、ARIB STD-B61 1.4版の
図3-1を引用している。
【0053】
図8に示すように、パケット化手段160は、非スクランブル部を運ぶMMTPパケット(非スクランブルMMTPパケット)の場合、マルチタイプヘッダー拡張のMMTPスクランブル制御ビットを0x00とするか、又は、マルチタイプヘッダー拡張を利用しないことで、当該MMTPパケットにスクランブルを施されていないことを示す。
【0054】
パケット化手段160は、スクランブル部を運ぶMMTPパケット(スクランブルMMTPパケット)の場合、MMTPスクランブル制御ビットを0x10(スクランブル有り・偶数鍵)又は0x11(スクランブル有り・奇数鍵)とするとともに、MMTP初期値制御ビットを0x01としたうえで、MMTスクランブル初期値情報として当該MMTPパケットのMMTPパケットスクランブル初期値を格納することで、スクランブルが施されていることを示す。なお、現在使用している暗号鍵が奇数鍵か偶数鍵であるかは、各受信装置に共通の鍵関連情報であるECM(Entitlement Control Message)などにより別途識別するものとする。ECMの詳細については、ARIB STD-B61に詳しい。
【0055】
多重化手段170は、パケット化手段160から順次MMTPパケットを入力し、1本のストリームに多重化して送出する。
【0056】
(放送受信端末、中継装置、通信端末)
次に、本実施形態に係る放送受信端末200、中継装置300、及び通信端末400について説明する。
図9は、本実施形態に係る放送受信端末200、中継装置300、及び通信端末400の構成を示す図である。
【0057】
図9に示すように、放送受信端末200は、分離手段210と、放送スクランブル復号手段220と、再生手段230とを有する。
【0058】
分離手段210は、放送伝送路10を介して受信するストリームを多重分離してスクランブルコンテンツを抽出する。放送スクランブル復号手段220は、ARIB STD-B61に基づいて、MMTPの階層において、スクランブルコンテンツに対してスクランブル復号(すなわち、放送スクランブル復号)を施し、放送コンテンツを復元する。再生手段230は、放送コンテンツを再生する。
【0059】
中継装置300は、分離手段310と、コンテナ復元手段320と、送信手段330とを有する。
【0060】
分離手段310は、放送伝送路10を介して受信するストリームを多重分離してスクランブルコンテンツを抽出する。具体的には、分離手段310は、受信ストリームから、サブサンプルのうちスクランブルの対象ではない非スクランブル部を格納した非スクランブルMMTPパケットと、サブサンプルのうちスクランブルされたスクランブル部を格納したスクランブルMMTPパケットと、moovなどのメディア全体のメタデータを格納した非スクランブルMMTPパケットと、ムービーフラグメントのメタ情報(moof)とmdatのバイト長(mdat長)・タイプフィールドとを格納した非スクランブルMMTPパケットとを抽出する(
図5(b)参照)。
【0061】
コンテナ復元手段320は、各サブサンプルの非スクランブル部及びスクランブル部と、moovなどのメディア全体のメタデータと、ムービーフラグメントのメタ情報(moof)とmdatのバイト長(mdat長)・タイプフィールドとから、ISO-BMFF形式のスクランブルコンテンツを復元する(
図5(a)参照)。
【0062】
送信手段330は、コンテナ復元手段320により復元されたスクランブルコンテンツを、スクランブル復号を施すことなく、通信ネットワーク20を介して通信端末400に送信する。
【0063】
通信端末400は、受信手段410と、通信スクランブル復号手段420と、再生手段430とを有する。
【0064】
受信手段410は、中継装置300からISO-BMFF形式のスクランブルコンテンツを受信する。通信スクランブル復号手段420は、CENC規格に基づいて、スクランブルコンテンツに対してスクランブル復号(すなわち、通信スクランブル復号)を施し、放送コンテンツを復元する。再生手段430は、放送コンテンツを再生する。
【0065】
(多重化方法)
次に、本実施形態に係る放送送出装置100における多重化方法について説明する。
図10は、本実施形態に係る多重化方法を示すフロー図である。
【0066】
なお、本フロー図では、ISO-BMFFのメタ情報のうちmoovなどのメディア全体のメタデータは作成・送出済みであるものとする。また、サンプルG個を単位(グループ)としてムービーフラグメントを生成するものとする。さらに、暗号鍵は別途設定されており、本フロー図では偶数鍵であるものとする。
【0067】
図10に示すように、ステップS1において、サンプル化手段110は、ループカウンタiを0とする。
【0068】
ステップS2において、サンプル化手段110は、入力ストリームからグループ内i番目のサンプルであるサンプル(i)を分離する。
【0069】
ステップS3において、サブサンプル化手段120は、サンプル(i)を、スクランブルを施さない非スクランブル部及びそれに続くスクランブルをかける部分であるスクランブル部、或いはいずれか一方を含み、(最後のサブサンプル以外は)スクランブル部が暗号鍵長の整数倍になるようにサブサンプルに分割する(例えばL個とする)。
【0070】
ステップS4において、各々のサブサンプルを所定のサイズ(例えば1400バイト)以下であり、かつスクランブル部が暗号鍵長の整数倍のユニットに分割する(サブサンプル長とユニット長が等しくなるようにしてもよい。(最後のサブサンプルの最後のユニットに限り暗号鍵長の整数倍でなくても良い)。
【0071】
ステップS5において、スクランブル手段150は、サンプル(i)のスクランブル初期値であるサンプルスクランブル初期値IVs(i)を決定し、カウンタCを0に設定する。
【0072】
ステップS6において、スクランブル手段150は、ユニットのループカウンタjを0とし、ユニット数をMとして、各サブサンプルに対するスクランブル処理を開始する。
【0073】
ステップS7において、スクランブル手段150は、ユニット(j)のスクランブル初期値(MMTPパケットスクランブル初期値)であるIVss(j)をIVs(i)+Cに設定する。
【0074】
ステップS8において、スクランブル手段150は、ユニット(j)のスクランブル部を16バイト毎のブロックに分割する(最後のサブサンプルの最後のユニットは16バイト未満となる場合がある)。
【0075】
ステップS9において、スクランブル手段150は、ブロックのループカウンタkを0とし、ユニット(j)のブロック数をNとして、ユニット(j)の各ブロックに対する処理を開始する。
【0076】
ステップS10において、スクランブル手段150は、暗号鍵及びサンプルスクランブル初期値とカウンタの加算値(IVs(i)+C)をもとに、AES128ビットによりブロック(k)にスクランブルを施す。
【0077】
ステップS11において、スクランブル手段150は、カウンタC及びブロックのループカウンタkをインクリメント(すなわち、1を加算)する。
【0078】
ステップS12において、スクランブル手段150は、ブロックのループカウンタkがNよりも小さいか否かを判定する。ブロックのループカウンタkがNよりも小さい場合(ステップS12:YES)、すなわち、ユニット(j)の全ブロックに対する処理が終了していない場合、ステップS10に戻り、次のブロックの処理に移る。
【0079】
一方、ブロックのループカウンタkがNに達した場合(ステップS12:NO)、すなわち、ユニット(j)の全ブロックに対する処理が終了した場合、ステップS13において、スクランブル手段150は、ユニットのループカウンタjをインクリメントする。
【0080】
ステップS14において、スクランブル手段150は、ユニットのループカウンタjがMよりも小さいか否かを判定する。jがMよりも小さい場合(ステップS14:YES)、すなわち、サンプル(i)の全サブサンプルの全ユニットに対する処理が終了していない場合、ステップS7に戻り、次のユニットの処理に移る。
【0081】
一方、ユニットのループカウンタjがMに達した場合(ステップS14:NO)、すなわち、全サブサンプルの全ユニットに対する処理が終了した場合、ステップS15において、スクランブル手段150は、サンプルのループカウンタiをインクリメントする。
【0082】
ステップS16において、スクランブル手段150は、サンプルのループカウンタiがGよりも小さいか否かを判定する。サンプルのループカウンタiがGよりも小さい場合(ステップS16:YES)、すなわち、グループ内の全サンプルに対する処理が終了していない場合、ステップS2に戻り、次のサンプルの処理に移る。
【0083】
一方、サンプルのループカウンタiがGに達した場合(ステップS16:NO)、すなわち、グループ内の全サンプルに対する処理が終了した場合、ステップS17において、コンテナ化手段140は、グループ内のサンプル(0~G-1)毎のサンプルスクランブル初期値IVs(0~G-1)と、サブサンプル(0~L-1)の非スクランブル部・スクランブル部のバイト数の情報と、を含むムービーフラグメントのメタ情報(moofのsenc)を生成し、且つ、サンプル(0~G-1)を格納するmdatのヘッダ(mdat長及びタイプ)を生成する。パケット化手段160は、これらをfragment_typeが1のMMTPパケットとして生成及び送出する。
【0084】
ステップS18において、パケット化手段160は、ユニットのループカウンタjを0にリセットし、各ユニットに対する処理を開始する。
【0085】
ステップS19において、パケット化手段160は、ユニット(j)の非スクランブル部を、マルチタイプヘッダー拡張のMMTPスクランブル制御ビットを0x00とするか、マルチタイプヘッダー拡張を利用しないスクランブル無しのMMTPパケットとして生成及び送出する。
【0086】
ステップS20において、パケット化手段160は、ユニット(j)のスクランブル部を、マルチタイプヘッダー拡張のMMTPスクランブル制御ビットを0x10(スクランブル有り・偶数鍵)とするとともに、MMTP初期値制御ビットを0x01としたうえで、MMTスクランブル初期値情報をIVss(j)としたスクランブル有りのMMTPパケットとして生成及び送出する。
【0087】
ステップS21において、パケット化手段160は、ユニットのループカウンタjをインクリメントする。
【0088】
ステップS22において、パケット化手段160は、ユニットのループカウンタjがMよりも小さいか否かを判定する。ユニットのループカウンタjがMよりも小さい場合(ステップS22:YES)、すなわち、全サブサンプルの全ユニットに対する処理が終了していない場合、ステップS19に戻り、次のユニットの処理に移る。
【0089】
一方、ユニットのループカウンタjがMに達した場合(ステップS22:NO)、すなわち、全サブサンプルの全ユニットに対する処理が終了した場合、1つのムービーフラグメントの多重化を完了して処理を終了する。
【0090】
(実施形態のまとめ)
以上説明したように、本実施形態に係る放送送出装置100は、多重化方式としてMMTを用いるデジタル放送システム1のための放送送出装置100であって、映像又は音声の放送コンテンツのストリームを分割してサンプルを得るサンプル化手段110と、サンプルを分割し、各々のスクランブル部が暗号鍵長の整数倍となるサブサンプルを得るサブサンプル化手段120と、サブサンプルを分割し、MMPTパケットに収まるサイズであり、かつMMTPパケット内のスクランブル部が暗号鍵長の整数倍となるユニットを得るユニット化手段130と、ユニットにおけるスクランブルの対象であるスクランブル部に対してスクランブルを施すスクランブル手段150と、スクランブルの対象ではない非スクランブル部とスクランブル部とをユニットが含む場合、スクランブルが施されたスクランブル部と非スクランブル部とを別々のMMTPパケットに格納するパケット化手段160と、を有する。但し、サンプルの最後のサブサンプルに限り、スクランブル部が暗号鍵長の整数倍でなくても良い。また、最後のサブサンプルの最後のユニットに限り、スクランブル部が暗号鍵長の整数倍でなくても良い。
【0091】
これにより、ARIB方式及びCENC方式の両方式のスクランブル単位及びスクランブル範囲に関する制約を満たすことができるため、ARIB方式に準拠しつつ、CENC方式と互換性があるかたちで放送コンテンツのスクランブル及び多重化を行うことが容易になる。
【0092】
本実施形態において、スクランブル手段150は、ユニット単位でのスクランブル初期値であるMMTPパケットスクランブル初期値を設定するMMTPパケットスクランブル初期値設定手段155を有する。パケット化手段160は、スクランブルが施されたスクランブル部をペイロードに含み、且つMMTPパケットスクランブル初期値を拡張ヘッダ領域に含むスクランブルMMPTパケットを生成する。
【0093】
具体的には、MMTPパケットスクランブル初期値設定手段155は、サンプルを分割して得られた複数のサブサンプルをさらに分割して得られたユニットについて、先頭のユニットに対するMMTPパケットスクランブル初期値として、サンプルのスクランブル初期値であるサンプルスクランブル初期値を設定し、2つ目以降の各ユニットに対するMMTPパケットスクランブル初期値として、直前のスクランブル部を含むユニットのMMTPパケットスクランブル初期値に所定値を加算した値を設定する。所定値は、直前のスクランブル部を含むユニットのスクランブル部のバイト数を暗号鍵のバイト数で除算した値である。
【0094】
これにより、ARIB方式及びCENC方式の両方式のスクランブル初期値(IV)に関する制約を満たすことができるため、ARIB方式に準拠しつつ、CENC方式と互換性があるかたちで放送コンテンツのスクランブル及び多重化を行うことが容易になる。
【0095】
本実施形態において、パケット化手段160は、スクランブルが施されたスクランブル部を格納したMMPTパケットとは別のMMTPパケットとして、非スクランブル部をペイロードに含む非スクランブルMMPTパケットを生成する。これにより、非スクランブル部をMMPTパケットにより適切に多重化及び伝送できる。
【0096】
本実施形態において、コンテナ化手段140は、1つ又は複数のサンプルをグループ化したムービーフラグメントを単位としてISO-BMFF形式でコンテナ化するためのムービーフラグメントメタ情報を生成する。ムービーフラグメントメタ情報は、グループを構成するサンプルごとに、サンプルスクランブル初期値と、当該サンプルを構成するサブサンプル数の情報と、当該サンプルを構成する各サブサンプルの非スクランブル部及びスクランブル部のそれぞれのバイト数の情報とを含む。パケット化手段160は、スクランブルが施されたスクランブル部を格納したMMPTパケット及び非スクランブル部を格納したMMPTパケットとは別のMMTPパケットとして、ムービーフラグメントメタ情報をペイロードに含むMMPTパケットを生成する。これにより、ムービーフラグメントメタ情報をMMPTパケットにより適切に多重化及び伝送できる。
【0097】
本実施形態において、スクランブル手段150は、AES CTRモードによりスクランブルを行う。AES CTRモードは、ARIB方式及びCENC方式で共通する暗号アルゴリズムであるため、AES CTRモードによりスクランブルを行うことにより、ARIB方式に準拠しつつ、CENC方式と互換性があるかたちで放送コンテンツのスクランブル及び多重化を行うことが容易になる。
【0098】
本実施形態に係る中継装置300は、多重化方式としてMMTを用いるデジタル放送システム1のための中継装置300であって、受信ストリームから、サブサンプルのうちスクランブルの対象ではない非スクランブル部を格納した非スクランブルMMTPパケットと、サブサンプルのうちスクランブルされたスクランブル部を格納したスクランブルMMTPパケットとを分離する分離手段310と、非スクランブルMMTPパケットから取得した非スクランブル部とスクランブルMMTPパケットから取得したスクランブル部とから、サブサンプルを含んで構成されるスクランブルコンテンツを復元するコンテナ復元手段320と、復元されたスクランブルコンテンツを、スクランブル復号を施すことなく、通信ネットワーク20を介して通信端末400に送信する送信手段330とを有する。
【0099】
これにより、放送受信機能を搭載していない通信端末400であっても放送コンテンツを再生可能になる。ここで、通信ネットワーク20上ではスクランブルが施された状態で放送コンテンツが伝送されるため、コンテンツ保護も担保できる。
【0100】
以上により、本実施形態によれば、ARIB STB-B61に基づくMMTレイヤにおけるスクランブル復号(放送スクランブル復号)が可能であって、且つ、スクランブルを施したままMMTレイヤを多重分離してISO-BMFF形式の放送コンテンツを抽出してCENC規格に基づくISO-BMFFレイヤにおけるスクランブル復号(通信スクランブル復号)も可能になる。よって、デジタル放送経由で伝送された放送コンテンツを放送受信端末200においてスクランブルを復号して再生できるとともに、スクランブルが施されたまま通信ネットワーク20を介して通信端末400に中継し、通信端末400においてスクランブルを復号して再生できるようになる。
【0101】
(その他の実施形態)
上述の実施形態において、AES CTRモードを暗号アルゴリズムとして用いる一例について説明したが、ARIB方式及びCENC方式で共通する暗号アルゴリズムであればよく、そのような共通の暗号アルゴリズムが新たに導入された場合にはAES CTRモードに代えて当該新たな暗号アルゴリズムを採用してもよい。
【0102】
上述の各装置(放送送出装置100、放送受信端末200、中継装置300、通信端末400)が行う各処理をコンピュータに実行させるプログラムが提供されてもよい。プログラムは、コンピュータ読取り可能媒体に記録されていてもよい。コンピュータ読取り可能媒体を用いれば、コンピュータにプログラムをインストールすることが可能である。ここで、プログラムが記録されたコンピュータ読取り可能媒体は、非一過性の記録媒体であってもよい。非一過性の記録媒体は、特に限定されるものではないが、例えば、CD-ROMやDVD-ROMなどの記録媒体であってもよい。また、上述の各装置(放送送出装置100、放送受信端末200、中継装置300、通信端末400)が行う各処理を実行する回路を集積化し、当該装置を半導体集積回路(チップセット、SoC)により構成してもよい。
【0103】
以上、図面を参照して実施形態について詳しく説明したが、具体的な構成は上述のものに限られることはなく、要旨を逸脱しない範囲内において様々な設計変更などをすることが可能である。
【符号の説明】
【0104】
1 :デジタル放送システム
10 :放送伝送路
20 :通信ネットワーク
100 :放送送出装置
110 :サンプル化手段
120 :サブサンプル化手段
130 :ユニット化手段
140 :コンテナ化手段
150 :スクランブル手段
151 :ブロック分割手段
152 :カウンタ手段
153 :AES暗号化手段
154 :ブロック暗号化手段
155 :MMTPパケットスクランブル初期値設定手段
160 :パケット化手段
170 :多重化手段
200 :放送受信端末
210 :分離手段
220 :放送スクランブル復号手段
230 :再生手段
300 :中継装置
310 :分離手段
320 :コンテナ復元手段
330 :送信手段
400 :通信端末
410 :受信手段
420 :通信スクランブル復号手段
430 :再生手段