JP2013150147A - 暗号化装置、復号装置、暗号化プログラム、および復号プログラム - Google Patents

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

Info

Publication number
JP2013150147A
JP2013150147A JP2012008941A JP2012008941A JP2013150147A JP 2013150147 A JP2013150147 A JP 2013150147A JP 2012008941 A JP2012008941 A JP 2012008941A JP 2012008941 A JP2012008941 A JP 2012008941A JP 2013150147 A JP2013150147 A JP 2013150147A
Authority
JP
Japan
Prior art keywords
data
encrypted
packet
encryption
unit
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
JP2012008941A
Other languages
English (en)
Inventor
Kazuto Ogawa
一人 小川
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.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Japan Broadcasting 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 Nippon Hoso Kyokai NHK, Japan Broadcasting Corp filed Critical Nippon Hoso Kyokai NHK
Priority to JP2012008941A priority Critical patent/JP2013150147A/ja
Publication of JP2013150147A publication Critical patent/JP2013150147A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】一の暗号方式から他の暗号方式に切り替える場合に、復号装置による暗号化コンテンツデータの復号を正常に行わせ、暗号化コンテンツデータの安全性を高く保ち、伝送路の帯域消費量を低く抑える。
【解決手段】圧縮符号化コンテンツデータから、各種ヘッダの開始符号を検出する開始符号検出部122と、開始符号とこれより後の可変長符号の一部分とを含むブロックデータを、2種類の暗号化アルゴリズムそれぞれにより暗号化して2種類の暗号化データを生成する暗号化部と、圧縮符号化コンテンツデータからブロックデータを除くデータから平文パケットデータを生成するストリーム生成部124と、2種類の暗号化データそれぞれに暗号化識別子を設けて暗号化パケットデータを生成する暗号化パケット生成部と、平文パケットデータと暗号化パケットデータを合成して暗号化コンテンツデータを生成するパケット合成部128とを備える。
【選択図】図3

Description

本発明は、暗号化装置、復号装置、暗号化プログラム、および復号プログラムに関する。
近年、放送または通信によって、多数の利用者それぞれのコンテンツ再生装置にコンテンツデータを配信するコンテンツ配信サービスが実現されている。このコンテンツ配信サービスでは、当該サービスの正規利用者にのみコンテンツデータを取得させるため、コンテンツ配信装置は、暗号化したコンテンツデータを配信する。コンテンツ再生装置が、その暗号化コンテンツデータを受信して視聴可能な状態にする方法として、次のような方法が知られている。例えば、暗号化コンテンツデータを復号するための復号鍵を記憶した、耐タンパ性が強いICカードを正規利用者に配布してコンテンツ再生装置に組み込ませすることにより、正規利用者のコンテンツ再生装置のみに、暗号化コンテンツデータを復号させる方法が知られている。また、あらかじめ復号鍵を組み込んだコンテンツ再生プログラムを実行させることにより、暗号化コンテンツデータを復号して再生するコンテンツ再生装置が知られている。このコンテンツ再生装置は、組み込まれるコンテンツ再生プログラムを、耐タンパ性が強いソフトウェア構造にするとともに、このコンテンツ再生装置に固有であって且つ正規の識別子を、コンテンツ再生プログラムを実行する制御部に参照させることにより、暗号化コンテンツデータを復号して再生する。
ただし、上述の方法によるコンテンツデータの保護は、暗号方式に対する攻撃方法が開発されていない場合に成り立つものである。
しかしながら、近年、普及している暗号方式に対する攻撃方法の開発事例が報告されている(例えば、非特許文献1、非特許文献2参照)。
これらの攻撃方法が適用された場合において、中央処理装置(Central Processing Unit;CPU)等の演算処理部の処理能力が小さければ、暗号方式に対する攻撃には多大な時間を要するのが現状である。しかし、半導体メモリの大容量化等とともに、電子計算機の演算処理能力は年々高まっている。電子計算機の演算処理能力が高まるほど、電子計算機は、暗号方式の攻撃に要する時間を短くすることができる。これにより、暗号方式が完全に危殆化するおそれが強くなる。危殆化した暗号方式は安全ではないため、コンテンツ配信サービスでは、別の暗号方式を導入することとなる。
"Advances in Cryptology-EUROCRYPT’ 93", Lecture Notes in Computer Science, vol. 765, pp. 386-397 "Fast Software Encryption 2009", Lecture Notes in Computer Science, vol. 5665, pp. 296-307
しかしながら、多数のコンテンツ再生装置に対して暗号化コンテンツデータを一斉配信する、ブロードキャストサービスおよびマルチキャストサービスにおいては、暗号方式を現行方式から新方式に直ちに切り替えることができない。すなわち、コンテンツ再生装置は、現行の暗号方式に対応した復号アルゴリズムを組み込んだ復号部をハードウェアまたはソフトウェアとして実装しているため、暗号方式を変更する場合は、復号部の更新作業が必要となる。しかし、全てのコンテンツ再生装置に対してこの更新作業を同時に行うことは極めて困難である。
また、更新作業を一定期間内に行うこととした場合、その一定期間内に、現行の暗号方式に対応する復号アルゴリズムを組み込んだ復号部を実装したコンテンツ再生装置と、新しい暗号方式に対応する復号アルゴリズムを組み込んだ復号部を実装したコンテンツ再生装置とが混在することとなる。この混在状態において、コンテンツ配信サービスを行う事業者は、現行の暗号方式の暗号化アルゴリズムにより暗号化した暗号化コンテンツデータと、新しい暗号方式の暗号化アルゴリズムにより暗号化した暗号化コンテンツデータとの両方をコンテンツ配信装置により配信する必要がある。しかし、この場合、放送帯域や通信帯域における必要帯域が従来に対して約2倍となり、配信コストが高くなる。
本発明は、上記問題点を解決するためになされたものであり、例えば、多数の復号装置に暗号化コンテンツデータを一斉配信するコンテンツ配信サービスにおいて、一の暗号方式から他の暗号方式に切り替える場合に、復号装置による暗号化コンテンツデータの復号を正常に行わせ、暗号化コンテンツデータの安全性(秘匿性)を高く保ち、配信における伝送路の帯域消費量を低く抑えることができる、暗号化装置、復号装置、暗号化プログラム、および復号プログラムを提供することを目的とする。
[1]上記の課題を解決するため、本発明の一態様である暗号化装置は、符号化コンテンツデータから、所定の開始符号を検出する開始符号検出部と、前記符号化コンテンツデータにおける、前記開始符号と前記開始符号より後の可変長符号の一部分とを含むブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化して複数の暗号化データを生成する暗号化部と、前記符号化コンテンツデータから前記ブロックデータを除くデータから平文パケットデータを生成する平文パケット生成部と、前記複数の暗号化データそれぞれに互いに異なる暗号化識別子を設けて暗号化パケットデータを生成する暗号化パケット生成部と、前記平文パケットデータと前記暗号化パケットデータとを合成して暗号化コンテンツデータを生成するパケット合成部と、を備えることを特徴とする。
ここで、符号化コンテンツデータは、例えば、MPEG−2ビデオ規格に基づき圧縮符号化処理された映像データやMPEG−2オーディオ規格に基づき圧縮符号化処理された音声データである。この圧縮符号化処理は、可変長符号化処理を含む。所定の開始符号は、例えば、MPEG−2ビデオ規格によるデータ構造においては、シーケンス層、GOP層、ピクチャ層、およびスライス層それぞれが含むヘッダのスタートコードである。なお、所定の開始符号を、GOP層がIピクチャであるスライス層におけるスライスヘッダのスタートコードとしてもよい。また、MPEG−2オーディオ規格によるデータ構造において、所定の開始符号は、例えば、Audio Data Transport Stream(ADTS)ヘッダである。開始符号と開始符号より後の可変長符号の一部分とを含むブロックデータは、例えば、スライスヘッダとこのスライスヘッダの後に存在する可変長符号のうち少なくとも先頭1ビットとを含む符号列である。また、平文パケットデータと暗号化パケットデータとを合成するとは、例えば、平文パケットデータと暗号化パケットデータとを連結することや、最小パケット単位で任意に組み合わせることである。
[2]上記の課題を解決するため、本発明の一態様である復号装置は、符号化コンテンツデータにおける、所定の開始符号と前記開始符号より後の可変長符号の一部分とを含むブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化するとともに互いに異なる暗号化識別子を設けてパケット化した複数の暗号化パケットデータと、前記符号化コンテンツデータから前記ブロックデータを除くデータから生成した平文パケットデータとを合成して得られた暗号化コンテンツデータを取り込む暗号化コンテンツデータ取得部と、前記暗号化コンテンツデータを、前記平文パケットデータと前記複数の暗号化パケットデータとに分離するパケット分離部と、前記複数の暗号化パケットデータから、あらかじめ記憶している自装置暗号化識別子と同一の暗号化識別子を有する暗号化パケットデータを復号して復号データを生成する復号部と、前記平文パケットと前記復号データとを合成してコンテンツデータを生成するパケット合成部と、を備えることを特徴とする。
[3]上記の課題を解決するため、本発明の一態様である暗号化プログラムは、コンピュータを、符号化コンテンツデータから、所定の開始符号を検出する開始符号検出部と、前記符号化コンテンツデータにおける、前記開始符号と前記開始符号より後の可変長符号の一部分とを含むブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化して複数の暗号化データを生成する暗号化部と、前記符号化コンテンツデータから前記ブロックデータを除くデータから平文パケットデータを生成する平文パケット生成部と、前記複数の暗号化データそれぞれに互いに異なる暗号化識別子を設けて暗号化パケットデータを生成する暗号化パケット生成部と、前記平文パケットデータと前記暗号化パケットデータとを合成して暗号化コンテンツデータを生成するパケット合成部と、として機能させる。
[4]上記の課題を解決するため、本発明の一態様である復号プログラムは、コンピュータを、符号化コンテンツデータにおける、所定の開始符号と前記開始符号より後の可変長符号の一部分とを含むブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化するとともに互いに異なる暗号化識別子を設けてパケット化した複数の暗号化パケットデータと、前記符号化コンテンツデータから前記ブロックデータを除くデータから生成した平文パケットデータとを合成して得られた暗号化コンテンツデータを取り込む暗号化コンテンツデータ取得部と、前記暗号化コンテンツデータを、前記平文パケットデータと前記複数の暗号化パケットデータとに分離するパケット分離部と、前記複数の暗号化パケットデータから、あらかじめ記憶している自装置暗号化識別子と同一の暗号化識別子を有する暗号化パケットデータを復号して復号データを生成する復号部と、前記平文パケットと前記復号データとを合成してコンテンツデータを生成するパケット合成部と、として機能させる。
本発明によれば、例えば、多数の復号装置に暗号化コンテンツデータを一斉配信するコンテンツ配信サービスにおいて、一の暗号方式から他の暗号方式に切り替える場合に、復号装置による暗号化コンテンツデータの復号を正常に行わせ、暗号化コンテンツデータの安全性を高く保ち、配信における伝送路の帯域消費量を低く抑えることができる。
本発明の一実施形態である暗号化装置および復号装置を適用したコンテンツ配信システムの概略の構成図である。 同実施形態において、コンテンツサーバの機能構成を示すブロック図である。 同実施形態において、暗号化サーバの機能構成を示すブロック図である。 同実施形態において、送信装置の機能構成を示すブロック図である。 同実施形態において、受信装置の機能構成を示すブロック図である。 同実施形態において、圧縮符号化コンテンツデータの階層化されたデータ構造のうち、スライス層の概略のデータ構成を示す図である。 同実施形態において、ストリーム生成部が生成する平文パケットデータの概略のデータ構成を示す図である。 同実施形態において、パケット合成部が生成する暗号化コンテンツデータの概略のデータ構成を示す図である。 同実施形態において、コンテンツサーバが実行する処理の手順を示すフローチャートである。 同実施形態において、暗号化サーバが実行する処理の手順を示すフローチャートである。 同実施形態において、送信装置が実行する処理の手順を示すフローチャートである。 同実施形態において、受信装置が実行する処理の手順を示すフローチャートである。 MPEG−2ビデオ規格によるデータ構造を有する圧縮符号化コンテンツデータのGroup Of Pictures(GOP)を示す図である。
以下、本発明を実施するための形態について、図面を参照して詳細に説明する。
本発明の一実施形態は、放送局が実施する放送によるコンテンツ配信サービスを実現するコンテンツ配信システムの例である。また、本実施形態は、映像コンテンツのみを暗号化する例である。
図1は、本実施形態である暗号化装置および復号装置を適用したコンテンツ配信システムの概略の構成図である。
同図において、コンテンツ配信システム1は、放送局装置群10と、送信アンテナ20と、受信装置30とを含んで構成される。受信装置30は、復号装置を含む。実際には、受信装置30は多数存在するが、本実施形態では、図を簡略化して説明を簡潔にするため、4台の受信装置30(受信装置30−1〜30−4と呼ぶ。)を含む。
放送局装置群10および送信アンテナ20は、放送局が管理する装置群および設備である。受信装置30は、視聴者が有する装置である。
放送局装置群10は、放送局、番組制作会社等により制作されたコンテンツデータを圧縮符号化して圧縮符号化コンテンツデータを生成する。そして、放送局装置群10は、圧縮符号化コンテンツデータを、本実施形態独自の方式によって暗号化し暗号化コンテンツデータを生成する。そして、放送局装置群10は、暗号化コンテンツデータを放送信号に変換し、この放送信号を送信アンテナ20に送信する。
放送局装置群10は、その機能構成として、コンテンツサーバ11と、暗号化サーバ12と、送信装置13と、ネットワーク14とを備える。暗号化サーバ12は、暗号化装置を含む。
ネットワーク14は、コンテンツサーバ11と暗号化サーバ12と送信装置13とを接続する通信回線である。ネットワーク14は、例えば、Internet Protocol(IP)を用いて通信可能なコンピュータネットワークである。例えば、コンテンツサーバ11および暗号化サーバ12、暗号化サーバ12および送信装置13は、ネットワーク14を通して通信を行う。
コンテンツサーバ11は、図示しないコンテンツ供給装置からコンテンツデータと符号化レートとを取り込み、コンテンツデータの圧縮符号化処理を実行して符号化レート以下の容量値となる圧縮符号化コンテンツデータを生成し、この圧縮符号化コンテンツデータを記憶する。コンテンツデータは、映像データ、音声データ等を含むデジタルデータである。本実施形態では、コンテンツデータは、少なくとも映像データを含む。また、圧縮符号化処理は、可変長符号化処理を含む。符号化レートは、送信アンテナ20と受信装置30との間の伝送路において使用可能な容量、つまり、使用可能帯域を示す値である。圧縮符号化コンテンツデータは、例えば、MPEG−2ビデオ規格に基づき圧縮符号化処理された映像データやMPEG−2オーディオ規格に基づき圧縮符号化処理された音声データである。
暗号化サーバ12は、コンテンツサーバ11から圧縮符号化コンテンツデータを取り込み、この圧縮符号化コンテンツデータの一部分であるブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれによって暗号化する。ブロックデータは、圧縮符号化コンテンツデータの復号処理において同期をとるために必要な情報を含む。そして、暗号化サーバ12は、暗号方式ごとに、暗号化したブロックデータに暗号方式を特定する暗号化識別子を設けて、複数の暗号化パケットデータを生成する。そして、暗号化サーバ12は、これら複数の暗号化パケットデータと、圧縮符号化コンテンツデータにおいてブロックデータを除くデータとを合成して暗号化コンテンツデータを生成し、この暗号化コンテンツデータを記憶する。
送信装置13は、暗号化サーバ12から暗号化コンテンツデータを取り込み、この暗号化コンテンツデータをデジタル放送の放送信号に変換する。そして、送信装置13は、その放送信号を送信アンテナ20に送信する。
送信アンテナ20は、放送局装置群10の送信装置13が送信した放送信号による放送電波を空中に放射する。
受信装置30は、送信アンテナ20が放射した放送電波を受信することによって放送信号を取り込み、この放送信号から暗号化コンテンツデータを取得する。受信装置30は、例えば、自装置に設定されている自装置暗号化識別子と同一の暗号化識別子を有する暗号化パケットデータを暗号化コンテンツデータから抽出して復号することにより、ブロックデータを取得する。そして、受信装置30は、暗号化コンテンツデータにおいて暗号化されていないデータとブロックデータとを合成し、コンテンツデータを生成(復元)する。受信装置30は、このコンテンツデータを表示したり音声出力したりする。
本実施形態では、コンテンツ配信に使用する暗号方式を、現行の暗号方式である第1暗号方式から、別の暗号方式である第2暗号方式に切り替える場合を例として説明する。この例では、暗号化サーバ12が圧縮符号化コンテンツデータを暗号化する暗号化アルゴリズムを、現行の暗号方式の暗号化アルゴリズムである第1暗号化アルゴリズムから、別の暗号方式の暗号化アルゴリズムである第2暗号化アルゴリズムに切り替える。
図2は、コンテンツサーバ11の機能構成を示すブロック図である。
同図に示すように、コンテンツサーバ11は、コンテンツ取得部111と、符号化レート取得部112と、コンテンツ圧縮符号化部113と、圧縮符号化コンテンツ記憶部114と、圧縮符号化コンテンツ供給部115とを備える。
コンテンツ取得部111は、前記のコンテンツ供給装置からコンテンツデータを取り込み、このコンテンツデータをコンテンツ圧縮符号化部113に供給する。コンテンツ供給装置は、例えば、磁気ハードディスク装置、半導体ディスク装置等の記憶装置、ネットワーク14を介して接続されるコンテンツ編集装置等である。
符号化レート取得部112は、図示しない符号化レート供給装置から符号化レートを取り込み、この符号化レートをコンテンツ圧縮符号化部113に供給する。符号化レート供給装置は、例えば、キーボード、マウス等の入力装置、半導体メモリ等の記憶装置である。
コンテンツ圧縮符号化部113は、コンテンツ取得部111から供給されるコンテンツデータを取り込み、また、符号化レート取得部112から供給される符号化レートを取り込む。コンテンツ圧縮符号化部113は、コンテンツデータの圧縮符号化処理を実行して指定された符号化レート以下の符号化レートとなる圧縮符号化コンテンツデータを生成し、この圧縮符号化コンテンツデータを圧縮符号化コンテンツ記憶部114に供給する。圧縮符号化処理は、例えば、MPEG−2ビデオ規格による映像圧縮符号化処理である。この圧縮符号化処理には、可変長符号化処理としてハフマン符号化処理が含まれる。
圧縮符号化コンテンツ記憶部114は、コンテンツ圧縮符号化部113から供給される圧縮符号化コンテンツデータを、例えばファイルデータとして記憶する。
圧縮符号化コンテンツ供給部115は、圧縮符号化コンテンツ記憶部114から圧縮符号化コンテンツデータを読み込み、この圧縮符号化コンテンツデータを、例えば暗号化サーバ12に供給する。
図3は、暗号化サーバ12の機能構成を示すブロック図である。
同図に示すように、暗号化サーバ12は、圧縮符号化コンテンツ取得部121と、開始符号検出部122と、記憶部123と、ストリーム生成部124と、スタートコード検出部125と、第1暗号化部126−1と、第2暗号化部126−2と、第1暗号化パケット生成部127−1と、第2暗号化パケット生成部127−2と、パケット合成部128と、暗号化コンテンツ記憶部129と、暗号化コンテンツ供給部130とを備える。
なお、第1暗号化部126−1および第2暗号化部126−2を、暗号化部126と呼ぶことがある。また、第1暗号化パケット生成部127−1および第2暗号化パケット生成部127−2を、暗号化パケット生成部127と呼ぶことがある。
また、暗号化サーバ12は、暗号化部126と暗号化パケット生成部127との対を複数系統備えるものであるが、本実施形態では2系統の例である。
圧縮符号化コンテンツ取得部121は、コンテンツサーバ11から圧縮符号化コンテンツデータを取り込み、この圧縮符号化コンテンツデータを開始符号検出部122に供給する。
開始符号検出部122は、圧縮符号化コンテンツ取得部121から供給される圧縮符号化コンテンツデータを取り込んでこの圧縮符号化コンテンツデータの符号列を解析することにより、所定のデータ領域の開始符合を検出する。例えば、開始符号検出部122は、圧縮符号化コンテンツデータから、複数種類のデータ領域それぞれにおける開始符号を検出し、この開始符号の位置を特定する。そして、開始符号検出部122は、圧縮符号化コンテンツデータと、各データ領域における開始符号の位置を示す開始符号位置情報とを、記憶部123に供給する。
ここで、圧縮符号化コンテンツデータが、MPEG−2ビデオ規格に基づき圧縮符号化されてファイル化されたMPEG−2映像ファイルデータである場合の例について、具体的に説明する。この例において、圧縮符号化コンテンツデータは、MPEG−2ビデオ規格によるデータ構造を有する。具体的には、圧縮符号化コンテンツデータは、例えば、シーケンス層(Sequence Layer)から、GOP層(Group Of Picture Layer)、ピクチャ層(Picture Layer)、スライス層(Slice Layer)、マクロブロック層(Macro Block Layer)、ブロック層(Block Layer)までの6層の階層データ構造を有する。この6層のうちシーケンス層が最上位層であり、ブロック層が最下位層である。
シーケンス層は、一連のフレーム画像について共通する属性(例えば、画像サイズ、アスペクト比、フレームレート等)を含む。シーケンス層は、データ領域であるシーケンスヘッダ(Sequence Header)を含む。そして、シーケンスヘッダは、その先頭から32ビット長のスタートコード(Start Code)を有する。このスタートコードは、シーケンス層の開始符号(開始同期コード)である。
GOP層は、画像グループの最小単位であるGOPを規定する。GOP層は、データ領域であるGOPヘッダを含む。そして、GOPヘッダは、その先頭から32ビット長のスタートコード(Start Code)を有する。このスタートコードは、GOP層の開始符号(開始同期コード)である。
ピクチャ層は、フレーム画像についての属性(例えば、ピクチャの表示順序、ピクチャタイプ等)を含む。ピクチャ層は、データ領域であるピクチャヘッダ(Picture Header)を含む。そして、ピクチャヘッダは、その先頭から32ビット長のスタートコード(Start Code)を有する。このスタートコードは、ピクチャ層の開始符号(開始同期コード)である。
スライス層は、一枚のフレーム画像を分割したスライスについて共通する属性(例えば、量子化スケール、イントラスライス情報等)を含む。スライス層は、データ領域であるスライスヘッダ(Slice Header)を含む。そして、スライスヘッダは、その先頭から32ビット長のスタートコード(Start Code)を有する。このスタートコードは、スライス層の開始符号(開始同期コード)である。
マクロブロック層は、画素ブロックであるマクロブロックに共通する属性(例えば、動きベクトル値等)を含む。マクロブロック層は、データ領域であるマクロブロックヘッダ(Macro Block Header)を含む。ただし、このマクロブロックヘッダは、スタートコードを含まない。このマクロブロック層が含むデータは、可変長符号を含む。
ブロック層は、符号化係数(例えば、離散コサイン変換(Discrete Cosine Transform;DCT)係数等)を含む。
なお、圧縮符号化コンテンツデータが、MPEG−2オーディオ規格に基づき圧縮符号化された圧縮符号化オーディオデータを含む場合、この圧縮符号化オーディオデータは、MPEG−2オーディオ規格によるデータ構造を有する。MPEG−2オーディオ規格によるデータ構造において、所定の開始符号は、例えば、Audio Data Transport Stream(ADTS)ヘッダである。
開始符号検出部122は、圧縮符号化コンテンツデータを記憶部123に供給する。また、開始符号検出部122は、圧縮符号化コンテンツデータの先頭(ファイルの先頭)から、シーケンス層、GOP層、ピクチャ層、およびスライス層それぞれが含むヘッダのスタートコードまでのビット数を計数し、各ビット数を開始符号位置情報として記憶部123に供給する。
なお、開始符号検出部122は、各ビット数を計数するための計数開始位置を、圧縮符号化コンテンツデータの先頭ではなく、あらかじめ決定された任意の位置(例えば、シーケンスヘッダの先頭)としてもよい。
記憶部123は、開始符号検出部122から供給される、圧縮符号化コンテンツデータと開始符号位置情報とを記憶する。また、記憶部123は、スタートコード検出部125から供給されるスタートコード位置情報を記憶する。記憶部123は、例えば半導体記憶装置により実現される。
ストリーム生成部124は、記憶部123から圧縮符号化コンテンツデータおよび開始符号位置情報を読み込む。そして、ストリーム生成部124は、圧縮符号化コンテンツデータの先頭から、開始符号位置情報が示す開始符号の位置までの範囲のデータを、放送におけるストリームフォーマットによるストリームに変換する。ストリームは、パケット構造を有する。例えば、ストリーム生成部124は、圧縮符号化コンテンツデータの先頭から、開始符号位置情報が示す、スライス層のスライスヘッダにおけるスタートコードの位置を含む範囲のデータを、MPEG−2システム規格によるトランスポートストリーム(Transport Stream;TS)に変換する。そして、ストリーム生成部124は、ストリームをスタートコード検出部125に供給する。
また、ストリーム生成部(平文パケット生成部)124は、記憶部123から圧縮符号化コンテンツデータとスタートコード位置情報とを読み込む。そして、ストリーム生成部124は、圧縮符号化コンテンツデータをパケット構造のストリームにパケット変換するとともに、スタートコード位置情報が示す開始符号の位置に基づいて、そのストリームから、その開始符号とこの開始符号よりも後の可変長符号のうち少なくとも先頭1ビットとを含む符号列(ブロックデータ)を除くデータを抽出する。そして、ストリーム生成部124は、その抽出したデータに含まれるパケットデータが平文データであることを示す平文識別子を各パケットデータに設けて平文パケットデータを生成し、この平文パケットデータをパケット合成部128に供給する。
具体的には、ストリーム生成部124は、記憶部123からMPEG−2映像ファイルデータとスライス層のスライスヘッダにおけるスタートコードの位置を示すスタートコード位置情報とを読み込む。そして、ストリーム生成部124は、MPEG−2映像ファイルデータをTSに変換するとともに、このTSから、スライスヘッダとこのスライスヘッダの後に存在する可変長符号の少なくとも先頭1ビットとを含む符号列(ブロックデータ)を除くデータを抽出する。そして、ストリーム生成部124は、その抽出したデータに含まれるパケットデータが平文データであることを示す平文識別子(例えば“0(ゼロ)”)を各パケットデータに設けて平文パケットデータを生成し、この平文パケットデータをパケット合成部128に供給する。
スタートコード検出部125は、ストリーム生成部124から供給されるストリームを取り込み、このストリームから所定のデータ領域における開始符号を検出し、この開始符号の位置を示すスタートコード位置情報を記憶部123に供給する。
具体的には、TSに含まれる圧縮符号化コンテンツデータがMPEG−2ビデオ規格によるデータ構造を有する場合、所定のデータ領域は、例えば、シーケンス層から、GOP層、ピクチャ層、スライス層、マクロブロック層、ブロック層までの6層の中で、スタートコードを含む層として最下位に位置するスライス層である。スタートコード検出部125は、TSの先頭からスライスヘッダにおけるスタートコードまでのビット数を計数し、このビット数をスタートコード位置情報として記憶部123に供給する。
暗号化部126は、記憶部123から読み込む圧縮符号化コンテンツデータおよびスタートコード情報に基づき、圧縮符号化コンテンツデータにおける、開始符号と可変長符号の一部分とを含むブロックデータを、第1暗号方式の暗号化アルゴリズムおよび第2暗号方式の暗号化アルゴリズムそれぞれにより暗号化して第1暗号化データおよび第2暗号化データを生成する。
すなわち、第1暗号化部126−1は、記憶部123から圧縮符号化コンテンツデータとスタートコード位置情報とを読み込み、圧縮符号化コンテンツデータから、定型の開始符号とこの開始符号よりも後の可変長符号のうち少なくとも先頭1ビットとを含む符号列(ブロックデータ)を抽出する。そして、第1暗号化部126−1は、第1暗号化アルゴリズムを適用して符号列を暗号化し、第1暗号化データを生成する。そして、第1暗号化部126−1は、第1暗号化データを第1暗号化パケット生成部127−1に供給する。
具体的には、第1暗号化部126−1は、記憶部123からMPEG−2映像ファイルデータとスライス層のスライスヘッダにおけるスタートコードの位置情報とを読み込む。そして、第1暗号化部126−1は、MPEG−2映像ファイルデータから、スライスヘッダとこのスライスヘッダの後に存在する可変長符号の少なくとも先頭1ビットとを含む符号列を抽出する。そして、第1暗号化部126−1は、現行の暗号方式(例えば、MULTI2暗号)の暗号化アルゴリズムを適用して符号列を暗号化し、MULTI2暗号化データを生成する。ただし、第1暗号化部126−1は、MULTI2暗号化データのデータサイズがTSパケットのデータサイズ(184バイト)と同一または2以上の整数倍のサイズとなるように、MPEG−2映像ファイルデータから符号列を抽出する。そして、第1暗号化部126−1は、MULTI2暗号化データを第1暗号化パケット生成部127−1に供給する。
第2暗号化部126−2は、記憶部123から圧縮符号化コンテンツデータとスタートコード位置情報とを読み込み、圧縮符号化コンテンツデータから、定型の開始符号とこの開始符号よりも後の可変長符号のうち少なくとも先頭1ビットとを含む符号列(ブロックデータ)を抽出する。そして、第2暗号化部126−2は、第2暗号化アルゴリズムを適用して符号列を暗号化し、第2暗号化データを生成する。そして、第2暗号化部126−2は、第2暗号化データを第2暗号化パケット生成部127−2に供給する。
具体的には、第2暗号化部126−2は、記憶部123からMPEG−2映像ファイルデータとスライス層のスライスヘッダにおけるスタートコードの位置情報とを読み込む。そして、第2暗号化部126−2は、MPEG−2映像ファイルデータから、スライスヘッダとこのスライスヘッダの後に存在する可変長符号の少なくとも先頭1ビットとを含む符号列を抽出する。そして、第2暗号化部126−2は、新しい暗号方式(例えば、Camellia暗号)を適用して符号列を暗号化し、Camellia暗号化データを生成する。ただし、第2暗号化部126−2は、Camellia暗号化データのデータサイズがTSパケットのデータサイズ(184バイト)と同一または2以上の整数倍のサイズとなるように、MPEG−2映像ファイルデータから符号列を抽出する。そして、第2暗号化部126−2は、Camellia暗号化データを第2暗号化パケット生成部127−2に供給する。
第1暗号化パケット生成部127−1は、第1暗号化部126−1から供給される第1暗号化データを取り込む。そして、第1暗号化パケット生成部127−1は、第1暗号化データを、放送におけるストリームフォーマットによるストリームに変換する。そして、第1暗号化パケット生成部127−1は、そのストリームに含まれるパケットデータが第1暗号化アルゴリズムにより暗号化されたデータであることを示す第1暗号化識別子をパケットデータに設けて第1暗号化パケットデータを生成する。そして、第1暗号化パケット生成部127−1は、その第1暗号化パケットデータをパケット合成部128に供給する。
具体的には、第1暗号化パケット生成部127−1は、第1暗号化部126−1から供給されるMULTI2暗号化データを取り込む。そして、第1暗号化パケット生成部127−1は、MULTI2暗号化データをTSに変換する。そして、第1暗号化パケット生成部127−1は、そのTSに含まれるパケットデータがMULTI2暗号により暗号化されたデータであることを示すMULTI2暗号化識別子(例えば“1”)をパケットデータに設けてMULTI2暗号化パケットデータを生成する。そして、第1暗号化パケット生成部127−1は、そのMULTI2暗号化パケットデータをパケット合成部128に供給する。
第2暗号化パケット生成部127−2は、第2暗号化部126−2から供給される第2暗号化データを取り込む。そして、第2暗号化パケット生成部127−2は、第2暗号化データを、放送におけるストリームフォーマットによるストリームに変換する。そして、第2暗号化パケット生成部127−2は、そのストリームに含まれるパケットデータが第2暗号化アルゴリズムにより暗号化されたデータであることを示す第2暗号化識別子をパケットデータに設けて第2暗号化パケットデータを生成する。そして、第2暗号化パケット生成部127−2は、その第2暗号化パケットデータをパケット合成部128に供給する。
具体的には、第2暗号化パケット生成部127−2は、第2暗号化部126−2から供給されるCamellia暗号化データを取り込む。そして、第2暗号化パケット生成部127−2は、Camellia暗号化データをTSに変換する。そして、第2暗号化パケット生成部127−2は、そのTSに含まれるパケットデータがCamellia暗号により暗号化されたデータであることを示すCamellia暗号化識別子(例えば“2”)をパケットデータに設けてCamellia暗号化パケットデータを生成する。そして、第2暗号化パケット生成部127−2は、そのCamellia暗号化パケットデータをパケット合成部128に供給する。
パケット合成部128は、第1暗号化パケット生成部127−1から供給される第1暗号化パケットデータと、第2暗号化パケット生成部127−2から供給される第2暗号化パケットデータと、ストリーム生成部124から供給される平文パケットデータとを取り込む。そして、パケット合成部128は、第1暗号化パケットデータと第2暗号化パケットデータと平文パケットデータとを合成して暗号化コンテンツデータを生成し、この暗号化コンテンツデータを暗号化コンテンツ記憶部129に供給する。
例えば、パケット合成部128は、それぞれ取り込んだ第1暗号化パケットデータと第2暗号化パケットデータと平文パケットデータとを、例えば、第1暗号化パケットデータ、第2暗号化パケットデータ、平文パケットデータの順に連結して暗号化コンテンツデータを生成し、この暗号化コンテンツデータを暗号化コンテンツ記憶部129に供給する。
なお、パケット合成部128が第1暗号化パケットデータと第2暗号化パケットデータと平文パケットデータとを連結する順序は、上記の順序に限らず、第1暗号化パケットデータと第2暗号化パケットデータと平文パケットデータとの全ての組み合わせによる連結が可能である。
また、パケット合成部128は、第1暗号化パケットデータと第2暗号化パケットデータと平文パケットデータとを、最小パケット単位で任意に組み合わせてもよい。
暗号化コンテンツ記憶部129は、パケット合成部128から供給される暗号化コンテンツデータを記憶する。暗号化コンテンツ記憶部129は、例えば、磁気ディスク装置、半導体ディスク装置等により実現される。
暗号化コンテンツ供給部130は、暗号化コンテンツ記憶部129から暗号化コンテンツデータを読み込み、この暗号化コンテンツデータを、例えば送信装置13に供給する。
図4は、送信装置13の機能構成を示すブロック図である。
同図に示すように、送信装置13は、暗号化コンテンツ取得部131と、放送信号生成部132と、放送信号送信部133とを備える。
暗号化コンテンツ取得部131は、暗号化サーバ12から暗号化コンテンツデータを取り込み、この暗号化コンテンツデータを放送信号生成部132に供給する。
放送信号生成部132は、暗号化コンテンツ取得部131から供給される暗号化コンテンツデータを取り込み、この暗号化コンテンツデータを変調してデジタル放送の放送信号に変換し、この放送信号を放送信号送信部133に供給する。
放送信号の仕様は、例えば、ARIB(Association of Radio Industries and Broadcast)標準規格によって規定されている。
放送信号送信部133は、放送信号生成部132から供給される放送信号を取り込み、この放送信号を送信アンテナ20に送信する。
図5は、受信装置30の機能構成を示すブロック図である。
同図に示すように、受信装置30は、放送信号受信部(暗号化コンテンツデータ取得部)301と、パケット分離部302と、復号鍵記憶部303と、復号部304と、パケット合成部305と、圧縮符号化コンテンツ復号部306とを備える。
放送信号受信部301は、例えば、受信装置30に接続された受信アンテナ(不図示)により放送電波を受信して得られた放送信号を取り込む。そして、放送信号受信部301は、放送信号を復調して暗号化コンテンツデータを取得し、この暗号化コンテンツデータをパケット分離部302に供給する。
パケット分離部302は、放送信号受信部301から供給される暗号化コンテンツデータを取り込み、この暗号化コンテンツデータを構成するパケットデータごとに識別子を検出することによりパケットデータの種類を判別する。具体的には、パケット分離部302は、パケットデータから平文識別子(例えば“0(ゼロ)”)を検出した場合、そのパケットデータが平文パケットデータであると判別する。また、パケット分離部302は、パケットデータから第1暗号化識別子(例えば“1”)を検出した場合、そのパケットデータが第1暗号化パケットデータであると判別する。また、パケット分離部302は、パケットデータから第2暗号化識別子(例えば“2”)を検出した場合、そのパケットデータが第2暗号化パケットデータであると判別する。
パケット分離部302は、判別したパケットデータの種類に応じてパケットデータを分離する。例えば、パケット分離部302は、識別子が平文識別子である平文パケットデータから、圧縮符号化コンテンツデータに該当するデータを抽出し、このデータを平文データとしてパケット合成部305に供給する。
具体的には、パケット分離部302は、識別子が“0(ゼロ)”であるTSパケットについて、TSヘッダを除去しペイロードを合成して得たデータを、圧縮符号化コンテンツデータの平文データとしてパケット合成部305に供給する。
また、パケット分離部302は、識別子が第1暗号化識別子である第1暗号化パケットデータと第2暗号化子である第2暗号化パケットデータとを復号部304に供給する。
具体的には、パケット分離部302は、識別子が“1”であるMULTI2暗号化パケットデータを復号部304に供給する。また、パケット分離部302は、識別子が“2”であるCamellia暗号化パケットデータを復号部304に供給する。
復号鍵記憶部303は、復号部304が暗号化されたパケットデータを復号するための復号鍵を記憶する。例えば、復号鍵記憶部303は、第1暗号方式または第2暗号方式によって暗号化されたパケットデータを復号するための復号鍵を記憶する。
具体的には、復号鍵記憶部303は、例えば、復号鍵を記憶したConditional Access Systems(CAS)カードである。
復号部304は、自装置暗号化識別子を記憶している。復号部304は、パケット分離部302から供給される第1暗号化パケットデータおよび第2暗号化パケットデータを取り込み、また、復号鍵記憶部303から復号鍵を読み込む。そして、復号部304は、第1暗号化パケットデータおよび第2暗号化パケットデータのうち、自装置暗号化識別子と同一の暗号化識別子を有する暗号化パケットデータを選択する。そして、復号部304は、選択した暗号化パケットデータを、復号鍵を適用して復号し、復号データをパケット合成部305に供給する。
なお、復号部304は、第1暗号化パケットデータおよび第2暗号化パケットデータそれぞれを、復号鍵を適用して復号し、正常に復号された方のデータを復号データとしてパケット合成部305に供給してもよい。
パケット合成部305は、パケット分離部302から供給される平文データを取り込み、また復号部304から供給される復号データを取り込む。そして、パケット合成部305は、平文データと復号データとを合成して圧縮符号化コンテンツデータを生成し、この圧縮符号化コンテンツデータを圧縮符号化コンテンツ復号部306に供給する。
圧縮符号化コンテンツ復号部306は、パケット合成部305から供給される圧縮符号化コンテンツデータを取り込む。そして、圧縮符号化コンテンツ復号部306は、圧縮符号化コンテンツデータをコンテンツデータに復号し、このコンテンツデータを出力する。
次に、各種データのデータ構成について説明する。
図6は、圧縮符号化コンテンツデータの階層化されたデータ構造のうち、スライス層の概略のデータ構成を示す図である。同図において、スライス層のデータ60は、スタートコード61と、制御データ62と、複数のマクロブロック63とを含む。スタートコード61と制御データ62とは、スライス層のヘッダ情報(スライスヘッダ)である。スタートコード61は、スライス層の開始符号である。制御データ62は、例えば、フレーム画像を分割したスライスについての各種属性情報を含む。マクロブロック63は、画素の集合であるマクロブロックデータを可変長符号として含む。
同図によれば、ストリーム生成部124は、スタートコード61と制御データ62と可変長符号のうちの先頭の所定の長さを含むデータとを、ブロックデータとして検出する。
図7は、ストリーム生成部124が生成する平文パケットデータの概略のデータ構成を示す図である。同図において、平文パケットデータ70は、各パケット71に平文識別子72を設けた構成を有する。
図8は、パケット合成部128が生成する暗号化コンテンツデータの概略のデータ構成を示す図である。同図において、暗号化コンテンツデータ80は、第1暗号化パケットデータ81aと、第2暗号化パケットデータ81bと、平文パケットデータ70とを含む。そして、第1暗号化パケットデータ81aは、第1暗号化識別子82aと、第1暗号化データ83aとを含む。そして、第2暗号化パケットデータ81bは、第2暗号化識別子82bと、第2暗号化データ83bとを含む。平文パケットデータ70は、図7に示したデータである。
次に、コンテンツ配信システム1の動作について説明する。
図9は、コンテンツサーバ11が実行する処理の手順を示すフローチャートである。
ステップS11において、コンテンツ取得部111は、コンテンツ供給装置からコンテンツデータを取り込み、このコンテンツデータをコンテンツ圧縮符号化部113に供給する。コンテンツ圧縮符号化部113は、コンテンツ取得部111から供給されるコンテンツデータを取り込む。
次に、ステップS12において、符号化レート取得部112は、符号化レート供給装置から符号化レートを取り込み、この符号化レートをコンテンツ圧縮符号化部113に供給する。コンテンツ圧縮符号化部113は、符号化レート取得部112から供給される符号化レートを取り込む。
次に、ステップS13において、コンテンツ圧縮符号化部113は、コンテンツデータの圧縮符号化処理を実行して符号化レート以下の容量値となる圧縮符号化コンテンツデータを生成し、この圧縮符号化コンテンツデータを圧縮符号化コンテンツ記憶部114に供給する。
次に、ステップS14において、圧縮符号化コンテンツ記憶部114は、コンテンツ圧縮符号化部113から供給される圧縮符号化コンテンツデータを、例えばファイルデータとして記憶する。
図10は、暗号化サーバ12が実行する処理の手順を示すフローチャートである。
ステップS31において、圧縮符号化コンテンツ取得部121は、コンテンツサーバ11から圧縮符号化コンテンツデータを取り込み、この圧縮符号化コンテンツデータを開始符号検出部122に供給する。
次に、ステップS32において、開始符号検出部122は、圧縮符号化コンテンツ取得部121から供給される圧縮符号化コンテンツデータを取り込んでこの圧縮符号化コンテンツデータの符号列を解析することにより、所定のデータ領域の開始符合を検出する。例えば、開始符号検出部122は、圧縮符号化コンテンツデータから、複数種類のデータ領域それぞれにおける開始符号を検出し、この開始符号の位置を特定する。
次に、開始符号検出部122は、圧縮符号化コンテンツデータと、各データ領域における開始符号の位置を示す開始符号位置情報とを、記憶部123に記憶させる。
次に、ステップS33において、ストリーム生成部124は、記憶部123から圧縮符号化コンテンツデータおよび開始符号位置情報を読み込む。次に、ストリーム生成部124は、圧縮符号化コンテンツデータの先頭から、開始符号位置情報が示す開始符号の位置までの範囲のデータを、放送におけるストリームフォーマットによるストリームに変換する。次に、ストリーム生成部124は、ストリームをスタートコード検出部125に供給する
次に、ステップS34において、スタートコード検出部125は、ストリーム生成部124から供給されるストリームを取り込み、このストリームから所定のデータ領域における開始符号を検出し、この開始符号の位置を示すスタートコード位置情報を記憶部123に記憶させる。
次に、ストリーム生成部124は、記憶部123から圧縮符号化コンテンツデータとスタートコード位置情報とを読み込む。次に、ストリーム生成部124は、圧縮符号化コンテンツデータをストリームに変換するとともに、スタートコード位置情報が示す開始符号の位置に基づいて、そのストリームから、その開始符号とこの開始符号よりも後の可変長符号のうち少なくとも先頭1ビットとを含む符号列(ブロックデータ)を除くデータを抽出する。次に、ストリーム生成部124は、その抽出したデータに含まれるパケットデータが平文データであることを示す平文識別子を各パケットデータに設けて平文パケットデータを生成し、この平文パケットデータをパケット合成部128に供給する。
次に、ステップS35において、第1暗号化部126−1は、記憶部123から圧縮符号化コンテンツデータとスタートコード位置情報とを読み込み、圧縮符号化コンテンツデータから、定型の開始符号とこの開始符号よりも後の可変長符号のうち少なくとも先頭1ビットとを含む符号列(ブロックデータ)を抽出する。
次に、第1暗号化部126−1は、第1暗号化アルゴリズムを適用して符号列を暗号化し、第1暗号化データを生成する。次に、第1暗号化部126−1は、第1暗号化データを第1暗号化パケット生成部127−1に供給する。
一方、第2暗号化部126−2は、記憶部123から圧縮符号化コンテンツデータとスタートコード位置情報とを読み込み、圧縮符号化コンテンツデータから、定型の開始符号とこの開始符号よりも後の可変長符号のうち少なくとも先頭1ビットとを含む符号列(ブロックデータ)を抽出する。
次に、第2暗号化部126−2は、第2暗号化アルゴリズムを適用して符号列を暗号化し、第2暗号化データを生成する。次に、第2暗号化部126−2は、第2暗号化データを第2暗号化パケット生成部127−2に供給する。
次に、ステップS36において、第1暗号化パケット生成部127−1は、第1暗号化部126−1から供給される第1暗号化データを取り込む。次に、第1暗号化パケット生成部127−1は、第1暗号化データを、放送におけるストリームフォーマットによるストリームに変換する。次に、第1暗号化パケット生成部127−1は、そのストリームに含まれるパケットデータが第1暗号化アルゴリズムにより暗号化されたデータであることを示す第1暗号化識別子をパケットデータに設けて第1暗号化パケットデータを生成する。次に、第1暗号化パケット生成部127−1は、その第1暗号化パケットデータをパケット合成部128に供給する。
一方、第2暗号化パケット生成部127−2は、第2暗号化部126−2から供給される第2暗号化データを取り込む。次に、第2暗号化パケット生成部127−2は、第2暗号化データを、放送におけるストリームフォーマットによるストリームに変換する。次に、第2暗号化パケット生成部127−2は、そのストリームに含まれるパケットデータが第2暗号化アルゴリズムにより暗号化されたデータであることを示す第2暗号化識別子をパケットデータに設けて第2暗号化パケットデータを生成する。次に、第2暗号化パケット生成部127−2は、その第2暗号化パケットデータをパケット合成部128に供給する。
次に、ステップS37において、パケット合成部128は、第1暗号化パケット生成部127−1から供給される第1暗号化パケットデータと、第2暗号化パケット生成部127−2から供給される第2暗号化パケットデータと、ストリーム生成部124から供給される平文パケットデータとを取り込む。次に、パケット合成部128は、第1暗号化パケットデータと第2暗号化パケットデータと平文パケットデータとを合成して暗号化コンテンツデータを生成し、この暗号化コンテンツデータを暗号化コンテンツ記憶部129に供給する。
次に、ステップS38において、暗号化コンテンツ記憶部129は、パケット合成部128から供給される暗号化コンテンツデータを記憶する。
図11は、送信装置13が実行する処理の手順を示すフローチャートである。
ステップS51において、暗号化コンテンツ取得部131は、暗号化サーバ12から暗号化コンテンツデータを取り込み、この暗号化コンテンツデータを放送信号生成部132に供給する。
次に、ステップS52において、放送信号生成部132は、暗号化コンテンツ取得部131から供給される暗号化コンテンツデータを取り込み、この暗号化コンテンツデータを変調してデジタル放送の放送信号に変換し、この放送信号を放送信号送信部133に供給する。
次に、ステップS53において、放送信号送信部133は、放送信号生成部132から供給される放送信号を取り込み、この放送信号を送信アンテナ20に送信する。
図12は、受信装置30が実行する処理の手順を示すフローチャートである。
ステップS71において、放送信号受信部301は、例えば、受信装置30に接続された受信アンテナにより放送電波を受信して得られた放送信号を取り込む。次に、放送信号受信部301は、放送信号を復調して暗号化コンテンツデータを取得し、この暗号化コンテンツデータをパケット分離部302に供給する。
次に、ステップS72において、パケット分離部302は、放送信号受信部301から供給される暗号化コンテンツデータを取り込み、この暗号化コンテンツデータを構成するパケットデータごとに識別子を検出することによりパケットデータの種類を判別する。
次に、パケット分離部302は、判別したパケットデータの種類に応じてパケットデータを分離する。例えば、パケット分離部302は、識別子が平文識別子である平文パケットデータから、圧縮符号化コンテンツデータに該当するデータを抽出し、このデータを平文データとしてパケット合成部305に供給する。パケット合成部305は、パケット分離部302から供給される平文データを取り込む。また、パケット分離部302は、識別子が第1暗号化識別子である第1暗号化パケットデータと第2暗号化子である第2暗号化パケットデータとを復号部304に供給する。
次に、ステップS73において、復号部304は、パケット分離部302から供給される第1暗号化パケットデータおよび第2暗号化パケットデータを取り込み、また、復号鍵記憶部303から復号鍵を読み込む。次に、復号部304は、第1暗号化パケットデータおよび第2暗号化パケットデータのうち、あらかじめ記憶している自装置暗号化識別子と同一の暗号化識別子を有する暗号化パケットデータを選択する。次に、復号部304は、選択した暗号化パケットデータを、復号鍵を適用して復号し、復号データをパケット合成部305に供給する。
次に、ステップS74において、パケット合成部305は、復号部304から供給される復号データを取り込む。そして、パケット合成部305は、ステップS72の処理において取り込んだ平文データと、復号データとを合成して圧縮符号化コンテンツデータを生成し、この圧縮符号化コンテンツデータを圧縮符号化コンテンツ復号部306に供給する。
次に、ステップS75において、圧縮符号化コンテンツ復号部306は、パケット合成部305から供給される圧縮符号化コンテンツデータを取り込む。次に、圧縮符号化コンテンツ復号宇306は、圧縮符号化コンテンツデータをコンテンツデータに復号し、このコンテンツデータを出力する。
以上説明したとおり、本発明の一実施形態を適用した暗号化サーバ12は、圧縮符号化コンテンツデータから、所定のデータ領域(例えば、スライス層におけるスライスヘッダ)の開始符号(スタートコード)を検出する開始符号検出部122と、圧縮符号化コンテンツデータにおける、開始符号とこの開始符号よりも後の可変長符号の一部分(少なくとも1ビット)とを含むブロックデータを、2種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化して2種類の暗号化データを生成する暗号化部126と、圧縮符号化コンテンツデータからブロックデータを除くデータから平文パケットデータを生成するストリーム生成部124と、2種類の暗号化データそれぞれに互いに異なる暗号化識別子を設けて暗号化パケットデータ(第1暗号化パケットデータおよび第2暗号化パケットデータ)を生成する暗号化パケット生成部127と、平文パケットデータと第1暗号化パケットデータと第2暗号化パケットデータとを合成(例えば、連結)して暗号化コンテンツデータを生成するパケット合成部128とを備えた。
このように構成したことにより、暗号化サーバ12は、圧縮符号化コンテンツデータの復号処理において同期をとるために必要な情報を含むブロックデータを暗号化して暗号化コンテンツデータを生成する。よって、正しい復号鍵を有さない受信装置30は、復号処理において同期をとることができず、圧縮符号化コンテンツデータを復号することができない。
また、暗号化サーバ12は、可変長符号の一部分を暗号化するため、この可変長符号の一部分は秘匿化される。また、暗号化サーバ12は、暗号化されない可変長符号列について符号の区切りを特定することができないため、この暗号化されない可変長符号列全体の安全性(秘匿性)を高く保つことができる。
また、暗号化サーバ12は、圧縮符号化コンテンツデータのうちブロックデータのみを複数種類の暗号方式の暗号化アルゴリズムによって暗号化するため、圧縮符号化コンテンツデータ全体を複数種類の暗号方式の暗号化アルゴリズムによって暗号化するよりも、符号量を大幅に少なくすることができる。よって、伝送路の使用帯域を圧迫することがない。
また、本発明の一実施形態を適用した受信装置30は、圧縮符号化コンテンツデータにおける、所定のデータ領域(例えば、スライス層におけるスライスヘッダ)の開始符号(スタートコード)とこの開始符号よりも後の可変長符号の一部分(少なくとも1ビットデータ)とを含むブロックデータを、2種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化するとともに互いに異なる暗号化識別子を設けてパケット化した2種類の暗号化パケットデータ(第1暗号化パケットデータおよび第2暗号化パケットデータ)と、圧縮符号化コンテンツデータからブロックデータを除くデータから生成した平文パケットデータとを合成して得られた暗号化コンテンツデータを取り込む放送信号受信部301と、暗号化コンテンツデータを、平文パケットデータと第1暗号化パケットデータと第2暗号化パケットデータとに分離するパケット分離部302と、2種対の暗号化パケットデータから、あらかじめ記憶している自装置暗号化識別子と同一の暗号化識別子を有する暗号化パケットデータを復号して復号データを生成する復号部304と、平文パケットと復号データとを合成してコンテンツデータを生成するパケット合成部305とを備えた。
このように構成したことにより、受信装置30は、暗号化サーバ12が暗号化して生成した暗号化コンテンツデータを取り込み、当該受信装置30が復号可能な暗号化パケットを復号することにより、暗号化コンテンツデータからコンテンツデータを生成することができる。
したがって、本実施形態における暗号化サーバ12および受信装置30は、多数の受信装置30に暗号化コンテンツデータを一斉配信するコンテンツ配信サービスにおいて、例えば、現行方式である第1暗号方式から別方式である第2暗号方式に切り替える場合に、受信装置30による暗号化コンテンツデータの復号を正常に行わせ、暗号化コンテンツデータの安全性(秘匿性)を高く保ち、配信における伝送路の帯域消費量を低く抑えることができる。
[その他の実施形態]
本発明の一実施形態は、放送局が実施する放送によるコンテンツ配信サービスを実現するコンテンツ配信システムの例であった。これ以外にも、本発明は、例えば、コンテンツブロバイダが実施する通信回線を用いた一斉配信によるコンテンツ配信サービスを実現するコンテンツ配信システムにも適用できる。この場合、コンテンツプロバイダは、複数の受信装置30に対して、通信回線を介して暗号化コンテンツデータをマルチキャストまたはブロードキャストにより一斉配信する。
また、本実施形態は、MPEG−2ビデオ規格によるデータ構造を有する圧縮符号化コンテンツデータの全てのフレーム画像におけるブロックデータを、暗号化の対象領域とする例であった。他の実施形態として、圧縮符号化コンテンツデータにおいてフレーム内符号化画像におけるブロックデータのみを、暗号化の対象領域としてもよい。この例について具体的に説明する。
図13は、MPEG−2ビデオ規格によるデータ構造を有する圧縮符号化コンテンツデータのGOPを示す図である。同図において、横方向は時間経過を示す。同図に示すように、GOPは、例えば、Iピクチャ、Pピクチャ、およびBピクチャを含む。同図は、1GOPに15枚のピクチャ(フレーム画像)が含まれる例である。Iピクチャは、フレーム内符号化フレームである。つまり、Iピクチャは、自フレーム画像の情報のみを用いて符号化されたデータである。Pピクチャは、フレーム間予測符号化フレームである。つまり、Pピクチャは、自フレーム画像よりも時間的に前のフレーム画像の情報を用いて符号化されたデータである。Bピクチャは、フレーム内挿符号化フレームである。つまり、Bピクチャは、自フレーム画像よりも時間的に前のフレーム画像と自フレーム画像よりも時間的に後のフレーム画像との情報を用いて符号化されたデータである。よって、Iピクチャは、このIピクチャのみで復号できるが、PピクチャおよびBピクチャは、そのIピクチャが復号されることによって復号できる。
そこで、他の実施形態における暗号化サーバ12は、Iピクチャにおけるブロックデータのみを、第1暗号方式の暗号化アルゴリズムおよび第2暗号方式の暗号化アルゴリズムそれぞれにより暗号化して第1暗号化データおよび第2暗号化データを生成する。具体的に、暗号化サーバ12のスタートコード検出部125は、ストリーム生成部124から供給されるTSを取り込み、このTSから、GOP層がIピクチャであるスライス層におけるスライスヘッダのスタートコードを検出する。そして、スタートコード検出部125は、TSの先頭からそのスライスヘッダにおけるスタートコードまでのビット数を計数し、このビット数をスタートコード位置情報として記憶部123に供給する。
このように構成することにより、他の実施形態における暗号化サーバ12は、暗号化による秘匿性を保ちながら、圧縮符号化コンテンツデータにおけるブロックデータ全体のデータ量を削減することができる。よって、前述した本発明の実施形態に対して、符号量をより少なくすることができる。
また、上述した一実施形態における暗号化サーバ12の一部の機能をコンピュータで実現するようにしてもよい。この場合、その機能を実現するための暗号化プログラムをコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録された暗号化プログラムをコンピュータシステムに読み込ませて、このコンピュータシステムが実行することによって実現してもよい。
また、本実施形態における受信装置30の一部の機能をコンピュータで実現するようにしてもよい。この場合、その機能を実現するための復号プログラムをコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録された復号プログラムをコンピュータシステムに読み込ませて、このコンピュータシステムが実行することによって実現してもよい。
コンピュータシステムとは、オペレーティング・システム(Operating System;OS)や周辺装置のハードウェアを含むものである。また、コンピュータ読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、光ディスク、メモリカード等の可搬型記録媒体、コンピュータシステムに備えられる磁気ハードディスクやソリッドステートドライブ等の記憶装置のことをいう。さらに、コンピュータ読み取り可能な記録媒体とは、インターネット等のコンピュータネットワーク、および電話回線や携帯電話網を介してプログラムを送信する場合の通信回線のように、短時間の間、動的にプログラムを保持するもの、さらには、その場合のサーバ装置やクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持するものを含んでもよい。また上記の暗号化プログラムおよび復号プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせにより実現するものであってもよい。
以上、本発明の実施の形態について図面を参照して詳述したが、具体的な構成はその実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計等も含まれる。
1 コンテンツ配信システム
10 放送局装置群
11 コンテンツサーバ
12 暗号化サーバ
13 送信装置
14 ネットワーク
20 送信アンテナ
30−1〜30−4 受信装置
111 コンテンツ取得部
112 符号化レート取得部
113 コンテンツ圧縮符号化部
114 圧縮符号化コンテンツ記憶部
115 圧縮符号化コンテンツ供給部
121 圧縮符号化コンテンツ取得部
122 開始符号検出部
123 記憶部
124 ストリーム生成部
125 スタートコード検出部
126−1 第1暗号化部
126−2 第2暗号化部
127−1 第1暗号化パケット生成部
127−2 第2暗号化パケット生成部
128 パケット合成部
129 暗号化コンテンツ記憶部
130 暗号化コンテンツ供給部
131 暗号化コンテンツ取得部
132 放送信号生成部
133 放送信号送信部
301 放送信号受信部(暗号化コンテンツデータ取得部)
302 パケット分離部
303 復号鍵記憶部
304 復号部
305 パケット合成部
306 圧縮符号化コンテンツ復号部

Claims (4)

  1. 符号化コンテンツデータから、所定の開始符号を検出する開始符号検出部と、
    前記符号化コンテンツデータにおける、前記開始符号と前記開始符号より後の可変長符号の一部分とを含むブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化して複数の暗号化データを生成する暗号化部と、
    前記符号化コンテンツデータから前記ブロックデータを除くデータから平文パケットデータを生成する平文パケット生成部と、
    前記複数の暗号化データそれぞれに互いに異なる暗号化識別子を設けて暗号化パケットデータを生成する暗号化パケット生成部と、
    前記平文パケットデータと前記暗号化パケットデータとを合成して暗号化コンテンツデータを生成するパケット合成部と、
    を備えることを特徴とする暗号化装置。
  2. 符号化コンテンツデータにおける、所定の開始符号と前記開始符号より後の可変長符号の一部分とを含むブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化するとともに互いに異なる暗号化識別子を設けてパケット化した複数の暗号化パケットデータと、前記符号化コンテンツデータから前記ブロックデータを除くデータから生成した平文パケットデータとを合成して得られた暗号化コンテンツデータを取り込む暗号化コンテンツデータ取得部と、
    前記暗号化コンテンツデータを、前記平文パケットデータと前記複数の暗号化パケットデータとに分離するパケット分離部と、
    前記複数の暗号化パケットデータから、あらかじめ記憶している自装置暗号化識別子と同一の暗号化識別子を有する暗号化パケットデータを復号して復号データを生成する復号部と、
    前記平文パケットと前記復号データとを合成してコンテンツデータを生成するパケット合成部と、
    を備えることを特徴とする復号装置。
  3. コンピュータを、
    符号化コンテンツデータから、所定の開始符号を検出する開始符号検出部と、
    前記符号化コンテンツデータにおける、前記開始符号と前記開始符号より後の可変長符号の一部分とを含むブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化して複数の暗号化データを生成する暗号化部と、
    前記符号化コンテンツデータから前記ブロックデータを除くデータから平文パケットデータを生成する平文パケット生成部と、
    前記複数の暗号化データそれぞれに互いに異なる暗号化識別子を設けて暗号化パケットデータを生成する暗号化パケット生成部と、
    前記平文パケットデータと前記暗号化パケットデータとを合成して暗号化コンテンツデータを生成するパケット合成部と、
    として機能させるための暗号化プログラム。
  4. コンピュータを、
    符号化コンテンツデータにおける、所定の開始符号と前記開始符号より後の可変長符号の一部分とを含むブロックデータを、複数種類の暗号方式の暗号化アルゴリズムそれぞれにより暗号化するとともに互いに異なる暗号化識別子を設けてパケット化した複数の暗号化パケットデータと、前記符号化コンテンツデータから前記ブロックデータを除くデータから生成した平文パケットデータとを合成して得られた暗号化コンテンツデータを取り込む暗号化コンテンツデータ取得部と、
    前記暗号化コンテンツデータを、前記平文パケットデータと前記複数の暗号化パケットデータとに分離するパケット分離部と、
    前記複数の暗号化パケットデータから、あらかじめ記憶している自装置暗号化識別子と同一の暗号化識別子を有する暗号化パケットデータを復号して復号データを生成する復号部と、
    前記平文パケットと前記復号データとを合成してコンテンツデータを生成するパケット合成部と、
    として機能させるための復号プログラム。
JP2012008941A 2012-01-19 2012-01-19 暗号化装置、復号装置、暗号化プログラム、および復号プログラム Pending JP2013150147A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012008941A JP2013150147A (ja) 2012-01-19 2012-01-19 暗号化装置、復号装置、暗号化プログラム、および復号プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012008941A JP2013150147A (ja) 2012-01-19 2012-01-19 暗号化装置、復号装置、暗号化プログラム、および復号プログラム

Publications (1)

Publication Number Publication Date
JP2013150147A true JP2013150147A (ja) 2013-08-01

Family

ID=49047248

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012008941A Pending JP2013150147A (ja) 2012-01-19 2012-01-19 暗号化装置、復号装置、暗号化プログラム、および復号プログラム

Country Status (1)

Country Link
JP (1) JP2013150147A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015073269A (ja) * 2013-09-06 2015-04-16 日本放送協会 送信装置、受信装置および限定受信システム
JP2015139008A (ja) * 2014-01-20 2015-07-30 日本放送協会 暗号化装置、復号装置、暗号化プログラム、および復号プログラム
JP2016034118A (ja) * 2014-07-31 2016-03-10 日本放送協会 ストリーム生成装置、受信装置、ならびにそれらのプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005514886A (ja) * 2002-01-02 2005-05-19 ソニー エレクトロニクス インク 時間分割部分暗号化
JP2009253563A (ja) * 2008-04-03 2009-10-29 Nec Corp コンテンツ暗号化配信システム、コンテンツ暗号化配信方法およびコンテンツ暗号化配信用プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005514886A (ja) * 2002-01-02 2005-05-19 ソニー エレクトロニクス インク 時間分割部分暗号化
JP2009253563A (ja) * 2008-04-03 2009-10-29 Nec Corp コンテンツ暗号化配信システム、コンテンツ暗号化配信方法およびコンテンツ暗号化配信用プログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015073269A (ja) * 2013-09-06 2015-04-16 日本放送協会 送信装置、受信装置および限定受信システム
JP2015139008A (ja) * 2014-01-20 2015-07-30 日本放送協会 暗号化装置、復号装置、暗号化プログラム、および復号プログラム
JP2016034118A (ja) * 2014-07-31 2016-03-10 日本放送協会 ストリーム生成装置、受信装置、ならびにそれらのプログラム

Similar Documents

Publication Publication Date Title
Liu et al. A survey of video encryption algorithms
US7151832B1 (en) Dynamic encryption and decryption of a stream of data
EP2311257B1 (en) Apparatus and method for encrypting image data, and decrypting the encrypted image data, and image data distribution system
KR101026609B1 (ko) 스케일 가능한 미디어를 위한 스케일 가능하고 에러 탄력적인 drm을 위한 방법, 장치 및 키 관리 방법
US6989773B2 (en) Media data encoding device
US7057535B2 (en) Methods for scaling encoded data without requiring knowledge of the encoding scheme
US8509434B2 (en) Method and apparatus for protecting scalable video coding contents
US8838954B2 (en) Media processing devices for adaptive delivery of on-demand media, and methods thereof
JP2010176691A (ja) 情報ストリームを安全化する方法及びその装置
JP2007526507A (ja) スケーラブルメディアを記述するデータを生成するための方法
US7504968B2 (en) Media data decoding device
KR20100089228A (ko) 멀티미디어 컨텐트의 전송 스트림 암호화 방법 및 그 장치,복호화 방법 및 그 장치
Xu et al. Robust video encryption for h. 264 compressed bitstream based on cross-coupled chaotic cipher
JP2007534230A (ja) プログレッシブ暗号化されたスケーラブルデータ列をスケーリングするための方法
JP6090972B2 (ja) 暗号化装置、復号装置、暗号化プログラム、および復号プログラム
JP2013150147A (ja) 暗号化装置、復号装置、暗号化プログラム、および復号プログラム
JP6018880B2 (ja) 暗号化装置、復号装置、暗号化プログラム、および復号プログラム
Su et al. Chaos-based video encryption algorithms
JP6155165B2 (ja) 暗号化装置、復号装置、暗号化プログラム、および復号プログラム
Jovanović et al. An efficient mechanism of cryptographic synchronization within selectively encrypted H. 265/HEVC video stream
JP6793364B2 (ja) コンテンツ復号装置、コンテンツ復号方法、受信装置及びプログラム
JP2007311842A (ja) データストリーム無線送信装置、データストリーム無線受信装置、無線伝送システム、撮像装置、再生装置、データストリーム無線送信方法及びプログラム
Jun et al. A two-way selective encryption algorithm for MPEG video
JP5965750B2 (ja) 暗号化装置、復号装置、暗号化プログラム、および復号プログラム
JP2009213083A (ja) 画像圧縮方法及び画像圧縮装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141201

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150723

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150818

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151007

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160308