一. 打狗棒1.0简介.
打狗棒1.0是利用80386/80486的VM86技术模拟软件狗, 来实现解密的. 进行解密时,
软件先带狗运行, 用打狗棒得到软件狗的相关数据; 然后拿去软件狗, 运行打狗棒, 则
软件可以无狗运行了.
二. 运行环境.
它运行在DOS 3.0以上版本, 注意, 不支持HIMEM.SYS和QEMM.EXE, 因此, CONFIG.SYS
的配置最好如下:
FILES=30
BUFFERS=30
三. 安装软件.
把软盘上的CANE.EXE和*.LAD拷贝到硬盘上即可(未加密).
四. 运行软件.
在安装软件的当前目录键入CANE /H, 然后回车, 则显示帮助信息:
-------------------------HELP------------------------
CANE -----Emulate the softdog
CANE /Axxx -----Analyse the softdog,xxx=extend mem kept
CANE /R -----Read the softdog file
CANE /W -----Write the softdog file
CANE /U -----Free memory and to dos
CANE /H -----Help
其中, CANE 表示模拟软件狗运行软件.
CANE /Axxx 表示分析软件狗相关的数据, xxx表示为数据留出的扩展内存
数(以K为单位).
CANE /R 表示读已分析的软件狗的数据.
CANE /W 表示把分析的软件狗的数据写到文件中.
CANE /U 表示把打狗棒程序从内存中撤消.
CANE /H 表示帮助.
因此, A 要解密一个软件狗, 步骤如下:
⑴. 把软件狗插到打印口, 进入到打狗棒所在的目录, 键入CANE /Axxx(其中
xxx为要留的以K为单位的扩展内存数),然后运行要解密的软件.
⑵. 运行完毕后, 回到打狗棒所在的目录, 运行CANE /W, 把软件狗相关的数据
写到当前目录下的文件中.
⑶. 运行CANE /U 退出VM86模式,回到实模式下.
B 要无狗运行软件, 则在打狗棒所在的目录下运行CANE然后回车, 再运行
CANE /R然后回车, 再运行原来的软件即可.
五. 软件中附带UCDOS5.0单用户版的解密数据(参考数据, 对于不同用户数据不一定相同),
即CANE0378.LAD和CANE03BC.LAD.
六. *.LAD的数据格式
*.LAD文件的数据格式如下:
第1,2字节: 未用
第3,4,5,6: 数据长度
第7字节开始(存放数据): 属性 端口 数据
...
其中属性占1个字节, 00H: 输入一字节
01H: 输入一字
10H: 输出一字节
11H: 输出一字
端口占2个字节, 为输入/输出数据的端口, 如并口数据端口为0378H
数据是输入输出的数据, 如果属性为X个字节, 则占X字节,
七. 程序的编译和连接
在当前目录下, 键入命令行: pasm cane, 然后回车即可.
注意, 必须在PATH中设置BORLANDC++的路径. 例如, 如果BORLANDC++的目录为
C:\BORLANDC, 则在AUTOEXEC.BAT文件的PATH中加入C:\BORLANDC\BIN;
其实做为软件开发者,研究好软件加密的确很重要,不过也很有必要多了解一些关于加密狗解密和破解的知识,加密和破解就像矛和盾一样,对于解密知识了解的越多,那么编写的加密代码就越好,要知道加密永远都比解密要容易的多,只有知己知彼,方能百战百胜。
硬件加密锁,俗程“加密狗”,对于加密狗的破解大致可以分为三种方法,一种是通过硬件克隆或者复制,一种是通过SoftICE等Debug工具调试跟踪解密,一种是通过编写拦截程序修改软件和加密狗之间的通讯。
硬件克隆复制主要是针对国产芯片的加密狗,因为国产加密狗公司一般没有核心加密芯片的制造能力,因此有些使用了市场上通用的芯片,破解者分析出芯片电路以及芯片里写的内容后,就可以立刻复制或克隆一个完全相同的加密狗。不过国外的加密狗就无法使用这种方法,国外加密狗硬件使用的是安全性很好的自己研制开发的芯片,通常很难进行复制,而且现在国内加密狗也在使用进口的智能卡芯片,因此这种硬件克隆的解密方法用处越来越少。
对于Debug调试破解,由于软件的复杂度越来越高,编译器产生的代码也越来越多,通过反汇编等方法跟踪调式破解的复杂度已经变得越来越高,破解成本也越来越高,目前已经很少有人愿意花费大量精力进行如此复杂的破解,除非被破解的软件具有极高的价值。
目前加密锁(加密狗)的解密破解工作主要集中在应用程序与加密动态库之间的通讯拦截。这种方法成本较低,也易于实现,对待以单片机等芯片为核心的加密锁(加密狗)具有不错的解密效果。
由于加密锁(加密狗)的应用程序接口(API)基本上都是公开的,因此从网上可以很容易下载到加密狗的编程接口API、用户手册、和其它相关资料,还可以了解加密狗技术的最新进展。
例如,某个国内知名的美国加密狗提供商的一款很有名的加密狗,其全部编程资料就可以从网上获取到,经过对这些资料的分析,我们知道这个加密锁(加密狗)有64个内存单元,其中56个可以被用户使用,这些单元中的每一个都可以被用为三种类型之一:算法、数据值和计数器。
数据值比较好理解,数据值是用户存储在可读写的单元中的数据,就和存储在硬盘里一样,用户可以使用Read函数读出存储单元里面的数据,也可以使用Write函数保存自己的信息到存储单元。
计数器是这样一种单元,软件开发商在其软件中使用Decrement函数可以把其值减一,当计数器和某种活动的(active)算法关联时,计数器为零则会封闭(deactive)这个算法。
算法单元较难理解一些,算法(algorithm)是这样一种技术,你用Query(queryData)函数访问它,其中queryData是查询值,上述函数有一个返回值,被加密的程序知道一组这样的查询值/返回值对,在需要加密的地方,用上述函数检查狗的存在和真伪。对于被指定为算法的单元,软件上是无法读和修改的,即使你是合法的用户也是如此,我理解这种技术除了增加程序复杂性以外,主要是为了对付使用模拟器技术的破解。
此加密锁(加密狗)的所有API函数调用都会有返回值,返回值为0的时候表示成功。
因此,破解思路就出来了,就是使用我们自己的工具(如VB、VC等)重新编写构造一个和加密狗API一样的DLL动态库文件,里面也包含Read、Write等全部API中包含的函数,使用的参量及返回值和原来的函数一样,所有函数返回零。然后对Query、Read函数进行处理,返回应用软件需要的数值即可。
这个新的DLL文件编写成功后,直接替换掉原来的DLL文件,这时候再运行应用软件,软件访问加密狗的操作就全部会被拦截,拦截程序永远会返回正确的数据给软件,从而实现了模拟加密狗的运行。
以上是目前破解软件加密狗(加密锁)的一些常见思路,对于这种破解,软件开发者还是有相应的一些对策的,下一回我将在《软件加密锁编程技巧》一文中具体介绍一下软件开发者将如何编写安全可靠的代码,使得这种类似的破解方法失效。
入一字节
01H: 输入一字
10H: 输出一字节
11H: 输出一字
端口占2个字节, 为输入/输出数据的端口, 如并口数据端口为0378H
数据是输入输出的数据, 如果属性为X个字节, 则占X字节,
七. 程序的编译和连接
在当前目
打狗专用工具有哪些一般来说打狗的专用工具比如包子啊比如打个伴这些都是打狗的专用工具打狗棒单就不说了很多很多字的说说像这个黄蓉的打狗棒还有这个洪七公的打狗棒罗斯很出名的那包子打狗肯定不用说了包子大狗有去无回嘛是不是这都是一些很出名的这个那些谚语了
是加密锁。
加密锁是一种插在计算机并行口上的软硬件结合的加密产品(新型加密锁也有usb口的)。一般都有几十或几百字节的非易失性存储空间可供读写,现较新的狗(加密锁)内部还包含了单片机。
加密狗的应用程序接口(API)基本上都是公开的。随着解密技术的发展,单片机加密狗由于其算法简单,存储空间小,容易被硬件复制等原因,正逐渐被市场所淘汰。
扩展资料
工作原理
加密锁是在软件运行过程中,通过与加密锁交换数据来实现加密的。加密锁内置单片机电路,使加密锁具有判断和分析的处理能力,提高了主动防解密能力,这种加密产品称之为“智能”加密锁。
加密锁的嵌入式单片机包含加密算法软件,软件写入单片机后,不能再读出。这样就无法复制加密锁硬件,同时加密算法具有不可预测性和不可逆性。
参考资料来源:百度百科—计算机加密锁
简单,研究啥啊,有研究的时间直接搞一套盗版的。现在软件都免费了,还费那劲。。
血管内壁撕裂是怎么回事? 血管破裂的原因一般有如下几种:1、生理性原因,常由于人的年纪逐渐增大、皮下脂肪和胶原纤维减少,而血管本身的弹力纤维也减少,这样就会使皮下的毛细血管脆性增大,在较小外力的作用下...
创维酷开系统怎么安装第三方软件 创维酷开电视破解U盘安装第三方应用软件方法:下载好要安装的第三方软件存放到U盘,U盘插入电视。第一步:打开酷开电视找到—酷开应用圈—点击进入。第二步:在酷开应用圈内部—...
谁有魔塔破解版,安卓手机的 你搜索“安卓 破解”找到爱吾或7723,里面有魔塔破解,不只一种。星际争霸2 现在应该是自由之翼的末期了,但就自由之翼而言,平衡性已经相当不错了。只是由于地图的特性,现阶段...
求elevate pro的破解版!!! 您好。 Elevate这个软件的iOS版本破解新版本弄起来非常糟,我只有安卓版. (v3.11, 最新版, 安装时提示证书篡改请忽略.) 如果安卓版正是您想要的...
如何破解乱数表 对于精炼时候的那个成功率到底是哪里来的,有着诸多的说法,但目前为止我认为最为可信的,就是所谓的乱数表法。大家可以想,为什么改版之后精炼的成功率从原来的1/3,1/9,1/27之类的变成...
示波器是不是八个div 1、一:X轴10格,Y轴8格。二:V/DIV中 V是电压伏特的意思 DIV是格的意思 V/DIV指的是示波器的时基单位,也就是示波器上面每格表示的幅值。“t/DIV”的刻度值表...