CN108431819A - 保护客户端访问视频播放器的drm代理的服务的方法和系统 - Google Patents

保护客户端访问视频播放器的drm代理的服务的方法和系统 Download PDF

Info

Publication number
CN108431819A
CN108431819A CN201580085688.0A CN201580085688A CN108431819A CN 108431819 A CN108431819 A CN 108431819A CN 201580085688 A CN201580085688 A CN 201580085688A CN 108431819 A CN108431819 A CN 108431819A
Authority
CN
China
Prior art keywords
token
client
requestid
cryptographic block
request
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
CN201580085688.0A
Other languages
English (en)
Other versions
CN108431819B (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.)
Occa Interactive Ltd
Orca Interactive Ltd
Original Assignee
Occa Interactive 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 Occa Interactive Ltd filed Critical Occa Interactive Ltd
Publication of CN108431819A publication Critical patent/CN108431819A/zh
Application granted granted Critical
Publication of CN108431819B publication Critical patent/CN108431819B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • 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
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种用于保护客户端访问DRM代理服务的方法。该方法包括由DRM代理执行的以下步骤:接收获取令牌请求,运用函数以生成解密请求标识符RequestID和令牌值Token,向客户端返回RequestID和Token,将包括与密钥RequestID相关联的令牌值Token的记录插入到以获取令牌请求标识作为密钥的令牌值的哈希表中,接收包括RequestID、多媒体内容加密块和该加密块的摘要的解密请求,基于RequestID从哈希表中检索Token,使用公钥和Token处理摘要,检查经处理的摘要和至少部分加密块之间的匹配,并且仅在匹配的情况下,解密加密块并将经解密的块返回给客户端。

Description

保护客户端访问视频播放器的DRM代理的服务的方法和系统
技术领域
本发明涉及保护客户端访问DRM代理的服务的领域,更具体地,涉及保护客户端对视频播放器的DRM代理的服务业务的访问。
背景技术
在编号为US9027143的专利文献中描述了Adobe的一种已知解决方案,其公开了由CA-DRM代理对视频播放器(称为运行时组件)进行认证的过程。该过程包括从远程计算机系统接收经加密内容和给定的认证组件。认证组件可以被配置为通过解密经加密内容的至少一部分来对运行时组件进行认证。以这种方式,根据一些实施例,客户端系统可以确保只有当多个组件认证了运行时组件时,才会发生经加密内容的解密。
Trusted Logic在专利申请US2009165148中提出了另一种解决方案。该发明涉及一种用于认证计算机系统的应用程序的方法,该计算机系统包括:微处理器、多个应用程序、通用操作系统(OS2)以及为所述应用程序提供服务的可信环境(EC),该通用操作系统能够执行和管理应用程序,并且能够将每个应用标识符(3)与其执行所需的标识信息进行关联。根据该发明,在可信环境(EC)的服务能够被应用程序访问之前,对所述应用的标识信息执行哈希操作,并且可信环境(EC)检查哈希操作结果的真实性。
国际申请WO2007077362公开了一种OS服务以认证应用程序和库。该发明涉及一种用于认证计算机系统的应用程序的方法,该计算机系统包括:微处理器、多个应用程序、通用操作系统(OS2)以及为所述应用程序提供服务的可信环境(EC),该通用操作系统能够执行和管理应用程序,并且能够将每个应用标识符(3)与其执行所需的标识信息进行关联。根据该发明,在可信环境(EC)的服务能够被应用程序访问之前,对所述应用的标识信息执行哈希操作,并且可信环境(EC)检查哈希操作结果的真实性。
发明内容
本发明提供一种用于保护客户端的计算机化模块访问DRM代理的服务的方法。
所述方法包括以下步骤:
-所述客户端向所述DRM代理发送获取令牌请求;
-由所述DRM代理实施以下步骤:
a.接收所述获取令牌请求;
b.运用函数以生成解密请求标识符RequestID和令牌值Token,并向所述客户端返回所述RequestID和所述Token;
c.将包括与密钥RequestID相关联的令牌值Token的记录插入到记录在所述DRM代理的存储器中的令牌值的哈希表中,令牌值的所述哈希表以获取令牌请求标识符作为密钥;
-由所述客户端实施以下步骤:
d.接收来自所述DRM代理的所述RequestID和所述Token;
e.使用所述Token和私钥计算多媒体内容加密块的摘要;
f.计算所述多媒体内容加密块的解密请求,所述解密请求包括所述RequestID、所述加密块和所述加密块的摘要;
g.向所述DRM代理发送所述加密块的所述解密请求;
以及由所述DRM代理实施以下步骤:
h.接收所述解密请求;
i.根据所述RequestID从所述哈希表中检索Token;
j.使用公钥和所述Token处理所述摘要;
k.检查经处理的摘要与所述加密块的至少一部分之间的匹配;
l.仅在匹配的情况下:解密所述加密块并将经解密的块返回给所述客户端;
i.其中,接收、处理、计算、解密中的至少一个由处理器来执行。
根据本发明的一些实施例,实施以下内容:
-所述获取令牌请求包括客户端的标识符ClientID;
-所述函数使用ClientID作为输入;
-所述哈希表的记录进一步包括与所述密钥RequestID相关联的ClientID;
-所述解密请求进一步包括所述客户端的标识符ClientID2;
-所述Token的检索与所述ClientID的检索被联合执行,并且只有在所述ClientID和所述ClientID2匹配的情况下才执行对所述摘要的后续处理和所述加密块的解密。
根据本发明的一些实施例,所述检查经处理的摘要与所述加密块的至少一部分之间的匹配包括在所述Token与所述加密块的至少一部分之间执行XOR操作。
根据本发明的一些实施例,在不匹配的情况下,终止所述客户端的应用程序。
根据本发明的一些实施例,在处理所述解密请求之后,所述方法进一步包括以下步骤:从所述哈希表中移除包括与所述密钥RequestID相关联的所述令牌值Token的记录。
根据本发明的一些实施例,根据所述DRM代理内部的相互排斥(mutualexclusion)来保护所述哈希表的管理过程以及与所述客户端的通信过程,以防止所述客户端获得对所述哈希表的访问。
根据本发明的一些实施例,所述方法进一步使用多个公钥作为授权客户端的白名单以支持多个客户端源。
本发明提供一种用于保护客户端的计算机化模块访问DRM代理的服务的方法。所述方法包括以下步骤:
接收来自所述客户端的获取令牌请求;
运用函数以生成解密请求标识符RequestID和令牌值Token,并且向所述客户端返回所述RequestID和所述Token;
将包括与密钥RequestID相关联的令牌值Token的记录插入到记录在所述DRM代理的存储器中的令牌值的哈希表中,令牌值的所述哈希表以获取令牌请求标识符作为密钥;
接收多媒体内容加密块的解密请求,所述解密请求包括所述RequestID,所述加密块和所述加密块的摘要;
根据所述RequestID从所述哈希表中检索Token;
使用公钥和所述Token处理所述摘要;
检查经处理的摘要与所述加密块的至少一部分之间的匹配;
仅在匹配的情况下:解密所述加密块并将经解密的块返回给所述客户端;
其中,接收、处理、计算、解密中的至少一个由处理器来执行。
本发明提供一种用于保护客户端访问DRM代理的服务的系统,所述系统包括:
客户端算法模块,所述客户端算法模块用于从所述DRM代理接收RequestID和Token,使用所述Token和私钥计算多媒体内容加密块的摘要,计算所述多媒体内容加密块的解密请求,所述解密请求包括所述RequestID、所述加密块和所述加密块的摘要,并向所述DRM代理发送所述加密块的所述解密请求;
获取令牌请求处理模块,所述获取令牌请求处理模块用于接收获取令牌请求,运用函数以生成解密请求标识符RequestID和令牌值Token,向所述客户端返回所述RequestID和所述Token,以及将包括与密钥RequestID相关联的令牌值Token的记录插入到以所述获取令牌请求标识符作为密钥的令牌值的哈希表中;
解密请求处理模块,所述解密请求处理模块用于接收包括所述RequestID、所述加密块和所述加密块的摘要的所述多媒体内容加密块的解密请求,根据所述RequestID在所述哈希表中检索Token,使用公钥和所述Token对所述摘要进行处理,检查经处理的摘要与至少部分所述加密块之间的匹配,且仅在匹配的情况下,解密所述加密块并将经解密的块返回给所述客户端。
m.本发明提供一种系统:
所述获取令牌请求包括客户端的标识符ClientID;
所述函数使用所述ClientID作为输入;
所述哈希表的记录进一步包括与所述密钥RequestID相关联的所述ClientID;
所述解密请求进一步包括所述客户端的标识符ClientID2。
根据本发明一些实施例,所述检查经处理的摘要与所述加密块的至少一部分之间的匹配包括在所述Token与所述加密块的至少一部分之间执行XOR操作。
根据本发明一些实施例,在不匹配的情况下,终止所述客户端的应用程序。
根据本发明一些实施例,进一步包括一装置,所述装置用于根据所述DRM代理内部的互相排斥来保护所述哈希表的管理过程以及与所述客户端的通信过程,以防止所述客户端获得对所述哈希表的访问。
根据本发明一些实施例,提供一种用于执行的解密请求方法。所述解密请求方法包括由所述客户端执行的以下步骤:
向所述DRM代理发送获取令牌请求;
从所述DRM代理接收RequestID和Token;
使用所述Token和私钥计算多媒体内容加密块的摘要;
计算所述多媒体内容加密块的解密请求,所述解密请求包括所述RequestID、所述加密块和所述加密块的摘要;
向所述DRM代理发送所述加密块的所述解密请求;
其中,接收、处理、计算、解密中的至少一个由处理器来执行。
根据本发明一些实施例,提供一种用于实施根据权利要求14所述的解密请求方法的客户端,所述客户端包括用于使用Token和私钥来计算多媒体内容加密块的摘要的签名模块。
附图说明
为了更好地理解本发明并说明如何实施本发明,现在仅通过示例的方式参考附图,在附图中,相同的附图标记始终表示相应的元件或部分。
在附图中:
图1是根据本发明的具有视频播放器的DRM代理的高级示意性框图;
图2是根据本发明的DRM代理的高级示意性框图;
图3是示出根据本发明一些实施例的DRM代理全局算法的高级流程图;
图4是示出根据本发明一些实施例的由视频播放器实施的客户端算法的高级流程图;
图5是示出根据本发明一些实施例的获取令牌请求处理模块算法的高级流程图;
图6是示出根据本发明一些实施例的解密请求处理模块的高级流程图。
具体实施方式
现在具体参照附图详细说明,应该强调的是,所示出的细节仅作为示例,并且仅出于对本发明的优选实施例的说明性讨论的目的,并且呈现为提供被认为是本发明的原理和概念方面的最有用和容易理解的描述。在这一方面,没有试图比本发明的基本理解所需的更详细地示出本发明的结构细节,附图所作的描述使得本领域技术人员明白如何在实践中体现本发明的几种形式。
在详细解释本发明的至少一个实施例之前,应该理解的是,本发明的应用不限于在下面的描述中阐述的或者在附图中示出的部件的构造和布置的细节。本发明适用于其他实施例,并且易于以各种方式实施或执行。而且,应该理解的是,本文中所使用的措辞和术语是为了描述的目的,而不应被认为是具有限制性的。
在阐述相关技术的背景之前,阐明将在下文中使用的某些术语的定义可能是有帮助的。
本发明的目标是优化用于提供这种安全性的资源,并且更具体地是通过使用最小的CPU内存来最小化其CPU占用量。本发明的另一个优点是本发明为提交给DRM代理的每个多媒体内容块提供异步客户端认证。
图1是根据本发明的具有视频播放器的DRM代理的高级示意性框图。本发明提供一种用于认证具有签名模块3的视频播放器2与DRM代理1的通信的解决方案。
图2是根据本发明的DRM代理的高级示意性框图。DRM代理包括获取令牌请求处理模块10、解密请求处理模块20以及用于管理哈希表30的哈希表管理模块25,该获取令牌请求处理模块10用于处理从视频播放器接收的获取令牌请求,该解密请求处理模块20用于处理视频播放器的解密请求并使用解密模块40提供经解密的内容。解密模块可以使用本领域中已知的任何已知的解密方法。
图3是示出根据本发明一些实施例的DRM代理的全局算法的高级流程图。DRM代理全局算法执行以下步骤至少之一:
-从视频播放器接收DRM代理的获取令牌请求(步骤110);
-运用返回输出参数解密请求标识符RequestID和输出参数令牌值Token的回调函数gettoken()(步骤115);
-将由RequestID和Token组成的记录插入到具有解密请求标识符作为密钥的令牌值的哈希表30中(参见图2)(步骤120);
-接收多媒体内容加密块解密请求连同解密请求标识符、加密块以及加密块的摘要(步骤130);
-处理摘要并根据所接收的解密请求标识符从哈希表中检索令牌值(步骤140),并且认证解密请求(步骤150);
-解密加密块并返回得到的解密块(仅当解密请求认证通过时)(步骤155),
-从哈希表30中删除由RequestID和Token组成的记录。
哈希表是记录的无序集合,每个记录将令牌值Token和客户端标识符(ClientID)关联至解密请求标识符RequestID。对哈希表进行维护主要包括向哈希表添加记录和/或从哈希表删除记录。
根据本发明一些实施例,令牌值是足够强的随机数。
对获取令牌请求进行认证包括在所获取的令牌值Token与块的前16个字节之间执行XOR并将所获得的结果与提交用于解密的加密块进行比较(步骤150)。如果匹配,则该请求被认证为是从已授权的客户端发出的,则解密加密块被解密,得到的清楚块(clearchunk)被传输至视频播放器(步骤160),并且包括RequestID和Token的记录被从哈希表中移除。如果不匹配,则使视频播放器应用崩溃或终止(步骤170),并且不需要对该块进行解密。
图4是示出根据本发明一些实施例的视频播放器的算法的高级流程图。
初步地,视频播放器在公钥基础设施中被分配了私钥和公钥对。私钥只能由签名模块记录;公钥是公开可用的且对DRM代理也是可用的。
视频播放器执行以下步骤中的至少一个:向DRM代理发送获取令牌请求;作为响应,接收解密请求标识符RequestID和令牌值Token;使用如下参数通过签名模块计算由加密得到的加密块的摘要:私钥(Private-Key)、对所接收的令牌值和加密块的前16个字节执行XOR操作的结果(如果加密块的长度小于16个字节,用零填充)(210);一旦计算了摘要,则向DRM代理发送解密请求、摘要和加密块(220)。在处理结束时,从DRM代理接收解密块(230)。
图5是示出根据本发明一些实施例的获取令牌请求处理模块算法的高级流程图。获取令牌请求处理模块算法包括以下步骤中的至少一个:启动DRM代理(310);等待获取令牌请求(320);使用客户端标识符ClientID识别获取令牌请求事件(步骤330)。如果DRM代理已知ClientID(步骤340),则生成令牌值Token和解密请求标识符RequestID(步骤360),发送获取令牌回调(RequestID,Token)(步骤370)并将RequestID、ClientID和Token存储在哈希表中(步骤380)。如果DRM代理未知ClientID,则发送获取令牌回调(0,0)错误(步骤350)。如果只需要一个客户端,则不需要客户端标识符ClientID。
图6是示出根据本发明一些实施例的解密请求处理模块算法的高级流程图。解密请求处理模块算法包括以下步骤:
-启动DRM代理(步骤410)并等待解密请求(步骤420);
-接收解密请求以及ClientID、RequestID、加密块的摘要和加密块(步骤430),并且检查哈希表中RequestID是否可用(步骤440)。如果可用,则从哈希表获得关联的ClientID和Token(步骤450),然后检查从哈希表中检索到的ClientID与随接收请求接收到的ClientID是否匹配(步骤460)。如果匹配,则通过使用公钥来处理摘要的方式来计算临时参数Temp,对Token使用XOR函数(步骤470),然后将Temp与加密块的开头进行匹配(步骤480)。在匹配的情况下,执行以下操作:解密加密块(步骤482)以获得清楚块,从哈希表中移除RequestID的记录(步骤484),并将包括清楚块(解密块)的解密回调发送至客户端。在不匹配的情况下,终止DRM代理(步骤490)而不解密该(经加密的)块。
根据本发明一些实施例,客户端设备不是视频播放器,而是另一种设备。例如,客户端设备是视频解码器,或者是诸如音频播放器的另一种多媒体播放器。
根据本发明一些实施例,使用普通函数而不是回调函数。
根据本发明一些实施例,DRM代理内部的哈希表管理过程和视频播放器与DRM代理的通信在互斥方面受到保护,以防止视频播放器访问哈希表。这种保护旨在确保这些并行进程不会被同时执行。可以使用许多硬件和软件解决方案来保护在并发控制领域中已知的哈希表的通信和处理。硬件解决方案的示例有:中断禁用和忙等待。在软件解决方案中,许多算法也依赖于忙等待,而其他算法则使用操作系统同步设施。(关于此主题的更多信息,请参阅例如https://en.wikipedia.org/wiki/Mutual_exclusion#cite_note-6。)
根据本发明一些实施例,每次在视频播放器接收或读取大量经加密的多媒体内容并且必须由视频播放器处理这些多媒体内容时,在播放期间提交的视频播放器调用成对出现:将首先提交获取令牌请求,然后提交块解密请求。
根据本发明一些实施例,解密请求标识符RequestID是简单的整数计数编号。它也可以是任何其他类型的固定值数字或字符串,例如通过随机计算得到。
根据本发明一些实施例,所生成的令牌是通过伪随机数生成器来计算得到的足够强的随机数。
根据本发明一些实施例,其通过使用多个公钥作为所授权视频播放器的白名单来支持多个视频播放器源。
根据本发明一些实施例,用于计算其摘要的加密块的16个字节不是前16个字节。例如,它们是最后的16个字节。在另一个示例中,用于计算其摘要的加密块的16个字节是不连续的字节。
根据本发明一些实施例,使用基于令牌的索引来选择提交用于解密的视频块内部的16个字节。例如,如果令牌的给定权重比特具有值0,则使用前16个字节,如果令牌的给定权重比特具有值1,则使用最后16个字节。
根据本发明一些实施例,以相似的方式使用其每个比特对应于加密块的一个字节的索引:根据每个索引的比特值的不同来考虑或不考虑加密块的对应字节。例如,该索引是通过伪随机计算得到的。在另一个示例中,以预定的频率来更新索引。
根据本发明一些实施例,使用加密块的另一数目的字节来计算其摘要。例如,使用8个字节或32个字节。
根据本发明一些实施例,如果加密块短于16个字节,其将被填充1,或者由另一预定比特值序列填充。
根据本发明一些实施例,建议定义窗口大小限制,以限制用于块解密的同时未决请求的数量。
根据本发明一些实施例,建议使用DRM消息传送系统来添加经授权的播放器的白名单以支持哈希表的管理。
根据本发明一些实施例,建议使用诸如对称加密算法如使用令牌作为密钥的微型加密算法(TEA)的任何双射函数F(Token,前16个字节)/F-1(Token,前16个字节)代替基本XOR函数。
本发明的主要优点是使用最小的CPU存储器来优化所使用的CPU占用量。另一个优点是根据本发明的系统为提交给DRM代理的每个块提供异步客户端认证。
根据本发明的某些实施例,本发明的系统可以包括机器可读存储器,该机器可读存储器包含或存储指令程序,当由机器执行时,所述指令程序实施本文中示出和描述的本发明的设备、方法、特征以及功能中的一些或全部。可替代地或附加地,根据本发明的某些实施例,本发明的装置可以包括可以以任何常规编程语言编写的上述程序,并且可选地包括用于执行程序的机器,例如但不限于通用计算机,其可以根据本发明的教导可选地配置或激活。本文中包含的任何教导可以适用于表示物理对象或物质的信号。
除非另外具体说明,否则从以下讨论中显而易见的是,应当理解的是,在整个说明书讨论中,使用诸如“处理”、“计算”、“估算”、“选择”、“排序”、“分级”、“计算”、“确定”、“生成”、“重新评估”、“分类”、“生成”、“生产”、“立体匹配”、“注册”、“检测”、“联合”、“叠加”、“获得”等术语,是指计算机或计算系统、或处理器或类似的电子计算设备的动作和/或处理,其将计算系统的寄存器和/或存储器内的表示为诸如电子的物理量的数据操纵或转换为类似的表示为计算系统的存储器、寄存器或其他这样的信息存储、传输或显示设备内的物理量的其他数据。术语“计算机”应该被广义地理解为涵盖具有数据处理能力的任何类型的电子设备,包括通过非限制性示例示出的个人计算机、服务器、计算系统、通信设备、处理器(例如数字信号处理器(DSP)、微控制器、现场可编程门阵列(FPGA)、专用集成电路(ASIC)等)和其他电子计算设备。
仅为了清楚起见,可以根据特定的编程语言、操作系统、浏览器、系统版本、单个产品等的术语来描述本发明。应当理解的是,该术语旨在通过示例清楚和简要地传达操作的基本原理,并且不将本发明的范围限制为任何特定的编程语言、操作系统、浏览器、系统版本或单个产品
应当理解的是,如果需要,包括程序和数据的本发明的软件件可以以包括CD-ROM、EPROM和EEPROM的ROM(只读存储器)形式来实施,或者可以存储于任何其他适合的典型非易失性计算机可读介质,诸如但不限于各种类型的盘、各种卡和RAM。如果需要,本文描述为软件的件可替代地可以使用常规技术全部或部分地以硬件实现。相反地,如果需要,本文描述为硬件的件可替代地可以使用常规技术全部或部分地以软件实现。
尤其包括在本发明的范围内的是携带计算机可读指令的电磁信号,用于以任何合适的顺序执行本文中示出和描述的任何方法的任何或所有步骤;机器可读指令,用于以任何合适的顺序执行本文中示出和描述的任何方法的任何或所有步骤;由机器可读的程序存储设备,有形地体现可由机器执行的指令程序,以便于以任何合适的顺序执行本文中示出和描述的任何方法的任何或所有步骤;包括计算机可用介质的计算机程序产品,所述计算机可用介质具有计算机可读程序代码,诸如本文中所呈现的可执行代码,和/或包括计算机可读程序代码,其用于以任何合适的顺序执行本文中示出和描述的任何方法的任何或所有步骤;当以任何合适的顺序执行时,由本文示出和描述的任何方法的任何或所有步骤带来的任何技术效果;任何合适的装置或设备或这些的合,被编程为以任何合适的顺序单独或合地执行本文示出和描述的任何方法的任何或所有步骤;每个电子设备包括处理器和协作输入设备和/或输出设备,并且可操作地以软件执行本文中示出和描述的任何步骤;信息存储设备或物理记录(诸如磁盘或硬盘驱动器)使得计算机或其他设备被配置为以任何合适的顺序执行本文中示出和描述的任何方法的任何或所有步骤;预先存储在例如存储器中或者诸如因特网之类的信息网络上的程序,在被下载之前或之后,其以任何合适的顺序体现本文中示出和描述的任何方法的任何或所有步骤,以及上传或下载这种程序的方法以及包括使用该程序的服务器和/或客户端的系统;以及以任何合适的顺序执行本文中示出和描述的任何方法的任何或所有步骤的硬件,其单独存在或与软件结合。本文所描述的任何计算机可读或机器可读介质旨在包括非易失性(non-transitory)计算机或机器可读介质。
本文所描述的任何计算或其他形式的分析可以通过合适的计算机化方法来执行。本文所描述的任何步骤可以是计算机实现的。这里示出和描述的本发明可以包括(a)使用计算机化方法来识别针对本文所描述的任何问题或任何目标的解决方案,解决方案可选地包括决策、动作、产品、服务或本文所描述的任何其他信息,这些信息以积极的方式影响本文所述的一个或多个问题;以及(b)输出解决方案。
本发明的范围不限于本文具体描述的结构和功能,并且还旨在包括具有产生结构或执行本文所述的功能的能力的设备,使得即使用户设备可能不会使用该能力,但是如果他们愿意,他们可以修改该设备以获得该结构或功能。
在各个不同实施例的上下文中描述的本发明的特征也可以合在单个实施例中来提供。
例如,系统实施例旨在包括相应的过程实施例。而且,每个系统实施例旨在包括仅包含这些功能的系统、计算机可读介质、装置等的全部功能的以服务器为中心的“视图”或以客户端为中心的“视图”或基于任何其他系统节点的“视图”,该视图仅包括在该服务器或客户端或节点上执行的那些功能。

Claims (15)

1.一种用于保护客户端的计算机化模块访问DRM代理的服务的方法,所述方法包括以下步骤:
-所述客户端向所述DRM代理发送获取令牌请求;
-由所述DRM代理实施以下步骤:
o接收所述获取令牌请求;
o运用函数以生成解密请求标识符RequestID和令牌值Token,并向所述客户端返回所述RequestID和所述Token;
o将包括与密钥RequestID相关联的令牌值Token的记录插入到记录在所述DRM代理的存储器中的令牌值的哈希表中,令牌值的所述哈希表以获取令牌请求标识符作为密钥;
-由所述客户端实施以下步骤:
o接收来自所述DRM代理的所述RequestID和所述Token;
o使用所述Token和私钥计算多媒体内容加密块的摘要;
o计算所述多媒体内容加密块的解密请求,所述解密请求包括所述RequestID、所述加密块和所述加密块的摘要;
o向所述DRM代理发送所述加密块的所述解密请求;
-以及由所述DRM代理实施以下步骤:
o接收所述解密请求;
o根据所述RequestID从所述哈希表中检索Token;
o使用公钥和所述Token处理所述摘要;
o检查经处理的摘要与所述加密块的至少一部分之间的匹配;
o仅在匹配的情况下:解密所述加密块并将经解密的块返回给所述客户端;
其中,接收、处理、计算、解密中的至少一个由处理器来执行。
2.根据权利要求1所述的方法,其中:
-所述获取令牌请求包括所述客户端的标识符ClientID;
-所述函数使用ClientID作为输入;
-所述哈希表的记录进一步包括与所述密钥RequestID相关联的ClientID;
-所述解密请求进一步包括所述客户端的标识符ClientID2;
-所述Token的检索与所述ClientID的检索被联合执行,并且只有在所述ClientID和所述ClientID2匹配的情况下才执行对所述摘要的后续处理和所述加密块的解密。
3.根据权利要求1所述的方法,其中,所述检查经处理的摘要与所述加密块的至少一部分之间的匹配包括在所述Token与所述加密块的至少一部分之间执行XOR操作。
4.根据权利要求1所述的方法,其中,在不匹配的情况下,终止所述客户端的应用程序。
5.根据权利要求1所述的方法,进一步包括以下步骤:在所述解密请求被处理之后,从所述哈希表中移除包括与所述密钥RequestID相关联的所述令牌值Token的记录。
6.根据权利要求1所述的方法,其中,根据所述DRM代理内部的互相排斥来保护所述哈希表的管理过程以及与所述客户端的通信过程,以防止所述客户端获得对所述哈希表的访问。
7.根据权利要求1所述的方法,进一步使用多个公钥作为授权客户端的白名单以支持多个客户端源。
8.一种用于保护客户端的计算机化模块访问DRM代理的服务的方法,所述方法包括以下步骤:
-接收来自所述客户端的获取令牌请求;
-运用函数以生成解密请求标识符RequestID和令牌值Token,并且向所述客户端返回所述RequestID和所述Token;
-将包括与密钥RequestID相关联的令牌值Token的记录插入到记录在所述DRM代理的存储器中的令牌值的哈希表中,令牌值的所述哈希表以获取令牌请求标识符作为密钥;
-接收多媒体内容加密块的解密请求,所述解密请求包括所述RequestID,所述加密块和所述加密块的摘要;
-根据所述RequestID从所述哈希表中检索Token;
-使用公钥和所述Token处理所述摘要;
-检查经处理的摘要与所述加密块的至少一部分之间的匹配;
-仅在匹配的情况下:解密所述加密块并将经解密的块返回给所述客户端;
其中,接收、处理、计算、解密中的至少一个由处理器来执行。
9.一种用于保护客户端访问DRM代理的服务的系统,所述系统包括:
-客户端算法模块,所述客户端算法模块用于从所述DRM代理接收RequestID和Token,使用所述Token和私钥计算多媒体内容加密块的摘要,计算所述多媒体内容加密块的解密请求,所述解密请求包括所述RequestID、所述加密块和所述加密块的摘要,并向所述DRM代理发送所述加密块的所述解密请求;
-获取令牌请求处理模块,所述获取令牌请求处理模块用于接收获取令牌请求,运用函数以生成解密请求标识符RequestID和令牌值Token,向所述客户端返回所述RequestID和所述Token,以及将包括与密钥RequestID相关联的令牌值Token的记录插入到以获取令牌请求标识符作为密钥的令牌值的哈希表中;
-解密请求处理模块,所述解密请求处理模块用于接收包括所述RequestID、所述加密块和所述加密块的摘要的所述多媒体内容加密块的解密请求,根据所述RequestID在所述哈希表中检索Token,使用公钥和所述Token对所述摘要进行处理,检查经处理的摘要与至少部分所述加密块之间的匹配,且仅在匹配的情况下,解密所述加密块并将经解密的块返回给所述客户端。
10.根据权利要求9所述的系统,其中:
-所述获取令牌请求包括所述客户端的标识符ClientID;
-所述函数使用ClientID作为输入;
-所述哈希表的记录进一步包括与所述密钥RequestID相关联的ClientID;
-所述解密请求进一步包括所述客户端的标识符ClientID2。
11.根据权利要求9所述的系统,其中,所述检查经处理的摘要与所述加密块的至少一部分之间的匹配包括在所述Token与所述加密块的至少一部分之间执行XOR操作。
12.根据权利要求9所述的系统,其中,在不匹配的情况下,终止所述客户端的应用程序。
13.根据权利要求9所述的系统,进一步包括一装置,所述装置用于根据所述DRM代理内部的互相排斥来保护所述哈希表的管理过程以及与所述客户端的通信过程,以防止所述客户端获得对所述哈希表的访问。
14.一种用于执行权利要求1所述的方法的解密请求方法,所述解密请求方法包括由所述客户端执行的以下步骤:
-向所述DRM代理发送获取令牌请求;
-从所述DRM代理接收RequestID和Token;
-使用所述Token和私钥计算多媒体内容加密块的摘要;
-计算所述多媒体内容加密块的解密请求,所述解密请求包括所述RequestID、所述加密块和所述加密块的摘要;
-向所述DRM代理发送所述加密块的所述解密请求;
其中,接收、处理、计算、解密中的至少一个由处理器来执行。
15.一种用于实施根据权利要求14所述的解密请求方法的客户端,所述客户端包括用于使用Token和私钥来计算多媒体内容加密块的摘要的签名模块。
CN201580085688.0A 2015-12-03 2015-12-03 保护客户端访问视频播放器的drm代理的服务的方法和系统 Active CN108431819B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IL2015/051177 WO2017093990A1 (en) 2015-12-03 2015-12-03 A method and system for securing a client's access to a drm agent's services for a video player

Publications (2)

Publication Number Publication Date
CN108431819A true CN108431819A (zh) 2018-08-21
CN108431819B CN108431819B (zh) 2021-06-08

Family

ID=55083449

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580085688.0A Active CN108431819B (zh) 2015-12-03 2015-12-03 保护客户端访问视频播放器的drm代理的服务的方法和系统

Country Status (6)

Country Link
US (1) US10846373B2 (zh)
EP (1) EP3384417B1 (zh)
CN (1) CN108431819B (zh)
ES (1) ES2802426T3 (zh)
PL (1) PL3384417T3 (zh)
WO (1) WO2017093990A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112166586A (zh) * 2019-04-16 2021-01-01 谷歌有限责任公司 自认证域特定浏览器标识符
CN114600421A (zh) * 2019-09-03 2022-06-07 谷歌有限责任公司 用于安全标识检索的系统和方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110113150B (zh) * 2019-04-08 2021-09-17 淮阴工学院 基于无证书环境的可否认认证的加密方法和系统
US11516001B2 (en) * 2019-05-23 2022-11-29 Mastercard International Incorporated Method and system for generalized provenance solution for blockchain supply chain applications
CN113141329B (zh) * 2020-01-16 2023-04-18 中移(上海)信息通信科技有限公司 大数据挖掘方法、装置、设备和存储介质
US11985237B2 (en) * 2021-07-21 2024-05-14 Intertrust Technologies Corporation Key identifier derivation and management systems and methods

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101059828A (zh) * 2006-04-20 2007-10-24 华为技术有限公司 一种数字版权保护方法及系统
CN101131718A (zh) * 2006-08-22 2008-02-27 华为技术有限公司 一种受保护内容完整性验证的方法、设备及系统
EP1942430A1 (en) * 2007-01-08 2008-07-09 Apple Inc. Token Passing Technique for Media Playback Devices
US20090016514A1 (en) * 2007-07-12 2009-01-15 Thomas Ray Miller Dynamic configuration of conference calls
CN101447842A (zh) * 2008-09-27 2009-06-03 百视通网络电视技术发展有限责任公司 采用2级架构的分布式数字版权管理系统
US20100211793A1 (en) * 2007-09-11 2010-08-19 Lg Electronics Inc. Secure signing method, secure authentication method and iptv system
WO2011041916A1 (en) * 2009-10-09 2011-04-14 Quickplay Media Inc. Digital rights management in a mobile environment
CN102799807A (zh) * 2012-06-15 2012-11-28 华为终端有限公司 数字版权管理内容的播放方法、用户设备和域管理器
US20130173923A1 (en) * 2011-12-30 2013-07-04 Peking University Method and system for digital content security cooperation
US9027143B1 (en) * 2009-08-26 2015-05-05 Adobe Systems Incorporated System and method for multipronged authentication

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7383205B1 (en) * 1999-03-27 2008-06-03 Microsoft Corporation Structure of a digital content package
JP5005195B2 (ja) 2005-07-13 2012-08-22 東京エレクトロン株式会社 プローブカード製造方法
FR2895545B1 (fr) 2005-12-23 2008-05-30 Trusted Logic Sa Procede d'authentification d'applications d'un systeme informatique

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101059828A (zh) * 2006-04-20 2007-10-24 华为技术有限公司 一种数字版权保护方法及系统
CN101131718A (zh) * 2006-08-22 2008-02-27 华为技术有限公司 一种受保护内容完整性验证的方法、设备及系统
EP1942430A1 (en) * 2007-01-08 2008-07-09 Apple Inc. Token Passing Technique for Media Playback Devices
US20090016514A1 (en) * 2007-07-12 2009-01-15 Thomas Ray Miller Dynamic configuration of conference calls
US20100211793A1 (en) * 2007-09-11 2010-08-19 Lg Electronics Inc. Secure signing method, secure authentication method and iptv system
CN101447842A (zh) * 2008-09-27 2009-06-03 百视通网络电视技术发展有限责任公司 采用2级架构的分布式数字版权管理系统
US9027143B1 (en) * 2009-08-26 2015-05-05 Adobe Systems Incorporated System and method for multipronged authentication
WO2011041916A1 (en) * 2009-10-09 2011-04-14 Quickplay Media Inc. Digital rights management in a mobile environment
US20130173923A1 (en) * 2011-12-30 2013-07-04 Peking University Method and system for digital content security cooperation
CN102799807A (zh) * 2012-06-15 2012-11-28 华为终端有限公司 数字版权管理内容的播放方法、用户设备和域管理器

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112166586A (zh) * 2019-04-16 2021-01-01 谷歌有限责任公司 自认证域特定浏览器标识符
CN112166586B (zh) * 2019-04-16 2023-04-18 谷歌有限责任公司 自认证域特定浏览器标识符
CN114600421A (zh) * 2019-09-03 2022-06-07 谷歌有限责任公司 用于安全标识检索的系统和方法

Also Published As

Publication number Publication date
CN108431819B (zh) 2021-06-08
ES2802426T3 (es) 2021-01-19
WO2017093990A1 (en) 2017-06-08
EP3384417A1 (en) 2018-10-10
US20180365389A1 (en) 2018-12-20
EP3384417B1 (en) 2020-04-29
PL3384417T3 (pl) 2020-11-02
US10846373B2 (en) 2020-11-24

Similar Documents

Publication Publication Date Title
KR101999188B1 (ko) 비밀 공유를 위한 타원 곡선 암호를 사용하는 개인용 장치 보안
US10284372B2 (en) Method and system for secure management of computer applications
CN108431819A (zh) 保护客户端访问视频播放器的drm代理的服务的方法和系统
US8712041B2 (en) Content protection apparatus and content encryption and decryption apparatus using white-box encryption table
CN110324143A (zh) 数据传输方法、电子设备及存储介质
US8369521B2 (en) Smart card based encryption key and password generation and management
EP3356988A1 (en) Method and system for verifiable searchable symmetric encryption
CN107612683B (zh) 一种加解密方法、装置、系统、设备和存储介质
US10608813B1 (en) Layered encryption for long-lived data
CN105590040A (zh) 用于加密数字内容的数字权限管理的方法和系统
JP2014119486A (ja) 秘匿検索処理システム、秘匿検索処理方法、および秘匿検索処理プログラム
CN107040520B (zh) 一种云计算数据共享系统及方法
US9252944B2 (en) Key wrapping for common cryptographic architecture (CCA) key token
US10476663B1 (en) Layered encryption of short-lived data
JP6849862B2 (ja) パスワード認証のための準同型暗号
US9641328B1 (en) Generation of public-private key pairs
JP2013175179A (ja) 少なくとも1つの暗号化された命令を備えるソフトウェアアプリケーションの協調実行のためのシステム、デバイスおよび方法
JP2017524306A (ja) 暗号化操作における悪意のある変更に対する保護
US11126992B2 (en) Method for facilitating transactions, computer program product and mobile device
CN114741704A (zh) 一种基于婚恋交友的隐私保护方法、装置、设备及介质
EP3455763B1 (en) Digital rights management for anonymous digital content sharing
US11356254B1 (en) Encryption using indexed data from large data pads
CN107278357B (zh) 密码系统和方法
US9607159B2 (en) Intelligent key selection and generation
CN109086063A (zh) 软件更新方法、文件加密方法、装置及存储介质

Legal Events

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