从被盗 12 万美金到 3 分钟回滚:一个钱包老手的实战复盘
2023 年 3 月,我认识的一个 DeFi 老玩家在睡前点了“签名”,第二天醒来发现钱包里 47 个 ETH 和一堆蓝筹 NFT 全没了,按当时价格算超过 12 万美金。同一周,另一个朋友在钓鱼网站输入助记词后,因为用的是硬件钱包,资产毫发无损。两件事放在一起看,钱包这玩意儿的差别不在“用不用”,而在“怎么用”。
先搞清楚你手里拿的是什么
钱包分两种:托管和非托管。交易所账户是托管,私钥在平台手里,你只是有登录权限。非托管钱包私钥在你手上,丢了没人赔。
很多人栽跟头,是把托管钱包当保险箱。FTX 暴雷那会儿,多少人的资产直接冻在账户里取不出来。这不是运气问题,是结构问题。
非托管钱包也分热钱包和冷钱包。MetaMask、Rabby 是热钱包,联网,方便但攻击面大。Ledger、Trezor 是冷钱包,私钥不触网。讲真,资产超过 5000 美金,就该考虑冷热分离。
助记词这件事,90% 的人第一步就错了
我见过太多人把助记词存在手机备忘录、微信收藏、甚至截图放相册。2022 年有个案例,某用户 iCloud 被撞库,攻击者翻到相册里的助记词截图,钱包被清空。
正确的做法是物理介质。抄在纸上,两份,分开放。一份家里,一份银行保险柜或可信亲属处。别用电子设备记录,别拍照,别发给自己。
还有一个坑:助记词输入顺序。BIP39 标准是 12 或 24 个单词,顺序错了钱包地址就变了。有人恢复钱包时单词顺序搞混,以为助记词失效,其实是地址不对。恢复前先确认钱包类型和派生路径,MetaMask 默认是 BIP44,有些钱包用 BIP49 或 BIP84,路径不同地址完全不同。
签名比私钥更容易丢钱
私钥泄露是“明抢”,恶意签名是“暗偷”。2023 年链上钓鱼损失超过 3 亿美金,大部分是签名授权。
常见套路:你在一个看起来正常的网站点“连接钱包”,弹出一个“签名”请求,你以为只是登录,实际上授权了无限额度转账。等发现时,代币已经被转走。
操作上记住两条。第一,连接钱包后先看请求类型,eth_sign 和 personal_sign 要格外警惕,approve 要看额度,别给 unlimited。第二,定期用 revoke.cash 检查授权,把不用的 DApp 授权撤掉。我自己的习惯是每月 1 号查一次,5 分钟的事。
Rabby 钱包有个好处,签名前会弹出模拟结果,告诉你这笔操作会转走什么资产。MetaMask 也有类似功能但不够直观。新手用 Rabby 能避开不少坑。
小额热钱包,大额冷钱包,中间留个“中转站”
我的配置是这样的:日常交互用 Rabby,里面放不超过 1000 美金的资产。大额资产在 Ledger 里,平时不联网。中间设一个“中转钱包”,从冷钱包转出的资产先到中转,确认没问题再进热钱包。
为什么要中转?冷钱包签名需要物理确认,频繁操作很麻烦。但直接从冷钱包往陌生地址转,一旦地址填错或合约有问题,损失不可逆。中转钱包相当于缓冲带,出问题只损失这一层。
转账时还有个细节:先转一笔小额测试。比如要转 10 个 ETH,先转 0.01 个,确认到账再转剩下的。多花 2 美金手续费,换的是不犯低级错误。
多签不是机构专属
Safe(原 Gnosis Safe)多签钱包,很多人以为只有 DAO 才用。其实个人也能用。设置 2/3 多签,三个设备或三个人各持一个签名权,转任何资产都需要至少两个确认。
我有个朋友做 NFT 交易,钱包里常年几十个 ETH。他用 Safe 设置了 2/3,一个签名在自己手机,一个在 Ledger,一个在异地家人的设备上。去年他电脑中了一次恶意软件,攻击者拿到了本地一个签名权,但因为凑不齐两个,资产没动。
多签的 gas 成本比普通转账高一些,一笔大概多 30% 到 50%,但对比潜在损失,这笔钱花得值。
恢复演练,别等出事才做
最后一个实战建议:定期做恢复演练。拿一个空钱包,用你的助记词恢复一次,确认地址一致、资产显示正常。我每季度做一次,10 分钟。
有人助记词抄错一个单词,三年后钱包出问题才发现恢复不了。这种事不发生则已,发生就是 100% 损失。演练成本几乎为零,但能救命。
钱包安全没有“绝对”,只有“概率”。你把每个环节的出错概率压低一点,整体风险就降一个量级。别嫌麻烦,麻烦一次,省心很久。