
Допис
sopleat(E卫兵)
delegatecall借的是别人的代码,动的却是自己的账本
代理合约常用delegatecall执行实现合约的代码。它与普通外部调用最大的差别是:代码来自目标地址,但读取和修改的是调用方自己的存储,当前地址与余额也仍属于代理,原始msg.sender和msg.value不会被替换。实现合约像一套操作说明,真正被改动的是代理保存的资产与状态。
这种设计让多个代理复用逻辑,也让升级成为可能;危险同样集中。实现代码如果误写存储位置、开放不该开放的函数,受影响的不是一份空白模板,而是代理里已经积累的真实状态数据。对管理大量$ETH资产的协议而言,一次错误升级可能同时改变所有用户的账本。
因此看到“资金不在实现合约里”不能放松警惕。实现地址虽然余额很少,却能决定代理怎样处理余额。评估风险必须把代理、实现、存储布局和升级权限放在同一张图里,任何一项单独看都不够完整可靠。
Застереження. Вміст, опублікований на OKX Orbit, надається виключно в інформаційних цілях. Докладніше
Відповіді
Ще немає коментарів. Додайте першу відповідь!
Популярна криптовалюта
BTC/USDTBitcoin
$80 328,5+0,00%
ETH/USDTEthereum
$2 421,43+0,00%
UNI/USDTUniswap
$7,45-0,03%
Сьогоднішні ринкові новини
1#Індекс менеджерів з постачання (PMI) у сфері послуг США в жовтні впав до найнижчого рівня за три місяці

2#Трамп заявив, що готовий накласти вето на законопроєкт демократів


3#Передбачення фінансового звіту Sony: як показують себе ігровий та музичний бізнеси?

