示例图片三

新闻资讯

联系方式

加密狗复制克隆网
电  话:13528540969
联系人:  刘先生
Email:4642967@qq.com
网  址:www.crackdongle.com
地  址 :广东省深圳市地王大厦38层8801号

当前位置: 网站首页 > 新闻资讯 > 业界资讯
业界资讯

软件加密锁的技巧

 使用ET199 新的软件加密方法

传统的软件加密方法很多只是把加密锁当作存储设备,将简单的信息存储在里面,然后在软件运行时进行判断,也有许多开发商只是检测硬件是否存在,这些加密手段在现在的破解中十分容易,根本就没有任何加密价值,软件非常容易被盗版。后来有的加密锁中加入了自定义算法,但由于硬件的限制,算法也只有简单的加,减,左移,右移等,算法再怎么变化也就是这几种之间的组合,最主要的是这样的算法根本不能完成软件需要的功能。

智能卡技术的介入,使加密锁可以完成以前只有在PC中才可以实现的功能,软件开发商可以通过这样的步骤来实现软件加密。

1) 使用高级语言开发软件

2) 将核心算法转换成C51语言,进行编译。转换成ET199的可执行文件的方式存储在加密锁中。

3) 应用程序运行过程中,遇到关键算法时,将需要运行的数据传给ET199,ET199在加密锁内调用可执行文件内完功能,将结果传给应用程序,程序继续执行。

很多商业软件,如CAD 设计软件,工程预算软件,财务软件等里面包括很多数学计算的公式,对这样的软件进行高强度的加密是非常容易的。由于ET199 具有复杂的双精度浮点运算的能力,可以运算复杂的三角函数,因此能够满足这些软件的计算要求。那么原来在计算机内存中完成的运算完全可以植入到加密锁中运行,这样破解者只能跟踪到程序中的输入和输出,而不清楚加密锁中的算法是什么,在没有加密锁的情况下,程序中就没有计算的结果或结果不正确,从而软件不能运行。例如:我们可以将身份证15位升级到18 位的算法放入ET199 中运行,没有加密锁就没有正确的结果,软件必须靠加密锁来完成,从而不可破解。这种加密方法需要注意:

1) 算法要够复杂。算法如太简单,如只是一个加法,那么破解者完全可以通过输入和输出猜测到锁内的算法,使用软算法模拟,则程序被破解。

2) ET199 采用的是16 位的智能卡芯片,浮点运算能力非常快。能满足多数运算要求。如某些应用软件要求运算速度,可以将复杂公式中的部分放到加密锁内运行。

3) 加密锁内的公式不能是已经公开的或者是泄漏的公式,这些不安全的公式可以被破解者软件模拟。

4) 计算的结果一定要是软件使用到的,而不是在软件中比较。如加密过程是比较的话,破解者很容易找到比较的逻辑判断点,进行屏蔽等修改,

这样即使锁内的运算是多么复杂都是无效的。上述的方法是软件保护中最有效的,ET199 就是一个黑盒子,那么只要注意上面的四点说明,使用这样的方法进行保护的软件是不可能被破解的.

  验证时机的选择

软件在运行时,验证时机可以是没有规律的,是散乱的,那么要查找到所有的加密点则不是一件容易的事情。

虚假的检查

故意去把返回结果和一些错误的答案进行比较,比较结果一定应该是错误的,如果比较结果发现是正确的,说明有人正在试图破解您的软件。反击的手段可以有多种选择。

有迷惑性的代码

通常来说,编程人员和解密者都具有很好的逻辑思维能力,他们都会认为如果某段程序存在,那么就应该有这段程序存在的意义。编程人员为了代码的效率和空间会不断的剔除无用的代码,解密者也是这么理解开发人员的,他通过分析程序中保护代码的每一段指令来追索编程人员的保护思路。如果反其道而行之,故意添加大量的无用的代码,把程序复杂化,毕竟开发者是在拿高级语言编写程序,而解密者是在看汇编代码,想搞清楚哪些代码是有用的,哪些代码是无用的,并不是一件简单的事.

对于软件保护来说,有些技巧并不需要你掌握很多汇编或系统低层的知识也能够做到。我们都知道,不论您的软件采用何种方式来加密,很多情况下总是会归结为某些条件的判定,如果满足了这些条件,程序就会认为软件是允许执行下去的,否则就会报告一些错误并退出执行。不论你采用任何方法,这些代码是必然存在在你的程序中的,不要费心思去考虑如何消除这些代码,这些代码必然以这样或那样的形式存在,我们考虑的重点是如何有效的隐藏和保护这些代码.

 

 

 

分享到:
点击次数:  更新时间:2018-03-18 10:04:34  【打印此页】  【关闭