题目
团队准备上线一个质押按钮:点击后调用合约的写入方法。测试时发现两类问题——页面上显示的金额与钱包内看到的金额不一致,以及有交易被发到了没有代码的地址上。请给出一份签名前的校验清单,并说明每一项的依据。
考察目标
- 交易字段与签名之间的关系。
- 目标地址是否有代码对调用结果的影响。
- 地址表示形式与金额单位的校验。
- 模拟结果与链上结果的区别。
给出签名前的校验项与各自的依据,说明展示与签名同源、目标地址类型与链标识一致性的处理方式。
团队准备上线一个质押按钮:点击后调用合约的写入方法。测试时发现两类问题——页面上显示的金额与钱包内看到的金额不一致,以及有交易被发到了没有代码的地址上。请给出一份签名前的校验清单,并说明每一项的依据。
交易的字段在签名时被固定下来,页面展示的信息必须与提交给钱包的参数同源。发往普通无代码地址的交易不会执行应用合约逻辑,但预编译地址即使没有普通 EVM 代码仍有协议内置行为;质押调用应核对当前链、目标合约地址及预期函数。地址校验和可帮助发现部分录入错误。实现差异与工程取舍见深入回答。
0x 前缀,不检查校验和(依据:EIP-55 §Specification)发现这道题有问题? 反馈此题