我正在开发一些应用程序,它将获得硬盘序列号,然后我将使用该硬盘序列号进行产品许可证(cd-key)注册。现在我可以遇到的问题是:
我看到有更多这样的问题,但无法找到答案,所以现在我问这里!
------已编辑/已添加:-------
如下所述,我忘了所有.net都可以在几秒内反编译!所以...
制作自己的安装程序。 为什么? 如果我输入一个安装程序,你输入串口,只有串口可以使用然后安装软件,它的作用是什么?它将我的软件提取到你的计算机上,你再次拥有“.net”exe,你可以轻松地反编译并为它做一个破解,所以在哪里用串口进行安装!或者如果我的软件被一些混淆器“保护”,那么在这里安装串口是不可能的,我可以在我的软件中简单地包括串行注册并使用一些布尔商店注册= 1 || 0
我从这里收到了一个人的电子邮件,顺便说一下。 duno,你收到了我的邮件:)他说了一些聪明的东西,为什么有些人不回答我的问题,这个讨论和他说的是:“害怕别人会看到我的代码,有多糟糕。”所以人们只是不想花时间在这上面。好吧,这不是问题,我知道我的代码是大“minestrone”,大混乱多字(变量)一些英语一些克罗地亚语所以很好我的软件工作这很重要,我知道我成功*我们都成功*每个人都知道的事情(另一个更多或更好。无论如何,这不是问题,问题是,我不希望软件是开源的,让我说我的软件是“photoshop”,现在有人下载点击那里,并有完整的代码,可以轻松复制粘贴更改一些事情,没有问题他做了很好的申请:)
自定义编译器?有人有实验吗?一段时间会好吗? :)
将来使用哪种其他解决方案或语言可以避免这种“开源”.net!我一直在环顾四周,所以对于vb.net,c#,c ++都是基于.net所以都是一样的。 vb6我又喜欢同样的事情。他们都可以轻松反应!什么语言不能这么容易反编译?我应该切换到汇编程序吗? :我开玩笑,我希望! :p
也许我太强调了,做了很多工作! duno你决定:)
请仔细阅读我的问题,请不要回答我说“盗版可以停止BLA BLA”和那些事情。这是我的问题所在!谢谢!
对于大胆的大人物抱歉,但有些人只阅读标题,然后回答愚蠢!如果你想谈论它,那么阅读问题,否则不要发布一些愚蠢的事情
答案 0 :(得分:2)
其他建议:
仅仅因为存在盗版行为,不要让您的客户体验不好。使用可重复使用的东西(如序列号或密钥文件),投资一个好的混淆器,让某些人更难检查你的代码,但最重要的是:让你的应用程序脱颖而出,以便人们购买它。即使你没有要求它,我也要说 - 你不能通过对你的程序强制执行orwellian监视来阻止盗版。这将驱使客户离开,因为使用您的应用程序是一件很麻烦的事情。使用串行或密钥文件,您仍然可以获得某种保护,客户喜欢它,因为它易于使用,如果他的计算机出现故障或星标不对,他就不必打电话给您/写支持票。海盗最终会打破它,但你的顾客很高兴,这才是最重要的。
答案 1 :(得分:2)
让我先回答你的问题:
现在让我给你一个对我很好的建议。使用机器帐户的SID(不要与具有众所周知的SID的SYSTEM混淆)。在你使用NewSid(顺便说一下已经由MS退休)之前,这需要更多的努力来改变,特别是在域环境中,并且可能具有非常令人讨厌和无法预料的效果。因此,如果要将应用程序绑定到Windows安装,则SID就足够了。 SID与您可以创建的UUID具有相同的优势,但它不像您存储在注册表或文件中的UUID那样易于操作。
哦,在我忘记提及它之前。是的,即使使用SID也可以通过各种方式“破解”。但它平衡了用户对安全性需求的便利性。
答案 2 :(得分:0)
如果对最终用户/攻击者有价值,那么你所依赖的任何东西都可以并且将被欺骗。因此,将许可证锁定到HDD序列号不会对攻击者造成影响,但会严重扰乱您的客户。
处理器序列号也是如此 - 内联弹出一些代码以更改应用程序的读取内容太容易了。
你唯一合理的选择是加密狗 - 即特定的硬件,或者让他们注册并使用在线连接运行的方式,这样你就可以使用你控制的元素来验证它们(尽管如此,如果你的应用程序很高足够的价值,期望加密狗也被黑客攻击/复制!)
您最大的问题可能是过度安全 - 如果您以任何方式弄错了,您将疏远您的客户群。
人们会定期升级发生故障的硬盘或太小的硬盘,以及计算机中的大多数其他组件。如果你停止使用你的产品,即使是几天,他们也可能会去其他地方看看!
答案 3 :(得分:0)
你可以做你的建议,但也有问题。您所建议的是在许可世界中称为“机器绑定”。有一些商业工具可以帮到你(免责声明:我为一个这样的提供者工作Wibu-Systems)。你提出的建议有一些优点和缺点:
优点:不需要单独的硬件(加密狗),您可以使用自己的简单解决方案在基本级别实施。
缺点:可以在几分钟内破解,当用户更改硬件配置或将应用程序移动到新PC时会为用户创建问题,滚动自己会在用户显示的区域中引入新的错误以前没有经验。为什么不使用商业解决方案?你也会编写自己的安装程序吗?你自己的编译器,链接器和调试器怎么样?