破解软件加密狗(加密锁)一些常见思路

对于这种破解,目前破解软件加密狗(加密锁)一些常见思路。软件开发者还是有相应的一些对策的下将如何编写平安可靠的代码,使得这种类似的破解方法失效。
 
俗程“加密狗”对于加密狗的破解大致可以分为三种方法,硬件加密锁。一种是通过硬件克隆或者复制,一种是通过SoftICEDebug工具调试跟踪解密,一种是通过编写拦截顺序修改软件和加密狗之间的通讯。
 
因为国产加密狗公司一般没有核心加密芯片的制造能力,硬件克隆复制主要是针对国产芯片的加密狗。因此有些使用了市场上通用的芯片,破解者分析出芯片电路以及芯片里写的内容后,就可以立刻复制或克隆一个完全相同的加密狗。不过国外的加密狗就无法使用这种方法,国外加密狗硬件使用的平安性很好的自己研制开发的芯片,通常很难进行复制,而且现在国内加密狗也在使用进口的智能卡芯片,因此这种硬件克隆的解密方法用处越来越少。
 
由于软件的复杂度越来越高,对于Debug调试破解。编译器产生的代码也越来越多,通过反汇编等方法跟踪调式破解的复杂度已经变得越来越高,破解利息也越来越高,目前已经很少有人愿意花费大量精力进行如此复杂的破解,除非被破解的软件具有极高的价值。
 
也易于实现,目前加密锁(加密狗)解密破解工作主要集中在应用顺序与加密动态库之间的通讯拦截。这种方法利息较低。对待以单片机等芯片为核心的加密锁(加密狗)具有不错的解密效果。
 
还可以了解加密狗技术的最新进展。由于加密锁(加密狗)应用顺序接口(API基本上都是公开的因此从网上可以很容易下载到加密狗的编程接口API用户手册、和其它相关资料。
 
某个国内知名的美国加密狗提供商的一款很有名的加密狗,例如。其全部编程资料就可以从网上获取到经过对这些资料的分析,知道这个加密锁(加密狗)有64个内存单元,其中56个可以被用户使用,这些单元中的每一个都可以被用为三种类型之一:算法、数据值和计数器。
 
数据值是用户存储在可读写的单元中的数据,数据值比较好理解。就和存储在硬盘里一样,用户可以使用Read函数读出存储单元里面的数据,也可以使用Write函数保管自己的信息到存储单元。
 
软件开发商在其软件中使用Decrement函数可以把其值减一,计数器是这样一种单元。当计数器和某种活动的activ算法关联时,计数器为零则会封闭(deactiv这个算法。
 
算法(algorithm这样一种技术,算法单元较难理解一些。用QueriqueryData函数访问它其中queryData查询值,上述函数有一个返回值,被加密的顺序知道一组这样的查询值/返回值对,需要加密的地方,用上述函数检查狗的存在和真伪。对于被指定为算法的单元,软件上是无法读和修改的即使你合法的用户也是如此,理解这种技术除了增加顺序复杂性以外,主要是为了对付使用模拟器技术的破解。
 
返回值为0时候表示胜利。此加密锁(加密狗)所有API函数调用都会有返回值。
 
破解思路就出来了就是使用我自己的工具(如VBVC等)重新编写构造一个和加密狗API一样的DLL动态库文件,因此。里面也包含ReadWrite等全部API中包含的函数,使用的参量及返回值和原来的函数一样,所有函数返回零。然后对QueriRead函数进行处置,返回应用软件需要的数值即可。
 
直接替换掉原来的DLL文件,这个新的DLL文件编写胜利后。这时候再运行应用软件,软件访问加密狗的操作就全部会被拦截,拦截顺序永远会返回正确的数据给软件,从而实现了模拟加密狗的运行。

 

X

点击这里给我发消息
微信号:crackgou