CN112189197A - 用户保护的许可证 - Google Patents
用户保护的许可证 Download PDFInfo
- Publication number
- CN112189197A CN112189197A CN201980034390.5A CN201980034390A CN112189197A CN 112189197 A CN112189197 A CN 112189197A CN 201980034390 A CN201980034390 A CN 201980034390A CN 112189197 A CN112189197 A CN 112189197A
- Authority
- CN
- China
- Prior art keywords
- usage rights
- usage
- encrypted
- license
- user
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 36
- 238000004590 computer program Methods 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 4
- 239000003795 chemical substances by application Substances 0.000 description 48
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241000699670 Mus sp. Species 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/105—Arrangements for software license management or administration, e.g. for managing licenses at corporate level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
- H04L9/3239—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
- G06Q2220/10—Usage protection of distributed data files
- G06Q2220/18—Licensing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Power Engineering (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
根据由用于待耗用的内容的许可证中声明的使用权所定义的条件来分发和执行该许可证的方法,包括:使用同态加密用密钥对该使用权进行加密,并将加密的使用权发送给代理;从代理接收通过用一次性随机数对该加密的使用权进行同态运算而生成的修改的加密的使用权;以及对修改的加密的使用权进行解密,并将解密后的修改的使用权发送回代理,其中,通过进行与用该一次性随机数进行的该同态运算相反的运算,从该解密后的修改的使用权中提取使用权。
Description
技术领域
本公开涉及数字权限管理(DRM)许可证,并且更具体地,涉及分发执行DRM许可证。
背景技术
DRM许可证目前由许可证服务器发布,许可证服务器从客户管理服务或权限锁柜(locker)接收DRM许可证的授权和使用权。这些许可证绑定到给定的设备或设备集。DRM或有条件接收系统(CAS)可以在被称为许可证或授权管理消息(EMM)的数据结构中携带与一段内容和用户相关联的使用权。此许可证受到保护(并受到限制),因此只有一个给定设备或一组已标识的设备可以利用该数据结构。通过将对于目标设备而言是唯一的许可证进行加密来执行此限制。因此,使用权与持有某些秘密的给定的一组硬件设备的所有权绑定。许可证通常由许可证服务器生成。
然而,上述设置具有若干缺点。例如,使用此设置,用户由用户所拥有的设备定义,而不是由用户本人(persona)来定义。如果用户获得了新设备,则用户必须将新设备注册到许可证服务器(或在某些情况下注册到权限锁柜),许可证服务器(或在某些情况下注册到权限锁柜)将发布专属于该新设备的一组新的许可证。
为了解决上述设置的缺点,已经提出了另一种设置,在该另一种设置中使用区块链来持有用户的所有许可证。这种设置的一个缺点是使用权不匿名。也就是说,由于区块链可能是公开的,因此攻击者可能会因为使用权是明文而发现用户购买的权利,或者如果使用权经过加密则攻击者可能通过在已知的区块链中寻找类似的许可证而发现用户购买的权利。
发明内容
本公开提供了一种用于将许可证绑定到其被许可方而不是设备并同时仍能够保护许可证的方法。
在一种实施方式中,公开了一种根据由用于待耗用(consume)的内容的许可证中声明的使用权所定义的条件来分发和执行许可证的方法。该方法包括:使用同态加密用密钥对使用权进行加密,并将加密的使用权发送给代理;从代理接收通过用一次性随机数(nonce)对加密的使用权进行同态运算而生成的修改的加密的使用权;和对修改的加密的使用权进行解密,并将解密后的修改的使用权发送回代理,其中,通过进行与用该一次性随机数进行的同态运算相反的运算,从解密后的修改的使用权中提取使用权。
在一种实施方式中,该方法还包括:验证所提取的使用权与许可证中包括的使用权相同。在一种实施方式中,该方法还包括:在进行验证时,根据使用权接收待耗用的内容。在一种实施方式中,内容由安装在用户拥有的移动设备上的应用程序接收。在一种实施方式中,密钥是对用户独一的私有密钥。在一种实施方式中,密钥由用户自行生成。在一种实施方式中,同态加密使用高级加密标准计数器(AES-CTR)模式和异或(XOR)作为同态运算。
在另一种实施方式中,公开了一种根据由用于待耗用的内容的许可证中声明的使用权所定义的条件来分发和执行许可证的方法。该方法包括:从用户接收加密的使用权,该加密的使用权使用同态加密用密钥进行加密;用一次性随机数对加密的使用权进行同态运算,以生成修改的加密的使用权并将修改的加密的使用权发送给用户;从用户接收解密后的修改的使用权,该解密后的修改的使用权使用密钥进行解密;和通过进行与用一次性随机数进行的同态运算相反的运算,从解密后的修改的使用权中提取使用权。
在一种实施方式中,该方法还包括验证所提取的使用权与许可证中包括的使用权相同。在一种实施方式中,许可证包括加密的使用权、哈希使用权以及注册机构的数字签名。在一种实施方式中,该方法还包括通过检查注册机构的数字签名的有效性来验证许可证的有效性。
在又一实施方式中,公开了一种移动设备,包括根据由用于待耗用的内容的许可证中声明的使用权所定义的条件来执行许可证的应用程序。该移动设备包括:与代理耦接的第一接口;和第二接口,其与注册机构耦接并被配置为接收由注册机构生成的内容的使用权,其中,应用程序使用同态加密用密钥对使用权进行加密,并通过第一接口将加密的使用权发送给代理;其中,代理接收加密的使用权并用一次性随机数对加密的使用权进行同态运算,并通过第一接口将修改的加密的使用权发送回应用程序;其中,应用程序对修改的加密的使用权进行解密,并将解密后的修改的使用权发送回代理以通过进行与用该一次性随机数进行的同态运算相反的运算来验证用户和使用权的有效性。
在一种实施方式中,通过以下方式验证使用权的有效性:从解密后的修改的使用权中提取使用权;和验证所提取的使用权与许可证中包括的使用权相同。在一种实施方式中,当代理验证了使用权的有效性时,应用程序根据使用权通过第三接口接收待耗用的内容。在一种实施方式中,许可证被存储在区块链上。
在又一实施方式中,公开了一种非暂时性计算机可读存储介质,其存储计算机程序,以根据由用于待耗用的内容的许可证中声明的使用权所定义的条件来执行许可证。该计算机程序包括使计算机进行以下操作的可执行指令:使用同态加密用密钥对使用权进行加密,并将加密的使用权发送给代理;从代理接收通过用一次性随机数对加密的使用权进行同态运算而生成的修改的加密的使用权;和对修改的加密的使用权进行解密,并将解密后的修改的使用权发送回代理,其中,通过进行与用一次性随机数进行的同态运算相反的运算,从解密后的修改的使用权中提取使用权。
在一种实施方式中,非暂时性计算机可读存储介质还包括使计算机进行以下操作的可执行指令:验证所提取的使用权与许可证中包括的使用权相同。在一种实施方式中,非暂时性计算机可读存储介质还包括使计算机进行以下操作的可执行指令:在进行验证后,根据使用权接收待耗用的内容。在一种实施方式中,内容由安装在用户拥有的移动设备上的应用程序接收。在一种实施方式中,同态加密使用高级加密标准计数器(AES-CTR)模式和异或(XOR)作为同态运算。
其他特征和优点在通过举例说明本公开的各个方面的本说明书中将是明显的。
附图说明
关于本公开的结构和操作的细节,可以通过研究附图来部分地搜集,其中,相同的附图标记指代相同的部件,并且其中:
图1A是根据本公开的一种实施方式的用于分发和执行针对内容(例如,媒体)的许可证的系统的框图;
图1B是根据本公开的一种实施方式的用于分发和执行针对内容(例如,媒体)的许可证的过程的流程图;
图2是根据本公开的一种实施方式的由注册机构生成的许可证的框图;
图3是根据本公开的另一实施方式的由注册机构生成的许可证的框图;
图4A是示出根据本公开的一种实施方式的用于由代理生成混淆的加密的使用权的过程的流程图;
图4B是示出根据本公开的一种实施方式的用于由用户接收混淆的加密的使用权并生成混淆的解密的使用权的过程的流程图;和
图5是示出根据本公开的一种实施方式的用于接收使用权并生成解扰的内容的过程的流程图。
具体实施方式
如上所述,将DRM许可证绑定到给定设备或设备集存在缺陷。本公开的特定实施方式提供了将许可证绑定到其被许可方而不是绑定到设备,并同时仍能够保护许可证。DRM代理或授权机构不与用户共享任何秘密,但仍对用户进行身份验证,并确保许可证“属于”该用户。该解决方案不会公开许可内容的系列集(portfolio),因此可为区块链增加隐私性。
在阅读了这些描述之后,如何在各种实施方式和应用中实施本公开将变得明显。尽管本文将描述本公开的各种实施方式,但是应当理解,这些实施方式仅以示例而非限制的方式给出。这样,各种实施方式的这种详细描述不应被解释为限制本公开的范围或广度。
图1A是根据本公开的一种实施方式的用于分发和执行针对内容(例如,媒体)的许可证的系统100的框图。在图1A所图示的实施方式中,许可证分发系统100包括DRM代理110、注册机构120、内容提供方130和用户140。在一种实施方式中,术语“用户”可以指代应用程序(例如,用户的移动设备上的应用程序)、用户凭证或用户本人。
在一种实施方式中,用户140从内容提供方130购买内容,并通过DRM代理110播放该内容。用户140具有自己生成的用户密钥142,该用户密钥可以是私有的对称密钥。在一种实施方式中,用户是在诸如智能卡之类的可移除设备上或在云中执行的应用程序。在另一种实施方式中,用户是在移动设备上执行的应用程序。内容提供方130被配置为根据许可证中声明的使用权所定义的条件,向用户140提供待耗用的内容。在一种实施方式中,耗用内容包括用户在移动设备上播放内容。注册机构120被配置为生成该内容的许可证。许可证携带针对给定用户140的一组使用权和使用权的哈希值。DRM代理110接收许可证,并验证该许可证是否有效以及该使用权是否得到适当履行。如果是这种情况,则DRM代理110解密该内容并将解密后的内容提供给用户140。
在一种实施方式中,用户140从注册机构120接收使用权,并使用对用户来说独一的用户密钥142加密该使用权。在一种实施方式中,使用同态加密对使用权进行加密,该同态加密允许对加密文本执行计算,该加密文本与解密时对明文(plaintext)执行运算的结果相匹配。因此,如果加密E与运算符∫是同态的,则给定两个消息m和m'时,D(E(m)∫m')=m∫m',其中D表示与加密E对应的解密。
在一种实施方式中,DRM代理110用一次性随机数对加密的使用权进行同态运算(被称为“混淆”),该一次性随机数是在密码通信中仅使用一次的任意随机数或伪随机数。因此,同态运算必须与所选的同态加密兼容。用户140接收并解密修改的(或混淆的)加密的使用权,并将结果返回给DRM代理。DRM代理110验证返回的运算是否正确。在这种情况下,仅当用户140具有最初用于对使用权进行加密的正确的解密密钥时,用户140才能返回正确的信息。
在一种实施方式中,用户140被实施为移动设备上的应用程序,该移动设备包括:与DRM代理110相接口的第一接口144;与注册机构120相接口的第二接口146;以及与内容提供方130相接口的第三接口148。在一种实施方式中,第二接口146被配置为接收由注册机构120生成的使用权,并将该使用权发送给应用程序,应用程序使用同态加密用密钥对该使用权进行加密。应用程序通过第一接口144将加密的使用权发送给代理110。代理110接收加密的使用权并用一次性随机数对加密的使用权进行运算,以生成混淆的加密的使用权,并通过第一接口144将混淆的加密的使用权发送回应用程序。然后,应用程序对该混淆的加密的使用权进行解密,并将混淆的解密的使用权发回给代理以验证该用户和该使用权的有效性。在一种实施方式中,一旦代理110验证了该使用权和该用户为有效的,就通过第一接口144从代理110接收解密的内容,使得该内容可以被应用程序耗用。在另一种实施方式中,第三接口被配置为当代理110验证了使用权和用户为有效的时,就从内容提供方130接收解密的内容,使得该内容可以被应用程序耗用。
图1B是根据本公开的一种实施方式的用于分发和执行针对内容(例如,媒体)的许可证的过程150的流程图。在图1B所图示的实施方式中,一旦用户140从内容提供方130购买了内容,则用户140在步骤152从内容提供方130接收内容,该内容根据许可证中声明的使用权所定义的条件来被耗用。在步骤154,内容提供方130还通知注册机构120生成针对该内容的许可证。许可证携带了针对给定用户140的一组使用权。然后在步骤160,将使用权从注册机构120发送给用户140,并且用户140使用对用户来说独一的用户密钥142来加密该使用权,并在步骤162将加密的使用权发送给DRM代理110。在一种实施方式中,使用同态加密对使用权进行加密,该同态加密允许对加密文本执行计算,该加密文本与解密时对明文进行的运算的结果相匹配。因此,如果加密E与运算符∫同态,则给定两个消息m和m'时,D(E(m)∫m')=m∫m',其中D表示与加密E对应的解密。
在一种实施方式中,DRM代理110用一次性随机数对加密的使用权进行运算,并且DRM代理110将结果发送回用户140。在步骤170,用户140接收并解密该修改的加密的使用权,并且将结果返回给DRM代理110。DRM代理110在步骤180验证返回的运算是否正确。在这种情况下,仅当用户140具有与用于最初对使用权进行加密的用户密钥142对应的正确的解密密钥时,用户140才能返回正确的信息。因此,如果在步骤180确定返回的运算结果正确,则可以在步骤184根据使用权播放内容。否则,如果在步骤180确定返回的运算结果不正确,则在步骤182,不能播放该内容。
在一种实施方式中,当用户140从内容提供方130购买内容时,以下操作由内容提供方130和注册机构120进行。内容提供方130定义使用权,包括内容的项目的标识符和内容的使用的许可条件。内容提供方130将到用户140的链接与使用权一起发送给注册机构120。注册机构120请求用户140对使用权进行加密。用户140使用其用户密钥142对使用权进行加密,并将加密的使用权返回给注册机构120。在一种实施方式中,使用同态加密来加密使用权。注册机构120计算使用权的哈希值,创建哈希使用权。在一种实施方式中,该哈希算法是以base64编码的SHA-512。
在一种实施方式中,使用权可以被如下表示为:
使用权={内容ID,许可权限},其中,
内容ID使用娱乐标识符注册表(EIDR),
许可权限是一个数据结构,列出了许可的音频语言的列表和许可的字幕的列表。
在一种实施方式中,DRM代理110使用唯一的128位DRM_KEY来对加扰的密钥CW进行加密。在一种实施方式中,使用了高级加密标准(AES)进行加密。因此,EncryptedCW=AES{DRM_KEY}(CW)。此外,内容可以被如下表示:
内容={内容ID,加密的CW,加扰的本体},其中,
内容ID是EIDR代码,
加密的CW是AES加密的CW,
加扰的本体(essence)是使用CW进行AES加密的本体(包括所有可用的音频轨道和字幕轨道)。
在其他实施方式中,内容提供方130使用若干DRM技术,在这种情况下,每个支持的DRM代理由DRM-ID标识。在这种情况下,内容还可以包括多对DRM-ID和对应的加密的CW的列表。此外,每个加密的CW是由相应的DRM代理的私有DRM_KEY加密的CW。
在一种实施方式中,当用户140从内容提供方130购买内容时,内容提供方130在EIDR全局数据库中注册所购买的内容版本,并接收内容ID。内容提供方130还生成作为CW的随机的128位数字。此外,内容提供方130通过用相应的DRM_KEY加密该CW来计算相应的加密的CW。内容提供方130使用CW对明文本体进行加扰以生成加扰的本体。在一种实施方式中,该加扰处理在CTR模式下使用AES。内容提供方130将所有这些信息打包到内容中。然后,由于内容具有自我保护性,因此可以被自由地分发。
图2是根据本公开的一种实施方式的由注册机构生成的许可证200的框图。在图2所图示的实施方式中,许可证200包括加密的使用权210、哈希使用权220和签名230。在一种实施方式中,签名230是加密的使用权210和哈希使用权220的注册机构生成的数字签名。在一种实施方式中,注册机构120随后将该许可证200提供给用户。在另一种实施方式中,许可证存储在区块链上。
在一种实施方式中,在用户140播放内容的项目之前,DRM代理110接收并验证关于所提供的许可证200的三个条件。首先,DRM代理110通过检查签名230的有效性来验证已知的合法机构发布了该许可证以及它是由注册机构120签名的。其次,DRM代理110进行检查以确保许可证的所有者(即用户)能够通过进行以下操作来解密许可证的使用权:(1)生成一次性随机数(Agent_nonce);(2)计算ObfuscatedEncryptedUsageRights=f(Agent_nonce,EncrytedUsageRights);(3)发送ObfuscatedEncryptedUsageRights给用户140以使用用户密钥142对其进行解密;(4)接收从用户140返回的结果ObfuscatedDecryptedUsageRights;(5)计算DecryptedUsageRights=f-1(Agent_nonce,ObfuscatedDecryptedUsageRights);以及(6)计算DecryptedUsageRights的哈希值以验证它等于哈希使用权220。关于(3),由于加密对于运算f是同态的,因此结果应为原始的使用权。此外,由于使用一次性随机数来保护传递的DecryptedUsageRights,因此,存在用户140拥有用户密钥142的证明。这也确保攻击者无法创建字典攻击。第三,DRM代理110检查使用权是否有效,即,是否满足条件。因此,一旦满足上述三个条件,则DRM代理110继续解密内容。
在一个特定实施方式中,同态加密使用高级加密标准计数器(AES-CTR)模式用于XOR运算,记为⊕。因此,该运算被描述如下:
D{K,IV}(E{K,IV}(m)⊕R)=m⊕R,其中,
E{K,IV}表示使用密钥K和初始计数为0的初始化向量(IV)或初始一次性随机数在CTR模式下的AES加密,
D{K,IV}表示相应的解密。
AES-CTR模式的使用意味着可以将XOR函数应用于加密的消息。
返回参考图1A,在一种实施方式中,用户密钥142是对用户独一的128位随机数,并且由用户140生成。用户密钥142仅用户知道并且是保密的。在一个特定的实施方式中,注册机构120使用李维斯特-萨莫尔-阿德曼(Rivest-Shamir-Adleman,RSA)4096公私密钥对(Kpub_authority和Kpri_authority)来生成签名。密钥Kpub_authority可用于所有用户和DRM代理。在一个特定的实施方式中,注册机构120(向用户140)送达RSA 2048公私密钥对(Kpub_user和Kpri_user)以及由注册机构用Kpri_authority签名的相应的X509证书。
图3是根据本公开的另一实施方式的由注册机构生成的许可证300的框图。在图3所图示的实施方式中,许可证300包括加密的使用权310、哈希使用权320、初始化矢量(IV)330和签名340。在一种实施方式中,签名340是注册机构120对加密的使用权310、哈希使用权320和IV 330的数字签名。在一种实施方式中,注册机构120然后将许可证200提供给用户。在另一种实施方式中,许可证存储在区块链上。
在另一实施方式中,当用户从内容提供方购买内容的项目时,由图1A所示的实体执行以下操作。内容提供方130定义使用权(UsageRights)。使用权列出了用户140获取的所有音频轨道和字幕。注册机构120计算使用权的哈希值以创建HashUsageRights。在一种实施方式中,HashUsageRights=SHA-512(UsageRights)。内容提供方130将该使用权与到用户140的链接和用户的公共证书Kpub_user一起传送给注册机构120。注册机构120基于送达给用户140的公私密钥对(Kpub_user和Kpri_user),使用典型的挑战响应来验证用户140的身份。注册机构120通过将使用权安全地发送给用户140来请求用户140加密该使用权。用户140通过生成128位的一次性随机数IV而以用户密钥142加密该使用权。用户140如EncryptedUsageRights=E{UserKey,IV}(UsageRights)地来通过以用户密钥和IV 330加密UsageRights来计算EncryptedUsageRights。然后,用户140将EncryptedUsageRights和IV返回给注册机构120,注册机构120构建包括上述元素的许可证。
图4A是示出根据本公开的一种实施方式的用于由代理生成混淆的加密的使用权的过程400的流程图。因此,在图4A所图示的实施方式中,在用户140播放内容的项目之前,DRM代理110在步骤410接收许可证300,并在步骤420通过使用存储的Kpub_authority检查签名340的有效性来验证许可证300的有效性。如果签名的有效性不能在步骤420被验证,则过程400在步骤422处停止。否则,如果签名的有效性在步骤420被验证,则DRM代理110接下来在步骤430生成与EncryptedUsageRights(即,用户使用自己的密钥加密的使用权)的长度一致的一次性随机数(即,Agent_nonce),并在步骤440计算ObfuscatedEncryptedUsageRights=EncryptedUsageRights⊕Agent_nonce。在步骤450将该结果(即,ObfuscatedEncryptedUsageRights)与IV 330一起发送给用户140。
图4B是示出了根据本公开的一种实施方式的用于由用户接收混淆的加密的使用权并生成混淆的解密的使用权的过程460的流程图。在图4B所图示的实施方式中,在步骤470从代理接收混淆的加密的使用权。然后在步骤480通过使用用户密钥142和IV 330对混淆的加密的使用权进行解密,来生成混淆的解密的使用权。ObfuscatedDecryptedUsageRights=D{UserKey,IV}(ObfuscatedEncryptedUsageRights)。在步骤490,将结果发送回代理。
图5是说明根据本发明的一个实施方式的用于接收混淆的解密的使用权并生成解扰后的内容的过程500的流程图。因此,在图5的所图示的实施方式中,代理110在步骤510接收ObfuscatedDecryptedUsageRights,并在步骤520计算 在步骤530,DRM代理110还计算DecryptedUsageRights的哈希值,并在步骤540验证其等于HashUsageRights(即,最初从注册机构120接收到的许可证中的使用权的哈希值;SHA_512(DecryptedUsageRights)==HashUsageRights)。如果在步骤540的测试结果为肯定的,则DRM代理110通过验证DecryptedUsageRights中的内容ID是否与该内容的内容ID相匹配来验证该DecryptedUsageRights是否有效。如果有效,则在步骤560,DRM代理110用其私有密钥DRM_KEY对加密的CW进行解密并取回明文的CW。然后在步骤570,DRM代理110用CW对内容进行解扰,并提供在DecryptedUsageRights中列出的语言和字幕。否则,如果步骤540和/或550中的测试结果为否定的,则过程500停止。
提供本文所公开的实施方式的描述以使本领域的任何技术人员能够制造或使用本公开。对这些实施方式的多种修改对于本领域技术人员而言将是显而易见的,并且在不脱离本公开的精神或范围的情况下,本文中定义的原理可以应用于其他实施方式。因此,本公开内容不旨在限于本文所示的实施方式,而是应被赋予与本文公开的原理和新颖性特征一致的最宽范围。
本公开的各种实施方式以电子硬件、计算机软件或这些技术的组合来实现。一些实施方式包括由一个或多个计算设备执行的一个或多个计算机程序。通常,计算设备包括一个或多个处理器,一个或多个数据存储组件(例如,易失性或非易失性存储模块以及永久性的光和磁存储设备,例如硬盘和软盘驱动器、CD-ROM驱动器和磁带驱动器),一个或多个输入设备(例如游戏控制器、鼠标和键盘)以及一个或多个输出设备(例如显示设备)。
计算机程序包括可执行代码,该可执行代码通常存储在永久性存储介质中,然后在运行时复制到存储器中。至少一个处理器通过以预定顺序从存储器中取回程序指令来执行代码。当执行程序代码时,计算机从输入和/或存储设备接收数据,对数据进行操作,然后将结果数据传送到输出和/或存储设备。
本领域技术人员将理解,本文描述的各种说明性模块和方法步骤可以被实施为电子硬件、软件、固件或前述的组合。为了清楚地说明硬件和软件的这种互换性,在本文中总体上根据其功能描述了各种说明性模块和方法步骤。将这种功能性实施为硬件还是软件取决于特定的应用程序和施加在整个系统上的设计约束。技术人员可以针对每个特定应用程序以各种方式来实现所描述的功能,但是这种实施决定不应被解释为导致脱离本公开的范围。此外,模块或步骤中的功能分组是为了便于描述。可以在不脱离本公开的情况下将特定功能从一个模块或步骤移动到另一模块或步骤。
每个上述示例的所有特征在本公开的特定实施方式中不是必需的。此外,应理解,本文提出的描述和附图代表本公开广泛预期的主题。还应理解,本公开的范围完全涵盖对于本领域技术人员而言将变得显而易见的其他实施方式,并且本公开的范围因此仅由所附权利要求书来限定。
Claims (20)
1.一种根据由用于待耗用的内容的许可证中声明的使用权所定义的条件来分发和执行所述许可证的方法,该方法包括:
使用同态加密用密钥对所述使用权进行加密,并将加密的使用权发送给代理;
从所述代理接收通过用一次性随机数对所述加密的使用权进行同态运算而生成的修改的加密的使用权;和
对所述修改的加密的使用权进行解密,并将解密后的修改的使用权发送回所述代理,
其中,通过进行与用所述一次性随机数进行的所述同态运算相反的运算,从所述解密后的修改的使用权中提取使用权。
2.根据权利要求1所述的方法,还包括:
验证所提取的使用权与所述许可证中包括的使用权相同。
3.根据权利要求2所述的方法,还包括:
在进行所述验证时,根据使用权接收所述待耗用的内容。
4.根据权利要求3所述的方法,其中,所述内容由安装在用户拥有的移动设备上的应用程序接收。
5.根据权利要求1所述的方法,其中,所述密钥是对用户独一的私有密钥。
6.根据权利要求1所述的方法,其中,所述密钥由用户自行生成。
7.根据权利要求1所述的方法,其中所述同态加密使用高级加密标准计数器AES-CTR模式和异或XOR作为所述同态运算。
8.一种根据由用于待耗用的内容的许可证中声明的使用权所定义的条件来分发和执行所述许可证的方法,该方法包括:
从用户接收加密的使用权,所述加密的使用权使用同态加密用密钥进行加密;
用一次性随机数对所述加密的使用权进行同态运算,以生成修改的加密的使用权并将所述修改的加密的使用权发送给所述用户;
从所述用户接收解密后的修改的使用权,所述解密后的修改的使用权使用所述密钥进行解密;和
通过进行与用所述一次性随机数进行的所述同态运算相反的运算,从所述解密后的修改的使用权中提取使用权。
9.根据权利要求8所述的方法,还包括:
验证所提取的使用权与所述许可证中包括的使用权相同。
10.根据权利要求8所述的方法,其中,所述许可证包括所述加密的使用权、哈希使用权以及注册机构的数字签名。
11.根据权利要求10所述的方法,还包括:
通过检查所述注册机构的数字签名的有效性来验证所述许可证的有效性。
12.一种移动设备,包括根据由用于待耗用的内容的许可证中声明的使用权所定义的条件来执行所述许可证的应用程序,该移动设备包括:
第一接口,与代理耦接;和
第二接口,与注册机构耦接并被配置为接收由所述注册机构生成的所述内容的使用权,
其中,所述应用程序使用同态加密用密钥对所述使用权进行加密,并通过所述第一接口将加密的使用权发送给所述代理,
其中,所述代理接收所述加密的使用权并用一次性随机数对所述加密的使用权进行同态运算,并通过所述第一接口将修改的加密的使用权发送回所述应用程序,
其中,所述应用程序对所述修改的加密的使用权进行解密,并将解密后的修改的使用权发送回所述代理以通过进行与用所述一次性随机数进行的所述同态运算相反的运算来验证用户和使用权的有效性。
13.根据权利要求12所述的移动设备,其中,所述使用权的有效性通过以下方式验证:
从所述解密后的修改的使用权中提取使用权;和
验证所提取的使用权与所述许可证中包括的使用权相同。
14.根据权利要求12所述的移动设备,其中,当所述代理验证了所述使用权的有效性时,所述应用程序根据所述使用权通过第三接口接收所述待耗用的内容。
15.根据权利要求12所述的移动设备,其中,所述许可证被存储在区块链上。
16.一种非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质存储计算机程序,以根据由用于待耗用的内容的许可证中声明的使用权所定义的条件来执行所述许可证,所述计算机程序包括使计算机进行以下操作的可执行指令:
使用同态加密用密钥对所述使用权进行加密,并将加密的使用权发送给代理;
从所述代理接收通过用一次性随机数对所述加密的使用权进行同态运算而生成的修改的加密的使用权;和
对所述修改的加密的使用权进行解密,并将解密后的修改的使用权发送回所述代理,
其中,通过进行与用所述一次性随机数进行的所述同态运算相反的运算,从所述解密后的修改的使用权中提取使用权。
17.如权利要求16所述的非暂时性计算机可读存储介质,还包括使所述计算机进行以下操作的可执行指令:
验证所提取的使用权与所述许可证中包括的使用权相同。
18.根据权利要求17所述的非暂时性计算机可读存储介质,还包括使所述计算机进行以下操作的可执行指令:
在进行所述验证后,根据使用权接收所述待耗用的内容。
19.根据权利要求18所述的非暂时性计算机可读存储介质,其中,所述内容由安装在用户拥有的移动设备上的应用程序接收。
20.根据权利要求16所述的非暂时性计算机可读存储介质,其中,所述同态加密使用高级加密标准计数器AES-CTR模式和异或XOR作为所述同态运算。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/986,641 | 2018-05-22 | ||
US15/986,641 US20190362054A1 (en) | 2018-05-22 | 2018-05-22 | User-protected license |
PCT/US2019/033264 WO2019226622A1 (en) | 2018-05-22 | 2019-05-21 | User-protected license |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112189197A true CN112189197A (zh) | 2021-01-05 |
Family
ID=68614159
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980034390.5A Pending CN112189197A (zh) | 2018-05-22 | 2019-05-21 | 用户保护的许可证 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20190362054A1 (zh) |
EP (1) | EP3782059A4 (zh) |
JP (1) | JP2021525030A (zh) |
KR (1) | KR102560295B1 (zh) |
CN (1) | CN112189197A (zh) |
WO (1) | WO2019226622A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108933650B (zh) * | 2018-06-28 | 2020-02-14 | 阿里巴巴集团控股有限公司 | 数据加解密的方法及装置 |
CN110661610B (zh) * | 2018-06-29 | 2020-11-03 | 创新先进技术有限公司 | 安全多方计算协议的输入获取方法和装置 |
US11283620B2 (en) * | 2019-10-01 | 2022-03-22 | Here Global B.V. | Method, apparatus, and system for providing a homomorphic cryptosystem |
US11347895B2 (en) * | 2019-12-03 | 2022-05-31 | Aptiv Technologies Limited | Method and system of authenticated encryption and decryption |
US11928188B1 (en) * | 2020-11-24 | 2024-03-12 | Anonyome Labs, Inc. | Apparatus and method for persistent digital rights management |
KR20220101309A (ko) | 2021-01-11 | 2022-07-19 | 주식회사 엘지에너지솔루션 | 전지 모듈 및 이의 제조 방법 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1320232A (zh) * | 1998-08-13 | 2001-10-31 | 国际商业机器公司 | 跟踪最终用户电子内容使用的系统 |
WO2007036862A2 (en) * | 2005-09-30 | 2007-04-05 | Koninklijke Philips Electronics N.V. | Secure management of content owned by multiple-persons |
JP2007124055A (ja) * | 2005-10-25 | 2007-05-17 | Nippon Hoso Kyokai <Nhk> | コンテンツ配信装置、ライセンス発行装置、課金装置およびコンテンツ視聴端末、ならびに、ライセンス要求生成プログラム、ライセンス生成プログラムおよび課金プログラム |
JP2007172593A (ja) * | 2005-11-22 | 2007-07-05 | Matsushita Electric Ind Co Ltd | ライセンス管理装置、ライセンス管理方法およびライセンス管理プログラム |
CN101002421A (zh) * | 2004-03-29 | 2007-07-18 | 斯马特互联网技术Crc有限公司 | 数字许可证共享系统和方法 |
US20120144195A1 (en) * | 2009-08-14 | 2012-06-07 | Azuki Systems, Inc. | Method and system for unified mobile content protection |
CN106462689A (zh) * | 2014-05-13 | 2017-02-22 | 日本电信电话株式会社 | 安全系统、管理装置、许可装置、终端装置、安全方法以及程序 |
CN107660286A (zh) * | 2015-06-26 | 2018-02-02 | 英特尔公司 | 用于选择性内容许可和安全回放的技术 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63160444A (ja) * | 1986-12-23 | 1988-07-04 | Mitsubishi Electric Corp | 暗号通信装置 |
US7363499B2 (en) * | 2003-09-18 | 2008-04-22 | Sun Microsystems, Inc. | Blinded encryption and decryption |
EP1635545B1 (en) * | 2004-09-14 | 2013-04-10 | Sony Ericsson Mobile Communications AB | Method and system for transferring of digital rights protected content using USB or memory cards |
US20060288421A1 (en) * | 2005-06-15 | 2006-12-21 | Tsai Ivy S | Methods and apparatuses for reviewing general public licenses |
US8296240B2 (en) * | 2007-03-22 | 2012-10-23 | Sony Corporation | Digital rights management dongle |
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 |
US10484168B2 (en) * | 2015-03-02 | 2019-11-19 | Dell Products L.P. | Methods and systems for obfuscating data and computations defined in a secure distributed transaction ledger |
EP3437048B1 (en) * | 2016-04-01 | 2021-06-09 | ConsenSys Software Inc. | Systems and methods for providing data privacy in a private distributed ledger |
US11258587B2 (en) * | 2016-10-20 | 2022-02-22 | Sony Corporation | Blockchain-based digital rights management |
-
2018
- 2018-05-22 US US15/986,641 patent/US20190362054A1/en active Pending
-
2019
- 2019-05-21 CN CN201980034390.5A patent/CN112189197A/zh active Pending
- 2019-05-21 JP JP2020564729A patent/JP2021525030A/ja active Pending
- 2019-05-21 WO PCT/US2019/033264 patent/WO2019226622A1/en unknown
- 2019-05-21 KR KR1020207033188A patent/KR102560295B1/ko active IP Right Grant
- 2019-05-21 EP EP19807395.9A patent/EP3782059A4/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1320232A (zh) * | 1998-08-13 | 2001-10-31 | 国际商业机器公司 | 跟踪最终用户电子内容使用的系统 |
CN101002421A (zh) * | 2004-03-29 | 2007-07-18 | 斯马特互联网技术Crc有限公司 | 数字许可证共享系统和方法 |
WO2007036862A2 (en) * | 2005-09-30 | 2007-04-05 | Koninklijke Philips Electronics N.V. | Secure management of content owned by multiple-persons |
JP2007124055A (ja) * | 2005-10-25 | 2007-05-17 | Nippon Hoso Kyokai <Nhk> | コンテンツ配信装置、ライセンス発行装置、課金装置およびコンテンツ視聴端末、ならびに、ライセンス要求生成プログラム、ライセンス生成プログラムおよび課金プログラム |
JP2007172593A (ja) * | 2005-11-22 | 2007-07-05 | Matsushita Electric Ind Co Ltd | ライセンス管理装置、ライセンス管理方法およびライセンス管理プログラム |
US20120144195A1 (en) * | 2009-08-14 | 2012-06-07 | Azuki Systems, Inc. | Method and system for unified mobile content protection |
CN106462689A (zh) * | 2014-05-13 | 2017-02-22 | 日本电信电话株式会社 | 安全系统、管理装置、许可装置、终端装置、安全方法以及程序 |
CN107660286A (zh) * | 2015-06-26 | 2018-02-02 | 英特尔公司 | 用于选择性内容许可和安全回放的技术 |
Also Published As
Publication number | Publication date |
---|---|
WO2019226622A1 (en) | 2019-11-28 |
JP2021525030A (ja) | 2021-09-16 |
KR20210003179A (ko) | 2021-01-11 |
EP3782059A1 (en) | 2021-02-24 |
US20190362054A1 (en) | 2019-11-28 |
EP3782059A4 (en) | 2021-12-15 |
KR102560295B1 (ko) | 2023-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11811914B2 (en) | Blockchain-based digital rights management | |
KR102560295B1 (ko) | 사용자-보호된 라이센스 | |
US8843745B2 (en) | Methods of authorizing a computer license | |
US7270193B2 (en) | Method and system for distributing programs using tamper resistant processor | |
KR20080058833A (ko) | 개인 정보 보호 장치 및 방법 | |
CN101084482A (zh) | 电子软件分配方法及使用以硬件识别为基础的数字权利管理方法的系统 | |
CN101142599A (zh) | 基于硬件识别的数字权利管理系统 | |
WO2004109972A1 (ja) | ライセンス受信用ユーザ端末 | |
US9172683B2 (en) | Method and apparatus for key distribution with implicit offline authorization | |
US8417937B2 (en) | System and method for securely transfering content from set-top box to personal media player | |
US20140140504A1 (en) | System, devices and methods for collaborative execution of a software application comprising at least one encrypted instruction | |
US10902093B2 (en) | Digital rights management for anonymous digital content sharing | |
US9467427B2 (en) | Methods and systems for authorizing and deauthorizing a computer license | |
US20230376574A1 (en) | Information processing device and method, and information processing system | |
WO2022133923A1 (zh) | 一种许可认证的方法、装置、电子设备、系统及存储介质 | |
KR101188659B1 (ko) | 플레이어 및 카트리지 간의 디지털 콘텐츠 보호 방법 | |
KR20110066826A (ko) | 신뢰 플랫폼 모듈 기능을 이용한 cas/drm 소프트웨어의 다운로드 방법 | |
Huang et al. | A digital right management system based on smart card for digital cinema | |
JP2005149002A (ja) | コンテンツ流通管理方法および装置 | |
US9847984B2 (en) | System for efficient generation and distribution of challenge-response pairs | |
Davidson et al. | Efficient and enhanced solutions for content sharing in DRM systems | |
Sun et al. | A Trust Distributed DRM System Using Smart Cards |
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 |