我实在想不出好办法了。
能想到的就是跟客户要硬件编号。然后把这个编号重新编码,
然后把重新编码后的东西切割成很多段,
然后分别对每段字符串进行比较,并拦截多种程序流。
******************
此外,还在程序中设置大量的其他字符串比较,作为诱饵,
******************
这样一来,让破解者在几十个诱饵和几十个真正的验证的排列组合中迷路。
!!!!!!!!!!!!!!!!!!!!!
但是程序中检测硬件编号的动作,以及重新编码的动作肯定又被Cracker追踪了。。。
看来关键的就是这个重新编码的动作。算法必须格外复杂,而且绝不能用别人现成的。
****************
****************
****************
****************
(我不想用什么壳啊、CRC啊什么的,有点嫌麻烦,而且对壳一点也不放心)
上述思路,各位前辈认为如何?盼望多多指点。
我就不信真的斗不过Cracker!Cracker本人若能支着,就积了大德了。嘿嘿。
我现在手头真的有好程序。
------解决方案--------------------------------------------------------
若是行,人家江民杀毒软件早就用了。。。
------解决方案--------------------------------------------------------
你那样做是没用的,你把加密算法放到那一块连续的地方.人家也不需要多了解你的加密算法.直接弄文件补丁,或者内存补丁.好点的方法是把你的加密算法分成N部分,然后像一盘散沙一样分散在程序中.让他慢慢去收集齐在破解.没有耐心的 Cracker都会放弃的.
------解决方案--------------------------------------------------------
已深,万籁俱寂。忽然屋顶瓦片响动,偶从草榻上一跃而起,低声喝问:“谁?!”屋顶有人答道:“阁下请出来说话。”偶飞身跃入院中,但见屋脊上站立一人,打扮颇为怪异,似是异邦之人。背负一口长剑,剑柄镶了一颗极大的珠子,月光之下发出幽幽绿光。偶心头一凛,想起一人,拱手道:“原来是还珠楼主,楼主久不到中原,不知今日所来为何?”还珠楼主却不答话,一扬手,一道白光直射下来,偶不敢怠慢,侧身让过,卸了暗器飞来之势,探手将暗器接住,却是一张纸。还珠楼主一笑:“今日特来发帖。”偶再看那张纸,虽是好纸,却已发黄,上写道:“恭请阁下于猴年马月猪日羊时参加英雄会”。再一想,那猴年马月已是三年之前了。偶不禁冷笑道:“楼主,这帖子未免也太老了吧!”
------解决方案--------------------------------------------------------
楼主写了不少
------解决方案--------------------------------------------------------
PilotEdit是这样保护软件的,迄今为止还没有比较令人满意的破解版(PilotEdit 是VC开发的,仅供参考):
1。获取用户的硬盘或CPU的序列号作为机器码。
2。用RSA算法的私钥对机器码加密作为用户的注册码。在程序中用公钥进行解密来验证注册码是否正确。
实现了以上两步后,Cracker不可能生成序列号生成器之类的软件。而一个注册码只能用在一台机器上。
Cracker要破解这样的软件,唯一的方法是改变程序的可执行文件。我们可以再采取措施对程序的可执行文件进行校验。
一个比较笨的方法是把程序的可执行文件读入内存,然后进行CRC校验。
程序中做几次CRC校验,再验证几次注册码,代码再写得乱一点,基本上可以让这个程序很难破解。
而即使破解后,Cracker必须提供一个exe文件,而很多用户都不愿使用来路不明的被crack过的exe文件。
所以这些措施仍然可以保护软件的。