代币创建

Solana 上的铸币权限和冻结权限是什么?

铸币权限决定 Solana 代币的供应量能否增长,冻结权限决定是否有人能锁定持有者的余额。本文介绍两者的作用、元数据和 Token-2022 还有哪些权限、何时保留它们是正当的,以及如何检查和撤销。

Antonio VaganovsAntonio Vaganovs·发布于 ·阅读约 12 分钟
一枚发光的 Solana 硬币位于两把被划掉的钥匙之间:一把正掉落硬币,标注 Mint;另一把带有雪花和挂锁,标注 Freeze

Solana 上的每个代币都始于一个铸币账户(mint account):这是由代币程序维护的一条小记录,定义了代币本身。这条记录中的两个字段,比任何白皮书都更能说明一个代币是否安全。铸币权限(mint authority)可以创建新代币,冻结权限(freeze authority)可以锁定任何持有者的余额。代币扫描工具、钱包和 DEX 首先检查的就是这两项,经验丰富的买家首先查看的也是它们。

下面将介绍:每种权限实际能做什么、代币还可能拥有哪些其他权限、什么情况下保留权限是正当的、什么情况下是危险信号、如何自行检查任意代币,以及如何使用 ChainTx.Tools 的 Solana 创建代币工具撤销权限。

简短回答

权限持有者能做什么撤销后(设为 None)Meme 币的常见选择
铸币权限随时铸造任意数量的新代币供应量永久固定撤销
冻结权限冻结该代币的任意代币账户,并可再次解冻任何人都无法再冻结账户撤销
元数据更新权限修改名称、符号、Logo 和链接元数据变为不可变Logo 和链接定稿后撤销
Token-2022 扩展权限修改转账手续费、转移或销毁任何人的代币、更换转账钩子等设置按现状锁定避免使用此类扩展,或撤销能撤销的权限

撤销是一扇只能单向通过的门。Solana 文档明确指出,将权限设为 None 会永久移除该角色。任何人都无法恢复它:创建者不能,代币程序也不能。

铸币账户存储了什么

在 Solana 上,代币并不是一个独立的智能合约。经典代币全部由一个共享程序 SPL Token 处理,较新的代币则由 Token-2022 处理。让代币独一无二的是它的铸币账户。在经典程序中,铸币账户长82字节,包含五个字段:mint_authority、supply、decimals、is_initialized 标志和 freeze_authority(Solana 文档)。两种权限都是可选的:字段要么存有一个地址,要么为空。Token-2022 保留了这一布局,并在其后追加扩展(extensions),每个扩展都有自己的权限。

权限只是一个公钥。它背后可以是普通钱包、多签,也可以是程序派生地址(PDA):一种没有私钥的地址,只有某个特定程序才能按照其代码中写定的规则为它签名。因此,问题不仅在于权限是否存在,还在于由谁持有。

铸币权限:谁能创建新代币

铸币权限的持有者可以调用 MintTo,向任意账户铸造任意数量的代币。代币程序不设上限,因此只要该权限存在,网站上写的“最大供应量”就毫无意义。只有当该字段为空时,供应量才真正固定,此时 Solana Explorer 会将其标记为 Fixed Supply。对 Meme 币来说,有效的铸币权限是最严重的风险:所有者,或任何窃取了所有者密钥的人,都可以铸造数十亿枚代币,将其卖入资金池,只需几笔交易就能让价格归零。

不过,Solana 上一些规模最大的代币出于正当理由保留了铸币权限:

  • USDC:客户存入美元时,Circle 铸造新的 USDC,赎回时将其销毁。截至撰写本文时,USDC 的铸币权限并非单个钱包,而是代币程序自身的 2-of-4 多签账户。
  • 流动性质押代币:JitoSOL 的铸币权限是 SPL Stake Pool 程序的一个 PDA。只有当有人向池中存入 SOL 时才会铸造新的 JitoSOL,任何人都无法手动铸造。
  • 奖励和排放代币:供应量按公开的时间表增长,理想情况下由程序强制执行,或由多签持有权限。

相比之下,BONK 和 JUP 的铸币权限都已设为 None,因此它们的供应量永远不会增加。

关键在于谁持有权限

启用的铸币权限并不自动意味着骗局,已撤销的权限也不能保证安全。如果 Meme 币的铸币权限由个人热钱包持有,那就是危险信号。如果持有者是受监管发行方的多签,或规则公开的程序 PDA,那就是一种设计选择。

冻结权限:谁能锁定持有者的代币

冻结权限的持有者可以对该代币的任意代币账户调用 FreezeAccount 进行冻结,并用 ThawAccount 解冻。冻结作用于代币账户,而不是铸币账户。被冻结的账户保留余额,但在解冻之前无法接收、转账或销毁代币。一旦冻结权限被撤销,该代币的账户就再也不能被冻结。

“任意代币账户”真的是指任意账户:持有者的钱包、交易所的充值账户,甚至流动性池的金库(vault)。这使冻结权限成为一种经典骗局的基础:买家可以买入,但账户随后被冻结,导致无法卖出,而创建者趁机抽干资金池。Solflare 将启用的冻结权限视为可能存在骗局的强烈信号。

正当用途是合规。Circle 在其 USDC 条款中保留“封禁”某些 USDC 地址的权利,这些地址与非法活动有关;在 Solana 上,冻结权限就是实现这一点的工具。USDC 的冻结权限同样由代币程序的 2-of-4 多签持有。USDT 和 PayPal 的 PYUSD 也保留了冻结权限。对于受监管的稳定币,这在意料之中;而对于 Meme 币,冻结权限没有任何存在的理由。

在 Token-2022 中,Default Account State 扩展还可以让每个新代币账户一开始就处于冻结状态,直到冻结权限持有者将其解冻。

元数据更新权限

您在钱包中看到的名称、符号和 Logo 并不存储在上述铸币字段中。它们存放在元数据里,而元数据有自己的权限。

经典 SPL 代币使用 Metaplex Token Metadata 程序。铸币账户旁边的一个单独账户保存名称(最多32个字符)、符号(最多10个字符)、包含 Logo 和链接的 JSON 文件的 URI、更新权限(update authority)以及 isMutable 标志(Solana 文档)。将 isMutable 设为 false 是最终决定:根据 Metaplex 的说法,代币一旦变为不可变,就无法再更新。

Token-2022 代币通常借助两个扩展把元数据保存在铸币账户内。Metadata Pointer 有一个权限,可以把元数据指向另一个地址;Token Metadata 有一个更新权限,可以修改各个字段。清除该权限会使元数据不可变。

可变的元数据让所有者可以重命名代币、抄袭热门代币的 Logo,或把网站链接换成钓鱼网站。扫描工具将其视为较轻的风险:RugCheck 把“Mutable metadata”显示为警告(warning)而非危险(danger),Phantom 的代币页面也会显示代币是否可变。但这种取舍是真实存在的:元数据一旦不可变,损坏的 Logo URL 就再也无法修复。请先确保 JSON 和图片存放在持久存储上,并能在多个钱包中正确显示。

Token-2022 扩展权限

Token-2022 扩展赋予代币新的能力,而每个扩展都附带自己的权限。截至撰写本文时,该程序的 AuthorityType 列表共有18项。买家最关心的是以下几项:

扩展权限允许做什么对持有者的风险
Transfer Fee手续费配置权限(fee-config authority)修改手续费,最高可达100%;修改在两个纪元(epoch)后生效高:买家入场后手续费可能被提高
Transfer Fee提取预扣手续费权限(withdraw-withheld authority)收取预扣在持有者账户中的手续费单独来看较低
Permanent Delegate委托人从任何账户转移或销毁代币;持有者无法撤销致命
Transfer Hook钩子权限更换每次转账都会运行的钩子程序高:新代码可能阻止转账
Mint Close Authority关闭权限供应量为零时关闭铸币账户低
Metadata Pointer指针权限将元数据指向另一个账户与可变元数据相同

详情请参阅 Solana 文档中关于转账手续费和永久委托的说明。

Token-2022 稳定币 PayPal USD(PYUSD)就是一个实际例子。截至撰写本文时,其铸币账户除了铸币权限和冻结权限之外,还设有永久委托、转账手续费配置(费率设为0%)、未设置程序的转账钩子、保密转账(Confidential Transfers)、元数据指针、元数据更新权限和铸币关闭权限。对受监管的发行方而言,这是一套有意为之的合规工具。若同样的清单出现在 Meme 币上,就会被解读为一连串危险信号。

何时保留权限是正当的

代币类型铸币权限冻结权限原因
Meme 币、社区代币已撤销已撤销代码是持有者唯一的保障
法币稳定币(USDC、USDT)发行方的多签发行方存入时铸造,赎回时销毁;因制裁和法院命令而冻结
流动性质押代币(JitoSOL)程序 PDA无只有在存入 SOL 时由程序铸造
奖励或排放代币公布时间表的程序或多签通常无供应量按设计增长,但可预期
代币化现实世界资产发行方发行方,通常还加上扩展KYC、资产追回等法律要求

如果您的项目确实需要某项权限,请将其保存在 Squads 等多签中,而不是浏览器钱包里;公开说明该权限存在的原因和持有者;并撤销所有不需要的权限。

扫描工具、钱包和 DEX 如何对待有效权限

  • RugCheck 将“Mint Authority still enabled”和“Freeze Authority still enabled”显示为危险级风险,将“Mutable metadata”显示为警告。知名稳定币似乎被单独处理,不会显示这些标记。
  • Jupiter:Tokens API 返回一个 audit 对象,其中 mintAuthorityDisabled: false 和 freezeAuthorityDisabled: false 被标记为风险(Jupiter 文档)。
  • Phantom 的代币页面会显示代币是否可变、是否可增发,以及前几大持有者的占比(Phantom)。
  • DEX:Meteora DLMM 不接受未经审核的可冻结代币(Meteora 文档)。Orca Whirlpools 要求带冻结权限的代币持有代币徽章(token badge),并建议除非有法律合规等明确理由,否则应禁用冻结权限(Orca 文档)。
有效的冻结权限可能会阻碍您自己的资金池

在 Meteora DLMM 和 Orca Whirlpools 上,仍能冻结账户的代币如果没有经过审核或获得徽章,就无法创建资金池。请在创建资金池之前撤销冻结权限,而不是之后。

如何自行检查代币的权限

  1. Solscan:打开 solscan.io/token/MINT_ADDRESS。代币概况摘要中有一个 Authority 字段,列出更新权限、铸币权限和冻结权限;已撤销的权限显示为“N/A”(Solscan 指南)。
  2. Solana Explorer:没有铸币权限时,供应量会标记为“Fixed Supply”;Mint Authority 和 Freeze Authority 行仅在已设置时才显示。对于 Token-2022 代币,页面还会列出 Transfer Fee Authority 和 Permanent Delegate 等扩展权限。
  3. RugCheck:将代币地址粘贴到 rugcheck.xyz,查看是否有上述标记。
  4. ChainTx.Tools:在我们的 Solana 创建代币工具的 Set/Update Authority 标签页中,粘贴代币地址并点击 Load token。该标签页会从链上读取铸币账户及其 Metaplex 元数据,无需连接钱包即可显示当前的铸币、冻结和更新权限。
ChainTx.Tools Solana 创建代币工具的 Set/Update Authority 标签页,已加载 USDC 铸币账户
Set/Update Authority 标签页中的 USDC:铸币权限、冻结权限和元数据更新权限均已设置
不只看标记,还要查看地址

如果某项权限已设置,请打开持有它的地址。多签(如 USDC)或程序 PDA(如 JitoSOL)所传达的信息,与一个在发行前一小时才转入资金的新钱包截然不同。

如何在 ChainTx.Tools 上撤销权限

创建时:在 Solana 创建代币工具中,“增发权限”(即铸币权限)和“冻结权限”开关默认关闭,这意味着两者都会被撤销(“关闭 = 固定供应量”“关闭 = 无法冻结”)。对于 Token-2022,冻结权限从一开始就不会设置,铸币权限会在全部供应量铸造完成后,在同一笔交易中立即撤销;SPL 代币同样在一笔交易内完成所有操作。以 Pump.fun 类型发行的代币,由于 Pump.fun 程序的设计,本身就没有这两项权限。

对于现有代币,请使用 Set/Update Authority 标签页:

  1. 连接当前持有该权限的钱包。
  2. 粘贴代币地址并点击 Load token。
  3. 对于铸币权限和冻结权限,选择 Keep(保留)、Transfer(转移,例如转给多签)或 Revoke(撤销)。对于 Metaplex 元数据,第三个选项是 Make immutable(设为不可变)。
  4. 点击 Apply changes 并批准。铸币权限和冻结权限的更改放在一笔交易中,元数据更改放在另一笔交易中。

该标签页同时支持 SPL Token 和 Token-2022 代币,但只能修改您所连接钱包持有的权限;其他权限会标记为“Not controlled by your wallet”。

标签页的限制

该标签页上的更新权限指的是 Metaplex 的更新权限。对于元数据存放在铸币账户内的 Token-2022 代币,标签页会显示“No Metaplex metadata on this token”,并且无法撤销其元数据、元数据指针、转账手续费或永久委托权限。使用我们的创建代币工具创建的 Token-2022 代币,元数据更新权限(如果启用了转账手续费,还有手续费相关权限)保留在创建者的钱包中。如需撤销这些权限,请使用支持 Token-2022 的 spl-token CLI,并用权限持有者的密钥对签名,例如 spl-token authorize MINT_ADDRESS metadata --disable。

常见错误

  1. 在供应量确定之前就撤销:撤销后连一枚代币都无法再增加,因此请先铸造全部数量。
  2. 把权限交给“死”地址,而不是撤销:任何查看铸币账户的人都会在字段中看到一个地址,而证明没有人控制该地址,远比展示一个空字段困难。
  3. 忘记 Token-2022 权限:如果手续费配置权限或永久委托仍然有效,撤销铸币权限和冻结权限也无济于事。
  4. 以为撤销权限就能让代币安全:撤销只消除了两种特定风险。未锁定的流动性、集中的供应量和内部人钱包需要另行检查。

总结

铸币权限决定供应量能否增长,冻结权限决定是否有人能锁定持有者的余额,元数据和 Token-2022 权限则决定代币的身份信息和转账规则日后能否更改。Meme 币的标准很简单:撤销铸币权限和冻结权限,元数据定稿后将其锁定,并避免使用带有强大权限的扩展。稳定币和流动性质押代币出于设计需要保留了部分权限,但会将其交由多签或程序持有。在买入或发行代币之前,请亲自检查这些字段:在 Solscan、RugCheck 或我们的 Set/Update Authority 标签页上只需一分钟。

常见问题

+撤销铸币权限后会发生什么?

铸币权限字段被设为 None,任何人都无法再铸造新代币,因此供应量变为固定。这一更改是永久性的,无法撤回。请在撤销之前铸造好所需的全部供应量。

+已撤销的权限可以恢复吗?

不可以。Solana 的代币程序无法为已设为 None 的字段重新设置权限。正是这种永久性,让买家和扫描工具信任已撤销的权限。

+冻结权限能拿走我的代币吗?

不能,它无法转移代币。它可以冻结您的代币账户,使您在解冻前无法发送、接收或销毁该代币。要从他人账户中转移或销毁代币,需要 Token-2022 的 Permanent Delegate 扩展。

+为什么 USDC 仍然保留冻结权限?

Circle 在监管框架下发行 USDC,并保留封禁与非法活动、制裁或法院命令相关地址的权利。在 Solana 上,这通过冻结权限实现,USDC 的冻结权限由一个 2-of-4 多签持有。对受监管的稳定币来说这在意料之中;对 Meme 币来说则是危险信号。

+可变元数据是骗局的迹象吗?

单凭这一点并不是。RugCheck 将其显示为警告而非危险,一些团队保留可变状态是为了修正 Logo 或链接。但它确实允许所有者日后重命名代币或更换 Logo,因此对于已经完成的代币,最好将元数据设为不可变。

+如何检查代币的权限是否已撤销?

在 Solscan 上,已撤销权限的 Authority 字段显示 N/A;没有铸币权限时,Solana Explorer 会将供应量标记为 Fixed Supply。RugCheck 会把有效的铸币权限和冻结权限标记为危险级风险。您也可以在 ChainTx.Tools Solana 创建代币工具的 Set/Update Authority 标签页中加载任意代币,无需连接钱包。

+ChainTx.Tools 能撤销 Token-2022 代币的元数据权限吗?

目前还不能。Set/Update Authority 标签页可以修改 SPL Token 和 Token-2022 代币的铸币权限和冻结权限,以及 Metaplex 元数据更新权限。Token-2022 的原生元数据可以用 spl-token CLI 锁定,例如 spl-token authorize MINT_ADDRESS metadata --disable。

代币创建

在 Solana 上发行自己的代币时最常见的错误

有效的权限、有风险的 Token-2022 扩展、只有几个 SOL 的资金池、未锁定的 LP、捆绑持有的供应量以及收益承诺:这些错误让大多数 Solana 代币发行功亏一篑。本文结合 Raydium、Pump.fun 和链上分析师的数据,说明每种错误的后果以及如何避免。

· 阅读约 11 分钟
代币创建

稳定币详解:USDT 与 USDC 以及其他美元稳定币

USDT 和 USDC 都承诺价值1美元,但发行方、储备、审计、冻结和监管各不相同。我们用2026年10月的数据比较二者,解读 GENIUS 法案与 MiCA,按模式梳理其他美元稳定币,并列出 Tron、以太坊、Solana 和 BNB Chain 上的转账成本。

· 阅读约 12 分钟
Solana

Solana 上的 SPL Token 与 Token-2022 有什么区别?

Solana 有两个代币程序:经典的 SPL Token 和可扩展的 Token-2022。我们通过真实的主网测试,比较了二者的创建成本、元数据、扩展功能和 DEX 支持情况,并说明新代币应该选择哪一个。

· 阅读约 7 分钟