我先说 我知道 不可能阻止您的软件进行逆向工程。
但是,当我查看 crackmes.de 时,有难度等级为 8 和 9(从 1 到 10 的等级)的裂纹。这些破解版正在被天才大脑破解,他们写了一个关于如何破解它的教程。有时,此类教程长达 13 页以上!
当我尝试制作一种快感时,他们会在 10 分钟内将其破解。后面是20行长的“如何破解”教程。
所以问题是:
最佳答案
免责声明 :我为一家软件保护工具供应商 ( Wibu-Systems ) 工作。
停止破解是我们所做的一切,也是我们自 1989 年以来所做的一切。因此,我们彻底了解 SW 是如何被破解的,以及如何避免它。底线:只有使用正确实现的安全硬件加密狗,才能保证不被破解。
最强大的防破解依赖于加密(对称或公钥)。加密可以非常强大,但除非 key 存储/生成同样强大,否则它可能会受到攻击。许多其他方法也是可能的,即使加密良好,除非您知道自己在做什么。纯软件解决方案必须将 key 存储在易于发现或容易受到中间人攻击的地方。存储在 Web 服务器上的 key 也是如此。即使具有良好的加密和安全的 key 存储,除非您可以检测到调试器,否则破解者只能获取内存快照并从中构建 exe。因此,您在任何时候都不需要在内存中完全解密,并有一些代码用于调试器检测。混淆、死代码等不会长时间减慢它们的速度,因为它们不会通过从头开始并通过您的代码来破解。他们远比这聪明得多。只需查看网上的一些破解方法视频,即可了解如何找到安全检测代码并从那里破解。
简短的无耻宣传:我们的硬件系统从未被破解。我们有一个主要客户,仅将其用于反逆向工程。所以我们知道这是可以做到的。
关于reverse-engineering - 如何做好防裂保护?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5551016/