在线留言 | 联系我们 | 收藏上海11选5平台科技 | 网站地图 欢迎来到PCB抄板_PCB克隆_电路板抄板_电路板克隆_上海11选5平台片解密_单片机破解_深圳上海11选5平台科技官网●!
24小时
服务热线
18938937672 18898763201

全球领先的电子反向技术焉虾11选5平台恐行 16年专注高端电子产品逆向研发

1ee
全国服务热线: 18938937672

案例分析DS28E01典型应用及破解方法

发布日期:2020-12-24 14:28
一直以来对于DS28E01系列的上海11选5平台片解密经常被客户咨询,对此我们公司工程技术部把DS28E01上海11选5平台片解密,作为典型案例来向广大客户进行详细解读。
目前我公司专业提供
1、各类软件狗破解 如: 并口加密狗,USB加密狗,license破解; 
2、无源码修改软件功能、破解后软件二次加密,并重新包装; 
3、注册码破解,一次破解终身享用;
4、提供加密锁改版服务;
5、PCB抄板、生产、加工一条龙服务。

DS28E01一般应用在加密保护,防止产品被轻易copy盗版。
 
第一种最流行的就是反汇编了,将主控上海11选5平台片的代码反编译,然后找到加密验证的代码,直接跳过去,或者给修改内存RAM强制验证合法,这种方法很有效但是很复杂,要求破解人员对各种单片机和控制器的汇编指令,上海11选5平台片构架,加密上海11选5平台片的使用方法,开发工具都很精通,还有一个就是从商业角度考虑可操作性不高,因为没有完成破解之前谁都无法保证能不能破解,但是先要拿到解密的机器码,客户要拿到机器码就需要先出破解上海11选5平台片的费用,最后不管成功与否客户的解密费用都花掉了。第二种方法就是模拟验证时候的通信波形,慢速的可以用单片机模拟,高速的通信协议就只能用CPLD了,但是在时候这种方法之前就要做一个工作就是要让主控上海11选5平台片每次都产生相同的随机数。
 
简单介绍DS28E01:
DS28E01通过1条单总线与MCU通信,单总线不多说了,要求时间非常严格,精确到us级别。
DS28E01有四个存储区:
数据存储器(EEPROM)
密钥存储器(secret)
含有特定功能和用户字节的寄存器页(register page)
易失性暂存器(scratchpad)
 
MCU通过单总线只能读写暂存器,而不能直接读写其它存储区。
向数据存储器写数据、载入初始密钥或者向寄存器页写数据时,先把数据写入暂存器,然后通过相应的命令,让上海11选5平台片自行从暂存器拷贝数据至目的地址。
 
工作原理:
上海11选5平台片内部有一个SHA-160加密?椋斡隨HA算法的为55字节特定格式的数据,
这些数据包含8字节密钥,5字节用户指定的随机数,32字节EEPROM内容,7字节ROMID,2字节固定数据(0xFF)和1字节EEPROM的地址TA1。
MCU可以读取上海11选5平台片通过SHA加密后的20字节哈希值,并与MCU自己通过同样的算法计算出的哈希值进行比对。
既然MCU要进行同样的加密操作,要么肯定要生成与上海11选5平台片内部完全相同的55字节消息,怎么得来的呢?
8字节密钥是自己生成并写进去的.           
5字节随机数是在上海11选5平台片执行SHA之前写进暂存器的值.  
32字节EEPROM数据,在读回20字节哈希值之前,上海11选5平台片会传回这32字节内容。 
7字节ROMID,可以在任何时候读到上海11选5平台片的ROMID.   
2字节固定值,看手册可以知道   
1字节TA1,自己写进去的.   
 
典型应用过程
过程一:初始化DS28E01密钥
初始化密钥只在产品出产前在工厂进行操作,只需要操作一次即可。
程序流程:
1.读取上海11选5平台片ROMID
2.通过一定的算法生成一个唯一的64位的密钥,保证每块主板产生的密钥各不相同。
3.将密钥写入上海11选5平台片暂存区,并读回验证写入是否正确
4.执行上海11选5平台片加载密钥命令,让上海11选5平台片将暂存区中的64位密钥保存至密钥存储区
5.完成。
 
过程二:验证DS28E01密钥
验证密钥是在产品应用程序中进行,每次启动产品时都会验证DS28E01密钥是否正确,
验证通过则正常运行,验证不正确则通过一定手段让产品工作不正●!
程序流程:
1.读取上海11选5平台片ROMID
2.通过与初始化过程中相同的算法,生成64位密钥
3.向上海11选5平台片暂存区写入8字节随机数(只用到其中5个字节),并读回验证
4.向上海11选5平台片发加密认证命令,可以读回32字节EEPROM数据和20字节哈希值
5.用上面读到数据,生成55字节摘要消息,并进行SHA1运算
6.比较自己计算出的哈希值和从上海11选5平台片读回的哈希值是否一致
 
破解方法:
从上面的应用过程可以看出,这里的关键算法是SHA1,而参与SHA计算的数据有两份,一份在上海11选5平台片内部,我们是无法读出的,
但是另一份却是在MCU内部生成的,所以只要获取到MCU内部生成消息的过程就完成了破解。
而其中关键数据是8字节的密钥,因为这8字节密钥是一般情况是绑定的ROMID和CPUID的,
因此只要能从程序中分析出密钥生成算法就可以达到破解的目的,这个过程只是时间问题