互联网技术的飞速发展在使数字内容传播日益便捷的同时,也带来许多版权纠纷。数字版权管理(digital rights management,DRM)通过数字内容的制作、发行、安全许可和计费等一系列手段防止数字内容的非法误用,确保数字内容在公平、合理、安全许可框架下使用和消费。目前的DRM方案包括开放移动联盟DRM和microsoftmedia DRM等 [1] 。
现有的多媒体数字版权保护方法分为两大类:一类是基于数字水印的方法,将版权等水印信息隐藏在数字媒体中;另一类是基于加密技术的方法,采用数字加密和身份认证的方法,限制非授权用户的使用,并保证授权用户的正常使用。相比之下,基于加密技术的方法更具有普遍性,学术界提出了很多基于加密技术的版权保护方案 [2] 。
现有的DRM方案中,用户通常将数字内容传送至DRM服务器进行加密,再通过DRM服务器授权给其他用户使用。一旦服务器遭受攻击,就会有用户数字内容泄露的风险。因此,在用户对DRM服务器并不完全信任的情况下,如何保护数字内容的安全性,实现数字内容的合理使用,这是目前数字版权保护面临的关键问题。
针对这一问题,提出了代理重加密方案 [3] 。在代理重加密方案中,一个半可信的代理者可以把用授权人的公钥加密的密文转化为用被授权人的公钥加密的密文。在这个过程中,代理者不能获取明文的任何消息。代理重加密在分布式文件系统的安全管理以及云计算等场景中已得到广泛应用。
代理重加密方案在1998年欧洲密码学年会上首次被提出 [3] ,并由Ateniese等 [4] 在网络和分布式系统安全研讨会议和2007年美国计算机学会计算机与通信安全会议上相继给出其规范的形式化定义。
目前,在代理重加密方面已有大量研究,包括单向或双向代理重加密方案和基于代理重加密的数字版权管理机制等。Taban等 [5] 提出一种安全并满足互操作性的数字版权管理机制。该机制中增加了跨域操作管理者,实现域A中的许可证转换为域B中的许可证,而管理者不能对许可证进行解密或者单独生成域A或域B中的许可证。Lee等 [6] 提出一种安全和共同盈利的DRM互操作机制,通过指定代理重加密者,允许内容提供商重加密内容以实现不同格式的数字内容共享,避免泄露数字内容明文,但是该机制在内容共享过程中需要重加密内容。Ma等 [7] 提出了一种基于代理重加密的版权内容共享模型,通过代理重加密内容实现不同用户和设备之间按需共享内容,同时支持限制内容共享次数。Petrlic等 [8] 提出了一种基于云平台的内容统一发布和保护方案,允许用户通过云平台订购和使用不同内容提供商发布的内容,但是该方案在用户每次使用内容时都需要重加密内容。
针对多媒体内容,笔者提出一种基于代理重加密的多媒体数字版权授权协议。该协议引入密钥代理服务器,允许内容提供商在客户端加密多媒体内容,内容使用者获取加密的多媒体内容后向许可证服务器申请许可证,内容使用者下载许可证后向密钥代理服务器提交内容加密密钥重加密申请,密钥代理服务器重加密内容加密密钥后返回给内容使用者,而许可证服务器无法获取内容加密密钥明文。该协议在内容使用和共享过程中不需要重新加密内容。在该协议的基础上,实现了云计算环境下的数字电视节目内容共享平台。
笔者提出的基于代理重加密的多媒体数字版权授权协议主要包括内容平台、许可证服务器、密钥代理服务器、内容提供商和内容使用者等。该协议引入代理重加密机制,允许内容提供商加密多媒体内容,内容使用者获取内容和许可证服务器分发的许可证后,通过密钥代理服务器获取代理重加密后的内容加密密钥再解密多媒体内容,保证了多媒体内容在存储、传输和使用过程中的安全性。
如图1所示,基于代理重加密的多媒体数字版权授权协议的主要过程如下。
图1 基于代理重加密的多媒体数字版权授权协议
(1)内容使用者向许可证服务器注册,许可证服务器为内容使用者生成代理重加密密钥。
(2)内容提供商随机生成内容加密主密钥和内容加密辅助密钥,两者加密生成内容加密密钥。内容提供商使用内容加密密钥加密多媒体内容,并使用密钥代理服务器公钥加密内容加密辅助密钥保存在内容头中,与加密内容一起通过内容平台分发给内容使用者,而内容加密主密钥则加密发送给许可证服务器保存。
(3)内容使用者下载加密的多媒体内容后,向许可证服务器申请许可证,许可证服务器根据内容使用者的权利申请为内容使用者生成并分发许可证,许可证中包含许可证服务器公钥加密的内容加密主密钥和用户的使用权利(包括时间、次数等)等。
(4)内容使用者获取许可证后,向密钥代理服务器申请代理重加密内容加密主密钥。密钥代理服务器将许可证中许可证服务器公钥加密的内容加密主密钥代理重加密为内容使用者公钥加密的内容加密主密钥,同时使用私钥解密出文件头中密钥代理服务器公钥加密的内容加密辅助密钥,并使用内容使用者公钥加密内容加密辅助密钥,加密的结果与代理重加密的内容加密主密钥一并发送给内容使用者。
(5)内容使用者使用私钥解密出内容加密主密钥和内容加密辅助密钥,两者加密生成内容加密密钥,内容使用者再使用内容加密密钥解密多媒体内容,并按照许可证中的权利描述使用多媒体内容。
该协议的参数如表1所示。
表1 基于代理重加密的多媒体数字版权授权协议参数
内容使用者向许可证服务器注册,许可证服务器为内容使用者生成代理重加密密钥,如图2所示。
步骤1 内容使用者向许可证服务器提交注册请求,请求包括内容使用者公钥 P u 。
U → S : I U ‖ P u
步骤2 许可证服务器验证内容使用者的身份,如果验证通过则生成内容使用者的代理重加密密钥。
K a,u =G ( S a , P u )
步骤3 许可证服务器使用内容使用者公钥 P u 加密代理重加密密钥并返回给内容使用者。
A → U : E ( P u , K a,u )
图2 内容使用者注册阶段时序
内容提供商随机生成内容加密密钥,使用内容加密密钥加密并打包多媒体内容,如图3所示。
步骤1 内容提供商随机生成内容加密主密钥 K m 和内容加密辅助密钥 K a ,使用 K m 加密 K a 得到内容加密密钥。
K e = E( K m , K a )
步骤2 内容提供商使用 K e 加密多媒体内容 M ,按照格式打包加密后的内容并上传至内容平台。内容头包括内容标识 I c 和密钥代理服务器公钥 P k 加密的 K a 等信息。
C= { I c ‖ E ( P k , K a )‖ E ( K e , M )}
步骤3 内容提供商将内容标识 I c 、内容加密主密钥 K m 以及允许内容使用者使用的权利 V (时间和次数等)等版权信息加密发送给许可证服务器。
Q= { I c ||E ( P a , K m )‖ E ( P a , V )}
图3 内容加密阶段时序
步骤4 内容提供商使用私钥 S u 签名 Q ,签名结果与 Q 一并发送给许可证服务器。
U — A : Q ‖ H ( S u , Q )
步骤5 许可证服务器验证版权信息的签名,验证通过后,使用私钥 S a 解密出 K m 和 V 并保存。
K m : D ( S a , E ( P a , K m ))
V=D ( S a , E ( P a , V ))
步骤6 内容提供商将加密打包后的内容上传到内容平台,供内容使用者下载。
内容使用者下载加密的多媒体内容后,向许可证服务器申请许可证,许可证服务器根据权利申请为内容使用者生成许可证,如图4所示。
图4 许可授权阶段时序
步骤1 内容使用者从内容平台下载加密后的内容后,在无有效许可证的情况下,DRM客户端提示内容使用者申请许可证再使用内容。
步骤2 内容使用者向许可证服务器提交许可证申请,包括用户标识 I u 、内容标识 I c 。和权利描述信自 T 等。
W= { I u ‖ I c ‖ T }
步骤3 内容使用者使用私钥 S u 签名许可证申请,并发送许可证申请给许可证服务器。
U — A : W ‖ H ( S u , W )
步骤4 许可证服务器验证许可证申请的签名。验证通过后,检查内容使用者申请的权利信息是否在内容提供商规定的权利 V 范围内,同时查询该内容使用者的代理重加密密钥 K a,u ,并为该内容使用者生成许可证。许可证中包含内容标识 I c 、用户标识 I u 、权利描述信息 T 、许可证服务器公钥 P a 加密的 K m 和密钥代理服务器公钥 P k 加密的 K a,u 等。
N= { I c ‖ I u ‖ T ‖ E ( P a , K m )‖ E ( P k , K a,u )}
步骤5 许可证服务器使用私钥 S a 签名许可证,并将签名后的许可证发送给内容使用者。
A → U : N ‖ H ( S a , N )
内容使用者获取许可证后,向密钥代理服务器申请代理重加密内容加密密钥,如图5所示。
步骤1 内容使用者获取许可证后,验证许可证签名。验证通过后,向密钥代理服务器提交内容加密密钥重加密申请。申请包括内容头中使用密钥代理服务器公钥 P k 加密的 K a 、许可证中许可证服务器公钥 P a 加密的 K m 和密钥代理服务器公钥 P k 加密的 K a,u 。
F= { E ( P k , K a )‖ E ( P a , K m )‖ E ( P k , K a,u )}
图5 代理重加密阶段时序
步骤2 内容使用者使用私钥 S u 签名内容加密密钥申请,并将申请发送给密钥代理服务器。
U → K : F ‖ H ( S u , F )
步骤3 密钥代理服务器验证内容使用者提交的内容加密密钥代理重加密申请的签名。验证通过后,使用私钥 S k 解密出 K a 和 K a,u 。
K a =D ( S k , E ( P k , K a ))
K a,u =D ( S k , E ( P k , K a,u ))
步骤4 密钥代理服务器使用代理重加密密钥 K a , u 对许可证服务器公钥 P a 加密的 K m 进行代理重加密,结果为
K r =R ( K a,u , E ( P a , K m ))
步骤5 密钥代理服务器使用内容使用者公钥 P u 加密 K a ,连同代理重加密后的 K m 发送给内容使用者。
K → U : E ( P u , K a )‖ K r
步骤1 内容使用者使用私钥 S u 解密出 K a 。
K a =D ( S u , E ( P u , K a ))
步骤2 内容使用者使用私钥 S u 解密代理重加密后的 K m 。
K m =D ( S u , K r )
步骤3 内容使用者使用 K m 加密 K a ,生成内容加密密钥 K e 。
K e =E ( K m , K a )
步骤4 内容使用者使用 K e 解密出多媒体内容,并按照许可证描述的权利进行使用。
在提出协议的基础上,实现了云计算环境下的数字电视节目内容共享平台,完成数字电视节目的安全共享,主要过程如下。
(1)用户注册。用户(网络视频提供商)通过DRM客户端在内容共享平台注册,平台为用户生成代理重加密密钥。
(2)电视节目加密。内容提供商(电视台)使用DRM客户端加密数字电视节目,加密完成后DRM客户端将版权信息发送给内容共享平台,并将加密的数字电视节目上传到内容共享平台的云存储中。
(3)电视节目授权。用户从内容共享平台选择合适的数字电视节目后,提交订购申请(订购的有效时间等),内容共享平台为该用户生成并分发授权许可证。
(4)电视节目解密。用户获取数字电视节目的许可证后,在使用数字电视节目时,DRM客户端向内容共享平台申请代理重加密后的内容加密密钥,DRM客户端再解密出内容加密密钥,并按照许可证中的权利进行播放。
内容共享平台不仅保护内容提供商的合法权利,而且保证数字电视节目在存储、传输和使用过程中的安全性。
(1)内容使用者只有获取合法许可证后才能解密内容
内容提供商使用 K e 加密多媒体内容,内容使用者必须向许可证服务器申请才能获取许可证,许可证中包含许可证服务器公钥加密的 K m 。内容使用者向密钥代理服务器申请代理重加密 K m ,密钥代理服务器返回内容使用者公钥加密的 K m 和 K a ,只有内容使用者可以用自己的私钥解密出 K m 和 K a 。因此,内容使用者只有获取合法许可证后才能解密内容。
(2)抵抗攻击者与许可证服务器的合谋攻击
许可证服务器保存着 P a 加密的 K m ,只有许可证服务器可以用自己的私钥 S a 解密出 K m 。攻击者获取加密后的多媒体内容后,可以联合许可证服务器获取 K m ,但 K a 是由 P k 加密保存在内容头中,只有密钥代理服务器可以用自己的私钥 S k 解密出 K a 。因此,攻击者与许可证服务器无法解密出 K a ,也就无法获得 K e 。
(3)抵抗攻击者与密钥代理服务器的合谋攻击
攻击者获取加密的多媒体内容后,在代理重加密阶段,由于 K a 是由 P k 加密保存在内容头中,密钥代理服务器可以用自己的私钥 S k 解密出 K a ,并且可以使用 K a,u 将许可证服务器公钥加密的 K m 代理重加密成内容使用者公钥加密的 K m ,而密钥代理服务器无法获取 K m 明文。因此,攻击者可以联合密钥代理服务器获取 K a ,但无法获取 K m 。
笔者所提出的协议与文献[2,8]提出的协议均支持内容提供商使用统一的内容发布平台,对比结果如表2所示。从对比结果看出,笔者所提出的协议支持半可信的DRM服务器,采用对称加密算法加密多媒体内容,通过代理重加密许可证实现内容的共享,不需要重新加密内容,效率和安全性更高。
表2 数字版权授权协议对比
提出一种基于代理重加密的多媒体数字版权授权协议。
(1)该协议引入密钥代理服务器,允许内容提供商在客户端加密多媒体内容,加密后的多媒体内容发送给半可信的内容平台和许可证服务器。
(2)内容使用者从内容平台下载加密的多媒体内容后,向许可证服务器申请许可证。
(3)内容使用者下载许可证后,向密钥代理服务器提交内容加密密钥重加密申请,密钥代理服务器重加密内容加密密钥后再发送给内容使用者.
该协议采用加密方式存储多媒体内容,保证多媒体内容的安全性,同时密钥代理服务器完成内容加密密钥的转换,保证内容加密密钥的安全性,能够有效抵抗合谋攻击,效率及安全性较高。
[1]马兆丰,范科峰,陈铭,等.支持时空约束的可信数字版权管理安全许可协议[J].通信学报,2008,29(10):153-164.Ma Zhaofeng,Fan Kefeng,Chen Ming,et al.Trusted digital rightsmanagement protocol supporting for time and space constraint[J].Journal on Communications,2008,29(10):153-164.
[2]Wang Chaokun,Zou Peng,Liu Zhang,etal.CS-DRM:a cloud-based SIM DRM scheme formobile internet[J].Eurasip Journal on Wireless Communications and Networking,2011(1):1-30.
[3]Blaze M,Bleumer G,Strauss M.Divertible protocols and atomic proxy cryptography[C]//Advances in Cryptology-EUROCRYPT1998,International Conference on the Theory and Application of Cryptographic Techniques.Espoo:LNCS 1403,1998:127-444.
[4]Ateniese G,Fu K,Green M,et al.Improved proxy re-encryption schemes with applications to secure distributed storage[J].ACM Transactions on Information and System Security,2006,9(1):1-30.
[5]Taban G,Cardenas A A,Gligor V D.Towards a secure and interoperable DRM architecture[C]//Proceedings of the 6 th ACMWorkshop on Digital Rights Management.New York:ACM Press,2006:69-78.
[6]Lee S,Park H,Kim J.A secure and mutual-profitable DRM interoperability scheme[C]//ISCC 2010.New York:IEEE Inc,2010:75-80.
[7]Ma Guojun,Pei Qingqi,Wang Yuchen.A general sharingmodel based on proxy re-encryption[C]//IIHMSP 2011.Piscataway:IEEE Computer Society,2011:248-251.
[8]Petrlic R,Sorge C.Privacy-preserving DRM for cloud computing[C]//WAINA 2012.Piscataway:IEEE Computer Society,2012:1286-1291.