解释mint级永久代理可转移或销毁任意账户代币、由谁轮换以及为何账户持有人无法单独撤销。
Permanent Delegate是写在mint上的全局权限,检查单个Token账户的delegate字段发现不了它。
权限范围
创建mint时必须先初始化PermanentDelegate,再初始化mint。扩展保存的地址可作为authority对该mint下任何Token账户执行transfer或burn。
初始化顺序
账户owner不能通过revoke撤销这项mint级能力。钱包展示代币风险时应读取mint extensions,并把永久代理与freeze authority分开。
易错点:Permanent Delegate是写在mint上的全局权限,检查单个Token账户的delegate字段发现不了它。
轮换机制
相应mint authority可使用SetAuthority与PermanentDelegate类型轮换地址。所谓permanent描述的是权限覆盖范围,不是地址永远不能变。
把事实放在一起
| 证据项 | 规范结论 |
|---|---|
| 1 | PermanentDelegate是mint级扩展,指定的代理可对该mint的任意Token账户授权转账或销毁。 |
| 2 | 账户持有人不能在自己的Token账户上撤销它;mint级权限可由相应authority通过SetAuthority轮换。 |
| 3 | InitializePermanentDelegate必须在InitializeMint之前完成,检查代币风险时应直接读取mint扩展。 |
操作证据怎样留存
| 检查层 | 需要留下的证据 | 阻断条件 |
|---|---|---|
| 权限范围 | 从Solana Documentation确认Token-2022 Permanent Delegate有什么权限的正式定义,并保存网络、地址与读取时间 | 定义或版本对不上时,不继续套用本文步骤 |
| 初始化顺序 | 在原始返回、签名消息或交易指令中定位对应字段,不用界面缩写代替 | 找不到原始值时,把结果标为未验证 |
| 轮换机制 | 用Token Extensions Overview复核实现行为,特别记录可选扩展与权限主体 | 实现与规范语义不一致时,按具体部署重新评审 |
| 持币核验 | 构造一个失败样例,确认客户端会明确拒绝而不是静默修正 | 失败仍被显示为成功时,停止上线并补充状态校验 |
记录Token-2022 Permanent Delegate时,把“输入快照”和“判断结果”分开。该主题的快照包含原始bytes、字段单位、对象地址、区块高度与Solana Documentation版本;结果注明通过的规则和仍未知的持币核验。这样即使Token-2022 Permanent Delegate有什么权限随后变化,也能复现当时的结论。
Token-2022 Permanent Delegate的测试至少覆盖正常路径、缺少初始化顺序、提交前状态改变及客户端不支持当前版本。前几类验证轮换机制边界,最后一类确认产品不会删除字段或改走未经用户确认的回退路径。
持币核验
合规代币可能有合理使用场景,但持币人面对的是同一技术能力。产品应展示当前delegate、最近轮换事件和治理控制者。
剩余风险
永久代理存在不等于一定会使用,但它构成发行方或治理方可移动持币的明确权限。 相邻知识可继续对照Token-2022转账费、权限模型。
引用依据
| 来源 | 用途 |
|---|---|
| Solana Documentation | 正式接口、字段与规范语义 |
| Token Extensions Overview | 实现路径、兼容性或安全边界 |
Token-2022 Permanent Delegate的资料访问口径为2026-07-17;遇到Draft状态、可升级部署或可变网络参数,应在后续复核日重新读取Solana Documentation。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。