(57)【要約】【課題】従来は、映像コンテンツに対し、部分的な視聴を可能とするスクランブルをかける時、配信中継者がスクランブルをかけたり、符号化時と異なる強度のスクランブルをかけることができなかった。【解決手段】上記目的を達成するために、符号化された映像コンテンツの画像データ部分の一部分を暗号化することにより実現する。【効果】上記手段により、コンテンツをスクランブルする機能が提供され、暗号鍵を有する端末には正しい映像再生を行い、暗号鍵を持たない端末においては、映像コンテンツの一部分あるいは画質の劣化したコンテンツが視聴（部分視聴）される。この時、スクランブルをかけるのは映像符号化の後に実施することができ、エンコードする者とスクランブルする者が別の者であることも可能となる。スクランブルのパラメータを選択してスクランブルの強度を選択することができる。【選択図】　図１
2004138933.tif 000002
【特許請求の範囲】
【請求項１】
デジタル符号化された入力映像ストリームの内容を解析しヘッダ部分を検出する手段と、
乱数を発生させる手段と、
上記乱数を用いて上記検出されたヘッダ部分以外の入力映像ストリームの換字位置を決定する手段と、
上記決定された位置の換字処理を行うスクランブル手段と、
上記スクランブル処理された映像ストリームを出力する手段と、を有することを特徴とするデジタル映像スクランブル装置。
【請求項２】
上記入力映像ストリームに対応するスクランブルレベルを指定する情報を入力する手段と、
秘密鍵を生成する手段と、
上記入力された情報を上記秘密鍵を用いて暗号化して出力する手段とを更に有し、
上記換字位置決定手段は、上記乱数に加えて上記情報を用いることを特徴とする請求項１記載の映像スクランブル装置。
【請求項３】
乱数を発生させて、上記換字表を作成する手段をさらに有し、
上記スクランブル手段は、上記換字表を用いて上記換字処理を行うことを特徴とする請求項１又は２に記載のスクランブル装置。
【請求項４】
上記スクランブル手段を複数有し、
上記複数のスクランブル手段それぞれに対応する換字位置を決定する手段と、
上記換字位置を上記複数のスクランブル手段に割り当てる手段とを有することを特徴とする請求項１乃至３の何れかに記載のスクランブル装置。
【請求項５】
請求項１記載のスクランブル装置にネットワークを介して接続されるデスクランブル装置であって、上記換字処理された入力映像ストリームを取得する手段と、上記入力映像ストリームの内容を解析しヘッダ部分を検出する手段と、
秘密鍵をもとに乱数を発生させる手段と、
上記乱数を用いて上記ヘッダ部分以外の換字復元位置を決定する手段と、
上記決定された位置の換字復元処理を行う手段と、を有することを特徴とするデジタル映像デスクランブル装置。
【請求項６】
上記ネットワークを介して識別情報を出力する手段と、
上記識別情報に基づいた認証の結果送出された上記秘密鍵を、上記ネットワークを介して受信する手段と、を有することを特徴とする請求項５記載のデジタル映像デスクランブル装置。
【請求項７】
乱数を発生させて換字テーブルを作成し、記録手段に記録するステップと、
上記換字テーブルをネットワークを介して出力するステップと、
入力手段を介して映像信号を取得するステップと、
上記映像信号の信号を読み込み、該信号の符号化の構文を解析するステップと、該信号についての換字を行うか決定するステップと、
上記換字を行うと判定された場合には、該信号を上記換字テーブルに従って変換するステップとを有し、
上記信号に続く信号を読み込み上記ステップを上記映像信号がなくなるまで繰り返し、上記換字を行うかの決定基準は上記解析結果に応じて変更することを特徴とする符号化プログラム。
【請求項８】
上記換字テーブルは暗号化して出力され、
該暗号化解除に必要な鍵情報を上記符号化された信号の出力先のコンピュータと交換するステップをさらに有することを特徴とする請求項７記載の符号化プログラム。
【請求項９】
符号化された信号と暗号解読の情報と該符号化に用いた換字テーブルの情報をネットワークを介して取得するステップと、
該換字テーブルの情報から対応する逆換字テーブルを作成し、記憶手段に記憶するステップと、
該信号を読み込み該信号の符号化の構文を解析するステップと、
上記解析結果を用いて上記信号を逆換字するか判断するステップと、
上記逆換字すると判断された信号を上記逆換字テーブルを用いて逆換字するステップと、
上記読み込んだ信号の次の信号を読み込んで上記ステップを繰り返すことを特徴とする復号化プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は映像配信システムに係わり、ディジタル符号化した映像の一部が視聴可能なスクランブル方法に関する。
【０００２】
【従来の技術】
映像をディジタル的に符号化（圧縮）する方法は、非特許文献１にて定められている。これらの符号をサーバから端末に配信する場合、限られた端末にのみ限定的に映像を配信する第１の方法として、データの暗号化がある（例えば、非特許文献２参照）。しかし、データの暗号化を用いると、暗号鍵を持っている端末は視聴可能だが、暗号鍵を持っていない端末では、データの内容は完全に攪拌されてしまうため、映像の一部を試しに視聴することは全くできない。
第２の方法としては、スクランブル機能のある映像符号化（スクランブル機能付き映像符号化）が知られている（例えば、特許文献１参照）。スクランブル機能付き映像符号化では、符号化時に符号化するデータの内容を僅かに変動させるため、鍵を持っていない端末においても部分的に視聴することが可能となる（一部意図的に劣化した画像の視聴も含む。以下部分視聴と表現する）。部分視聴ができると、暗号鍵を持っていない端末でも、映像コンテンツの様子・概要等を視聴することができるため、暗号鍵の購入等を促進する効果が高く、優良な映像配信、特に映像の同報配信においては有効な手段である。
なお、以下、スクランブルと暗号化は同義とする。
【特許文献１】
特開平１０−１４５７７２号公報
【非特許文献１】
アイ　エス　オー／アイ　イー　シー　ＩＳＯ／ＩＥＣ　１４４９６−２（ＭＰＥＧ−４）、アイ　エス　オー／アイ　イー　シー　ＩＳＯ／ＩＥＣ　１３８１８−２（ＭＰＥＧ−２）
【非特許文献２】
ＰＫＣＳ　＃１：　ＲＳＡ　Ｃｒｙｐｔｏｇｒａｐｈｙ　Ｓｐｅｃｉｆｉｃａｔｉｏｎｓ　Ｖｅｒｓｉｏｎ　２．１、Ａｎ　ＲＳＡ　Ｌａｂｏｒａｔｏｒｉｅｓ　Ｔｅｃｈｎｉｃａｌ　Ｎｏｔｅ
【０００３】
【発明が解決しようとする課題】
上記の従来技術において、暗号化においては、映像コンテンツの部分視聴ができない。また、スクランブル機能付き映像符号化では、映像コンテンツを符号化する時に、スクランブルの有無あるいは強度等を設定する必要があるため、配信中継者がスクランブルをかけたり、符号化時と異なる強度のスクランブルをかけることができず、利便性を著しく欠いている。
本発明は、ディジタル符号化されたコンテンツに対し、利便性を有する部分視聴可能なスクランブル方法を提供することを目的とする。
【０００４】
【課題を解決するための手段】
上記目的を達成するために、符号化された映像コンテンツの画像データ部分の一部分を暗号化することにより実現する。本願の開示する発明の代表的なものを示せば以下の通りである。デジタル符号化された入力映像ストリームの内容を解析しヘッダ部分を検出し、発生した乱数を用いて上記検出されたヘッダ部分以外の入力映像ストリームの換字位置を決定し、決定された位置の換字処理を行うスクランブル手段を有するデジタル映像スクランブル装置。
【０００５】
【発明の実施の形態】
以下本発明による第１の実施例を図１に示す。図１は、映像配信側１０１および、映像受信側１０２から構成され、配信側の中のスクランブラ１００、デスクランブラ１０３の部分が本発明において特徴ある個所である。
【０００６】
以下、動作の概要を説明する。映像配信開始に先立ち、暗号鍵生成部１３０にて暗号鍵１３１が、パラメータ生成部１２０にてスクランブルパラメータ１２１が生成される。暗号鍵１３１は、配信するコンテンツを正しく符号化し視聴するための鍵である。また、スクランブルパラメータはスクランブルを実行する上で、送信・受信双方にて共有するパラメータであり、後述する。
映像配信の指示があると、まず、送信暗号鍵交換部１３２と受信鍵交換部１３４の間にて、暗号下記の送信が行われる。一般に、暗号鍵交換はＰＫＣＳ　＃３：　Ｄｉｆｆｉｅ−Ｈｅｌｌｍａｎ　Ｋｅｙ−Ａｇｒｅｅｍｅｎｔ　Ｓｔａｎｄａｒｄ、Ａｎ　ＲＳＡ　Ｌａｂｏｒａｔｏｒｉｅｓ　Ｔｅｃｈｎｉｃａｌ　Ｎｏｔｅに開示されている方法等の秘匿性の高い方法により行われるが、鍵交換の方法選択は本発明とは独立の問題であり、本発明ではいかなる鍵交換法あるいは、秘匿性を持たない鍵交換（暗号化しない鍵配送）とも組み合わせが可能である。
【０００７】
鍵交換が完了し、受信側にて受信暗号鍵１３５（暗号鍵１３１に対応）を取得すると、次にスクランブルパラメータの伝送が行われる。スクランブルパラメータ１２１は、暗号部１２２において、暗号鍵１３１を用いて暗号化され、秘匿スクランブルデータ１２３として配信される。受信側では、受信した秘匿スクランブルデータ１２３を先の受信暗号鍵１３５を用いて、暗号解読部１２４において解読され、スクランブルパラメータ１２１に対応する受信スクランブルパラメータ１２５が得られる。
【０００８】
スクランブルパラメータを送信・受信にて共有した後、映像の配信が行われる。すなわち、映像ストリーム１１１はスクランブル部１１２にて、スクランブルパラメータ１２１を用いて、そのデータの一部が変換されスクランブルストリーム１１３として出力される。一方受信側では、スクランブルストリーム１１３を受信し、デスクランブル部１１４において、受信スクランブルパラメータ１２５を用いてスクランブルの解除を行い、解除したストリーム１１５（映像ストリーム１１１と同一）を再生部１１６に送り、再生画像１１７を得る。
【０００９】
図２から図５を用いて、スクランブル部１１２の詳細な構成を示す。
入力される映像ストリーム１１１は、例えば、ＭＰＥＧ−２やＭＰＥＧ−４においては、ヘッダ部とデータ部に分けられる。ヘッダ部はヘッダに引き続くデータを復号する上で必要なパラメータ（例えば、画像サイズや、画像の時間的位置等）を格納しており、ヘッダを識別するために、ヘッダ部の先頭はヘッダ以外では出現しないスタートコード（例えばビット”０”が２３個連続し、次にビット”１”が出現する、これを８ビット毎に上位ビットから並べ１６進数表示すると０ｘ００、０ｘ００、０ｘ０１となる。”０ｘ”は以降が１６進数であることを示す）が使用される。
【００１０】
データ部では、映像データ自体のデータが格納されており、一般に可変長符号により符号化されている。可変長符号は、例えばデータＡの符号は”１”、Ｂは”０１”、Ｃは”００１００”、Ｄは”００１０１”、Ｅは”００１１０”、Ｆは”００１１１”のように、シンボルと２進のビット列が１対１に対応する。上記の例では、入力データが”１００１０１０１０１００１１０１１０１”の時は先頭からデータを調べて行き、”１［Ａ］００１０１［Ｄ］０１［Ｂ］０１［Ｂ］００１１０［Ｅ］１［Ａ］１［Ａ］０１［Ｂ］”のように区切り、出力シンボルＡＤＢＢＥＡＡＢを得る。得られたシンボルの意味およびこれらから映像の再生方法は、全てＭＰＥＧ−２あるいはＭＰＥＧ−４の規格にて規定されている。データ部では先のヘッダ部のスタートコードが絶対に出現しないように設計されている。例えば、上記シンボルＡ〜Ｆの例では、どのようなシンボルの組み合わせを行っても”０”は５つ以上連続しない。また、データ部では、可変長符号の特性上、１ビットでもデータが欠落・反転するとそれ以降のデータが正しく再生できない。上記入力データ例において、３ビット目が反転して”１”になると、”１［Ａ］０１［Ｂ］１［Ａ］０１［Ｂ］０１［Ｂ］０１［Ｂ］００１１０［Ｅ］１［Ａ］１［Ａ］０１［Ｂ］”となり、出力シンボルＡＢＡＢＢＢＥＡＡＢが得られ、正しい場合のシンボルＡＤＢＢＥＡＡＢとデータが異なる上、シンボル数自体が８個から１０個に変わってしまう。さらに、ＭＰＥＧ−２あるいはＭＰＥＧ−４では、１つのシンボルの内容により、次のデータのタイプ、符号テーブルが異なることが多く、データ欠落・反転後の再生を困難にしている。
【００１１】
スクランブル部１１２では、入力された映像ストリームのヘッダ部分を保護し、非ヘッダ部分、すなわちデータ部分（の一部）のみに対して換字処理２０１によりスクランブルをかけることにより、鍵を持たない端末における部分視聴の画質の適切な制御を行う。入力データを８ビット毎にまとめて１６進数表示するとすると、ヘッダ部のスタートコードは０ｘ００、０ｘ００、０ｘ０１となるため、図２のデータ解析部２０２にて、８ビットのデータが入力される毎に、スタートコードを認識し、最後の０ｘ０１が入力された時点でスタートコード信号２０３を「検出」を示す状態にする。また、同時に、スタートコード直後のデータにより、そのヘッダの種類をヘッダタイプ２０６として出力する。さらに、ヘッダタイプが、フレーム（画面）のヘッダ（ｐｉｃｔｕｒｅヘッダあるいはＶＯＰヘッダ）の場合は、該当フレームの符号化タイプ（単独で復号可能なイントラ−ＶＯＰあるいはＩ（イントラ）ピクチャ、前フレームからの差分信号により構成されるＰ−ＶＯＰあるいはＰピクチャ、他のフレームの予測には使用しないＢ−ＶＯＰあるはＢピクチャ）を符号化タイプ２０７としてその種別を出力する。
【００１２】
制御部２０４では、入力信号１１１の８ビット毎のタイミングにおいて、スタートコード信号２０３、ヘッダタイプ２０６、符号化タイプ２０７を解析し、該当する入力信号の８ビットデータに対してスクランブルをかけるか否かを決定する。スクランブルをかける場合には、入力された８ビットを後述する換字表に従い、所定の８ビットデータに変換し出力する。このデータの変換により、鍵を持たない受信側では、データの解読が正しく行われず、再生画像が劣化する。
【００１３】
図３に制御部２０４におけるスクランブル可否を決定するための状態遷移図を示す。スタートコードが検出されるといずれの状態においても、状態３０４に遷移する。これ以降しばらくの間はスクランブルは行わず、ヘッダ情報をそのまま出力する。具体的には、状態３０４において、次データが入力されると、状態３０５に遷移し、所定バイト数（Ｍバイト）の間、換字指示信号２０５をＯＦＦにしてスクランブルを抑制する。ここでＭの値は、ヘッダタイプ２０６あるいは、フレームタイプ２０７により決定される。例えば、Ｍの値は各ヘッダの標準的な長さよりも大きくし、かつ、フレームタイプがＩ−ＶＯＰあるいはＩピクチャの時は一般的に１フレームのデータ量が多いためＭは大きめに、Ｐ−ＶＯＰあるいはＰピクチャの時はＭの値はやや小さく、Ｂ−ＶＯＰあるいはＢ−ｐｉｃｔｕｒｅの場合にはさらに短くする。
【００１４】
Ｍバイトのデータの処理が終了すると、状態３０５から状態３０１に遷移し、その時点でのスタートコードの状態により状態３０２あるいは状態３０４に遷移する。状態３０１においては、データ部を処理する状態３０２、３０３におけるパラメータＮを定める。Ｎは状態３０２において、換字を実行するまでのバイト数を表す。Ｎバイトのデータを入力、すなわち換字を行わずに伝送することを終了すると、状態３０３に遷移し、換字指示信号２０５がＯＮになり、次の１バイトが換字される。Ｎの値が小さいと、先に説明した画像の劣化が頻繁に起こり、Ｎの値が大きいと、画像の劣化は少なくなる。例えば、Ｎの値は次の式により生成する。
Ｎ＝Ａ＋Ｂ＊ＲＮＤ（Ｃ）
ここで、Ａ、Ｂ、Ｃはスクランブルパラメータとして、予め、フレームタイプ毎に設定され、ＲＮＤ（Ｃ）は０以上Ｃ未満の乱数であり、Ｎの値を計算する毎に、予め定められた計算方法により生成される。この乱数の初期値はスクランブルパラメータとして受信側に伝送されるため、送信・受信双方にて乱数値は一致しており、受信側では、送信側において換字を行ったデータ位置を知ることができる。乱数の生成方法は、電子情報通信学会技術研究報告，　ＩＳＥＣ２００１−８，　２００１等任意の方法を使用することができる。尚、本願で用いる乱数の語には疑似乱数も含むものとする。
【００１５】
Ａ，Ｂのパラメータの大きさは部分視聴の画質に影響するため外部より直接的あるいは間接的に指定するが、このとき、ストリームの内容を反映させると、より部分視聴時の画質を所望の画質（劣化）に近づけることができる。具体的には、Ｉ／Ｐ／ＢのピクチャのタイプごとにＡ，Ｂのセットを切り替える。特に、軽い（劣化の少ない）部分視聴を実現するためには、ＰピクチャのＡ，Ｂの値を大きくすることにより、予測画像が劣化することによる、劣化の蓄積を抑えることができ安定した画質になる。
【００１６】
さらに、Ａ，Ｂのパラメータを決定する時に、入力ストリームの全部あるいは先頭部分等の一部を事前に検査したり、スクランブルをかけながらストリームの特性を測定することにより、パラメータの修正を行い、より所望の部分視聴画質に近づけることが可能となる。具体的にはイントラピクチャ（ＶＯＰ）の挿入頻度、イントラマクロブロックの挿入頻度、ビデオパケットのデータ長、スライスあるいはＧＯＢのデータ長等の１つあるいはこれらの組み合わせを測定する。これらの値は、データエラーに対する耐性に影響する。例えば、イントラピクチャが頻繁に挿入されているときは、エラーから回復しやすくなる。これらの測定値をビットレート、フレームレート、画像サイズから導き出される、あるいは予め定められた所定の範囲と比較し、範囲外の時はエラー耐性の強弱に応じてスクランブルパラメータを変更する。
【００１７】
また、たとえば、３段階のレベル（１〜３）の部分視聴の画質を想定し、レベルが３のときはＩピクチャは部分視聴、Ｐ，ＢピクチャはＡ，Ｂを極端に小さくして部分視聴をほとんど不可にし（完全スクランブル）、レベルが２の時はＩピクチャはスクランブルなし、Ｐ，Ｂピクチャは完全スクランブル、レベルが１の時はＩ，Ｐピクチャはスクランブルなし、Ｂピクチャは完全スクランブルとすることにより、他段階レベルの部分視聴映像を実現できる。
図４は、以上の処理を、ソフトウェアにて実装した場合のフローチャートである。送信側の初期化４０５、受信側の初期化４５５までは、前述の処理と同じである。ここで、換字テーブル（表）生成４００および、逆換字テーブル生成４５０については、図５、６を用いて後述する。
【００１８】
初期化が終了すると、送信側においては入力ストリームを１バイト入力し、構文解析４１０、図３の状態遷移に従った方法にてスタートコードの解析を行う。換字判定４１５では図３の状態に応じた換字指示信号２０５に該当する値により次のデータに対して換字処理を施すか否かを決定し、換字処理を実行する場合には４２０において換字を行い、換字を行ったあるいは行っていないデータを出力する。受信側においては、入力されたデータ、すなわち送信側が処理して出力したデータを入力し、上記の送信側とまったく同じ動作を行う。ただし、換字逆変換処理４７０においては、送信側の換字を元にもどす、逆変換処理を行う。
【００１９】
図５は換字表の例である。列５００は８ビットの入力データ（２５６種類）であり、列５０１は列５００の各データに対する出力値である。ここで、入力データ”００００００００”（列５０２）と入力データ”０００００００１”（列５０３）は、入力と出力が常に同一である。この２つのデータの入出力を同一にすることにより、スタートコードを完全に保存することができる。残りの行（行５０４）は入力値０ｘ０２から０ｘＦＦの範囲の値がランダムに並べられており、それぞれの出力は重複しない。すなわち、出力値がａとなる入力値ｂは一意に定まる。
【００２０】
図５の換字表はスクランブルパラメータとして送信・受信双方にて共有される。受信側では、図５の出力列５０１を入力、入力列５０２を出力とした表を用いることにより、送信側において換字を行ったデータを正しいデータに復元できる。
図５の換字表は、固定の表を用いてもよいし、複数コンテンツ毎、コンテンツ毎あるいは、コンテンツの部分毎（例えば、所定フレーム数毎等）に、新規生成されてもかまわない。スクランブルされたデータの不正解読（正規に鍵を得ない者がスクランブルデータを解読すること）を防止するために、なるべく頻繁に換字表を交換し、かつ、換字表はその都度新規生成することが望ましい。
【００２１】
図６に換字表生成アルゴリズムの例を示す。換字表はｔｂｌとの名の２５６の配列に格納され、ｉ番目（ｉ＝０〜２５５）の出力データはｔｂｌ［ｉ］として表現される。例えば、図５の表を表す場合　ｔｂｌ［０］＝０，　ｔｂｌ［１］＝１，　ｔｂｌ［２］＝０ｘＢ４，　ｔｂｌ［３］＝０ｘ２Ａ，．．．である。
処理６０１、６０２において初期化を行う。すなわち、データ０、１に固定値をセットした後、残りのデータ（２〜２５５）に−１をセットする。これ以降、配列の値が０以上（２５５以下）の場合は、既にその配列にはデータがセットされていることを示し、−１である場合はデータがセットされていないことを示す。
【００２２】
初期化終了後処理６０３以降のループを２５４回処理を行う。ループ処理は２を初期値とする変数ｉによって行う。ループ内では、まず、処理６０３にて０〜２５５までの範囲の乱数を発生させ（ｊに代入）、処理６０４にてｔｂｌ［ｊ］にデータがセットされているか否かを確認する。セットされていない場合は、処理６０５に移り、ｔｂｌ［ｊ］にｉを代入する（セットする）。既にｔｂｌ［ｊ］がセットされている場合は処理６０６に移り、ｊを歩進（２５５を超えた場合は２にリセット）させて行き、セットされていないｔｂｌ［ｊ］を検索する。その後、検索した時のｊの値を用いて、処理６０５にてｉをセットし、１回のループ処理を完了する。この処理により、ｔｂｌ［］の配列には０〜２５５の値が重複せず入力される。
【００２３】
また、別の生成例では、ｔｂｌ［ｉ］＝ｉと初期化した後、２から２５５の間の乱数を２つ（ｐ，ｑ）発生させｔｂｌ［ｐ］とｔｂｌ［ｑ］の値をそれぞれ交換する。この交換処理を十分な回数行うと、出力がランダムになる配列が生成できる。
上記いずれのアルゴリズムの場合でも、１つの系列の乱数があれば、
送信、受信双方にて同一の換字表を生成することができる。従って、スクランブルパラメータとしては２５６要素の換字表を設定・送信しても構わないし、乱数生成法を送受で規定した上で、乱数系列を指定するデータ（乱数初期値）を設定・送信しても構わない。
図７は図１のスクランブラ１００の変形例である。スクランブラ７００ではスクランブラ１００のスクランブル処理を３回直列に施しており、それぞれのスクランブル部７０１，７０２，７０３において必ず異なる位置のデータを換字処理する。異なる位置を指定する場合には、例えば、直近のスタートコード位置から換字位置までのバイト数を４で割った時、スクランブル部７０１では余りが０に、７０２では余りは１に、７０３では余りは２になるように換字位置を指定するよことにより実現できる。このようにして生成したスクランブルストリーム７１０は、正しく再生するためには、鍵７１５，７２５，７３５にそれぞれ対応する３つの鍵が必要となる。しかし、取得した鍵の個数が０個、１個、２個の場合にも部分視聴が可能で、しかも取得した鍵の数が多いほど劣化の少ない画像を視聴することができる。
【００２４】
また、鍵毎にスクランブルの強度を変えておくと、例えば３個の鍵の有無にて、正常な視聴も含め８通りのスクランブルを実現できる。複数の鍵は、例えばあるグループには第１の鍵を、別のグループには、スクランブル強度の異なる第２の鍵を渡しておけば、グループ毎に異なるスクランブル強度を提供することができる。
上記の説明ではいずれも、ヘッダ部分としては、映像ストリームすなわちエレメンタリストリームのヘッダ部分を前提にしていたが、映像ストリーム以外のデータを多重したストリームにおいて、以下の変形例も本願に含まれることは明白である。
映像ストリームと音声ストリームをシステムレイヤを用いて多重化したストリームの場合、映像ストリームのみを抽出し、スクランブルを適用し、スクランブル後のストリームを元の多重化データに書き戻す方法である。このとき、ストリームの総データ数は変わらないため、書き戻し処理は単純にもとのデータを上書きするだけでよい。すなわち、元の多重化されたストリームの置換位置のデータを変更すればよい。もし、システムレイヤにおいて、データ誤り防止のためストリームのパリティ・誤り訂正符号等を併記している場合は、パリティ・誤り訂正符号等を再計算修正して書き換えれば、データとしての整合性を保つことができる。なお、送信、受信双方において事前に取り決めることにより、上記パリティ・誤り訂正符号等を修正しない、すなわち、受信側にてパリティ・誤り訂正符号等を参照しないことも可能である。
【００２５】
映像ストリームと音声ストリームをシステムレイヤを用いて多重化したストリームの場合、保護する（上記の説明において「ヘッダ」に該当する）部分を、システムレイヤデータと映像ストリームのヘッダと音声ストリーム　として扱うことにより、映像ストリームに対する処理を多重化されたシステムストリームに直接適用することが可能である。この場合、データ解析部２０２においては、システムレイヤのシンタックスを解析し、処理しているデータがシステムレイヤ、映像ストリーム、音声ストリームのいずれに属するかを判定する。処理しているデータがシステムレイヤあるいは音声ストリームの場合は置換処理を禁止（データを保護）し、映像ストリームの場合は映像ストリームのヘッダ部を識別し、先に説明した方法により保護／置換を判定する。
【００２６】
このような多重されたデータの場合は、本発明のスクランブラを複数使用することができる。すなわち、多重されているエレメンタリストリーム（映像あるいは音声・オーディオがそれぞれ０以上、合計２ストリーム以上が多重）のうち、２つ以上に独立した置換処理を適用する。具体的には、本発明を適用する処理しているデータの種類により独立したスクランブルパラメータＡ、Ｂ、Ｃを切り替える方法である。この場合、同一のパラメータを用いて独立の処理を行うことも可能であり、スクランブルパラメータを送付するデータ量を削減することができる。
【００２７】
なお、音声あるいはオーディオに対するスクランブルは、本発明と同様な置換処理にて実施することが可能である。この場合、ヘッダを保護する必要はない。
図８は図１のスクランブラ１００を用いた映像配信システムの応用例である。ここで映像ストリームは同報配信を想定している。すなわち、同一のストリームを希望する受信機全員に配信し、受信者のうち、鍵を入手した端末のみが正しく映像を視聴することができる。また、スクランブルパラメータ１２３は定期的に送出され、映像ストリーム１１３に多重して伝送される。ここで、スクランブルパラメータ１２３が多重された直後の映像ストリーム１１３はランダムアクセスポイント（ストリームの途中から視聴を開始できるポイント）である。
【００２８】
図８にて、端末８１１のユーザは送受信機８１０経由でＷＥＢサーバ８３０にアクセスし、視聴可能な映像の情報を得る。この時の情報としては、映像のスナップショット、テキストによる説明、視聴方法、視聴料金等が含まれる。ユーザが映像ストリーム１１１の視聴希望した場合は、同報送信中の映像ストリーム１１３の視聴を開始し、これと並行しＷＥＢサーバ８３０経由で、鍵取得希望を送出する。この時、料金を支払うためのＩＤ番号、パスワードや、クレジットカード番号等を送出してもかまわない。ＷＥＢサーバ８３０はユーザの鍵取得要求の妥当性を確認するために、認証サーバ８４０へ問い合わせる。この問い合わせの内容は、例えばユーザＩＤとパスワードの妥当性であったり、クレジットカードの有効性の確認であったりする。記憶手段に予め記憶されるユーザ情報を用いて判定を行い、該ユーザの妥当性が確認できると、ＷＥＢサーバは鍵管理サーバ８２０に対し、映像ストリーム１１１をスクランブルする時に用いた鍵１３１に対応する解読鍵取得を要求する。この時に、認証サーバ８４０が発行するディジタル証明書等を添付しても構わない。鍵管理サーバ８２０より解読鍵を得たＷＥＢサーバは鍵情報を端末８１１に送信する。端末８１１では、解読鍵を用いてスクランブルストリーム１１３を解読し、正しい映像を視聴することができる。
【００２９】
図８の変形例としては、ユーザの妥当性を確認するために、ユーザが店舗等で購入した証明（例えば、レシート等に記載されたＩＤコード等）を用いても構わない。この場合、図８の認証サーバ８４０は、店舗のＰＯＳシステム等と接続し、ユーザの購入データ、購入額等を確認した上で、認証を行う。
【００３０】
図８の別の変形例としては、コンテンツ毎に異なるスクランブルパラメータを与える例がある。すなわち、スクランブル装置に、入力するコンテンツと、入力するコンテンツに対応したスクランブル指示情報を入力し、スクランブル指示情報から所定の手段によりスクランブルパラメータを決定し、このスクランブルパラメータを用いてコンテンツ毎に異なるスクランブルをかける方法である。
具体的には、スクランブル指示情報として、スクランブルレベル０〜４の整数値を用意し、スクランブルレベル０が指定された時は、スクランブルなし、１〜３の時は部分視聴の度合いの異なるスクランブル（１がより、３がより画質劣化が大きい）、そして４が完全スクランブル（部分視聴なし）とする。ここで、完全スクランブルの時は、一般の暗号を用いて、コンテンツの保護の強度を上げても構わないし、本発明手法のパラメータＡ、Ｂを極端に小さくして、部分視聴できない程度に画質を劣化させてもかまわない。
スクランブル指示情報として１〜３が指示されたときには、スクランブル装置は予め用意されていたスクランブルパラメータ（主にＡ，Ｂの値）を選択する。なお、このとき、先に示した入力ストリームの検査を実施し、その検査結果によりスクランブルパラメータを修正すればより適切な部分視聴映像が期待できる。本構成によれば、例えば店舗の販売等の景品として、映像視聴の鍵を与えることにより、コンテンツの視聴が可能となり、店舗の販売の促進効果が期待できる。また、鍵を持っていない顧客でも映像を部分視聴できるため、顧客が映像を正しく見たいために、店舗において物品を購入することを促す効果が期待できる。
【００３１】
【発明の効果】
本発明のコンテンツをスクランブルする機能によれば、暗号鍵を有する端末には正しい映像再生を行い、暗号鍵を持たない端末においては、映像コンテンツの一部分あるいは画質の劣化したコンテンツが視聴（部分視聴）される。この時、スクランブルをかけるのは映像符号化の後に実施することができ、エンコードする者とスクランブルする者が別の者であることも可能となる。スクランブルのパラメータを選択してスクランブルの強度を選択することができる。
さらに、多段でのスクランブルを行う構成によれば、複数の鍵を用いるため、受信者が取得する鍵の個数・組み合わせにより、部分視聴できる映像の画質を変えることができる。
【図面の簡単な説明】
【図１】本発明による第１の実施例を説明する図である。
【図２】スクランブル部の詳細説明図である。
【図３】スクランブル可否を決定するための状態遷移図を説明する図である。
【図４】ソフトウェアにて実装した場合のフローチャートである
【図５】換字表の例である。
【図６】換字表生成アルゴリズムの例である。
【図７】図１のスクランブラの変形例である。
【図８】図１のスクランブラ１００を用いた映像配信システムの応用例である。
【符号の説明】
１００、スクランブラ
１０３、デスクランブラ
１１２、スクランブル部
１１３、スクランブルストリーム
１１４、デスクランブル部
１３１、暗号鍵
１２３、秘匿スクランブルデータ
２０１、換字処理。
【図１】
2004138933.tif 000003
【図２】
2004138933.tif 000004
【図３】
2004138933.tif 000005
【図４】
2004138933.tif 000006
【図５】
2004138933.tif 000007
【図６】
2004138933.tif 000008
【図７】
2004138933.tif 000009
【図８】
2004138933.tif 000010