(57)【要約】      （修正有）【課題】コンテンツとしてのストリームを高速に暗号化・復号化する。【解決手段】コンテンツ送信装置の暗号器は、ストリーム（コンテンツ）を所定のパケット単位で並列的に暗号化する。ここで、暗号器は、入力データ蓄積部（ＦＩＦＯ）と出力データ蓄積部（ＦＩＦＯ）と、これらの間に、複数の暗号化部と、複数の暗号化部に対応してそれぞれの入力側のデータ蓄積部（ＦＩＦＯ）群および出力側のデータ蓄積部（ＦＩＦＯ）群とを備え、基準ブロック単位のデータを順次処理することで高速に暗号処理する。同様にして、コンテンツ受信装置の復号器は、受信したパケット単位の暗号化データを並列的に復号化する。【選択図】図１
2007033649.tif 000002
【特許請求の範囲】
【請求項１】
それぞれ同一の蓄積容量を有し、データストリームを順に蓄積する複数の第１データ蓄積部と、
前記複数の第１データ蓄積部のそれぞれに対応付けて接続され、対応する第１データ蓄積部に蓄積されたデータを、暗号化のための基準データ量ごとに順に暗号化し、暗号化データを生成する複数の暗号化部と、
それぞれ同一の前記蓄積容量を有し、前記複数の暗号化部のそれぞれに対応付けて接続され、対応する暗号化部によって生成された暗号化データを蓄積する複数の第２データ蓄積部と、
前記複数の第２データ蓄積部のそれぞれに対応付けて接続され、対応する第２データ蓄積部に前記蓄積容量分の暗号化データが蓄積されたことを条件として、所望の参照データを付加して出力する複数のデータ付加部と、
前記複数のデータ付加部の各出力データをその出力順にストリーム化し、データストリームを生成する第１ストリーム生成部と、
を備えたストリーム暗号化装置。
【請求項２】
所定量の暗号化データに対して参照データが付加された基準ブロック単位でストリーム化されたデータストリームを復号化するためのストリーム復号化装置であって、
前記基準ブロックを順に蓄積する複数の第３データ蓄積部と、
前記複数の第３データ蓄積部のそれぞれに対応付けて接続され、対応する第３データ蓄積部に蓄積された基準ブロックから前記参照データを除去し、前記暗号化データを抽出する複数のデータ除去部と、
前記複数のデータ除去部のそれぞれに対応付けて接続され、対応するデータ除去部により抽出された暗号化データを、復号化のための基準データ量ごとに順に復号化し、復号化データを生成する複数の復号化部と、
それぞれ前記所定量の蓄積容量を有し、前記複数の復号化部のそれぞれに対応付けて接続され、対応する復号化部によって生成された復号化データを蓄積する複数の第４データ蓄積部と、
各第４データ蓄積部に前記蓄積容量分の復号化データが蓄積された順にストリーム化し、データストリームを生成する第２ストリーム生成部と、
を備えたストリーム復号化装置。
【請求項３】
それぞれ同一の蓄積容量を有する複数の第１データ蓄積部に、データストリームを順に蓄積し、
前記複数の第１データ蓄積部のそれぞれに対応付けて接続された複数の暗号化部のそれぞれが、対応する第１データ蓄積部に蓄積されたデータを、暗号化のための基準データ量ごとに順に暗号化し、暗号化データを生成し、
それぞれ同一の前記蓄積容量を有し、前記複数の暗号化部のそれぞれに対応付けて接続された複数の第２データ蓄積部のそれぞれが、対応する暗号化部によって生成された暗号化データを蓄積し、
前記複数の第２データ蓄積部のそれぞれに対応付けて接続された複数のデータ付加部のそれぞれが、対応する第２データ蓄積部に前記蓄積容量分の暗号化データが蓄積されたことを条件として、所望の参照データを付加して出力し、
第１ストリーム生成部が前記複数のデータ付加部の各出力データをその出力順にストリーム化し、データストリームを生成する
ストリーム暗号化方法。
【請求項４】
所定量の暗号化データに対して参照データが付加された基準ブロック単位でストリーム化されたデータストリームを復号化するためのストリーム復号化方法であって、
複数の第３データ蓄積部のそれぞれが前記基準ブロックを順に蓄積し、
前記複数の第３データ蓄積部のそれぞれに対応付けて接続された複数のデータ除去部のそれぞれが、対応する第３データ蓄積部に蓄積された基準ブロックから前記参照データを除去して、前記暗号化データを抽出し、
前記複数のデータ除去部のそれぞれに対応付けて接続された複数の復号化部のそれぞれが、対応するデータ除去部により抽出された暗号化データを、復号化のための基準データ量ごとに順に復号化して、復号化データを生成し、
それぞれ前記所定量の蓄積容量を有し、前記複数の復号化部のそれぞれに対応付けて接続された複数の第４データ蓄積部のそれぞれが、対応する復号化部によって生成された復号化データを蓄積し、
第２ストリーム生成部が各第４データ蓄積部に前記蓄積容量分の復号化データが蓄積された順にストリーム化し、データストリームを生成する
ストリーム復号化方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、音声・映像などのコンテンツを含むストリームを暗号化または復号化する技術に関する。
【背景技術】
【０００２】
昨今のデータ通信ネットワークの普及に伴い、家庭内においても家電機器やコンピュータ、その他の周辺機器をネットワーク接続し、各機器間での通信を可能とした、いわゆるホームネットワークが浸透しつつある。ホームネットワークは、ネットワーク接続機器間で通信を行なうことにより各機器のデータ処理機能を共有することを可能とするものである。ネットワーク接続機器間のコンテンツ送受信等、ユーザに利便性・快適性を提供するものであり、今後、ますます普及することが予測される。
【０００３】
かかるホームネットワークにおいて、コンテンツの著作権を保護する技術としてデファクトスタンダードとなっているＤＴＣＰ（Digital Transmission Content Protection）が知られている。ＤＴＣＰでは、コンテンツの送信機器と受信機器との間で、認証および暗号鍵の交換を行って暗号鍵を共有し、これらの機器間で暗号化データが転送される。
【０００４】
下記非特許文献１に開示されているように、ＤＴＣＰをＩＰネットワーク上に展開するためのＤＴＣＰ／ＩＰでは、暗号強度を高めるため、鍵長１２８ビットのＡＥＳ（Advanced Encryption Standard）に対してＣＢＣ（Cipher Block Chaining：暗号文ブロック連鎖）という処理がなされる。以下、このＣＢＣ処理を用いたＡＥＳ暗号化をＡＥＳ−ＣＢＣ暗号化と称する。
下記特許文献１には、このＡＥＳ−ＣＢＣ暗号化を暗号化モードとして用いたデジタルコンテンツの保護方法について開示されている。
【０００５】
ＡＥＳ−ＣＢＣ暗号化では、１２８ビットの暗号化データをレジスタに保持しておき、その暗号化データをフィードバックさせて次の暗号化対象データとＥＸＯＲ（排他的論理和）演算を行い、その演算結果に対してＡＥＳ暗号化を行う。したがって、ＡＥＳ−ＣＢＣ暗号化では、暗号化処理の入出力が１：１に対応付けられないため、出力に特定の傾向が観測されず暗号強度が高まるものの、ある暗号化を行うためにはその前の暗号化結果を待たなければならず、通常のＡＥＳ暗号化と比較すると処理に時間がかかる。
【０００６】
【非特許文献１】Digital Transmission Content Protection Specification Volume 1 (Information version) Revision 1.4 February 28, 2005 (p47等)
【特許文献１】特開２００４−３１８１５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
ところで、ＩＰネットワーク伝送において、送信側がリアルタイムで再生するために伝送路に送出されるデータに対し、一時的に暗号化を行う場合がある。かかる場合は、全コンテンツ（暗号化データ）を受信側に送出した後に別途暗号鍵を受け渡す場合と異なり、暗号化処理およびその復号化処理をリアルタイムで行うことが要求されるが、上記ＡＥＳ−ＣＢＣ暗号化を行うことは、このリアルタイム処理の障害となる。
特に近年は、映像の高画質化のために、１０８０ｉ（有効走査線１０８０本のインタレース表示）から１０８０ｐ（有効走査線１０８０本のプログレッシブ表示）へ変更する、あるいは、リフレッシュレートを６０Ｈｚから１２０Ｈｚ，２４０Ｈｚに変更する等のハイフレームレート化も徐々に進みつつあり、音声・映像などのコンテンツをリアルタイムで暗号化および復号化を行うための能力が追いつかない状況になりつつある。
【０００８】
本発明は上記した点に鑑みてなされたものであって、その目的とするところは、ストリームを高速に暗号化するためのストリーム暗号化装置、ストリーム暗号化方法、および、ストリームを高速に復号化するためのストリーム復号化装置、ストリーム復号化方法を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を克服するために、本発明の第１の観点は、
それぞれ同一の蓄積容量を有し、データストリームを順に蓄積する複数の第１データ蓄積部と、
前記複数の第１データ蓄積部のそれぞれに対応付けて接続され、対応する第１データ蓄積部に蓄積されたデータを、暗号化のための基準データ量ごとに順に暗号化し、暗号化データを生成する複数の暗号化部と、
それぞれ同一の前記蓄積容量を有し、前記複数の暗号化部のそれぞれに対応付けて接続され、対応する暗号化部によって生成された暗号化データを蓄積する複数の第２データ蓄積部と、
前記複数の第２データ蓄積部のそれぞれに対応付けて接続され、対応する第２データ蓄積部に前記蓄積容量分の暗号化データが蓄積されたことを条件として、所望の参照データを付加して出力する複数のデータ付加部と、
前記複数のデータ付加部の各出力データをその出力順にストリーム化し、データストリームを生成する第１ストリーム生成部と、
を備えたストリーム暗号化装置である。
【００１０】
本発明において、「暗号化のための基準データ量」とは、暗号化処理を行うときのデータ単位を意味し、たとえばＡＥＳでは１２８バイト、２５６バイトなどのデータ量となる。
【００１１】
上記課題を克服するために、本発明の第２の観点は、所定量の暗号化データに対して参照データが付加された基準ブロック単位でストリーム化されたデータストリームを復号化するためのストリーム復号化装置であって、
前記基準ブロックを順に蓄積する複数の第３データ蓄積部と、
前記複数の第３データ蓄積部のそれぞれに対応付けて接続され、対応する第３データ蓄積部に蓄積された基準ブロックから前記参照データを除去し、前記暗号化データを抽出する複数のデータ除去部と、
前記複数のデータ除去部のそれぞれに対応付けて接続され、対応するデータ除去部により抽出された暗号化データを、復号化のための基準データ量ごとに順に復号化し、復号化データを生成する複数の復号化部と、
それぞれ前記所定量の蓄積容量を有し、前記複数の復号化部のそれぞれに対応付けて接続され、対応する復号化部によって生成された復号化データを蓄積する複数の第４データ蓄積部と、
各第４データ蓄積部に前記蓄積容量分の復号化データが蓄積された順にストリーム化し、データストリームを生成する第２ストリーム生成部と、
を備えたストリーム復号化装置である。
【００１２】
本発明において、「基準ブロック」とは、たとえばパケット単位など、コンテンツとしてのデータストリームを処理するための基準となるデータ単位の概念である。
また、「参照データ」とは、たとえばヘッダデータなど、基準ブロックのデータを管理するための付加的なデータを意味する。
【００１３】
上記課題を克服するために、本発明の第３の観点は、
それぞれ同一の蓄積容量を有する複数の第１データ蓄積部に、データストリームを順に蓄積し、
前記複数の第１データ蓄積部のそれぞれに対応付けて接続された複数の暗号化部のそれぞれが、対応する第１データ蓄積部に蓄積されたデータを、暗号化のための基準データ量ごとに順に暗号化し、暗号化データを生成し、
それぞれ同一の前記蓄積容量を有し、前記複数の暗号化部のそれぞれに対応付けて接続された複数の第２データ蓄積部のそれぞれが、対応する暗号化部によって生成された暗号化データを蓄積し、
前記複数の第２データ蓄積部のそれぞれに対応付けて接続された複数のデータ付加部のそれぞれが、対応する第２データ蓄積部に前記蓄積容量分の暗号化データが蓄積されたことを条件として、所望の参照データを付加して出力し、
第１ストリーム生成部が前記複数のデータ付加部の各出力データをその出力順にストリーム化し、データストリームを生成する
ストリーム暗号化方法である。
【００１４】
上記課題を克服するために、本発明の第４の観点は、
所定量の暗号化データに対して参照データが付加された基準ブロック単位でストリーム化されたデータストリームを復号化するためのストリーム復号化方法であって、
複数の第３データ蓄積部のそれぞれが前記基準ブロックを順に蓄積し、
前記複数の第３データ蓄積部のそれぞれに対応付けて接続された複数のデータ除去部のそれぞれが、対応する第３データ蓄積部に蓄積された基準ブロックから前記参照データを除去して、前記暗号化データを抽出し、
前記複数のデータ除去部のそれぞれに対応付けて接続された複数の復号化部のそれぞれが、対応するデータ除去部により抽出された暗号化データを、復号化のための基準データ量ごとに順に復号化して、復号化データを生成し、
それぞれ前記所定量の蓄積容量を有し、前記複数の復号化部のそれぞれに対応付けて接続された複数の第４データ蓄積部のそれぞれが、対応する復号化部によって生成された復号化データを蓄積し、
第２ストリーム生成部が各第４データ蓄積部に前記蓄積容量分の復号化データが蓄積された順にストリーム化し、データストリームを生成する
ストリーム復号化方法である。
【発明の効果】
【００１５】
本発明によれば、コンテンツとしてのストリームを高速に暗号化・復号化することができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明のコンテンツ暗号化装置の一実施形態である暗号器を含むコンテンツ送信装置２と、本発明のコンテンツ復号化装置の一実施形態である復号器を含むコンテンツ受信装置３とからなるコンテンツ伝送システム１について説明する。
【００１７】
コンテンツ伝送システム１は、たとえばイーサケーブルなどの伝送路を用いて家庭内のホームネットワークとして構築される。コンテンツ送信装置２は、外部から無線通信により、音声・映像を含むコンテンツを取得し、そのコンテンツに対してＤＴＣＰ／ＩＰ規格に準拠した暗号化および伝送方式に応じたパケット化を行い、伝送路に送出する。コンテンツ受信装置３は、たとえばテレビジョン受像機と一体に構成され、伝送路から受信した暗号化データに対して復号化を行い、コンテンツをＬＣＤ（Liquid Crystal Display）などの表示機器に再生する。
【００１８】
以下、図１に関連付けて、コンテンツ送信装置２およびコンテンツ受信装置３の構成について説明する。図１は、コンテンツ送信装置２およびコンテンツ受信装置３の構成を示すブロック図である。
【００１９】
図１に示すように、実施形態に係るコンテンツ送信装置２は、受信アンテナ２１、デジタルチューナ２２、チャンネルデコーダ２３、暗号器２４、ＩＰ送信器２５を備える。
なお、暗号器２４は、本発明のストリーム暗号化装置に対応する。
【００２０】
デジタルチューナ２２は、受信アンテナ２１が受信した地上波デジタル放送波に用いるＯＦＤＭ(Orthogonal Frequency Division Multiplexing)の周波数を周波数変換によりダウンコンバートして、任意のチャンネル（放送局）の地上波デジタル放送信号Ｓ２２を抽出する。
チャンネルデコーダ２３は、地上波デジタル放送信号Ｓ２２を、たとえばＱＰＳＫ復調して復調信号を生成するとともに、当該復調信号から、コンテンツとしてのＭＰＥＧ−ＴＳ（ストリーム）Ｓ２３を生成する。
【００２１】
暗号器２４では、コンテンツとしてのストリームＳ２３に対してＤＴＣＰ／ＩＰ規格に準拠した暗号化を行う。
文献“DTCP Volume 1 Supplement E Mapping DTCP to IP(Information version) Revision 1.1 February 28, 2005 (p13等)”に示されるように、ＤＴＣＰ／ＩＰ規格では、暗号強度を高めるため、通常の鍵長１２８ビットのＡＥＳ（Advanced Encryption Standard）暗号化に対してＣＢＣ（Cipher Block Chaining：暗号文ブロック連鎖）処理する（ＡＥＳ−ＣＢＣ暗号化を行う）ことが規定されている。
このＡＥＳ−ＣＢＣ暗号化を行うことは、通常の１２８ビットのＡＥＳ暗号化に対して処理に時間がかかるため、暗号器２４では、ＡＥＳ−ＣＢＣ暗号化処理ブロックを複数並列化させて処理の高速化を図っている。
【００２２】
図２に暗号器２４のブロック構成を示す。
暗号器２４は、入力ＦＩＦＯ（First In First Out）２４１、ＦＩＦＯ群２４２（ＦＩＦＯ２４２＿１〜ＦＩＦＯ２４２＿４）、ＡＥＳ−ＣＢＣ暗号化部群２４３（ＡＥＳ−ＣＢＣ暗号化部２４３＿１〜ＡＥＳ−ＣＢＣ暗号化部２４３＿４）、ＦＩＦＯ群２４４（ＦＩＦＯ２４４＿１〜ＦＩＦＯ２４４＿４）、ヘッダ付加回路群２４５（ヘッダ付加回路２４５＿１〜ヘッダ付加回路２４５＿４）、出力ＦＩＦＯ２４６を有する。
【００２３】
なお、ＦＩＦＯ群２４２は、本発明の複数の第１データ蓄積部の一実施形態である。
ＡＥＳ−ＣＢＣ暗号化部群２４３は、本発明の複数の暗号化部の一実施形態である。
ＦＩＦＯ群２４４は、本発明の複数の第２データ蓄積部の一実施形態である。
ヘッダ付加回路群２４５は、本発明の複数のデータ付加部の一実施形態である。
出力ＦＩＦＯ２４６は、本発明の第１ストリーム生成部の一実施形態である。
【００２４】
図に示すように、暗号器２４において、入力ＦＩＦＯ２４１と出力ＦＩＦＯ２４６の間には、４系統の暗号化処理ブロックが用意される。すなわち、ＦＩＦＯ２４２＿１、ＡＥＳ−ＣＢＣ暗号化部２４３＿１、ＦＩＦＯ２４４＿１、ヘッダ付加回路２４５＿１からなる第１の暗号化処理ブロック、ＦＩＦＯ２４２＿２、ＡＥＳ−ＣＢＣ暗号化部２４３＿２、ＦＩＦＯ２４４＿２、ヘッダ付加回路２４５＿２からなる第２の暗号化処理ブロック、ＦＩＦＯ２４２＿３、ＡＥＳ−ＣＢＣ暗号化部２４３＿３、ＦＩＦＯ２４４＿３、ヘッダ付加回路２４５＿３からなる第３の暗号化処理ブロック、ＦＩＦＯ２４２＿４、ＡＥＳ−ＣＢＣ暗号化部２４３＿４、ＦＩＦＯ２４４＿４、ヘッダ付加回路２４５＿４からなる第４の暗号化処理ブロックが設けられる。
なお、本実施形態における暗号器２４は４系統の暗号化処理ブロックにより構成したが、これに限られず、暗号化処理ブロックの数は、高速化の要請に応じて自由に設定できる。
【００２５】
入力ＦＩＦＯ２４１は、チャンネルデコーダ２３から送出されたＭＰＥＧ−ＴＳのデータを一時的に蓄積するとともに、ＦＩＦＯ２４２＿１からＦＩＦＯ２４２＿４にかけて順にデータを供給する。
ＦＩＦＯ群２４２の各ＦＩＦＯは、それぞれ１ＫＢ（１０２４バイト）の蓄積容量を有する。この蓄積容量は、ＤＴＣＰ／ＩＰヘッダを付加するデータ単位に応じて設定される。
ＦＩＦＯ群２４２の各ＦＩＦＯは、入力ＦＩＦＯ２４１から供給されるデータによりその蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ１ｘをアクティブにすることで入力ＦＩＦＯ２４１に通知する。
すなわち、図２に示すように、ＦＩＦＯ２４２＿１は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ１１をアクティブにすることで入力ＦＩＦＯ２４１に通知する。ＦＩＦＯ２４２＿２は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ１２をアクティブにすることで入力ＦＩＦＯ２４１に通知する。ＦＩＦＯ２４２＿３は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ１３をアクティブにすることで入力ＦＩＦＯ２４１に通知する。ＦＩＦＯ２４２＿４は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ１４をアクティブにすることで入力ＦＩＦＯ２４１に通知する。
【００２６】
入力ＦＩＦＯ２４１は、制御信号ＳＴＳ１ｘ（ｘ：１〜４）がアクティブになると、対応するセレクト信号ＳＥＬ１ｘをアクティブにし、ＦＩＦＯ群２４２のいずれかのＦＩＦＯを選択してデータを出力する。
したがって、入力ＦＩＦＯ２４１に蓄積されたデータは、先ずＦＩＦＯ２４２＿１に蓄積されていき、ＦＩＦＯ２４２＿１が１ＫＢ分一杯になると、次に、ＦＩＦＯ２４２＿２に蓄積されていき、ＦＩＦＯ２４２＿２が１ＫＢ分一杯になると、次にＦＩＦＯ２４２＿３というように順に１ＫＢ分のデータが各ＦＩＦＯに順に蓄積される。
【００２７】
ＡＥＳ−ＣＢＣ暗号化部群２４３の各暗号化部は、対応するＦＩＦＯ２４２＿ｘに１ＫＢ分のデータが蓄積されると、順にＡＥＳ−ＣＢＣ暗号化処理を行う。
図３に、ＡＥＳ−ＣＢＣ暗号化部群２４３の各暗号化部２４３＿ｘ（ｘ：１〜４）の構成を示す。
図３に示すように、ＡＥＳ−ＣＢＣ暗号化部２４３＿ｘは、ＡＥＳ暗号化回路２４３１、暗号化データをフィードバックさせるためのレジスタ２４３２、ゲート回路２４３３を有する。
すなわち、ＡＥＳ−ＣＢＣ暗号化部２４３＿ｘでは、１２８ビットの暗号化データＳ２４３をレジスタ２４３２に保持しておき、その暗号化データを入力側にフィードバックさせ、ゲート回路２４３３において次の暗号化対象データＳ２４２とＥＸＯＲ演算を行い、１２８ビットの演算結果に対して、所定の暗号鍵に基づいたＡＥＳ暗号化を行う。
【００２８】
ＡＥＳ−ＣＢＣ暗号化部２４３＿１〜２４３＿４でそれぞれ得られた暗号化データは、対応するＦＩＦＯ群２４４の各ＦＩＦＯに蓄積される。
ＦＩＦＯ群２４４の各ＦＩＦＯは、それぞれ１ＫＢ（１０２４バイト）の蓄積容量を有する。この蓄積容量は、ＤＴＣＰ／ＩＰヘッダを付加するデータ単位に応じて設定される。
【００２９】
ヘッダ付加回路群２４５の各ヘッダ付加回路は、暗号化データによりＦＩＦＯ群２４４の各ＦＩＦＯの蓄積容量一杯になると、その１ＫＢの暗号化データに対してＤＴＣＰ／ＩＰヘッダを付加する。ＤＴＣＰ／ＩＰヘッダには、暗号鍵を生成するための乱数Ｎｃ（６４ビット）、Ｅ−ＥＭＩ（Extended Encryption Mode Indicator：“Copy-never”，“Copy-one-generation”等の保護の属性を示すデータ）、コンテンツ長を示すデータなどが含まれる。
【００３０】
ヘッダ付加回路群２４５の各ヘッダ付加回路は、１ＫＢの暗号化データにＤＴＣＰ／ＩＰヘッダを付加することでＤＴＣＰ／ＩＰパケットを生成する。そして、ＤＴＣＰ／ＩＰパケットの出力準備が整うと、出力準備が整ったことを示す制御信号ＳＴＳ２ｘをアクティブにすることで出力ＦＩＦＯ２４６に通知する。
すなわち、図２に示すように、ヘッダ付加回路２４５＿１は、１ＫＢの暗号化データにＤＴＣＰ／ＩＰヘッダを付加すると、制御信号ＳＴＳ２１をアクティブにすることで出力ＦＩＦＯ２４６に通知する。ヘッダ付加回路２４５＿２は、１ＫＢの暗号化データにＤＴＣＰ／ＩＰヘッダを付加すると、制御信号ＳＴＳ２２をアクティブにすることで出力ＦＩＦＯ２４６に通知する。ヘッダ付加回路２４５＿３は、１ＫＢの暗号化データにＤＴＣＰ／ＩＰヘッダを付加すると、制御信号ＳＴＳ２３をアクティブにすることで出力ＦＩＦＯ２４６に通知する。ヘッダ付加回路２４５＿４は、１ＫＢの暗号化データにＤＴＣＰ／ＩＰヘッダを付加すると、制御信号ＳＴＳ２４をアクティブにすることで出力ＦＩＦＯ２４６に通知する。
【００３１】
出力ＦＩＦＯ２４６は、制御信号ＳＴＳ２ｘ（ｘ：１〜４）がアクティブになると、対応するセレクト信号ＳＥＬ２ｘをアクティブにすることで、ヘッダ付加回路群２４５のいずれかのヘッダ付加回路を選択してデータを取り込む。
【００３２】
ここで、暗号器２４の入力側では、ＦＩＦＯ２４２＿１、ＦＩＦＯ２４２＿２、ＦＩＦＯ２４２＿３、ＦＩＦＯ２４２＿４の順に、１ＫＢ分のデータが各ＦＩＦＯに順に蓄積され、この順に暗号化処理およびＤＴＣＰ／ＩＰヘッダの付加がなされていくため、出力側では、制御信号ＳＴＳ２１、制御信号ＳＴＳ２２、制御信号ＳＴＳ２３、制御信号ＳＴＳ２４の順にアクティブとなる。したがって、出力ＦＩＦＯ２４６には、ＦＩＦＯ２４２＿１、ＦＩＦＯ２４２＿２、ＦＩＦＯ２４２＿３、ＦＩＦＯ２４２＿４に蓄積された順に、暗号化されたＤＴＣＰ／ＩＰパケットが蓄積されていく。それゆえ、暗号器２４の入力ストリームＳ２３のデータの順序は、出力ＦＩＦＯ２４６において維持されている。
出力ＦＩＦＯ２４６は、蓄積されるＤＴＣＰ／ＩＰパケットをストリームＳ２４として出力する。
【００３３】
なお、上述した各ＦＩＦＯの蓄積容量を１ＫＢとしたが、一般的には、ＤＴＣＰ／ＩＰヘッダが示すコンテンツ長のデータを収容できるように、その蓄積容量を設定する必要がある。また、ＩＥＥＥ８０２．３では、ＭＡＣヘッダのペイロードは、１．５ＫＢ以下でなければならない旨が規定されているので、各ＦＩＦＯの蓄積容量は、１〜１．４ＫＢ程度が好ましい。
【００３４】
次に、図４に関連付けて、暗号器２４の動作について説明する。図４は、暗号器２４の各部の動作を示すタイミングチャートであり、（ａ）はＦＩＦＯ群２４２の動作状態、（ｂ）はＡＥＳ−ＣＢＣ暗号化部２４３＿１の処理状態、（ｃ）はＡＥＳ−ＣＢＣ暗号化部２４３＿２の処理状態、（ｄ）はＡＥＳ−ＣＢＣ暗号化部２４３＿３の処理状態、（ｅ）はＡＥＳ−ＣＢＣ暗号化部２４３＿４の処理状態、（ｆ）はＡＥＳ−ＣＢＣ暗号化部２４３＿１の処理状態、（ｇ）はＡＥＳ−ＣＢＣ暗号化部２４３＿２の処理状態、（ｈ）はＡＥＳ−ＣＢＣ暗号化部２４３＿３の処理状態、（ｉ）はＡＥＳ−ＣＢＣ暗号化部２４３＿４の処理状態を示す。
【００３５】
図４では、暗号器２４によって３Ｇｂｐｓのストリームを処理する場合を例として説明する。かかる場合、１Ｇｂｐｓの処理能力を有する暗号化処理ブロックを４系統並列に構成する。すなわち、その構成は、図２に示した通りである。
【００３６】
図４（ａ）に示すように、入力ＦＩＦＯ２４１に蓄積されたデータは、期間１において、先ずＦＩＦＯ２４２＿１に蓄積されていき、ＦＩＦＯ２４２＿１が１ＫＢ分一杯になると、次に、期間２において、ＦＩＦＯ２４２＿２に蓄積されていく。さらに、期間３において、ＦＩＦＯ２４２＿３に蓄積されていき、ＦＩＦＯ２４２＿３が１ＫＢ分一杯になると、次に、期間４において、ＦＩＦＯ２４２＿４に蓄積されていく。以下同様にして、期間５〜８において、ＦＩＦＯ２４２＿１〜２４２＿４に順に１ＫＢデータが蓄積される。
【００３７】
なお、図４においては、１Ｇｂｐｓの処理能力を有する暗号化処理ブロックが１ＫＢのデータを処理するために３期間を要するとする（または、そのように１つの期間を定義する）。たとえば、期間１においてＦＩＦＯ２４２＿１に蓄積された１ＫＢのデータは、図４（ｂ）に示すように、期間１〜３の３期間においてＡＥＳ−ＣＢＣ暗号化部２４３＿１によって暗号化処理され、期間２においてＦＩＦＯ２４２＿２に蓄積された１ＫＢのデータは、図４（ｃ）に示すように、期間２〜４の３期間においてＡＥＳ−ＣＢＣ暗号化部２４３＿２によって暗号化処理される。以下、図４（ｄ）〜（ｉ）に示すように、ＦＩＦＯ群２４２の各ＦＩＦＯに蓄積された１ＫＢのデータが順に３期間をかけて暗号化処理される。
【００３８】
したがって、たとえば期間１〜３にＦＩＦＯ群２４２に蓄積された３ＫＢのデータは、期間３〜５の３期間において暗号化、すなわち、平均すると１ＫＢのデータを１期間で暗号化されることになる。各暗号化処理ブロックが１ＫＢのデータを処理するために３つの期間を要することから、本実施形態における暗号器２４では、３倍の高速化を実現していることがわかる。
【００３９】
なお、図４に示した例では、４系統の暗号化処理ブロックによって３倍の高速化を実現しているが、理論的には３系統の暗号化処理ブロックによって３倍の高速化を実現することが可能である。たとえば図４の期間４において、ＦＩＦＯ２４２＿１に１ＫＢのデータを蓄積し、図４（ｆ）と異なり、期間４からＡＥＳ−ＣＢＣ暗号化部２４３＿１の処理を開始することで可能である。
しかしながら、図４に示した例では、各暗号化処理ブロックの処理能力のばらつきを考慮し、その余裕分を見積もる観点から、たとえば期間４においてＡＥＳ−ＣＢＣ暗号化部２４３＿１は処理を行わないようにしている。
【００４０】
図１の説明に戻る。
ＩＰ送信器２５は、マイクロコントローラを主体として構成され、このマイクロコントローラによりコンテンツ受信装置３との通信を制御する。たとえばＩＰ送信器２５は、暗号器２４から供給されるストリームに対し、ＲＴＰ／ＵＤＰやＨＴＴＰ／ＴＣＰなどのプロトコルに従ったパケット単位のデータを生成する。
【００４１】
図５は、ＩＰ送信器２５にて生成するパケット構成を示す図であり、（ａ）はＲＴＰ／ＵＤＰパケットの場合、（ｂ）はＨＴＴＰ／ＴＣＰパケットの場合を示す。
図５に示すように、ＩＰ送信器２５は、ＲＴＰ／ＵＤＰパケットの場合、ストリームＳ２４のＤＴＣＰ／ＩＰパケットに対して、ＲＴＰヘッダ、ＵＤＰヘッダ、ＩＰヘッダ、ＭＡＣヘッダを付加し、ストリームＳ２５を生成して伝送路へ送出する。また、ＨＴＴＰ／ＴＣＰパケットの場合、ＨＴＴＰヘッダ、ＴＣＰヘッダ、ＩＰヘッダ、ＭＡＣヘッダを付加し、ストリームＳ２５を生成して伝送路へ送出する。
【００４２】
次に、コンテンツ受信装置３の構成について説明する。
【００４３】
図１に示すように、実施形態に係るコンテンツ受信装置３は、ＩＰ受信器３１、復号器３２、ＭＰＥＧデコーダ３３、スキャンコンバータ３４、ＬＣＤドライバ３５、ＬＣＤ３６を備える。
なお、復号器３２は、本発明のストリーム復号化装置に対応する。
【００４４】
ＩＰ受信器３１は、マイクロコントローラを主体として構成され、このマイクロコントローラによりコンテンツ送信装置２との通信を制御する。たとえばＩＰ受信器３１は、コンテンツ送信装置２から供給されるストリームから、ＤＴＣＰ／ＩＰパケットを抽出して、ストリームＳ３１を復号器３２に供給する。
【００４５】
復号器３２では、コンテンツとしてのストリームＳ３１に対してＤＴＣＰ／ＩＰ規格に準拠した復号化を行う。
【００４６】
図６に復号器３２のブロック構成を示す。
復号器３２は、入力ＦＩＦＯ３２１、ＦＩＦＯ群３２２（ＦＩＦＯ３２２＿１〜ＦＩＦＯ３２２＿４）、ヘッダ除去回路群３２３（ヘッダ除去回路３２３＿１〜ヘッダ除去回路３２３＿４）、ＡＥＳ−ＣＢＣ復号化部群３２４（ＡＥＳ−ＣＢＣ復号化部３２４＿１〜ＡＥＳ−ＣＢＣ復号化部３２４＿４）、ＦＩＦＯ群３２５（ＦＩＦＯ３２５＿１〜ＦＩＦＯ３２５＿４）、出力ＦＩＦＯ３２６を有する。
復号器３２の構成は、全体として、図２に示した暗号器２４と類似の構成である。
【００４７】
なお、ＦＩＦＯ群３２２は、本発明の複数の第３データ蓄積部の一実施形態である。
ヘッダ除去回路群３２３は、本発明の複数のデータ除去部の一実施形態である。
ＡＥＳ−ＣＢＣ復号化部群３２４は、本発明の複数の復号化部の一実施形態である。
ＦＩＦＯ群３２５は、本発明の複数の第４データ蓄積部の一実施形態である。
出力ＦＩＦＯ３２６は、本発明の第２ストリーム生成部の一実施形態である。
【００４８】
図に示すように、復号器３２において、入力ＦＩＦＯ３２１と出力ＦＩＦＯ３２６の間には、４系統の復号化処理ブロックが用意される。すなわち、ＦＩＦＯ３２２＿１、ヘッダ除去回路３２３＿１、ＡＥＳ−ＣＢＣ復号化部３２４＿１、ＦＩＦＯ３２５＿１からなる第１の復号化処理ブロック、ＦＩＦＯ３２２＿２、ヘッダ除去回路３２３＿２、ＡＥＳ−ＣＢＣ復号化部３２４＿２、ＦＩＦＯ３２５＿２からなる第２の復号化処理ブロック、ＦＩＦＯ３２２＿３、ヘッダ除去回路３２３＿３、ＡＥＳ−ＣＢＣ復号化部３２４＿３、ＦＩＦＯ３２５＿３からなる第３の復号化処理ブロック、ＦＩＦＯ３２２＿４、ヘッダ除去回路３２３＿４、ＡＥＳ−ＣＢＣ復号化部３２４＿４、ＦＩＦＯ３２５＿４からなる第４の復号化処理ブロックが設けられる。
なお、本実施形態における復号器３２は４系統の復号化処理ブロックにより構成したが、これに限られず、復号化処理ブロックの数は、高速化の要請に応じて自由に設定できる。
【００４９】
入力ＦＩＦＯ３２１は、ＩＰ受信器３１から供給されたストリームＳ３１を一時的に蓄積するとともに、ＦＩＦＯ３２２＿１からＦＩＦＯ３２２＿４にかけて順にデータを供給する。
ＦＩＦＯ群３２２の各ＦＩＦＯは、それぞれ１ＫＢ（１０２４バイト）＋１４バイトの蓄積容量を有する。この蓄積容量のうち１ＫＢは、ＤＴＣＰ／ＩＰヘッダが付加される前のデータ単位に応じて設定される。また、１４バイトは、コンテンツ送信装置２側で付加されたＤＴＣＰ／ＩＰヘッダのデータ量である。すなわち、コンテンツ送信装置２から送出されるＤＴＣＰ／ＩＰパケット単位のデータが、ＦＩＦＯ群３２２の各ＦＩＦＯに蓄積される。
なお、１４バイトのヘッダサイズは、コンテンツ送信装置２側で付加するヘッダフォーマットに応じて適宜調整されることは言うまでもない。
【００５０】
ＦＩＦＯ群３２２の各ＦＩＦＯでは、入力ＦＩＦＯ３２１から供給されるデータによりその蓄積容量が一杯になると、その蓄積状態を示す制御信号ＳＴＳ３ｘ（ｘ：１〜４）をアクティブにすることで入力ＦＩＦＯ３２１に通知する。
すなわち、図６に示すように、ＦＩＦＯ３２２＿１は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ３１をアクティブにすることで入力ＦＩＦＯ３２１に通知する。ＦＩＦＯ３２２＿２は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ３２をアクティブにすることで入力ＦＩＦＯ３２１に通知する。ＦＩＦＯ３２２＿３は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ３３をアクティブにすることで入力ＦＩＦＯ３２１に通知する。ＦＩＦＯ３２２＿４は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ３４をアクティブにすることで入力ＦＩＦＯ３２１に通知する。
【００５１】
入力ＦＩＦＯ３２１は、制御信号ＳＴＳ３ｘがアクティブになると、対応するセレクト信号ＳＥＬ３ｘをアクティブにして、ＦＩＦＯ群３２２のいずれかのＦＩＦＯを選択し、データを出力する。
したがって、入力ＦＩＦＯ３２１に蓄積されたデータは、先ずＦＩＦＯ３２２＿１に蓄積されていき、ＦＩＦＯ３２２＿１がその蓄積容量一杯になると、次に、ＦＩＦＯ３２２＿２に蓄積されていき、ＦＩＦＯ３２２＿２がその蓄積容量一杯になると、次にＦＩＦＯ３２２＿３というように順にＤＴＣＰ／ＩＰパケット単位（１ＫＢ＋１４バイト）のデータが各ＦＩＦＯに順に蓄積される。
【００５２】
ヘッダ除去回路群３２３の各ヘッダ除去回路は、対応する前段のＦＩＦＯに蓄積されたデータから１４バイトのＤＴＣＰ／ＩＰヘッダを除去し、１ＫＢの暗号化データを対応するＡＥＳ−ＣＢＣ復号器に供給する。
【００５３】
ＡＥＳ−ＣＢＣ復号化部群３２４の各復号化部は、対応するヘッダ除去回路３２３＿ｘから１ＫＢ分の暗号化データが供給されると、順にＡＥＳ−ＣＢＣ復号化処理を行う。
図７に、ＡＥＳ−ＣＢＣ復号化部群３２４の各復号化部３２４＿ｘ（ｘ：１〜４）の構成を示す。
図７に示すように、ＡＥＳ−ＣＢＣ復号化部３２４＿ｘは、ＡＥＳ復号化回路３２４１、復号化データをフィードフォワードさせるためのレジスタ３２４２、ゲート回路３２４３を有する。
ＡＥＳ−ＣＢＣ復号化部３２４＿ｘでは、１２８ビットの暗号化データＳ３２３をレジスタ３２４２に保持しておき、その暗号化データを出力側にフィードフォワードさせ、ゲート回路３２４３において次に復号化されたデータとＥＸＯＲ演算を行うことで復号化データＳ３２４を生成する。
【００５４】
ＡＥＳ−ＣＢＣ復号化部３２４＿１〜３２４＿４でそれぞれ得られた復号化データは、対応するＦＩＦＯ群３２５の各ＦＩＦＯに蓄積される。
ＦＩＦＯ群３２５の各ＦＩＦＯは、それぞれ１ＫＢ（１０２４バイト）の蓄積容量を有する。この蓄積容量は、ＤＴＣＰ／ＩＰヘッダが付加されるデータ単位に応じて適宜設定される。
【００５５】
ＦＩＦＯ群３２５の各ＦＩＦＯは、対応するＡＥＳ−ＣＢＣ復号器から供給されるデータによりその蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ４ｘ（ｘ：１〜４）をアクティブにすることで出力ＦＩＦＯ３２６に通知する。
すなわち、図６に示すように、ＦＩＦＯ３２５＿１は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ４１をアクティブにすることで出力ＦＩＦＯ３２６に通知する。ＦＩＦＯ３２５＿２は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ４２をアクティブにすることで出力ＦＩＦＯ３２６に通知する。ＦＩＦＯ３２５＿３は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ４３をアクティブにすることで出力ＦＩＦＯ３２６に通知する。ＦＩＦＯ３２５＿４は、その蓄積容量一杯になると、その蓄積状態を示す制御信号ＳＴＳ４４をアクティブにすることで出力ＦＩＦＯ３２６に通知する。
【００５６】
出力ＦＩＦＯ３２６は、制御信号ＳＴＳ４ｘがアクティブになると、対応するセレクト信号ＳＥＬ４ｘをアクティブにして、ＦＩＦＯ群３２５のいずれかのＦＩＦＯを選択し、データを取り込む。
【００５７】
ここで、復号器３２の入力側では、ＦＩＦＯ３２２＿１、ＦＩＦＯ３２２＿２、ＦＩＦＯ３２２＿３、ＦＩＦＯ３２２＿４の順に、ＤＴＣＰ／ＩＰパケット単位（１ＫＢ＋１４バイト）のデータが各ＦＩＦＯに順に蓄積され、この順にヘッダ除去および復号化処理がなされていくため、出力側では、制御信号ＳＴＳ４１、制御信号ＳＴＳ４２、制御信号ＳＴＳ４３、制御信号ＳＴＳ４４の順にアクティブとなる。したがって、出力ＦＩＦＯ３２６には、ＦＩＦＯ３２５＿１、ＦＩＦＯ３２５＿２、ＦＩＦＯ３２５＿３、ＦＩＦＯ３２５＿４に蓄積された順に、復号化されたデータが蓄積されていく。それゆえ、復号器３２の入力ストリームＳ３１のデータの順序は、出力ＦＩＦＯ３２６において維持されている。
【００５８】
以上説明したように、暗号器２４同様、復号器３２では、ＡＥＳ−ＣＢＣ復号化が並列的に行われるため、復号化処理ブロックの数に応じて高速に復号化処理される。
【００５９】
出力ＦＩＦＯ３２６は、蓄積された復号化データ（ＭＰＥＧ−ＴＳ）をストリームＳ３２として出力する。
ＭＰＥＧデコーダ３３は、ＭＰＥＧにより圧縮符号化されたストリームＳ３２をデコードし、ＲＧＢ信号（またはＹ，Ｃｂ，Ｃｒの色差信号）からなる映像信号Ｓ３３に変換する。
スキャンコンバータ３４は、ＬＣＤ３６の仕様に応じて、水平同期周波数を変換する処理を行った後、映像信号Ｓ３４をＬＣＤドライバ３５に出力する。
【００６０】
以上詳述したように、本実施形態で説明したコンテンツ伝送システム１によれば、コンテンツ送信装置２において、ストリーム（コンテンツ）を所定のパケット単位で並列的に暗号化して送信し、コンテンツ受信装置３において、受信したパケット単位の暗号化データを並列的に復号化して再生する。
したがって、特にＡＥＳ−ＣＢＣ暗号化・復号化のような、処理に時間がかかる暗号化・復号化処理を高速化することができ、ホームネットワーク内において映像の高画質化に対応することが可能となる。
【００６１】
なお、ＡＥＳ−ＣＢＣ暗号化処理ではなく、単にＡＥＳ暗号化処理を行う場合には、前に処理した暗号化データをフィードバックする必要がないため、複数のＡＥＳ暗号化回路（たとえば図３のＡＥＳ暗号化回路２４３１）を並列的に構成することで高速化を図ることが想定されるが、各ＡＥＳ暗号化回路へのデータ入力順序と、各ＡＥＳ暗号化回路のデータ出力順序とを同一に維持し、ストリームのデータ構成を保つことが難しい。
一方、本実施形態に係るコンテンツ送信装置２では、ＡＥＳ−ＣＢＣ暗号化処理を行う前に、ＦＩＦＯにパケット単位のデータを蓄積しておくように構成したので、ＡＥＳ−ＣＢＣ暗号化処理のようなフィードバック処理をまとまったデータ量に対して連続的に行うことが容易であるとともに、簡便な構成によって、ＡＥＳ−ＣＢＣ暗号化処理前後での入出力順序をパケット単位で維持することができる。本実施形態に係るコンテンツ受信装置３についても同様のことが言える。
【００６２】
以上、本発明の実施の形態を詳述してきたが、具体的な構成及びシステムは本実施の形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更や、他のシステムへの適応なども含まれる。
たとえば、図８および図９に、上述したコンテンツ伝送システム１の別の構成のシステムを示す。図８は、コンテンツ送信装置２のＭＰＥＧデコーダ２６にて、コンテンツが非圧縮信号に変換された後に暗号化が行われるように構成したコンテンツ伝送システム１ａを示す。それゆえ、コンテンツ伝送システム１ａでは、コンテンツ受信装置３側にＭＰＥＧデコーダは存在しない。
図９は、コンテンツ送信装置２およびコンテンツ受信装置３に、ＭＰＥＧデコードを行うか否かを選択するための切り替え部２７，３７を付加したコンテンツ伝送システム１ｂを示す。当然ながら、切り替え部２７，３７は、互いに連動して接点が切り替えられる。
このように、暗号化・復号化処理は、ＭＰＥＧ−ＴＳであることに限定されない。
【図面の簡単な説明】
【００６３】
【図１】実施形態に係るコンテンツ送信装置および実施形態に係るコンテンツ受信装置の構成を示すブロック図である。
【図２】暗号化部のブロック構成を示す図である。
【図３】ＡＥＳ−ＣＢＣ暗号化部群の各暗号化部の構成を示す図である。
【図４】暗号化部の各部の動作を示すタイミングチャートである。
【図５】ＩＰ送信器にて生成するパケット構成を示す図である。
【図６】復号化部のブロック構成を示す図である。
【図７】ＡＥＳ−ＣＢＣ復号化部群の各復号化部の構成を示す図である。
【図８】コンテンツ伝送システムの別の構成を示す図である。
【図９】コンテンツ伝送システムの別の構成を示す図である。
【符号の説明】
【００６４】
１…コンテンツ伝送システム
２…コンテンツ送信装置
２１…受信アンテナ、２２…デジタルチューナ、２３…チャンネルデコーダ、
２４…暗号器、２５…ＩＰ送信器
３…コンテンツ受信装置
３１…ＩＰ受信器、３２…復号器、３３…ＭＰＥＧデコーダ、
３４…スキャンコンバータ、３５…ＬＣＤドライバ、３６…ＬＣＤ
【図１】
2007033649.tif 000003
【図２】
2007033649.tif 000004
【図３】
2007033649.tif 000005
【図４】
2007033649.tif 000006
【図５】
2007033649.tif 000007
【図６】
2007033649.tif 000008
【図７】
2007033649.tif 000009
【図８】
2007033649.tif 000010
【図９】
2007033649.tif 000011