Euler自动化授权给了谁?核EVC子账户、operator与permit范围
链小知 · 进阶 · 核验 · 依官方文档整理
从已有授权记录分开ERC20额度、EVC operator、控制器和应急模式。
开始前准备
- 准备已有网络/EVC地址、owner及sub-account、operator授权记录、permit字段和已保存模拟/回执;不提供签名或私钥,不调用或更改权限。
- 按2026-10-14官方公开正文核已有脱敏记录;verification=documentation。本轮未登录、请求账户/报价/RPC、安装、签名、提交交易或操作资金。
1. 先核子账户而不是另一个可签名钱包
每个prefix(地址前19字节)有256个派生账户,owner地址XOR 0至255得到各账户,主地址是ID0。派生地址没有独立私钥,不是新的可正常转币钱包;getAccountOwner返回零可能只是未注册,不能即认没有owner或无人控制。
检查结果:owner、prefix、account ID及注册状态分开,未知归属未当无权限。
2. 对照onBehalfOfAccount与receiver
存款来源需实际控制ERC20 balance/allowance,通常为主钱包,而shares receiver可为子账户;借款的onBehalfOfAccount是债务账户,接收token的receiver应是能控制ERC20的地址。普通ERC20直接送派生地址通常无法用owner普通签名取回,除非该token/集成有已核EVC-aware恢复路径。
检查结果:资产来源、份额接收、债务归属和token接收四栏可核。
3. 检查operator是单账户还是整prefix
setAccountOperator(account,operator,true)授一账户;setOperator(prefix,operator,bitField)逐bit覆盖256IDs,type(uint256).max是全部权限范围,不是最大token额度。operator可代执行移动资金、借还款等操作;撤某ERC20 allowance不能代替撤EVC operator。
检查结果:operator完整地址和实际bit范围可解释,代执行权限未当只读。
4. permit离线签名也可授权实际执行
原permit需保留signer、sender、nonceNamespace、nonce、deadline、value与data目标。nonceNamespace为独立重放/顺序流,不是所有permit共用一个计数。EIP712签名经EVC执行可产生资产动作,relayer承担执行Gas但应用可能另收回成本,不能写成零资金风险。
检查结果:每个permit对象、期限、执行方和calldata可核;缺字段标未判断。
5. 应急模式不是同一种开关
Lockdown限制该prefix全256账户,仍允许管理operators/nonces且controllers仍能controlCollateral;不是阻止清算的冻结。Permit Disabled阻止该owner在该prefix的permit执行,不代表普通operator授权已消失。撤operator用false或改bitfield;controller依自身规则通常在债务清偿后才能disable自己。
检查结果:原模式/撤权回执与作用对象一致,未把一种撤权当全部权限归零。
6. 模拟与更新回执分别结案
batchSimulation可返回逐item、accountChecks和vaultChecks结果,但外部合约可察觉模拟模式并表现不同,成功不保证真实执行安全。核既有变更回执后的operator位图、mode及controller状态;只有模拟或待确认交易时,权限结论保留变更未验收。
检查结果:模拟结果、发送状态和最终权限状态分开,缺真实更新不写撤权完成。
怎样确认完成
- 得到按产品身份、时点、单位、权限与原结果分列的核对记录;未取得的字段保留未知。
- 只确认文档方法与已有材料的口径,不确认本人实时仓位、合约部署、退出结果或安全性。
常见错误与边界
- 子账户隔离仓位不消除共同operator/controller风险。
- 派生地址不是常规收款钱包,Lockdown不能保证躲过清算。