(57)【要約】【課題】安全なコンテンツ送達のための通信システム、ユーザー装置、コンテンツ源および方法を提供する。【解決手段】ネットワークを通じてコンテンツ源からチャンクに分割されたデータを要求し、受領するよう構成されたユーザー装置であって、当該装置は：前記コンテンツ源への安全な経路を確立するとともに前記コンテンツ源への安全でない経路を確立するよう構成されたネットワーク・モジュールと；データの次のチャンクが必要とされることを判別し、データの該次のチャンクが保護されるかどうかを判定するよう構成された判定モジュールと；データの前記次のチャンクを要求し、受領するよう構成された要求モジュールであって、データの前記次のチャンクが保護されていない場合にはデータの前記次のチャンクは前記安全でない経路を介して要求され、受領される、要求モジュールとを有する、ユーザー装置。【選択図】図４
2017108400.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを通じてコンテンツ源からチャンクに分割されたデータを要求し、受領するよう構成されたユーザー装置であって、当該装置は：
前記コンテンツ源への安全な経路を確立するとともに前記コンテンツ源への安全でない経路を確立するよう構成されたネットワーク・モジュールと；
データの次のチャンクが必要とされることを判別し、データの該次のチャンクが保護されるかどうかを判定するよう構成された判定モジュールと；
データの前記次のチャンクを要求し、受領するよう構成された要求モジュールであって、データの前記次のチャンクが保護されていない場合にはデータの前記次のチャンクは前記安全でない経路を介して要求され、受領される、要求モジュールとを有する、
ユーザー装置。
【請求項２】
データの前記次のチャンクが保護されている場合にはデータの前記次のチャンクは前記安全な経路を介して要求され、受領される、請求項１記載のユーザー装置。
【請求項３】
前記要求モジュールは、前記安全な経路を介して前記コンテンツ源から許諾を要求し、許諾が与えられたときに、前記安全な経路を介して前記コンテンツ源から許諾トークンを受領するよう構成されており、
前記要求モジュールはさらに、許諾が与えられたときに、前記許諾トークンを使って前記安全でない経路を介してデータの保護されたチャンクを要求し、受領するよう構成されている、
請求項１記載のユーザー装置。
【請求項４】
許諾が与えられたとき、前記要求モジュールは、前記コンテンツ源と公開鍵・秘密鍵対をネゴシエーションするよう構成されており、
前記要求モジュールは、公開鍵を使って暗号化されたデータのチャンクを要求し、受領するよう構成されており、
当該ユーザー装置はさらに、
秘密鍵を使って、データの受領された暗号化されたチャンクを解読するよう構成された組み合わせモジュールを有する、
請求項３記載のユーザー装置。
【請求項５】
前記判定モジュールは、ストリーミング・プロトコルを使ってデータの前記次のチャンクが保護されているかどうかを判定するよう構成されており、前記ストリーミング・プロトコルは、データの保護されたチャンクのリストを含む、請求項１ないし４のうちいずれか一項記載のユーザー装置。
【請求項６】
前記要求モジュールは、データの前記次のチャンクが前記安全でない経路を介して要求されるときにエラー・メッセージが受領される場合に、データの前記次のチャンクを前記安全な経路を介して要求するよう構成されている、請求項１ないし５のうちいずれか一項記載のユーザー装置。
【請求項７】
前記要求モジュールが、前記安全な経路を介して前記コンテンツ源からコンテンツ・ハッシュ鍵を受領し、データのチャンクが前記安全でない経路を介して受領されるときは前記コンテンツ・ハッシュ鍵を使ってデータの受領されたチャンクの完全性を検査するよう構成されている、請求項１ないし６のうちいずれか一項記載のユーザー装置。
【請求項８】
前記データがデータのエンコードされたチャンクと、一つまたは複数のデコード・テーブルとを含み、前記デコード・テーブルはデータの保護されたチャンクであり、データの前記エンコードされたチャンクはデータの保護されていないチャンクである、請求項１ないし７のうちいずれか一項記載のユーザー装置。
【請求項９】
ネットワークを通じてコンテンツ源からチャンクに分割されたデータを要求し、受領する、ユーザー装置における方法であって、当該方法は：
前記コンテンツ源への安全な経路を確立するとともに前記コンテンツ源への安全でない経路を確立し；
データの次のチャンクが必要とされることを判別し、データの該次のチャンクが保護されるかどうかを判定し；
データの前記次のチャンクを要求し、受領することを含み、
データの前記次のチャンクが保護されていない場合にはデータの前記次のチャンクは前記安全でない経路を介して要求され、受領される、
方法。
【請求項１０】
ユーザーにデータを送達するよう構成されたコンテンツ源装置であって、当該装置は：
前記ユーザーへの安全な経路を確立するとともに前記ユーザーへの安全でない経路を確立するよう構成されたネットワーク・モジュールと；
前記データを二つ以上のチャンクに分割するよう構成された分割モジュールと；
データのチャンクを、保護されているまたは保護されていないとしてマークするよう構成された分類器モジュールと；
データのチャンクに対する要求を受信し、データの該チャンクを送信するよう構成された入出力モジュールとを有しており、
データの前記チャンクは、データの前記チャンクが保護されていない場合には、前記安全でない経路を介して送信される、
コンテンツ源装置。
【請求項１１】
前記入出力モジュールは、前記安全な経路を介して前記ユーザーから許諾要求を受領し、前記安全な経路を介して前記ユーザーに許諾トークンを送信することによって前記ユーザーに許諾するよう構成されており、
前記入出力モジュールはさらに、許諾が与えられたときには、データの保護されたチャンクを、データの該チャンクが前記許諾トークンを使って要求されるときには、前記安全でない経路を介して送信するよう構成されている、
請求項１０記載のコンテンツ源装置。
【請求項１２】
許諾が与えられたとき、前記入出力モジュールは、前記ユーザーと公開鍵・秘密鍵対をネゴシエーションするよう構成されており、
前記分類器モジュールは、公開鍵を使ってデータのチャンクを暗号化するよう構成されており、
前記入出力モジュールは、公開鍵を使って要求されたときに、データの暗号化されたチャンクを前記ユーザーに送信するよう構成されている、
請求項１１記載のコンテンツ源装置。
【請求項１３】
前記入出力モジュールは、データのチャンクに対する要求を受領し、データのチャンクを送信するのを、前記安全な経路および前記安全でない経路を介して同時に行なうよう構成されている、請求項１０ないし１２のうちいずれか一項記載のコンテンツ源装置。
【請求項１４】
前記入出力モジュールは、データのチャンクの完全性を検査するためのコンテンツ・ハッシュ鍵を前記安全な経路を介して前記ユーザーに送信するよう構成されている、請求項１０ないし１３のうちいずれか一項記載のコンテンツ源装置。
【請求項１５】
前記分類器モジュールは、データのすべての低重要度チャンクを保護されていないとしてマークし、および／またはデータのすべての高重要度チャンクを保護されているとしてマークするよう構成されている、請求項１０ないし１４のうちいずれか一項記載のコンテンツ源装置。
【請求項１６】
前記分類器モジュールは、データのn番目毎のチャンクを保護されているとしてマークし、データの他のすべてのチャンクを保護されていないとマークすることによって、保護されているまたは保護されていないとしてまだマークされていないデータのチャンクを薄めるよう構成されている、請求項１５記載のコンテンツ源装置。
【請求項１７】
ユーザーにデータを送達する、コンテンツ源装置における方法であって、当該方法は：
前記ユーザーへの安全な経路を確立するとともに前記ユーザーへの安全でない経路を確立し；
前記データを二つ以上のチャンクに分割し；
データのチャンクを、保護されているまたは保護されていないとしてマークし；
データのチャンクに対する要求を受信し、データの該チャンクを送信することを含み、
データの前記チャンクは、データの前記チャンクが保護されていない場合には、前記安全でない経路を介して送信される、
方法。
【請求項１８】
ユーザー装置およびコンテンツ源装置を有する通信システムが提供であって、前記ユーザー装置は安全な経路を介しておよび安全でない経路を介して前記コンテンツ装置に接続され、
前記コンテンツ源装置は、データをデータの二つ以上のチャンクに分割し；データのチャンクを、保護されているまたは保護されていないとしてマークし；データのチャンクに対する要求をユーザーから受信し、該データをユーザーに送達するよう構成されており、
前記ユーザー装置は、データの次のチャンクが必要とされるかどうかを判定し、データの該次のチャンクが保護されるかどうかを判定し；データの該次のチャンクが保護されていない場合にはデータの前記次のチャンクを前記安全でない経路を介して要求し、受領するよう構成されている、
通信システム。
【請求項１９】
前記安全でない経路は、データの一つまたは複数のチャンクをキャッシュするキャッシュを含み、前記ユーザー装置は、前記キャッシュを介して前記コンテンツ源装置に接続され、
前記キャッシュは、保護されていないデータのチャンクを前記コンテンツ源装置から要求し、受領するとともに、それらのデータのチャンクを前記ユーザー装置からの要求に応答して前記ユーザー装置に送信するよう構成されている、
請求項１８記載の通信システム。
【請求項２０】
通信システムにおいて使う方法であって、
コンテンツ源がデータをデータの二つ以上のチャンクに分割し；データのチャンクを、保護されているまたは保護されていないとしてマークし；データのチャンクに対する要求をユーザーから受信し、該データをユーザーに送達することと、
ユーザーが、データの次のチャンクが必要とされるかどうかを判定し、データの該次のチャンクが保護されるかどうかを判定し；データの該次のチャンクが保護されていない場合にはデータの前記次のチャンクを安全でない経路を介して要求し、受領することを含む、
方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、権利保護を必要とするコンテンツがコンテンツ源からユーザー装置に送達される通信システムおよび方法に関する。通信システムおよび方法は、ネットワークじゅうでのデータをキャッシュする技法を利用する信頼されないネットワークにおいて使用されてもよい。
【背景技術】
【０００２】
コンテンツをキャッシュすることは、遠隔通信ネットワークの効率的な運用において重要な技法である。キャッシング、すなわちソースからユーザーまでに取る経路に沿って（または該経路の近くで）ネットワーク内でデータを記憶することは、コンテンツ源とユーザーとの間の経路のその部分に沿って同じデータの複数回送信を回避することによって、コンテンツを送達するために必要とされる全資源を低減する。キャッシングによって得られる資源節約は、キャッシュがユーザーに近いほど増すので、ネットワーク資源効率の観点から、たいていの有効なキャッシュはユーザーに近い、ネットワーク・エッジに位置される。
【０００３】
ネットワーク・マネージャのねらいは、これらのエッジ近くのキャッシュをできるだけ使うことである。しかしながら、コンテンツが不正なアクセスから保護されることも必要であり、よっていつでもエッジ近くのキャッシュを使うことはできない。
【０００４】
ネットワークを通じて送達されているコンテンツの多くは権利管理の対象であり、コンテンツ所有者はある種のユーザーに対してコンテンツへのアクセスを制約し、あらゆるユーザーに対するオープン・アクセスを許容しないことを望む。これは、コンテンツ所有者が、ネットワーク内にキャッシュされた（またはキャッシュなしで安全でない経路を介して送られた）コンテンツがあればそれも含めてあらゆる源からの当該コンテンツの送達に対してコントロールをはたらかせる必要があることを意味する。たいていのネットワーク・キャッシュはアクセス・ポリシーを適用することはできないので、保護されたコンテンツは一般にはキャッシュされず、各ユーザーのためにネットワークを通じて伝送される。これは、ネットワークの資源の非効率的な使用につながる。
【０００５】
保護されたコンテンツのキャッシングを許容する一つの手法は、コンテンツ送達ネットワーク（CDN:  Content  Delivery  Network）によって例示される。CDNは、ネットワーク内にコンテンツ所有者のサービスの代理を配置する。これらの代理はコンテンツ所有者に代わって行動し、コンテンツをキャッシュすることによって保護されたコンテンツの送達を最適化する。代理は、キャッシング以外のサービスも提供する。許諾および会計を含むこれらの追加的サービスは、許諾されているユーザーに対して保護されたコンテンツを送達するために、コンテンツ所有者がCDNを信頼できるようにする。CDNは通例、ネットワーク・プロバイダーとコンテンツ所有者との間の正式な法的取り決めによって裏付けられる。
【０００６】
CDNはコンテンツ送達を最適化することに有効であり、ネットワークの効率的な運用にとって本質的である。しかしながら、ユーザー許諾のために必要とされる通信など代理システムの複雑さおよび正式な法的取り決めの必要のため、その実装の範囲は限られる。通例、ネットワーク内にはCDN代理の若干数のインスタンスしかなく、よってそれらはネットワーク・エッジから遠くに位置される。つまり、コンテンツ送達の最適化のためにはまだ大きな余地が残っている。
【０００７】
ユーザーに許諾し、コンテンツへのアクセスを許容するための標準的な技法は、下記でハイライトされる従来技術において明かされるように、コンテンツ所有者によるトークンの生成に関わる。これらのトークンは、キャッシュされたコンテンツにアクセスする権利を請求するためにユーザーによってキャッシュに提示される。つまり、コンテンツ所有者とCDNキャッシュとの間に信頼関係がある必要がある。さらに、CDNキャッシュは所有者トークンの形式および意味を理解しなければならず、所有者はトークンを正しく処理するためにキャッシュを信頼しなければならない。
【０００８】
CDNにおけるコンテンツ・キャッシングは、効率的にコンテンツを送達するという問題に対して部分的な解決策を提供する。CDNキャッシュはコンテンツ所有者のサーバーよりユーザーに近く位置されるが、それでもCDNとユーザーとの間にはネットワークの大きな部分がある。これは、ネットワーク相互接続性がユーザーに近いほど低下し、ネットワークが、領域間でほとんど接続性のない孤立した諸領域へと分岐する数学的な（有向）木の特性を帯びるためである。葉（ユーザー）の近くにこれらの領域が多くあり、よってこれらの領域のすべてに高度に管理されたCDNキャッシュを配置することのコストは膨大である。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、キャッシングの経済は、ネットワーク・エッジの非常に近くに単純で、軽く管理されるキャッシュを配置する意義があるほど十分有効である。実際、いくつかの新たなネットワーク・アーキテクチャーはすべてのネットワーク・スイッチにおける単純なキャッシュの配置を提案している。これらのキャッシュが活用できれば、保護されたコンテンツの送達は、大幅に向上するであろう。これらのキャッシュは、現状技術を使って活用することはできない。ユーザー許諾を管理するための必要とされるソフトウェアがないからである。これらのキャッシュは、コンテンツ所有者とは何の関係もない者によってコントロールされ、アクセスされることがあり、よってコンテンツ所有者によって信頼されない。
【００１０】
軽く管理されるキャッシュに関する一つの追加的な問題は、コンテンツが伝送の間に、可能性としては悪意をもって、改変される可能性である。現状技術では、コンテンツ完全性は二つの方法で保証される。第一に、接続自身が保護され、それにより該接続を通じて転送されるいかなるデータも改変できない。しかしながら、この技法は各ユーザーのアクセスのために相異なる接続を必要とし、よってコンテンツをキャッシュする能力を除去する。あるいはまた、コンテンツ所有者は、可能性としてはコンテンツ源とコンテンツ消費者との間で共有される秘密をもってコンテンツから導出されたトークン（たとえばハッシュ）を送ることができる。消費者は、完全性を判定するために、トークンを受信されたコンテンツと突き合わせて試験することができる。しかしながら、オープン・キャッシュおよび複数ユーザーは、トークンおよびコンテンツの両方が途上で修正されることがありうるので、この技法が実現可能ではないことを意味する。
【課題を解決するための手段】
【００１１】
本発明の実施形態は、権利保護を要するコンテンツを、信頼されないネットワークを通じてユーザーに送達するための新たな手法を考える。本方法は、コンテンツが二つ以上のストリームに分割され、コンテンツを使うためにはすべてのストリームへのアクセスが必要とされる技法に立脚する。本発明の諸実施形態において、ストリームの少なくとも一つが、権利主張および完全性検査を許容するために保護されたチャネルを通じて送達されうる。コンテンツのバルクを表わす残りのストリーム（単数または複数）は、保護されないが資源効率のよいチャネルを通じて送達されてもよい。
【００１２】
本発明の諸実施形態は、コンテンツをストリームに分割するための二つの新たな方式を提案する。ストリームの少なくとも一つは低容量〔ボリューム〕をもち、ストリームの大半または全部がコンテンツ使用のために必要とされる。
【００１３】
さらに、本発明の実施形態は、ネットワークじゅうでのキャッシング機構の使用を可能にすることができる。上記で論じたように、現状技術によってはネットワーク・エッジに近い単純なキャッシュを活用することができない。コンテンツが許諾されたユーザーのみに送達され、ユーザーが意図されるコンテンツを受領することの保証がないからである。本発明の実施形態は、この問題を克服しようとするものであり、ネットワークじゅうでのコンテンツのキャッシングを許容する。これはネットワーク使用の効率を高め、ユーザーに対してよりよいサービスを与える。ネットワークじゅうで利用可能なすべてのキャッシュにおける保護されたコンテンツのコンテンツ・キャッシングの広範な使用を許容することが望ましい。これはネットワーク資源使用の効率を高める。
【００１４】
本発明のある側面のある実施形態によれば、ネットワークを通じてコンテンツ源からチャンクに分割されたデータを要求し、受領するよう構成されたユーザー装置であって、当該装置は：前記コンテンツ源への安全な経路を確立するとともに前記コンテンツ源への安全でない経路を確立するよう構成されたネットワーク・モジュールと；データの次のチャンクが必要とされることを判別し、データの該次のチャンクが保護されるかどうかを判定するよう構成された判定モジュールと；データの該次のチャンクを要求し、受領するよう構成された要求モジュールであって、データの該次のチャンクが保護されていない場合にはデータの前記次のチャンクは前記安全でない経路を介して要求され、受領される、要求モジュールとを有する装置が提供される。
【００１５】
ユーザー装置は、ユーザーまたはコンテンツ消費者と称されることもある。
【００１６】
ユーザー装置は、チャンクに分割されたコンテンツをコンテンツ源から要求し、受領する。データのチャンクは、ユーザー装置によって、保護されているまたは保護されていないと判定される。保護されているまたは保護されていないとしてのデータのチャンクの状態が、該データのチャンクが安全な経路または安全でない経路のどちらを介して要求され、受領されるかを決定する。データの前記次のチャンクが保護されていないと判定される場合には、安全でない経路を介して要求され、受領される。本発明のある好ましい実施形態では、データの前記次のチャンクが保護されている場合には、データの前記次のチャンクは安全な経路を介して要求され、受領される。
【００１７】
データのチャンクは、たとえば、コンテンツが使われるためにはすべてのチャンクが必要とされるような仕方または保護されたチャンクなしでは保護されていないチャンクが使用できないような仕方で分割され、範疇分けされる。こうして、データの保護されていないチャンクは、許諾されていないユーザーにとってその内容が利用可能であったとしても問題ないので、安全でない経路を介してユーザーに送達されてもよい。
【００１８】
データのチャンクとは、コンテンツ源からユーザーに転送されるべきコンテンツまたはデータの任意の片またはセグメントを指しうる。よって、データのチャンクは、コンテンツ／データの片／セグメントと称されることもある。データが分割されてできるチャンクまたは片のサイズおよび数は、たとえばコンテンツの量、ネットワーク、コンテンツ源、ユーザー装置などといったいくつもある要因に依存しうる。
【００１９】
データのチャンクの状態は、コンテンツ源によって保護されているまたは保護されていないとして設定される。保護されているまたは保護されていないとしてのデータのチャンクの割り当ては、たとえばコンテンツの型、暗号化方法、データ量、フレーム数、コンテンツの重要性などといったいくつかの要因に依存する。代替的または追加的に、データのチャンクは薄められて、データのn番目毎のチャンクが保護されているとしてマークされ、保護されていると考えられ、データの残りのチャンクは保護されていないとマークされてもよい。
【００２０】
安全な（secure）経路とは、安全であるとわかっているおよび／またはコンテンツ源によって信頼される（コンテンツ源とユーザーとの間の）接続である。すなわち、コンテンツ源（またはコンテンツ所有者）は、コンテンツが許諾されたユーザーにしか送達されないことおよびユーザーが意図されたコンテンツを受領することを信頼する。安全な経路は、コンテンツ所有者の権利を保証し、コンテンツが意図され、許諾されたユーザーに送達されるまたはかかるユーザーによってアクセスされるのみであることを確実にする。逆に、安全でない（unsecure）経路は、安全でないおよび／またはコンテンツ源によって信頼されない接続であり、よってコンテンツ所有者の権利が保証されることができない。
【００２１】
代替的な構成では、前記要求モジュールは、前記安全な経路を介してコンテンツ源から許諾を要求し、許諾が与えられたときに、前記安全な経路を介して前記コンテンツ源から許諾トークンを受領するよう構成されている。前記要求モジュールはさらに、許諾が与えられたときに、前記許諾トークンを使って前記安全でない経路を介してデータの保護されたチャンクを要求し、受領するよう構成される。こうして、前記安全な経路はユーザー装置によって、コンテンツ源との許諾を確立し、コンテンツ源から許諾トークンを受領するために使われてもよい。許諾トークンはたとえば、ハッシュであってもよい。前記安全な経路を介した許諾トークンの転送は、正しいユーザー装置がそれを受領することおよびそれが修正されていないことを保証し、トークンの完全性が保証される。
【００２２】
ひとたびユーザー装置の許諾が確立されたら、許諾トークンは、データのチャンクを、保護されたものも保護されていないものも、安全でない経路を介して要求し、受領するために使用されうる。許諾トークンは安全であり、たとえばある種のコンテンツへのアクセスを制限することができる。トークンは、アクセスを、該トークンが発行されたユーザーに限定してもよい。他の基準、たとえば継続時間（たとえばある時間後に無効）または位置（たとえば特定の位置で提示された場合にのみ有効）に関して限定してもよい。したがって、許諾トークンは、コンテンツ所有者の権利を保証し、データの保護されたチャンクが許諾されていないユーザーによってアクセスされないことを保証するために使用されうる。許諾トークンは事実上、安全な経路の代替として見ることができる。よって、安全な経路は、コンテンツ転送の継続期間にわたって維持される必要はない。初期許諾および許諾トークンの受領後は、安全な経路は解放されてもよい。
【００２３】
さらに、許諾が与えられたとき、前記要求モジュールは、コンテンツ源と公開鍵・秘密鍵対をネゴシエーションするよう構成されていることが好ましい。前記要求モジュールは、公開鍵を使ってデータの暗号化されたチャンクを要求し、受領するよう構成される。ユーザー装置はさらに、秘密鍵を使って、データの受領された暗号化されたチャンクを解読するよう構成された組み合わせモジュールを有する。公開鍵・秘密鍵対はデータの保護されたチャンクを暗号化し、よってさらなる安全性を提供するために使われてもよい。初期許諾期間の間、ユーザーは安全な経路を介して許諾を要求する。ひとたび許諾が与えられたら、ユーザー装置は公開鍵・秘密鍵対をネゴシエーションする。公開鍵は次いで、安全でない経路を介してデータの保護されたチャンクを要求するための許諾トークンとして使われてもよい。データの保護されたチャンクは、安全でない経路を介してユーザーに転送される前に、公開鍵を使ってコンテンツ源によって暗号化されてもよい。次いで、データの保護されたチャンクを復号するために、秘密鍵がユーザー装置によって使われてもよい。それらの保護されたチャンクは次いで、データの保護されていないチャンクと組み合わされることができる。ひとたびユーザー装置が公開鍵・秘密鍵対をネゴシエーションしたら、安全な経路は、コンテンツ転送の残りの継続期間にわたって必要とされず、よって初期許諾期間後に解放されてもよい。
【００２４】
前記判定モジュールは、ストリーミング・プロトコルを使ってデータの次のチャンクが保護されているかどうかを判定してもよい。ストリーミング・プロトコルは、データの保護されたチャンクのリストを含む。ストリーミング・プロトコルは、たとえばネットワーク、ストリーミングされるコンテンツおよび／またはコンテンツ源に依存する標準的なメディア・ストリーミング・プロトコルであってもよい。ストリーミング・プロトコルは、データの次のチャンクが必要とされるかどうかおよびデータの次のチャンクが保護されているか保護されていないかを判定するために使われてもよい。たとえば、標準的なストリーミング・プロトコルに含まれるマニフェスト・ファイル（manifest  file）が、データの保護されたチャンクを示す情報を含むよう拡張されてもよい。
【００２５】
ある好ましい実施形態では、前記要求モジュールは、データの前記次のチャンクが安全でない経路を介して要求されるときにエラー・メッセージが受領される場合に、データの前記次のチャンクを安全な経路を介して要求するよう構成される。ユーザーが、安全でない経路を介してなされたデータの前記次のチャンクについての要求に応答してエラー・メッセージを受領する場合、データの前記次のチャンクは、ユーザー装置によって、保護されていないとして誤って判定されたことがありうる。したがって、データのチャンクが保護されており、よって安全な経路を介して要求され、受領されるべきであると想定されてもよい。同様に、データの保護されていないチャンクに対する要求が安全な経路を介してなされた場合にエラー・メッセージが返されることがある。安全な経路を介してデータの前記次のチャンクが要求されたときにエラー・メッセージが返される場合には、前記要求モジュールは、データの前記次のチャンクを、安全でない経路を介して要求してもよい。
【００２６】
好ましくは、前記要求モジュールは、データのチャンクを、安全な経路および安全でない経路を介して同時に要求し、受領するよう構成される。すなわち、データのチャンクは、ユーザー装置による要求により両方の経路を通じて同時に要求され、受領されてもよい。
【００２７】
発明実施形態によれば、前記要求モジュールが、安全な経路を介してコンテンツ源からコンテンツ・ハッシュ鍵を受領し、データのチャンクが安全でない経路を介して受領されるときは前記コンテンツ・ハッシュ鍵を使ってデータの受領されたチャンクの完全性を検査するよう構成される。コンテンツ完全性は、コンテンツ・ハッシュ鍵を使って保証されうる。ハッシュ鍵が修正されないことを保証するために、ハッシュ鍵は安全な経路を介してユーザー装置によって受領される。
【００２８】
好ましくは、ユーザー装置はさらに：コンテンツ源から受領されたデータの諸チャンクを組み合わせるよう構成された組み合わせモジュールを有する。データの受領されたチャンクは、保護されたものも保護されていないものも、使用のためにユーザー装置によって適切な順序に組み合わされうる。
【００２９】
コンテンツ源とユーザーとの間の安全な経路および安全でない経路は、直接であっても間接であってもよい。たとえば、安全でない経路は、その経路に沿ってデータをキャッシュするための一つまたは複数のキャッシュを含んでいてもよい。安全な経路も一つまたは複数のキャッシュを含んでいてもよいが、経路が安全であるために、これらのキャッシュは、コンテンツ源によって信頼されるおよび／またはコントロールされるものでなければならない。CDN代理もキャッシュの形と考えられてもよく、安全な経路に含められてもよい。しかしながら、安全な（secure）経路はユーザー装置とコンテンツ源との間の直接経路であることが好ましい。
【００３０】
ユーザー装置によってコンテンツ源から要求され、受領されるデータは、いかなる適切なデータであってもよい。好ましい実施形態では、データは、キー・フレームおよびデルタ・フレームを含むビデオ・データであり、キー・フレームはデータの保護されたチャンクであり、デルタ・フレームはデータの保護されていないチャンクである。あるいは逆でもよい。ビデオ・コンテンツは、通例キー・フレームまたはデルタ・フレームのいずれかとして定義されるいくつかのフレームを含む。各フレームまたは設定された数のフレームがデータのチャンクと考えられてもよく、コンテンツ源によって保護されたまたは保護されていないとして割り当てられてもよい。保護されたまたは保護されていないとしてのフレームの割り当ては、たとえば、フレームのサイズまたはフレームの重要性に依存してもよい。
【００３１】
ビデオ・データはさらに、Iフレーム、BフレームおよびPフレームとして範疇分けされてもよい。ここで、キー・フレームはIフレームであり、デルタ・フレームはBフレームおよびPフレームである。こうして、Iフレームはデータの保護されたチャンクとして割り当てられてもよく、BフレームおよびPフレームはデータの保護されていないチャンクとして割り当てられてもよい。あるいは逆でもよい。
【００３２】
代替的または追加的に、データは、データのエンコードされたチャンクと、一つまたは複数のデコード・テーブルとを含んでいてもよい。ここで、デコード・テーブルはデータの保護されたチャンクであり、データのエンコードされたチャンクはデータの保護されていないチャンクである。データのチャンクは、コンテンツ源によって圧縮され、エンコードされてもよく、ユーザー装置はデータをデコードしてもとのコンテンツを再構成するためにデコード・テーブルを必要とする。データの各チャンクはデコード・テーブルを使ってエンコードされてもよく、データの各チャンクについてのデコード・テーブルは異なっていてもよく、あるいはデータの他のチャンクについてのデコード・テーブルと同じであってもよい。次いで、データのエンコードされたチャンクは、データの保護されていないチャンクとして割り当てられてもよく、結果として、安全でない経路を介して要求され、受領されることができる。デコード・テーブルはデータの保護されたチャンクとして割り当てられてもよく、安全な経路を介して要求され、受領される。あるいはまた、データのエンコードされたチャンクはデータの保護されたチャンクであってもよく、デコード・テーブルがデータの保護されていないチャンクであってもよい。
【００３３】
対応する方法実施形態では、ネットワークを通じてコンテンツ源からチャンクに分割されたデータを要求し、受領する、ユーザー装置における方法であって、当該方法は：前記コンテンツ源への安全な経路を確立するとともに前記コンテンツ源への安全でない経路を確立し；データの次のチャンクが必要とされることを判別し、データの該次のチャンクが保護されるかどうかを判定し；データの該次のチャンクを要求し、受領することを含み、データの該次のチャンクが保護されていない場合にはデータの前記次のチャンクは前記安全でない経路を介して要求され、受領される方法が提供される。
【００３４】
発明実施形態は、上記で定義したユーザー装置と独立にまたは該ユーザー装置との関連で使用されることができるコンテンツ源装置にも及ぶ。こうして、本発明のあるさらなる側面のある実施形態では、ユーザーにデータを送達するよう構成されたコンテンツ源装置であって、当該装置は：前記ユーザーへの安全な経路を確立するとともに前記ユーザーへの安全でない経路を確立するよう構成されたネットワーク・モジュールと；前記データを二つ以上のチャンクに分割するよう構成された分割モジュールと；データのチャンクを、保護されているまたは保護されていないとしてマークするよう構成された分類器モジュールと；データのチャンクに対する要求を受信し、データの該チャンクを送信するよう構成された入出力モジュールとを有しており、データの前記チャンクは、データの前記チャンクが保護されていない場合には、安全でない経路を介して送信される、装置が提供される。ある好ましい実施形態では、データのチャンクに対する前記要求は前記ユーザーから受領され、データの前記チャンクは、前記要求が適切な経路を介して受信されていれば、その後、前記ユーザーに送信されてもよい。いくつかの実施形態では、前記要求は、キャッシュからまたはキャッシュを介して受信されてもよく、データの前記チャックはその後、前記キャッシュにまたは前記キャッシュを介して送信されてもよい。
【００３５】
コンテンツ源は、コンテンツをいくつかのチャンクに分割し、ユーザーからのデータの諸チャンクに対する諸要求を、安全な経路および安全でない経路を介して受領する。データのチャンクは、保護されているまたは保護されていないとして、典型的にはコンテンツ源によって割り振られ、データのチャンクの状態が、該データのチャンクが安全な経路または安全でない経路のどちらを介してユーザーに転送されるかを決定する。データのチャンクが保護されておらず、安全でない経路を介して要求された場合には、安全でない経路を介してユーザーに送信される。本発明のある好ましい実施形態では、データのチャンクが保護されている場合には、データのチャンクは安全な経路を介してユーザーに送信される。
【００３６】
上記のように、データのチャンクは、たとえば、コンテンツが使われるためにはすべてのチャンクが必要とされるような仕方または保護されたチャンクなしでは保護されていないチャンクが使用できないような仕方で分割され、範疇分けされる。コンテンツ源はコンテンツ所有者とも称されることがある。
【００３７】
ある好ましい実施形態では、入出力モジュールが、安全でない経路を介して受領された、データの保護されたチャンクに対する要求を拒否するよう構成される。逆に、コンテンツ源は、安全な経路で受信された、データの保護されていないチャンクに対する要求を拒否してもよい。
【００３８】
ある代替的な実施形態では、入出力モジュールは、安全な経路を介してユーザーから許諾要求を受領し、安全な経路を介してユーザーに許諾トークンを送信することによってユーザーに許諾するよう構成される。入出力モジュールはさらに、許諾が与えられたときには、データのチャンクが許諾トークンを使って要求されるときに、データの保護されたチャンクを安全でない経路を介して送信するよう構成される。
【００３９】
このように、安全な経路は、ユーザー装置に許諾し、許諾トークンをユーザーに送信するために使用されうる。ひとたびユーザー装置の許諾が確立されたら、許諾トークンは、ユーザーによって、保護されたものでも保護されていないものでもデータのチャンクを安全でない経路を介して要求するために使われてもよく、データのチャンクは安全でない経路を介してユーザーに送信される。安全な経路は、コンテンツ転送の継続期間にわたって維持される必要はなく、初期許諾期間後に解放されてもよい。
【００４０】
さらに、許諾が与えられたとき、前記入出力モジュールは、ユーザーと公開鍵・秘密鍵対をネゴシエーションするよう構成されていてもよい。前記分類器モジュールは、公開鍵を使ってデータのチャンクを暗号化するよう構成され、前記入出力モジュールは、公開鍵を使って要求されたときに、データの暗号化されたチャンクをユーザーに送信するよう構成される。公開鍵・秘密鍵はデータのチャンクに対してさらなる安全性を提供するために使われてもよい。データのチャンクは、ユーザーに対してネゴシエーションされる前に、公開鍵を使って暗号化される。公開鍵・秘密鍵対は好ましくは安全な経路を介してユーザーに送信されてもよい。
【００４１】
前記入出力モジュールは、データのチャンクに対する要求を受領し、データのチャンクを送信するのを、安全な経路および安全でない経路を介して同時に行なうよう構成される。すなわち、データのチャンクに対する要求が受領され、データのチャンクが送信されるのが、必要に応じて同時に両方の経路を介してなされてもよい。
【００４２】
ある好ましい実施形態によれば、前記入出力モジュールは、データのチャンクの完全性を検査するためのコンテンツ・ハッシュ鍵を安全な経路を介してユーザーに送信するよう構成される。ユーザーは、コンテンツ源によって送信されたコンテンツ・ハッシュ鍵を使って、コンテンツ完全性を検査しうる。ハッシュ鍵が修正されないことを保証するために、ハッシュ鍵は安全な経路を介してユーザー装置に送信される。
【００４３】
ある好ましい実施形態では、保護されているまたは保護されていないとしてのデータのチャンクの分類は、それらのチャンクの重要性に基づく。前記分類器モジュールは、データのすべての低重要度チャンクを保護されていないとしてマークし、および／またはデータのすべての高重要度チャンクを保護されているとしてマークするよう構成される。すなわち、データのより高い優先度のチャンクはデータの保護されたチャンクとして割り振られてもよく、データのより低い優先度のチャンクは保護されていないとして割り振られてもよい。たとえば、コンテンツは、コンテンツが使われるためにはすべてのチャンクが必要とされるようにチャンクに分割されるので、データの重要なチャンクは、コンテンツが使用されるために不可欠であるデータのチャンクであってもよい。データがビデオ・データである状況では、データの高重要度チャンクは重要なシーンおよび／またはフレームであることができる。データの低重要度チャンクはたとえば、挿入された広告または最後のクレジットであってもよい。よって、チャンクが高重要度であるか低重要度であるかは、一つまたは複数の閾値および／またはデータ分類技法を使うことを含め、一つまたは複数の所定の基準によって確立される。
【００４４】
この実施形態において、（高重要度または低重要度であるために）保護されているまたは保護されていないとして自動的に割り振られないデータの残りのチャンクは、薄められてもよい。前記分類器モジュールは、たとえば、データのn番目毎のチャンクを保護されているとしてマークし、データの他のすべてのチャンクを保護されていないとマークすることによって、保護されているまたは保護されていないとしてマークされていないデータのチャンクを薄めるよう構成される。
【００４５】
ユーザー装置に関して上記で論じたように、安全な経路および安全でない経路は、直接であっても間接であってもよい。しかしながら、安全な経路はコンテンツ源とユーザー装置との間の直接経路であることが好ましい。
【００４６】
ユーザーによって要求され、ユーザーに送信されるデータは、いかなる好適なデータであってもよく、好ましい実施形態では、キー・フレームおよびデルタ・フレームを含むビデオ・データである。キー・フレームはデータの保護されたチャンクであってもよく、デルタ・フレームはデータの保護されていないチャンクであってもよく、あるいは逆でもよい。ビデオ・データはIフレーム、BフレームおよびPフレームに分割されることがあり、キー・フレームはIフレームであり、デルタ・フレームはBフレームおよびPフレームである。
【００４７】
代替的または追加的に、データは、データのエンコードされたチャンクと、一つまたは複数のデコード・テーブルとを含んでいてもよい。デコード・テーブルはデータの保護されたチャンクであってもよく、データのエンコードされたチャンクはデータの保護されていないチャンクであってもよく、あるいは逆でもよい。
【００４８】
対応する方法実施形態では、ユーザーにデータを送達する、コンテンツ源装置における方法であって、当該方法は：前記ユーザーへの安全な経路を確立するとともに前記ユーザーへの安全でない経路を確立し；前記データを二つ以上のチャンクに分割し；データのチャンクを、保護されているまたは保護されていないとしてマークし；データのチャンクに対する要求を受信し、データの該チャンクを送信することを含み、データの前記チャンクは、データの前記チャンクが保護されていない場合には、安全でない経路を介して送信される、方法が提供される。
【００４９】
本発明のあるさらなる側面のある実施形態によれば、ユーザー装置およびコンテンツ源装置を有する通信システムが提供される。ユーザー装置は安全な経路を介しておよび安全でない経路を介してコンテンツ装置に接続される。コンテンツ源装置は、データをデータの二つ以上のチャンクに分割し；データのチャンクを、保護されているまたは保護されていないとしてマークし；データのチャンクに対する要求をユーザーから受信し、該データをユーザーに送達するよう構成される。ユーザー装置は、データの次のチャンクが必要とされるかどうかを判定し、データの該次のチャンクが保護されるかどうかを判定し；データの該次のチャンクが保護されていない場合にはデータの前記次のチャンクを前記安全でない経路を介して要求し、受領するよう構成される。ユーザー装置は、データの該次のチャンクが保護されている場合にはデータの前記次のチャンクを前記安全な経路を介して要求し、受領するよう構成されることが好ましい。
【００５０】
当該通信システムのある好ましい実施形態では、前記安全でない（unsecure）経路は、データの一つまたは複数のチャンクをキャッシュするキャッシュを含み、ユーザー装置は、前記キャッシュを介してコンテンツ源装置に接続される。前記キャッシュは、保護されていないデータのチャンクをコンテンツ源装置から要求し、受領するとともに、それらのデータのチャンクをユーザー装置からの要求に応答してユーザー装置に送信するよう構成される。
【００５１】
このように、この実施形態によれば、当該通信システムは、たとえばネットワークじゅうに位置しているキャッシュを、ネットワーク・パフォーマンスを改善するために利用する。一つまたは複数のキャッシュが前記安全でない経路の一部をなしてもよく、データの保護されていないチャンクは、コンテンツ源からユーザー装置に直接転送されることに加えて、あるいは直接転送される代わりに、キャッシュされる。前記安全でない経路がキャッシュを含む場合には、ユーザー装置は、データの保護されていないチャンクを、前記安全な経路を介して前記キャッシュから要求し、受領する。データの要求されたチャンクがキャッシュに記憶されている場合には、キャッシュがデータのチャンクをユーザーに送信する。しかしながら、データの要求されたチャンクがキャッシュに記憶されていない場合には、キャッシュはデータの保護されていないチャンクを、前記安全でない経路を介してコンテンツ源から要求し、受領し、その後、ユーザーに転送する。コンテンツ源は、データの保護されていないチャンクをキャッシュに送信することを、以前の要求の結果として、あるいは何らかの全知のプロセスによってキャッシュが事前ロードされるために、行なってもよい。
【００５２】
データの保護されていないチャンクは、データのキャッシュ可能なチャンクと称されることもある。キャッシュは、ネットワーク資源効率を高めるためには、コンテンツ源によりも、ネットワーク・エッジおよび／またはユーザー装置に近く位置されることが好ましい。
【００５３】
当該通信システムはさらに、一つまたは複数の他のユーザー装置を含んでいてもよい。キャッシュに記憶されているデータの保護されていないチャンクは、通信システム内の他のユーザー装置によってアクセスされうる。よって、キャッシュに記憶され、前記ユーザーに転送されるデータの保護されていないチャンクは、他のユーザー装置によって以前に要求されたデータのチャンクでありうる。
【００５４】
発明実施形態は、上記で定義した通信システムにおいて実行される方法にも及ぶ。こうして、本発明のあるさらなる実施形態では、通信システムにおいて使う方法であって、コンテンツ源がデータをデータの二つ以上のチャンクに分割し；データのチャンクを、保護されているまたは保護されていないとしてマークし；データのチャンクに対する要求をユーザーから受信し、該データをユーザーに送達することと、ユーザーが、データの次のチャンクが必要とされるかどうかを判定し、データの該次のチャンクが保護されるかどうかを判定し；データの該次のチャンクが保護されていない場合にはデータの前記次のチャンクを安全でない経路を介して要求し、受領することを含む。
【発明の効果】
【００５５】
本発明の諸実施形態によれば、コンテンツ所有者は、コンテンツ所有者の権利を保護する能力を保持しつつ、ネットワークじゅうでコンテンツをキャッシュすることができる。さらに、実施形態は、たとえコンテンツが信頼されないネットワークを通じて送達されるとしても、コンテンツ消費者が、コンテンツ完全性を検査することを許容する。
【００５６】
ネットワーク中のキャッシュを利用する本発明の実施形態によれば、ネットワーク中のキャッシュがコンテンツ源によって信頼される必要はない。コンテンツは二つ以上の経路から、いくつかの実施形態では二つ以上の源から、送達されるからである。つまり、ネットワーク中のキャッシュは、ネットワーク・エッジにあるものでさえ、ネットワーク資源の効率的な使用を保証し、ネットワーク・パフォーマンスを改善するために利用されうるということである。
【００５７】
本発明のある側面のある実施形態によれば、保護されたルートを通じて、修正されないことを保証しつつトークン（たとえばコンテンツ・ハッシュ鍵）を送ることによって、コンテンツ完全性を保証できる。
【００５８】
コンテンツは、どの一つのストリームもそれ自身では無効であるようにするような仕方で複数の経路および／または源の間で分散されてもよい。コンテンツを分割する仕方の例は詳細な説明において論じる。一つのコンテンツ源は保護され、コンテンツ所有者（またはその代行者）によってコントロールされる。この源は、ユーザーのコンテンツへのアクセスを検査し、ユーザーが該コンテンツにアクセスすることを許諾されている場合にのみ保護されたストリームを返す。ひとたび保護されたストリームへのアクセスが承認されたら、ユーザーは、他方の経路を介して、可能性としてはキャッシュのような別の源から、保護されていないストリームにアクセスする。コンテンツを使うためには両方のストリームへのアクセスが必要とされるので、第二のコンテンツを許諾する必要はないことを注意しておく。キャッシングが有効であるためには、キャッシングなしで送達される保護されたストリームは、全コンテンツの小さな割合であるべきである。
【００５９】
本発明は、デジタル電子回路においてまたはコンピュータ・ハードウェア、ファームウェア、ソフトウェアにおいてまたはそれらの組み合わせにおいて実装されることができる。本発明は、コンピュータ・プログラムまたはコンピュータ・プログラム・プロダクト、すなわち情報担体において、たとえば機械可読記憶デバイスにおいてまたは伝搬する信号において有体に具現されたコンピュータ・プログラムであって、一つまたは複数のハードウェア・モジュールによる実行のためであるまたは一つまたは複数のハードウェア・モジュールの動作を制御するためであるものとして実装されることができる。コンピュータ・プログラムはスタンドアローンのプログラム、コンピュータ・プログラム部分または二つ以上のコンピュータ・プログラムの形であることができ、コンパイル言語またはインタープリター言語を含むいかなる形のプログラミング言語で書かれることもでき、スタンドアローン・プログラムとしてまたはモジュール、コンポーネント、サブルーチンもしくは通信システム環境において使うのに好適な他の単位としてを含めていかなる形で展開されることもできる。コンピュータ・プログラムは、一つのモジュール上または一つのサイトにある複数のモジュール上で実行されるよう展開されることができ、あるいは複数のサイトを横断して分散されて通信ネットワークによって相互接続されることができる。
【００６０】
本発明は、個別的な実施形態を用いて記述される。他の実施形態が付属の請求項の範囲内である。たとえば、本発明の段階は異なる順序で実行されることができ、それでいて望ましい結果を達成することができる。
【００６１】
好ましい実施形態に基づく装置は、ある種の機能を実行するよう構成または配置されるものとして記述される。この構成または配置は、ハードウェアまたはミドルウェアまたは他の任意の好適なシステムの使用によってであることができる。好ましい実施形態では、構成または配置はソフトウェアによってである。
【００６２】
本発明の要素は、「ネットワーク・モジュール」、「判定モジュール」、「要求モジュール」、「入出力モジュール」、「分類器モジュール」および「分割モジュール」という用語を使って記載されてきた。当業者は、これらの用語およびその等価物がユーザー装置、コンテンツ源装置またはキャッシュの、空間的に別個であるが定義された機能を果たすよう組み合わされる諸部分を指しうることを理解するであろう。同様に、ユーザー装置、コンテンツ源装置またはキャッシュの同じ物理的部分が、定義される機能の二つ以上を提供してもよい。
【００６３】
たとえば、ユーザー装置および／またはコンテンツ源装置の別個に定義された機能は、適宜、同じメモリおよび／またはプロセッサを使って実装されてもよい。コンテンツ源装置の入出力モジュールおよびネットワーク・モジュールは、別個の入力および出力をもって実装されてもよく、あるいはトランシーバとして実装されてもよい。さらに、入出力装置およびネットワーク・モジュールは同じユニットの一部であってもよい。同様に、ユーザー装置のネットワーク・モジュールおよび要求モジュールは別個の入力および出力をもって実装されてもよく、あるいはトランシーバとして実装されてもよく、および／または同じユニットの一部であってもよい。
【００６４】
システムおよび装置側面の特徴およびサブ特徴は、方法側面に適用されてもよく、逆も成り立つ。
【図面の簡単な説明】
【００６５】
あくまでも例として、付属の図面を参照する。
【図１】本発明の一般的な実施形態に基づくユーザー装置を表わす装置ブロック図である。
【図２】本発明の一般的な実施形態に基づくコンテンツ源装置を表わす装置ブロック図である。
【図３】本発明の一般的な実施形態を表わすシステム図である。
【図４】本発明のある側面のある実施形態に基づくユーザー装置における方法のフローチャートである。
【図５】本発明のある側面のある実施形態に基づくコンテンツ源装置における方法のフローチャートである。
【図６】本発明のある側面のある実施形態に基づくコンテンツ源装置およびユーザー装置のシステム・ブロック図である。
【図７】本発明のある側面のある実施形態に基づく主要なコンポーネントおよびそれらの相互作用を示すブロック図である。
【図８】本発明のある側面のある実施形態に基づく分割ストリーム技法の全体的なプロセス・フローのフローチャートである。
【図９】本発明のある側面のある実施形態に基づく、チャンク化されたコンテンツの薄めのためのプロセスを示すブロック図である。
【図１０】本発明のある側面のある実施形態に基づく、分割ストリーム保護を使ってチャンク化されたデータを得るためのユーザー・プロセスを示すフローチャートである。
【図１１】本発明のある側面のある実施形態に基づく、エントロピー・エンコードされたコンテンツについての分割プロセスを示すブロック図である。
【図１２】本発明のある側面のある実施形態に基づく、分割ストリーム保護を使うエントロピー・エンコードされたコンテンツについてのユーザー・プロセスを示すフローチャートである。
【図１３】本発明のある側面のある実施形態に基づくビデオ・データについての分割プロセスを示すブロック図である。
【図１４】本発明のある側面のある実施形態に基づくビデオ・データについての分割プロセスを示すフローチャートである。
【図１５】本発明のある側面のあるさらなる実施形態に基づく分割ストリーム技法の全体的なプロセス・フローのフローチャートである。
【発明を実施するための形態】
【００６６】
図１は、本発明の一般的な実施形態に基づくユーザー装置を表わす装置ブロック図である。ユーザー装置１は、ネットワーク・モジュール１１、判定モジュール１２および要求モジュール１３を有する。ネットワーク・モジュール１１は、コンテンツ源装置２との安全な経路／接続および安全でない経路／接続を確立する。判定モジュール１２は、コンテンツ源装置２からのデータの次のチャンクが必要とされるかどうかを判定する。データの次のチャンクが必要とされると判定される場合には、判定モジュール１２はデータの前記次のチャンクが保護されるか保護されないか否かを判定する。要求モジュール１３は事実上、入出力モジュールであり、データの前記次のチャンクを要求し、受領する。データの前記次のチャンクが保護されないと判定される場合には、要求モジュール１３はデータの前記次のチャンクを安全でない経路を介して要求し、受領する。要求モジュール１３およびネットワーク・モジュール１１は、同じ部分において設けられてもよい。
【００６７】
図２は、本発明の一般的な実施形態に基づくコンテンツ源装置を表わす装置ブロック図である。コンテンツ源装置２は、ネットワーク・モジュール２１、入出力モジュール２２（これは前記ネットワーク・モジュールと同じ部分において設けられてもよい）、分類器モジュール２３および分割モジュール２４を有する。ネットワーク・モジュール２１はユーザー装置１との安全な経路／接続および安全でない経路／接続を確立する。分割モジュール２４はコンテンツ／データをコンテンツ／データの二つ以上のチャンク／片に分割する。分類器モジュール２３は、データのチャンクを、保護されているまたは保護されていないのいずれかとして割り振り、マークする。入出力モジュール２２は、データのチャンクに対する要求をユーザー装置１から受領する。データの要求されたチャンクが保護されていなければ、入出力モジュール２２はデータのチャンクを、前記安全でない経路を介してユーザー装置１に送信する。
【００６８】
図３は、本発明の一般的な実施形態を表わすシステム図である。通信システムは、ユーザー装置１およびコンテンツ源装置２を有する。ユーザー装置１およびコンテンツ源装置２は、安全な経路および安全でない経路を介して接続される。
【００６９】
図４は、本発明のある側面のある実施形態に基づくユーザー装置における方法のフローチャートである。段階Ｓ４０１では、コンテンツ源と安全な経路が確立され、コンテンツ源と安全でない経路も確立される。段階Ｓ４０２において、コンテンツ源からのデータの次のチャンクが必要とされるかどうかが判定される。データの次のチャンクが必要とされると判定される場合には、プロセスは段階Ｓ４０３に進んで、データの前記次のチャンクが保護されるか否かが判定される。データの前記次のチャンクが保護されない場合には、段階Ｓ４０４において、安全でない経路を介して要求され、受領される。しかしながら、段階Ｓ４０３においてデータの前記次のチャンクが保護されると判定される場合には、データの前記次のチャンクは段階Ｓ４０５において、安全な経路を介して要求され、受領される
図５は、本発明のある側面のある実施形態に基づくコンテンツ源装置における方法のフローチャートである。段階Ｓ５０１では、ユーザーと安全な経路が確立され、ユーザーと安全でない経路も確立される。段階Ｓ５０２において、データはチャンクに分割され、段階Ｓ５０３において、データのチャンクは、保護されているまたは保護されていないとしてマークされる。段階Ｓ５０４では、データのチャンクに対する要求がユーザーから受領され、段階Ｓ５０５において、データの要求されたチャンクが保護されているか否かが判定される。データの要求されたチャンクが保護されていなければ、段階Ｓ５０６において、要求が安全でない経路を介して受領されたかどうかが判定される。データの保護されていないチャンクに対する要求が安全でない経路を介して受領された場合には、プロセスは段階Ｓ５０７に進み、データの要求されたチャンクは安全でない経路を介してユーザーに送信される。そうではなく、データの保護されていないチャンクが安全でない経路を介して要求されたのでない場合（段階Ｓ５０６においてno）には、段階Ｓ５１０においてエラーが返される。この実施形態において、保護されていないデータ要求は常に保護されていない経路を介して受信されるべきであり、よって、保護されていないデータに対する要求が安全な経路を介して受領される場合には、エラー・メッセージが返される。段階Ｓ５０５において、データの要求されたチャンクが保護されていると判定される場合には、プロセスは段階Ｓ５０８に進む。ここで、データの保護されたチャンクに対する要求が安全な経路を介して受領されたかどうかが判定され、そうであれば、データの要求されたチャンクは段階Ｓ５０９において安全な経路を介してユーザーに送信される。段階Ｓ５０６と同様に、データの保護されたチャンクに対する要求が安全な経路を介して受信されたのでない場合（段階Ｓ５０８においてno）には、段階Ｓ５１１においてエラーが返される。この実施形態では、保護されたデータ要求は、常に安全な経路を通じて受信されるべきであり、よって、保護されたデータに対する要求が安全でない経路を介して受信される場合には、エラー・メッセージが返される。
【００７０】
ある好ましい実施形態によれば、保護されたチャンクに対するユーザーからの要求は、安全な経路を通じて受領された場合にのみ（そのチャンクをもって）返信を受ける。これは、コンテンツ所有者によってなされる決定なので、チャンクが保護されていることを示すものではなく、同じ経路を通じた応答が保護されていることを保証するものであってもよい。
【００７１】
図６は、本発明のある側面のある実施形態に基づくコンテンツ源装置およびユーザー装置のシステム・ブロック図である。本システムは、安全な経路および安全でない経路を介して接続されたコンテンツ源２およびコンテンツ・ユーザー１を含む。
【００７２】
コンテンツ源２は、ユーザーが要求するコンテンツの起点であり、コンテンツ、分割器、分類器、安全なI/Oおよび安全でないI/Oを有する。安全なI/Oおよび安全でないI/Oは、異なる部分により事実上別個に設けられてもよいが、分離は名目上のものであり、安全なI/Oと安全でないI/Oは同じ機能の異なる属性として実装されるほうが現実的である。コンテンツは典型的には転送または消費されるのにしばらく時間がかかる大きなファイルでありうる。それらは一つのトランザクションにおいて送信されるのでなく、むしろセグメントに分離されて、各セグメントはユーザー１からの要求に応答して送信される。分割器はコンテンツを送信のためにセグメントに分割する。コンテンツが分割される仕方は、たとえばコンテンツ型および送信プロセスの特性といったいくつかの要因に依存してもよい。分割は、各要求が受領されるにつれてオンラインで実行されてもよく、あるいはオフラインで実行されてコンテンツが諸セグメントの形で記憶されていてもよい。分類器は、データの各セグメントが安全な接続または安全でない接続のどちらで伝送されるべきかを決定する。分類器は、ユーザーからの要求も受領し、要求が正しいチャネルを通じて受領されたかどうかを判定する。たとえば、安全でないチャネルを通じて受領された安全なセグメントに対する要求は拒否される。安全なI/Oはコンテンツ１のユーザーとの安全な接続を管理し、ユーザー１から要求を受領し、コンテンツをユーザー１に送信する。同様に、安全でないI/Oはコンテンツ１のユーザーとの安全でない接続を管理し、ユーザーから要求を受領し、コンテンツをユーザー１に送信する。
【００７３】
コンテンツ・ユーザー１は、たとえばビデオ・ストリームを閲覧するといったコンテンツに対する要求の起点である。コンテンツ・ユーザー１は、安全なI/O、安全でないI/O、決定およびコンテンツ使用を有する。
【００７４】
コンテンツ源２と同様に、安全なI/Oおよび安全でないI/Oは、それぞれコンテンツの源との安全な接続および安全でない接続を管理する。安全なI/Oおよび安全でないI/Oはまた、要求をコンテンツ源２に送り、コンテンツ源２からコンテンツを受領する。決定は、要求されるべき次のセグメントが安全な接続または安全でない接続のどちらを通じて転送されるべきかを決定する。コンテンツ使用は、ユーザー１へのコンテンツの送達を管理し、セグメントをストリームにマージし、必要なら復号する。
【００７５】
図７は、本発明のある側面のある実施形態に基づく主要なコンポーネントおよびそれらの相互作用を示すブロック図である。この好ましい実施形態では、システムは、コンテンツ所有者２とユーザー１との間の安全でない経路の一部をなす、ネットワーク中の諸キャッシュ３を含む。コンテンツの所有者２はコンテンツをユーザー１に送達し、効率的な送達を保証するためにネットワーク中のコンテンツ・キャッシュ３があればそれを利用しつつも、アクセスを、許諾されたユーザー１に制約することを望む。コンテンツにアクセスすることを望むユーザー１は最初、保護された／安全なルート４を通じて所有者２に連絡する。保護されたルート４は、許諾を達成するために要求された情報をユーザー１からコンテンツ所有者２に渡すために使われ、要求されたコンテンツの一部を直接、ユーザー１に送信するためにも使われる。ユーザー１は、保護されていない／安全でない経路６を介してネットワーク中のキャッシュ３から、コンテンツの残りにアクセスする。キャッシュ３が要求されたコンテンツを保持していれば、それは保護されていない経路６を介してユーザー１に返される。キャッシュ３が該コンテンツを有していなければ、保護されていない／安全でない経路５を通じて、欠けているコンテンツを所有者２に要求する。所有者２からコンテンツを受領すると、キャッシュ３はそのコンテンツをキャッシュし、保護されていない経路６を介してユーザー１に送信する。キャッシュ３から送られるデータの完全性を検査するためにコンテンツ・ハッシュが使われてもよい。コンテンツ・ハッシュは、修正されないことを保証するため、保護されたルート４を通じて送られる。
【００７６】
キャッシュがネットワークに含まれることは発明にとって本質的ではない。しかしながら、その好ましい実施形態および実装はまず、一つまたは複数のキャッシュを含むシステム内にあるであろう。コンテンツ経路にキャッシュを配置することは、ネットワーク・パフォーマンスにとって多大な恩恵があり、本発明の諸実施形態はキャッシュの展開をより現実的にすることができる。安全でない経路を使うことに対する安全な経路を確保するコスト（たとえば暗号化のための処理オーバーヘッド）のため、これは有望なオプションとなることができる（特に、エンドポイントの一方が電力の少ない装置である場合）。
【００７７】
キャッシュの有効性は、ユーザーがデータを要求する前に該データがどのくらいしばしばキャッシュにあるかに依存する。よいキャッシュは、別のユーザーが以前の要求をしたためまたはキャッシュが何らかの全知のプロセスによって事前ロードされるために、すでにそのコンテンツを有しているであろう。
【００７８】
図８は、本発明のある側面のある実施形態に基づく分割ストリーム技法の全体的なプロセス・フローのフローチャートである。段階Ｓ８０１でコンテンツに対する要求がなされ、段階Ｓ８０２で要求が安全な経路を介してなされたかどうかが判定される。要求が安全な経路を介してなされた場合は、段階Ｓ８０３においてコンテンツはコンテンツ所有者から取ってこられ、段階Ｓ８０８において消費者に送達される。他方、要求が安全な経路を介してなされたのでない場合（段階Ｓ８０２においてno）には、段階Ｓ８０４において、要求されたコンテンツがキャッシュされているかどうかが判定される。要求されたコンテンツがキャッシュされていれば、そのコンテンツは段階Ｓ８０５においてキャッシュから取ってこられ、段階Ｓ８０８において消費者に送達される。要求されたコンテンツがキャッシュされていなければ、そのコンテンツは段階Ｓ８０６においてコンテンツ所有者から取ってこられ、段階Ｓ８０７においてキャッシュされ、段階Ｓ８０８において消費者に送達される。
【００７９】
キャッシュの目的は、ある接続を通るコンテンツを記憶することで、同じコンテンツの繰り返される転送を省くことである。キャッシュが何らかの要求されたコンテンツ・チャンクのコピーをもつ場合、キャッシュは、該キャッシュから直接そのコンテンツ・チャンクをサービスしうる。そうでない場合は、要求をコンテンツのもとの「所有者」に渡すことができる。次いで、キャッシュは所有者からコンテンツ・チャンクを受領し、それを要求元のクライアントに渡してもよい。キャッシュは、ここで受信したコンテンツ・チャンクを保存してもよい。それにより、キャッシュは、同じチャンクに対する将来の要求を、所有者に求める代わりに、直接充足することができる。
【００８０】
コンテンツ所有者は、ユーザーの許諾および保護されたコンテンツの送達の責務を、信頼されるキャッシュのような他のエンティティに委託してもよい。たとえば、上記の現状技術のCDNにおいて想定されるキャッシュである。ユーザーの許諾および信頼は、標準的な仕方で達成できる。送達機能のこの選択は、エッジ・キャッシュおよびネットワークに埋め込まれたキャッシュからの送達の効率向上を活用しつつ、完備なコンテンツのキャッシングを許容する。
【００８１】
保護されていないストリーム（データの保護されていないチャンク）はネットワーク中で利用可能などんな機構を使ってキャッシュされてもよいことを注意しておく。保護されていないストリームのキャッシングを実装するためにキャッシング技術に対するいかなる変更の必要もない。本発明の諸実施形態は、ストリームを分割し、組み合わせるよう、プロセスの両端に対する変更を要求するだけである。ストリーム伝送およびキャッシングは変更なしに進行する。
【００８２】
コンテンツがチャンクに分割されうるいくつかの仕方があり、これはたとえばコンテンツの量、ネットワーク、コンテンツ源、ユーザー装置などといったいくつかの要因に依存してもよい。
【００８３】
HTTPを通じて送達される大きなファイルは通例、諸チャンクの形で伝送され、ユーザーはデータのチャンクが必要とされるに応じてデータのチャンクに対する要求をする。メディア・ストリーミング・プロトコル（たとえばHTTPライブ・ストリーミング、HLS）はしばしば、コンテンツがサーバーにおいてチャンクの形で保存されていることを要求する。ユーザーは、必要に応じてデータのチャンクを名前で要求する責務がある。ファイルは、たとえば達成されるビットレートなどのネットワーク機能を考慮に入れて、送達されることのできるいくつかのバージョンで記憶されていてもよい。
【００８４】
データがチャンクに分割されて、データ・チャンクのうちの少量がなくてもコンテンツ全体が無効になるようにする場合、本発明の諸実施形態に基づく分割ストリーム技法は、現在のキャッシングおよびコンテンツ送達機構に変更を要求することなく、キャッシュされたデータを保護するために使用されることができる。
【００８５】
前処理されたチャンクを生成するようコンテンツを処理するとき、コンテンツ源のサーバー・ソフトウェアは、それぞれの生成されたチャンクを、キャッシュ可能（保護されない）または保護されるのいずれかのクラス型でラベル付けするためにアルゴリズムを適用してもよい。チャンクは、異なるビットレートのストリームを組み合わせることによる入力の再構成を避けるために、ビットレートに関わりなく常に同じクラスに配置される。後述するような多様な選択アルゴリズムがありうる。
【００８６】
規則的な薄め（regular  thinning）が関連技術から発明者に知られている。(1−1/n)のキャッシング割合を達成するためには、n番目毎のチャンクが保護されたセットに入れられる。nの大きな値は大きなキャッシュ可能性につながるが、保護は低下する。
【００８７】
コンテキスト薄め（context  thinning）は、本発明のある側面のある実施形態に基づく手法である。コンテンツのある割合が低重要度とみなされ、よって保護を必要としない。たとえば、挿入された広告、最後のクレジットなどである。これらのセクションからのデータのすべてのチャンクはキャッシュ可能とマークされ、一方、残りのセクションは保護のために薄められる。同様に、クライマックス・シーンのようなコンテンツの有意義な部分は高重要度とみなされてもよく、よって保護を高めるために、積極的に薄められて、データのチャンクの多くが、保護されているとマークされる。すなわち、データの多くが安全なルートを通じて送達される。このように、高重要度と考えられるビデオ・データ中のシーンは積極的に薄められてもよい。高重要度データの他の例は、シーンが進行するにつれてより積極的に薄められるドラマ・シーンおよびカメラ・アングル変化後に生放送においてより積極的に薄めることを含む。
【００８８】
図９は、本発明のある側面のある実施形態に基づくチャンク化されたコンテンツの規則的な薄めのためのプロセスを示すブロック図である。コンテンツは、コンテンツ所有者によっていくつかのチャンク、図の第一行におけるB0ないしB19に分割される。この例では、５番目毎のチャンクが保護されるとマークされる。保護されるチャンクは、コンテンツ所有者のコントロールのもとに保持され、安全な経路を介して送信される。データの残りのチャンクは保護されておらず、よって信頼されないキャッシュにキャッシュされることができる。これは、図の第２行に示されている。ユーザーは、データのチャンクに対する要求を管理し、必要に応じて適切な経路を介してデータのチャンクを要求する。データのチャンクは、その保護されているまたは保護されていない状態に従って、適切な源から適切な経路を介して到達する。データのチャンクは、次いで、ユーザーによって使用のために再結合されることができる。これは図の最終行に示されている。
【００８９】
ユーザーがデータの各チャンクについてのクラス（保護されているまたは保護されていない）を知ることが必要である。それにより、データのチャンクに対する要求を、適切なストリームに、すなわち保護されていないキャッシング源にまたは保護された非キャッシング源に、向けることができる。ユーザーにデータのチャンクの状態を知らせるために、ストリーミング・プロトコルが使用されてもよい。たとえば、HTTPチャンク化ストリーミング・プロトコルは、その時点において利用可能なビットストリーム・レートおよびチャンク名を詳述するマニフェスト・ファイルの転送をもって開始される。このマニフェスト・ファイルは、保護されたチャンクのリストを含むよう拡張されてもよい。
【００９０】
あるいはまた、クライアントは、標準的なプロトコルを使って保護されたチャンクを推定してもよい。好ましい実施形態によれば、コンテンツ保持サーバーは、データの保護されたチャンクのみを保護されたチャネルを通じて送達してもよく、保護されていないルートを通じて受領される保護されたチャンクに対するいかなる要求も拒否されるべきである。クライアントが保護されていないチャネルを通じてチャンクに対する初期の要求をする場合には、キャッシュは保護されたチャンクを保持しておらず、よって（可能性としてはサーバーからアクセスを拒否されたのちに）エラーを返すことになる。エラーを受信すると、クライアントは、該チャンクが保護されていると推定し、データの該チャンクを保護されたルートを介して要求してもよい。
【００９１】
図１０は、本発明のある側面のある実施形態に基づく、分割ストリーム保護を使って、チャンク化されたデータを得るためのユーザー・プロセスを示すフローチャートである。第一段階Ｓ１００１では、ユーザーはコンテンツ所有者または代行者への安全な接続を確立する。第二段階Ｓ１００２において、ユーザーは保護されていないルートを介してもコンテンツ所有者への接続を確立する。段階Ｓ１００３では、ユーザーはコンテンツの新たなチャンクが必要とされていることを判別し、上記で概説した技法の一つを使って、ユーザーは段階Ｓ１００４において、チャンクが保護されているかどうかを判定する。チャンクが保護されていれば、そのチャンクは段階Ｓ１００５において保護された経路を通じて要求される。そうでなければ、段階Ｓ１００６において、そのチャンクは保護されていない経路を通じて要求される。
【００９２】
典型的には、コンテンツはほとんど常に、キャッシング戦略が適用される前に圧縮される。これは伝送資源要求を低減するためのより効率的な仕方だからである。圧縮は通例、コンテンツを解析して、デコード・テーブルと組み合わせたときにもとのデータより少数のビットでデータを表現する、データの新たなエンコードを決定することからなる。圧縮されたデータを受け取るアプリケーションは、もとのコンテンツを再構成するために、エンコードされたデータにデコード・テーブルを適用する。この戦略は、コンテンツ全体に適用されてもよいが、しばしばコンテンツの諸部分（たとえばデータのフレームまたはチャンク）に適用され、複数のデコード・テーブルが圧縮ストリームの一部として伝送される。圧縮ストリームのエンコードされた部分は、デコード・テーブルなしでは解釈できないので、もとのデータの暗号化であると考えることができる。よいデコード・テーブルは、全体的な伝送されるデータに比較して小さい。
【００９３】
本発明のある側面のある実施形態によれば、分割ストリーム技法はそのような圧縮されたデータに適用される。エンコードされたストリームは事実上暗号化されるので、信頼されないキャッシュに安全に記憶されることができる。次いで、各ブロックについてのデコード・テーブルは保護されたストリームを通じて送られてもよい。
【００９４】
図１１は、本発明のある側面のある実施形態に基づくエントロピー・エンコードされたコンテンツについての分割プロセスを示すブロック図である。もとのデータ・ストリームはいくつかのブロックを含み、各ブロックが別個のエンコード・テーブル（T）を使って圧縮されてエンコードされたデータ（B）を生成する。エンコード・テーブルは保護され、保護された記憶において保持され、安全な経路を介してユーザーに伝送されてもよい。エンコードされたデータはキャッシュ可能であり、よって保護されていない手段を通じて配送される。これは、図の第２行において示されている。図の最終行では、ユーザーは、もとのコンテンツを再構成するためにエンコードされたデータにデコード・テーブルを適用することができる。
【００９５】
図１２は、本発明のある側面のある実施形態に基づく分割ストリーム保護を使うエントロピー・エンコードされたコンテンツについてのユーザー・プロセスを示すフローチャートである。段階Ｓ１２０１およびＳ１２０２では、ユーザーはコンテンツ所有者へのそれぞれ安全な接続および安全でない接続を確立する。段階Ｓ１２０３では、ユーザーはコンテンツの新たなチャンクが必要とされていることを判別し、段階Ｓ１２０４において符号化されたコンテンツがオープンな接続を介して取ってこられ、段階Ｓ１２０５において適切な符号化テーブルが保護された接続を介して取ってこられる。段階Ｓ１２０６では、コンテンツ・ブロックが閲覧される、バッファリングされるおよび／または他の仕方でユーザーによって使用される。
【００９６】
本発明の諸実施形態は、ビデオ・コンテンツに適用されてもよい。ビデオ・データは、相続くフレーム間の類似性を活用することによって、高い度合いの圧縮可能性を達成する。通例はシーンにおける少数のオブジェクトが動いているだけなので、フレームの内容の多くは前のフレームの内容と正確に同じである。ビデオ圧縮技法は、フレーム間の差分のみを送信することによってこのことを活用できる。差は累積することがあり、よって圧縮されたビデオ・ストリームは、典型的には静的な画像としてエンコードされる完備なフレームの定期的な伝送を含む。その後の差分フレームは、この静的な画像を差分のための基礎として使う。
【００９７】
典型的には、初期のビデオ・ストリーム符号化器／復号器技法（コーデック）はたった二つのフレーム型を使っていた：キー・フレームおよびデルタ・フレームである。キー・フレームは完備なフレームを格納し、静的な画像として圧縮された。デルタ・フレームは、伝送されるべきフレーム中のピクセルを前の諸フレームのピクセルと比較して、冗長でない情報を保持することによってエンコードされる。各デルタ・フレームについての保持されるデータも、ファイルの目標データ・レートを満たすための必要に応じて（静的フレーム技法を使って）圧縮される。
【００９８】
MPEG-2、H.264およびVC-1といった現代のコーデックに組み込まれている、より進んだフレーム間技法は、圧縮のために三つのフレーム型を使う：Iフレーム、BフレームおよびPフレームである。Iフレームはキー・フレームと同じであり、最大のフレーム型である。BフレームおよびPフレームはデルタ・フレームの変形である。Pフレームが最も単純で、前のIフレームまたはPフレームから冗長な情報を除去する。Bフレームはより複雑で、前のまたは後のIフレーム、BフレームまたはPフレームから冗長な情報を除去する。Bフレームは、最も効率的なフレーム型と考えられる。
【００９９】
これら複数のフレーム型はピクチャー・グループ（GOP）内に格納される。GOPは各Iフレームで始まり、次のIフレームまでの（ただし該次のIフレームは含まない）すべてのフレームを含む。BフレームおよびPフレームの数およびシーケンスは、使用される符号化器および所望されるビットレートおよびユーザーのデコード機能に依存する。
【０１００】
これらすべての技法は、フレーム間の依存性を導入する。たとえば、Iフレームが欠けている場合、GOPはデコードできず、そのGOPのPフレームまたはBフレームについて伝送されたいかなるデータも無用になる。それらの差分が関係する、基礎となるフレームがないからである。PフレームまたはBフレームの欠損は、GOPの最初のフレームのみが見られるので、不完全な（がくがくした）ビデオにつながる。
【０１０１】
分割ストリーム技法の諸実施形態は、ビデオ・ファイルをIフレームのみをもつ一つのストリームと、PフレームおよびBフレームのみをもつもう一つのストリームとに分離するために使われる。これらのストリームの一方はキャッシュされ、他方はオンデマンドで、コンテンツ所有者による権利管理のもとで、かつ保護された経路を介して、ユーザーにストリーミングされる。二つのストリームはユーザーによって組み合わされて、もとのGOPを再現し、よって標準的なコーデックを使って復号できる。フレーム間依存性がビデオ・ストリームの事実上の暗号化または難読化として作用するので、キャッシュされた部分のさらなる保護は必要ない。Iフレーム・ストリームまたはBフレームおよびPフレーム・ストリームのどちらをキャッシュするかの選択は、用途に依存する。コンテンツ所有者は、それらのストリームの相対サイズのバランスを取ってもよい。可能性としては、BフレームおよびPフレーム・ストリームをキャッシュするほうが安全性は高い。
【０１０２】
図１３は、ビデオ・データについての分割プロセスを示すブロック図であり、図１４は、上記のような本発明のある側面のある実施形態に基づく、ビデオ・データについての分割プロセスを示すフローチャートである。
【０１０３】
図１３では、ビデオ・ストリームのフレームが分離される。この例では、各GOPのIフレームは、保護されているとしてマークされ、BフレームおよびPフレームはキャッシュ可能である。これは図の第２行に示されている。図の最終行では、ビデオ・ストリームを得るために、フレームは、ユーザーによって正しい順序で再結合される。
【０１０４】
図１４では、段階Ｓ１４０１およびＳ１４０２においてユーザーがコンテンツ所有者へのそれぞれ安全な接続および安全でない接続を確立することで始まる。段階Ｓ１４０３では、ユーザーは次のピクチャー・グループが必要とされていることを判別する。BフレームおよびPフレームは段階Ｓ１４０４においてオープンな接続を介して取ってこられ、Iフレームは段階Ｓ１４０５において保護された接続を介して取ってこられる。段階Ｓ１４０６では、ピクチャー・グループを構築し、ビデオ・ストリームを得るために、フレームは、ユーザーによって組み合わされる。
【０１０５】
本発明のある側面のもう一つの実施形態によれば、コンテンツ送達プロセス全体についてコンテンツ所有者とユーザーとの間の保護された接続を維持する必要性が除去されうる。この好ましい実施形態では、現行のCDNと同様にユーザーがコンテンツにアクセスすることを許諾される、初期の保護されたセッションが必要とされる。ひとたび許諾されたら、ユーザーは保護された接続を介して安全なトークンを供給される。許諾が有効であることを証明するためである。許諾トークンはたとえば、アクセスをある種のコンテンツに、および／または定義された時間にわたって、および／またはある種のユーザーに、および／またはある位置にいるユーザーに、などに限定してもよい。ユーザーは任意的に、秘密（プライベート）鍵および公開鍵を含む暗号鍵対を取得してもよい。ここで、標準的な暗号プロトコルにより、公開鍵でエンコードされたデータが、マッチする秘密鍵を用いてのみデコードされることができることが保証される。ひとたび許諾トークンが転送され、必要なら暗号鍵対がネゴシエーションされたのちは、保護された接続はもはや必要ない。
【０１０６】
初期の許諾期間後は、ユーザーは、コンテンツ所有者への保護されていない接続を通じた要求を使ってコンテンツのすべてにアクセスすることができる。すなわち、データの保護されたチャンクおよび保護されていないチャンクは安全でない経路を介して要求される。これらの要求は許諾トークンを含み、任意的には上記のプロセスで供給される公開鍵を含む。ユーザーと所有者の間の経路におけるキャッシュは、他の実施形態において先に述べた保護されていないチャンクに対する要求にサービスする。保護されたチャンクはキャッシュされず、よってコンテンツ所有者（またはその代理）までネットワークを通じて渡される。有効な許諾トークンをもつ保護されたチャンクに対する要求の受領に際して、コンテンツ所有者は前記公開鍵を使って関連するチャンクを暗号化し、それをユーザーに送信する。保護されたチャンクは暗号化されているので、マッチする秘密鍵の保有者、すなわち意図されたユーザーのみが読むことができる。
【０１０７】
この技法では、ユーザーは保護されたチャンクおよび保護されていないチャンクに異なるデコードを適用しなければならないことを注意しておく。しかしながら、公開鍵がすべての要求と一緒に伝送される場合には、キャッシュはユーザーのためにサービスするチャンクを暗号化してもよい。このようにして、ユーザーは、チャンクの起点、すなわちチャンクがキャッシュまたはコンテンツ所有者のどちらから送られたかに関わりなく、区別のないストリームを受領する。
【０１０８】
図１５は、本発明のある側面のあるさらなる実施形態に基づく分割ストリーム技法の全体的なプロセス・フローのフローチャートである。段階Ｓ１５０１では、ユーザーはコンテンツ所有者から許諾を得る。段階Ｓ１５０２においてデータの次のチャンクが必要とされるとき、そのチャンクが保護されているか否かが段階Ｓ１５０３において判定される。そのチャンクが保護されていない場合には、そのチャンクは段階Ｓ１５０７においてキャッシュから取ってこられ、段階Ｓ１５０８においてユーザーの公開鍵を用いて暗号化される。
【０１０９】
データのチャンクはキャッシュによって暗号化されてもよい。これは、ユーザーが一貫して、暗号化されたストリームを受領することを保証するためであってもよい。そのような機能は、場合によっては望ましいことがありうる。それにより、ユーザーが保護されたストリームと保護されていないストリームに異なる処理を適用する必要がなく、ユーザー装置の実装を簡略化する。
【０１１０】
段階Ｓ１５０３においてチャンクが保護されている場合、そのチャンクは段階Ｓ１５０４において所有者に要求される。段階Ｓ１５０５では、コンテンツ所有者がユーザーの許諾を検査し、許諾されていれば、段階Ｓ１５０６においてそのチャンクをユーザーの公開鍵を用いて暗号化する。段階Ｓ１５０９では、暗号化されたチャンクはユーザーに送達され、次いで段階Ｓ１５１０において秘密鍵を使って復号される。最後に、段階Ｓ１５１１においてユーザーはチャンクを利用する。
【０１１１】
まとめ
本発明の実施形態は、コンテンツへのアクセスに対するコンテンツ所有者のコントロールを許容しつつ、ネットワーク中の任意のところに、さらにはネットワーク・エッジに位置される信頼されないキャッシュにおける保護されたコンテンツのキャッシングを許容することができうる。
【０１１２】
発明実施形態によれば、コンテンツは、該コンテンツを使うためにはすべてのストリームへのアクセスが必要とされるよう、一つまたは複数のストリームに分割されることができる。少なくとも一つのストリームは信頼される（安全な）チャネルを通じて送達されてもよく、許諾を許容し、残りのストリームは信頼されない（安全でない）チャネルを通じて送達されてもよい。
【０１１３】
発明実施形態は、以下のことを許容しうる。
・コンテンツが信頼されないネットワークを通じて転送されること；
・コンテンツの一部が保護された接続を通じて送達されること；
・コンテンツがネットワークにおいてキャッシュされること；
・信頼されないキャッシュにおいて、キャッシュされたコンテンツが複数のユーザーによって使用されること；
・コンテンツ所有者が信頼されないルートを通じて送達されるコンテンツの有効性についての証明（たとえばブラック・ハッシュ）を送ること；
・コンテンツにアクセスするための二つ（以上）のネットワーク接続の同時使用；
・コンテキスト依存のコンテンツの薄めの使用；
・ビデオ・ストリームがキー・フレームと他のフレームに分割されること。
【０１１４】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
ネットワークを通じてコンテンツ源からチャンクに分割されたデータを要求し、受領するよう構成されたユーザー装置であって、当該装置は：
前記コンテンツ源への安全な経路を確立するとともに前記コンテンツ源への安全でない経路を確立するよう構成されたネットワーク・モジュールと；
データの次のチャンクが必要とされることを判別し、データの該次のチャンクが保護されるかどうかを判定するよう構成された判定モジュールと；
データの前記次のチャンクを要求し、受領するよう構成された要求モジュールであって、データの前記次のチャンクが保護されていない場合にはデータの前記次のチャンクは前記安全でない経路を介して要求され、受領される、要求モジュールとを有する、
ユーザー装置。
（付記２）
データの前記次のチャンクが保護されている場合にはデータの前記次のチャンクは前記安全な経路を介して要求され、受領される、付記１記載のユーザー装置。
（付記３）
前記要求モジュールは、前記安全な経路を介して前記コンテンツ源から許諾を要求し、許諾が与えられたときに、前記安全な経路を介して前記コンテンツ源から許諾トークンを受領するよう構成されており、
前記要求モジュールはさらに、許諾が与えられたときに、前記許諾トークンを使って前記安全でない経路を介してデータの保護されたチャンクを要求し、受領するよう構成されている、
付記１記載のユーザー装置。
（付記４）
許諾が与えられたとき、前記要求モジュールは、前記コンテンツ源と公開鍵・秘密鍵対をネゴシエーションするよう構成されており、
前記要求モジュールは、公開鍵を使って暗号化されたデータのチャンクを要求し、受領するよう構成されており、
当該ユーザー装置はさらに、
秘密鍵を使って、データの受領された暗号化されたチャンクを解読するよう構成された組み合わせモジュールを有する、
付記３記載のユーザー装置。
（付記５）
前記判定モジュールは、ストリーミング・プロトコルを使ってデータの前記次のチャンクが保護されているかどうかを判定するよう構成されており、前記ストリーミング・プロトコルは、データの保護されたチャンクのリストを含む、付記１ないし４のうちいずれか一項記載のユーザー装置。
（付記６）
前記要求モジュールは、データの前記次のチャンクが前記安全でない経路を介して要求されるときにエラー・メッセージが受領される場合に、データの前記次のチャンクを前記安全な経路を介して要求するよう構成されている、付記１ないし５のうちいずれか一項記載のユーザー装置。
（付記７）
前記要求モジュールが、前記安全な経路を介して前記コンテンツ源からコンテンツ・ハッシュ鍵を受領し、データのチャンクが前記安全でない経路を介して受領されるときは前記コンテンツ・ハッシュ鍵を使ってデータの受領されたチャンクの完全性を検査するよう構成されている、付記１ないし６のうちいずれか一項記載のユーザー装置。
（付記８）
前記データがデータのエンコードされたチャンクと、一つまたは複数のデコード・テーブルとを含み、前記デコード・テーブルはデータの保護されたチャンクであり、データの前記エンコードされたチャンクはデータの保護されていないチャンクである、付記１ないし７のうちいずれか一項記載のユーザー装置。
（付記９）
ネットワークを通じてコンテンツ源からチャンクに分割されたデータを要求し、受領する、ユーザー装置における方法であって、当該方法は：
前記コンテンツ源への安全な経路を確立するとともに前記コンテンツ源への安全でない経路を確立し；
データの次のチャンクが必要とされることを判別し、データの該次のチャンクが保護されるかどうかを判定し；
データの前記次のチャンクを要求し、受領することを含み、
データの前記次のチャンクが保護されていない場合にはデータの前記次のチャンクは前記安全でない経路を介して要求され、受領される、
方法。
（付記１０）
ユーザーにデータを送達するよう構成されたコンテンツ源装置であって、当該装置は：
前記ユーザーへの安全な経路を確立するとともに前記ユーザーへの安全でない経路を確立するよう構成されたネットワーク・モジュールと；
前記データを二つ以上のチャンクに分割するよう構成された分割モジュールと；
データのチャンクを、保護されているまたは保護されていないとしてマークするよう構成された分類器モジュールと；
データのチャンクに対する要求を受信し、データの該チャンクを送信するよう構成された入出力モジュールとを有しており、
データの前記チャンクは、データの前記チャンクが保護されていない場合には、前記安全でない経路を介して送信される、
コンテンツ源装置。
（付記１１）
前記入出力モジュールは、前記安全な経路を介して前記ユーザーから許諾要求を受領し、前記安全な経路を介して前記ユーザーに許諾トークンを送信することによって前記ユーザーに許諾するよう構成されており、
前記入出力モジュールはさらに、許諾が与えられたときには、データの保護されたチャンクを、データの該チャンクが前記許諾トークンを使って要求されるときには、前記安全でない経路を介して送信するよう構成されている、
付記１０記載のコンテンツ源装置。
（付記１２）
許諾が与えられたとき、前記入出力モジュールは、前記ユーザーと公開鍵・秘密鍵対をネゴシエーションするよう構成されており、
前記分類器モジュールは、公開鍵を使ってデータのチャンクを暗号化するよう構成されており、
前記入出力モジュールは、公開鍵を使って要求されたときに、データの暗号化されたチャンクを前記ユーザーに送信するよう構成されている、
付記１１記載のコンテンツ源装置。
（付記１３）
前記入出力モジュールは、データのチャンクに対する要求を受領し、データのチャンクを送信するのを、前記安全な経路および前記安全でない経路を介して同時に行なうよう構成されている、付記１０ないし１２のうちいずれか一項記載のコンテンツ源装置。
（付記１４）
前記入出力モジュールは、データのチャンクの完全性を検査するためのコンテンツ・ハッシュ鍵を前記安全な経路を介して前記ユーザーに送信するよう構成されている、付記１０ないし１３のうちいずれか一項記載のコンテンツ源装置。
（付記１５）
前記分類器モジュールは、データのすべての低重要度チャンクを保護されていないとしてマークし、および／またはデータのすべての高重要度チャンクを保護されているとしてマークするよう構成されている、付記１０ないし１４のうちいずれか一項記載のコンテンツ源装置。
（付記１６）
前記分類器モジュールは、データのn番目毎のチャンクを保護されているとしてマークし、データの他のすべてのチャンクを保護されていないとマークすることによって、保護されているまたは保護されていないとしてまだマークされていないデータのチャンクを薄めるよう構成されている、付記１５記載のコンテンツ源装置。
（付記１７）
ユーザーにデータを送達する、コンテンツ源装置における方法であって、当該方法は：
前記ユーザーへの安全な経路を確立するとともに前記ユーザーへの安全でない経路を確立し；
前記データを二つ以上のチャンクに分割し；
データのチャンクを、保護されているまたは保護されていないとしてマークし；
データのチャンクに対する要求を受信し、データの該チャンクを送信することを含み、
データの前記チャンクは、データの前記チャンクが保護されていない場合には、前記安全でない経路を介して送信される、
方法。
（付記１８）
ユーザー装置およびコンテンツ源装置を有する通信システムが提供であって、前記ユーザー装置は安全な経路を介しておよび安全でない経路を介して前記コンテンツ装置に接続され、
前記コンテンツ源装置は、データをデータの二つ以上のチャンクに分割し；データのチャンクを、保護されているまたは保護されていないとしてマークし；データのチャンクに対する要求をユーザーから受信し、該データをユーザーに送達するよう構成されており、
前記ユーザー装置は、データの次のチャンクが必要とされるかどうかを判定し、データの該次のチャンクが保護されるかどうかを判定し；データの該次のチャンクが保護されていない場合にはデータの前記次のチャンクを前記安全でない経路を介して要求し、受領するよう構成されている、
通信システム。
（付記１９）
前記安全でない経路は、データの一つまたは複数のチャンクをキャッシュするキャッシュを含み、前記ユーザー装置は、前記キャッシュを介して前記コンテンツ源装置に接続され、
前記キャッシュは、保護されていないデータのチャンクを前記コンテンツ源装置から要求し、受領するとともに、それらのデータのチャンクを前記ユーザー装置からの要求に応答して前記ユーザー装置に送信するよう構成されている、
付記１８記載の通信システム。
（付記２０）
通信システムにおいて使う方法であって、
コンテンツ源がデータをデータの二つ以上のチャンクに分割し；データのチャンクを、保護されているまたは保護されていないとしてマークし；データのチャンクに対する要求をユーザーから受信し、該データをユーザーに送達することと、
ユーザーが、データの次のチャンクが必要とされるかどうかを判定し、データの該次のチャンクが保護されるかどうかを判定し；データの該次のチャンクが保護されていない場合にはデータの前記次のチャンクを安全でない経路を介して要求し、受領することを含む、
方法。
【符号の説明】
【０１１５】
１  ユーザー（装置）／消費者
２  コンテンツ源（装置）／所有者
３  キャッシュ
１１  ネットワーク・モジュール
１２  判定モジュール
１３  要求モジュール
２１  ネットワーク・モジュール
２２  入出力モジュール
２３  分類器モジュール
２４  分割モジュール
Ｓ４０１  コンテンツ源への安全な経路を確立し、コンテンツ源への安全でない経路を確立
Ｓ４０２  次のデータ・チャンク必要？
Ｓ４０３  次のデータ・チャンクは保護される？
Ｓ４０４  次のデータ・チャンクを安全でない経路を介して要求し、受領
Ｓ４０５  次のデータ・チャンクを安全な経路を介して要求し、受領
Ｓ５０１  ユーザーへの安全な経路を確立し、ユーザーへの安全でない経路を確立
Ｓ５０２  データを二つ以上のチャンクに分割
Ｓ５０３  データのチャンクを、保護されているまたは保護されていないとしてマーク付け
Ｓ５０４  データのチャンクに対する要求をユーザーから受領
Ｓ５０５  要求されたデータ・チャンクが保護されるか？
Ｓ５０６  要求が安全でない経路を介して受領されたか？
Ｓ５０７  要求されたデータ・チャンクを安全でない経路を介して送信
Ｓ５０８  要求が安全な経路を介して受領されたか？
Ｓ５０９  要求されたデータ・チャンクを安全な経路を介し送信
Ｓ５１０  エラー・メッセージを返す
Ｓ５１１  エラー・メッセージを返す
Ｓ８０１  コンテンツに対する要求
Ｓ８０２  要求は安全な経路を介してか？
Ｓ８０３  コンテンツ所有者からフェッチ
Ｓ８０４  コンテンツがキャッシュされているか？
Ｓ８０５  キャッシュからフェッチ
Ｓ８０６  コンテンツ所有者からフェッチ
Ｓ８０７  コンテンツをキャッシュ
Ｓ８０８  消費者に送達
Ｓ１００１  許諾接続を確立
Ｓ１００２  オープンな接続を確立
Ｓ１００３  次のコンテンツ・チャンクが必要とされる
Ｓ１００４  チャンクが保護されているか？
Ｓ１００５  チャンクを保護された接続を介してフェッチ
Ｓ１００６  チャンクはオープンな接続を介してフェッチ
Ｓ１００７  チャンクを利用
Ｓ１２０１  許諾接続を確立
Ｓ１２０２  オープンな接続を確立
Ｓ１２０３  次のコンテンツ・ブロックが必要とされる
Ｓ１２０４  符号化されたコンテンツをオープンな接続を介してフェッチ
Ｓ１２０５  符号化テーブルを保護された接続を介してフェッチ
Ｓ１２０６  ブロックを閲覧またはバッファリング
Ｓ１４０１  許諾接続を確立
Ｓ１４０２  オープンな接続を確立
Ｓ１４０３  次のピクチャー・グループが必要とされる
Ｓ１４０４  BおよびPフレームをオープンな接続を介してフェッチ
Ｓ１４０５  Iフレームを保護された接続を介してフェッチ
Ｓ１４０６  ピクチャー・グループに組み合わせる
Ｓ１５０１  コンテンツ所有者でのアクセスを許諾
Ｓ１５０２  次のコンテンツ・チャンクが必要とされる
Ｓ１５０３  チャンクが保護されるか？
Ｓ１５０４  チャンクを所有者に要求
Ｓ１５０５  所有者が許諾を検査
Ｓ１５０６  ユーザーの公開鍵を用いてチャンクを暗号化
Ｓ１５０７  チャンクをキャッシュからフェッチ
Ｓ１５０８  ユーザーの公開鍵を用いてチャンクを暗号化
Ｓ１５０９  チャンクを送達
Ｓ１５１０  秘密鍵を使ってチャンクを復号
Ｓ１５１１  チャンクを利用
【図１】
2017108400.tif 000003
【図２】
2017108400.tif 000004
【図３】
2017108400.tif 000005
【図４】
2017108400.tif 000006
【図５】
2017108400.tif 000007
【図６】
2017108400.tif 000008
【図７】
2017108400.tif 000009
【図８】
2017108400.tif 000010
【図９】
2017108400.tif 000011
【図１０】
2017108400.tif 000012
【図１１】
2017108400.tif 000013
【図１２】
2017108400.tif 000014
【図１３】
2017108400.tif 000015
【図１４】
2017108400.tif 000016
【図１５】
2017108400.tif 000017