设置代码交易携带由元组 [chain_id, address, nonce, y_parity, r, s] 组成的 authorization_list;每个元组都是账户所有者对 keccak256(0x05 ‖ rlp([chain_id, address, nonce])) 的签名。处理交易时,会把 23 字节的委托指示符 0xef0100 ‖ address 写入该账户的代码,于是对该账户的调用会在账户自身的上下文中运行委托合约的代码。chain_id 为 0 时,授权在所有链上都有效。
这让现有地址无需转移资金,就能获得批量交易、代付 gas 以及由通行密钥或会话密钥控制等能力。它也带来了新的钓鱼目标:一次签名授权就会把账户的全部控制权交给委托合约,chain_id 为 0 时还包括该账户在其他链上的控制权;而且更换委托后,先前的委托合约写入的存储仍会保留。EIP-7702 委托解码器可以显示一条授权委托给了谁。