硬件钱包如何防范“中间人攻击”?

文章出处:高维空间 责任编辑:yola 发布时间:2019-01-29


  在加密货币的世界里,无论你多么强调安全性,都不为过。

  随着全球加密货币市场价值的不断增加,资产安全已成为投资者最关心的问题。自2018年以来,加密货币行业的黑客攻击数量众多,导致高达数十亿人民币的损失。

  更严重的是,一旦加密资产丢失,就很难重新找回他们。

  在这种情况下,已经发明了不同形式的加密货币存储“工具”:硬件钱包,热钱包,去中心钱包,全节点钱包,多签钱包等。那么,有没有一种工具可以保证资产的“绝对安全”?

  

  攻击

  硬件钱包旨在将钱包私钥与网络完全隔离。这种类型的钱包因其不易触摸的特性而被称为冷钱包。由于这种特性,通常认为硬件钱包是安全可靠的并且不会受到攻击。

  但不幸的是,硬件钱包的所谓绝对安全性也是相对的。

  Reddit的用户心情沮丧,因为它在eBay上购买了二手硬件钱包,因此损失了34,000美元。 “这都是我的积蓄。” Moodyrocket在帖子中说。

  经过调查,该用户购买的二手钱包被卖方以“中间人攻击”的形式采用。硬件钱包制造商Ledger的随机数替换为卖方的随机数,并获得用户的私钥。这导致了盗币事件的发生。

  这种随机数泄漏导致钱包丢失不是一个例。这个事件也从侧面显示硬件钱包实际上并非“无懈可击”。

  “虽然中间人袭击看起来非常可怕,但许多制造商也在努力防止类似事件发生,”郎平说。


  防御

  硬件钱包由两部分组成:硬件和软件。硬件部分包括钱包工厂包装,钱包主板,芯片,外壳等;软件部分主要是开源代码库。 “如果制造商能够在钱包设计之初保证这些部件的安全性,那么钱包基本上就相对安全了。”

  以2013年在中国上市的硬件钱包产品为例。在用户收到钱包后,整个钱包被包裹在一层透明塑料中,内包装也被一次性胶带封闭。虽然这些是最基本的物理手段,但它们还可以降低硬件钱包在物流过程中直接暴露给攻击者的可能性。

  “你的私钥直接存储在硬件钱包中,暴露给不怀好意的人很危险。”郎平说。

  如果攻击者破坏了潜在的“防火墙”并且众神不知道如何获得钱包并试图猛烈地拆解,那么钱包的核心部件将会暴露出来。针对这种情况,许多钱包也设计有抗拆卸功能。 “许多硬件钱包外壳都是超声波成型的,很难拆卸。一旦删除它们,用户就可以轻松找到它们。“郎平说。

  “一些硬件钱包已被拆除,然后读出内部的精确信息,例如从闪存芯片中恢复一些敏感信息(导致私钥泄露,非常危险)。”神宇正在谈论针对硬件钱包的攻击者当暴力被拆除时,相信硬件钱包会遇到被打开和阅读的可能性。他认为制造商设计钱包“打开和销毁”更安全。有必要“检查您的系统是否已更改”。

  除硬件预防外,软件安全性也是一个更重要的部分。 “测量软件安全性最重要的部分是软件代码是否是开源的。”

  钱包的开源代码还允许钱包用户监督项目端代码结构和更新,更重要的是,验证钱包私钥的随机数是真正随机的。

  “如果私钥不是真正随机生成的。风险因素相对较高,可能会被破解。但验证私钥是否随机生成的操作对于大多数用户来说太复杂了,普通用户很难操作。”

  事实上,在2018年下半年,EOS公共链条DApps因随机数量被破解而导致大量安全事件,导致数百万EOS令牌被黑客一扫而空。但是,由于硬件钱包的脱机断开,攻击者仍然难以发起类似的攻击。

  开源代码的另一个好处是“监控”项目的开发进度。

  以中国着名的硬件钱包为例。钱包目前有六个开源代码库,其中三个关键代码库是从Trezor代码库中分叉出来的。 Trezor是一家国际资深硬件钱包公司,它在一定程度上解释了钱包软件部分的可靠性。

  但是,在分析了项目代码更新后,我发现了问题。打开硬件钱包的硬件代码库,我们发现代码代码自2018年5月以来很少更新。

  同时,打开钱包的源代码,发现2018年8月以后钱包源代码的更新频率也大大降低。

  蓝牙代码库更新停止,整个代码库更新的活动大大减少,表明项目的开发受阻,产品更新速度很慢。代码更新的频率已经下降,这实际上反映了钱包团队的工作状态。钱包安全需要一个很大的问号。

  通过开源代码更新的频率,我们可以了解硬件钱包产品开发的进度,然后判断产品的安全性。这是许多钱包和公共连锁项目对开源极为敏感的原因之一。

  对于加密货币资产持有者,钱包私钥的安全性不允许有任何“差池”。在这方面,硬件钱包如何保证这一点?


  私钥

  通过硬件钱包发送交易的过程大致如下:交易由移动终端APP构建,硬件侧确认交易信息,然后移动终端发送交易网络。然后等待区块链确认完成,交易成功。

  正是因为硬件钱包在交易过程中处于脱机状态,才能确保钱包私钥的安全性。

  在交易过程中,硬件钱包通过蓝牙,USB链接到应用程序,此过程确保钱包可以完全断开连接。 “目前,蓝牙的安全距离是9米。只要周围没有可疑的人,你就可以放心地操作。”郎平说。

  事实上,钱包里面还有 一个相当完整的“保密”程序。

  硬件钱包通过分层确定种子来生成主私钥,然后导出大量子私钥和地址。由于种子是长随机数,这不利于记忆,钱包将使用特殊算法将种子转换为一系列助记符。通过助记符,可以获得种子和种子后面的所有私钥。

  从种子到私钥到大量私钥的过程

  从这个角度来看,助记符的安全性非常重要,因此可以猜出助记符吗?通常,硬件钱包助记符由来自2048个字库的12个字组成。如何计算随机生成的助记符的所有可能性是一个置换问题,根据公式:n!/(n - r)! ,即2048!/(2048-12)!=5.2715379713014884760003093175282 e + 39。

  将乘以5的第39次幂乘以5.2,这个数据有多大?

  有些人使用数学模型来测量这些数据。这个数量相当于美国一堆1美元的硬币。这堆硬币有多高?高度大致相当于从地球表面到月球的距离。一次猜测助记符的概率相当于从如此大量的硬币中获取正确硬币的概率,这几乎是不可能的。

  一些硬件钱包有24个助记符,这减少了猜测助记符为零的可能性。

  “只要你不透露钱包的帮助词,硬件钱包就相对安全了。”郎平说。 Reddit用户丢失了私钥,是因为它购买的二手钱包的随机数是被卖家获得的,这才导致了钱的损失。


  作为一种“失去了就再也找不回来”的资产,硬件钱包要从靠谱的途径获得,这对资产安全非常重要。避开“中间人攻击”并避免使用含有漏洞的钱包基本上可以保证资产安全。

联系请扫码
活动会务
免费学习群
商务合作
13215946687