在从事钱包安全审计工作长达五年之久的这段时间里面,经过大量的观察可以发现, 绝大多数的人之所以会掉进陷阱里面, 其根源主要集中在两个方面的事情上, 具体指代的就是私钥保存方式这一项以及授权检查流程这一项, 尽管这两个环节从目前来看属于非常基础的内容, 但是在实际进行操作的这个过程之中, 所包含的容易被忽略的坑或者失误点数量是非常非常多的。
在保管私钥这件事上, 不能只想着把它藏起来就行了。硬件钱包、加密的离线存储设备, 还有多重签名技术, 这些方式各有各合适的场景。我亲眼见到过太多人, 把助记词的截图保存在手机的相册里, 心里觉得只要没告诉别人, 这事儿就不出岔子, 以为这就安全了。
然而如果一台设备不小心中了病毒, 私钥就会被直接暴露出来。所以至少要做到物理隔离这一点, 并且进行定期的轮换操作, 每个季度就要更换一次助记词, 那些旧的助记词就要作废销毁。
授权检查这件事让人非常头疼。每次给合约签署授权的时候, 不能随便点击 Approve 就认为事情结束了, 必须仔细看金额和合约地址的情况。
我审问过的项目里面, 有用户给钓鱼合约授予了无限额度的情况, 这就等于白白送出钥匙。在开始日常操作之前, 最好先跑一遍合约白名单核验的程序, 一旦超过阈值就要强制触发二次确认的步骤。
你进行那次对于授权记录的非常认真的翻查工作, 究竟是在多长时间之前的时刻完成并且发生的这个事情?