对于软件防破解的探讨(谁编程熟悉的可尝试写个crackme)!
在对几款软件的破解中!发现个不错的防破解思路!可写成crackme来测试!获取自身md5文件大小和当前时间数据进行加密!提交给服务器解密对比!如果匹配··则返回加密的数据(返回数据中包含程序接下来运行所需要用到的变量值!)这样除非你能破掉程序加密算法否者不管你怎么修改··程序也都废了!
例:备案域名信息批量查询抢注程序(查询接口和密匙都是在线获取的!验证你为正版用户后才返回加密的字符串···程序解密验证成功后才赋值给变量)
试想这样的防破思路··你不能脱壳··脱壳或修改后文件信息不同····这样程序直接就验证失败了!
@aq8725 @骑乌龟的帅蜗牛 学习了{:301_997:},来点视频教程什么的 岂不是更好? wwjahl 发表于 2014-7-20 16:00
获取的加密数据可用服务器时间和一些干扰符进行加密!就算是真的验证数据也是每次获取都不同的!除非能知 ...
这么跟你说吧,无论你的验证有多复杂,加密有多先进,但是在汇编语言中,程序在返回结果真假之前,都需要一个验证,要不你怎么知道结果是真还是假?
关键点来了,他在验证后(汇编的跳转)直接跳转到结果为真那里去,我看你怎么防破解。人家不用内存爆出注册码,而是无论结果真假,都给你跳转到执行那步骤去。
不过,如果把程序关键代码放服务器上,运行某些功能先把变量提交到服务器,通过服务器时间加混淆字符串的形式返回加密变量的话,这个应该能防破解。但是有个弊端,就是服务器千万不能挂掉,或者网络一定要好,要不然运行程序要么卡死,要么直接程序挂掉。好像侠客站群就是采用的这种方式,但是不知道他怎么解决了程序运行流畅的问题,侠客我是真的破解不了。 不错的想法 好思路,顶你! 论坛有这种cm,破这种必须有一组正确的密钥,获取服务器的变量,在patch程序 可可和飘零最新版的差不多就这样的
{:301_978:}这种程序不好破呀。。。。。支持一下呀。哈哈。 貌似不错的思路。。。。。 不错学习了 认真学习下啊