-
-
高手挑战!
-
发表于:
2004-7-3 20:25
1331
-
CuteSer钢结构节点设计工具箱V2.2.1 作者很牛比 无所谓,我反正想练加密。发现破戒版我就改加密算法
〖公告〗D版的程序为什么会错误百出?
这里我想以一个软件开发者的身份来探讨一下加密和解密过程中,为什么会出现一些问题。我的意思是想告诉大家,想让一个被破解的程序出现错误是多么简单,而如果破解者想找出这样的定时炸弹,是多么的费劲不讨好。
请先看下面的一段代码:
//----开始加密-------
WORD handle[16], p1, p2, retcode;
DWORD lp1, lp2;
BYTE buffer[1024];
p1 = 0xc44c;
p2 = 0xc8f8;
retcode = Encrypt(Dog_Hunt, &handle[0], &lp1, &lp2, &p1, &p2, &p3, &p4, buffer); //Encrypt(是自己写的加密函数或者是加密锁公司提供的加密函数
//--------求整体稳定系数φb-------------根据GB50017-2003规范的附录一
double dLam_y = (m_dBeamLength+20.*retcode )*1000./diy;
//----------加密完毕--------
很显然,当retcode等于0,就是说找到了狗或注册号的话,计算是没有问题的,如果retcode不等于0,即狗或注册号不对的话,计算结果就乱七八糟了,虽然结果的格式看起来跟正确的一模一样,而这种陷阱是随便哪里都可以放置的。解密的如果不是学土木结构专业的,不敢乱改的,所以,解密不完全的情况就时有发生。即便是这个版本被完全解密了,下一个版本把加密点重新换一下,就需要重新解密了,累啊。有这功夫,干点啥不好?:)
http://www.morgain.org/bbs/showthread.php?s=&threadid=1682
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课