JP2015521405A - 適応ストリーミングのためのセグメント暗号化及びキー導出を信号伝達するシステム及び方法 - Google Patents

適応ストリーミングのためのセグメント暗号化及びキー導出を信号伝達するシステム及び方法 Download PDF

Info

Publication number
JP2015521405A
JP2015521405A JP2015509182A JP2015509182A JP2015521405A JP 2015521405 A JP2015521405 A JP 2015521405A JP 2015509182 A JP2015509182 A JP 2015509182A JP 2015509182 A JP2015509182 A JP 2015509182A JP 2015521405 A JP2015521405 A JP 2015521405A
Authority
JP
Japan
Prior art keywords
segment
segments
identifying
encoded
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015509182A
Other languages
English (en)
Other versions
JP5923661B2 (ja
Inventor
ワン,シン
リィウ,ヨンリアン
ジャン,シャオボ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2015521405A publication Critical patent/JP2015521405A/ja
Application granted granted Critical
Publication of JP5923661B2 publication Critical patent/JP5923661B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0457Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
    • H04N21/23476Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • H04N21/44055Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption by partially decrypting, e.g. decrypting a video stream that has been partially encrypted
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6334Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8543Content authoring using a description language, e.g. Multimedia and Hypermedia information coding Expert Group [MHEG], eXtensible Markup Language [XML]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Library & Information Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Transfer Between Computers (AREA)
  • Storage Device Security (AREA)

Abstract

メディアストリームを復号化する装置は、メモリモジュールと、前記メモリモジュールに結合されたプロセッサモジュールとを有し、前記メモリモジュールは、前記プロセッサによって実行されたときに、当該装置に、セグメントシグナリング情報と複数のセグメントとを有するメディアストリームを受信することであり、前記複数のセグメントは、符号化されたセグメント及び符号化されていないセグメントを有し、前記セグメントシグナリング情報は、少なくとも1つのセグメントを各々が有する少なくとも2つのセグメントグループを特定するものを有する、受信することと、前記メディアストリーム内の前記セグメントシグナリング情報を用いて、少なくとも1つのセグメントグループを特定することと、前記少なくとも1つのセグメントグループに関する少なくとも1つのセグメント復号化アルゴリズムを特定することと、前記少なくとも1つのセグメントグループに関する少なくとも1つの復号化キーを特定することと、前記少なくとも1つのセグメント復号化アルゴリズムと前記少なくとも1つの復号化キーとを用いて、前記少なくとも1つのセグメントグループ内の各符号化されたセグメントを復号化することと、を実行させる命令を格納する。

Description

本発明は、適応ストリーミングのためのシステム及び方法に関する。
本出願は、Xin Wang等によって2012年4月26日に出願された“System and Method for Signaling Segment Encryption and Key Derivation for Adaptive Streaming”と題する米国仮出願第61/638963号の優先権を主張するものであり、ここにそれを援用する。
メディアコンテンツプロバイダ又は配信業者は、加入者又はユーザに、様々なメディアコンテンツを、例えばテレビジョン、ノートブックコンピュータ、及びモバイルハンドセットなどの異なる装置に適した異なる暗号化スキーム及び/又は符号化スキームを用いて配信することがある。メディアコンテンツプロバイダは、複数の、メディアエンコーダ及び/又はデコーダ(コーデック)、メディアプレーヤ、ビデオフレームレート、空間解像度、ビットレート、ビデオフォーマット、又はこれらの組み合わせをサポートし得る。メディアコンテンツの断片(ピース)が、ソース表現又はオリジナル表現から、異なるユーザ装置に適する様々な他の表現へと変換され得る。
メディアコンテンツの断片は、メディアプレゼンテーション記述(media presentation description;MPD)と複数のセグメントとを有し得る。MPDは、そのメディアコンテンツに関する情報を記述するようにプログラムされる複数の要素(エレメント)及び属性(アトリビュート)を有し得る。拡張マークアップ言語(XML)プログラミングにおいて、要素は、<要素名>によって指し示される開始タグと、要素コンテンツと、</要素名>によって指し示される終了タグとを含む3つの部分を有し得る。また、要素は、1つ以上の属性及び/又は子要素を包含し得る。属性は属性名及び属性値を有し得る。MPDは、メディアコンテンツ、例えば、その様々な表現(以下にて定義)、ユニフォームリソースロケータ(URL)アドレス及びその他の特性など、を記述するXMLファイル又はXML文書とし得る。例えば。メディアコンテンツは、幾つかのメディアコンポーネント(例えば、オーディオ、ビデオ、及びテキスト)を有することができ、それらの各々が、MPD内で規定される異なる特性を有し得る。各メディアコンポーネントは、実際のメディアコンテンツの部分を収容する複数のセグメントを有し、それらのセグメントが、単一のファイルに集合的に格納され、あるいは複数のファイルに個別に格納され得る。各セグメントは、メディアコンテンツのうちの、所定のバイトサイズ(例えば、1000バイト)又は再生時間区間(例えば、2秒若しくは5秒)を収容し得る。セグメントは、MPDを介してアドバタイズされるURLを用いてダウンロードされることが可能なエンティティである最小個別アドレス可能データユニットを有し得る。
アプリケーションに応じて、メディアコンテンツは様々な階層に分割されることがある。例えば、メディアコンテンツは、1つの期間がセグメントよりも相対的に長い時間区間であるような複数の期間を有し得る。例えば、或る1つのテレビジョン番組が、幾つかの長さ2分のコマーシャル期間によって隔てられた、幾つかの長さ5分の番組期間に分割され得る。さらに、或る1つの期間が、1つ又は複数のアダプテーションセット(AS)を有し得る。ASは、1つ又は複数のメディアコンポーネントについての情報と、その/それらの様々な符号化された表現とを提供し得る。表現は、例えば、多重化されていない2.5メガビット毎秒(Mbps)720画素(p)アドバンストビデオコーディング(AVC)ビデオを含む国際標準化機構(ISO)ベースメディアファイルフォーマット(ISO−BMFF)、及び、複数の異なる言語の96キロビット毎秒(Kbps)MPEG−4(Moving Picture Experts Group-4)アドバンストオーディオコーディング(AAC)オーディオ用の別のISO−BMFF表現といった、そのコンポーネントのアセット全体又はサブセットの、単一の符号化されたバージョンとして定義され得る。例えば、或るASが、メディアコンテンツの、複数の異なるビットレートのビデオコンポーネントを包含し、別のASが、同じメディアコンテンツの、複数の異なるビットレートのオーディオコンポーネントを包含し得る。表現は、他の表現とはビットレート、解像度、チャンネル数、若しくはその他の特性、又はこれらの組み合わせにより異なった、メディアコンテンツの符号化された選択肢であるとし得る。各表現は、時系列でメディアコンテンツをぶつ切りにしたもの(チャンク)である複数のセグメントを有する。また、1つのセグメントを複数の部分にてダウンロードすることを可能にするために、各サブセグメントが特定の期間及び/又はバイトサイズを有するサブセグメントが使用されることがある。当業者は、メディアコンテンツを配信するために使用可能な様々な階層を理解するであろう。
適応ストリーミングにおいて、メディアコンテンツをユーザ装置に配信するとき、ユーザ装置は、例えばネットワーク状態、装置能力、及びユーザ選択などの多様な要因に基づいて、適切なセグメントを動的に選択し得る。適応ストリーミングは、例えばダイナミックアダプティブストリーミング・オーバー・ハイパーテキスト転送プロトコル(HTTP)(DASH)、HTTPライブストリーミング(HLS)、又はインターネット情報サービス(IIS)スムーズストリーミングなど、実装済み又は開発中の様々な技術又は規格を含み得る。例えば、ユーザ装置は、再生中に失速又は再バッファリングを生じさせずに再生に間に合うようにダウンロードされることができる可能な限り高い品質(例えば、解像度又はビットレート)のセグメントを選択し得る。故に、ユーザ装置は、そのメディアコンテンツ再生を、変わりゆくネットワーク状態に途切れなく適応させ得る。メディアコンテンツに対する改ざん、攻撃、及び/又は不正アクセスを防止するため、メディアコンテンツのセグメントは、ここでは暗号化スキーム又は符号化スキームとして参照する認証スキームによって保護される必要があり得る。
例えばMPEG(Moving Picture Experts Group)−DASH規格などの適応ストリーミング技術において、セグメントは、例えば、ペイ・パー・ビュー方式のビデオストリームモデルを提供するために、認証スキームの部分として暗号化あるいは符号化され得る。一例は、ISO/IEC23009−4という番号で“Dynamic Adaptive Streaming over HTTP (DASH)―Part 4:Segment Encryption and Authentication”(ISO/IEC 23009−4)というタイトルの規格案に規定されるセグメント認証スキームであり、ここにそれを援用する。なお、IECは国際電気標準会議(International Electrotechnical Commission;IEC)を表す。MPEGストリーム全体を符号化することは、必要以上に大きいストリームを生成することになり、それ相応に大きい処理能力を必要とするか遅延をもたらすかになり得るので、結果として、一部のプロトコルは一部のセグメントのみを符号化している。従来からの取り組みは、例えば偶数セグメントを符号化して奇数セグメントは符号化しないままにするといった、交互スキームを用いて選択的にセグメントを符号化している。ストリーム全体に満たないものを符号化してはいるとはいえ、この取り組みは、必要以上に多くのセグメントを符号化してしまい得る。従来からの取り組みは、さらに、ストリームの符号化に関して単一アルゴリズム手法に頼っており、これは、例えば第1のソースからの娯楽コンテンツ及び第2のソースからのコマーシャルといった複数の異なるソースからのコンテンツを、単一のMPEGストリームへと結合することを可能にしない。従来からの取り組みは、さらに、ストリームの符号化解除又は暗号解読の情報を備えた初期化ベクトルを含んでおり、初期化ベクトルのレイトバインディングを受け入れていない。
適応ストリーミングのためのシステム及び方法を提供する。
一実施形態において、本開示は、メディアストリームを復号化する装置を含み、当該装置は、メモリモジュールと、前記メモリモジュールに結合されたプロセッサモジュールとを有し、前記メモリモジュールは、前記プロセッサによって実行されたときに、当該装置に、セグメントシグナリング情報と複数のセグメントとを有するメディアストリームを受信することであり、前記複数のセグメントは、符号化されたセグメント及び符号化されていないセグメントを有し、前記セグメントシグナリング情報は、少なくとも1つのセグメントを各々が有する少なくとも2つのセグメントグループを特定するものを有する、受信することと、前記メディアストリーム内の前記セグメントシグナリング情報を用いて、少なくとも1つのセグメントグループを特定することと、前記少なくとも1つのセグメントグループに関する少なくとも1つのセグメント復号化アルゴリズムを特定することと、前記少なくとも1つのセグメントグループに関する少なくとも1つの復号化キーを特定することと、前記少なくとも1つのセグメント復号化アルゴリズムと前記少なくとも1つの復号化キーとを用いて、前記少なくとも1つのセグメントグループ内の各符号化されたセグメントを復号化することと、を実行させる命令を格納する。
他の一実施形態において、本開示は、符号化されたメディアストリームを送信する装置を含み、当該装置は、メモリモジュールと、前記メモリモジュールに結合されたプロセッサモジュールとを有し、前記メモリモジュールは、前記プロセッサによって実行されたときに、当該装置に、複数の符号化されたセグメント及び符号化されていないセグメントと、セグメントシグナリング情報であり、少なくとも1つのセグメントを各々が有する少なくとも2つのセグメントグループ、少なくとも1つのセグメント復号化アルゴリズム、少なくとも1つの復号化キー、及び少なくとも1つの初期化ベクトルであり、前記少なくとも2つのセグメントグループの各々の符号化されたセグメントが、前記少なくとも1つの復号化アルゴリズム、前記少なくとも1つの復号化キー、及び前記少なくとも1つの初期化ベクトルを用いて復号化されることができるもの、を特定するのに十分な情報を有するセグメントシグナリング情報と、を有するメディアストリームを送信させる命令を格納する。
他の一実施形態において、本開示は、メディアストリームを復号化する方法を含み、当該方法は、複数の符号化されたセグメント及び符号化されていないセグメントを有するメディアストリームを受信することであり、前記メディアストリームは更に、少なくとも1つのセグメントを各々が有する複数の少なくとも2つのセグメントグループを特定し、どのセグメントグループも、符号化されたセグメント及び符号化されていないセグメントの双方ともは有さず、少なくとも1つのセグメント復号化アルゴリズムを特定し、前記符号化されたセグメントに関する少なくとも1つの復号化キーを特定し、且つ前記符号化されたセグメントを復号化する、のに十分なセグメントシグナリング情報を有する、受信することと、符号化されたセグメントを有する少なくとも1つのセグメントグループを特定することと、少なくとも1つのセグメント復号化アルゴリズムを特定することと、少なくとも1つの復号化キーを特定することと、前記少なくとも1つのセグメント復号化アルゴリズムと前記少なくとも1つの復号化キーとを用いて、符号化されたセグメントを有する少なくとも1つのセグメントグループを復号化することとを有する。
本開示の、より完全なる理解のため、同様の部分を同様の参照符号が表す添付図面及び詳細説明に関連して、ここで以下の簡単な説明を参照しておく。
メディアストリーミングスキームの一実施形態を例示する図である。 ネットワーク要素の一実施形態の模式図である。 セグメント及びコンテンツ保護エンコーディングを生成するスキームの一実施形態の模式図である。 図3に記載される実施形態の下でデータを伝送するためのプロトコル図である。 セグメント及びコンテンツ保護エンコーディングを生成するスキームの一実施形態の模式図である。 図5に記載される実施形態の下でデータを伝送するためのプロトコル図である。
最初に、理解されるべきことには、1つ以上の実施形態の例示的な実装を以下にて提示するが、開示されるシステム及び/又は方法は、現に知られていようとなかろうと、あるいは現に存在していようとなかろうと、様々な技術を用いて実装され得る。本開示は決して、ここに図示して記述される代表的な設計及び実装を含めて、以下に例示される実装、図面及び技術に限定されるべきものでなく、添付の請求項の範囲及びそれらの完全なる均等範囲の中で変更され得るものである。
ここに、例えばMPEG−DASHストリームといった適応ストリーミング環境におけるコンテンツ保護のための順応性あるシグナリング(信号伝達)機構に関するシステム及び方法を開示する。例えば、本開示は、初期化ベクトルのレイトバインディングを受け入れるための新規な取り組みを含む。また、本開示は、メディアストリーム内の暗号化/符号化セグメント又は非暗号化/非符号化セグメントを、ストリーミングクライアントに通知する新規な取り組みを含む。さらに、本開示はまた、メディアストリーム当たり複数の暗号化/符号化アルゴリズムを利用するための取り組みを含む。本開示は更に、MPEG−DASH規格の発展に関して、柔軟、効率的且つコンパクトな手法で、どのセグメントが暗号化される(そして、一般に、符号化される)かを信号伝達するシステム及び方法を含む。
従来からのセグメント暗号保護スキームは、セグメント全体の保護が必要とされるときに使用され得る標準的な暗号化及びキーマッピングの方法を規定している。そのようなスキームは、セグメントをビットの集合として取り扱い且つセグメント全体に暗号化を適用することによって機能し得る。暗号化されたセグメントの範囲を特定するため、及びDASH MPD内に必要とされる関連キー(鍵)及び初期化ベクトルを指定するため、定義が提供され得る。例えば、ISO/IEC CD 23009−4の第5.1.2.2節は、以下のセマンティックス表を提供している。
Figure 2015521405
特段に定義しない限り、ここで使用される用語は、ISO/IEC CD 23009−4のセマンティックス及び定義を用いて定義され得る。
例えば上述のものなどの従来からのスキームにおいて、暗号化は、@startSegment及び@endSegment(又は、これらの暗黙値)の双方によって信号伝達される。初期化ベクトルが存在する場合、これは、属性@IVとして伝えられる。メディアセグメント暗号化/解読キー情報は、CryptoPeriod要素の属性@keyURLとして、あるいは@keyURLTemplate属性を介して提供される。コンテンツキーを得るために、各CryptoRepiodに対してHTTPSプロトコルが起動される必要がある。
このような従来スキームは、暗号化されるセグメントの全てにわたって同じ初期化ベクトル(IV)/キーの対を用いて、立て続けのセグメントの“範囲”又は“チャンク”上で暗号化を実行し得る。暗号化されるセグメントを交互にするために、例えば、表現内の奇数番号のセグメントのみを暗号化するために、複数のCryptoPeriod要素が必要とされて、MPDサイズ及び始動時間を増大させ得る。MPD内でIV要素及びkeyURL要素を伝達することは、MPDサイズを更に増大させ得る。規格内で例えばマーリンファイルフォーマット、セキュアリアルタイムプロトコル等々の“ハードコードされた”セグメント暗号化フォーマットの使用を規定することは、従来スキームを、順応性がなく、異なるキー長さ又はその他のモードを使用する暗号化フォーマットに対応することができないものにし得る。
本開示は、例えばMPEG−DASHストリームといった適応ストリーミング環境において、MPDを拡張して順応性及びコンテンツ保護のシグナリング機構を提供するために使用され得る要素を導入する。導入されるシステム及び方法を表現するセマンティックスの例(更に後述する)は、以下の表に記述されたものを含む。
Figure 2015521405
Figure 2015521405
先ず、@segmentEncryptionFlag属性及び@segmentEncryptionSignaling属性を参照するに、@segmentEncryptionFlag属性は、CryptoPeriod要素、又は、例えばDASH MPD内のContentProtection要素といったセグメント暗号化を信号伝達するのに必要な何らかの要素、に導入され得る。@segmentEncryptionFlag値は、例えばベース64フォーマットや16進フォーマットなどで符号化されるような2進列を表現し得る。この列内のi番目のビットの0−1値は、CryptoPeriod内のi番目のセグメントが符号化又は暗号化されているかを信号伝達し、例えば、符号化又は暗号化されていない場合に0を使用し、符号化又は暗号化されている場合に1を使用する。例えば、AAAA(16進数)=1010101010101010(2進数)なる値は、奇数番号のセグメント1,3,5,7,9,11,13,15が暗号化され、偶数番号のセグメント2,4,6,8,10,12,14が暗号化されていないことを指し示すセグメントマップを提供することができ、5EB52(16進数)=01011110101101010010(2進数)なる値は、セグメント2,4,5,6,7,9,11,12,14,16,19が暗号化され、セグメント1−20のうちのその他が暗号化されていないことを指し示すことができる。
@segmentEncryptionSignaling属性は、@segmentEncryptionFlagと同様の機能を、異なる手法で果たす。@segmentEncryptionSignaling属性は、暗号化されたセグメント及び/又は暗号化されていないセグメントをグループ分けし、また更なる情報を提供するために、正及び負の整数をテキストの文字列として用いて暗号化セグメントのセグメントマッピングを作成し得る。例えば、@segmentEncryptionSignalingの値が“3,−4,3,1”である場合、これが意味するのは、11個のセグメントが存在し、これらのセグメントは、隣接するセグメントからなる4つのグループに分けられており、これら4つのグループに含まれる隣接セグメントの数は、それぞれ、3,−4,3,1であり、2番目のグループの全てのセグメントが暗号化されておらず、残りのグループの全てのセグメントが暗号化されており、そして、これら4つのグループ内のセグメントは、それらの対応する整数の順に従って時間的に順序づけられている、ということである。
@segmentEncryptionFlag数のバイナリ変換内のビット又は@segmentEncryptionSignalingで説明されるセグメントの総数が、CryptoPeriodで及ばれるセグメントの総数より多い場合、列内の余分なビットは無視され得る。@segmentEncryptionFlag数のバイナリ変換内のビットの総数がセグメントの総数より少ない場合(例えば、期間に終わりがないとき)、デフォルト設定により、これらのビットによって信号伝達されない)余分なセグメントの全てが暗号化され得る。とりわけ、その暗号化がn桁の16進数によって信号伝達されることができるセグメントの最大数は、4nとなり得る。これが意味することは、CryptoPeriod内に100個の暗号化又は符号化されたセグメントが存在する場合、それらが暗号化されたかを信号伝達することには25桁の16進数で十分であり得るということである。
@iterates値は、適用可能なセグメントを復号化するために必要な@segmentEncryptionFlag属性及び/又は@segmentEncryptionSignaling属性の繰り返し数を指し示す正数とし得る。存在しない場合、デフォルトは単一の繰り返しのみとし得る。故に、必要に応じて、セグメントマップは、多数のセグメントに対して、よりコンパクトな形態で表現され、例えば、@segmentEncryptionFlag=1101(2進数)及び@iterates=1000(10進法)で表現される。
@algorithm属性は、この属性に関連付けられたセグメントを符号化又は暗号化するのに使用されたアルゴリズムを指し示し得る。これは、複数のアルゴリズムを用いて単一のストリームを符号化することを受け入れる助けとなり得る。
@ivURL属性及び@ivURLTemplate属性は、IVのレイトバインディングをサポートするために導入される。@ivURL属性及び@ivURLTemplate属性の実装は、従来からの取り組みに含まれた@keyURLTemplate属性及び@keyURL属性を用いたキーのレイトバインディングの実装と同様とし得る。
@keyLicenseURL及び@keyLicenseURLTemplate要素は、ライセンスの形態でのキー輸送をサポートするために導入される。これらの属性は、デジタル著作権管理(DRM)の枠組みで現在利用されているのと同様の手法で権利客体を取得するために、ライセンスサーバにコンタクトを取るための位置及びフォーマットを規定し得る。
当業者が認識するように、複数のグループのセグメントに対して複数のCryptoPeriod要素を持つことは必ずしも必要でない。或る表現又はアダプテーションセットに必要なセグメント暗号化情報の全体を提供することには、3つの属性、例えば@segmentEncryptionSignaling、@ivURLTemplate及び@keyURLTemplate、を備えた唯一のCryptoProtection要素で十分である。
図1は、メディアストリーミングスキーム100の一実施形態を例示しており、これは、HTTPサーバ120からストリーミングクライアント110にメディアコンテンツを配信するように実装され得る。例えば、ストリーミングスキーム100は、DASH又はその他の種類のストリーミングスキームとし得る。ストリーミングクライアント110は、スタンドアローン装置、ユーザ装置のオペレーティングシステムに実装されたプログラム若しくはアプリケーション、又はウェブプラットフォーム内でアクセスされるウェブクライアントとし得る。HTTPサーバ120に格納されるメディアコンテンツが、ストリーミングメディア準備ユニット130によって生成あるいは準備され得る。メディア準備ユニット130は、HTTPサーバ120と同じ場所に配置されていてもよいし、その他の場所(例えば、コンテンツプロバイダの位置)に配置されていてもよい。HTTPサーバ120は、コンテンツプロバイダネットワークの一部であってもよいし、コンテンツ配信ネットワーク(CDN)内のノードであってもよい。メディアコンテンツは、少なくとも部分的に1つ以上のコンテンツプロバイダによって生成されて、その後にCDNノードに伝送され得る。HTTPサーバ120内のメディアコンテンツは、MPDと複数のセグメントとを有し得る。なお、望ましい場合には、MPD及びセグメントは、複数の異なるサーバに格納されて、ストリーミングクライアント110によって異なるサーバから検索されてもよい。さらに、ここに記載されるHTTPサーバは、単にサーバの一例としての役割を果たすものであり、故に、理解されるべきことには、ここに開示される実施形態はまた、如何なる他の好適種類のサーバに実装されてもよい。
ストリーミングスキーム100において、ストリーミングクライアント110は、メディアコンテンツに関してHTTPサーバ120に要求を送信し得る。応答して、HTTPサーバ120は、先ず、MPD配信機能140を用いて、ストリーミングクライアント110にMPDを配信し得る。MPDは、HTTP、HTTPセキュア(HTTPS)、電子メール、ユニバーサルシリアルバス(USB)ドライブ、放送、又は何らかの他の輸送を用いて届けられ得る。MPDを構文解析することにより、ストリーミングクライアント110は、メディアコンテンツに関する情報、例えば、番組のタイミング、メディアコンテンツの利用可能性、メディア種類、解像度、最小及び最大の帯域幅、マルチメディアコンポーネントの様々な符号化された選択肢の存在、アクセス可能にする機構及び要求されるDRM、ネットワーク上の各メディアコンポーネントの位置、並びにメディアコンテンツ及び配信環境のその他の特性、を学習し得る。この情報を用いて、ストリーミングクライアント110は、適切な符号化された表現又は複数の表現の組み合わせを選択し、HTTP Get要求を用いてセグメントを取り出すことによってメディアコンテンツのストリーミングを開始し得る。HTTPサーバ120は、セグメント配信機能を用いて、ストリーミングクライアント110にセグメントを配信し得る。なお、ストリーミングクライアント110は、例えばネットワーク帯域幅の使用を最小化するために、複数のHTTPサーバからセグメントをダウンロードしてもよい。ストリーミングクライアント110は、ストリーミングクライアント110のユーザにストリーミングサービスを提供するように、ダウンロードしたメディアを適切にレンダリングし得る。ストリーミングクライアント110は、MPD内に含まれるURLによって規定される位置からに基づいてセグメントを取得し得るが、セグメントは、これに代えて、ストリーミングクライアント110の受信の効率を向上させるようにHTTPキャッシュ150(例えば、HTTPサーバ120又はCDNノード内)に格納されてもよい。
バッファリングが望ましい場合、ネットワークスループット変化を許容するように適切にバッファリングした後に、ストリーミングクライアント110は、ネットワークの帯域幅揺動を監視しながら、後続のセグメントをダウンロードすることを継続し得る。その測定結果に応じて、ストリーミングクライアント110は、十分なバッファを維持するように異なる表現(例えば、より低いビットレート又はより高いビットレートを有する)のセグメントをダウンロードすることによって、利用可能な帯域幅に合わせて適応的にストリーミングを調整し得る。
本開示にて記述される機構/方法の少なくとも一部は、ネットワーク要素に実装され得る。例えば、本開示に係る機構/方法は、ハードウェア、ファームウェア、及び/又はハードウェア上で実行されるようにインストールされたソフトウェアを用いて実装され得る。ネットワーク要素は、例えば交換機、ルータ、ブリッジ、サーバ、クライアントなど、ネットワークを介してデータを輸送する如何なる装置であってもよい。図2は、ネットワーク要素200の一実施形態の模式図であり、これは、ネットワークを介してデータの輸送及び処理を行う如何なる装置であってもよい。例えば、ネットワーク要素200は、コンテンツルータ、又は、ここに記載されるスキームのうちの1つを移植したコンテンツセントリックネットワーク(CCN)/ネームドデータネットワーク(NDN)内の何らかの装置若しくはルータとし得る。ネットワーク要素200は、上述の適応式転送の方策を実装あるいはサポートするように構成され得る。
ネットワーク要素200は、送信器、受信器又はこれらの組み合わせとし得るトランシーバ(Tx/Rx)212に結合された1つ以上のダウンストリームポート210を有し得る。このTx/Rx212は、ダウンストリームポート210を介して、他のノードからのフレームの送信及び/又は受信を行い得る。同様に、ネットワーク要素200は、複数のアップストリームポート230に結合された別のTx/Rx212を有することができ、このTx/Rx212は、アップストリームポート230を介して、他のノードからのフレームの送信及び/又は受信を行い得る。プロセッサ225が、これらのTx/Rx212に結合され、フレームを処理するように、及び/又はフレームを送信すべきノードがどれかを決定するように構成され得る。プロセッサ225は、1つ以上のマルチコアプロセッサ及び/又はデータ格納部やバッファなどとして機能し得るメモリモジュール222を有し得る。プロセッサ225は、汎用プロセッサとして実装されてもよいし、1つ以上の特定用途向け集積回路(ASIC)及び/又はデジタル信号プロセッサ(DSP)の部分であってもよい。ダウンストリームポート210及び/又はアップストリームポート230は、電気的及び/又は光学的な送信及び/又は受信コンポーネントを含み得る。ネットワーク要素200は、経路決定を行うルーティングコンポーネントであってもよいし、そうでなくてもよい。メモリモジュール222は、ここに記載されるシステム及び方法を、例えばストリーミングクライアント110として、HTTPサーバ120として等々で、実行に移すための命令を収容することに使用され得る。メモリモジュール222は、プロセッサ225上で実行され得るプログラム可能なコンテンツ転送プレーンブロック228を有し得る。代わりに、転送プレーンブロック228は、プロセッサ225上に直接実装されてもよい。プログラム可能コンテンツ転送プレーンブロック228は、例えばオープンシステムインターコネクション(OSI)モデルのアプリケーション層又はレイヤ3(L3)などで、コンテンツの転送及び処理の機能を実装するように構成されることができ、その場合、コンテンツは、コンテンツの名称若しくはプレフィックスと、場合により、コンテンツをネットワークトラフィックにマッピングするその他のコンテンツ関連情報と、に基づいて転送され得る。このようなマッピング情報は、メモリモジュール222の位置のコンテンツテーブル229にて維持管理され得る。プログラム可能コンテンツ転送プレーンブロック228は、コンテンツに関するユーザ要求を解釈して、それに従って、例えばメタデータ及び/又はコンテンツ名に基づいて、ネットワーク又はその他のコンテンツルータからコンテンツを取り出し得るとともに、そのコンテンツを、例えば一時的に、メモリモジュール222に格納し得る。そして、プログラム可能コンテンツ転送プレーンブロック228は、キャッシュしたコンテンツをユーザに転送し得る。プログラム可能コンテンツ転送プレーンブロック228は、ソフトウェア、ハードウェア、又はこれら双方を用いて実装されることができ、また、OSIモデルの、例えばリンク層2(L2)又はリンク層3(L3)といった、インターネットプロトコル(IP)層より上の層で動作し得る。メモリモジュール222は、例えばランダムアクセスメモリ(RAM)といった、コンテンツを一時的に格納するためのキャッシュを有し得る。加えて、メモリモジュール222は、例えば読み出し専用メモリ(ROM)といった、比較的長くコンテンツを格納するための長期ストレージを有し得る。例えば、キャッシュ及び長期ストレージは、ダイナミックランダムアクセスメモリ(DRAM)、ソリッドステートドライブ(SSD)、ハードディスク、又はこれらの組み合わせを含み得る。
理解されるように、ネットワーク要素200への実行可能命令のプログラム及び/又はロードを行うことにより、プロセッサ220、キャッシュ、及び長期ストレージのうちの少なくとも1つが変更され、ネットワーク要素200は部分的に、本開示によって教示される新規な機能を有する例えばマルチコア転送アーキテクチャといった特別なマシン又は装置へと転換される。実行可能なソフトウェアをコンピュータにロードすることによって実装されることが可能な機能が、周知の設計ルールによってハードウェア実装へと変換され得ることは、電気工学及びソフトウェア工学の技術にとって基本的なことである。コンセプトをソフトウェアで実装することとハードウェアで実装することとの間での決定は、典型的に、ソフトウェアドメインからハードウェアドメインへの変換に伴う問題というよりむしろ、設計の安定性及び作製すべきユニットの個数の検討次第である。一般に、ハードウェア実装を再設計することはソフトウェア設計を再設計することより高価であるので、依然として頻繁に変更されている設計はソフトウェアで実装されることが好ましいと云い得る。一般に、大量生産工程にとっては、ハードウェア実装の方がソフトウェア実装より安価となり得るので、安定しており且つ大量生産されることになる設計は、例えばASICにて、ハードウェア実装されることが好ましいと云い得る。しばしば、設計は、ソフトウェアの形態で開発されてテストされ、その後に、周知の設計ルールによって、そのソフトウェアの命令をハードワイヤする特定用途向け集積回路にて、等価なハードウェア実装へと転換され得る。新たなASICによって制御されるマシンが特別なマシン又は装置であるのと同じように、実行可能な命令をプログラム及び/又はロードされたコンピュータも同様に特別なマシン又は装置として見ることができる。
図3は、セグメント及びコンテンツ保護エンコーディングを生成するスキーム300の一実施形態を例示する図である。スキーム300は、例えば図1のHTTPサーバ120などのHTTPサーバによって、あるいは、例えば図2のネットワーク要素200の形態でメディアコンテンツプロバイダによって実行され得る。例えば、スキーム300は、転送プレーンブロック228の部分とし得る。メディアコンテンツ302が、セグメンテーションユニット又はモジュール304によって、例えば表現306及び/又は308(集合的あるいは二者択一的に、306/308)として、複数のセグメントへと分割される。先述のように、アプリケーションに応じて、メディアコンテンツを表すために様々な階層が使用され得る。サブセグメントが使用される場合、ここに記載されるスキームは、セグメントに適用されるのと同じように、サブセグメントに適用され得る。
各表現306/308は、例えば、初期化(イニシャライゼーション)セグメント(IS)310及び/又は312、並びに少なくとも1つのメディアセグメント(MS)318及び/又は320といった、複数のセグメントを有し得る。例えば、図3に示すように、表現306は、1つのIS310とm個のMS318とを有する。同様に、表現308は、1つのIS312とk個のMS320とを有する。各表現306/308は、等しい総数又は異なる総数のセグメントを有し得る。例えば、図3において、表現306がm個のMS318を有する一方で、表現308はk個のMS320を有するが、kとmは同じであってもよいし、異なってもよい。さらに、セグメント暗号化シグナリングモジュール326が、ここに記載されるセグメント暗号化シグナリングを作成して、該セグメント暗号化シグナリングをContentProtection要素324及び保護システム322に送信し得る。
保護システム322は、例えば特定のコンテンツ保護システムを適用することによって、表現306及び308をDASH準拠であるように処理し得る。保護システム322は、どのMS318及び/又は320が符号化を必要とするかを決定し、セグメント暗号化シグナリング/セグメントマッピングに使用する好適な@segmentEncryptionSignalingを作成し得る。保護システム322は、サードパーティライセンスサーバと連携してライセンスサーバURLを取得し得るとともに、サードパーティIVサーバと連携してivURLを取得し得る。スキーム300は、MPDストリームに324にてContentProtection要素を投入し得るとともに、@segmentEncryptionSignaling属性、@ivURLTemplate属性、@keyURLTemplate属性、及び@LicenseServerURL属性を作成して結び付け得る。保護システム322は、1つ以上の予め選択されたアルゴリズムを用いる所定の手法でMS318及び/又は320を符号化あるいは暗号化して、表現328及び330を作成し得る。表現328及び330は、IS332及び334と、符号化されたMS336及び338とを有し得る。複数のアルゴリズム又は非標準アルゴリズムが使用される場合、MPDストリームに1つ以上の@algorithm属性が投入されて結び付けられ得る。
一部の実施形態において、時変的又は時不変的の何れかのセグメントシグナリング情報が、メディアからの別々のストリーム内に置かれる。例えば、これは、パケット識別子(PID)をストリームに割り当て、それを、例えばMPEG−2トランスポートストリームにて、番組の一部とすることによって行われることができる。代わりに、この情報は、暗号化あるいは符号化されないままの索引(インデックス)セグメント内に置かれてもよい。更なる別の選択肢は、この情報をMPDファイル内に置くものである。この第3のケースでは、時不変部分は、個々のセグメントに繰り返し関連付けられるものではないMPD要素又は属性の中に置かれ得る。
図4は、図3に記載した実施形態の下でデータを伝送するためのプロトコル図である。図4は、例えば図1のクライアント110といった、コンテンツ保護スキーム300をサポートするように構成されたDASHクライアント402と、例えば図1のHTTPサーバ120といった、スキーム300を実行するように構成されたウェブサーバ404と、例えば図2のネットワーク要素200といったライセンスサーバ406とを有している。408にて、クライアント402が、MPDに関するHTTP要求をウェブサーバ404に対して行い得る。410にて、ウェブサーバ404が、例えば図3のIS332及び334を含んだ、MPDに関するHTTP応答を、クライアント402に送信し得る。クライアント402は、リソース統計、ネットワーク環境又は状態、装置能力、ユーザ選択などに従って、適切な復号化の選択及び/又は設定を行い得る。412にて、クライアント402が、MPDを構文解析して、MPDに含まれる情報を解釈し、414にて、クライアント402が、権利客体プロセス414を実行し得る。具体的には、416にて、クライアント402が、@keyLicenseURLのURLを用いてライセンスサーバ406からの権利客体を要求し、そして418にて、ライセンスサーバ406が、要求されたライセンス及び/又は権利客体でクライアント402に応答し得る。420にて、クライアント402が、@ivURLのURLを用いてライセンスサーバ406からのIVを要求し得る。422にて、ライセンスサーバ406が、要求されたIVデータでクライアント402に応答し得る。@keyLicenseURLTemplate及び@ivURLTemplateのデータを用いて、クライアント402は、該当するセグメントを復号化するのに必要なIV/キー対を取得し得る。ライセンスとIVとが同じライセンスサーバ406から送信されているが、当業者が認識するように、他の実施形態において、ライセンス及びIVは、異なるサーバに保管されて異なるサーバから送信されてもよい。424にて、クライアント402が、セグメントに関するHTTP要求をウェブサーバ404に送信し得る。426にて、ウェブサーバ404が、例えば図3のMS336及び338といった、符号化されたメディアセグメントを含んだ、セグメントに関するHTTP応答を、クライアント402に送信し得る。MPDとセグメントとが同じウェブサーバ404から送信されているが、当業者が認識するように、他の実施形態において、メディアコンテンツを記述するMPDと、そのメディアコンテンツのセグメントとは、異なるサーバに保管されて異なるサーバから送信されてもよい。例えば、MPDがコンテンツ配信業者から送信される一方で、セグメントはサードパーティのコンテンツ配信ノード(CDN)から送信されてもよい。クライアント402は、@segmentEncryptionSignaling情報に従って適切なアルゴリズム解読IV/キー対を適用することによって、暗号化されたメディアを解読し得る。428にて、クライアント402が、プレイアウト開始シーケンスを始めて、クライアント402のユーザ(図示せず)にメディアストリームを提供し得る。430にて、クライアント402は、リソース統計を更新することができ、432にて、クライアント402は、更新された統計に従って適応的にセグメントを選択し得る。データストリームを維持することの要求に応じて、クライアント402は、ストリーミングが完了するまで、1つ以上のステップ408−426を再開し得る。とりわけ、上述のステップの順序付けは単に例示的なものであり、当業者が認識するように、一部のステップが同時又は別の順序で行われてもよい。
図5は、セグメント及びコンテンツ保護エンコーディングを生成するスキーム500の一実施形態を例示する図である。別段の注記がなければ、図5に列挙されたコンポーネントは、図3のコンポーネントと実質的に同様とし得る。スキーム500は、例えば図1のHTTPサーバ120などのHTTPサーバによって、あるいは、例えば図2のネットワーク要素200の形態でメディアコンテンツプロバイダによって実行され得る。例えば、スキーム500は、図2の転送プレーンブロック228の部分とし得る。メディアコンテンツ502が、セグメンテーションユニット又はモジュール504によって、例えば表現506及び/又は508(集合的あるいは二者択一的に、506/508)として、複数のセグメントへと分割される。先述のように、アプリケーションに応じて、メディアコンテンツを表すために様々な階層が使用され得る。サブセグメントが使用される場合、ここに記載されるスキームは、セグメントに適用されるのと同じように、サブセグメントに適用され得る。
各表現506/508は、例えば、IS510及び/又は512、索引(インデックス)セグメント514及び/又は516、並びに少なくとも1つのMS518及び/又は520といった、複数のセグメントを有し得る。例えば、図5に示すように、表現506は、1つのIS510と、1つの索引セグメント514と、m個のMS518とを有する。同様に、表現508は、1つのIS512と、1つの索引セグメント516と、k個のMS520とを有する。各表現506/508は、等しい総数又は異なる総数のセグメントを有し得る。例えば、図5において、表現506がm個のMS518を有する一方で、表現508はk個のMS520を有するが、kとmは同じであってもよいし、異なってもよい。
保護システム522は、例えば特定のコンテンツ保護システムを適用することによって、表現506及び508をDASH準拠であるように処理し得る。保護システム522は、どのMS518及び/又は520が符号化を必要とするかを決定し、セグメント暗号化シグナリング又はセグメントマッピングに使用する好適な@segmentEncryptionFlagを作成し得る。保護システム522は、サードパーティライセンスサーバと連携してライセンスサーバURLを取得し、MPDに524にてContentProtection要素を投入し、そして、526にて@segmentEncryptionFlagを作成して結び付け得る。スキーム500は、MPDストリームに324にてContentProtection要素を投入し得るとともに、@segmentEncryptionFlag属性、@iv属性、@keyURLTemplate属性、及び@LicenseServerURL属性を作成して結び付け得る。保護システム522は、1つ以上の予め選択されたアルゴリズムを用いる所定の手法でMS518及び/又は520を符号化あるいは暗号化して、表現528及び530を作成し得る。表現528及び530は、IS532及び534と、索引セグメント540及び542と、符号化されたMS536及び538とを有し得る。複数のアルゴリズム又は非標準アルゴリズムが使用される場合、MPDストリームに1つ以上の@algorithm属性が投入されて結び付けられ得る。
一部の実施形態において、例えば暗号化アルゴリズム及び暗号化動作モードといった、時不変的(time-invariant)なコンテンツ保護情報(TI−CPI)、又は、例えば暗号化キー及び初期化ベクトルといった、時変的(time-variant)なコンテンツ保護情報(TV−CPI)が、ストリームに付加されてもよく、例えば、図5に示すように、暗号化されたメディアセグメントに関するIS532及び/又は534内、又は索引セグメント540及び/又は542内に付加され得る。
図6は、図5に記載した実施形態の下でデータを伝送するためのプロトコル図である。図6は、コンテンツ保護スキーム500をサポートするように構成されたDASHクライアント402と、スキーム500を実行するように構成されたウェブサーバ404と、ライセンスサーバ406とを有している。508にて、クライアント402が、MPDに関するHTTP要求をウェブサーバ404に対して行い得る。510にて、ウェブサーバ404が、例えば図5のIS532及び534並びに索引セグメント540及び542を含み得るMPDに関するHTTP応答を、クライアント402に送信し得る。クライアント402は、リソース統計、ネットワーク環境又は状態、装置能力、ユーザ選択などに従って、適切な復号化の選択及び/又は設定を行い得る。512にて、クライアント402が、MPDを構文解析して、MPDに含まれる情報を解釈し、514にて、クライアント402が、権利客体プロセス514を実行し得る。具体的には、516にて、クライアント402が、@keyLicenseURLのURLを用いてライセンスサーバ406からの権利客体を要求し、そして518にて、ライセンスサーバ406が、要求されたライセンス及び/又は権利客体でクライアント402に応答し得る。@keyLicenseURLTemplateを用いて、クライアント402は、該当するセグメントを復号化するのに必要なIV/キー対のためのライセンス及び/又はキーを取得し得る。IV、及び他の実施形態においてセグメント暗号化キーが、索引セグメントから取得され得る。524にて、クライアント402が、セグメントに関するHTTP要求をウェブサーバ404に送信し得る。526にて、ウェブサーバ404が、例えば図5のMS536及び538といった、符号化されたメディアセグメントを含んだ、セグメントに関するHTTP応答を、クライアント402に送信し得る。MPDとセグメントとが同じウェブサーバ404から送信されているが、当業者が認識するように、他の実施形態において、メディアコンテンツを記述するMPDと、そのメディアコンテンツのセグメントとは、異なるサーバに保管されて異なるサーバから送信されてもよい。例えば、MPDがコンテンツ配信業者から送信される一方で、セグメントはサードパーティのコンテンツ配信ノード(CDN)から送信されてもよい。クライアント402は、527にて、@segmentEncryptionFlag情報に従って適切なアルゴリズム解読IV/キー対を適用することによって、暗号化されたメディアを解読し得る。528にて、クライアント402が、プレイアウト開始シーケンスを始めて、クライアント402のユーザ(図示せず)にメディアストリームを提供し得る。530にて、クライアント402は、リソース統計を更新することができ、532にて、クライアント402は、更新された統計に従って適応的にセグメントを選択し得る。データストリームを維持することの要求に応じて、クライアント402は、ストリーミングが完了するまで、1つ以上のステップ508−526を再開し得る。とりわけ、上述のステップの順序付けは単に例示的なものであり、当業者が認識するように、一部のステップが同時又は別の順序で行われてもよい。
少なくとも1つの実施形態を開示したが、当業者によって為されるこれらの実施形態及び/又はそれらの特徴の変形、組み合わせ及び/又は変更も、本開示の範囲内である。これらの実施形態の特徴を組み合わせ、統合し、且つ/或いは省略することから得られる他の実施形態もまた、本開示の範囲内である。数値的な範囲又は限度が明示的に述べられている場合、そのような明示的な範囲又は限度は、明示的に述べられた範囲又は限度の範囲内に入る同様の大きさの反復的な範囲又は限度も含むと理解されるべきである(例えば、約1から約10までは、2、3、4等々を含み、0.10より大きいは、0.11、0.12、0.13等々を含む)。例えば、下限Rと条件Rとを有する数値範囲が開示されるときには、その範囲内に入る如何なる数も具体的に開示されている。特に、範囲内の以下の数:R=R+k×(R−R)、ただし、kは1%刻みで1%から100%までの範囲の変数、すなわち、kは1%、2%、3%、4%、5%、・・・、50%、51%、52%、・・・、95%、96%、97%、98%、99%又は100%、は具体的に開示されている。また、上で定めたように2つのR数値によって定められる如何なる数値範囲もまた具体的に開示されている。約なる用語の使用は、特段の断りがない限り、それに続く数の±10%を意味する。請求項の何らかの要素に関する“必要に応じて”なる用語の使用は、その要素が必要とされること、あるいはそれに代えて、その要素は必要とされないこと、双方の選択肢がその請求項の範囲内であること、を意味する。例えば、を有する、を含む、及び、を持つなどの、広めの用語の使用は、例えば、から成る、から本質的に成る、及び、から実質的に成るなどの、より狭い用語のサポートを提供するものと理解されるべきである。ここに記載した全ての文献をここに援用する。
本開示にて幾つかの実施形態を提示したが、理解されるべきことには、開示されたシステム及び方法は、本開示の精神又は範囲を逸脱することなく、数多くのその他の具体的形態でも具現化され得るものである。ここでの例は、限定的なものではなく、例示的なものと見なされるべきであり、意図することは、ここに与えられた詳細事項に限定されるべきでないということである。例えば、これらの様々な要素又はコンポーネントは、他のシステムにおいて結合あるいは統合されてもよく、あるいは、特定の機構が省略されたり、実装されなかったりしてもよい。
また、様々な実施形態において個別あるいは別個であるように記載・図示された技術、システム、サブシステム及び方法が、本開示の範囲を逸脱することなく、他のシステム、モジュール、技術又は方法と結合あるいは統合され得る。互いに結合され、直接的に結合され、あるいは通信するように図示あるいは説明された品目が、電気的、機械的、あるいはその他であろうと、何らかのインタフェース、装置又は中間コンポーネントを介して間接的に結合され、あるいは通信してもよい。変形、代用及び改変のその他の例も、当業者によって解明可能であり、ここに開示された精神及び範囲を逸脱することなく為され得る。
理解されるように、ネットワーク要素200への実行可能命令のプログラム及び/又はロードを行うことにより、プロセッサ22、キャッシュ、及び長期ストレージのうちの少なくとも1つが変更され、ネットワーク要素200は部分的に、本開示によって教示される新規な機能を有する例えばマルチコア転送アーキテクチャといった特別なマシン又は装置へと転換される。実行可能なソフトウェアをコンピュータにロードすることによって実装されることが可能な機能が、周知の設計ルールによってハードウェア実装へと変換され得ることは、電気工学及びソフトウェア工学の技術にとって基本的なことである。コンセプトをソフトウェアで実装することとハードウェアで実装することとの間での決定は、典型的に、ソフトウェアドメインからハードウェアドメインへの変換に伴う問題というよりむしろ、設計の安定性及び作製すべきユニットの個数の検討次第である。一般に、ハードウェア実装を再設計することはソフトウェア設計を再設計することより高価であるので、依然として頻繁に変更されている設計はソフトウェアで実装されることが好ましいと云い得る。一般に、大量生産工程にとっては、ハードウェア実装の方がソフトウェア実装より安価となり得るので、安定しており且つ大量生産されることになる設計は、例えばASICにて、ハードウェア実装されることが好ましいと云い得る。しばしば、設計は、ソフトウェアの形態で開発されてテストされ、その後に、周知の設計ルールによって、そのソフトウェアの命令をハードワイヤする特定用途向け集積回路にて、等価なハードウェア実装へと転換され得る。新たなASICによって制御されるマシンが特別なマシン又は装置であるのと同じように、実行可能な命令をプログラム及び/又はロードされたコンピュータも同様に特別なマシン又は装置として見ることができる。
保護システム522は、例えば特定のコンテンツ保護システムを適用することによって、表現506及び508をDASH準拠であるように処理し得る。保護システム522は、どのMS518及び/又は520が符号化を必要とするかを決定し、セグメント暗号化シグナリング又はセグメントマッピングに使用する好適な@segmentEncryptionFlagを作成し得る。保護システム522は、サードパーティライセンスサーバと連携してライセンスサーバURLを取得し、MPDに524にてContentProtection要素を投入し、そして、526にて@segmentEncryptionFlagを作成して結び付け得る。スキーム500は、MPDストリームに24にてContentProtection要素を投入し得るとともに、@segmentEncryptionFlag属性、@iv属性、@keyURLTemplate属性、及び@LicenseServerURL属性を作成して結び付け得る。保護システム522は、1つ以上の予め選択されたアルゴリズムを用いる所定の手法でMS518及び/又は520を符号化あるいは暗号化して、表現528及び530を作成し得る。表現528及び530は、IS532及び534と、索引セグメント540及び542と、符号化されたMS536及び538とを有し得る。複数のアルゴリズム又は非標準アルゴリズムが使用される場合、MPDストリームに1つ以上の@algorithm属性が投入されて結び付けられ得る。
図6は、図5に記載した実施形態の下でデータを伝送するためのプロトコル図である。図6は、コンテンツ保護スキーム500をサポートするように構成されたDASHクライアント402と、スキーム500を実行するように構成されたウェブサーバ404と、ライセンスサーバ406とを有している。08にて、クライアント402が、MPDに関するHTTP要求をウェブサーバ404に対して行い得る。10にて、ウェブサーバ404が、例えば図5のIS532及び534並びに索引セグメント540及び542を含み得るMPDに関するHTTP応答を、クライアント402に送信し得る。クライアント402は、リソース統計、ネットワーク環境又は状態、装置能力、ユーザ選択などに従って、適切な復号化の選択及び/又は設定を行い得る。12にて、クライアント402が、MPDを構文解析して、MPDに含まれる情報を解釈し、14にて、クライアント402が、権利客体プロセス614を実行し得る。具体的には、16にて、クライアント402が、@keyLicenseURLのURLを用いてライセンスサーバ406からの権利客体を要求し、そして18にて、ライセンスサーバ406が、要求されたライセンス及び/又は権利客体でクライアント402に応答し得る。@keyLicenseURLTemplateを用いて、クライアント402は、該当するセグメントを復号化するのに必要なIV/キー対のためのライセンス及び/又はキーを取得し得る。IV、及び他の実施形態においてセグメント暗号化キーが、索引セグメントから取得され得る。24にて、クライアント402が、セグメントに関するHTTP要求をウェブサーバ404に送信し得る。26にて、ウェブサーバ404が、例えば図5のMS536及び538といった、符号化されたメディアセグメントを含んだ、セグメントに関するHTTP応答を、クライアント402に送信し得る。MPDとセグメントとが同じウェブサーバ404から送信されているが、当業者が認識するように、他の実施形態において、メディアコンテンツを記述するMPDと、そのメディアコンテンツのセグメントとは、異なるサーバに保管されて異なるサーバから送信されてもよい。例えば、MPDがコンテンツ配信業者から送信される一方で、セグメントはサードパーティのコンテンツ配信ノード(CDN)から送信されてもよい。クライアント402は、27にて、@segmentEncryptionFlag情報に従って適切なアルゴリズム解読IV/キー対を適用することによって、暗号化されたメディアを解読し得る。28にて、クライアント402が、プレイアウト開始シーケンスを始めて、クライアント402のユーザ(図示せず)にメディアストリームを提供し得る。30にて、クライアント402は、リソース統計を更新することができ、32にて、クライアント402は、更新された統計に従って適応的にセグメントを選択し得る。データストリームを維持することの要求に応じて、クライアント402は、ストリーミングが完了するまで、1つ以上のステップ08−26を再開し得る。とりわけ、上述のステップの順序付けは単に例示的なものであり、当業者が認識するように、一部のステップが同時又は別の順序で行われてもよい。

Claims (20)

  1. メディアストリームを復号化する装置であって、当該装置は、
    メモリモジュールと、
    前記メモリモジュールに結合されたプロセッサモジュールと
    を有し、
    前記メモリモジュールは、前記プロセッサによって実行されたときに、当該装置に、
    セグメントシグナリング情報と複数のセグメントとを有するメディアストリームを受信することであり、前記複数のセグメントは、符号化されたセグメント及び符号化されていないセグメントを有し、前記セグメントシグナリング情報は、少なくとも1つのセグメントを各々が有する少なくとも2つのセグメントグループを特定するものを有する、受信することと、
    前記メディアストリーム内の前記セグメントシグナリング情報を用いて、少なくとも1つのセグメントグループを特定することと、
    前記少なくとも1つのセグメントグループに関する少なくとも1つのセグメント復号化アルゴリズムを特定することと、
    前記少なくとも1つのセグメントグループに関する少なくとも1つの復号化キーを特定することと、
    前記少なくとも1つのセグメント復号化アルゴリズムと前記少なくとも1つの復号化キーとを用いて、前記少なくとも1つのセグメントグループ内の各符号化されたセグメントを復号化することと、
    を実行させる命令を格納している、
    装置。
  2. 前記セグメントシグナリング情報は、メディアストリーム初期化セグメント内に含まれない、請求項1に記載の装置。
  3. 前記セグメントシグナリング情報は、
    一連の正数及び負数であり、正数nは、n個の隣接する符号化されたセグメントからなるセグメントグループを指し示し、負数−mは、m個の符号化されていないセグメントからなるセグメントグループを指し示す、一連の正数及び負数、又は
    2進コードで、符号化されたセグメントを1で指し示し、符号化されていないセグメントを0で指し示す一連のデータ、
    の何れかを有する、請求項1に記載の装置。
  4. 少なくとも1つのセグメントグループを特定することは、第1のセグメントグループと第2のセグメントグループとを特定することを有し、前記少なくとも1つのセグメント復号化アルゴリズムを特定することは、前記第1のセグメントグループ用の第1のセグメント復号化アルゴリズムと、前記第2のセグメントグループ用の第2のセグメント復号化アルゴリズムとを特定することを有し、前記第1のセグメント復号化アルゴリズムと前記第2のセグメント復号化アルゴリズムとは異なる、請求項1に記載の装置。
  5. 少なくとも1つのセグメントグループを特定することは、第1のセグメントグループと第2のセグメントグループとを特定することを有し、前記少なくとも1つの復号化キーを特定することは、前記第1のセグメントグループ用の第1の復号化キーと、前記第2のセグメントグループ用の第2の復号化キーとを特定することを有し、前記第1の復号化キーと前記第2の復号化キーとは異なる、請求項1に記載の装置。
  6. 前記少なくとも1つのセグメントグループに関する少なくとも1つの初期化ベクトルを特定することを更に有し、前記復号化のステップは更に前記少なくとも1つの初期化ベクトルを用いる、請求項1に記載の装置。
  7. 前記メディアストリームは更に初期化ベクトルテンプレートを有し、該初期化ベクトルテンプレートが、初期化ベクトル生成用のテンプレートを規定する、請求項6に記載の装置。
  8. 符号化されたメディアストリームを送信する装置であって、当該装置は、
    メモリモジュールと、
    前記メモリモジュールに結合されたプロセッサモジュールと
    を有し、
    前記メモリモジュールは、前記プロセッサによって実行されたときに、当該装置に、
    複数の符号化されたセグメント及び符号化されていないセグメントと、
    セグメントシグナリング情報であり、
    少なくとも1つのセグメントを各々が有する少なくとも2つのセグメントグループ、
    少なくとも1つのセグメント復号化アルゴリズム、
    少なくとも1つの復号化キー、及び
    少なくとも1つの初期化ベクトルであり、
    前記少なくとも2つのセグメントグループの各々の符号化されたセグメントが、前記少なくとも1つの復号化アルゴリズム、前記少なくとも1つの復号化キー、及び前記少なくとも1つの初期化ベクトルを用いて復号化されることができるもの、
    を特定するのに十分な情報を有するセグメントシグナリング情報と、
    を有するメディアストリームを送信させる命令を格納している、
    装置。
  9. 前記少なくとも1つの初期化ベクトルを特定するのに十分な前記情報は、ユニフォームリソースロケータ(URL)を有する、請求項8に記載の装置。
  10. 前記少なくとも1つの初期化ベクトルを特定するのに十分な前記情報は更に、初期化ベクトル生成用の初期化ベクトルテンプレートを有し、且つ初期化ベクトルを生成するためのサードパーティとの連携を可能にするのに十分である、請求項8に記載の装置。
  11. 少なくとも2つのセグメントグループを特定するのに十分な前記情報は、符号化されたセグメントを有する少なくとも2つのセグメントグループを特定するのに十分であり、少なくとも1つの復号化キーを特定するのに十分な前記情報は、前記複数の符号化されたセグメントを復号化するための少なくとも2つの復号化キーを特定するのに十分であり、各復号化キーが、符号化されたセグメントを有する1つのセグメントグループと関連付けられる、請求項8に記載の装置。
  12. 少なくとも2つのセグメントグループを特定するのに十分な前記情報は、符号化されたセグメントを有する少なくとも2つのセグメントグループを特定するのに十分であり、少なくとも1つのセグメント復号化アルゴリズムを特定するのに十分な前記情報は、少なくとも2つのセグメント復号化アルゴリズムを特定するのに十分であり、各セグメント復号化アルゴリズムが、符号化されたセグメントを有する1つのセグメントグループと関連付けられる、請求項11に記載の装置。
  13. 少なくとも2つのセグメントグループを特定するのに十分な前記情報は、
    一連の正数及び負数であり、正数nは、n個の隣接する符号化されたセグメントからなるセグメントグループを指し示し、負数−mは、m個の符号化されていないセグメントからなるセグメントグループを指し示す、一連の正数及び負数、又は
    2進コードで、符号化されたセグメントを1で指し示し、符号化されていないセグメントを0で指し示す一連のデータ、
    の何れかを有する、請求項8に記載の装置。
  14. 前記セグメントシグナリング情報は、メディアストリーム初期化セグメント内に含まれない、請求項8に記載の装置。
  15. メディアストリームを復号化する方法であって、
    複数の符号化されたセグメント及び符号化されていないセグメントを有するメディアストリームを受信することであり、前記メディアストリームは更に、
    少なくとも1つのセグメントを各々が有する複数の少なくとも2つのセグメントグループを特定し、どのセグメントグループも、符号化されたセグメント及び符号化されていないセグメントの双方ともは有さず、
    少なくとも1つのセグメント復号化アルゴリズムを特定し、
    前記符号化されたセグメントに関する少なくとも1つの復号化キーを特定し、且つ
    前記符号化されたセグメントを復号化する、
    のに十分なセグメントシグナリング情報を有する、受信することと、
    符号化されたセグメントを有する少なくとも1つのセグメントグループを特定することと、
    少なくとも1つのセグメント復号化アルゴリズムを特定することと、
    少なくとも1つの復号化キーを特定することと、
    前記少なくとも1つのセグメント復号化アルゴリズムと前記少なくとも1つの復号化キーとを用いて、符号化されたセグメントを有する少なくとも1つのセグメントグループを復号化することと、
    を有する方法。
  16. 前記セグメントシグナリング情報は更に、サードパーティに初期化ベクトルをクエリーするのに十分な情報を有し、当該方法は更に、
    前記サードパーティに前記初期化ベクトルをクエリーすることと、
    前記初期化ベクトルを受信することと、
    前記初期化ベクトルを結び付けることと
    を有し、
    前記符号化されたセグメントグループを復号化することのステップは更に前記初期化ベクトルを用いることを有する、
    請求項15に記載の方法。
  17. 前記セグメントシグナリング情報は更に、初期化ベクトル生成用のテンプレートを規定する初期化ベクトルテンプレートを有する、請求項16に記載の方法。
  18. 前記メディアストリームは更に、第2のセグメント復号化アルゴリズムを特定するのに十分な情報を有し、当該方法は更に、
    第2のセグメント復号化アルゴリズムを特定することと、
    符号化されたセグメントを有する第2のセグメントグループを特定することと、
    前記第2のセグメント復号化アルゴリズムを用いて、前記第2のセグメントグループを復号化することと
    を有する、請求項15に記載の方法。
  19. 前記セグメントシグナリング情報は、一連の正数及び負数を有し、正数nは、n個の隣接する符号化されたセグメントからなるセグメントグループを指し示し、負数−mは、m個の符号化されていないセグメントからなるセグメントグループを指し示す、請求項15に記載の方法。
  20. 前記セグメントシグナリング情報は、メディアストリーム初期化セグメント内に含まれない、請求項15に記載の方法。
JP2015509182A 2012-04-26 2013-04-26 適応ストリーミングのためのセグメント暗号化及びキー導出を信号伝達するシステム及び方法 Active JP5923661B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261638963P 2012-04-26 2012-04-26
US61/638,963 2012-04-26
PCT/US2013/038434 WO2013163555A1 (en) 2012-04-26 2013-04-26 System and method for signaling segment encryption and key derivation for adaptive streaming

Publications (2)

Publication Number Publication Date
JP2015521405A true JP2015521405A (ja) 2015-07-27
JP5923661B2 JP5923661B2 (ja) 2016-05-24

Family

ID=48325947

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015509182A Active JP5923661B2 (ja) 2012-04-26 2013-04-26 適応ストリーミングのためのセグメント暗号化及びキー導出を信号伝達するシステム及び方法

Country Status (12)

Country Link
US (3) US9015468B2 (ja)
EP (2) EP3340634B1 (ja)
JP (1) JP5923661B2 (ja)
KR (1) KR101617340B1 (ja)
CN (1) CN104380753B (ja)
BR (1) BR112014026659B1 (ja)
CA (1) CA2871652C (ja)
HK (1) HK1203724A1 (ja)
MY (1) MY185190A (ja)
SG (1) SG11201406908WA (ja)
WO (1) WO2013163555A1 (ja)
ZA (1) ZA201407905B (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017061298A1 (ja) * 2015-10-09 2017-04-13 ソニー株式会社 画像処理装置および方法

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120092432A (ko) * 2011-02-11 2012-08-21 삼성전자주식회사 디지털 방송 시스템에서 컨텐츠 송수신 장치 및 방법
US9438883B2 (en) * 2012-04-09 2016-09-06 Intel Corporation Quality of experience reporting for combined unicast-multicast/broadcast streaming of media content
CN106452759B (zh) * 2012-04-27 2019-11-19 华为技术有限公司 用于在模板模式下有效支持短加密区间的系统和方法
US9444794B2 (en) * 2012-07-03 2016-09-13 Futurewei Technologies, Inc. Low-latency secure segment encryption and authentication interface
CN104429093B (zh) 2012-07-09 2018-01-05 华为技术有限公司 超文本传输协议动态自适应流媒体客户端及其会话管理实施方法
US9749384B2 (en) * 2012-10-24 2017-08-29 Panasonic Intellectual Property Management Co., Ltd. Communication system, reception terminal, transmission terminal, and flow rate control method
WO2014113193A1 (en) * 2013-01-17 2014-07-24 Intel IP Corporation Dash-aware network application function (d-naf)
KR101474320B1 (ko) * 2013-02-04 2014-12-18 아주대학교산학협력단 위치기반 컨텐츠를 위한 위치기반 컨텐츠 중심 네트워킹 방법
US10397292B2 (en) 2013-03-15 2019-08-27 Divx, Llc Systems, methods, and media for delivery of content
US9258289B2 (en) * 2013-04-29 2016-02-09 Arbor Networks Authentication of IP source addresses
CN105379294A (zh) * 2013-07-15 2016-03-02 华为技术有限公司 基于超文本传输协议的动态自适应流媒体中的远程元素的即时性间接引用
US9628528B2 (en) * 2013-07-19 2017-04-18 Electronics And Telecommunications Research Institute Apparatus and method for providing content
US10182038B2 (en) 2013-07-29 2019-01-15 Mobitv, Inc. Efficient common storage of partially encrypted content
US9330101B2 (en) 2013-12-18 2016-05-03 Microsoft Technology Licensing, Llc Using constraints on media file formats to improve performance
US9674255B1 (en) * 2014-03-26 2017-06-06 Amazon Technologies, Inc. Systems, devices and methods for presenting content
US9992281B2 (en) * 2014-05-01 2018-06-05 Cisco Technology, Inc. Accountable content stores for information centric networks
CN107077543B (zh) * 2014-09-23 2020-01-03 华为技术有限公司 流媒体中内容成分的所有权标识、信令和处理
US10187680B2 (en) 2014-11-11 2019-01-22 Cisco Technology, Inc. Adaptive bit rate system architectures using named domain networking
US9800911B2 (en) * 2015-06-26 2017-10-24 Intel Corporation Technologies for selective content licensing and secure playback
US10263965B2 (en) * 2015-10-16 2019-04-16 Cisco Technology, Inc. Encrypted CCNx
US10015560B2 (en) * 2016-03-11 2018-07-03 Comcast Cable Communications, Llc Policy based transcoding
CN109964487B (zh) * 2016-11-11 2021-11-09 索尼公司 管理装置和管理方法
RU2634179C1 (ru) * 2016-12-12 2017-10-24 Акционерное общество "Лаборатория Касперского" Способ и система для доверенного доведения информации до пользователя
US10498795B2 (en) 2017-02-17 2019-12-03 Divx, Llc Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
CN109429112A (zh) * 2017-08-24 2019-03-05 中兴通讯股份有限公司 媒体分片发送方法、密钥切换方法及相应装置和介质
CN113014956B (zh) * 2019-12-20 2022-06-03 腾讯科技(深圳)有限公司 视频播放方法以及装置
CN113114410A (zh) * 2020-01-10 2021-07-13 维沃移动通信有限公司 数据处理方法、配置方法及通信设备
CN113141336A (zh) * 2020-01-19 2021-07-20 上海静客网络科技有限公司 一种短信验证码防刷方法
CN115426102B (zh) * 2022-11-07 2023-02-03 山东宝盛鑫信息科技有限公司 一种用于cdn节点间的数据加密方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10105449A (ja) * 1996-07-29 1998-04-24 Internatl Business Mach Corp <Ibm> 保護ファイルパッケージング作成方法
JP2004364273A (ja) * 2003-05-09 2004-12-24 Matsushita Electric Ind Co Ltd Mpeg−4ipmp拡張されたisma媒体ストリームの受信装置
JP2007526507A (ja) * 2004-02-13 2007-09-13 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. スケーラブルメディアを記述するデータを生成するための方法
JP2009077073A (ja) * 2007-09-19 2009-04-09 Toshiba Corp 映像配信システムおよび映像配信方法
WO2010078281A2 (en) * 2008-12-31 2010-07-08 Apple Inc. Real-time or near real-time streaming

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7457415B2 (en) * 1998-08-20 2008-11-25 Akikaze Technologies, Llc Secure information distribution system utilizing information segment scrambling
EP1348287B1 (en) * 2000-12-18 2006-06-07 Koninklijke Philips Electronics N.V. Pointers to encrypted data in rtp header
US7350082B2 (en) * 2001-06-06 2008-03-25 Sony Corporation Upgrading of encryption
JP3925218B2 (ja) * 2002-01-30 2007-06-06 ソニー株式会社 ストリーミングシステム及びストリーミング方法、ストリーミングサーバ及びデータ配信方法、クライアント端末及びデータ復号方法、並びにプログラム及び記録媒体
US7684568B2 (en) * 2003-11-24 2010-03-23 Intellon Corporation Encrypting data in a communication network
FR2864869A1 (fr) 2004-01-06 2005-07-08 Thomson Licensing Sa Methode de transmission de services numeriques sur un reseau et appareil mettant en oeuvre la methode
US20060184790A1 (en) * 2004-03-26 2006-08-17 Microsoft Corporation Protecting elementary stream content
US7756271B2 (en) * 2004-06-15 2010-07-13 Microsoft Corporation Scalable layered access control for multimedia
US8225083B2 (en) * 2005-03-09 2012-07-17 Vudu, Inc. Secured seeding of data in a distributed environment
CN101133649B (zh) * 2005-12-07 2010-08-25 索尼株式会社 编码装置、编码方法以及解码装置、解码方法
US8688978B2 (en) * 2006-04-13 2014-04-01 Certicom Corp. Method and apparatus for providing an adaptable security level in an electronic communication
US20080084995A1 (en) * 2006-10-06 2008-04-10 Stephane Rodgers Method and system for variable and changing keys in a code encryption system
RU2690755C2 (ru) * 2010-02-19 2019-06-05 Телефонактиеболагет Л М Эрикссон (Пабл) Способ и устройство для переключения воспроизведений в потоковой передаче по протоколу передачи гипертекста
US8789196B2 (en) * 2010-05-28 2014-07-22 Adobe Systems Incorporated System and method for providing content protection of linearly consumed content with a bidirectional protocol for license acquisition
US8930562B2 (en) 2010-07-20 2015-01-06 Qualcomm Incorporated Arranging sub-track fragments for streaming video data
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
WO2012047004A2 (ko) * 2010-10-06 2012-04-12 ㈜휴맥스 Http 스트리밍의 표현 스위칭시 자연스런 재생을 위한 스케일러블한 http 스트리밍 전송 방법
KR101206698B1 (ko) * 2010-10-06 2012-11-30 한국항공대학교산학협력단 스트리밍 콘텐츠 제공 장치 및 방법
US8661259B2 (en) * 2010-12-20 2014-02-25 Conformal Systems Llc Deduplicated and encrypted backups
CA2821790A1 (en) * 2010-12-22 2012-06-28 Ando Media Llc Real-time media stream insertion method and apparatus
US9247312B2 (en) * 2011-01-05 2016-01-26 Sonic Ip, Inc. Systems and methods for encoding source media in matroska container files for adaptive bitrate streaming using hypertext transfer protocol
KR101739272B1 (ko) * 2011-01-18 2017-05-24 삼성전자주식회사 멀티미디어 스트리밍 시스템에서 컨텐트의 저장 및 재생을 위한 장치 및 방법
US8867608B2 (en) * 2011-01-28 2014-10-21 Harmonic, Inc. Systems and methods for segmenting and communicating video data
WO2012129549A1 (en) * 2011-03-23 2012-09-27 General Instrument Corporation System and methods for providing live streaming content using digital rights management-based key management
US9202024B2 (en) * 2011-05-02 2015-12-01 Inside Secure Method for playing digital contents projected with a DRM (digital rights management) scheme and corresponding system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10105449A (ja) * 1996-07-29 1998-04-24 Internatl Business Mach Corp <Ibm> 保護ファイルパッケージング作成方法
JP2004364273A (ja) * 2003-05-09 2004-12-24 Matsushita Electric Ind Co Ltd Mpeg−4ipmp拡張されたisma媒体ストリームの受信装置
JP2007526507A (ja) * 2004-02-13 2007-09-13 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. スケーラブルメディアを記述するデータを生成するための方法
JP2009077073A (ja) * 2007-09-19 2009-04-09 Toshiba Corp 映像配信システムおよび映像配信方法
WO2010078281A2 (en) * 2008-12-31 2010-07-08 Apple Inc. Real-time or near real-time streaming

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JPN6015047256; Pantos, R. Ed. and May, W.: 'HTTP Live Streaming' draft-pantos-http-live-streaming-08 , 201203, [online] *
JPN6015047258; Gregorio, G. et al.: 'URI Template' RFC 6570 , 201203, [online] *
JPN6015047260; Andrease, F., Baugher, M. and Wing, D.: 'Session Description Protocol (SDP) Security Descriptions for Media Streams' RFC 4568 , 200607, [online] *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017061298A1 (ja) * 2015-10-09 2017-04-13 ソニー株式会社 画像処理装置および方法

Also Published As

Publication number Publication date
SG11201406908WA (en) 2014-11-27
ZA201407905B (en) 2015-12-23
EP2842339A1 (en) 2015-03-04
US9787652B2 (en) 2017-10-10
US9401899B2 (en) 2016-07-26
BR112014026659A2 (pt) 2017-06-27
MY185190A (en) 2021-04-30
CA2871652C (en) 2016-10-11
CN104380753B (zh) 2018-05-18
CA2871652A1 (en) 2013-10-31
BR112014026659B1 (pt) 2022-09-27
US20150195259A1 (en) 2015-07-09
KR101617340B1 (ko) 2016-05-02
EP3340634B1 (en) 2020-02-12
HK1203724A1 (en) 2015-10-30
KR20140146664A (ko) 2014-12-26
CN104380753A (zh) 2015-02-25
US20130290697A1 (en) 2013-10-31
JP5923661B2 (ja) 2016-05-24
EP3340634A1 (en) 2018-06-27
BR112014026659A8 (pt) 2021-06-22
WO2013163555A1 (en) 2013-10-31
US9015468B2 (en) 2015-04-21
US20160301670A1 (en) 2016-10-13

Similar Documents

Publication Publication Date Title
JP5923661B2 (ja) 適応ストリーミングのためのセグメント暗号化及びキー導出を信号伝達するシステム及び方法
KR101603136B1 (ko) 템플릿 모드에서의 짧은 암호 사용기간의 지원
EP2859707B1 (en) Signaling and handling content encryption and rights management in content transport and delivery
US9385998B2 (en) Signaling and carriage of protection and usage information for dynamic adaptive streaming
WO2014058971A1 (en) Authenticated encryption support in iso/iec 23009-4
US9325945B2 (en) Video server and client with custom key exchange and methods for use therewith
EP3539270A1 (en) Resource segmentation to improve delivery performance
US20150199498A1 (en) Flexible and efficient signaling and carriage of authorization acquisition information for dynamic adaptive streaming
EP3092780B1 (en) Signaling and handling of forensic marking for adaptive streaming
RU2575021C1 (ru) Система и способ для сигнализации шифрования сегмента и выработки ключа для адаптивной потоковой передачи

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20151020

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160222

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160329

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160418

R150 Certificate of patent or registration of utility model

Ref document number: 5923661

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250