Uniswap:不支持以太坊分叉!提醒合并后重大安全风险
全文导读
以太坊自动化做市(AMM)兑币协议Uniswap公告,没有计划支持任何以太坊分岔,PoS以太坊的过渡是重要奠基。Uniswap用户无需在合并时进行任何操作,协议将正常运行。
以太坊自动化做市(AMM)兑币协议Uniswap公告,没有计划支持任何以太坊分岔,PoS以太坊的过渡是重要奠基。Uniswap用户无需在合并时进行任何操作,协议将正常运行。但若第三方基础建设供应商出现提机,部分用户可能出现短暂无法使用的状况。
更重要的事,Uniswap提醒用户在合并后可能会有的风险。
Uniswap提醒开发者注意:预言机变化、许可重播性
Uniswap v3 TWAP预言机安全性的变化
Uniswap表示,Uniswap v3预言机的设计有权衡PoW的安全性(单一实体是难以预测,以连续挖到区块的)。在PoS中,每个epoch(时间单位:6分钟)都会提先宣布谁是区块生产者。这种前瞻性显示,要操弄连续两个预言机的数值,成本会大幅低于PoW。
例如:某一区块N的验证者可以支付额外的gas,来控制区块N-1中的最后一笔交易,因为他们知道他可以控制下一个区块的交易顺序。由于预言机是基于时间权重平均值(TWAP),这会开启一个机会,让验证者可以用极高或极低的价格来影响平均值。
Uniswap建议依赖Uniswap Protocol v3 TWAP预言机者,可以采用Euler团队的Median Oracle方案。
许可重播性(Replayability for permits)
Permit是Approve的替代方案,用户可以允许另一个智能合约使用他们的代币;这样就可以跳过Approve的步骤来减少gas花费,Permit只让用户可以产生一个加密的链下签名并指向他们的同意就可以了。
但是,有些Permit的施作,包含DAI、USDC、UNI还有Uniswap v2 LP代币,都已经写死(hardcoded)链ID了。在链分叉的情境下,新的链ID会被忽略。这会让创造一个新的重播签名路径,Permit可以让特定地址在分叉链上重播一个用户的花费行为。
举例而言,一个在以太坊上签署过permit的Uniswap路由器,可以在ETH PoW的同样地址上在施作一次。若是该Uniswap路由器没有能力在不需要任何额外交易授权之下,动用你钱包中的资金,那就不会有风险。
若是ETH PoW有个恶意合约部署至相同地址,那它可以拒绝那个在以太坊上已签署的permit,并且不需要用户的允许就能移动资金。