C# 本地软件的视频加密

C# 本地软件的视频加密,c#,encryption,video-streaming,video-encoding,C#,Encryption,Video Streaming,Video Encoding,我想显示一些视频文件在我的本地软件与一些保护,以防用户想要复制他们。我搜索了加密方法和一些DRM解决方案,但我不想要互联网连接,如果这不是唯一的选择的话。我正在用C#开发我的应用程序。视频文件将放在CD上 基本上,我计划做的是,在CD上加密视频文件,并在RAM上解密,这样不是每个播放器都能播放加密文件,只有我的播放器可以,而且它们不会被复制(我希望)。我听说在Delphi上做了一个类似的项目,但我不知道这是否是C#中最好的方法 我的问题是 这是C#的好方法吗 此方法是否适用于mp4或avi文件

我想显示一些视频文件在我的本地软件与一些保护,以防用户想要复制他们。我搜索了加密方法和一些DRM解决方案,但我不想要互联网连接,如果这不是唯一的选择的话。我正在用C#开发我的应用程序。视频文件将放在CD上

基本上,我计划做的是,在CD上加密视频文件,并在RAM上解密,这样不是每个播放器都能播放加密文件,只有我的播放器可以,而且它们不会被复制(我希望)。我听说在Delphi上做了一个类似的项目,但我不知道这是否是C#中最好的方法

我的问题是

  • 这是C#的好方法吗
  • 此方法是否适用于mp4或avi文件
  • C#中是否有用于此过程的库
  • 进度: 我在SO中搜索了有关CD拷贝保护的信息。一位用户建议将CD的数据保存在预写区并存储在某个地方。也许我可以制作独特的播放器,每个播放器都可以嵌入数据。或者,在网络上使用数据库,但我担心这会造成更多的安全漏洞,我还需要保护数据库。然而,这可能是一个更好的主意,因为没有用户将密钥嵌入到他们的程序中。我觉得我真的被卡住了:)任何帮助都将不胜感激

  • 不,这不是一个好办法。你的假设是CD会被复制,但你的播放机不会。这是不太可能的

  • 一般来说,这些文件无论如何都可以由其他应用程序播放(如果您加密这些文件,它们就不再是AVI文件)。不过,您可以对视频进行置乱,以便其他应用程序可以播放它,但它看起来完全错了。可以像在RGB中翻转R和G通道一样简单

  • 不,因为这个想法一开始就有缺陷。见第1点。不过,可能有蛇油出售


  • 请记住,你的预算大约是好莱坞预算的10亿倍。他们想要和你想要的一样的数字版权管理,但仍然得不到。

    数字版权管理是永远的隐蔽的安全。只要你是默默无闻的,它可能会为你工作一段时间。然而

    您可以使用自定义解密视频播放,人们只需复制播放器即可。因此,他们也必须保护玩家——这意味着生成一个魔法令牌,并让用户输入该令牌。除非你愿意。如果你想这样做,你必须有某种形式的产品注册,注册密钥(魔法令牌)基于目标计算机上的识别信息

    例如,您将目标计算机中的一些“东西”组合起来,比如主硬盘驱动器卷id、创建时间戳或系统卷(只是为了保持简单),然后编写一个Web服务来注册软件,并使用这些时间项生成令牌,然后通过任何机制将令牌放回用户计算机。然后,当播放器运行时,您的软件通过相同的算法计算令牌,如果不匹配,则会出现许可错误

    你现在有了新的问题。1) 人们可以检查本地可执行文件以了解令牌算法,以及它计算OK/NOT OK标志的位置,并修补代码,使其可以解密视频流。2) 如果有人因为硬盘驱动器故障而重建了计算机,他们的软件将不再工作。所以,你也必须明白这一点,除非你想让不开心的客户在facebook上说你的坏话。3) 人们知道,当你停业、死亡等时,你的授权服务器会宕机。因此,他们一开始不会购买你的受保护视频。4)你将浪费大量时间,而这些时间本可以用来更有效地赚钱做一些有用的事。5) 你也会浪费钱

    通过使用DVD及其本机拷贝保护,您不会浪费很多时间,但您也不会得到太多保护很多人都足够聪明,可以在他们喜欢的搜索引擎上键入“解密DVD”。这就是“小林丸情节”


    忘了提最后一个棺材钉子。C#是一种通过模糊性实现安全性的糟糕方法,因为CLR很容易被反汇编,您还需要混淆您的C#代码——反编译/调试原生x85代码更容易。

    您可以尝试(商业、付费),这适用于任何流

    我知道没有防弹加密,我可能会添加一个平均保护。但我还是想尽我最大的努力寻找选择。如果找不到更好的解决方案,我可以尝试置乱视频。感谢您哪种语言更好?CLR代码比本机X86代码更容易反编译——使用CLR时编译器会保留大量符号信息。源语言并不重要,只要它是本机代码。我已经阅读了VisualStudio中的非托管C++生成本地代码,但我从未亲自确认过。当然,你会花更多的时间编写非托管C++,因为它写起来更难,尤其是如果你不熟练的话。