Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Security 需要设计建议';防裂';软件_Security - Fatal编程技术网

Security 需要设计建议';防裂';软件

Security 需要设计建议';防裂';软件,security,Security,我目前正在从事一个项目,我需要创建一些架构、框架或任何标准,通过这些标准,我可以“至少”增加软件的破解方法,即增加软件安全性。现在已经有不同的方法来激活软件,包括在线激活、密钥等。我目前也在研究一些研究论文。但是还有很多事情我想讨论 有人能带我去一些像样的论坛、邮件列表或类似的地方吗?或者任何其他帮助都将不胜感激。当您的产品破裂时,这不是成功的标志吗?:) 严肃地说,一种方法是使用序列化为XML的许可证对象,然后使用公钥/私钥对进行加密。然后在运行时将它们读回、反序列化和处理,以确保它们有效 但

我目前正在从事一个项目,我需要创建一些架构、框架或任何标准,通过这些标准,我可以“至少”增加软件的破解方法,即增加软件安全性。现在已经有不同的方法来激活软件,包括在线激活、密钥等。我目前也在研究一些研究论文。但是还有很多事情我想讨论


有人能带我去一些像样的论坛、邮件列表或类似的地方吗?或者任何其他帮助都将不胜感激。

当您的产品破裂时,这不是成功的标志吗?:)

严肃地说,一种方法是使用序列化为XML的许可证对象,然后使用公钥/私钥对进行加密。然后在运行时将它们读回、反序列化和处理,以确保它们有效

但是仍然存在无处不在的“IsValid()”方法,可以破解该方法以始终返回true

您甚至可以将该方法放入已签名的程序集中以防止篡改,但您所做的只是创建另一层“IsValid()”,该层也可以被破解

我们使用许可证打开或关闭软件中的各种功能,并验证支持/升级周期。但这只适用于我们的合法客户。任何想绕过它的人都可能

我们相信我们的合法客户不会试图绕过许可证,我们也承认我们的非法客户会找到办法

我们会浪费更多的钱,试图将我们的解决方案的“防篡改”性质推广给盗版软件的人

P>另外,你必须考虑到我们合法客户的痛苦,并要求他们从他们的在线帐号页面粘贴许可证字符串,就像我想让他们通过一样痛苦。为什么要为潜在客户设置额外的进入壁垒


无论如何,根据您已经准备好的解决方案,我上面的描述可能会为您提供一些想法,以降低有人破解您的产品的可能性。

我将告诉您最接近“防裂”的东西:web应用程序

桌面应用程序注定要失败,还有很多其他原因,但让应用程序在浏览器中“在云中”运行,可以让您对安全性有更多的控制


桌面软件在客户端的计算机上运行,因此客户端可以完全访问它。一个web应用程序在你的服务器上运行,因此客户端只能看到它的一小部分。

正如其他人所提到的,一旦你将这些部分释放给用户,你就放弃了对他们的控制。一个专门的黑客可以改变代码做任何他们想做的事。如果你想要更接近防裂的东西,不要向用户透露。把它放在服务器上。通过Internet提供对应用程序的访问,或者,如果用户需要桌面客户端,则在服务器上保留关键位,并通过web服务提供对它们的访问

正如其他人所说,没有办法创建一个完整的防裂软件,但有办法使破解软件变得更加困难;这些技术中的大多数实际上被坏人用来将恶意软件隐藏在二进制文件中,而游戏公司则用它们来增加破解和复制游戏的难度


如果你真的很认真的想做这件事,你可以检查一下,例如,像UPX这样的可执行打包程序是做什么的。但是,您还需要实现解包程序。实际上我并不建议你这么做,但研究游戏保护器和二进制混淆可能会对你的任务有所帮助。

你需要从渗透当地黑客团伙开始,伪装成一个11岁想要“破解”的孩子。一旦你赢得了他们的信任,你就可以了解他们最难破解的功能。当你秘密地将“不可破解”软件发布到本地留言板时,你可以看到他们用它做了什么。建立在你的内在知识之上,直到他们不再破解你的软件。完成后,让大家知道你的身份。理想情况下,这将被视为背叛的迹象,你正在与他们作对。希望这将导致他们联系当地社区以外的其他黑客攻击您的软件


继续,直到你到达黑客黑手党的顶端。把你的论文写成一本书,卖给HBO。

正如努特所说,你发布到客户机器上的任何代码都是可以破解的

不要试着说“不可破坏”,试着说“有足够的威慑力来合理地保护我的资产。”

有很多方法可以尝试增加破解成本。其中大多数都会让你付出代价,但有一件事你可以做,那就是在增加破解成本的同时降低成本:经常交付

破解任何给定二进制文件的成本都是有限的。被破解的二进制文件数量增加了成本。如果每周都发布新功能,基本上将用户分为两组:

  • 那些不需要最新功能的用户可以等待破解
  • 那些确实需要最新功能并愿意为您的软件付费的人
  • 通过使用传统的反破解技术,您可以成倍增加破解一个二进制an的成本,从而扩大新功能发布与黑市可用之间的差距。最重要的是,你的成本会下降,你在一段时间内提供的价值会上升——这就是免费的原因


    你发布的频率越高,你就会发现质量和价值越高,成本越低,人们偷你软件的可能性就越小。

    首先,你是用什么语言写的? 确实,防裂计划是不可能实现的,但你总是可以让它变得更难。对应用程序安全性的天真方法意味着程序可以在几分钟内被破解。一些提示:

    如果要部署到虚拟机,那就太糟糕了。没有妈妈