(57)【要約】【課題】セキュアビデオストリームのための改良された解決策に対する必要性がある。【解決手段】スライスベースの優先度付きセキュアビデオストリーミングでは、マクロブロックのセキュア送信の相対的な重要度の少なくとも一部分に基づいて暗号鍵を選択する送信器を含む。スライスは暗号鍵を使用して暗号化される。受信器は、暗号化されたスライスを受信し、マスタ鍵を使用してスライスのヘッダを復号化して、マクロブロックのセキュア送信の相対的な重要度の指示を取得する。受信器は、少なくともその指示の一部分に基づいて復号鍵を選択し、当該復号鍵を使用してスライスを復号化する。【選択図】図１
2009303211.tif 000002
【特許請求の範囲】
【請求項１】
複数のマクロブロックを含むスライスを受信し、
前記マクロブロックのセキュア送信の相対的な重要度の少なくとも一部分に基づいて暗号鍵を選択し、
前記暗号鍵は、
前記重要度が高い場合、マスタ鍵から構成され、
前記重要度が中である場合、一方向関数を前記マスタ鍵に適用することによって導出される第１の鍵から構成され、
前記重要度が低い場合、前記一方向関数を前記第１の鍵に適用することによって導出される第２の鍵から構成され、
前記暗号鍵を用いて前記スライスを暗号化すること、
を含む、方法。
【請求項２】
Ｉフレームスライス及びヘッダ、第１の所定量（α）を超えるＩマクロブロックを含むＰフレームスライス、並びに第２の所定量（β）を超えるＩマクロブロックを含むＢフレームスライスのセキュア送信の前記相対的な重要度はそれぞれ高、中、及び低であり、他のスライスの前記相対的な重要度は最低である、請求項１に記載の方法。
【請求項３】
１＞α＞β＞０である、請求項２に記載の方法。
【請求項４】
前記暗号化後に、前記スライスを送信することをさらに含む、請求項１に記載の方法。
【請求項５】
前記受信の前に、一つ以上の前記マスタ鍵を受信器にセキュアに送信することをさらに含む、請求項１に記載の方法。
【請求項６】
複数のマクロブロックを含む暗号化されたスライスを受信し、
マスタ鍵を使用して前記スライスの、前記マクロブロックのセキュア送信の相対的な重要度の指示を含むヘッダを復号化し、
前記指示の少なくとも一部分に基づいて復号鍵を選択し、
当該復号鍵は、
前記重要度が高い場合、前記マスタ鍵から構成され、
前記重要度が中である場合、一方向関数を前記マスタ鍵に適用することによって導出される第１の鍵から構成され、
前記重要度が低い場合、前記一方向関数を前記第１の鍵に適用することによって導出される第２の鍵から構成され、
前記復号鍵を使用して前記スライスを復号化すること、
を含む、方法。
【請求項７】
Ｉフレームスライス及びヘッダ、第１の所定量（α）を超えるＩマクロブロックを含むＰフレームスライス、並びに第２の所定量（β）を超えるＩマクロブロックを含むＢフレームスライスのセキュア送信の前記相対的な重要度はそれぞれ高、中、及び低であり、他のスライスの前記相対的な重要度は最低である、請求項６に記載の方法。
【請求項８】
１＞α＞β＞０である、請求項７に記載の方法。
【請求項９】
前記復号化後に、前記スライスを送信することをさらに含む、請求項６に記載の方法。
【請求項１０】
前記暗号化されたスライスを受信する前に、セキュア送信を介して前記マスタ鍵を受信し、
前記マスタ鍵に一方向関数を適用して、前記第１の鍵を導出し、
前記第１の鍵に前記一方向関数を適用して、前記第２の鍵を導出すること、
をさらに含む、請求項６に記載の方法。
【請求項１１】
複数の鍵シードを決定することであって、該鍵シードのそれぞれは、複数のスライスがストリーミングされる複数の間隔のうちの特定の一つに対応し、当該決定は、前の間隔に対応する前の鍵シードを取得するために第２の一方向関数を最後の間隔に対応する最後の鍵シードに適用すること、及び前記複数の間隔のすべてに対応する、すべての鍵シードが取得されるまで、前記第２の一方向関数を決定された各前記鍵シードに適用し続けることを含み、
複数のマクロブロックを含むスライスを受信し、
前記スライスが現在の間隔の最初のスライスを含む場合、当該現在の間隔に対応する現在の鍵シードを一以上の受信器にセキュアに送信し、
前記マクロブロックのセキュア送信の相対的な重要度の少なくとも一部分に基づいて、暗号鍵を選択し、
当該暗号鍵は、
前記重要度が高い場合、第１の一方向関数を前記鍵シードに適用することによって導出されるマスタ鍵から構成され、
前記重要度が中である場合、前記第１の一方向関数を前記マスタ鍵に適用することによって導出される第１の鍵から構成され、
前記重要度が低い場合、前記第１の一方向関数を前記第１の鍵に適用することによって導出される第２の鍵から構成され、
前記暗号鍵を使用して前記スライスを暗号化すること、
を含む、方法。
【請求項１２】
Ｉフレームスライス及びヘッダ、第１の所定量（α）を超えるＩマクロブロックを含むＰフレームスライス、並びに第２の所定量（β）を超えるＩマクロブロックを含むＢフレームスライスのセキュア送信の前記相対的な重要度はそれぞれ高、中、及び低であり、他のスライスの前記相対的な重要度は最低である、請求項１１に記載の方法。
【請求項１３】
１＞α＞β＞０である、請求項１２に記載の方法。
【請求項１４】
前記暗号化後に、前記スライスを送信することをさらに含む、請求項１１に記載の方法。
【請求項１５】
暗号化されていない間隔数及び暗号化された間隔数を前記マスタ鍵に付与することをさらに含む、請求項１１に記載の方法。
【請求項１６】
受信器が、
前記現在の間隔に対応する前記現在の鍵シードを受信し、
前記暗号化されたスライスを受信し、
一方向関数を前記鍵シードに適用することによって導出されるマスタ鍵を使用して、前記スライスの、前記マクロブロックのセキュア送信の相対的な重要度の指示を含む、ヘッダを復号化し、
前記指示の少なくとも一部分に基づいて復号鍵を選択し、
当該復号鍵は、
前記重要度が高い場合、前記マスタ鍵から構成され、
前記重要度が中である場合、前記一方向関数を前記マスタ鍵に適用することによって導出される第１の鍵から構成され、
前記重要度が低い場合、前記一方向関数を前記第１の鍵に適用することによって導出される第２の鍵から構成され、
前記復号鍵を使用して前記スライスを解読すること、
をさらに含む、請求項１１に記載の方法。
【請求項１７】
Ｉフレームスライス及びヘッダ、第１の所定量（α）を超えるＩマクロブロックを含むＰフレームスライス、並びに第２の所定量（β）を超えるＩマクロブロックを含むＢフレームスライスのセキュア送信の前記相対的な重要度はそれぞれ高、中、及び低であり、他のスライスの前記相対的な重要度は最低である、請求項１６に記載の方法。
【請求項１８】
１＞α＞β＞０である、請求項１７に記載の方法。
【請求項１９】
前記復号化後に、前記スライスを送信することをさらに含む、請求項１６に記載の方法。
【請求項２０】
復号化された間隔数を生成するために、前記マスタ鍵を用いて前記ヘッダ内の暗号化された間隔数を復号化し、
前記復号化された間隔数が前記ヘッダ内の暗号化されていない間隔数と一致しない場合、前記スライスを破棄すること、
をさらに含む、請求項１６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータサイエンスの分野に関する。より詳細には、本発明は、スライスベースの優先度付きセキュアビデオストリーミングに関する。
【背景技術】
【０００２】
ビデオストリーミングは、近年、相当の注目を集めており、インターネットを介して送信されるトラフィックの主要なタイプのうちの一つになっている。セキュアビデオストリーミングの提供は、ビデオオンデマンド及びテレビ会議のようなビデオストリーミングアプリケーションの動作にとって不可欠なものである。サービス品質（ＱｏＳ）要求を有しない環境又はデータレートが低い環境におけるデータ及び音声の送信をセキュア化するために、多くのアルゴリズムが提案されてきた。その一方、ビデオストリーミングは、信頼性があり、かつ、高品質な送出を確保するために、比較的高い帯域幅とＱｏＳ要求とを有する。したがって、単にデータ及び音声用のセキュリティアルゴリズムをビデオアプリケーションに拡張するだけでは、適切なセキュリティ及びＱｏＳはストリーミングアプリケーションに提供されない。
【０００３】
ブロードキャスト品質ＴＶは、通常、送信に最大で１５０Ｍｂｐｓ帯域幅チャネルを必要とするのに対して、高精細ビデオは１Ｇｂｐｓを超える帯域幅を必要する場合がある。したがって、実際には、ビデオストリーミングは通常、圧縮された後に送信される。ビデオ圧縮アルゴリズムには、ＭＰＥＧ（動画像専門家グループ）標準規格が広く使用される。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一解決策では、ビデオは、ＭＰＥＧビデオストリーム全体を暗号化し、それから受信器側において当該ストリームを解読して復号化することによってセキュア化される。しかし、この解決策は、送信器側及び受信器側の両方において過度な処理を必要とするため、多くのビデオストリーミングアプリケーションに適さない可能性がある。より高度な暗号化及び復号化のアルゴリズムは、ＭＰＥＧの構造を利用して選択的なフレームのみを暗号化し、計算オーバーヘッドを節減する。別の解決策は、ＤＥＳ−ＣＢＣモードを使用してＭＰＥＧストリーム内のヘッダ及びＩフレーム（内部フレーム（ｉｎｔｒａｆｒａｍｅ））のみを暗号化する。この方法は、暗号化及び復号化に必要な計算オーバーヘッドを大幅に低減することができる。この方式の背後にあるセキュリティ理論は、Ｉフレームが暗号化される場合、Ｐフレーム（予測フレーム）及びＢフレーム（双方向予測フレーム）が使い物にならないことである。この選択的暗号化のセキュリティの弱さは、単一のＰフレーム又はＢフレームが漏らす情報はわずかであるが、一連の暗号化されていないＰフレーム及びＢフレームは、ベースフレームが互いに相関付けられる場合に大きな情報を漏らす可能性があることである。さらに、Ｐフレーム及びＢフレームにおいてさえも内部に含まれるＩマクロブロックがあり、これらの暗号化されていないＩマクロブロックは有用な情報を漏らす可能性がある。
【０００５】
別の解決策では、セキュアＭＰＥＧ（ＳＥＣＭＰＥＧ）は、４つのレベルのセキュリティを利用する。第１のレイヤでは、すべてのヘッダを暗号化する。第２のレイヤでは、ＳＥＣＭＰＥＧは、第１のレイヤの暗号化に加えて、ＩマクロブロックのＤＣ係数を暗号化する。第３のレイヤでは、ＳＥＣＭＰＥＧは、すべてのＩフレーム並びにＰフレーム及びＢフレーム内のすべてのＩマクロブロックを暗号化する。第４のレイヤでは、ＳＥＣＭＰＥＧはストリーム全体を暗号化する。この暗号化は、データ暗号規格（ＤＥＳ）又はＲＳＡのいずれかを使用して行うことができる。しかし、ＳＥＣＭＰＥＧはＭＰＥＧヘッダへの主要な変更を必要とするため、ＳＥＣＭＰＥＧストリームは標準的なＭＰＥＧストリームと互換性を持たず、送信器及び受信器の両方において特別なエンコーダ及びデコーダを必要とする。
【０００６】
したがって、当該技術分野には、セキュアビデオストリームのための改良された解決策に対する必要性がある。
【課題を解決するための手段】
【０００７】
スライスベースの優先度付きセキュアビデオストリーミングでは、複数のマクロブロックを含むスライスを受信し、マクロブロックのセキュア送信の相対的な重要度の少なくとも一部分に基づいて暗号鍵を選択する送信器を含む。重要度が高い場合、マスタ鍵が選択される。重要度が中である場合、第１の一方向関数をマスタ鍵に適用することによって導出可能な第１の鍵が選択される。重要度が低い場合、第１の一方向関数を第１の鍵に適用することによって導出可能な第２の鍵が選択される。スライスは暗号鍵を使用して暗号化される。受信器は、暗号化されたスライスを受信し、マスタ鍵を使用してスライスのヘッダを復号化して、マクロブロックのセキュア送信の相対的な重要度の指示を取得する。受信器は、少なくともその指示の一部分に基づいて復号鍵を選択し、当該復号鍵を使用してスライスを復号化する。
【０００８】
別の態様によれば、送信器は複数の鍵シードをさらに決定し、鍵シードのそれぞれは、複数のスライスがストリーミングされた複数の間隔のうちの特定の一つに対応する。決定することは、前の間隔に対応する前の鍵シードを取得するために第２の一方向関数を最後の間隔に対応する最後の鍵シードに適用すること、及び複数の間隔のすべてに対応するすべての鍵シードが取得されるまで、第２の一方向関数を決定された各鍵シードに適用し続けることを含む。スライスが現在の間隔の第１のスライスを含む場合、送信器は、現在の間隔に対応する現在の鍵シードを一つ又は複数の受信器にセキュアに送信する。一以上の受信器は、現在の鍵シードを受信し、第１の一方向関数を受信した鍵シードに適用することによって現在の間隔のマスタ鍵を取得する。
【図面の簡単な説明】
【０００９】
【図１】本発明の態様の実施に適したコンピュータシステムのブロック図である。
【図２】本発明の一実施形態によるスライスベースの優先度付きセキュアビデオストリーミングのシステムを示すブロック図である。
【図３】本発明の一実施形態によるスライスベースの優先度付きセキュアビデオストリーミングの送信器を示すブロック図である。
【図４】本発明の一実施形態によるスライスベースの優先度付きセキュアビデオストリーミングの受信器を示すブロック図である。
【図５Ａ】圧縮されたビデオシーケンスの典型的なＧＯＰ構造を示すブロック図である。
【図５Ｂ】アプリケーションレイヤＭＰＥＧパケット及びＭＡＣレイヤＭＰＥＧパケットを示すブロック図である。
【図５Ｃ】ＭＰＥＧパケットヘッダを示すブロック図である。
【図６】本発明の一実施形態によるシングルレイヤ優先度付きセキュアビデオストリーミングの鍵構造を示すブロック図である。
【図７】本発明の一実施形態による、送信器の視点からのスライスベースの優先度付きセキュアビデオストリーミングの方法を示す流れ図である。
【図８】本発明の一実施形態による、受信器の視点からのスライスベースの優先度付きセキュアビデオストリーミングの方法を示す流れ図である。
【図９】ストリーミングビデオの複数の時間間隔を示すブロック図である。
【図１０】本発明の一実施形態による、デュアルレイヤスライスベースの優先度付きセキュアビデオストリーミングの鍵シード生成を示すブロック図である。
【図１１】本発明の一実施形態によるデュアルレイヤスライスベースの優先度付きセキュアビデオストリーミングの鍵構造を示すブロック図である。
【図１２】本発明の一実施形態による送信器の視点からのデュアルレイヤスライスベースの優先度付きセキュアビデオストリーミングの方法を示す流れ図である。
【図１３】本発明の一実施形態による受信器の視点からのデュアルレイヤスライスベースの優先度付きセキュアビデオストリーミングの方法を示す流れ図である。
【発明を実施するための形態】
【００１０】
本発明の実施形態をスライスベースの優先度付きセキュアビデオストリーミングについて本明細書にて説明する。本発明の以下の詳細な説明が単に例示にすぎず、決して限定を意図しないことを当業者は認識するであろう。本開示の恩恵を受けるこのような当業者は、本発明の他の実施形態に容易に想至する。以下、添付図面に示される本発明の実施態様を詳細に参照する。同じ参照符号指示は、図面及び以下の詳細な説明の全体を通じて同一又は同様の部分を指すために使用される。
【００１１】
本発明の実施形態例は、スライスのセキュア送信の重要度に基づいてビデオスライスを分類し、当該分類に基づいてビデオスライスを暗号化する。三つの鍵がスライスの暗号化に使用される。すなわち、マスタ鍵、一方向関数をマスタ鍵に適用することによって導出される第１の鍵、及び一方向関数を第１の鍵に適用することによって導出される第２の鍵である。マスタ鍵は、セキュア送信の重要度が相対的に高いスライスの暗号化に使用される。第１の鍵は、セキュア送信の重要度が中であるスライスの暗号化に使用される。第２の鍵は、セキュア送信の重要度が相対的に低いスライスの暗号化に使用される。セキュア送信の重要度が相対的に最も低いスライスは暗号化されない。暗号化は、重要度の高いスライスの鍵を使用して重要度のより低いスライスの鍵を導出することが可能であるが、重要度の低いスライスの鍵を使用して重要度のより高いスライスの鍵を導出することはできない。
【００１２】
ビデオストリームを複数の間隔に分け、各間隔に異なる鍵シードを提供することによって、追加のセキュリティレイヤが提供される。前の間隔に使用される鍵シードを後の間隔に使用される鍵シードから導出することができるが、後の間隔に使用される鍵シードを前の間隔に使用される鍵シードから導出できないように、鍵シードは構成される。各間隔のマスタ鍵、第１の鍵、及び第２の鍵は、その間隔の鍵シードから導出される。
【００１３】
簡明にするために、本明細書において説明する実施態様の慣習的な特徴のすべてを示すと共に説明している訳ではない。当然ながら、任意のこのような実際の実施態様の開発において、用途、及びビジネスに関連する制約への準拠のような開発者の特定の目標を達成するために、多くの実施態様に固有の決定を行わなければならず、これらの特定の目標は実施態様毎及び開発者毎に異なる。さらに、このような開発努力は複雑で時間がかかり得るが、本開示の恩恵を受ける当業者にとっては慣習的な工学的取り組みである。
【００１４】
本発明の一実施形態によれば、構成要素、プロセスステップ、及び／又はデータ構造は、様々な種類のオペレーティングシステム（ＯＳ）、コンピューティングプラットフォーム、ファームウェア、コンピュータプログラム、コンピュータ言語、及び／又は汎用マシンを使用して実施することができる。本方法は、処理回路で実行されるようにプログラムされたプロセスとして実行させることができる。処理回路は、プロセッサ及びオペレーティングシステム、接続及びネットワーク、データ記憶装置、又はスタンドアロン装置の多くの組み合わせの形態をとることができる。プロセスは、ハードウェア単体、又は任意のハードウェアを組み合わせた、このようなハードウェアによって実行される命令として実施することができる。ソフトウェアは、機械可読のプログラム記憶装置に記憶することができる。
【００１５】
本発明の一実施形態によれば、構成要素、プロセス、及び／又はデータ構造は、カリフォルニア州サンタクララに所在のSun Microsystems, Inc.から市販されているＳｏｌａｒｉｓ（登録商標）、ワシントン州レドモンドに所在のMicrosoft Corporationから市販されているＷｉｎｄｏｗｓ  Ｖｉｓｔａ（登録商標）、Ｗｉｎｄｏｗｓ  ＮＴ（登録商標）、Ｗｉｎｄｏｗｓ  ＸＰ、Ｗｉｎｄｏｗｓ  ＸＰ  ＰＲＯ、及びＷｉｎｄｏｗｓ（登録商標）2000、カリフォルニア州クーパティーノに所在のApple Inc.から市販されているＡｐｐｌｅ  ＯＳ  Ｘベースのシステム、又は多数のベンダーから市販されているＬｉｎｕｘ（登録商標）のようなＵｎｉｘ（登録商標）オペレーティングシステムの様々なバージョンのようなＯＳを実行するパーソナルコンピュータ、ワークステーションコンピュータ、メインフレームコンピュータ、又は高性能サーバのようなデータ処理コンピュータで実行される機械言語、アセンブラ、Ｃ若しくはＣ＋＋、Ｊａｖａ(登録商標）、及び／又は他の高水準言語プログラムを使用して実施することができる。方法は、マルチプロセッサシステム上で、又は入力装置、出力装置、ディスプレイ、ポインティングデバイス、メモリ、記憶装置、プロセッサ（複数可）との間でデータを転送するための媒体インタフェース等のような様々な周辺機器を含むコンピューティング環境において実施することも可能である。さらに、このようなコンピュータシステム又はコンピューティング環境は、ローカルにネットワーク化されてもよく、又はインターネット若しくは他のネットワークを介してネットワーク化されてもよい。異なる実施態様を使用してもよく、また、他のタイプのオペレーティングシステム、コンピューティングプラットフォーム、コンピュータプログラム、ファームウェア、コンピュータ言語、及び／又は汎用機械を含んでよく、さらに、本明細書に開示される本発明の概念の範囲及び精神から逸脱しない範囲で、ハードワイヤードデバイス、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）等のような汎用性のより低い装置を使用してもよいことを当業者ならば認識できる。
【００１６】
本発明の文脈の中では、用語「ネットワーク」は、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、メトロエリアネットワーク、住居ネットワーク、企業ネットワーク、インターネットワーク、インターネット、ワールドワイドウェブ、ケーブルテレビシステム、電話システム、無線通信システム、光ファイバネットワーク、トークンリングネットワーク、イーサネット（登録商標）ネットワーク、ＡＴＭネットワーク、フレーム中継ネットワーク、衛星通信システム等を含む。このようなネットワークは当該技術分野において既知であり、したがって本明細書においてこれ以上説明しない。
【００１７】
本発明の文脈の中では、用語「プロセッサ」は、データを処理又は変換する物理的なコンピュータ（独立型又は分散型のいずれか）又は仮想マシン（独立型又は分散型のいずれか）を表す。プロセッサは、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組み合わせで実施することができる。
【００１８】
本発明の文脈の中では、用語「データ記憶装置」は、デジタル又はアナログの情報又はデータを記憶する、ローカル又は分散型のいずれかであるハードウェア及び／若しくはソフトウェア手段又は装置を表す。用語「データ記憶装置」は、例として、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）、シンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）、フラッシュメモリ、ハードドライブ、ディスクドライブ、フロッピー（登録商標、以下同じ）ドライブ、テープドライブ、ＣＤドライブ、ＤＶＤドライブ、磁気テープ装置（音声、映像、アナログ、デジタル、又はこれらの組み合わせ）、光学記憶装置、電気的消去可能プログラマブル読み取り専用メモリ（ＥＥＰＲＯＭ）、固体状態メモリ装置、及びユニバーサルシリアルバス（ＵＳＢ）記憶装置等のような任意の装置を表す。用語「データ記憶装置」は、例えば、データベース、ファイルシステム、記録システム、オブジェクト指向データベース、関係データベース、ＳＱＬデータベース、監査トレール及びログ、プログラムメモリ、キャッシュ及びバッファ等を表す。
【００１９】
本発明の文脈の中では、用語「ネットワークインタフェース」は、ユーザがネットワークインタフェースを介して通信のためにネットワークにアクセスする、又はネットワークインタフェースから情報を検索するための手段を表す。
【００２０】
本発明の文脈の中では、用語「ユーザインタフェース」は、情報及び／又は命令を人に提示し、かつ／又は人から受け取るための任意の装置又は装置群を説明する。ユーザインタフェースは、ビジュアルディスプレイプロジェクタ又はスクリーン、ラウドスピーカ、照明又は照明システム、プリンタ、ブライユ装置、振動装置等のような情報を人に提示する手段を備えることができる。ユーザインタフェースは、ボタン、キー、レバー、スイッチ、ノブ、タッチパッド、タッチスクリーン、マイクロホン、スピーチ検出器、動き検出器、カメラ、及び光検出器のうちの一つ若しくは複数、又はそれらの組み合わせのような、人から情報又は命令を受け取る手段も含むことができる。ユーザインタフェースの例としては、ページャ、携帯電話、デスクトップコンピュータ、ラップトップコンピュータ、ハンドヘルドコンピュータ、パームコンピュータ、個人情報端末（ＰＤＡ）、陰極線管（ＣＲＴ）、キーボード、キーパッド、液晶ディスプレイ（ＬＣＤ）、制御パネル、ホーン、サイレン、アラーム、プリンタ、スピーカ、マウス装置、コンソール、及びスピーチ認識装置を含む。
【００２１】
本発明の文脈の中では、用語「システム」は、一以上のデータネットワーク又は接続を介して本発明の実施形態と通信するようになっており、かつ、本発明の実施形態と併せて使用するようになっている、プロセッサ手段、データ記憶手段、プログラム手段、及び／又はユーザインタフェース手段を含む、ハードウェア及び／又はソフトウェアの任意のコンピュータ情報及び／又は一以上の制御装置又はデバイスのネットワークを表す。
【００２２】
本発明の文脈の中では、用語「一方向関数」は、出力に基づいて入力を計算することが計算上実現不可能であるように、入力に基づいて出力を生成する任意の暗号化プロセスを表す。例示的な一方向関数は、ＭＤ４アルゴリズム及びＭＤ５アルゴリズムを含む。ＭＤ４アルゴリズムはR. Rivest「The MD4 Message Digest Algorithm, Request for Comments (RFC) 1320」（MIT Laboratory for Computer Science and RSA Data Security, Inc., April 1992）に記載されている。ＭＤ５アルゴリズムはR. Rivest「The MD5 Message Digest Algorithm, Request for Comments (RFC) 1321」（MIT Laboratory for Computer Science and RSA Data Security, Inc., April 1992）に記載されている。
【００２３】
図１は、本発明の態様の実施に適したコンピュータシステム１００のブロック図を示す。図１に示すように、システム１００は、プロセッサ１０４、内部メモリ１０６（ＲＡＭ等）、入／出力（Ｉ／Ｏ）コントローラ１０８、リムーバブルメモリ（メモリカード等）１２２、及びディスプレイアダプタ１１２を介する表示画面１１０、ローラ型入力装置１１４、ジョイスティック１１６、数字キーボード１１８、英数字キーボード１１８、方向ナビゲーションパッド１２６のような外部装置、及び無線インタフェース１２０等のような主要なサブシステムを相互接続するバス１０２を含む。多くの他の装置を接続することができる。無線ネットワークインタフェース１２０、有線ネットワークインタフェース１２８、又はその両方は、当業者に既知の任意のネットワークインタフェースシステムを使用してローカルエリアネットワーク又は広域ネットワーク（インターネット等）に接続するために使用することができる。
【００２４】
多くの他の装置又はサブシステム（図示省略）を同様に接続することが可能である。また、本発明を実施するために、図１に示すすべての装置が存在する必要があるわけではない。さらに、装置及びサブシステムは図１に示す方法とは異なる方法で相互に接続されてもよい。本発明を実施するためのコードは、内部メモリ１０６内に動作可能に配置されてもよく、又はリムーバブルメモリ１２２、フロッピーディスク、サムドライブ、ＣｏｍｐａｃｔＦｌａｓｈ（登録商標）記憶装置、ＤＶＤ−Ｒ（「デジタル多用途ディスク」若しくは「デジタルビデオディスク」レコーダブル）、ＤＶＤ−ＲＯＭ（「デジタル多用途ディスク」若しくは「デジタルビデオディスク」読み取り専用メモリ）、ＣＤ−Ｒ（コンパクトディスクレコーダブル）、又はＣＤ−ＲＯＭ（コンパクトディスク読み取り専用メモリ）のような記憶媒体に記憶してもよい。
【００２５】
図２は、本発明の一実施形態によるスライスベースの優先度付きセキュアビデオストリーミングのシステムを示すブロック図である。図２に示すように、送信器２２０はネットワーク２２５を介して受信器２３０と通信できるように接続される。本発明の一実施形態によれば、送信器２２０は、複数のマクロブロックを含むスライスを受信するように構成される。送信器２２０は、セキュア送信の重要度が相対的に最低であるスライスを暗号化しないように構成される。送信器２２０は、さらに、マクロブロックのセキュア送信の相対的な重要度の少なくとも一部分に基づいて暗号鍵を選択するように構成される。相対的な重要度が高い場合、マスタ鍵が選択される。相対的な重要度が中である場合、第１の鍵が暗号鍵として選択される。第１の鍵は、一方向関数をマスタ鍵に適用することによって導出可能である。相対的な重要度が低い場合、第２の鍵が選択される。第２の鍵は、一方向関数を第１の鍵に適用することによって導出可能である。送信器２２０は、さらに、選択された暗号鍵を使用してスライスを暗号化するように構成される。送信器２２０は暗号化されたものを一以上の受信器に送信することができる。
【００２６】
受信器２３０は、複数のマクロブロックを含むスライスを受信するように構成される。受信器は、さらに、マスタ鍵を使用してスライスのヘッダを復号化するように構成される。受信器２３０は、セキュア送信の相対的な重要度が最低であるスライスを復号化しないように構成される。受信器２３０は、さらに、マクロブロックのセキュア送信の相対的な重要度の、ヘッダ内の指示の少なくとも一部分に基づいて復号鍵を選択するように構成される。マクロブロックのセキュア送信の相対的な重要度が高い場合、マスタ鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が中である場合、第１の鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が低い場合、第２の鍵が選択される。受信器２３０は、さらに、選択された復号鍵を使用してスライスを復号化するように構成される。受信器２３０は、記憶するため、又は一つ若しくは複数のアプリケーションが使用するために、スライスを送信することができる。
【００２７】
本発明の別の実施形態によれば、送信器２２０は、間隔数、間隔サイズ、第１の一方向関数、及び第２の一方向関数を選択するように構成される。送信器２２０は、さらに、複数のマクロブロックを含む一つ又は複数のスライスが存在するか否かを判定するように構成される。送信器２２０は、さらに、スライスが存在しない場合、処理を終了するように構成される。送信器２２０は、さらに、一以上のスライスが存在する場合、現在の間隔の有効な鍵シードが存在するか否かを判定するように構成される。送信器２２０は、さらに、現在の間隔の有効な鍵シードが存在しない場合、最後の間隔の鍵シードを選択するように構成される。送信器２２０は、さらに、第２の一方向関数を適用して、各々の間隔の鍵シードを取得するように構成される。送信器２２０は、さらに、現在の間隔を決定するように構成される。送信器２２０は、さらに、現在のスライスが現在の間隔の最初のスライスであるか否かを判定し、現在のスライスが現在の間隔の最初のスライスである場合、第１の一方向関数を現在の間隔の鍵シードに適用してマスタ鍵を取得し、一方向関数をマスタ鍵に適用して第１の鍵を取得し、一方向関数を第１の鍵に適用して第２の鍵を取得するように構成される。送信器２２０は、さらに、現在の間隔の鍵シードを一以上の受信器に送信するように構成される。送信器２２０は、さらに、現在のスライスのヘッダを解析して、スライスのセキュア送信の相対的な重要度の指示を取得するように構成される。送信器２２０は、さらに、セキュア送信の相対的な重要度が最低であるスライスを暗号化しないように構成される。送信器２２０は、さらに、マクロブロックのセキュア送信の相対的な重要度の少なくとも一部分に基づいて暗号鍵を選択するように構成される。相対的な重要度が高い場合、マスタ鍵が選択される。相対的な重要度が中である場合、第１の鍵が選択される。第１の鍵は、一方向関数をマスタ鍵に適用することによって導出可能である。相対的な重要度が低い場合、第２の鍵が選択される。第２の鍵は、一方向関数を第１の鍵に適用することによって導出可能である。送信器２２０は、さらに、選択された暗号鍵を使用してスライスを暗号化するように構成される。送信器２２０は、暗号化されたスライスを一以上の受信器に送信することができる。
【００２８】
受信器２３０は、間隔数、間隔サイズ、第１の一方向関数、及び第２の一方向関数を取得するように構成される。一以上のパラメータが送信器から取得される。受信器２３０は、さらに、複数のマクロブロックを含む一以上のスライスが存在するか否かを判定するように構成される。受信器２３０は、さらに、スライスが存在しない場合、処理を終了するように構成される。受信器２３０は、さらに、一以上のスライスが存在する場合、鍵シードを含むパケットが受信されたか否かを判定するように構成される。受信器２３０は、さらに、鍵シードを含むパケットが受信されている場合、鍵シードが新しいか否かを判定するように構成される。受信器２３０は、さらに、鍵シードが新しくない場合、その鍵シードを破棄するように構成される。受信器２３０は、さらに、鍵シードが新しい場合、第２の一方向関数を新たに受信した鍵シードに適用することによって、それまでは利用可能ではなかった前の間隔のすべての鍵シードを決定するように構成される。受信器２３０は、さらに、導出された鍵シードのそれぞれのマスタ鍵、第１の鍵、及び第２の鍵を決定するように構成される。受信器２３０は、さらに、新たに決定された鍵を使用して、必要な鍵が利用できなかったことによってバッファリングされていたスライスを復号化するように構成される。
【００２９】
受信器２３０は、さらに、現在の間隔を決定するように構成される。受信器２３０は、さらに、現在の間隔のマスタ鍵、第１の鍵、及び第２の鍵が利用可能であるか、又は現在利用可能な鍵シードから導出できるか否かを判定するように構成される。受信器２３０は、さらに、現在の間隔のマスタ鍵、第１の鍵、及び第２の鍵が利用できず、又は現在利用可能な鍵シードから導出できない場合、スライスをバッファリングするように構成される。受信器２３０は、さらに、現在の間隔のマスタ鍵、第１の鍵、及び第２の鍵が利用可能であるか、又は現在利用可能な鍵シードから導出できるかのいずれかである場合、マスタ鍵を使用してスライスのヘッダを復号化するように構成される。受信器２３０は、セキュア送信の相対的な重要度が最も低いスライスを復号化しないように構成される。受信器２３０は、さらに、マクロブロックのセキュア送信の相対的な重要度の、ヘッダ内の指示の少なくとも一部分に基づいて復号鍵を選択するように構成される。マクロブロックのセキュア送信の相対的な重要度が高い場合、マスタ鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が中である場合、第１の鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が低い場合、第２の鍵が選択される。受信器２３０は、さらに、選択された復号鍵を使用してスライスを復号化するように構成される。受信器２３０は、記憶するため、又は一以上のアプリケーションが使用するために、復号化されたスライスを送信することができる。
【００３０】
図３は、本発明の一実施形態によるスライスベースの優先度付きセキュアビデオストリーミングの送信器を示すブロック図である。図３に示すように、送信器３００は、バス３３０を介して結合されたプロセッサ３０５、メモリ３１０、データ記憶装置３１５、入／出力（Ｉ／Ｏ）インタフェース３２０、及び優先度付きセキュリティ暗号器３２５を備える。プロセッサ３０５は、本明細書に開示されるスライスの優先度付きセキュリティ暗号化を実行するように構成することができる。また、代わりに、優先度付きセキュリティ暗号器３２５が、プロセッサ３０５の制御下で優先度付きセキュリティ暗号化を実行するように構成することもできる。メモリ３１０及びデータ記憶装置３１５は、暗号化される前に、暗号化されていないスライスを記憶又はバッファリングするため、及び、一以上の受信器へ送信される前に、暗号化されたスライスを記憶するために使用することができる。Ｉ／Ｏインタフェース３２０は、送信器３００と他の装置との間のインタフェースを提供するように構成される。
【００３１】
図４は、本発明の一実施形態によるスライスベースの優先度付きセキュアビデオストリーミングの受信器を示すブロック図である。図４に示すように、受信器４００は、バス４３０を介して結合されたプロセッサ４０５、メモリ４１０、データ記憶装置４１５、入／出力（Ｉ／Ｏ）インタフェース４２０、及び優先度付きセキュリティ復号器４２５を備える。プロセッサ４０５は、本明細書に開示されるスライスの優先度付きセキュリティ復号化を実行するように構成することができる。また、代わりに、優先度付きセキュリティ復号器４２５が、プロセッサ４０５の制御下で優先度付きセキュリティ復号化を実行するように構成することもできる。メモリ４１０及びデータ記憶装置４１５は、復号化される前に、暗号化されたスライスを記憶又はバッファリングするため、及び、一以上のアプリケーションへ送信される前に、復号化されたスライスを記憶するために使用することができる。Ｉ／Ｏインタフェース４２０は、送信器４００と他の装置との間のインタフェースを提供するように構成される。
【００３２】
図５Ａは、圧縮ビデオシーケンスの典型的なＧＯＰ構造を示すブロック図である。ＭＰＥＧ符号化は、フレーム内空間的冗長性及びフレーム間時間的冗長性を利用する。フレーム内符号化が、空間的冗長性を低減するためにＤＣＴベースの圧縮を用いて達成されるのに対して、ブロックベースの動き補償は、フレーム間符号化の時間的冗長性を利用するために使用される。ＭＰＥＧストリームは、３種類のフレーム、すなわち、Ｉフレーム（内部フレーム）、Ｐフレーム（順方向予測フレーム）、及びＢフレーム（双方向予測フレーム）を含む。
【００３３】
Ｉフレームは、他のいずれのフレームも参照せずに再構築することができる。Ｐフレームは、最後のＩフレーム又はＰフレームから順方向予測される。Ｂフレームは、最後及び次のＩフレーム又はＰフレームから順方向予測、かつ、逆方向予測される。多数の前述したフレームがグループ化されて、ピクチャグループ（ＧＯＰ）が形成される。ＧＯＰは、隣接するＧＯＰ内のピクチャに殆ど又は全く依存しない。図５Ａは典型的なＧＯＰを示し、Ｐフレームの順方向予測、Ｂフレームの順方向予測、及びＢフレームの逆方向予測を示す。
【００３４】
前述したフレームは、それぞれ、スライスと呼ばれる独立して復号化可能な一連のユニットを含む。スライスは、さらに、一連のマクロブロックにフラグメント化することができる。マクロブロックは、変換係数及び動きベクトルの予測符号化のために、各スライス内の隣接するマクロブロックに依存する。しかし、異なるスライス内のマクロブロックは互いに依存しない。Ｉフレームは、Ｉマクロブロックのみを含むことができる。一方、Ｐフレーム及びＢフレームはＩマクロブロックを含むこともできる。
【００３５】
図５Ｂは、アプリケーションレイヤＭＰＥＧパケット及びＭＡＣレイヤＭＰＥＧパケットを示すブロック図である。そして、図５Ｃは、ＭＰＥＧパケットヘッダを示すブロック図である。本発明の一実施形態によれば、スライスをセキュアに送信する重要度は、スライスのすべて又は部分を含むパケットのパケットヘッダ５１０のピクチャ種別フラグ５１５によって示される。本発明の一実施形態によれば、Ｉフレームスライス及びヘッダのセキュア送信の相対的な重要度は高く、所定量（α）を超えるＩマクロブロックを含むＰフレームスライスのセキュア送信の相対的な重要度は中であり、第２の所定量（β）を超えるＩマクロブロックを含むＢフレームスライスのセキュア送信の相対的な重要度は低い。他のすべてのスライスは相対的に最も低い重要度を有するものとみなされる。本発明の別の実施形態によれば、１＞α＞β＞０である。
【００３６】
図６は、本発明の一実施形態によるシングルレイヤ優先度付きセキュアビデオストリーミングの鍵構造を示すブロック図である。図６に示すように、第１の鍵Ｋ1６１０は、第１の一方向関数Ｆ（６０５、６１５）をマスタ鍵Ｋm６００に適用することによって導出される。第２の鍵Ｋ2６２０が、第１の一方向関数Ｆ（６０５、６１５）を第１の鍵Ｋ1６１０に適用することによって導出される。特定のビット長がマスタ鍵Ｋm６００、第１の鍵Ｋ1６１０、及び第２の鍵Ｋ2６２０について示されるが、他のサイズの鍵を使用してもよい。本発明の一実施形態によれば、マスタ鍵ビット長は第１の鍵のビット長よりも長く、第１の鍵のビット長は第２の鍵のビット長よりも長い。
【００３７】
本発明の一実施形態によれば、高度暗号規格（ＡＥＳ）が暗号化に使用される。他の暗号化方法を使用してもよい。さらに、暗号ブロック連鎖（ＣＢＣ）、出力フィードバック（ＯＦＢ）、暗号フィードバック（ＣＦＢ）等のような様々なブロック暗号化動作モードを使用してもよい。
【００３８】
図７は、本発明の一実施形態による、送信器の視点からのスライスベースの優先度付きセキュアビデオストリーミングの方法を示す流れ図である。図７に示すプロセスは、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組み合わせで実施することができる。例えば、図７に示すプロセスは、図２の送信器２２０によって実行することができる。７００において、複数のマクロブロックを含むスライスが受信される。マクロブロックのセキュア送信の相対的な重要度が最低である場合、スライスは暗号化されない（７３０）。マクロブロックのセキュア送信の相対的な重要度が最低ではない場合、７０５〜７２０において、マクロブロックのセキュア送信の相対的な重要度の少なくとも一部分に基づいて、暗号鍵が選択される。相対的な重要度が高い場合、７１０において、マスタ鍵が暗号鍵として選択される。相対的な重要度が中である場合、７１５において、第１の鍵が暗号鍵として選択される。第１の鍵は、一方向関数をマスタ鍵に適用することによって導出可能である。相対的な重要度が低い場合、７２０において、第２の鍵が選択される。第２の鍵は、一方向関数を第１の鍵に適用することによって導出可能である。７２５において、選択された暗号鍵を使用してスライスが暗号化される。暗号化されたスライスは一以上の受信器に送信することができる。
【００３９】
本発明の一実施形態によれば、Ｉフレームスライス及びヘッダのセキュア送信の相対的な重要度は高く、所定量（α）を超えるＩマクロブロックを含むＰフレームスライスのセキュア送信の相対的な重要度は中であり、第２の所定量（β）を超えるＩマクロブロックを含むＢフレームスライスのセキュア送信の相対的な重要度は低い。本発明の別の実施形態によれば、１＞α＞β＞０である。
【００４０】
本発明の一実施形態によれば、マスタ鍵は、７００においてスライスを受信する前に、一以上の受信器にセキュアに送信される。
【００４１】
図８は、本発明の一実施形態による、受信器の視点からのスライスベースの優先度付きセキュアビデオストリーミングの方法を示す流れ図である。図８に示すプロセスは、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組み合わせで実施することができる。例えば、図８に示すプロセスは、図２の受信器２３０によって実行することができる。８００において、複数のマクロブロックを含むスライスが受信される。８０５において、スライスのヘッダはマスタ鍵を使用して復号化される。ヘッダ内の指示に基づいて、マクロブロックのセキュア送信の相対的な重要度が最低である場合、スライスは復号化されない（８３０）。マクロブロックのセキュア送信の相対的な重要度が最低ではない場合、８１５〜８３０において、復号鍵が、マクロブロックのセキュア送信の相対的な重要度の、ヘッダ内の指示の少なくとも一部分に基づいて選択される。マクロブロックのセキュア送信の相対的な重要度が高い場合、８２０において、マスタ鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が中である場合、８２５において、第１の鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が低い場合、８３０において、第２の鍵が選択される。８３５において、選択された復号鍵を使用してスライスが復号化される。復号化されたスライスは、記憶するため又は一以上の複数のアプリケーションが使用するために送信することができる。
【００４２】
図９は、ストリーミングビデオの複数の時間間隔を示すブロック図である。図９に示すように、ストリーミングビデオは三つの間隔、すなわちｉ−１、ｉ、及びｉ＋１に分割される。間隔ｉ−１、ｉ、及びｉ＋１の鍵シードは、Ｓi-1、Ｓi、及びＳi+1としてそれぞれ示される。鍵シードの生成は、最も遅い間隔ｉ＋１の鍵シードから開始され、鍵シードの使用は、最も早い間隔ｉ−１の鍵シードから開始される。三つの間隔が示されるが、任意の数の間隔を使用することができる。
【００４３】
図１０は、本発明の一実施形態によるデュアルレイヤスライスベースの優先度付きセキュアビデオストリーミングの鍵シード生成を示すブロック図である。図１０は、各間隔の鍵シード間の関係を示す。間隔ｉ−１、ｉ、及びｉ＋１の鍵シードは、Ｓi-1（１０００）、Ｓi（１００５）、及びＳi+1（１０１０）としてそれぞれ示される。鍵シードの生成は、最後の間隔ｉ＋１の鍵シードを選択することから開始される。より早い鍵シードは、第２の一方向関数を前の間隔の鍵シードに適用することによって生成される。図１０に示す例では、鍵シードの生成は、鍵シードＳi+1の選択から開始する。鍵シードＳiは、第２の一方向関数を間隔ｉ＋１の鍵シードＳi+1に適用することによって生成される。鍵シードＳi-1は、第２の一方向関数を間隔ｉの鍵シードＳiに適用することによって生成される。
【００４４】
図１１は、本発明の一実施形態によるデュアルレイヤスライスベースの優先度付きセキュアビデオストリーミングの鍵構造を示すブロック図である。図１１は、間隔の鍵シード間の関係並びに各間隔のマスタ鍵、第１の鍵、及び第２の鍵の間の関係を示す。間隔ｉ−１、ｉ、及びｉ＋１の鍵シードは、それぞれ、Ｓi-1、Ｓi、及びＳi+1と表される。間隔ｉ−１、ｉ、及びｉ＋１のマスタ鍵は、それぞれ、Ｋi-1,m、Ｋi,m、及びＫi+1,mと表される。間隔ｉ−１、ｉ、及びｉ＋１の第１の鍵は、それぞれ、Ｋi-1,1、Ｋi,1、及びＫi+1,1と表される。間隔ｉ−１、ｉ、及びｉ＋１の第２の鍵は、それぞれ、Ｋi-1,2、Ｋi,2、及びＫi+1,2と表される。より早い間隔の鍵はより遅い間隔の鍵シードから導出することができるが、より遅い間隔の鍵はより早い鍵シードから導出することができない。例えば、間隔ｉ−１の鍵Ｋi-1,m、Ｋi-1,1、及びＫi-1,2は、以下のようにより遅い間隔ｉ＋１のシードから取得することができる。第２の一方向関数を間隔ｉ＋１の鍵シードＳi+1に適用することによって、間隔ｉの鍵シードＳiが得られる。第２の一方向関数を間隔ｉの鍵シードＳiに適用することによって、間隔ｉ−１の鍵シードＳi-1が得られ、第１の一方向関数を間隔ｉ−１の鍵シードＳi-1に適用することによって、間隔ｉ−１のマスタ鍵Ｋi-1,mが得られ、第１の一方向関数を間隔ｉ−１のマスタ鍵Ｋi-1,mに適用することによって、間隔ｉ−１の第１の鍵Ｋi-1,1が得られ、かつ、第１の一方向関数を間隔ｉ−１の第１の鍵Ｋi-1,1に適用することによって、間隔ｉ−１の第２の鍵Ｋi-1,2が得られる。逆に、間隔ｉ−１の鍵シードＳi-1が既知であり、より遅い間隔の鍵シードが既知でない場合、間隔ｉ−１よりも遅い間隔のマスタ鍵、第１の鍵、及び第２の鍵を導出することはできない。
【００４５】
図１２は、本発明の一実施形態による、送信器の視点からのデュアルレイヤスライスベースの優先度付きセキュアビデオストリーミングの方法を示す流れ図である。図１２に示すプロセスは、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組み合わせで実施することができる。例えば、図１２に示すプロセスは、図２の送信器２２０によって実行することができる。１２００において、間隔数（Ｎ）、間隔サイズ、第１の一方向関数（Ｆ）、及び第２の一方向関数（Ｆ’）が選択される。１２０５において、複数のマクロブロックを含む一以上のスライスが存在するか否かについて判定される。スライスが存在しない場合、プロセスは終了する。一以上のスライスが存在する場合、１２１０において、現在の間隔の有効な鍵シードが存在するか否かについて判定される。現在の間隔の有効な鍵シードが存在しない場合、最後の間隔の鍵シード（ＳN-1）が選択され、１２２０において、第２の一方向関数が適用され、それぞれの間隔における鍵シードが取得される。１２２５において、現在の間隔が決定される。１２３５において、現在のスライスが現在の間隔の最初のスライスであるか否かについて判定される。現在のスライスが現在の間隔の最初のスライスである場合、１２３０において、マスタ鍵を取得するために、現在の間隔の鍵シードに第１の一方向関数が適用され第１の鍵を取得するために、マスタ鍵に一方向関数が適用され、第２の鍵を取得するために、第１の鍵に一方向関数が適用される。１２４０において、現在の間隔の鍵シードは一以上の受信器に送信される。１２４５において、現在のスライスのヘッダが解析されて、スライスのセキュア送信の相対的な重要度の指示が取得される。マクロブロックのセキュア送信の相対的な重要度が最低である場合、スライスは暗号化されない（１２７５）。マクロブロックのセキュア送信の相対的な重要度が最低ではない場合、１２５０〜１２６５において、マクロブロックのセキュア送信の相対的な重要度の少なくとも一部分に基づいて、暗号鍵が選択される。相対的な重要度が高い場合、１２５５において、マスタ鍵が暗号鍵として選択される。相対的な重要度が中の場合、１２６０において、第１の鍵が暗号鍵として選択される。第１の鍵は、一方向関数をマスタ鍵に適用することによって導出できる。相対的な重要度が低い場合、１２６５において、第２の鍵が選択される。第２の鍵は、一方向関数を第１の鍵に適用することによって導出できる。１２７０において、選択された暗号鍵を使用してスライスが暗号化される。暗号化されたスライスは一以上の受信器に送信することができる。
【００４６】
図１３は、本発明の一実施形態による、受信器の視点からのデュアルレイヤスライスベースの優先度付きセキュアビデオストリーミングの方法を示す流れ図である。図１３に示すプロセスは、ハードウェア、ソフトウェア、ファームウェア、又はこれらの組み合わせで実施することができる。例えば、図１３に示すプロセスは、図２の受信器２３０によって実行することができる。１３００において、間隔数（Ｎ）、間隔サイズ、第１の一方向関数（Ｆ）、及び第２の一方向関数（Ｆ’）が取得される。一以上のパラメータは送信器から取得することができる。１３０５において、複数のマクロブロックを含む一以上のスライスが存在するか否かについて判定される。スライスが存在しない場合、プロセスは終了する。一以上のスライスが存在する場合、１３２０において、鍵シードを含むパケットを受信したか否かについて判定される。鍵シードを含むパケットを受信している場合、１３１５において、鍵シードが新しいか否かについて判定される。鍵シードが新しくない場合、１３１０において、鍵シードは破棄される。鍵シードが新しい場合、１３２５において、第２の一方向関数を先に受信した鍵シードにそれぞれ適用することによってそれまでは利用可能ではなかった前の間隔のすべての鍵シードが決定される。また、１３２５において、導出された鍵シードのそれぞれの、マスタ鍵、第１の鍵、及び第２の鍵が決定される。１３３５において、必要な鍵が利用できなかったことに起因してバッファリングされていたスライスが復号化される。
【００４７】
１３２０において鍵シードパケットがない場合、１３３０において、現在の間隔が決定される。１３４０において、現在の間隔のマスタ鍵、第１の鍵、及び第２の鍵が利用可能であるか、又は現在利用可能な鍵シードから導出できるか否かについて判定される。現在の間隔のマスタ鍵、第１の鍵、及び第２の鍵が利用可能でもなく、かつ、現在利用可能な鍵シードから導出できない場合、１３５０において、受信器が現在の間隔のマスタ鍵、第１の鍵、及び第２の鍵を受信又は導出するまで、スライスがバッファリングされる。現在の間隔のマスタ鍵、第１の鍵、及び第２の鍵が利用可能であるか、又は、現在利用可能な鍵シードから導出できるかのいずれかである場合、１３５５において、スライスのヘッダがマスタ鍵を使用して復号化される。ヘッダ内の指示に基づいて、マクロブロックのセキュア送信の相対的な重要度が最低である場合、スライスは復号化されない（１３８５）。マクロブロックのセキュア送信の相対的な重要度が最低ではない場合、１３６０〜１３７５において、マクロブロックのセキュア送信の相対的な重要度の、ヘッダ内の指示の少なくとも一部分に基づいて、復号鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が高い場合、１３６５において、マスタ鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が中である場合、１３７０において、第１の鍵が選択される。マクロブロックのセキュア送信の相対的な重要度が低い場合、１３７５において、第２の鍵が選択される。１３８０において、スライスは選択された復号鍵を使用して復号化される。復号化されたスライスは、記憶するため又は一以上のアプリケーションによって使用するために送信することができる。
【００４８】
本発明の実施形態及び応用例を図示及び説明したが、本明細書における本発明の概念から逸脱せずに、前述したものよりも多くの変更が可能であることが本開示の恩恵を受ける当業者には明らかである。したがって、本発明は添付の特許請求の範囲の精神内以外では制限されるべきではない。
【符号の説明】
【００４９】
１００  コンピュータシステム
１０２  バス
１０４  プロセッサ
１０６  内部メモリ
１０８  Ｉ／Ｏコントローラ
１１０  表示画面
１１２  ディスプレイアダプタ
１１４  ローラ
１１６  ジョイスティック
１１８  数字キーボード、英数字キーボード
１２０  無線ネットワークインタフェース
１２２  リムーバブルメモリ
１２６  方向ナビゲーションパッド
１２８  有線ネットワークインタフェース
【図１】
2009303211.tif 000003
【図２】
2009303211.tif 000004
【図３】
2009303211.tif 000005
【図４】
2009303211.tif 000006
【図６】
2009303211.tif 000007
【図７】
2009303211.tif 000008
【図８】
2009303211.tif 000009
【図９】
2009303211.tif 000010
【図１０】
2009303211.tif 000011
【図１１】
2009303211.tif 000012
【図１２】
2009303211.tif 000013
【図１３】
2009303211.tif 000014
【図５Ａ】
2009303211.tif 000015
【図５Ｂ】
2009303211.tif 000016
【図５Ｃ】
2009303211.tif 000017
【外国語明細書】
2009303211.tif 000018
2009303211.tif 000019
2009303211.tif 000020
2009303211.tif 000021
2009303211.tif 000022
2009303211.tif 000023
2009303211.tif 000024
2009303211.tif 000025
2009303211.tif 000026
2009303211.tif 000027
2009303211.tif 000028
2009303211.tif 000029
2009303211.tif 000030
2009303211.tif 000031
2009303211.tif 000032
2009303211.tif 000033
2009303211.tif 000034
2009303211.tif 000035
2009303211.tif 000036
2009303211.tif 000037
2009303211.tif 000038
2009303211.tif 000039
2009303211.tif 000040
2009303211.tif 000041
2009303211.tif 000042
2009303211.tif 000043
2009303211.tif 000044
2009303211.tif 000045
2009303211.tif 000046
2009303211.tif 000047
2009303211.tif 000048
2009303211.tif 000049
2009303211.tif 000050
2009303211.tif 000051
2009303211.tif 000052
2009303211.tif 000053
【図１】
2009303211.tif 000054
【図２】
2009303211.tif 000055
【図３】
2009303211.tif 000056
【図４】
2009303211.tif 000057
【図５Ａ】
2009303211.tif 000058
【図５Ｂ】
2009303211.tif 000059
【図５Ｃ】
2009303211.tif 000060
【図６】
2009303211.tif 000061
【図７】
2009303211.tif 000062
【図８】
2009303211.tif 000063
【図９】
2009303211.tif 000064
【図１０】
2009303211.tif 000065
【図１１】
2009303211.tif 000066
【図１２】
2009303211.tif 000067
【図１３】
2009303211.tif 000068