从钱包被盗看四种安全策略

据深潮 TechFlow发布,作者:刘教链 Keplr 的社交登录钱包出了事,几千个账户被转走资产,官方把原因指向 Web3Auth 的基础设施漏洞。被盗的用户大多没做错什么,只是当初图方便,用 Google 或 Apple 登录建了这个钱包。 具体的事故原因还没有详细披露。厂商之间也在相互推诿。教链顺着这条线索稍微研究了一下,把几个典型的钱包所用的安全策略并列一下,看看有什么问题。 先把传统的加密货币自托管策略作为参考基准,也就是用户自己抄下助记词,写在纸上,妥善保管起来。 这种策略很简单,钥匙在你手里,谁也不知道。它的安全边界就是你自己:纸别丢、别拍照、别告诉任何人。缺点是人的记性靠不住,火灾、搬家、洗衣服,都可能让那张纸消失。但它的好处是,风险环节就在这张纸这里,你一眼就能看见,也十分清楚。十分清楚,就知道应该引起 120% 的重视,严防死守。 有了这个参考基准,我们接下来看看目前业内几种较为流行的钱包 App 的私钥托管策略。注意我们这里排除中心化交易所那种直接托管全部控制权的方案,讨论的是托管私钥助记词但不托管完整的资产控制权的方案。 先看 Uniswap 钱包的做法:它的策略比较简单,就是把助记词加密之后,备份到你自己的 iCloud 或 Google Drive。 苹果的服务器上存着一串密文,解开的密码在你脑子里。恢复的时候,要登录你的云账户,再输入当初专门用来加密助记词的那个密码,它和 Apple ID 不是同一个。云服务商拿到的只是密文,理论上解不开。 风险就转移到了账户这一侧:Apple ID 被盗、验证码被截、钓鱼网站骗走密码,任何一种都可能让备份落到别人手里。但至少,风险还在你熟悉的地方,云账户和密码,都是你天天在用的东西。 云端的风险只有一个:苹果或者谷歌的存储服务被黑客攻破。当然,这也是为何它选择苹果和谷歌而不是其他云服务商的原因,就是相对更信任这两家巨头的安全实力。 然后就是最经典的 Web3 钱包 MetaMask(俗称小狐狸钱包)的社交登录。它的做法要复杂的多:加密后的助记词存在 MetaMask 自己的服务器上,解密的钥匙被拆成几片,分给不同的服务器节点。 恢复时要有两样东西,一是 Google、Apple 或 Telegram 的登录凭证,二是你设的密码。两样凑齐,才能把钥匙拼回来。 MetaMask 特意说明,就算服务器全被人端了,攻击者拿到的也只是碎片,还得破解你的密码。这话没错,但要看在什么前提下。平时走在线恢复,登录凭证是第一道门,服务端的速率限制是第二道,密码只是第三道,弱密码并不会被立即攻破。 可一旦分片节点失守,攻击者拿到碎片,就可以在自己机器上离线穷举,速率限制失效,这时候密码强度才成了唯一的防线。 最后再看一下这次出事的 Keplr 用的那套方案。密钥拆成三片,一片在用户设备,一片在云端服务器,一片作为恢复备份,登录之后由服务器参与重组。 设计上这是三片里任意两片就能重组恢复出私钥,但只要其中两片实际都由同一家服务商控制,三片的门槛就退化成了单点突破口。这次的事故,教链直觉上觉得很可能出在这个地方,不过真实情况还得等厂商进一步披露更多具体的技术细节才知道。 把上面四种方式摆在一起对比对比,一个反直觉的规律就浮现出来了。 从第一种到第四种,看起来锁越来越多,组件越来越多,系统越来越复杂,声称或承诺复杂的加密策略能提高安全性。可用户能看清的风险,反而越来越少。 抄在纸上的钥匙,你知道它在哪;存进 iCloud 的密文,你还知道在苹果那里;到了 MetaMask 那套,密文在服务器、碎片在节点、密码在你脑子里,你得先弄懂四个角。
你怎么看这条消息?来投第一票

评论

0/500
免责声明:本文内容仅供参考,不构成任何投资建议。
更多快讯