登录 后可观看高清视频

使用 safe-tx-hashes 工具来验证 calldata

19次播放
1天前

视频 AI 总结:

  1. 核心内容: 视频主要讲解了在 Web3 领域中,如何安全地签署交易,特别是多重签名(Multisig)交易。强调了验证交易内容的重要性,避免盲目“YOLO”签署,并介绍了使用 MetaMask 和硬件钱包进行安全交易验证的方法和工具。

  2. 关键信息:

    • 交易安全的重要性: 强调了在签署交易前验证交易内容的重要性,尤其是在管理大量资金的钱包时。
    • Bybit 被黑事件: 通过 Bybit 交易所被黑的案例,说明了不验证交易内容可能导致的严重后果。
    • 钱包选择建议:
      • 对于不熟悉交易验证的新手,建议使用托管钱包。
      • 学习交易验证后,可以使用浏览器钱包、桌面钱包或硬件钱包。
      • 推荐使用高级多重签名钱包(如 Safe)。
    • MetaMask 交易验证:
      • 不要信任 MetaMask 显示的“估计变更”,因为可能被欺骗。
      • 验证合约地址是否正确。
      • 查看方法(Method)是否与预期一致。
      • 务必查看十六进制(Hex)数据,并使用 Foundry 等工具解码 calldata,确认函数选择器和参数是否正确。
      • 了解信任假设,例如浏览器和 MetaMask 未被黑客入侵。
    • 多重签名(Multisig)交易验证:
      • 多重签名交易分为提议、签名和执行三个步骤。
      • 签名时,需要验证 EIP-712 格式的数据,包括 message hash、domain hash 和 safe-transaction hash。
      • 可以使用 safe-hashes 工具或 OpenZeppelin 的 safeutils 网站计算这些哈希值。
      • 执行交易时,需要验证 calldata,确保与预期一致。
      • 避免使用“签名并执行”功能,因为 MetaMask 可能不会显示签名内容。
    • 硬件钱包的使用:
      • 硬件钱包并非总是“冷钱包”,连接到互联网时即为“热钱包”。
      • 使用硬件钱包时,务必在设备上验证交易内容,而不是仅仅依赖 MetaMask 的显示。
      • 不同硬件钱包的验证方式不同,例如 Ledger 会显示 domain hash 和 message hash。
      • 验证硬件钱包上的 calldata 比较困难,可以使用拍照或 QR 码扫描等方式。
    • 热钱包与冷钱包的定义:
      • 热钱包:连接到互联网的钱包。
      • 冷钱包:未连接到互联网的钱包。
    • 安全建议:
      • 使用单独的设备进行交易签名。
      • 了解并最小化信任假设。
      • 采用多重验证方式,避免依赖单一工具。
      • 警惕安全疲劳,简化验证流程。
      • 使用开源工具。