模拟美萍加密狗--Rockey2虚拟狗(四)
来源:互联网 发布:真正的人工智能龙头股 编辑:程序博客网 时间:2024/04/29 18:42
首先,抱怨一下。学校个破网,似乎把我端口封了,死活分不上IP,也许是是我MAC改的太频繁了,有盗号嫌疑……
然后,正文开始……
其实虚拟狗几天前就写完了,可这几天上不了网,所以没写博客……(你有完没完!!!)
然后,正文开始……
第二步开始搞定RY2_Open函数……完了。真的完了,RY2_Open一句代码都不用谢,Rockey2的库在第一步枚举Rockey2加密锁的时候就把每把锁的HID,UID,硬件版本(就是RY2_GetVersion获得的版本,所以RY2_GetVersion也不用写了)读到内存了,所以直接调用RY2_Open就可以正确返回狗的句柄了,不过这也有一点不好,无法通过虚拟狗截取程序要求的UID和HID,因为这部分的比较都在RY2_Open里完成了。
然后,正文开始……
其实虚拟狗几天前就写完了,可这几天上不了网,所以没写博客……(你有完没完!!!)
然后,正文开始……
第二步开始搞定RY2_Open函数……完了。真的完了,RY2_Open一句代码都不用谢,Rockey2的库在第一步枚举Rockey2加密锁的时候就把每把锁的HID,UID,硬件版本(就是RY2_GetVersion获得的版本,所以RY2_GetVersion也不用写了)读到内存了,所以直接调用RY2_Open就可以正确返回狗的句柄了,不过这也有一点不好,无法通过虚拟狗截取程序要求的UID和HID,因为这部分的比较都在RY2_Open里完成了。
接着就是关键的读写部分了RY2_Read和RY2_Write,通过OD跟踪发现Rockey2的通讯都是通过HidD_SetFeature和HidD_GetFeature这两个API完成的,封装成了个函数,流程就是HidD_SetFeature发送命令和数据HidD_GetFeature接收返回数据分析了一下协议,很简单:
HidD_SetFeatureFUN: RY2_ReadRY2_WriteRY2_GenUIDRY2_TransformCMD: 8182878BARG: block_indexblock_indexFF00PAG: 0-80-8FF[LEN]1ARG: [uid]4[uid]400 00 00 00[uid]4DAT: buffer512buffer512seed64data32重写了Get_Report的HID_REPORT_TYPE_FEATURE分支返回数据,增加了Set_Report函数处理命令。这样RY2_Read和RY2_Write也就完成了
至此,虚拟狗已经基本完成了,只剩RY2_GenUID和RY2_Transform两个与算法相关的API了,由于没有实物狗,是在无能为力。RY2_GenUID用的应该不多,至少实际产品中应该不会用到,如果被调用的话我只写了个弹出Seed的消息框,并不会生成UID,应该不会用到,如果被调用的话我只写了个弹出Seed的消息框,并不会生成UID,不过有两个例外,根据官方文档和OD了一个写狗程序,找到两个Seed-UID对
seed:12345 uid:2AA426F3
seed:chinacoho and chi uid:2BF2DB93
RY2_Transform就直接返回一串0了。
狗内的数据部分我做成了一个外部的dat文件,包括HID、UID、block内数据,这样就方便交流了。
有问题的朋友请留言,可以深入交流。
另:希望使用Rockey2的厂商一定要使用RY2_Transform函数,这样才能更有效的保护自己的产品
代码开源!感谢某位大神的帮助!地址:http://download.csdn.net/detail/douniwan5788/4114939
(发博客时发生了点小意外,Service Unavailable,登不上博客了,挂着代理才上来,Google了一下还是个常见问题……)
- 模拟美萍加密狗--Rockey2虚拟狗(四)
- 模拟美萍加密狗--Rockey2虚拟狗(一)
- 模拟美萍加密狗--Rockey2虚拟狗(二)
- 模拟美萍加密狗--Rockey2虚拟狗(三)
- 模拟美萍加密狗--Rockey2虚拟狗(五)
- 虚拟化识别加密狗解决方案
- dongle crack 加密狗破解复制模拟
- usb server/虚拟化识别加密狗/集中管理加密狗/共享加密狗/远行连接加密狗
- 云计算虚拟化识别usb方案 加密狗集中管理/加密狗远程连接加密狗共享
- sal3d WIBU加密狗破解复制模拟 写狗工具
- HardLock 加密狗模拟解密硬复制HardLock
- HASP 4 加密狗模拟、解密硬复制HASP 4
- Hasp HL加密狗模拟、解密硬复制Hasp HL
- 德国威步加密狗wibu 破解复制模拟
- 模拟虚拟构造函数
- 模拟手机虚拟数字键盘
- Hasp SRM 加密狗模拟狗解密免狗Hasp SRM
- 加密狗
- Java 网址推荐2
- C++ 中的 抽象类 和 接口
- C语言之struct大小、首地址与内存对齐
- qtmediahub的硬件适配(九)
- kchmviewer软件安装
- 模拟美萍加密狗--Rockey2虚拟狗(四)
- Android NDK开发技巧一、二
- Using themed css files requires a header control on the page. (e.g. <head runat=“server” />)
- 从今天开始正式学习java,希望在这里能记录我的学习过程,我的第一个hellowworld!
- 黑马程序员——随谈传智博客视频感受
- Android进阶篇-Toast自定义显示时间
- 创建存储过程
- 防止ListView变色
- IPv6套接字编程介绍