Mem*_*eak 3 c# encryption winforms anti-piracy
可能重复:
保护.NET代码免受逆向工程?
我们只是用C#winforms开发一个应用程序,有没有什么好的加密方法来帮助我们防止盗版?我看到一些软件可能需要硬件支持来保护他们的软件,如何实现呢?提前致谢 !
Not*_*tMe 17
好的,你在这里混合了一些不同的概念.
加密旨在使人们远离您的数据.
混淆用于尝试并防止对代码进行逆向工程.
许可用于确保使用的副本数量不超过购买的数量.
您将需要研究混淆和软件许可.混淆是因为您希望阻止它们对您的许可方案进行逆向工程,以便复制它或者只是绕过它.
从许可角度来看,有许多不同的途径.硬件保护意味着您的应用程序查询某种类型的加密狗以检索有效密钥.如果加密狗存在并且密钥正常,那么您的应用程序就会运行.
软件许可可能有点复杂.您通常会有某种类型的电话主页代码,它应该将人类可读/可键入密钥的加密版本发送到您的许可服务器以进行验证.您需要包含某些类型的其他机器信息(例如硬盘驱动器序列号),以确保不会为不同的盒子多次激活该键.
有时,激活过程会下载其他文件以使应用程序运行.我希望这能给你一个开始.
Joe*_*orn 10
在花费太多时间和精力来阻止盗版之前,请确保您有一套明确的工作回报目标,这些目标将证明花费资源.
这似乎并不简单 - 有很多证据表明大多数海盗都不会购买你的产品,无论你的安全性有多好.如果他们无法破解它们,他们就会去其他地方或者不去.这意味着停止盗版带来的额外销售额很少.更重要的是,盗版者甚至可以帮助推广您的软件,因此将其锁定可能会降低您的总销售额.
所以你需要考虑为什么你要阻止盗版给你或你的公司带来净收益而不是阻止海盗获得收益.这不是一个零和的情况,所以最大限度地利用自己的利润的方法通常包括允许海盗也有他们的时刻.一个基本的混淆器或天真的产品钥匙(它不一定是牢不可破的)可能可以很好地捕捉到一些悬而未决的果实,但是对你来说远远超出它可能没有好处.
您可能也想阅读这些内容:
如何防止我的代码被盗?
保护.NET应用程序
| 归档时间: |
|
| 查看次数: |
2033 次 |
| 最近记录: |