﻿---
title: "ERC-721"
description: "ERC-721 是以太坊上非同质化代币（NFT）的标准接口：每个代币单独识别，其所有权和转移规则由智能合约记录。"
image: "https://wiki.fcontext.com/og.png"
---

> Documentation Index
> Fetch the complete documentation index at: https://wiki.fcontext.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ERC-721

> 仅供教育参考，不构成投资建议；投资可能产生损失。

<a id="answer"></a>

## 直接答案

ERC-721 是以太坊上非同质化代币的标准接口。ERC-721 合约不像记录一个可互换的余额那样运作，而是用 `tokenId` 分别追踪每个代币，公开其所有者，并规定代币如何转移或授权。代币由合约地址和 `tokenId` 这对信息共同识别；标准本身并不确定资产的价格、真实性、稀缺性或法律权利。

ERC-721 与 ERC-20 的区别在于，ERC-20 单位是同质化的，一个单位应当可以和另一个互换。ERC-721 代币可以属于同一系列，但拥有不同编号和元数据。钱包或市场可以同时支持两种标准，但转移和批准调用不同。

实际需要问的不是项目是否声称使用“ERC-721”，而是合约及其周边系统究竟做了什么。在把 NFT 当作资产之前，应检查实现、权限、元数据、市场授权、流动性以及向持有者承诺的权利。

<a id="mechanism"></a>

## 运作方式

### 身份与所有权

合约会为每个存在的 `tokenId` 记录所有者。`ownerOf` 返回该地址，`balanceOf` 统计某地址拥有的代币数量。铸造通常创建新的编号，并发出从零地址转入的 `Transfer` 事件；销毁通常发出转往零地址的转移事件。事件便于索引，但合约状态才是权威。

### 转移与授权

所有者可以直接调用 `transferFrom`，也可以用 `approve` 为某个代币授权一个地址。`setApprovalForAll` 会授权运营者管理所有者在该系列中持有的每个代币，方便市场操作，但权限范围很大。应通过合约地址核对运营者，并在不再需要时在链上撤销旧授权。签名的市场订单与链上批准是两种状态：取消其中一个不一定会取消另一个。

`safeTransferFrom` 还会检查合约接收方是否实现 `IERC721Receiver`。这有助于防止代币被发送到无法接收它的合约；`transferFrom` 不会执行接收回调。两种函数都不能保证市场、跨链桥或钱包会正确处理代币。

### 元数据与版税

可选的元数据扩展提供 `tokenURI`，它可以指向链上或其他位置的数据。可变基础 URI、可升级合约、管理员或中心化托管服务都可能在铸造后改变代币显示的内容。永久存储和去中心化存储能减少部分依赖，但不能证明作者身份、来源或知识产权归属。

ERC-721 不要求二级市场支付创作者版税。系列可以实现可选的 `EIP-2981` 版税接口，但市场可以自行决定是否遵守，而且该接口不会结算或强制付款。供应上限、随机性、艺术品真实性、商标许可等承诺，都要分别通过代码、发行规则和法律文件核验。

<a id="example"></a>

## 例子

假设某合约把代币 `#42` 铸造给 Alice。这个代币的全球身份不是单独的 `42`：系列的合约地址也是身份的一部分。Alice 可以为该代币授予 `approve`，或为市场运营者授予 `setApprovalForAll`，然后在市场上挂单。成交时，市场调用转移函数，合约检查所有权和授权。Alice 不再需要系列级授权时，应当随后撤销它。

市场展示的图片是另一个元数据问题。Alice 应检查系列的 `tokenURI` 行为、更新权限、托管方式和许可证，而不能假定持有代币就自动取得版权或商业使用权。

<a id="risks"></a>

## 风险

- 合约风险：漏洞、恶意升级、特权管理员或错误的转移钩子可能锁定或转走代币。

- 授权风险：系列级 `setApprovalForAll` 或被攻破的市场可能转走该系列中所有已批准的代币。

- 元数据与法律风险：链下文件可能消失或改变，代币所有权不会自动授予版权、商标权或其他法律权利。

- 市场风险：NFT 价格可能剧烈波动，流动性可能很薄，报价的地板价不一定能按某个具体代币成交。

链上操作通常不可逆。签名前核实系列合约、接收地址、授权、元数据控制和交易详情；把推广者或社群的说法当作需要验证的主张，而不是保证。

<a id="misconceptions"></a>

## 常见误区

### 误区 1：ERC-721 保证稀缺

它只区分同一合约中的代币。发行方可以继续铸造、部署相似系列，或让多个编号指向等价媒体。稀缺性取决于供应规则及落实这些规则的权限。

### 误区 2：NFT 包含全部知识产权

区块链记录的是代币转移。版权、复制、商业使用、改编和商标权取决于系列许可证及适用法律，不能从 `ownerOf` 推导出来。

### 误区 3：取消市场挂单会移除所有权限

挂单、其签名和有效期，以及链上的 `approve` 或 `setApprovalForAll` 是不同状态。不再需要时，应独立检查并撤销链上权限。

<a id="related"></a>

## 相关主题

- [密码学累加器](/zh-cn/crypto/cryptographic-accumulator/)
- [ERC-20](/zh-cn/crypto/erc20/)
- [NFT](/zh-cn/crypto/nft/)
- [助记词](/zh-cn/crypto/seed-phrase/)
- [代币标准](/zh-cn/crypto/token-standard/)

<a id="sources"></a>

## 来源

- [ERC-721：非同质化代币标准](https://eips.ethereum.org/EIPS/eip-721) - Ethereum Improvement Proposals（查阅日期：2026-08-20）
- [ERC-721 非同质化代币标准](https://ethereum.org/en/developers/docs/standards/tokens/erc-721/) - Ethereum.org（查阅日期：2026-08-20）
- [ERC-2981：NFT 版税标准](https://eips.ethereum.org/EIPS/eip-2981) - Ethereum Improvement Proposals（查阅日期：2026-08-20）
- [购买数字货币或代币时请谨慎](https://www.cftc.gov/LearnAndProtect/AdvisoriesAndArticles/caution_of_digital_currencies.html) - CFTC（查阅日期：2026-08-20）

Source: https://wiki.fcontext.com/zh-cn/crypto/erc721/index.mdx
