查看: 1|回复: 0

imToken钱包曝设计缺陷:助记词数小时可被暴力破解

[复制链接]

4

主题

0

回帖

705

积分

中级会员

积分
705
发表于 昨天 07:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,玩转 Coitancy

您需要 登录 才可以下载或查看,没有账号?立即注册

×
老铁们,刚刚看到一个关于imToken的消息,有点炸。imToken这个去中心化钱包,用的人挺多,号称2016年成立,全球注册用户已经超过3000万,主打的就是私钥本地管理,平台碰不到你的资产。但问题是,如果助记词生成机制有漏洞,那私钥再本地管理也没用,因为钱包地址和资产归属全靠助记词决定,被人破解就直接完了。0 ?, Z/ Q6 }6 G/ W) ^8 l
5 |0 [) J+ T! s! }  r& V
具体咋回事呢?简单说,imToken的Android版在生成助记词时,用的是java.util.Random这个伪随机数生成器。这玩意的种子空间只有48位,而且算法是线性同余生成器(LCG),属于可预测的。更麻烦的是,BIP39标准用的单词表总共就2048个词,12个助记词对应128位熵+16位校验和。但imToken实际生成助记词的时候,熵的来源只有这48位种子,所以暴力破解难度直接从2^128掉到了2^48,也就是大概2.8×10^14,约280万亿。这个量级听起来挺大,但GPU集群跑起来,几个小时就能搜完。攻击者只要拿到你一个助记词相关的哈希,就能反推出原始助记词,钱包资产直接归零。& y% M; {4 j' z) f
+ ~9 }- k; x  n/ R3 L2 n
另外,文章里提到一个细节:攻击者只要观测到同一个Random对象输出任意两个值,就能在O(2^48)时间内反推出全部种子。也就是说不需要拿到完整助记词,只要两个随机数输出,整个助记词序列都能还原。这就很离谱了,等于说密钥空间完全缩水了。) \3 c0 h( H: @5 E6 C# ~, U
/ U$ B2 m' [+ U4 v1 t( n
群里也有人讨论,说这会不会是内部技术留了后手,还说有团队被搞走了几百万U,不过这种没啥实锤,就当瓜吃吧。反正安全无小事,如果你的imToken钱包还是老版本,尤其是在Android上生成的助记词,建议赶紧转移资产到硬件钱包或者其他安全实现的钱包。别等高强度破解普及了再后悔。
" h- y: c# _) L3 s6 f6 ^2 Q9 L  A  D
这里不贴链接了,想看的自己去搜。总之,去中心化钱包有时候也不一定比中心化安全,关键还是看实现。
联系对方的时候 记得告知是从 南洋快探 Coitancy.com 看到的哦~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telegram 客服

相关侵权、举报、投诉及建议等,请联系TG @WeLoGmBot

Powered by Discuz! X5.0 © 2001-2026 WeLoBBS Team.|京ICP 备548522212号

在本版发帖
Telegram 客服
返回顶部