姜波
【摘要】本文重点描述基于数字版权保护技术研发工程包11移动出版版权保护系统研发实现过程中使用到的重点关键技术。通过内容保护、传输、访问展现三个阶段分析,本文主要讨论针对EPUB内容保护的关键技术。
【关键词】数字版权保护技术研发工程;移动出版;关键技术
前言
本文重点讨论数字版权版权保护技术研发工程中包11的移动出版版权保护技术的EPUB格式的加密关键技术和流程。
1、EPUB文档结构
EPUB(Electronic Publication的缩写,电子出版)是一个自由的开放标准,属于一种可以“自动重新编排”的内容;也就是文字内容可以根据阅读设备的特性,以最适于阅读的方式显示。
EPUB格式电子书遵循IDPF推出的OCF规范,OCF规范遵循ZIP压缩技术,即EPUB电子书本身就是一个ZIP文件,我们将EPUB格式电子书的后缀.EPUB修改为.zip后,可以通过解压缩软件(例如winrar、winzip)进行浏览或解压处理。
EPUB格式中包含了DRM相关功能可供选用
一个未经加密处理的EPUB电子书主要由三个部分组成:Mimetype/Meta-inf/OEBPS。
文件:MIMETYPE
每一本EPUB电子书均包含一个名为mimetype的文件,且内容不变,用以说明EPUB的文件格式。
目录:META-INF
依据OCF规范,META-INF用于存放容器信息,默认情况下(即加密处理),EPUB 根目录下必须包含 META-INF 目录,而且其中要有一个文件 container.xml。EPUB 阅读系统首先查看该文件,它指向数字图书元数据的位置。
目录:OEBPS
OEBPS目录用于存放OPS文档、OPF文档、CSS文档、NCX文档,OEBPS目录也可以建立相应的子目录,例如建立chapter目录,把各章节的OPS文档放在chapter目录之中。
2、EPUB加密保护
基于EPUB文档的结构,EPUB的加密保护与以下4个部分密不可分:EPUB文件及内容解析、EPUB文件及内容加密、encryption.xml文件配置、EPUB打包入库。
EPUB 加密过程
EPUB文件及内容解析
EPUB文件先经过解压后才可看到具体的EPUB文档及结构,随后对其分析,通过META-INF目录下Container.xml文件获得EPUB电子书根文件*.opf,并对其进行解析,得到所有EPUB文件路径(章节内容文件、图片文件、CSS文件等)。
EPUB文件及内容加密
在得到所有需要加密的文件路径后,才能对其加密,加密可对文件的所有内容或部分内容进行加密,内容加密后需要将加密的内容再次写回到被加密的文件内并保存。
encryption.xml文件配置
根据EPUB文档结构的规范,如果容器内某些资源是加密的,encryption.xml就必须存在,表明资源是加密的。所以对所有加密资源的密钥、加密模式等都需要在encryption.xml中进行配置、描述。
EPUB打包入库
EPUB的文件及内容进行过加密后,最终需要重新打包,生成新的加密EPUB压缩文件才可正常使用,同时将EPUB文件、加密密钥进行存储以备后续EPUB文件分发、许可证生成、EPUB内容解密使用。
3、加密设计
加密数据存储层Database
EPUB加密的过程中,相关的数据需要存储于数据库并为其他子系统提供服务,存储数据包括:
1)加密密钥 CEKeco
2)加密文件ECO
加密类库层libs
加密数据层之上需要有公用的类库层,用来支持加密前对EPUB的解压、解压后的EPUB文件内容解析、EPUB文件遍历及读写处理、加密后的EPUB重新打包。类库包括:
1)解压、打包类库 EZip
2)解析类库 Eparser
3)文件处理类库Efile
加密接口调用层InterfaceISS
EPUB加密的操作需要调用包15的随机数接口、对称加密接口,这两个接口统一封装在InterfaceISS接口中的pubpackage包下,分别为:
1)D15engineGenRandom
2)D15engineEncrypt
加密应用层App
应用层为触发EPUB加密的层,即内容管理系统,内容管理系统进行EPUB原始文件注册、DRMI、文件信息入库后,再进行EPUB加密。
4、解密设计
解密类库层libs
EPUB需要经过解密才能阅读,解密需要有公用的类库层,用来支持加密EPUB的解压、解压后的加密EPUB文件内容解析、加密EPUB文件遍历及读取处理。类库包括:
1)解压类库 EZip
2)解析类库 Eparser
3)文件处理类库Efile
解密接口调用层InterfaceISS
EPUB解密的操作需要调用包2的硬件特征信息接口、包15的对称解密接口、包3的数字许可证解析接口,这三个接口统一封装在InterfaceISS接口中的pubpackage包下,分别为:
1)D02CreateDeviceInfo;2)D15EngineDecrypt;3)D03RelParser
解密后的EPUB章节内容需要提供给内容解析渲染接口EPUBParserRendering进行解析处理、效果展示。
解密应用层Client
应用层为触发EPUB解密阅读的层,即客户端阅读器,阅读器在下载ECO及许可证LICENSE后,确认开始读取EPUB图书的时候进行EPUB解密阅读。
结论
本文探讨了基于移动出版版权保护技术epub格式内容的加解密技术,在实践过程中得到较好的应用。
参考文献
[1]李琳.移动数字版权管理的现状与展望[J]. 江西科技师范学院学报,2011(6):102.
本文由数字版权保护技术研发工程(立项编号:1681300000119)资助
This work has been supported by the Digital Rights Management Research and Development Projects under Grant No. 1681300000119