1

因此,我们将获得要发送到多个客户端站点的 mkv 文件。我们需要在传输之前加密这些文件的内容,但是客户端可以开始播放这些文件,并在运行中解密它们。我们知道我们可以简单地加密文件本身,但是客户端必须在播放之前对其进行解密,从而使未加密的文件处于打开状态以供窃取。一直在谷歌搜索加密 mkv,但还没有出现任何东西。这可能吗?实现这一点的库(Windows 加密端、Linux 播放端)将是理想的,但跨平台应用程序在紧要关头就足够了。

4

3 回答 3

3

Matroska 肯定支持流层加密(与 Adam 所说的相反):

请参阅: http: //matroska.org/technical/specs/notes.html#Encryption

但是,您需要自己进行加密。jbtule 建议的方式很可能会起作用。你能向我们汇报吗?我正在研究自己加密一些 MKV。

于 2012-06-29T06:56:48.767 回答
0

这是不可能的; 作为容器格式,Matroska (MKV) 格式不支持 DRM。您需要使用 ASF 之类的东西,这是 WMV 或 QuickTime 最常使用的容器格式。

如何为 DRM 进行开发的主题过于广泛,无法在此涵盖。您需要选择要使用的 DRM 系统并对其进行许可。这是不平凡的。

你可以从这里开始。请注意,与大多数 DRM 方案一样,唯一会给您带来不便的人是您的付费客户。如果有人想要您的内容,他们会得到它。

于 2012-04-25T15:15:04.007 回答
0

没有标准的 DRM。但是您可以使用标准加密,您不想加密整个文件,只需要使用流密码加密容器内的视频流,因此您可以在解析器级别挂钩您使用的任何开源 MKV 库然后解密在将流传递给编解码器之前的流块。您需要选择一个快速的标准流密码,并且可以让您跳到流中的后面位置(例如Salsa20

于 2012-04-25T15:57:23.783 回答