整枚与碎枚之间只隔一个函数:ERC-7629 统一代币接口
ERC-20 有流动性,ERC-721 有独特性,标准把选择权强塞给了项目方。ERC-7629 的答案是让孩子两个都要:同一份合约里同时实现两种标准的外部接口,并提供两种形态之间的状态转换——一枚 NFT 可以“溶解”成按份额计的普通代币流,凑够整数单位又能“结晶”回有唯一编号的 NFT。2026 年 9 月 9 日在 ethereum/ERCs 仓库核对,该标准状态为 Draft,2024 年 2 月 18 日创建,依赖 ERC-20、ERC-165 与 ERC-721。
两套命名空间并排摆放
接口设计刻意让两套形态互不混淆:查询侧有 erc20BalanceOf 与 erc721BalanceOf、erc20TotalSupply 与 erc721TotalSupply、getUnit 返回兑换单位值;转账侧 ERC-20 走 transfer(to, amount),ERC-721 走 safeTransferFrom 家族(payable 版本),授权侧则 ERC-20 的额度授权与 721 的单枚批准、全系放行并存。事件同样分轨:ERC20Transfer 与 ERC721Transfer(以及兼容用的 Transfer)、ERC20Approval 与 Approval/ApprovalForAll,外加转换动作的 ERC20ToERC721 事件——接口示例里它给了两个重载,分别对应合成一枚与多枚的情形,而反方向转换未配同名事件。对索引器来说,这套“双轨账本”意味着统计持仓必须先问一句“你查的是哪一轨”。

转换是整数游戏
方向一:erc721ToERC20(tokenId) 把一枚 NFT 换成该合约定义单位数量的 ERC-20 形态;方向二:erc20ToERC721(amount) 把指定数量的 ERC-20 形态合成一枚新 NFT。转换只认整数单位:持有零散数量的人想合成独一枚,得先把碎枚凑满一个单位;反方向则把编号和一切“独一性”注销进流里。标准宣称 ERC-20 模式的 Gas 开销与常规 ERC-20 转账相当,两态并存不额外拖累费用。
值得冷静看待的三件事
第一,碎枚化会改写市场结构:一旦 NFT 能一键变流,地板价的“卖压”将以 ERC-20 形态出现在池子里,而流形态的持有者对原编号的一切情感叙事归零,转换时点上的先后差异会放大套利空间,这是机制自带的结构性不均,不是缺陷特例。第二,转换函数的调用权限、转换后编号是否复用、事件与外部市场的对账口径,标准留给实现自定,逐项读合约源码是唯一保险。第三,标准还在 Draft:接口文本里出现了两个同名 Approval 事件的示意写法(应理解为两套语义的并置而非可编译代码),工程落地时的命名冲突处理要靠实现解决,采用面目前非常有限。
一次完整往返的资金动线
把一枚 NFT 送去“溶解”:调 erc721ToERC20(tokenId) 之后,独一枚编号注销,对应单位数量的 ERC-20 形态出现在你的余额里,这段转换本身通常不跨合约、不涉滑点——但“不滑点”只覆盖形态切换那一步,想换成别的资产仍要经过交易对与池子。反向结晶时,erc721ToERC20 的对称函数 erc20ToERC721(amount) 要求余额至少凑满整数单位,凑不满的尾数只能继续以流形态存在,原先那枚编号不会因为你攒够了数量就物归原主,新合成的是一枚全新 NFT——“编号记忆”在这类模型里一律归零。工程层面还要注意两处标准自己也没处理干净的细节:接口示例里 Approval 事件出现了两次同名的声明(分别标注给两种代币的授权语义),以及 ERC20ToERC721 给了单枚与多枚两个重载版本而反向转换没有配对事件,索引器的解析规则要按实现逐项测试。流动性上最诚实的一句话是:碎枚化把“卖不卖得掉”的问题从挂单簿转移到了池子深度上,两个世界各有各的卖不动。对普通持有人还有一句提醒:转换入口通常藏在项目自己的前端里,市场页面展示的“余额”可能只统计其中一轨,清点家当前要 ERC-20 与 ERC-721 两侧各查一遍,别让双轨账本在个人台账里合成一轨糊涂账。
给持有人的底线提醒:能双向转换不等于随时能全身而退,碎枚模式的流动性取决于池子深度,整枚模式的流动性取决于市场挂单,两种“能卖”都是条件句。本文为协议机制科普,不构成任何投资建议;标准状态以 ethereum/ERCs 仓库文本为准(核验时间 2026 年 9 月 9 日)。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。