如何在mkv中加密视频?

时间:2012-04-25 15:02:34

标签: c# encryption mkv

因此,我们将获得要发送到多个客户端站点的mkv文件。我们需要在传输之前加密这些文件的内容,但是客户端可以开始播放这些文件,并在运行时解密它们。我们知道我们可以简单地加密文件本身,但是然后客户端必须在回放之前解密它,使未加密的文件保持打开以进行盗窃。一直在谷歌搜索加密mkv但尚未发现任何东西。这可能吗?实现这一目标的库(Windows加密端,Linux播放端)将是理想的,但跨平台的应用程序就足够了。

3 个答案:

答案 0 :(得分:3)

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

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

但是,您需要自己进行加密。最有可能的方式是jbtule提出的方式。你能回复给我们吗?我正在考虑自己加密一些MKV。

答案 1 :(得分:0)

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

如何开发DRM的主题太广泛了,不能在这里讨论。您需要选择要使用的DRM系统并对其进行许可。这不重要。

你可以开始here。请注意,与大多数DRM计划一样,您唯一不方便的人将是您的付费客户。如果有人想要你的内容,他们就会得到它。

答案 2 :(得分:0)

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