例如,传递值33974230439.550003将得到一个整数35624562649959629,可能比预期高六个数量级。 当这种错误的数字解释发生时,它要么由于优先gas金额高于每个gas的最大费用而失败,要么因为用户在钱包中拥有的ETH数量几乎总是不可能足够高来支付这笔巨额的Gas费超支。 这意味着,除了遇到此问题的少数硬件钱包用户,几乎所有人都不会理解他们的交易失败的原因。 在Ledger上签署交易时,会向用户显示最高费用,以便他们验证将要授权的交易。让事情进一步恶化的因素是,当前Ledger将非常大的费用显示为十六进制值。 在尝试重现该问题时,DeversiFi遇到了如上所示的费用提示。在显示该问题的示例交易中,B526167CF91FECE4 的十六进制值等于 13053145295991336164,这相当于13053145295991.336164 Gwei或 13.05 ETH的天文费用 。 如果此交易被接受(并且钱包中存在用于支付它的资金),用户将签署最高216,564 ETH 的费用。 DeversiFi怀疑区块13307440是否可能就是这种情况,其中已支付的最高费用超过了授权的ETH费用2倍。 (责任编辑:admin) |