CN105659240B - 一种用于发送和验证url签名以进行自适应流中url认证和基于url的内容访问授权的系统和方法 - Google Patents

一种用于发送和验证url签名以进行自适应流中url认证和基于url的内容访问授权的系统和方法 Download PDF

Info

Publication number
CN105659240B
CN105659240B CN201480058430.7A CN201480058430A CN105659240B CN 105659240 B CN105659240 B CN 105659240B CN 201480058430 A CN201480058430 A CN 201480058430A CN 105659240 B CN105659240 B CN 105659240B
Authority
CN
China
Prior art keywords
url
descriptor
certifications
certification
fragment
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.)
Active
Application number
CN201480058430.7A
Other languages
English (en)
Other versions
CN105659240A (zh
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 CN105659240A publication Critical patent/CN105659240A/zh
Application granted granted Critical
Publication of CN105659240B publication Critical patent/CN105659240B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明提供了一种用于发送和验证URL签名以访问自适应流中URL可寻址内容的系统和方法。提供了针对多个URL的多个URL认证描述符和URL授权描述符,其中,每个URL认证描述符包括获取验证密钥和访问认证标签以根据相关联的URL认证方案认证所述多个URL中给定URL的信息。每个URL授权描述符是为获取验证密钥和访问授权标签以根据相关联的URL认证方案授权访问所述多个URL中给定URL可寻址内容。传递针对所述多个URL的所述多个URL认证描述符和URL授权描述符,在所传递的所述多个URL认证描述符和URL授权描述符中,为每个描述符在所述多个URL中的给定URL,根据每个描述符的相关联方案验证每个描述符。

Description

一种用于发送和验证URL签名以进行自适应流中URL认证和基 于URL的内容访问授权的系统和方法
技术领域
本发明大体针对统一资源定位符(uniform resource locator,URL)认证,尤其是URL认证在自适应流中基于URL的内容访问授权的应用。
背景技术
媒体内容提供商或发布商可以采用适用于电视、笔记本电脑和手机等不同设备的不同编码方案将各种媒体内容传送至订户或者用户。媒体内容提供商可以支持多个媒体编码器和/或解码器(编解码器)、媒体播放器、视频帧率、空间分辨率、比特率、视频格式或其组合。可以将媒体内容从源表示或原始表示转换为其它各种表示,以适用于不同的用户设备。
媒体内容可包括媒体描述文件(media presentation description,MPD)和多个分片。MPD可以是描述该媒体内容,例如媒体内容的各种表示、统一资源定位符(uniformresource locator,URL)地址(或者更通俗地,统一资源标识符(uniform resourceidentifier,URI))和其它特性等,的可扩展标记语言(Extensible Markup Language,XML)文件或文档。例如,媒体内容可包括若干种媒体成份(例如,音频、视频和文本),每种成份可具有MPD中指定的不同特性。每种媒体成份包括多个包含一部分实际媒体内容的多个分片,这些分片可共同存储在单个文件中或单独存储在多个文件中。每个分片可包含预定义的字节大小(例如,1000字节)或该媒体内容的播放时间间隔(例如,2秒或5秒)。
取决于应用,媒体内容可划分为各种层级。例如,媒体内容可包括多个时段,其中,时段是比分片相对较长的时间间隔。例如,电视节目可划分为若干个5分钟的节目时段,而这些5分钟的节目时段被划分为若干个2分钟的商用时段。进一步地,时段可包括一个或多个自适应集(adaptation set,AS)。AS可提供关于一种或多种媒体成份及其各种编码表示的信息。例如,AS可以包含媒体内容的视频成份的不同比特率,而另一个AS可包含相同媒体内容的音频成份的不同比特率。表示可以是媒体成份的编码替代物,通过比特率、分辨率、信道数目、其他特性或其组合而与其他表示不同。每种表示包括多个分片,这些多个分片是具有时间顺序的媒体内容块。此外,为了能够下载多个部分中的分片,有时可采用子分片,每个子分片具有特定时长和/或字节大小。本领域的技术人员应理解,可采用各种层级传送媒体内容。
在自适应流中,当媒体内容传送到用户设备时,用户设备可以基于各种因素,例如,网络状况、设备能力和用户选择等,动态地选择合适的分片。自适应流可包括已实现的或正在开发的各种技术或标准,例如,超文本传输协议(Hypertext Transfer Protocol,HTTP)动态自适应流媒体(Dynamic Adaptive Streaming over HTTP,DASH)、HTTP直播流(HTTP Live Streaming,HLS)或因特网信息服务系统(Internet Information Services,IIS)平滑流。例如,用户设备可尽可能选择质量最优(例如,分辨率或比特率)的分片,以确保及时下载和播放该分片,且不会在播放中造成暂停或重新缓冲事件。因此,用户设备可以将其媒体内容播放无缝地适应于不断变化的网络状况。为了防止对媒体内容的篡改或攻击,需要通过认证方案来保护媒体内容的分片。可能需要防止各种攻击(例如,来自非预期表示的分片的复制攻击),即使这些分片的来源和调度/时间是正确的。
国际标准化组织(International Organization for Standardization,ISO)/国际电工技术委员会(International Electrotechnical Commission,IEC)发布了名为《HTTP动态自适应流媒体(Dynamic Adaptive Streaming over HTTP,DASH)-第四部分:分片加密和认证》的文件,其编号为ISO/IEC 23009-4,该文件描述了一些认证DASH分片的机制,且该文件以引入的方式并入本文。然而,当MPD用于为待进行流传送的分片提供源URL信息时,ISO/IEC 23009-4并没有提供支持该给定MPD中分片URL认证的机制。分片URL认证在许多情形中至关重要。
当有效URL列表由经销商编写时,一种引入错误URL映射的情形可能会出现。此时,经销商可以是因特网服务提供商或移动运营商,且原始DASH服务提供商提供例如包括一些广告的DASH内容,但允许经销商向终端用户传送DASH内容。如果经销商期望将原始广告替换为另一广告,则经销商可以只修改原始广告的分片URL,并将这些分片URL映射为其期望进行流传送的广告。因此,将URL与其代表的内容结合是可取的,从而保证了原始内容得以传送至用户,而且可以验证该预期内容实际由预期客户端访问。
另一种情形是原始内容服务提供商想要限制对其来自MPD的内容的访问,这些MPD不是由提供商生成,而是以未授权的方式使用(重复使用)其分片URL,为了保护版权并防止来自恶意方的热链接。
关于URL的真实性,MPEG中已经将URL签名方案详述为对URL认证正在进行中的DASH核心实验(core experiment,CE)的一部分。其核心思想在于对各单个URL进行签名,并创建另一个指向URL签名的URL。随后,客户端请求URL签名,并检查URL的真实性。如果签名URL未被篡改,则该方案可保证URL的真实性、完整性和来源。然而,该方案易受到三种类型的攻击:
对单个URL及其签名URL的篡改攻击。攻击者可将真实URL及其签名URL替换为另一个真实URL和由该签名的创建者生成的其对应的签名URL。
对全部或部分URL的重组攻击。攻击者可改变URL的顺序,而由于每个签名验证均通过,所以客户端无法检测到该攻击。
对一个或多个URL的删除攻击。客户端无法通过URL认证检测该攻击。
URL认证的另一个目的在于验证分片的真实性,以确保所接收的分片为客户端期望接收的分片。然而,如果技术方案中并未将URL与分片相关联,则可能会出现分片篡改攻击。即,即使分片进行了签名,该预期分片可能在分片服务器中或在分片传送时被替换。例如,攻击者可将分片A及其签名替换为分片B及其签名,而客户端无法检测到该攻击。
关于内容访问授权,3GPP TSG-SA4第74次会议上发表的编号为S4-130680的《对DASH认证使用情形的缺口分析》和2013年7月发布的编号为RFC 6983的《用于HTTP自适应流感知内容分发网络互联的模型》中提出了基于URL的签名方案:对每个客户端进行每个分片URL签名作为授权,且在将分片传送至客户端之前,内容分发网络(content deliverynetwork,CDN)进行签名检查。该方案免于遭受攻击,然而,这可能会为签名服务器造成繁重的工作量,因为服务器需要为每个授权用户对MPD中的每个URL进行签名。
发明内容
此处公开了一种用于验证URL签名以进行自适应流中URL认证和/或基于URL的内容访问授权的系统、装置和方法。
在一个实施例中,本发明包括一种传输签名的方法,以实现自适应流中URL认证和基于URL的内容访问授权。
在一个实施例中,本发明包括一种传输签名的方法,以实现内容访问授权。
在一个实施例中,本发明包括一种传输签名的方法,以实现URL认证和内容访问授权。
在一个实施例中,第一描述符处理URL认证,第二描述符处理内容访问授权。
在一个实施例中,URL认证描述符提供了单个URL级别的签名。
在一个实施例中,URL认证描述符提供了群组URL级别的签名。
在一个实施例中,内容访问授权描述符提供了单个URL级别的签名。
在一个实施例中,内容访问授权描述符提供了群组URL级别的签名。
在一个实施例中,可在MPD的最高级别对URL认证或者内容访问授权之一进行签名。
公开了一种用于发送和验证URL签名以访问自适应流中URL可寻址内容的系统、装置和方法。提供了针对多个URL的多个URL认证描述符和URL授权描述符,其中,每个URL认证描述符包括获取验证密钥和访问认证标签以根据相关联的URL认证方案认证所述多个URL中给定URL的信息。每个URL授权描述符是为获取验证密钥和访问授权标签以根据相关联的URL认证方案授权访问所述多个URL中给定URL可寻址内容。传递针对所述多个URL的所述多个URL认证描述符和URL授权描述符,且在所传递的所述多个URL认证描述符和URL授权描述符中,为每个描述符在所述多个URL中的给定URL,根据每个描述符的相关联方案验证每个描述符。
结合以下附图和权利要求的详细描述,这些以及其他特征将会被清楚的理解。尽管主要描述的是URL,但该描述同样适用于更通用的URI,即适用于发送和验证URI签名以进行自适应流中URI认证和基于URI的内容访问授权。
附图说明
为了更透彻地理解本发明,现参阅结合附图和具体实施方式而描述的以下简要说明,其中的相同参考标号表示相同部分。
图1为一种流媒体方案的实施例示意图;
图2为一种生成分片及其各自签名的方案的实施例示意图;
图3为一种签名验证方案的实施例的消息交互图;
图4为一种网络节点的实施例示意图。
具体实施方式
首先应理解,尽管下文提供了一个或多个实施例的说明性实施方案,但是所公开的系统和/或方法可采用任何数目的技术来实现,无论该技术是当前已知还是现有的。本发明决不应限于下文所说明的说明性实施方案、附图和技术,包括本文所说明并描述的示例性设计和实施方案,而是可在所附权利要求书的范围以及其等效物的完整范围内修改。
此处公开了一种用于验证URL签名以进行自适应流中URL认证和基于URL的内容访问授权的系统、装置和方法。在一种公开的认证方案中,计算或生成URL认证的签名不仅需要当前URL签名的唯一标识,还需要MPD中包含的可信信息。该认证方案结合了当前URL签名的唯一标识和可信信息,使得该URL认证的签名不会被伪造,且可以防止各种攻击。用于生成该URL认证的签名的信息可以是:如果存在下一URL签名,下一URL签名的标识;媒体描述文件的标识;URL进行签名的时段的标识;URL进行签名的自适应集的标识;URL进行签名的表示的标识;签名后的URL所指向的分片;任何其他可信信息或其组合。
在一种公开的授权方案中,计算或生成基于URL的内容访问授权的签名不仅需要客户端的唯一标识,还需要MPD中包含的可信信息。该认证方案结合了客户端的唯一标识和可信信息,使得该基于URL的内容访问授权的签名不会被伪造,且可以防止各种攻击。用于生成基于URL的内容访问授权的签名的信息可以是:媒体描述文件的标识;URL进行签名的时段的标识;URL进行签名的自适应集的标识;URL进行签名的表示的标识;授权到期的时间;任何其他可信信息或其组合。
由于可信信息的完整性或真实性可以通过对一部分或全部MPD进行签名以创建MPD签名得到保证,所以可以检测到可信信息的任何篡改。相较于现有方案,所公开的认证方案可提供更强的安全性,同时避免增加存储和通信成本。
图1示出了一种流媒体方案100的实施例,该方案可以实现从HTTP服务器120传送媒体内容到流媒体客户端110。例如,流媒体方案100可以是DASH或者其他类型的流媒体方案。流媒体客户端110可以是在用户设备的操作系统中实现的程序或应用,或者流媒体客户端可以是在web平台上访问的web客户端。可以由流媒体准备单元130生成或准备HTTP服务器120中存储的媒体内容。媒体准备单元130可以位于HTTP服务器120中或其他位置(例如,内容提供商中)。HTTP服务器120可以是内容提供商的一部分,也可以是内容分发网络(content deliverynetwork,CDN)中的节点。媒体内容可以由所述内容提供商生成,然后发送到CDN节点。HTTP服务器120中的媒体内容可以包括MPD和多个分片。请注意,如果需要的话,所述MPD和分片可以存储在不同的服务器中,并从不同的服务器发送到流媒体客户端110。另外,此处所述的HTTP服务器仅仅作为服务器的一个示例。应当理解的是,此处所公开的此类实施例也可以在任何其他合适类型的服务器中实现。
在流媒体方案100中,流媒体客户端110可以向HTTP服务器120发送媒体内容的请求。作为响应,HTTP服务器120可以首先采用MPD传送功能140向流媒体客户端110传送MPD。可通过HTTP、电子邮件、拇指驱动器、广播或者其他任何传输方式传送MPD。通过解析MPD,流媒体客户端110可以获知关于媒体内容的信息,例如,程序的定时、媒体内容的可用性、媒体类型、分辨率、最大和最小带宽、多媒体成份的各种编码替代物的存在性、可访问性特征和所需的数字版权管理(digital rights management,DRM)、每种媒体成份在网络中的位置,以及媒体内容的其他特征。采用该信息,流媒体客户端110可以选择合适的编码表示或其替代物,并通过采用HTTP GET请求来获取分片以开始流传送媒体内容。HTTP服务器120可以采用分片传送功能向流媒体客户端110传送分片。请注意,流媒体客户端110可以从多个HTTP服务器下载分片,例如,以最大化网络带宽的利用率。流媒体客户端110可以适当地渲染所下载的媒体,以向流媒体客户端110的用户提供流媒体服务。尽管流媒体客户端110可以基于MPD中包含的URL所指定的位置获得分片,但有时分片可能存储在HTTP缓存150中(例如,HTTP服务器120或CDN节点中),使得流媒体客户端110可以更高效地接收分片。
在适当缓冲以允许网络吞吐量变化后,流媒体客户端110可以继续下载后续分片,并同时监控网络的带宽波动。取决于流媒体客户端的测量,流媒体客户端110可以适应性地通过下载不同表示的分片将流媒体调整到可用带宽(例如,采用更低或更高比特率),以保持足够的缓冲。
图2示出了一种生成分片及其各自签名的方案200的实施例示意图。方案200可以由HTTP服务器(例如,HTTP服务器120)或媒体内容提供商实现。分片单元或模块210可以用于将媒体内容202划分为多个分片。如上所述,取决于应用,可以采用各种层级来表示媒体内容。如果采用了子分片,则与可应用于分片一样,此处所述的方案可以应用于子分片。
每种表示包括多个分片,包括初始化分片(IS)和至少一个媒体分片(MS)。例如,如图2所示,表示n,其中,n为指示表示索引的整数,包括一个初始化分片(记为ISn)和m个媒体分片(记为MSn1,MSn2,,……,MSnm),其中,m为指示分片索引的整数。每种表示可以包括相同或不同数目的分片。例如,在图2中,表示1包括k个分片,而表示n包括m个分片,其中,k和n可以相同或不同。
为了防止篡改或未经授权操控分片,可以为每个分片或子分片(如果采用了子分片)分配分片签名(有时称为私钥)。通过分片URL,记为SegmentURL,可以检索每个分片;通过分片签名URL,记为SegmentSignatureURL,可以检索该分片对应的签名。segmentURL和SegmentSignatureURL均可以作为MPD的元素或属性进行存储。MPD可以直接包含URL,而不是分片签名,以减小MPD的文件大小。
签名模块220可以用于为每个分片生成分片签名。例如,如图2所示,为分片ISn生成签名ISn,为分片MSn1生成签名MSn1,……,为分片MSnm生成签名MSnm。考虑将分片ISn作为示例,前提是其他分片也进行了类似地签名。在一个实施例中,计算ISn的分片签名不仅将ISn本身考虑在内,还考虑到MPD中包含的与ISn相关的信息,例如segmentURL、SegmentSignatureURL、内容ID、时间戳或其组合。如图2所示,可以基于ISn、分片签名URL232和CID 234计算出签名ISn。还可以基于无签名MPD 236和签名密钥计算出签名ISn。通过将分片签名与MPD结合,可以保证每个分片的真实性。
媒体内容202的MPD可以包括经过编程以描述关于媒体内容的信息的元素和属性。在XML编程中,元素可以包括三个部分:<element name>指示的开始标签、元素内容和</element name>指示的结束标签。进一步地,元素可以包含一个或多个属性和/或子元素。属性可以包括属性名称和属性值,表示为attribute name=attribute value。
对于每个分片,可以创建SegmentSignatureURL作为MPD中的属性。SegmentSignatureURL规定了验证实体(例如,流媒体客户端110)可以从哪里获得针对给定分片的分片签名。例如,分片签名可以位于签名存储服务器中,因此,验证实体可以在签名存储服务器中检索到分片签名。在一个实施例中,签名模块220可以采用下述等式生成签名对象:
SegmentSignature=Sign(Hash(segment,SegmentSignatureURL),SignatureSignKey) (1)
其中,Hash()表示分片和该分片的SegmentSignatureURL的哈希函数;SignatureSignKey表示签名密钥;Sign()表示采用变量Hash()和SignatureSignKey的签名算法。
通过计算哈希函数,即Hash(),为分片生成了摘要或哈希值。随后,采用Sign()函数生成对应的分片签名。在一个实施例中,采用哈希函数计算摘要也可将分片的CID考虑在内。此时,可以按照以下等式生成分片签名:
SegmentSignature=Sign(Hash(segment,SegmentSignatureURL,CID),SignatureSignKey) (2)
在等式(1)或(2)中,可以通过MPD中存储的分片的SegmentURL检索该分片。请注意,MPD可以在表示或自适应集的开头采用模板(记为SegmentURLTemplate)以规定每个SegmentURL是如何通过模板得到的,而不是指定每个SegmentURL。例如,该模板可以指定每个分片的时间范围和/或比特范围,因此,当DASH客户端请求特定的时间范围时,HTTP服务器可以采用该模板确定向DASH客户端提供哪一个分片。类似地,每个SegmentSignatureURL可以存储在MPD中,或者可以从记为SignatureURLTemplate的URL模板中得到每个SegmentSignatureURL。签名密钥(即SignatureSignKey)可以是签名实体(例如,HTTP服务器120或内容提供商)生成的私钥。签名密钥由签名实体进行保护,不向任何第三方或用户透露。
可以基于签名密钥生成对应的签名验证密钥,记为SignatureVeriKey。签名验证密钥可以公开,例如,分发给第三方和用户,并存储在签名存储服务器中。通过记为SignatureVeriKeyURL的签名验证密钥URL可检索或寻址到SignatureVeriKey。SignatureVeriKeyURL可以作为属性存储在MPD中,以指示验证实体可定位SignatureVeriKey的地方。在一个实施例中,SignatureVeriKeyURL和SegmentSignatureURLTemplate均可以作为记为SegmentSignature的元素的属性被包含。元素SegmentSignature的语义如表1所示,其中,symbol@表示属性,O表示相关属性为可选属性。
表1
应当注意的是,媒体内容202中的多个分片可以共享公共签名验证密钥。因此,可能没有必要为每个分片创建属性SignatureVeriKeyURL。相反,可以根据媒体内容202的层级在更高层级创建SignatureVeriKeyURL。例如,可能自适应集、时段、表示或整个媒体内容仅需要一个SignatureVeriKeyURL。或者,媒体内容202所需的一个或多个签名验证密钥可以直接存储在MPD中,在此情况下,可以移除属性SignatureVeriKeyURL。由于签名验证密钥的数目可以相对较小(例如,1),所以MPD文件大小可以不用受到直接包括的签名验证密钥的太大影响。
签名模块220还可以用于生成MPD签名242,以保证计算分片签名中所考虑到的信息的完整性和真实性。可以采用任何合适的函数或算法计算MPD签名242。随后,可以将MPD签名插入MPD中,以生成包含MPD签名242和分片签名URL 232的MPD 244。在一个实施例中,MPD签名242可以作为元素进行存储(例如,记为Signature)。例如,MPD签名可以确保元素SegmentSignature中的某些信息(例如,属性SegmentSignatureURLTemplate)不被篡改。一旦接收到MPD 244,验证实体可以检测分片是否被替换、修改或移除。
表2示出了包含时段元素和MPD签名的另一个元素的示例性MPD。该示例性MPD写编写成XML码。本领域的技术人员应认识到该表示法和示例性元素/属性名称和值,因此,出于简洁的目的,这些细节将不会在进一步进行描述。
表2
图3示出了一种签名验证方案300的实施例中的消息交互。为了开始流传送媒体内容,流媒体客户端310,可以是DASH客户端或者其他类型的流媒体客户端,首先向web服务器320发送MPD的请求,web服务器可以和HTTP服务器120相同或相似。随后,web服务器320可以通过返回MPD进行响应。在接收到MPD后,客户端310可以解析MPD以解读该MPD中包含的信息。客户端310可以根据资源统计、网络环境或状况、客户端310的设备能力以及使用客户端310的订户的选择来确定合适的表示或自适应集。
接下来,客户端310可以发送包括初始化分片和媒体分片的分片的请求,web服务器320可以通过发送分片进行响应。客户端310发送的请求可以包括SegmentURL,用于检索web服务器320中的分片。尽管MPD和分片均发自相同的web服务器320,本领域的技术人员应意识到,在替代性实施例中,描述媒体内容的MPD和媒体内容的分片可以存储在不同的服务器中,并发自不同的服务器。例如,MPD可以发自内容发布商,而分片来自第三方CDN节点。
客户端310用于支持分片签名验证。为了验证所接收到的分片是否真实,客户端310可以向签名存储服务器330发送请求,签名存储服务器中存储有原始SegmentSignature。请注意,web服务器320可能已经生成原始SegmentSignature。客户端310可以通过SegmentSignatureURL或者接收到的MPD中包含的SegmentSignatureURLTemplate获得原始SegmentSignature。因此,只需要为一个分片存储一个SegmentSignature,这会带来高存储效率,且只需要向客户端310传送一个SegmentSignature,这会使通信数据达到最小。进一步地,为了使签名验证过程可能带来的任何延迟达到最小,客户端310可以在接收对应的分片之前或同时获得原始分片签名。
另外,在接收到分片后,客户端310可以采用分片签名、分片、可信信息,以及基于MPD获得的签名验证密钥来确定分片的真实性。在一个实施例中,客户端310可以按照以下接收到的分片的哈希函数计算摘要:
Hash(received segment,SegmentSignatureURL) (3)
在替代性实施例中,采用哈希函数计算摘要也可将分片的CID考虑在内。此时,可以按照以下哈希函数生成摘要:
Hash(received segment,SegmentSignatureURL,CID) (4)
可以看出等式(3)对应于等式(1),等式(4)对应于等式(2)。因此,在客户端310中生成摘要应当采用和生成原始SegmentSignature所使用的相同Hash()函数。在公式(3)或(4)中,可以从接收到的MPD中提取或者从接收到的MPD中包含的SegmentSignatureURLTemplate得到SegmentSignatureURL。
在确定接收到的分片真实性时,客户端310也可以采用签名验证密钥(即SignatureVeriKey)计算SegmentSignature的值,以得到结果。随后,客户端310可以将结果与摘要或哈希值进行比较。如果结果与摘要或哈希值相等,则真实性验证通过,表示接收到的分片为真实分片;反之,验证失败,表示分片和/或分片签名可能已经被篡改。随后,客户端310可以根据验证结果和预定义的规则采取行动。
可以通过接收到的MPD中的SignatureVeriKeyURL获得SignatureVeriKey。例如,客户端310可以采用SignatureVeriKeyURL来检索签名存储服务器330中存储的SignatureVeriKey。或者,如果接收到的MPD包括SignatureVeriKey,而不是SignatureVeriKeyURL,则可以直接提取SignatureVeriKey。如上所述,媒体内容中的多个分片可以共享公共签名验证密钥。因此,不需要为每个分片重复获取SignatureVeriKey。如果所有分片共享相同的SignatureVeriKey,只需要通过SignatureVeriKeyURL获取SignatureVeriKey一次。
在使用中,为了节省处理时间和/或功率,客户端310可以选择只为流媒体中包含的一部分分片验证签名。例如,客户端310可以决定随机选择一些分片来验证其分片签名。
如果分片的验证通过,则客户端310可以开始播放该分片。当客户端310播放验证后的分片时,客户端也可以更新资源统计(例如,网络状况、订户选择和设备能力)。如果根据更新的资源统计应当采用不同的表示,则客户端310可以开始请求不同表示中的分片。进一步地,MPD可以更新到包含更新的信息。如有必要,客户端310可以再次请求更新的MPD。
当分析所公开的签名验证方案的安全性时,应当理解的是,这些方案的安全性取决于签名函数/算法(例如,等式(1)-(2))的安全性以及生成原始SegmentSignature所采用的签名密钥的机密性。因此,可以假设攻击者不能访问原始分片签名,且在不知道所有输入信息(例如,分片、SegmentSignatureURL、SignatureSignKey以及可选的CID)时不能正确地生成原始签名。另外,如果哈希函数对碰撞攻击具有鲁棒性,则攻击者将难以找到两个具有相同哈希摘要(即签名摘要)的不同分片。因此,攻击者可能无法找到另一个和合法签名者所签名的分片的摘要具有相同哈希摘要的分片。换句话说,攻击者可能无法伪造分片签名。
在使用中,客户端310可以从segmentURL和SegmentSignatureURL分别指定的位置中获得分片和分片签名。为了提高效率,客户端310有时可以从CDN缓存或HTTP缓存中获得分片和分片签名。由于CDN节点或者HTTP服务器可以篡改分片和/或分片签名,所以客户端310接收到的分片和/或分片签名可能由于篡改不同于原始的分片和/或分片签名。因此,有必要保证分片和分片签名均来自可信实体(例如,合法的媒体内容提供商)。在本发明中,可以基于分片本身生成分片签名,还可以基于MPD中的可信信息,例如分片签名的SegmentSignatureURL。进一步地,可以由MPD签名验证SignatureURL的真实性。因此,客户端310可以确认每个分片的真实性和完整性,并可以检测到分片篡改攻击。可以通过任何技术保证MPD的真实性,例如,万维网联盟(World Wide Web Consortium,W3C)标准规定的技术。
如果MPD没有进行签名,例如,没有MPD签名,则MPD中的某些信息,例如SegmentSignatureURL,可在DASH客户端没有检测到情况下就被篡改。例如,假设合法媒体内容是可口可乐广告,攻击者试图用百事广告替换该广告。可口可乐广告和百事广告都可以由相同媒体内容提供商服务。在MPD中,攻击者可以将可口可乐分片对应的SegmentSignatureURL替换为百事分片对应的SegmentSignatureURL。进一步地,在HTTP服务器或缓存中,攻击者可以将可口可乐分片替换为百事分片。由于攻击者可以和DASH客户端一样访问哈希函数,所以攻击者可以基于百事分片和签名验证密钥为百事分片生成哈希值。随后,攻击者可以在百事分片所对应的SegmentSignatureURL可寻址到的任何位置存储SegmentSignature。此时,在DASH客户端接收到百事分片后,可以基于百事分片及其SegmentSignatureURL计算出哈希值。DASH客户端也可以采用接收到的分片和签名验证密钥计算另一个值。这两个值会匹配,因此,DASH客户端不能检测到对篡改攻击有用的篡改。
如上所述,在为分片生成签名时,所公开的方案将MPD中的可信信息考虑在内,从而保证了分片的真实性。每个分片的可信信息可以多样和独有。例如,可信信息可以是SegmentSignatureURL、SegmentURL或CID。所公开的方案可以防止各种攻击场景。在第一种示例性情况下,原始分片被替换为未授权分片,随后由DASH接收到该分片。此时,DASH可以检测未授权分片。具体地,DASH客户端可以采用SegmentSignatureURL(可信信息)为原始签名定位原始SegmentSignature,原始SegmentSignature可按照以下等式生成:
Original SegmentSignature=Sign(Hash(original segment,SegmentSignatureURL),SignatureSignKey) (5)
出于验证目的,DASH客户端还可以采用任何合适的函数将原始分片签名转换为另一个值。如上所述,SignatureSignKey确定了对应的SignatureVeriKey。因此,DASH客户端可以按照以下哈希函数计算哈希值:
Hash(unauthorized segment,SegmentSignatureURL) (6)
通过将基于原始分片签名的值和基于接收的分片的另一值进行比较,DASH客户端将检测到验证失败,因为原始分片和未授权分片不同。
在第二种示例性情况下,原始SegmentSignature被替换为未授权SegmentSignature,未授权SegmentSignature可以存储在签名存储服务器中。此时,在接收到原始分片后,DASH客户端可以采用SegmentSignatureURL(可信信息)定位未授权SegmentSignature(由于该未授权SegmentSignature替换了原始SegmentSignature)。必要时,客户端还可以将未授权SegmentSignature转换为另一个值。进一步地,DASH客户端可以按照以下哈希函数计算哈希值:
Hash(original segment,SegmentSignatureURL) (7)
通过将哈希值和基于未授权SegmentSignature的另一值进行比较,DASH客户端将检测到验证失败。
在第三种示例性情况下,原始分片被替换为未授权分片,原始SegmentSignature被替换为未授权SegmentSignature。请注意,由于MPD中的SegmentSignatureURL是可信信息,且签名密钥受到保护,所以攻击者无法采用签名函数计算未授权SegmentSignature。此时,在接收到未授权分片后,DASH客户端可以采用等式(6)生成哈希值。进一步地,DASH客户端可以采用SegmentSignatureURL(可信信息)定位未授权SegmentSignature(由于该未授权SegmentSignature替换了原始SegmentSignature)。必要时,DASH客户端还可以将未授权SegmentSignature转换为另一个值。通过比较基于接收到的分片和未授权SegmentSignature的值,DASH客户端将检测到验证失败。随后,DASH客户端可以根据验证结果和预定义的规则采取行动。
如果在生成分片签名时没有考虑MPD中的可信信息,一些攻击是可能的,所以,所公开的签名方案比传统签名方案具有更强的安全性。考虑传统方案中的第三种示例性情况。由于生成SegmentSignature时没有考虑MPD中的任何信息,所以攻击者将能够基于未授权分片采用签名函数计算出未授权SegmentSignature。因此,当DASH客户端仅基于接收到的未授权分片生成检索到的SegmentSignature,检索到的SegmentSignature可以匹配未授权SegmentSignature。
在传统方案中,由于攻击者可以重排序或者略过一些分片以发起攻击,所以在分片签名中添加CID不能防止该攻击。类似地,由于攻击者可以将原始分片替换为属于并发未授权媒体内容的并发未授权分片,所以在分片签名中添加时间戳也不能防止攻击。此外,由于时间戳为时间窗,且攻击者可以将原始分片替换为相邻分片(例如,在相同表示中的前一个分片或下一个分片),所以在分片签名中添加CID和时间戳都不能防止攻击。另外,攻击者也可以将原始分片替换为另一种表示或自适应集中的对应分片。此外,由于时间戳可以仅为直播流工作,其中的一个分片包含一个时间戳,所以在分片签名中包含时间戳可能并不可取。如果分片不是直播流媒体的一部分,由于不同DASH客户端可以在不同时间访问相同分片,则可以为该分片生成多个时间戳。此时,如果分片签名中包含时间戳,则可能需要多个分片签名和多个SegmentSignatureURL,这将给DASH系统造成额外负担。
事实上,尽管采用安全信道可以实现传送URL,例如,采用HTTP安全(HypertextTransfer Protocol Secure,HTTPS)通信协议,安全信道也可能带来缺点。例如,由于在安全信道中发送时URL可能需要进行加密,例如CDN节点的接收端可能没有正确的缓存它们。又例如,由于信息需要进行加密并随后进行解密,通过HTTPS传送该信息可能更昂贵且效率不高。所公开的认证方案可不需要URL通过安全信道进行传送,这将在实践中证明是有利的。
URL认证的签名
为了防止如上述背景技术部分中所述的对URL的篡改、重组和删除类型的攻击,引入了新的元素和属性作为签名参数。新参数可以包括元素SignatureInfo、该元素的子元素SignatureIdInfo、Path和Range,以及其子属性@segmentInfo。元素SignatureIdInfo包括三个属性:@CurrentId、@FirstSignDeclaration和@nextId。元素Path包括属性MPD@Id、Period@Id、AdaptationSet@Id和Representation@Id。元素Range包括属性@startOffset和属性@numUrls。元素SignatureIdInfo的属性@CurrentId、@FirstSignDeclaration和@nextId可共同用于防止篡改、重组和删除攻击。如果属性@nextId并不作为签名参数,则攻击者可成功发起一些攻击。例如,攻击者可删除一些URL和对应的签名URL,且客户端无法检测到该类型的攻击。元素Path的属性指示URL签名的路径,且可用于防止替换攻击。如果参数列表中没有元素Path,则攻击者可将URL和对应签名替换为另一个MPD或表示中的URL和对应签名。元素Range的属性表示URL签名的范围,且可以和元素SignatureIdInfo与元素Path的属性一起用以防止一些攻击。
四个属性,即@IsWholeMPDSignedOnce、@IsWholePeriodOnce、@IsWholeAdapSetOnce和@IsWholeRepreOnce,指示全部URL是否一次进行签名。如果这些属性之一出现在MPD中,则不需要元素Range。属性@segmentInfo将URL和对应的分片进行关联。
在一个实施例中,签名模块220可以用于按照以下等式生成如下UrlAuthentication:
UrlAuthentication=Sign(Hash(@CurrentId,@nextId,MPD@Id,Period@Id,AdaptationSet@Id,Representation@Id,URL1,URL2,URLk,@segmentInfo))
其中,Hash()表示关于@CurrentId、@nextId、MPD@Id、Period@Id、AdaptationSet@Id、Representation@Id、URL1、URL2、URLk和@segmentInfo的哈希函数,@segmentInfo表示签名密钥,Sign()表示采用变量Hash()的签名算法。
通过计算哈希函数,即Hash(),为分片生成了摘要或哈希值。随后,采用Sign()函数生成对应的UrlAuthentication。
元素UrlAuthentication为获取验证密钥提供了URL,并为构建URL提供了模板,这将进一步用于为给定URL下载认证标签。
元素UrlAuthentication的语义如表3所示。
表3
元素SignatureIdInfo可以进行简化,使得属性@FirstSignDeclaration和@NextId不是必需的,然而,所有按序排列的Id的列表和列表上的签名均必需。
内容访问授权的签名
为了提高内容访问授权的URL签名的方案的效率,公开了一个新元素UrlAuthorization,以携带关于哪些URL进行了签名、授权了哪一个客户端,以及客户端或验证方可在哪里检索基于URL的内容访问授权的信令信息。除了上述URL认证方案中所引入的一些相同属性,所提出的元素中引入了两个属性@ClientUniqueId和@validityPeriod,以支持个性化用户授权和内容授权过期。
在一个实施例中,签名模块220可以用于按照以下等式生成UrlAuthorization:
UrlAuthorization=Sign(Hash(MPD@Id,Period@Id,AdaptationSet@Id,Representation@Id,URL1,URL2,URLk,@ClientUniqueId,@validityPeriod))
签名验证需要上述的签名对象、验证密钥和签名值。所以,客户端需要向授权验证方提供信息或者检索必要信息的相关URL。
元素UrlAuthorization为获取密钥提供了URL,并为构建URL提供了模板,这将进一步用于为给定分片下载授权标签。元素UrlAuthorization的语义如表4所示。
表4
请注意,在元素UrlAuthorization中,子元素Path不是必需的。然而,当元素Path出现时,元素UrlAuthorization可在MPD中任何位置。
可以看出,上述的两种方案均基于相似的URL签名,但出于不同的目的。在另一个实施例中,上述方案可合并为一个方案,以进一步提高效率。
元素UrlSignature
元素UrlSignature为获取验证密钥提供了URL,并为构建URL提供了模板,这将进一步用于下载签名标记。元素UrlSignature的语义如表5所示。
表5
上述方案可在网络部件或节点中实现,例如,具有足够的处理能力、存储器资源和网络吞吐能力以处理其负载的必要工作量的网络节点。图4示出了适用于实现所公开的方法/方案,例如,流媒体方案100、方案200和签名验证方案300,的一个或多个实施例的网络节点1300的实施例。进一步地,网络节点1300可以用于实现此处所述的任何装置,例如,流媒体客户端110或320、HTTP/web服务器120或320、媒体内容提供商,或者签名存储服务器330。
网络节点1300包括处理器1302,所述处理器与包含以下项的存储器设备进行通信:辅助存储器1304,只读存储器(read only memory,ROM)1306,随机存取存储器(randomaccess memory,RAM)1308,输入/输出(input/output,I/O)设备1310,以及发送器/接收器1312。尽管作为单个处理器进行描述,但处理器1302并不限于此而是可以包括多个处理器。处理器1302可以实施为一个或多个中央处理器(central processing unit,CPU)芯片、核(例如,多核处理器)、现场可编程门阵列(field programmable gate array,FPGA)、专用集成电路(application-specific integrated circuit,ASIC)、和/或数字信号处理器(digital signal processor,DSP),和/或可以是一个或多个ASIC的一部分。处理器1302可以用于实现此处所述的任何方案,包括流媒体方案100、方案200,以及签名验证方案300。处理器1302可通过硬件或硬件和软件的结合来实现。
辅助存储器1304通常包括一个或多个磁盘驱动器或磁带驱动器,用于数据的非易失性存储,而且如果RAM 1308的容量不足以存储所有工作数据,辅助存储器则用作溢流数据存储设备。辅助存储器1304可以用于存储程序,当选择执行这些程序时,所述程序将加载到RAM 1308中。ROM 1306可用于存储在程序执行期间读取的指令以及可能读取的数据。ROM1306为非易失性存储设备,其存储容量相对于辅助存储器1304的较大存储容量而言通常较小。RAM 1308用于存储易失性数据,还可能用于存储指令。对ROM 1306和RAM 1308二者的存取通常比对辅助存储器1304的存取快。
发送器/接收器1312可用作网络节点1300的输出和/或输入设备。例如,如果发送器/接收器1312用作发送器,则其可将数据传出网络节点1300。如果发送器/接收器1312用作接收器,其可将数据接入网络节点1300。发送器/接收器1312可采用以下形式:调制解调器、调制解调器组、以太网卡、通用串行总线(Universal Serial Bus,USB)接口卡、串行接口、令牌环卡、光纤分布式数据接口(fiber distributed data interface,FDDI)卡、无线局域网(wireless local area network,WLAN)卡、无线收发器卡例如码分多址(CodeDivision Multiple Access,CDMA)、全球移动通信系统(Global System for MobileCommunications,GSM)、长期演进(Long Term Evolution,LTE)、全球微波接入互操作性(Worldwide Interoperability for Microwave Access,WiMAX),和/或其他空中接口协议无线收发器卡,以及其他熟知的网络设备。发送器/接收器1312可使得处理器1302与因特网或一个或更多企业内部网进行通信。I/O设备1310可包括视频监控器、液晶显示器(liquidcrystal display,LCD)、触屏显示器,或其它类型的用于显示视频的视频显示器,也可包含采集视频的视频录像设备。I/O设备1310也可以包括一个或多个键盘、鼠标、轨迹球或其他熟知的输入设备。
可以理解的是,通过编程和/或加载可执行指令至网络节点1300,处理器1302、辅助存储器1304、RAM 1308和ROM 1306中至少有一个会发生改变,从而将网络节点1300部分转变为特定机器或装置(例如,具有本发明所述新颖功能的HTTP服务器或DASH客户端)。可执行指令可存储于辅助存储器1304、ROM 1306,和/或RAM 1308上,并加载至处理器1302中用于执行。对于电气工程及软件工程技术来说基本的是,可通过将可执行软件加载到计算机中而实现的功能可通过熟知设计规则而转换为硬件实施方案。在软件还是硬件中实现概念的判断通常取决于设计的稳定性及待生成单元的数目的考量,而与从软件域转译到硬件域所涉及的任何问题无关。通常,仍在经受频繁改变的设计可优先在软件中实现,因为重新设计硬件实现方案比重改软件设计更为昂贵。通常,稳定及大规模生产的设计更适于在如专用集成电路(application-specific integrated circuit,ASIC)这样的硬件中实现,因为运行硬件实现方案的大规模生产比软件实现方案更为便宜。通常,一个设计可以软件形式进行开发及测试,且随后通过熟知设计规则变换为对软件的指令进行硬连线的专用集成电路中的等效硬件实现。同样地,正如由新ASIC控制的机器是特定的机器或装置,已编程和/或加载有可执行指令的计算机可视为特定的机器或装置。
本发明公开了至少一项实施例,且所属领域的普通技术人员对所述实施例和/或所述实施例的特征作出的变化、组合和/或修改均在本发明的范围内。因组合、合并和/或省略所述实施例的特征而得到的替代性实施例也在本发明的范围内。在明确说明数字范围或限制的情况下,此类表达范围或限制应被理解成包括在明确说明的范围或限制内具有相同大小的迭代范围或限制(例如,从约为1到约为10包括2、3、4等;大于0.10包括0.11、0.12、0.13等)。例如,只要公开具有下限Rl和上限Ru的数字范围,则明确公开了此范围内的任何数字。具体而言,在所述范围内的以下数字是明确公开的:R=Rl+k*(Ru-Rl),其中k是从1%到100%以1%增量递增的变量,即,k是1%、2%、3%、4%、5%……70%、71%、72%……95%、96%、97%、98%、99%或100%。此外,由上文所定义的两个数字R定义的任何数字范围也是明确公开的。除非另有陈述,否则术语“约”的使用意味着随后数字±10%。相对于权利要求的任一元素使用术语“任选地”意味着所述元素是需要的,或者所述元素是不需要的,两种替代方案均在所述权利要求的范围内。使用如“包括”、“包含”和“具有”等较广术语应被理解为提供对如“由……组成”、“基本上由……组成”以及“大体上由……组成”等较窄术语的支持。因此,保护范围不受上文所陈述的说明限制,而是由所附权利要求书界定,所述范围包含所附权利要求书的标的物的所有等效物。每一和每条权利要求作为进一步揭示内容并入说明书中,且所附权利要求书是本发明的实施例。对所述揭示内容中的参考进行的论述并非承认其为现有技术,尤其是具有在本申请案的在先申请优先权日期之后的公开日期的任何参考。本发明中所引用的所有专利、专利申请案和公开案的揭示内容特此以引用的方式并入本文本中,其提供补充本发明的示例性、程序性或其它细节。
虽然本发明多个具体实施例,但应当理解,所公开的系统和方法也可通过其它多种具体形式体现,而不会脱离本发明的精神或范围。本发明的实例应被视为说明性而非限制性的,且本发明并不限于本文本所给出的细节。例如,各种元件或部件可以在另一系统中组合或合并,或者某些特征可以省略或不实施。
此外,在不脱离本发明的范围的情况下,各种实施例中描述和说明为离散或单独的技术、系统、子系统和方法可以与其它系统、模块、技术或方法进行组合或合并。展示或论述为彼此耦合或直接耦合或通信的其它项也可以采用电方式、机械方式或其它方式通过某一接口、设备或中间部件间接地耦合或通信。其它变更、替换、更替示例对本领域技术人员而言是显而易见的,均不脱离此处公开的精神和范围。

Claims (21)

1.一种用于发送和验证统一资源定位符URL签名以访问自适应流中URL可寻址内容的方法,其特征在于,所述方法包括:
提供针对多个URL的多个URL认证描述符和URL授权描述符,其中,每个URL认证描述符包括获取验证密钥和访问认证标签以根据相关联的URL认证方案认证所述多个URL中给定URL的信息,且每个URL授权描述符是为获取验证密钥和访问授权标签以根据相关联的URL认证方案授权访问所述多个URL中给定URL可寻址内容;
传递针对所述多个URL的所述多个URL认证描述符和URL授权描述符;
在所传递的所述多个URL认证描述符和URL授权描述符中,为每个描述符在所述多个URL中的给定URL,根据每个描述符的相关联方案验证每个描述符。
2.根据权利要求1所述的方法,其特征在于,所述多个URL由URL构建模板指定。
3.根据权利要求1所述的方法,其特征在于,所述传递步骤在媒体描述文件(mediapresentation description,MPD)内传递针对所述多个URL的所述多个URL认证描述符和URL授权描述符。
4.根据权利要求3所述的方法,其特征在于,所述传递步骤还采用所述MPD的URLAuthentication传递所述多个URL认证描述符和URL授权描述符中的每个URL认证描述符。
5.根据权利要求3所述的方法,其特征在于,所述传递步骤还采用所述MPD的URLAuthorization传递所述多个URL认证描述符和URL授权描述符中的每个URL授权描述符。
6.根据权利要求1所述的方法,其特征在于,所述提供步骤还提供所述多个URL认证描述符和URL授权描述符中的每个URL认证描述符,以包含关于认证该URL认证描述符给定URL的可寻址内容的信息;所述验证步骤还验证所述信息,以认证该URL认证描述符给定URL的可寻址内容。
7.根据权利要求6所述的方法,其特征在于,所述关于认证该URL认证描述符给定URL的可寻址内容的信息包括所述给定URL寻址的内容的数字签名。
8.根据权利要求1所述的方法,其特征在于,所述提供步骤还提供所述多个URL认证描述符和URL授权描述符中的每个URL授权描述符,以包含关于授权访问该URL授权描述符给定URL的可寻址内容的信息;所述验证步骤还验证所述信息,以授权访问该URL授权描述符给定URL的可寻址内容。
9.根据权利要求8所述的方法,其特征在于,所述关于授权访问该URL授权描述符给定URL的可寻址内容的信息包括授权访问该URL授权描述符给定URL寻址的内容的有效时期。
10.一种用于发送和验证URL签名以访问自适应流中URL可寻址内容的系统,其特征在于,所述系统包括:
网络;
处理器,用于通过所述网络提供针对多个URL的多个URL认证描述符和URL授权描述符,其中,每个URL认证描述符包括获取验证密钥和访问认证标签以根据相关联的URL认证方案认证所述多个URL中给定URL的信息,且每个URL授权描述符是为获取验证密钥和访问授权标签以根据相关联的URL认证方案授权访问所述多个URL中给定URL可寻址内容;
通过所述网络传递针对所述多个URL的所述多个URL认证描述符和URL授权描述符;
在所传递的所述多个URL认证描述符和URL授权描述符中,为每个描述符在所述多个URL中的给定URL,根据每个描述符的相关联方案验证每个描述符。
11.根据权利要求10所述的系统,其特征在于,所述多个URL由URL构建模板指定。
12.根据权利要求10所述的系统,其特征在于,所述处理器还用于在媒体描述文件(media presentation description,MPD)内传递针对所述多个URL的所述多个URL认证描述符和URL授权描述符。
13.根据权利要求12所述的系统,其特征在于,所述处理器还采用所述MPD的URLAuthentication传递所述多个URL认证描述符和URL授权描述符中的每个URL认证描述符。
14.根据权利要求12所述的系统,其特征在于,所述处理器还采用所述MPD的URLAuthorization传递所述多个URL认证描述符和URL授权描述符中的每个URL授权描述符。
15.根据权利要求10所述的系统,其特征在于,所述处理器还提供所述多个URL认证描述符和URL授权描述符中的每个URL认证描述符,以包含关于认证该URL认证描述符给定URL的可寻址内容的信息;所述验证步骤还验证所述信息,以认证该URL认证描述符给定URL的可寻址内容。
16.根据权利要求15所述的系统,其特征在于,所述关于认证该URL认证描述符给定URL的可寻址内容的信息包括所述给定URL寻址的内容的数字签名。
17.根据权利要求10所述的系统,其特征在于,所述处理器还提供所述多个URL认证描述符和URL授权描述符中的每个URL授权描述符,以包含关于授权访问该URL授权描述符给定URL的可寻址内容的信息;所述验证步骤还验证所述信息,以授权访问该URL授权描述符给定URL的可寻址内容。
18.根据权利要求17所述的系统,其特征在于,所述关于授权访问该URL授权描述符给定URL的可寻址内容的信息包括授权访问该URL授权描述符给定URL寻址的内容的有效时期。
19.一种用于验证URL签名以访问自适应流中URL可寻址内容的客户端,其特征在于,所述客户端包括:
接收器,用于:
接收针对多个URL的多个URL认证描述符和URL授权描述符,其中,每个URL认证描述符包括获取验证密钥和访问认证标签以根据相关联的URL认证方案认证所述多个URL中给定URL的信息,且每个URL授权描述符是为获取验证密钥和访问授权标签以根据相关联的URL认证方案授权访问所述多个URL中给定URL可寻址内容;
发送器,用于:
发送针对URL上可寻址媒体内容的请求,以及与所述URL相关的所接收的多个URL认证描述符和URL授权描述符中的URL认证描述符和URL授权描述符所包含的信息。
20.根据权利要求19所述的客户端,其特征在于,所述多个URL由URL构建模板指定。
21.根据权利要求19所述的客户端,其特征在于,所述多个URL认证描述符和URL授权描述符中的每个URL认证描述符包括关于认证该URL认证描述符给定URL的可寻址内容的信息,其中,所述信息经验证以认证该URL认证描述符给定URL的可寻址内容。
CN201480058430.7A 2013-10-28 2014-10-28 一种用于发送和验证url签名以进行自适应流中url认证和基于url的内容访问授权的系统和方法 Active CN105659240B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361896526P 2013-10-28 2013-10-28
US61/896,526 2013-10-28
PCT/US2014/062710 WO2015066066A1 (en) 2013-10-28 2014-10-28 System and method for signaling and verifying url signatures for both url authentication and url-based content access authorization in adaptive streaming

Publications (2)

Publication Number Publication Date
CN105659240A CN105659240A (zh) 2016-06-08
CN105659240B true CN105659240B (zh) 2018-10-19

Family

ID=52997049

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201480058430.7A Active CN105659240B (zh) 2013-10-28 2014-10-28 一种用于发送和验证url签名以进行自适应流中url认证和基于url的内容访问授权的系统和方法

Country Status (4)

Country Link
US (1) US9794240B2 (zh)
EP (1) EP3055805B1 (zh)
CN (1) CN105659240B (zh)
WO (1) WO2015066066A1 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3142329B1 (en) * 2012-04-25 2018-12-12 Huawei Technologies Co., Ltd. Systems and methods for segment integrity and authenticity for adaptive streaming
WO2014011453A2 (en) * 2012-07-09 2014-01-16 Jvl Ventures, Llc Systems, methods, and computer program products for integrating third party services with a mobile wallet
CN104854835B (zh) * 2013-01-17 2018-07-06 英特尔Ip公司 用于dash感知网络应用功能(d-naf)的装置和方法
JP5962943B2 (ja) * 2013-02-04 2016-08-03 ▲ホア▼▲ウェイ▼技術有限公司Huawei Technologies Co.,Ltd. ストリーミング・メディア・データを送信するための方法および装置
CN107567702B (zh) * 2015-04-24 2021-01-12 Vid拓展公司 在自适应流传送中检测中间人攻击
US9729329B2 (en) * 2015-05-19 2017-08-08 Nxp B.V. Communications security
US10205991B2 (en) * 2015-07-27 2019-02-12 Sony Corporation Hidden replaceable media slots
US9838202B2 (en) 2015-08-31 2017-12-05 Microsoft Technology Licensing, Llc Modifying a content descriptor to facilitate delivery of token-authorized encrypted data
US10645067B2 (en) 2016-04-29 2020-05-05 House of IPY Limited Search engine for authenticated network resources
CN107404379A (zh) * 2016-05-18 2017-11-28 中兴通讯股份有限公司 一种流媒体文件的处理方法及装置
WO2018020291A1 (en) * 2016-07-25 2018-02-01 Telefonaktiebolaget Lm Ericsson (Publ) Content delivery network (cdn) for uploading, caching and delivering user content
US10515194B2 (en) * 2016-08-29 2019-12-24 Electronics And Telecommunications Research Institute Key rotation scheme for DRM system in dash-based media service
CN110140335B (zh) * 2016-11-10 2022-08-12 瑞典爱立信有限公司 用于改进递送性能的资源分段
US10511670B2 (en) * 2016-12-21 2019-12-17 Apple Inc. Techniques for providing authentication information to external and embedded web browsers
CN108668179B (zh) * 2017-03-27 2021-05-14 华为技术有限公司 媒体索引文件的传输方法及相关设备
US10771414B2 (en) 2018-06-27 2020-09-08 International Business Machines Corporation Authentication in messaging platforms for web content
JP7210769B2 (ja) * 2019-03-26 2023-01-23 グーグル エルエルシー 複数の暗号学的デジタル署名を使用したコンテンツアクセスおよびコンテンツ配信の認可の分離
CN112637639B (zh) * 2019-09-24 2024-01-19 中兴通讯股份有限公司 一种统一播放控制系统的控制方法、系统、设备及介质
CN113630251A (zh) * 2020-05-08 2021-11-09 瞻博网络公司 使用签名后的统一资源定位符进行网络业务监测或存储
US11245599B2 (en) 2020-05-08 2022-02-08 Juniper Networks, Inc. Network traffic monitoring or storage using a signed uniform resource locator
CN112685022B (zh) * 2020-12-30 2022-12-13 北京字节跳动网络技术有限公司 图片处理接口生成方法、装置、设备及存储介质
CN114745374B (zh) * 2022-06-10 2022-09-27 武汉四通信息服务有限公司 文件传输方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102710603A (zh) * 2012-05-02 2012-10-03 华为技术有限公司 媒体信息的生成方法、终端、服务器及ahs系统
CN103095517A (zh) * 2011-11-04 2013-05-08 华为技术有限公司 流媒体传输质量评估和信息获取方法及相关设备和系统

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8464325B2 (en) * 2009-01-26 2013-06-11 Apple Inc. Method and system for verifying entitlement to access content by URL validation
CN101997679A (zh) 2009-08-21 2011-03-30 华为终端有限公司 加密信息协商方法、设备及网络系统
US9949305B2 (en) 2009-10-02 2018-04-17 Blackberry Limited Methods and apparatus for peer-to-peer communications in a wireless local area network
EP2491495A4 (en) * 2009-11-04 2013-01-02 Huawei Tech Co Ltd SYSTEM AND METHOD FOR DIFFUSION OF CONTINUOUS MULTIMEDIA CONTENT
US8560830B2 (en) 2010-04-06 2013-10-15 Blackberry Limited System and method for exchanging cryptographic protocol capabilities
CN102143133B (zh) * 2010-08-05 2013-12-18 华为技术有限公司 Http流播放方式中支持广告内容的方法、装置和系统
WO2012047064A2 (ko) * 2010-10-07 2012-04-12 삼성전자 주식회사 Drm 서비스 제공 방법 및 장치
CN102694769B (zh) * 2011-03-22 2015-09-30 华为技术有限公司 媒体数据处理方法及其装置
ES2645101T3 (es) * 2013-01-17 2017-12-04 Intel IP Corporation Autentificación de URL de contenidos para dash
US9160540B2 (en) * 2013-07-25 2015-10-13 Adobe Systems Incorporated Preventing playback of streaming video if ads are removed

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103095517A (zh) * 2011-11-04 2013-05-08 华为技术有限公司 流媒体传输质量评估和信息获取方法及相关设备和系统
CN102710603A (zh) * 2012-05-02 2012-10-03 华为技术有限公司 媒体信息的生成方法、终端、服务器及ahs系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Adaptive Streaming of Audiovisual Content using MPEG DASH";Truong Cong Thang等;《IEEE Transactions on Consumer Electronics》;20120321;第58卷(第1期);第78-85页 *
"MPEG DASH: The Enabler Standard for Video Delivery over the Internet";Thomas Stockhammer等;《SMPTE Motion Imaging Journal》;20120731;第121卷(第5期);第40-46页 *

Also Published As

Publication number Publication date
US20150121484A1 (en) 2015-04-30
EP3055805A1 (en) 2016-08-17
CN105659240A (zh) 2016-06-08
WO2015066066A1 (en) 2015-05-07
EP3055805B1 (en) 2018-12-12
EP3055805A4 (en) 2016-08-31
US9794240B2 (en) 2017-10-17

Similar Documents

Publication Publication Date Title
CN105659240B (zh) 一种用于发送和验证url签名以进行自适应流中url认证和基于url的内容访问授权的系统和方法
US9648027B2 (en) Segment authentication for dynamic adaptive streaming
EP3123383B1 (en) System and method for partial url signing with applications to dynamic adaptive streaming
CN103957436B (zh) 一种基于ott业务的视频防盗链方法
CN106797563B (zh) 用于自适应流媒体的基于令牌的认证和授权信息的信令通知和交互
EP2945344B1 (en) Token-based validation method for segmented content delivery
US9223943B2 (en) Method for scalable access control decisions
US8688991B1 (en) Media player embodiments and secure playlist packaging
CN103841469B (zh) 一种数字电影版权保护方法和装置
CN104255009A (zh) 用于自适应流媒体的片段完整性和真实性的系统和方法
US7995766B2 (en) Group subordinate terminal, group managing terminal, server, key updating system, and key updating method therefor
US20070168293A1 (en) Method and apparatus for authorizing rights issuers in a content distribution system
CN107707504A (zh) 一种流媒体的播放方法、系统以及服务器和客户端
CN107483407B (zh) 一种防盗链的方法和系统
AU2014305015A1 (en) Extensible media format system and methods of use
US8495154B2 (en) Content usage tracking in superdistribution
CN107026828A (zh) 一种基于互联网缓存的防盗链方法及互联网缓存
CN106572052A (zh) 一种互联网电视播放内容的校验方法、机顶盒和系统
US20200364317A1 (en) Method and system for identifying a user terminal in order to receive streaming protected multimedia content
CN116055767A (zh) 视频文件的处理方法、装置、设备及可读存储介质
CN114501069A (zh) 基于hls的多媒体播放方法、系统、设备及存储介质
CN103297464A (zh) 节目信息的获取方法及装置
CN110012319A (zh) 一种视频流地址的鉴权方法及装置
CN115514991B (zh) Iptv视频的防篡改方法、服务器及客户端
EP4277203A1 (en) Method of securely streaming digital content over content delivery network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant