2013-02-23 217 views
0

我试图使用私钥加密整个EPub的XHTML/HTML文件,然后在META-INF/encrpytion.xml中附加一个公钥,以便用户能够读取这样预定。私人/公共密钥对基于许多不相关的标准是唯一的。带私钥/公钥的EPub加密

它会以某种方式使用这种加密方案吗?如果是,我应该使用什么encryption.xml结构?或者,如果这是不可能的话,我可以“混淆”实际的XHTML书籍文件,就像EPUB软件包中的字体是“混淆的”一样吗?

谢谢,我对此很新,并且没有关于如何制作自己的EPub书籍的CLEAR规范加密。

回答

1

首先,非常松散地说,当您使用私钥进行加密时,它是数字签名,而不是加密。然后收件人可以验证消息没有被公钥“解密”所改变。事实上,你似乎打算加密数据,所以你正在使用键。

其次,非对称加密用于密钥传输,而不是数据加密。正确的做法是使用对称算法对文件进行加密,然后使用非对称算法的公钥对对称密钥进行加密。更好的是,找一个CMS(S/MIME)库来为你做。正确应用这样一个库可能很难得到正确的结果。您绝对不应该尝试从加密基元实现相同的功能。

最后,如果您正在尝试创建某种DRM系统,那么您最好放弃。复制保护是一个法律问题,而不是技术问题。你不能锁定某些东西,然后把钥匙交给小偷。

+0

该方案的重点在于能够精确地确定_who_共享有问题的EPub文件,同时使普通用户的保护变得更加困难。因此,当用户提取ZIP压缩文件时,除非解密,否则所有图书XHTML文件都将无法读取。以这种方式编写encryption.xml是否可能?字体可以被“模糊处理”,它可以以任何方式自行处理书本文件? – kbs1 2013-02-23 03:32:16

+0

@ kbs1在这种情况下,您想要的是内容中嵌入的某种数字水印。这在图像文件中很常见,但为XHTML的纯文本开发弹性水印看起来非常具有挑战性。不过,我建议[了解更多关于他们](http://en.wikipedia.org/wiki/Digital_watermark),看看你是否是这样。 – erickson 2013-02-23 15:45:52

+0

谢谢,这部分是我所追求的。我们计划将社交DRM与其他一些保护方法结合起来,建议的方案就是其中之一。 – kbs1 2013-02-23 20:45:15