QUICK REVIEW
[论文解读] How Perfect Offline Wallets Can Still Leak Bitcoin Private Keys
Stephan Verbücheln|arXiv (Cornell University)|Jan 2, 2015
Cryptography and Data Security参考文献 3被引用 5
一句话总结
本文展示了在比特币的ECDSA签名中,即使在空气隔离、离线钱包中,由于非确定性随机数选择不当,仍可能导致私钥泄露。通过在随机数生成过程中嵌入隐藏后门,恶意实现可借助看似与合法签名无法区分的签名,将私钥外泄。
ABSTRACT
ECDSA has become a popular choice as lightweight alternative to RSA and classic DL based signature algorithms in recent years. As standardized, the signature produced by ECDSA for a pair of a message and a key is not deterministic. This work shows how this non-deterministic choice can be exploited by an attacker to leak private information through the signature without any side channels, an attack first discovered by Young and Yung for classic DL-based cryptosystems in 1997, and how this attack affects the application of ECDSA in the Bitcoin protocol.
研究动机与目标
- 揭露ECDSA系统(如比特币)中的关键漏洞,即非确定性签名可被利用以泄露私钥。
- 证明即使在空气隔离、离线的环境中,若签名实现被恶意后门化,钱包也并非绝对安全。
- 表明此类攻击对用户和第三方均无法检测,因为恶意签名与真实签名在多项式意义上不可区分。
- 提出一种适用于椭圆曲线密码学的实用kleptographic设置,通过签名分析实现私钥提取。
- 强调在比特币钱包和硬件安全模块等高安全应用场景中,必须采用可验证实现。
提出的方法
- 采用kleptographic设置,恶意ECDSA实现将秘密信息嵌入签名过程中nonce(随机数)的选择。
- 使用带有秘密种子的隐藏伪随机数生成器,生成与私钥通过椭圆曲线运算数学关联的nonce。
- 构建签名生成过程,其中第一个输出(M₁)为曲线上标准点,第二个输出(M₂)通过固定常数结合M₁与公钥推导得出。
- 攻击者可后续通过求解涉及隐藏常数与签名分量的方程组,从两个连续签名中恢复私钥。
- 提出一种涉及签名方与监督方的两方协议,监督方通过预共享的承诺列表验证nonce的正确性。
- 引入预设协议,通过T_i值的承诺列表,实现在不暴露私钥的前提下验证nonce,同时保持对泄露的安全性。
实验结果
研究问题
- RQ1比特币的ECDSA签名是否可能在钱包完全离线且与网络隔离的情况下泄露私钥?
- RQ2恶意ECDSA实现能在多大程度上在随机数生成过程中隐藏后门而不被察觉?
- RQ3能否构建一种ECDSA的kleptographic设置,使攻击者能从签名中提取私钥,同时保持与真实签名的不可区分性?
- RQ4当签名设备本身可能被植入后门实现时,如何保护离线签名的安全性?
- RQ5可设计何种实用协议以检测或防止此类私钥泄露攻击?
主要发现
- 恶意ECDSA实现可将私钥信息嵌入签名过程中nonce的选择,实现无需侧信道的长期私钥恢复。
- 生成的签名在计算上与正确实现生成的签名不可区分,使用户或第三方无法检测。
- 即使在空气隔离环境(如离线比特币钱包或硬件安全模块)中,私钥仍可通过签名输出本身被外泄。
- 该攻击使用标准ECDSA参数即可实现,仅需对签名过程进行微小修改,具有高度隐蔽性且难以察觉。
- 所提出的两方协议(含监督方与预共享承诺)可通过在不暴露秘密数据的前提下验证nonce的正确性,防止此类泄露。
- 研究结果表明,用户无法信任任何无法完全验证的ECDSA实现,特别是闭源或嵌入式系统(如智能卡或比特币硬件钱包)。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。