码迷,mamicode.com
首页 > 其他好文 > 详细

如何有效的防止程序被破解

时间:2017-02-25 15:49:50      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:建议   汇编   比较   来讲   程序启动   没有   破解   启动   style   

网络上关于防止程序被破解的文章有很多,无外以下几种:

1.高强度的验证

  这里说的高强度就是cdkey加密算法的强度,但再强,都无法解决“暴破”的问题,即绕过验证。

2.给程序加壳

  这个可以有,但是要面对脱壳,一旦脱壳,对于一个破解高手来说,就没有什么难度了。

3.设置暗桩

  程序启动时,验证一部份cdkey,通过后,程序正常运行。

  当程序运行到一定的时间,这个时间最好是随机,最好是能几个小时以上,然后验证另一部份cdkey,一旦验证失败,后面的动作你们自己想。

4.核心代码移至网络

  程序验证通过后,将cdkey发送到网络,如果验证cdkey有效后,返回核心代码到程序,这种是我比较推崇的办法,其好处和安全性不言而喻。

 

网上其它的一些办法,比方说在程序中添加大量无意义的汇编代码,或者是用try...except...把验证写到except下,这都是用来扰乱破解者的视线,增加破解的难度,但是对于开发者自身来讲,程序可读性变差不说,代码也难以维护,要是面对一个执着的破解高手,被破掉也是早晚的事。毕竟你的防守套路已经写死在程序中,而破解人的进攻套路是五花八门的,以不变应万变,早晚要死在万变手上。

有条件的,我个人建议采用第4种,没有条件的,就采用第3种,或者1+2+3,要是不嫌累的话。

 

 

如何有效的防止程序被破解

标签:建议   汇编   比较   来讲   程序启动   没有   破解   启动   style   

原文地址:http://www.cnblogs.com/rockmmm/p/6441903.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!