Hardware Wallet
硬件钱包(Hardware Wallet)是一种离线存储私钥的物理设备,具有极高的安全性,能够抵御黑客攻击和网络攻击。它是一种冷钱包,外形类似于普通的USB闪存盘,专门为存储加密货币而设计。这种钱包允许用户直接从中进行交易,而无需存入交易所钱包。[1][2]\
概述
加密硬件钱包是一种将用户加密货币资产的私钥存储在安全芯片中的设备。它允许用户在不将私钥暴露给在线威胁的情况下访问和管理加密资产。加密硬件钱包也被称为冷钱包,因为它不连接到互联网。
使用硬件钱包时,交易是在设备内部使用“加密桥”(crypto bridge)签署的,这是一种简单的软件组件,旨在促进硬件钱包与区块链的连接。当用户将硬件钱包连接到电脑时,加密桥会将未签署的交易数据发送到设备。硬件钱包所有者随后使用其私钥签署交易并将其发回给加密桥,加密桥随后将这些已完成的交易广播到整个区块链网络。重要的是,在整个过程中,用户的私钥绝不会离开或传输到硬件钱包之外。[3][2]\
核心特性
- 离线存储: 在不使用时,钱包保持与互联网断开连接,使其能够抵御在线黑客尝试。这种冷存储是防御网络攻击威胁的关键手段。
- 安全元件: 硬件钱包内置了专门设计用于保护加密密钥的硬件组件。这些芯片具有防篡改特性,使恶意行为者难以破坏钱包的安全性。
- PIN码或密码保护: 这一层安全保障确保了即使设备落入他人之手,未经授权的访问也几乎是不可能的。
- 备份与恢复: 硬件钱包提供恢复种子或助记词,通常由12或24个单词组成。通过这个种子短语,可以在新设备上恢复对资金的访问。
- 交易确认: 硬件钱包通常要求用户在设备的屏幕上验证并批准交易。这一步骤确保了用户对自己的资金拥有完全控制权,并能在交易最终确定前审查并确认每笔交易。
类型
- 基于USB的硬件钱包: 最常见的硬件钱包类型,是通过USB连接到电脑或移动设备的小型便携式设备。示例包括 Ledger Nano S、Ledger Nano X 和 Trezor Model T。
- 蓝牙硬件钱包: 蓝牙硬件钱包提供与电脑或移动设备的无线连接,在兼容性和易用性方面提供了更高的灵活性。例如 Ledger Nano X。
- 基于智能卡的硬件钱包: 设计成智能卡形式的硬件钱包,类似于信用卡或安全令牌。它们通常配合读卡器使用以访问加密货币资金。此类钱包的示例包括 CoolWallet S 和 Cobo Vault。
- 金属种子存储: 虽然不是传统的硬件钱包,但这些是专门设计用于安全存储恢复种子(助记词)的物理设备。它们由金属或其他坚固材料制成,保护恢复种子免受物理损坏、水灾和火灾的影响。示例包括 CryptoSteel 和 Billfodl。
- 纸钱包: 某些硬件钱包制造商提供纸钱包备份方案作为硬件钱包的补充。这些纸钱包带有二维码,扫描后可用于配置硬件钱包或找回资金。由于私钥保持离线,这增加了一层额外的安全性。例如 Ledger Nano X 与 Ledger 的“加密资产恢复包”配对使用。
- 移动硬件钱包: 几家硬件钱包制造商推出了其产品的移动版本,使用户能够将智能手机转变为安全的硬件钱包。这些移动硬件钱包通常与专用的移动应用程序配对。例如 Ledger Live 移动应用与 Ledger 硬件钱包的组合。
- 多重签名硬件钱包: 硬件钱包旨在与其他钱包协同工作,以创建多重签名钱包,增加额外的安全层。用户通常需要多个硬件钱包来签署交易,这使得单个受损设备更难访问资金。多重签名功能可以集成到一些标准硬件钱包中。
Joe Grand 关于硬件钱包漏洞的案例研究
Joe Grand 是一位硬件黑客,也是 L0pht 小组的前成员。L0pht 是一个黑客集体,曾于1998年在美国参议院就互联网漏洞作证。他曾破解了一个 Trezor One 硬件钱包,为一位忘记密码的客户找回了价值200万美元的加密货币。[11]
2021年,电子工程师兼发明家 Joe Grand(黑客代号为“Kingpin”)受邀破解 Dan Reich 的 Trezor One 硬件钱包,其中存有价值250万美元的 Theta 代币。Reich 和他的朋友弄丢了硬件钱包的恢复短语。最初,他们在2018年购买了一批价值5万美元的 Theta 代币。到2021年,这批代币的价值已飙升至250万美元,这加剧了恢复访问权限的紧迫性。[10]
Reich 和他的朋友在瑞士找到了一位出资人,对方声称在法国有同事可以在实验室破解钱包。他必须将钱包交给瑞士的出资人,由其带给法国的同事。2020年的疫情减缓了他们的计划,但到了2021年2月,随着代币价值升至250万美元,Reich 正准备飞往欧洲时,突然在美国找到了一位名叫 Joe Grand 的硬件黑客。Grand 在波特兰自家的后院有一个定制实验室,他购买了几个与 Reich 拥有的完全相同的钱包,并在上面安装了相同版本的固件。然后,他花了三个月时间进行研究,并用各种技术攻击这些练习用的钱包。
Grand 知道英国有一位15岁的硬件黑客 Saleem Rashid,他在2017年开发了一种成功解锁科技记者 Mark Frauenfelder 的 Trezor 钱包的方法,并帮助他找回了价值3万美元的比特币。Rashid 发现,当 Trezor 钱包开启时,它会将存储在钱包安全闪存中的 PIN 码和密钥复制一份并放入 RAM 中。钱包中的一个漏洞允许他将钱包置于固件更新模式,并在设备上安装自己的未经授权的代码,从而让他能够读取 RAM 中的 PIN 码和密钥。但安装他的代码会导致存储在长期闪存中的 PIN 码和密钥被擦除,只留下 RAM 中的副本。
这使得 Grand 使用该技术具有风险。如果他在读取数据前不小心擦除了 RAM,密钥将无法恢复。随后,他们发现,在固件更新模式的某个时刻,PIN 码和密钥会被临时移动到 RAM 中,以防止新固件覆盖它们,待固件安装完成后再移回闪存。因此,他们设计了一种被称为“wallet.fail”的技术。这种攻击使用故障注入方法(glitching)来破坏保护 RAM 的安全性,并允许他们在 PIN 码和密钥短暂存在于 RAM 时读取它们。\
通过对芯片进行故障注入攻击,wallet.fail 团队发现他们可以将安全级别从 RDP2 降级到 RDP1。然后,他们可以强制钱包进入固件更新模式,将 PIN 码和密钥发送到 RAM 并进行读取。这与 Rashid 的攻击类似,不同之处在于故障注入使他们无需利用代码即可访问 RAM。Reich 随后立即将 Theta 代币转出账户,并向 Grand 支付了一定比例的服务费。[10][11]



