ET99加密狗破狗思路指导

合集下载

加密狗的概述与破解原理

加密狗的概述与破解原理

加密狗的概述与破解原理加密狗的概述:加密狗是外形酷似U盘的一种硬件设备,正名加密锁,后来发展成如今的一个软件保护的通俗行业名词,"加密狗"是一种插在计算机并行口上的软硬件结合的加密产品(新型加密狗也有usb口的)。

一般都有几十或几百字节的非易失性存储空间可供读写,现在较新的狗内部还包含了单片机。

软件开发者可以通过接口函数和软件狗进行数据交换(即对软件狗进行读写),来检查软件狗是否插在接口上;或者直接用软件狗附带的工具加密自己EXE文件(俗称"包壳")。

这样,软件开发者可以在软件中设置多处软件锁,利用软件狗做为钥匙来打开这些锁;如果没插软件狗或软件狗不对应,软件将不能正常执行。

加密狗通过在软件执行过程中和加密狗交换数据来实现加密的.加密狗内置单片机电路(也称CPU),使得加密狗具有判断、分析的处理能力,增强了主动的反解密能力。

这种加密产品称它为"智能型"加密狗.加密狗内置的单片机里包含有专用于加密的算法软件,该软件被写入单片机后,就不能再被读出。

这样,就保证了加密狗硬件不能被复制。

同时,加密算法是不可预知、不可逆的。

加密算法可以把一个数字或字符变换成一个整数,如DogConvert(1)=12345、DogConver t(A)=43565。

加密狗是为软件开发商提供的一种智能型的软件保护工具,它包含一个安装在计算机并行口或USB 口上的硬件,及一套适用于各种语言的接口软件和工具软件。

加密狗基于硬件保护技术,其目的是通过对软件与数据的保护防止知识产权被非法使用。

加密狗的工作原理:加密狗通过在软件执行过程中和加密狗交换数据来实现加密的.加密狗内置单片机电路(也称CPU),使得加密狗具有判断、分析的处理能力,增强了主动的反解密能力。

这种加密产品称它为"智能型"加密狗.加密狗内置的单片机里包含有专用于加密的算法软件,该软件被写入单片机后,就不能再被读出。

加密狗的用法

加密狗的用法

加密狗的用法
摘要:
一、加密狗简介
1.加密狗的定义
2.加密狗的作用
二、加密狗的分类
1.按功能分类
a.软件加密狗
b.硬件加密狗
2.按使用方式分类
a.一次性加密狗
b.非一次性加密狗
三、加密狗的使用方法
1.软件加密狗的使用
a.安装驱动程序
b.设置加密狗
c.运行需要加密的软件
2.硬件加密狗的使用
a.插入加密狗
b.设置加密狗
c.运行需要加密的软件
四、加密狗的注意事项
1.保护好加密狗
2.正确安装和使用加密狗
3.防止加密狗丢失或损坏
正文:
加密狗是一种用于保护软件版权和知识产权的工具,它能够对软件进行加密,使其在未经授权的情况下无法正常运行。

加密狗主要有软件加密狗和硬件加密狗两种类型,使用方法也有所不同。

软件加密狗通过安装驱动程序和设置加密狗来保护软件。

首先,需要在电脑上安装加密狗的驱动程序,然后设置加密狗,使其与需要加密的软件关联。

最后,运行需要加密的软件,软件加密狗会自动对其进行加密保护。

硬件加密狗则需要插入到电脑的USB 接口中,然后设置加密狗,与需要加密的软件关联。

之后,运行需要加密的软件,硬件加密狗会自动对其进行加密保护。

在使用加密狗时,需要注意保护好加密狗,防止丢失或损坏。

坚石诚信(Rockey) ET99加密狗备份

坚石诚信(Rockey) ET99加密狗备份

ET99(包含网络锁功能)是一款高速HID无驱并且可以同时支持软件保护和身份认证应用的多功能USB设备。

支持HAMC-MD5,3DES加解密,7个模块许可证。

其提供完善易用的API接口调用和高强度外壳(数据保护中心)两种加密方式。

同时,ET99是第一款价格不到十元,而性能等同于四五十元的加密锁产品。

ET99的发布在业界掀起价格风暴,为广大用户最大限度的节省了购买成本。

ET299采用通过国际安全机构检测和认证(EAL 4+和IT SEC认证)的国外进口高性能智能卡芯片,质量稳定,从根本上保证了加密的安全性。

ET299提供硬件1024位RSA运算、计时/计次加密与远程升级等加密手段。

另外,ET299可以无缝集成ET99的各种应用,即如果您是ET99的用户,软件不需要做任何改动,插上ET299就可以使用,使系统从单片机升级到智能卡。

优惠的价格帮您最大限度节省购买成本稳定的质量解决后顾之忧全系统兼容的HID无驱USB设备高速USB通讯模式单个硬件多种功能完善易用的API接口保护超强外壳保护工具(数据保护中心)。

不仅保护PE,.Net程序,还可以保护PDF,Flash和视频文件硬件内部支持HMAC-MD5运算3DES加解密(192位密钥)7个模块许可证全球唯一64位硬件序列号1000字节安全存储空间,用户级别读写控制8个32字节算法密钥支持网络锁功能Windows、Linux、Mac跨平台支持全球唯一ID 64位(bit)硬件算法硬件内完成HMAC-MD5运算PID(Product IDentification)产品ID,用户自定义,出厂默认为8个F,即“FFFFFFFF”,不区分大小写。

SO PIN(Super Officer Personal Identification Number) 管理员PIN码,用户自定义,出厂默认为16个F,即“FFFFFFFFFFFFFFFF”,不区分大小写。

User PIN(User Personal Identification Number) 用户PIN码,用户自定义,出厂默认为16个F,即“FFFFFFFFFFFFFFFF”,不区分大小写。

【破加密狗】-深思3乱弹2

【破加密狗】-深思3乱弹2
出内容,2字节接受记数,8字节接受内容,2字节备用输入,64字节系统保留。
这样,4-9字节为应用口令,20-21为读狗数据的字数,22-29为读狗的数据。
则必须在有狗的情况下,才可以得到数据,即无狗是无法破解的。
如果有狗,要复制的话,在知道了“应用口令”后,读出狗中的全部数据,
不是很难的事了。
深思3的狗,读写数据的指令,和打开锁的指令是相同的,只是数据接口的
具体参数不同而已。
深思3狗,打开锁的指令格式是:
PUSH 地址1
CALL 地址2
会问,为什么是100字节,应该是64、128、256字节才对呀。存储器本身的
容量,确实应该是64、128、256等,那么,金天地提供100字节的数据区,
少了28个字节,这少的28个字节,被用来做系统数据区了,用来保存序列号、
口令之类的东西了。那么深思3为什么没有占用数据区?深思3还有48字节的
代码区,与64相比,少了16字节,这就是他存放口令等统数据的所在了。
对于狗中的数据,在被加密程序中的使用,各种狗的情况基本上是相同的。
一是,读出数据,简单的比较;二是,读出数据,不做比较,而是作为参数
或地址,供程序下一步使用。如果被加密程序,处理狗内的数据是前一种情
况,则在无狗的情况下,我们从程序中即可得到数据了。对于后一种情况,
这里,地址1,是深思3数据接口的首地址(即程序设计中的数据接口的指针),
地址2,是深思3狗驱动程序的调用地址。读写数据的指令与此完全相同,所
以,找到了一处,就不难找到其他的了。
这里说明一下,深思3狗的数据接口(前文“深思3乱弹(一)——口令”中
的叙述有误,以此为准)

使用USBKey(加密狗)实现身份认证(ET99加密狗)

使用USBKey(加密狗)实现身份认证(ET99加密狗)

使用USB Key(加密狗)实现身份认证(ET99加密狗)(2012-04-21 10:29:39)标签:分类:首先你需要去买一个设备,加密狗是外形酷似U盘的一种硬件设备! 这里我使用的坚石诚信公司的公司项目需要实现一个功能,就是客户使用加密狗登录,客户不想输入任何密码之类的东西,只需要插上类似U盘的加密狗就验证身份登录! (当然如果U盘掉了,也就不安全了哦), 当时这个分配给我的时候,就给了我个ET99设备(类似于U盘那东西),和官方网站! 去官方下载资料(API & DEMO & DOC ),当时我自己心里也没有底,只有先试试吧! 正好今天“试”出来了,和大家分享一下!ET99的安全性:1.登录用户必须先输入自己的USER PIN进行验证后才有权限完成计算。

ER PIN有最大重试次数限制,连续输入错误会锁死。

从而防止硬件丢失后,被不合法的用户反复重试。

3.存储在ET99多功能锁中的密钥不能被任何人获取。

4.用户登录时必须具备硬件和保护硬件的USER PIN双重因子时才能登录。

有硬件,不知道USER PIN或者知道USER PIN,没有硬件,都是没有办法登录的。

比传统的用户名和密码方式大大增加的登录用户的安全性。

(类似于银行的U盾)5.保障了系统开发商的利益。

使用硬件登录,不存在用户名密码共享的问题ET99的认证方式在整个认证过程中,ET99采用冲击响应的认证方式。

当需要在网络上验证用户身份时,先由客户端向服务器发出一个验证请求。

服务器接到此请求后生成一个随机数并通过网络传输给客户端(此为冲击)。

客户端将收到的随机数提供给ET99,由ET99使用该随机数与存储在ET99中的密钥进行HMAC-MD5运算并得到一个结果作为认证证据传给服务器(此为响应)。

与此同时,服务器也使用该随机数与存储在服务器数据库中的该客户密钥进行HMAC-MD5运算,如果服务器的运算结果与客户端传回的响应结果相同,则认为客户端是一个合法用户。

加密狗加密与解密方法技术白皮书

加密狗加密与解密方法技术白皮书

加密狗加密与解密方法加密狗加密方法1 打开EZCAD软件包,找到“JczShareLock3.exe”执行程序。

2 双击执行该程序,弹出“Select parameter”对话框,如图1所示。

在图中可以看出我们可以设置两级密码,这两个密码是完全独立的,其中任何一次使用达到设定要求以后,加密狗就会限定板卡的使用权限。

如同时设置两级密码,权限应不同,即这两个密码设置的时间等权限长短不一。

如图,软件默认的是一级密码选中状态,如果想选择二级密码直接点选即可。

图1 Select Parameter3 当我们选择好设定密码的级数后,点击确定按钮,弹出“JczShareLock”对话框,如图2是软件默认的发布版界面,点击下拉菜单,我们可以选择共享版模式,如图3。

图2 发布版界面图3 共享版界面下面我们分别说明发布版模式和共享版模式的加密方法。

4 首先是发布版模式如图2。

发布版模式下没有次数,天数,时间等的设置,只有密码设置,主要应用于保护自己模式的设置,防止别人更改。

点击“写入/Write In”按钮,进入密码写入界面。

如图4。

如果我们是第一次写入密码,那么就直接勾选修改密码选项,在新密码下面的前一个输入栏里输入4位数字,在后面的输入栏里输入4数字,这样完成了密码的初步设定,然后在确认密码下的输入栏内重复输入上面设定的密码,然后点击确认,完成密码的设定。

如果我们是修改密码的话,那么我们首先要在密码写入界面上方的输入密码下的正确输入栏内输入以前设定的密码,然后在勾选修改密码,输入新的密码。

否则修改密码就会失败,并出现“密码错误”提示信息。

图4 密码写入界面5 共享版的密码设定,如图3是共享版的界面。

在这里我们首先要设定好限制使用的次数,天数,时间,直接在后面的输入栏内直接输入即可。

这里注意:我们所设定的时间,天数是以软件运行所在电脑的内部时钟为准的,我们编写之前一定要注意,我们所使用的电脑的时间是否准确。

设定好这些后点击“写入/Write In”按钮,进入密码写入界面。

教你如何破解加密狗

教你如何破解加密狗

教你如何破解加密狗[分享] 教你如何破解加密狗hasp 系列加密狗破解有的朋友认为很难,其实不然,只要有足够的耐心和技术基础。

是没有问题的。

--------------------------------------------------------------------------------------------------------004015FF |. 8D95 ACFBFFFF lea edx,[local.277]00401605 |. 52 push edx00401606 |. 8B85 F8FBFFFF mov eax,[local.258]0040160C |. 50 push eax0040160D |. 8B8D A8FBFFFF mov ecx,[local.278]00401613 |. 51 push ecx00401614 |. 68 D4E54000 pushAPP.0040E5D4 ; ASCII "EN"00401619 |. 8B55 E8 mov edx,[local.6]0040161C |. 52 push edx0040161D |. E8 8E230000 call<jmp.&user_dll.sui_In> ;这个CALL只要一执行,就死掉,所以必须跟进00401622 |. 8945 EC mov [local.5],eax00401625 |. 8B45 EC mov eax,[local.5]00401628 |> 8B4D F4 mov ecx,[local.3]0040162B |. 64:890D 00000000 mov fs:[0],ecx00401632 |. 8B4D E4 mov ecx,[local.7]00401635 |. E8 C72D0000 call APP.004044010040163A |. 8BE5 mov esp,ebp0040163C |. 5D pop ebp0040163D \. C3 retn--------------------------------------------------------------------------------------------------------跟进后出现一下代码,看第一行,就是0040161D 处调用的函数,再看右面的注释,心跳加快,InitSystem,从名字上你都能猜想它会干什么,对,读狗的相关代码就应该在这儿初始化(当然还要初始化其他信息),继续跟进--------------------------------------------------------------------------------------------------------004039B0 $- FF25 C8554000 jmp ds:[<&user_In>] ; InitSystem004039B6 $- FF25 C4554000 jmp ds:[<&user_Star>] ; StartProgram004039BC $- FF25 C0554000 jmp ds:[<&user_Mai>]004039C2 $- FF25 AC544000 jmp ds:[<&XXX_DLL.#3>]004039C8 $- FF25 A8544000 jmp ds:[<&XXX_DLL.#47>]--------------------------------------------------------------------------------------------------------跟进后,代码是一系列的IsBadReadPtr,由此判断该处是初始化内存工作,离读狗还用有一段距离。

加密狗 方案

加密狗 方案

加密狗方案概述加密狗是一种硬件设备,被用于保护软件应用程序免受非授权访问和盗版攻击。

它通过在计算机系统中插入一个加密狗设备,对软件进行加密和许可验证,以确保只有拥有合法许可证的用户才能访问该软件。

本文将介绍加密狗的原理、功能和应用领域,并探讨在设计加密狗方案时需要考虑的因素。

加密狗原理加密狗的原理基于对称密钥加密算法和非对称密钥加密算法。

它使用一个内部存储器来存储软件的许可证信息和加密算法的密钥。

当用户试图访问受保护的应用程序时,加密狗会与该应用程序进行通信并验证许可证的有效性。

加密狗通过对称密钥加密算法对许可证信息进行加密,并将其存储在内部存储器中。

该密钥只有加密狗和受保护的应用程序之间才能共享,并且无法从加密狗中提取出来。

当用户尝试访问应用程序时,应用程序会向加密狗发送一个挑战,加密狗使用存储在内部存储器中的密钥对挑战进行加密并将结果发送回应用程序。

应用程序解密加密狗发送的结果并进行验证,以确定许可证的有效性。

加密狗功能加密狗具有以下功能:许可证管理加密狗可以存储和管理软件的许可证信息。

许可证信息包括许可证类型、许可证有效期、许可证级别等。

加密狗可以根据许可证信息进行许可证的生成和验证。

安全存储加密狗内部存储器具有高度安全性,可以防止未经授权的访问和信息泄露。

除了存储许可证信息外,加密狗内部存储器还可以存储敏感数据,如私钥和加密算法。

加密通信加密狗可以与受保护的应用程序之间进行加密通信,确保数据的机密性和完整性。

加密狗使用对称密钥加密算法对通信数据进行加密和解密,保护数据免受非授权访问和篡改。

加密狗内部设有防护措施,以防止黑客攻击和破解尝试。

这些防护措施包括物理防护、密码学防护和安全检测等。

加密狗还可以进行设备监测和设备完整性验证,以确保是合法的加密狗设备。

加密狗应用领域加密狗广泛应用于软件保护、软件许可证管理和数据加密等领域。

以下是一些常见的应用领域:软件保护加密狗可以对软件应用程序进行保护,防止非授权复制和使用。

加密狗加密与解密-客户

加密狗加密与解密-客户

加密狗加密与解密方法这个密码限定控制卡的使能权限。

加密狗加密方法1 打开EZCAD软件包,找到“J6.exe”执行程序。

2 双击执行该程序,弹出“Select parameter”对话框,如图1所示。

在图中可以看出我们可以设置两级密码,这两个密码是完全独立的,其中任何一次使用达到设定要求以后,加密狗就会限定版卡的使用权限。

如同时设置两级密码,权限应不同,即这两个密码设置的时间等权限长短不一。

如图,软件默认的是一级密码选中状态,如果想选择二级密码直接点选即可。

图13 当我们选择好设定密码的级数后,点击确定按钮,弹出“JczShareLock”对话框,如图2是软件默认的发布板界面,点击下拉菜单,我们可以选择共享版模式,如图3。

图2图3下面我们分别说明发布版模式和共享版模式的加密方法。

4首先是发布版模式如图2。

发布版模式下没有次数,天数,时间等的设置,只有密码设置,主要应用于保护自己模式的设置,防止别人更改。

点击“写入/Write In”按钮,进入“Write Dongle”界面,如图4。

如果我们是第一次写入密码或者没有设置密码,那么就直接勾选“修改密码/ Change Password”选项,在“新密码/New Password”下面的前一个输入栏里输入4位数字,在后面的输入栏里输入4数字,这样完成了密码的初步设定,然后在“确认密码New PassWord again”下的输入栏内重复输入上面设定的密码,然后点击确认,完成密码的设定。

如果我们是修改密码的话,那么我们首先要在“Write Dongle”界面上方的“输入密码/Input Password”下的输入栏内输入以前设定的密码,然后在勾选“修改密码/ Change Password”,输入新的密码。

否则修改密码就会失败,并出现“密码错误”提示信息。

图45共享版的密码设定,如图3是共享版的界面。

在这里我们首先要设定好限制使用的次数,天数,时间,直接在后面的输入栏内直接输入即可。

软件加密狗破解思路和方法

软件加密狗破解思路和方法

软件加密狗破解思路和方法第一节软件加密狗破解思路和方法本文介绍的是软件加密狗破解的一般思路和方法,大家可能奇怪,昨天刚刚介绍完“软件加密锁产品评测”,怎么今天就介绍加密狗破解知识?其实做为软件开发者,研究好软件加密的确很重要,不过也很有必要多了解一些关于加密狗解密和破解的知识,加密和破解就像矛和盾一样,对于解密知识了解的越多,那么编写的加密代码就越好,要知道加密永远都比解密要容易的多,只有知己知彼,方能百战百胜。

硬件加密锁,俗程“加密狗”,对于加密狗的破解大致可以分为三种方法,一种是通过硬件克隆或者复制,一种是通过SoftICE等Debug工具调试跟踪解密,一种是通过编写拦截程序修改软件和加密狗之间的通讯。

硬件克隆复制主要是针对国产芯片的加密狗,因为国产加密狗公司一般没有核心加密芯片的制造能力,因此有些使用了市场上通用的芯片,破解者分析出芯片电路以及芯片里写的内容后,就可以立刻复制或克隆一个完全相同的加密狗。

不过国外的加密狗就无法使用这种方法,国外加密狗硬件使用的是安全性很好的自己研制开发的芯片,通常很难进行复制,而且现在国内加密狗也在使用进口的智能卡芯片,因此这种硬件克隆的解密方法用处越来越少。

对于Debug调试破解,由于软件的复杂度越来越高,编译器产生的代码也越来越多,通过反汇编等方法跟踪调式破解的复杂度已经变得越来越高,破解成本也越来越高,目前已经很少有人愿意花费大量精力进行如此复杂的破解,除非被破解的软件具有极高的价值。

目前加密锁(加密狗)的解密破解工作主要集中在应用程序与加密动态库之间的通讯拦截。

这种方法成本较低,也易于实现,对待以单片机等芯片为核心的加密锁(加密狗)具有不错的解密效果。

由于加密锁(加密狗)的应用程序接口(API)基本上都是公开的,因此从网上可以很容易下载到加密狗的编程接口API、用户手册、和其它相关资料,还可以了解加密狗技术的最新进展。

例如,某个国内知名的美国加密狗提供商的一款很有名的加密狗,其全部编程资料就可以从网上获取到,经过对这些资料的分析,我们知道这个加密锁(加密狗)有64个内存单元,其中56个可以被用户使用,这些单元中的每一个都可以被用为三种类型之一:算法、数据值和计数器。

使用USBKey(加密狗)实现身份认证(ET99加密狗)

使用USBKey(加密狗)实现身份认证(ET99加密狗)

使用USB Key(加密狗)实现身份认证(ET99加密狗)(2012-04-21 10:29:39)标签:分类:首先你需要去买一个设备,加密狗是外形酷似U盘的一种硬件设备! 这里我使用的坚石诚信公司的公司项目需要实现一个功能,就是客户使用加密狗登录,客户不想输入任何密码之类的东西,只需要插上类似U盘的加密狗就验证身份登录! (当然如果U盘掉了,也就不安全了哦), 当时这个分配给我的时候,就给了我个ET99设备(类似于U盘那东西),和官方网站! 去官方下载资料(API & DEMO & DOC ),当时我自己心里也没有底,只有先试试吧! 正好今天“试”出来了,和大家分享一下!ET99的安全性:1.登录用户必须先输入自己的USER PIN进行验证后才有权限完成计算。

ER PIN有最大重试次数限制,连续输入错误会锁死。

从而防止硬件丢失后,被不合法的用户反复重试。

3.存储在ET99多功能锁中的密钥不能被任何人获取。

4.用户登录时必须具备硬件和保护硬件的USER PIN双重因子时才能登录。

有硬件,不知道USER PIN或者知道USER PIN,没有硬件,都是没有办法登录的。

比传统的用户名和密码方式大大增加的登录用户的安全性。

(类似于银行的U盾)5.保障了系统开发商的利益。

使用硬件登录,不存在用户名密码共享的问题ET99的认证方式在整个认证过程中,ET99采用冲击响应的认证方式。

当需要在网络上验证用户身份时,先由客户端向服务器发出一个验证请求。

服务器接到此请求后生成一个随机数并通过网络传输给客户端(此为冲击)。

客户端将收到的随机数提供给ET99,由ET99使用该随机数与存储在ET99中的密钥进行HMAC-MD5运算并得到一个结果作为认证证据传给服务器(此为响应)。

与此同时,服务器也使用该随机数与存储在服务器数据库中的该客户密钥进行HMAC-MD5运算,如果服务器的运算结果与客户端传回的响应结果相同,则认为客户端是一个合法用户。

ET99设置方法

ET99设置方法

ET99设置方法下面介绍如何使用坚石诚信ET99实现外壳加密:需要使用ET99加密锁设置工具(ET99Setting.exe)对ET99进行初始的设置,在未更改PID的状态下是不能进行外壳加密的。

硬件PID:ET99的产品标示,默认8个F,通过种子码算法产生,种子即是在“PID种子”中输入的。

SO PIN码:管理员PIN码,开发商保存,可用于对USER PIN的解锁等,通过种子码算法产生,默认16个F。

USER PIN:用户PIN码,字符限制“0-9,A-F”,外壳加密中需要验证,同时读写数据需要该PIN码验证通过,默认16个F。

新的USER PIN码:用户根据自己的需要设置,注意字符的限制。

PID种子:用于产生PID的种子,长度在1-51字节范围内。

SO PIN种子:用于产生SO PIN的种子,长度在1-51字节范围内。

请选择设置项:用户根据自己的需要,选择需要修改的属性。

设置:设置完成点击设置按钮,提示设置成功。

用户需要记住“新的SO PIN”和“新的硬件PID”。

使用外壳加密程序对待加密的程序进行外壳加密,外壳程序的界面如下:“PID:”:输入在步骤1中产生的“新的硬件PID”。

“USER PIN:”:输入在步骤1中设置的“新的USER PIN码”。

“未加密的文件”:用户通过浏览按钮选择待加密的文件。

“加密后的文件”:这里显示加密后文件的输出路径和加密后文件名,用户可以根据需要修改。

“进行后台定时检测”:如果不勾选,程序启动时需要插有加密锁,运行期间可以拔掉加密锁;如果勾选,表示外壳程序会定时检测加密锁是否插在计算机上,如果不在,则会报错。

“硬件ID”:如果不勾选,PID和USER PIN设置成相同的一批加密锁都可以解密加密之后的软件;如果勾选,加密之后的程序只能由这一支加密锁解密运行;“执行加密”:外壳加密的最后一步,设置项都填写完成之后,点击该按钮,将会提示“”,加密成功。

至此,外壳加密完成,加密之后的程序在插有指定加密锁时可以运行,如果没有查加密锁,程序无法运行,提示没有找到加密锁。

加密狗的破解方法

加密狗的破解方法

加密狗的破解方法什么是软复制(修改过软件+加密狗)所谓软复制就是针对加密产品,用相关的工具读出原版狗的狗数据,写入到相同型号的加密狗中,同时修改软件中与加密狗对应的绑定数据,而达到复制的目的。

不同品牌的加密狗有不同的特征数据,例如Rockey 4加密狗,与软件相关的特征数据就是加密狗的密码,因此把软件中的密码改成自己手上的加密狗的密码,就达到了软复制的效果。

此种方法的优点是保持原版软件的稳定性,杜绝了解密不彻底的现象;缺点是不支持软件的升级。

什么是硬复制(CLONE)软件开发商为了保护软件不被随意复制,采用了硬件加密的方式,通常市面所见的有USB硬狗和并口硬狗两种,狗的类型有Safenet、深思、飞天Rockey、域之天、以及以色列Hasp等等,通常这些狗无法直接读取数据,但是采用专门的设备如读卡器,可以读出硬狗里面的相应加密数据,并且是用写卡器可以把数据完美的写入空狗,从而实现完美复制的硬狗。

当然这仅仅适用部分硬狗,不能一概而论。

另外的一种方法是利用软件的方法来硬复制,有些品牌的加密狗为了生产方便,会留有某些后门来更改狗的数据的,因此可以利用软件的办法来对加密狗里面的内容进行读出,修改相关的特征数据后再写入到狗中,从而达到硬复制的目的。

软件加密方式目前正在采用的加密方法可分为两大类:钥匙盘方式和加密狗方式。

加密狗,也是目前流行的一种加密工具。

它是插在计算机并行口上的软硬件结合的软件加密产品。

加密狗一般都有几十或几百字节的非易失性存储空间可供读写,有的内部还增添了一个单片机。

软件运行时通过向并口写入一定数据,判断从并口返回密码数据正确与否来检查加密狗是否存在。

此种方式不易被硬解密,因而具有加密可靠等优点。

但它也存在一大缺点是成本较高,并且用户使用很不方便。

若用户购买了几种带加密狗的软件,在使用不同软件或更换微机时要不断将狗换插,给用户增添了很多麻烦。

什么是软解密所谓软解密就是针对加密产品,一方面是利用软件监测分析软件在运行时向加密点写了什么数据,从加密点返回了什么数据,然后在运行软件前先在内存驻留自编程序监视加密点,当软件向加密点写数据时,软件自动代替加密点并返回相应数据。

如何破解密码狗

如何破解密码狗

如何破解密码狗当有一些机密文件用了密码狗加密以后,忘记密码了,你知道要怎么破解吗?小编在这里为大家收集了几种破解密码狗的方法。

比如你的加密文件夹名是abc你就在命令行模式下(cmd)切换到abc下X:\abc再切换到X:\abc\DirRecycler\这时再dir就可以看到你的文件了文件后缀也是被狗改变了的exe------>vcvhtml----->hgnotxt------>gcgxls------>cohppt----->kkgdoc----->wlxrar------>izi以下是变幻前后的字母排序对应关系a b c d e f g h i j k l m n o p q r s t u v w x y z 正常排序|||| | | | | ||||| | | | | | | | | | | | | |z y x w v u t s r q p o n m l k j i h g f e d c b a 经狗变幻后的排序比如本来正确的后缀名是aaa,结果变幻后就是zzz了,以此类推!可用XCOPY把文件全部拷到未加密的地方再改后缀,麻烦了点但目前是这样可以解决,还可以找它的密码文件,没时间了!文件夹嗅探器可以找到,从里面复制出来就行了f:\xitong\DirRecycler\SYSTEM~1\dogtmpdir\年5月搞了个T楼活动活动秘密楼层被斑竹用文件夹看门狗给锁定了活动结束后公布密码方能查询“文件夹看门密码狗”对于我们用处很多可以对一些不想让别人看到的文件进行加密没有密码就只可以移动和删除但是,加密文件多了,难免会造成密码错乱遗忘搞混的情况难道一些重要文件只能这样废弃吗?软件是人做的,自然也就有破解之法。

当然是为了大家在万一忘了密码的情况下如何恢复数据,而不是为了偷看别人的的隐私,呵呵。

看了我下面的讲解,大家就会发现,所谓的加密软件是多么的不堪一击。

【破加密狗】-深思3乱弹3

【破加密狗】-深思3乱弹3
这种方法,可以有效防止WKPE等仿真器拦截。但这种方法,为我们复制狗留
下了漏洞,我们只要找到这个副本,把他翻译成深思3的汇编语言,就得到
了狗内程序代码。
3、逆变换法
所谓逆变换法,就是狗内的代码,有变换和逆变换两个入口,被加密程序产
生一个随机数,先送到变换区返回一个数据,再把这个返回值送到逆变换区,
对于深思3而言,有三种情况:
1、用码表
所谓码表,就是加密者事先准备的数据变换前后的对照表。这种方法是圣天
诺狗必用的方法。这种方法的缺点是,容易被WKPE等仿真类软件拦截,除非
准备的码表很长,使得多次拦截后的数据合并起来庞大得无法使用。码表法
是深思公司极力反对的。所以,在深思狗加密中很少见,但也不排除有习惯
用此方法加密的人,使用深思狗后仍然沿用这种方法。
2、副本法
所谓副本法,就是在被加密程序中有一个与狗把产生的随机数,发到狗内,
变换返回的数据1,在把同一个数据送到程序内的副本处,进行变换,得到
返回数据2,比较数据1和数据2,判断是否是正版狗。
返回一个逆变换数据,把这个数据与最初的随机数比较,相同就是有正版狗。
这种方法,也可以有效防止WKPR类仿真器的拦截,而且,无法从程序中得到
狗内的代码。但是我们可以在狗内随便写一段代码,只要变换和逆变换的入
口与原狗的一致就可以了。
综上所述,只要有了程序,基本上可以复制出深思3的狗了。只是数据区的
【深思3乱弹(三)——代码】
可以把程序(代码)写入狗内,是深思3狗引以为荣的特色。也是我们破解或
复制深思3狗的难点。
前两段短文已经将了,我们可以从程序中找到狗的应用口令,可以从狗中读

加密狗硬件破解方法

加密狗硬件破解方法

加密狗硬件破解方法对于密届高手脱壳或者解密可能是很简单的事情,但是否对于一些带狗软件有时候也觉得麻烦。

目前较新的狗程序都采用对硬件通讯纪录的方法,普通的方法是无法跟踪到的,如果用拦截端口的方法实在太麻烦。

在这里我将自己整理的复制狗方法希望对大家有所帮助。

基础知识什么是加密狗(基础知识高手不要看了)首先用一点儿时间来谈谈什么是加密狗(dongle),dongle经常被认为是硬件保护,它是一个可被附加在计算机并口、串口或USB上的小插件,它包含厂家烧制的EPROM和定制的专用集成电路。

dongle 保护的的原理就是软件开发者在程序里经常检查dongle中的单元(Cell)的并对比返回值,这种检查可以是直接读单元或者是使用某种内部算法(此时单元受到保护无法直接读)。

尽管任何称职的硬件工程师都能很容易地分析出dongle是如何实现的,但是实际上并不用那么麻烦,dongle保护最薄弱的环节在于应用程序要通过dongle厂家提供的函数库来访问dongle,而应用程序和这些函数的连接通常是很弱的,因为软件开发人员不管这些函数如何访问dongle,它只检查函数的返回值是表示成功还是失败,那么只要打补丁让所有函数返回成功即可,而且这些函数通常并不多,从厂家提供的API手册中很容易查到这些函数的定义(参数和返回值)。

一般来说dongle解密不需要原来的正版狗。

必须指出从(西方)法律上来说,破解狗与调试独立的程序有一些细微的不同,后者是完全合法的,但前者在德国有被判为非法的案例(即使你已经购买了正版的软件),美国的“数字千年版权法案”(DMCA) 有一个著名的但引起强烈争议的“反规避条款”(1201),事实上对软件狗的解密做了极其严格的限制,但因为遭到消费者和甚至一些厂商强烈反对,因此在2000年10月28日,1201a条款规定了七种例外,在公平使用的前提下,把软件狗的研究从中删除(Dongles are exempt from Section 1201a of the Digital Millennium Copyright Act),因此,我理解,至少在美国,对软件狗的研究甚至复制是合法的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
keyID:[in]密钥指示,范围(1—8)
pucText:[in]待计算的数据,大于 0 小于等于 51 个字节
textLen:[in]数据长度,大于 0 小于等于 51
digest:[out]散列结果的数据指针,固定长度 16 个字节。
返回值:
pucKey:[in]密钥,按标准 RFC2104,长度可以任意
ulKey_Len:[in]密钥长度
pucToenKey:[out]硬件计算需要的 KEY,固定 32 字节。
PucDigest:[out]计算结果,固定 16 字节。
返回值:
ET_SUCCESS:表示成功。
这个函数很重要,具有以下用途
1,读取事先定义好的数据
2,软件运行时需要带狗注册的,把注册信息写进狗存储区,然后软件再要事先知道狗内的数据和对应的位置以及数据的长度
怎么得到狗内的数据呢,可以先不写模拟狗,只写个假的函数接口,监视到读狗的PID和PIN之后使用读狗程序读出需要的数据
件需要的 KEY。产生的计算结果,可以与其它系统(如服务器端系统)进行对比,
以验证算法的正确性。匿名状态可用不改变安全状态。
参数:
pucText:[in]等处理的数据缓存区指针,大于 0 小于等于 51 个字节
ulText_Len :[in]数据长度,大于 0 小于等于 51
下面看看相关说明
再次声明:下面的部分内容摘抄自飞天官方的SDK内容,有朋友在前面说了,抄来的SDK谁不会啊
是的抄SDK谁都会,不过我要说的是我的文章只是思路而不是破解过程
想要看过程的,对不起,恕难提供,思路就是万能过程
任何一种狗的操作都是如下流程
找狗->打开狗->效验狗->操作够(读/写/运行)->关闭狗
如果软件需要带狗注册,那么应该是用到了写狗操作
把注册后的信息写入狗内
软件下次运行的时候读取注册信息以便效验注册授权,这个操作处理起来不是太难
思路是先监视软件写了什么,然后把监视到得数据放在read操作里面做相应处理即可,理论上这个操作只会在软件没有注册的时候会使用
软件注册之后在运行就直接效验注册信息,只有效验不正确才会再次使用写操作
MD5_HMAC(
unsigned char * pucText,
unsigned long ulText_Len,
unsigned char * pucKey,
unsigned long ulKey_Len,
然后再给一个0的返回
读狗操作处理好之后有必要再看看写狗操作
虽然并不是所有软件有这个操作,以防万一还是看看吧
看下函数定义
======================================================================
et_Write(
ET_HANDLE hHandle,
返回值:
ET_SUCCESS:执行成功,Count 为查找到的 ET99 的数目。
ET_UNIT_NOT_FOUND:没有可以用的硬件,此时 Count 值为 0。
====================================================================
User 权限,且调用以后不改变安全状态。
参数:
hHandle:[in]设备句柄
Offset: [in]偏移量
Len: [in]长度,不能超过 60,如果超过则需要读多次。
pucReadBuf: [out]读出的数据存放此缓存区中,调用者保证缓冲区大小至
ET_SUCCESS:执行成功。
ET_UNIT_NOT_FOUND:打开指定的设备失败。
======================================================================
打开函数最重要的是PID的值,如果PID=0那么这只ET99就可以软复制了,因为不效验狗号
WORD offset,
int Len,
unsigned char* pucWriteBuf
)
功能说明:
将 buf 中,Length 长的数据写到指定的偏移。有存取权限控制。匿名状态不
可用,且在普通用户状态时还需要检查设备的配置。不改变安全状态。
的 Token 数目。进入匿名用户状态。
参数:
hHandle:[out]打开设备的句柄,返回给用户,供以后的函数调用;
pid: [in]输入的硬件设备的 pid, 为固定长度 8 个字节的字符串;
index:[in]打开第 index 个硬件设备。
返回值:
ET_INVALID_PARAMETER:无效的参数。
ET_NOT_SET_PID:没有设置 PID。
ET_ACCESS_DENY:权限不够。
ET_COMMUNICATIONS_ERROR:没有打开设备。
=======================================================================
et_Read(
ET_HANDLE hHandle,
WORD offset,
int Len,
unsigned char* pucReadBuf
)
功能说明:
从指定的位置,读取指定的数据到指定的 BUFFER 中。此函数调用需要有
先看下查找狗的操作
查找ET99需要使用函数
et_FindToken
看下函数定义
======================================================================
et_FindToken(
unsigned char* pid,
unsigned char *digest
)
功能说明:
利用硬件计算 HMAC-MD5 ,pid 为出厂时,还回错误。权限等同于 KEY 的
读权限。不改变安全状态。
参数:
hHandle:[in]设备句柄
int * count
)
功能说明:
查找计算机上指定 pid 的 ET99 个数。
参数:
pid: [in]产品标识, 为固定长度 8 个字节的字符串;
count: [out]还回的设备个数;
如果PID<>0那么最好的办法就是模拟了,当然现在又不少人手里有硬复制工具 也是可以的了

写程序返回0就是打开狗成功了
关闭锁这里就不说了
再来看度狗内数据的操作需要使用的函数et_Read
看下函数定义
======================================================================
少是 Len,否则可能产生系统存取异常。
返回值:
ET_SUCCESS:表示成功。
ET_INVALID_PARAMETER:无效的参数。
ET_NOT_SET_PID:没有设置 PID。
ET_ACCESS_DENY:权限不够。
=================================================================================
ET_INVALID_PARAMETER:无效的参数。
计算 HMAC_MD5
et_HMAC_MD5(
ET_HANDLE hHandle,
int keyID,
int textLen,
unsigned char* pucText,
产生随机数的功能我没有遇到过,故本文不做讨论
其他的比如产生产品标识 ,产生超级用户 PIN 码,重置普通用户 PIN 码等功能,你是不会在软件上看到的
这属于开发功能,如果你能搞到种子就可以硬复制了
下面看看比较有特色的功能
MD5效验
看下函数定义
======================================================================
参数:
hHandle:[in]设备句柄;
Offset: [in]偏移;
Len: [in]长度,不能超过 60,如果超过则需要写多次;
pucWriteBuf: [in]等写入的数据缓存区指针;
返回值:
ET_SUCCESS:表示成功。
ET_HARD_ERROR:硬件错误
由这个函数得知,找到狗返回0
那你写模拟的时候直接返回0就OK了
我就不写示例代码了,下面说到的东西也不再写代码
只说思路
找到锁当然要打开了,打开ET99使用函数et_OpenToken
看下函数定义
======================================================================
ET99和前面两篇文章中提及的R6和R2均属飞天一家公司
ET99应该是R2的升级版本和即将推出的ET199篇文章介绍的ET199狗一样是为了冲击S系列的加密狗而推出的,这两款产品具有价格低廉,性能优良等特点,打的S狗**********(省略**字数)
因其提供了生成随机数和MD5效验功能,还加入了操作权限等特色功能,故在低端市场,这个狗非常让人喜欢
unsigned char * pucToenKey,
unsigned char * pucDigest
相关文档
最新文档