王淑娟
【摘 要】针对目前数字版权管理解决方案中只支持对单一文件格式进行加密封装的问题,提出了一种支持DRM的多媒体复合文档封装方法,定义了内容封装基本信息模型,研究了封装机制的运行原理和工作流程,并对其安全性和性能进行了分析。该方法能够根据具体的安全需求,对多媒体复合文档的资源项进行灵活保护,从而为细粒度、可扩展的数字权利使用控制机制提供基础。
【关键词】多媒体复合文档;数字版权管理;加密;封装
随着信息技术的发展与各类终端设备的普及,越来越多的用户通过互联网平台阅读和学习。而对于网络资源的滥用和非法复制严重侵害了资源创作者的合法权益。除了从立法层面对网络出版领域进行规范之外,还应提供完善的技术措施进行有效支持。数字版权管理(Digital Rights Management,简称DRM)技术是一种针对数字内容的版权保护技术支持方案。许多国际领先的信息技术公司与研发机构都退出了各自的DRM解决方案,如 IBM Madison、Adobe DRM、Microsoft WMRM等,其中基于Microsoft WMRM方案的二次开发与应用最为广泛,国内如北大方正、中科院自动化所等也做了大量的研究工作,并有显著成果。
资源内容是数字版权管理技术保护的主要对象。通过对内容的编码封装,将不受保护的文档资源转换为受保护的状态,是数字版权管理得以实施的重要前提。但是当前解决方案一般是对单一类型的文件进行整体保护,而目前网络上的资源多是图文并茂、视音结合的多媒体资源内容,具有复合性、异构性和可重用性。
本文针对目前DRM解决方案中封装机制的问题,设计并实现一种针对多媒体复合文档的加密封装机制,为细粒度、可扩展的数字权利使用控制提供基础。
1 相关研究
1.1 选择加密技术
支持DRM的多媒体文档资源除了对于加密算法的安全性有要求之外,还有一些个性化的需求,如预览功能、流媒体播放等。因此,有必要引入选择加密算法。选择加密算法基于传统加密算法,然后针对不同文档资源格式在编码和传输方面的特性进行相应改进。选择加密方式根据不同的安全性需求选择合适的加密算法和加密时机,可以大幅提升加密过程的效率,基于对不同文档资源格式编码机制对算法进行优化,也更容易与现有的多媒体文档的格式、传输协议和浏览工具相兼容。目前具有代表性的选择加密方法有渐进加密、分层加密、分段加密、压缩前加密、压缩域加密等。
1.2 资源封装技术
资源的封装机制包括描述和封装两个层面。资源描述主要负责完成资源的标识并创建元数据。资源封装负责整合各类多媒体资源项,然后进行序列化及结构化处理,最终形成具有完整使用价值的作品的过程。如微软Office办公文档的OLE对象链接与嵌入技术,聚合HTML文档Web档案技术等。在数字版权管理系统中,资源封装技术除了完成资源的描述并整合各类资源项之外,还需要引入加密技术、数字水印、数字签名等以确保内容的机密性和完整性。相关解决方案有InterTrust的DigiBox技术、IBM的Cryptolope技术等。
2 信息模型
本文综合考虑多媒体复合文档的的结构特性与安全需求,在现有加密技术和安全封装技术基础上,提出一种支持DRM的多媒体复合文档封装方法,基于该方法封装的文件称为RMBox容器文件。主要包括头模块RMHeader和内容模块RMBody两大部分。信息模型如图1所示。
在RMHeader中的基本头信息BaseInfo是强制数据项,主要用于定义多媒体复合文档的元数据信息(如标题、摘要、关键字等)、规定DRM权利信息(如加密密钥、授权地址等)、声明版权信息等。结构头信息Orgnization主要用于描述文档资源的组织结构,索引头信息ResourcesRef用于说明资源项的实际物理地址。头完整性信息HVerifyInfo供多媒体复合文档资源接收者使用,主要用来确保文档来源的正当性和RMHeader的完整性。扩展头信息ExtendHeader目前未使用,主要用作后续功能扩展的保留项。
在RMBoby中,包含有采用对称加密算法加密的文档内容,文档内容的完整性验证信息和文档的版权认定辅助信息等。一般来说,文档内容采用对称加密算法进行加密,然后在RMHeader模块的基本头信息BaseInfo中指明获取解密密钥的途径。需要注意的是,按照版权管理模式的不同,文档内容是否需要加密,加密哪一部分均不一定。版权认定辅助信息CIInfo一般以数字水印的形式嵌入,内容完整性信息BVerifyInfo主要用于验证文档内容是否遭到篡改。
3 封装机制
支持DRM的多媒体复合文档加密封装机制的结构组成及其运行机理如图2所示。
文档内容安全封装一般流程如下:
(1)通过资源导入/编码模块导入素材资源并进行结构化编码;
(2)密钥生成模块随机生成安全的密钥信息(密钥唯一标识符ID、密钥种子Seed、内容密钥Key)供加密过程使用,同时将密钥信息安全保存到密钥信息库;
(3)头文件生成模块根据基本信息、组织结构信息、索引信息等描述信息生成文档的头文件,并将主要信息存储到资源信息库;
(4)内容加密模块利用步骤(2)中生成的内容密钥Key将依据不同的加密策略对文档内容进行加密;
(5)资源封装模块加载RMHeader头文件、加密后的文档内容与版权认定信息进行封装,生成受DRM保护的多媒体复合文档,存储至资源内容库。
需要注意的是,多媒体复合文档中的资源项格式多样,对于加密算法和加密方式的选择将会影响封装的效率以及使用控制过程中授权的灵活性,在选择加密方式与算法时,需要考虑的因素有:需要加密的文档内容的大小、文档内容的编码方式、数字权利使用控制的粒度要求等。此外,若想要支持对文档内容的版权认定,还要在资源封装阶段将必要的版权证明与侵权认定信息嵌入到文档资源内容中去。
4 总结与分析
安全封装机制的主要目标就是保护多媒体复合文档内各资源项和关键信息的安全性。本安全封装机制基于对称密钥算法、公开密钥算法、保证内容的机密性,同时利用数字签名技术和哈希算法保证签名的不可伪造性和内容的防篡改性。
此外,我们基于Window平台,对封装过程的效率进行了实验。实验平台环境如下:Intel(R)Pentium(R)Dual CPU e2180 @2.00GHz,RAM:4.00G,Windows 7 32位 OS。实验开发语言为C#。加密过程采用最简单的DES对称加密方法,压缩编码过程采用Zip文档压缩算法。我们使用本文提出的封装方法和微软的WMRM封装方法对不同复杂度和不同格式的文档资源内容进行封装实验,取对每个文档20次加密和封装用时的平均值作为本封装方法的平均用时。
实验结果如图3所示。可以看出,当资源包文件较小且类型较单一时,对其处理耗时较小,约为0~1s左右。当资源包结构比较复杂且文件较大时,相应的处理时间就会增加,处理时间可以达到十~几十秒。另外,相对于微软的WMRM封装方法,对于单个音视频文件的加密封装耗时差不多,对于复合型的资源如F5和F6,由于本文提出的方法需要分别进行398次和399次加密,用时会多一点,但耗时增加并不明显,在可容忍的范围之内。
相比现有的支持DRM的资源封装工具,本文所提出的方法在封装耗时上并没有明显增加,且不依赖于具体的加密和压缩算法,应用更加的灵活,具有较强的实用性。
【参考文献】
[1]Danny Bradbury.Decoding digital rights management[J]. Computers & Security,2007(1):31-33.
[2]Windows Media Rights Manager 10 SDK[EB/OL].http://msdn.microsoft.com/en-us/library/ms986509.aspx.
[3]叶从欢,熊曾刚,丁么明,李纪平,王光伟,张学敏,张凯兵.面向社交多媒体安全分享的树结构小波域联合指纹与加密[J].小型微型计算机系统,2014,10.
[4]张志勇,牛丹梅.数字版权管理中数字权利使用控制研究进展[J].计算机科学,2011,04.
[5]康立,王之怡.高效的适应性选择密文安全公钥加密算法[J].计算机学报,2011,02.
[6]刘永亮,高文,姚鸿勋,黄铁军.用于多媒体加密的基于身份的密钥协商协议的安全性[J].电子与信息学报,2007,04.
[7]王昱文.基于编码的多媒体加密研究[D].重庆大学,2008.
[责任编辑:杨玉洁]