搜索
bottom↓
回复: 33

DS28E01芯片中SHA-1的秘钥破解

[复制链接]

出50入4汤圆

发表于 2021-5-8 10:32:40 | 显示全部楼层 |阅读模式
100汤圆
关于DS28E01芯片中SHA-1的秘钥破解问题

已知破解方法有2个,分别有硬件破解和软件破解

1.硬件破解,据网上信息来看,要花费3万元,将芯片破坏,分析出秘钥
但是如此一来芯片不能使用,只能仿制。价格比较高,不想采用

2.软件破解,将SHA-1参与计算的信息收集好,保留8字节秘钥区域。进行碰撞
直至生成与  MAC一样20字节后进行秘钥验证。

综上所述想采用软件破解方案,有没有这样的资源可以介绍下,费用大概多少?谢谢。

最佳答案

查看完整内容

这种破法是最笨的破解方法,相当于是公开的,所有人都知道 当然如果你的设备不是光刻机什么的价值上亿的设备,那么你并不怕这种破解。因为想在合理的时间内用这种方法来破解,所花费的成本不会低于这个数。 相对于这种加密芯片自己的价格,和他能保护的东西的价值来说,这种加密芯片是没毛病的。 想保护超级贵的东西,你也得买个足够贵的锁啊,而不是一个大路货的很便宜的锁。 ...

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出300入477汤圆

发表于 2021-5-8 10:32:41 | 显示全部楼层
xml2028 发表于 2021-5-8 13:59
干,我就是用这个芯片来加密的,竟然有人公开求助破解!!!

这种破法是最笨的破解方法,相当于是公开的,所有人都知道
当然如果你的设备不是光刻机什么的价值上亿的设备,那么你并不怕这种破解。因为想在合理的时间内用这种方法来破解,所花费的成本不会低于这个数。
相对于这种加密芯片自己的价格,和他能保护的东西的价值来说,这种加密芯片是没毛病的。
想保护超级贵的东西,你也得买个足够贵的锁啊,而不是一个大路货的很便宜的锁。

出0入984汤圆

发表于 2021-5-8 10:45:41 | 显示全部楼层
sha1碰撞估计是百万元级别,不现实

出0入0汤圆

发表于 2021-5-8 10:59:02 | 显示全部楼层
只需要把密钥破解出来即可,里面存在8个字节的密钥,可以通过物理方式搞出来,10多年前搞过DS2703的,这个DS28E01应该是一样的。

出50入4汤圆

 楼主| 发表于 2021-5-8 11:25:16 | 显示全部楼层
Himem 发表于 2021-5-8 10:45
sha1碰撞估计是百万元级别,不现实

听说现在算力不是提升了么?

比特币不就是碰撞么,我这个应该比他那个好算吧

出50入4汤圆

 楼主| 发表于 2021-5-8 11:28:14 | 显示全部楼层
wzyllgx 发表于 2021-5-8 10:59
只需要把密钥破解出来即可,里面存在8个字节的密钥,可以通过物理方式搞出来,10多年前搞过DS2703的,这个D ...

是的,问题是秘钥都是用ID生成的,每个都不一样,你破解的这个应该是物理损坏了
,后面也用不了了,只能FPGA仿制了。

现在想通过软件的方法暴利破解

出0入984汤圆

发表于 2021-5-8 11:31:00 | 显示全部楼层
csformatru 发表于 2021-5-8 11:25
听说现在算力不是提升了么?

比特币不就是碰撞么,我这个应该比他那个好算吧 ...


比特币是hash值在某个范围就认
你这个要完全一致

不是一个量级的算力要求

出300入477汤圆

发表于 2021-5-8 11:45:33 | 显示全部楼层
所有人都知道可以这么做啊。所有的加密算法都可以这样穷举去破解。
无非是2的64次方个可能的密码。你挨个穷举去算SHA,因为SHA的值域是160位,所以基本上你只要算到的SHA值正确,那个64位密码肯定是对的。
算力要求:平均来说你要算2的63次方次即可成功。
如果你用一个FPGA去算,每秒钟做100兆次SHA,
计算所需的时间:2^63/100000000/3600/24=1067519.9天=2924年
如果你用3000个这样的FPGA电路去算,可以在平均一年后算出结果(最坏2年)
当然我不知道每秒钟100兆次SHA160能不能达到,反正数量级应该差不了多少,无非是多10倍少10倍吧,对超级有钱的大公司来说这个数不高

看来现在只用64位密码是不够防止穷举的了,至少应该128位起,这样才能保证穷举算到宇宙毁灭也算不完。

出300入477汤圆

发表于 2021-5-8 11:48:54 | 显示全部楼层
设计这种加密芯片的也是小气。密码长度又不值钱,加长一倍到128位,就可以永久消除有人想穷举他的可能了。

64位在理论上还真的有穷举的可能性。现在技术这么发达。

出0入59汤圆

发表于 2021-5-8 11:55:36 | 显示全部楼层
redroof 发表于 2021-5-8 11:45
所有人都知道可以这么做啊。所有的加密算法都可以这样穷举去破解。
无非是2的64次方个可能的密码。你挨个穷 ...

号召莫友集资,做10W个这个种破解器,专门给人破解这个, 比挖矿靠谱

出50入4汤圆

 楼主| 发表于 2021-5-8 12:06:02 | 显示全部楼层
redroof 发表于 2021-5-8 11:48
设计这种加密芯片的也是小气。密码长度又不值钱,加长一倍到128位,就可以永久消除有人想穷举他的可能了。
...

是的大家都懂2的64次方是多久

其实现在美信已经有512的那种专门验证芯片了。

但是直到去年我看到了黄教主的这个

https://zhuanlan.zhihu.com/p/140968474

我觉得今年是不是已经有人在用了。。。。

这算力哐哐的

出50入4汤圆

 楼主| 发表于 2021-5-8 12:09:01 | 显示全部楼层
polarbear 发表于 2021-5-8 11:55
号召莫友集资,做10W个这个种破解器,专门给人破解这个, 比挖矿靠谱  ...

是个办法,放以前找点肉鸡,写个程序

后台去跑。

出675入8汤圆

发表于 2021-5-8 13:59:33 来自手机 | 显示全部楼层
干,我就是用这个芯片来加密的,竟然有人公开求助破解!!!

出0入0汤圆

发表于 2021-5-8 14:13:04 | 显示全部楼层
谁和DS28E01通信,从主机入手 行不行

出300入477汤圆

发表于 2021-5-8 14:51:26 | 显示全部楼层
csformatru 发表于 2021-5-8 12:06
是的大家都懂2的64次方是多久

其实现在美信已经有512的那种专门验证芯片了。

GPU需要浮点,而傻算HASH只需要整数运算,还只需要几种特定类型的整数运算。所以用FPGA做这个运算的效率肯定高于GPU
就像当年的比特币挖矿,早期用显卡,后来用FPGA,再后来就直接上ASIC了。
当然比特币的算法是SHA256,这种老式加密芯片的算法是SHA1,两者不同,所以你没法直接用比特币的芯片来对付。

出0入30汤圆

发表于 2021-5-8 14:52:46 | 显示全部楼层
DS2431
DS2432
请教各位网友,以上这二种芯片有没有SHA-1加密?

出50入4汤圆

 楼主| 发表于 2021-5-8 15:13:12 | 显示全部楼层
woshigeshuai 发表于 2021-5-8 14:13
谁和DS28E01通信,从主机入手 行不行

那边是FPGA,我感觉还是从这边来方便。

那边那个设备也不好拆

出300入477汤圆

发表于 2021-5-8 15:23:09 | 显示全部楼层
csformatru 发表于 2021-5-8 15:13
那边是FPGA,我感觉还是从这边来方便。

那边那个设备也不好拆

那你基本上就没戏了。这个运算量说是理论上可以做到,实际上还是足够大的,大到你不可能经济的把它做出来就行了。
我就不信你愿意花至少千万级的费用来算一年,就为了算这一个加密芯片里的key。反正目前应该不太可能低于这个数量级。你如果熟悉FPGA,可以自己试着找个SHA的IP,仿真一下,看看多少个时钟能完成一次。就知道需要多少钱了。

出0入8汤圆

发表于 2021-5-8 16:07:20 | 显示全部楼层
ycheng2004 发表于 2021-5-8 14:52
DS2431
DS2432
请教各位网友,以上这二种芯片有没有SHA-1加密?

DS2431无密码,无SHA1加密
DS2432有密码,有SHA1加密,和DS28E01基本相同。

出0入8汤圆

发表于 2021-5-8 16:09:04 | 显示全部楼层
xml2028 发表于 2021-5-8 13:59
干,我就是用这个芯片来加密的,竟然有人公开求助破解!!!

你不是已经换国产芯片了?高枕无忧。

出0入8汤圆

发表于 2021-5-8 16:14:21 | 显示全部楼层
软件穷举,我以前用电脑在机房跑过,24小时开机,开空调,跑了1个月,4个字节都没跑完,放弃了。
硬解3万,拿到密码后用MCU替代,我也干过,可以大量复制,相当安逸。

出50入4汤圆

 楼主| 发表于 2021-5-8 16:14:30 | 显示全部楼层
xml2028 发表于 2021-5-8 13:59
干,我就是用这个芯片来加密的,竟然有人公开求助破解!!!

放心兄弟,我这是进口设备,老板让看看

我也是混饭吃,没得办法

中国人不打中国人。

手动抱拳。

出50入4汤圆

 楼主| 发表于 2021-5-8 16:15:40 | 显示全部楼层
siguo 发表于 2021-5-8 16:14
软件穷举,我以前用电脑在机房跑过,24小时开机,开空调,跑了1个月,4个字节都没跑完,放弃了。
硬解3万, ...

这玩意不是电脑能跑的~~~~~~~怎么也得给上个超算吧

出50入4汤圆

 楼主| 发表于 2021-5-8 16:17:41 | 显示全部楼层
redroof 发表于 2021-5-8 15:23
那你基本上就没戏了。这个运算量说是理论上可以做到,实际上还是足够大的,大到你不可能经济的把它做出来 ...

是这个意思,软件上要不是看了那个英伟达的GPU,我也不会出来问。

我算了算,可以跑的,应该是我算错了,草率了

还是硬件破,软件放仿是正解。

出0入8汤圆

发表于 2021-5-8 17:53:23 | 显示全部楼层
xml2028 发表于 2021-5-8 13:59
干,我就是用这个芯片来加密的,竟然有人公开求助破解!!!

隐约感觉到蛋蛋的忧伤。

出300入477汤圆

发表于 2021-5-8 18:14:58 | 显示全部楼层
csformatru 发表于 2021-5-8 16:17
是这个意思,软件上要不是看了那个英伟达的GPU,我也不会出来问。

我算了算,可以跑的,应该是我算错了 ...

我刚也仔细算了一下,发现现在技术进步好快啊~
网上随便找个SHA1的IP,规格是这么写的
资源使用(XCKU115为例
LUTs:2280,FFs:2750
然后需要80个时钟做一次SHA1运算,就算跑在250兆,也就是每秒3兆次SHA

用Xilinx的Spartan-6系列最大的XC6SLX150,有147K个LE,差不多可以装50个这样的SHA计算核心
芯片价格是500块钱左右,如果有人大规模的做板子,整个PCB的总价平均下来应该*1.5=750足够
也就是750块钱可以装50个SHA计算核心,合计150兆次SHA每秒,
平均5块钱可以买到1兆SHA每秒。
之前算过如果每秒100兆SHA就是3千年穷举完,那么想1个月穷举完就要100*3万=300万兆SHA每秒
300万*5=1500万可以拿下,平均一个月算完,最坏两个月。

哈哈,比我之前估算的低了不少

出300入477汤圆

发表于 2021-5-8 18:29:42 来自手机 | 显示全部楼层
本帖最后由 redroof 于 2021-5-8 19:56 编辑
security 发表于 2021-5-8 17:53
隐约感觉到蛋蛋的忧伤。


记住以后不能再用64位密码了啊,现在的技术穷举64位的全部值已经是可行的了。。。
如果用个128位密码的加密,就再也不用为此忧伤了,永久。。。

出0入0汤圆

发表于 2021-5-9 23:26:47 来自手机 | 显示全部楼层
我成功破解过。
如果秘钥一样,硬解是可行的,国内能硬破这个的人不多,大多数黄牛接了这个活,最终会找到为数不多的几个人做,费用大概在3-6W。
如果秘钥不一样,那就自求多福了,费用大致在5W到10W,甚至更高。
软件穷举,我也试验,没用FPGA,用单片机穷举了3个月后放弃。

出300入477汤圆

发表于 2021-5-10 09:45:18 | 显示全部楼层
sanjue 发表于 2021-5-9 23:26
我成功破解过。
如果秘钥一样,硬解是可行的,国内能硬破这个的人不多,大多数黄牛接了这个活,最终会找到 ...

密钥一样,显然是使用它的人根本不懂用法。
正确使用的人,每个板子的密钥当然应该是不一样的。这种情况下最佳的破解方法其实应该是去主机端的程序里面找那个密钥
这种用法的加密芯片,你的主机端程序的保密程度几乎肯定低于加密芯片自身。
你要比较加密芯片计算出的SHA值是否正确,必须在主机里面也执行相同的SHA算法,这个算法的输入数据里面就得有加密芯片中的密码。你只要从这个地方调试拿到密码就行。
不论多长的密码,也躲不过这种方法。只要他的工作原理是加密芯片自己计算某种校验码,然后和主机程序里面算的结果比较就行。
或者更简单的,如果你可以强改那个设备里面的程序,只要找到跟加密芯片通讯校验密码的地方,改为永远成功,很可能就OK了。

出50入4汤圆

 楼主| 发表于 2021-5-10 21:41:29 | 显示全部楼层
sanjue 发表于 2021-5-9 23:26
我成功破解过。
如果秘钥一样,硬解是可行的,国内能硬破这个的人不多,大多数黄牛接了这个活,最终会找到 ...

秘钥怎么可能一样呢

这个芯片的秘钥肯定都是用其设备ID通过算法生成的

出0入8汤圆

发表于 2021-5-11 08:51:39 | 显示全部楼层
csformatru 发表于 2021-5-10 21:41
秘钥怎么可能一样呢

这个芯片的秘钥肯定都是用其设备ID通过算法生成的

真密码有一样的也要不一样的。我见过一样的,也见过不一样的。
伪密码都不一样。
DS28E01有几种版本,一种是EEPROM存的是真密码,直接硬解拿到的是真密码,这种芯片早期存在过,后面被替代了。
另一种是EEPROM存的是伪密码,直接硬解拿到的是伪密码,必须通过某种计算推导出真密码,目前市面上流行的版本。
不管真密码是否一样,硬解得到一个ROM+真密码,就可以用MCU仿真替代了,就可以大量复制量产了。
现在有DS28E15,DS28E22,这种是较新的加密芯片,DS28E01过时了。

出0入0汤圆

发表于 2021-5-11 11:32:45 来自手机 | 显示全部楼层
siguo 发表于 2021-5-11 08:51
真密码有一样的也要不一样的。我见过一样的,也见过不一样的。
伪密码都不一样。
DS28E01有几种版本,一 ...

能说出DS28E01有新旧版本的,看来对这个芯片有足够的了解了,新旧版本在时序上也有点不易察觉的区别

出215入169汤圆

发表于 2022-2-12 10:10:47 | 显示全部楼层
redroof 发表于 2021-5-10 09:45
密钥一样,显然是使用它的人根本不懂用法。
正确使用的人,每个板子的密钥当然应该是不一样的。这种情况 ...

最便宜的器件应该是fpga矿机用的xc7k325t,19年价格300左右。碰撞会比穷举快一些,彩虹表也可以加速几百倍。
寻找碰撞是比较慢的,侧信道攻击会更有效。老的28e01确定是可以侧信道攻击的,很短时间就能搞定。

出300入477汤圆

发表于 2022-2-12 10:16:16 | 显示全部楼层
monkeynav 发表于 2022-2-12 10:10
最便宜的器件应该是fpga矿机用的xc7k325t,19年价格300左右。碰撞会比穷举快一些,彩虹表也可以加速几百 ...

我不信能有几百倍加速比
64位的情况下彩虹表几乎不现实。
反正硬算hash就那个速度了,快慢也差不了多少,64位对现有的硬件真的有点不够了。
HASH碰撞所需的位数是自身位数的一半,所以SHA1的160位一半是80位,也好不了太多,除非SHA256才保险~
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-25 16:30

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表