﻿---
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>

## 関連トピック

- [暗号学的アキュムレータ](/ja/crypto/cryptographic-accumulator/)
- [ERC-20](/ja/crypto/erc20/)
- [NFT](/ja/crypto/nft/)
- [ニーモニックフレーズ](/ja/crypto/seed-phrase/)
- [トークン標準](/ja/crypto/token-standard/)

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

## 出典

- [ERC-721: Non-Fungible Token Standard](https://eips.ethereum.org/EIPS/eip-721) - Ethereum Improvement Proposals（参照日: 2026-08-20）
- [ERC-721 Non-Fungible Token Standard](https://ethereum.org/en/developers/docs/standards/tokens/erc-721/) - Ethereum.org（参照日: 2026-08-20）
- [ERC-2981: NFT Royalty Standard](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/ja/crypto/erc721/index.mdx
