# AnySwap 攻击事件 **Published by:** [un.Block](https://paragraph.com/@un-block/) **Published on:** 2021-10-09 **URL:** https://paragraph.com/@un-block/anyswap ## Content 不同于常见的闪电贷攻击事件,AnySwap 这次的安全事件颇为新颖AnySwap 这次的漏洞在于意外的两笔交易使用了相同的 R 值签名。攻击者从中成功还原出了管理员账户的密钥。交易签名在以太坊交易中,我们将交易中特定数据子集的哈希值用用户的私钥进行签名。其他人可以通过用户的公钥对签名进行认证。以太坊上的签名由 R,S,V 三个值组成。R 和 S 是 ECDSA 签名的输出。V 是 Recover Id,为 1 或者 ,用来辅助校验签名。https://learnblockchain.cn/books/geth/part3/sign-and-valid.html漏洞由于 AnySwap 客户端升级,一个随机数 K 被使用了两次,这导致两笔不同的交易具有相同的 R。由于签名的信息不同,可以推导出随机数 K。再加上已经知道的公钥,我们就可以得出私钥。 假设第一笔交易的签名为 r1,s1。第一笔交易签名的信息是z1。第二笔交易的签名是r2,s2。第一笔交易签名的信息是z2。由于在这个例子中,r1 = r2,我们用 r 来表示它们。通过这个公式我们可以推导出私钥。相关阅读:Recovering Bitcoin private keys using weak signatures from the blockchain签名与校验ECDSA账户私钥被破解?拆解 Anyswap 跨链桥被⿊细节 ## Publication Information - [un.Block](https://paragraph.com/@un-block/): Publication homepage - [All Posts](https://paragraph.com/@un-block/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@un-block): Subscribe to updates