イーサリアムトークン規格の技術的構造:ERC-20・ERC-721・ERC-1155の完全解剖【2026年版】

Last Updated on 2026年3月24日 by Co-Founder/ Researcher

イーサリアム(Ethereum)上で発行されるトークンは、標準化された規格(ERC: Ethereum Request for Comments)に基づいて実装されます。2026年3月現在、最も広く使用されているトークン規格は、代替性トークンのERC-20、非代替性トークン(NFT)のERC-721、およびマルチトークン規格のERC-1155です。

これらの規格により、異なる開発者が作成したトークンが、ウォレット、取引所、DApps等のインフラで相互運用可能になります。しかし、各規格には技術的構造、ガスコスト、セキュリティリスクに重要な差異が存在します。本記事では、主要トークン規格の技術的メカニズム、実装方法、リスク、および選択基準を客観的に解剖します。


本記事の目的

本記事の目的は、特定のトークン規格の利用を推奨することではありません。トークン規格の技術的メカニズムERC-20/721/1155の構造的差異インターフェース定義、およびセキュリティリスクの構造的理解を客観的に提供することです。

読者が表面的な「トークンを発行する」という理解に留まらず、各規格のインターフェース、状態管理、イベント、approve/transferFromの数学的関係、バッチ転送の効率性を技術的に理解できるようになることを目指します。


記事内容

トークン規格(ERC)とは何か?

ERC(Ethereum Request for Comments)は、イーサリアムの技術標準を定義する提案制度です。ERCは、スマートコントラクトが持つべき「共通ルール」を定めた仕様書です。例えば、日本のコンセントは全国どこでも同じ形状です。これと同じように、ERCに準拠したトークンは、どのウォレットや取引所でも自動的に利用できるようになります。

標準化がない場合、各トークンが独自仕様を採用し、ウォレット・取引所が個別対応を必要とします。標準化により、共通インターフェースが確立され、新しいトークンが自動的に全インフラで利用可能になります。

EIPとERCの関係として、EIP(Ethereum Improvement Proposal)はイーサリアムの改善提案全般を指し、ERCはEIPのうち、アプリケーション層(トークン等)の標準を定義するものです。MetaMaskウォレットは、ERC-20規格に準拠したトークンであれば、USDC、LINK、UNIなど、どのトークンでも自動的に表示・管理できます。これは、すべてのERC-20トークンが同じ「言語」を話すためです。


ERC-20:代替性トークン規格

ERC-20は、2015年11月にイーサリアム開発者Fabian VogelstellerとVitalik Buterinによって提案され、2017年9月に正式標準化された、代替性トークン(Fungible Token)の規格です。代替性トークンとは、「交換可能」なトークンです。例えば、あなたの財布にある1,000円札と、友人の財布にある1,000円札は、全く同じ価値を持ちます。どちらの1,000円札も同じように使えます。ERC-20トークンも同じで、AliceのUSDC 100枚とBobのUSDC 100枚は全く同じ価値を持ちます。

主要な実装例として、USDC(ステーブルコイン、1 USDC = 1米ドルに連動)、LINK(Chainlinkトークン、オラクルサービスの支払いに使用)、UNI(Uniswapガバナンストークン、Uniswapの運営投票に使用)があります。

ERC-20規格では、トークンが実装すべき6つの必須関数が定義されています。totalSupply()は発行されたトークンの総数を確認する関数で、例えばUSDCの総供給量は数百億枚です。balanceOf()は指定したアドレス(ウォレット)が保有するトークン数を確認する関数で、自分のウォレットに何枚トークンがあるか確認できます。transfer()は友人にトークンを送る関数で、銀行振込のように、相手のアドレスと送りたい金額を指定します。

allowance()は他者に「いくらまで使っていいよ」と許可した金額を確認する関数です。approve()は他者(スマートコントラクト等)に「このトークンをX枚まで使っていいよ」と許可する関数です。transferFrom()は承認を受けた者が、代わりにトークンを転送する関数で、例えばUniswapがあなたのトークンを自動的に交換する際に使用されます。

ERC-20の最も重要な設計が、approve/transferFromパターンです。日常例で理解すると、銀行の自動引き落としと同じです。ステップ1のapprove(承認)では、あなたが電気会社に「毎月1万円まで引き落としていいよ」と許可します。ステップ2のtransferFrom(代理転送)では、電気会社が実際にあなたの口座から電気代を引き落とします。

Uniswapでの実際の使用例では、まずあなたが「Uniswapさん、私のUSDC 100枚を使っていいよ」とapproveし、次にUniswapが「了解、あなたのUSDC 100枚を私に転送して、ETHと交換します」とtransferFromを実行します。技術的メリットとして、ユーザーが直接トークンを送る必要がなく、スマートコントラクトが自動的にトークンを移動できます。これにより、DEX(分散型取引所)での自動取引が可能になります。

セキュリティリスクとして、無制限approve(最大値を承認)は、スマートコントラクトがハッキングされた場合、全資産を失うリスクが存在します。必要最小限の額のみapproveし、使用後はRevoke(承認取消)することが推奨されます。


ERC-721:非代替性トークン規格

ERC-721は、2018年1月に正式標準化された、非代替性トークン(Non-Fungible Token、NFT)の規格です。非代替性トークンとは、「交換不可能」なトークンです。例えば、モナ・リザの絵画は世界に1枚しかありません。他の絵画と交換できません。ERC-721も同じで、各トークンが一意の識別子(Token ID)を持ち、それぞれが固有の価値を持ちます。

主要な実装例として、Bored Ape Yacht Club(BAYC、人気のNFTコレクション)、ENS(Ethereum Name Service、イーサリアムのドメイン名)があります。なお、CryptoPunks(2017年発行の初期NFTプロジェクト)は、ERC-721標準化以前の独自実装であり、厳密にはERC-721に準拠していません。後にWrapped CryptoPunksとしてERC-721互換版が提供されています。

ERC-721の最大の特徴は、各トークンがToken IDという固有の番号を持つことです。日常例で理解すると、マンションの部屋番号と同じです。ERC-20(代替性)は金の延べ棒100gのように、どの延べ棒も同じ価値で個別の識別は不要です。一方、ERC-721(非代替性)はマンション101号室、102号室、103号室のように、各部屋は固有の価値を持ち(階数、向き、広さ等)、Token IDが部屋番号に相当します。

ERC-20との構造的差異として、ERC-20ではAliceの残高が100 USDC(数量)、Bobの残高が50 USDC(数量)のように数量で管理されますが、ERC-721ではAliceの保有NFTがToken ID 1, 3, 5(個別のID)、BobがToken ID 2, 4(個別のID)のように個別IDで管理されます。

ERC-721は、NFTのメタデータ(画像、属性等)を参照するためのtokenURI()関数を定義しています。tokenURI()は、NFTの「中身」(画像や属性)がどこにあるかを示すURLを返します。

メタデータJSONには、name(NFT名)、description(説明)、image(画像URL)、attributes(属性の配列)が含まれます。メタデータの保管場所には3つの選択肢があります。中央集権的サーバーは低コストで高速ですが、サーバーが停止すると画像が消え、改ざんリスクがあります。IPFS(分散ストレージ)は分散型でサーバー停止リスクが低いですが、中央サーバーよりやや遅いです。On-chain SVG(完全オンチェーン)は改ざん不可能で永久保存されますが、ブロックチェーンに直接保存するため高コストです。


ERC-1155:マルチトークン規格

ERC-1155は、2019年6月にEnjinが提案し、正式標準化された、複数種類のトークン(代替性・非代替性の両方)を1つのコントラクトで管理できる規格です。ERC-1155は、ERC-20とERC-721の「いいとこ取り」をした規格で、1つのスマートコントラクトで、通貨のようなトークン(代替性)とNFTのようなトークン(非代替性)を同時に管理できます。

日常例で理解すると、ゲームのアイテム管理と同じです。ERC-20のみでは金貨(通貨)を管理し、全員の金貨は同じ価値です。ERC-721のみでは伝説の剣(一点物)を管理し、各剣は固有の価値です。ERC-1155では金貨(代替性)と伝説の剣(非代替性)を1つのシステムで管理でき、効率的で管理しやすくなります。

ユースケースとして、ゲームではToken ID 1が金貨(供給量:無制限、代替性)、Token ID 2がポーション(供給量:1000個、代替性)、Token ID 100が伝説の剣(供給量:1個、非代替性)のように管理されます。NFTコレクションでは、Token ID 1がエディション1(供給量:100枚、各エディション内は代替性)、Token ID 2がエディション2(供給量:50枚、各エディション内は代替性)、Token ID 3が1/1アート(供給量:1枚、非代替性)のように管理されます。

主要な実装例として、Enjin(ゲームアイテムの管理)、Gods Unchained(トレーディングカードゲーム)、OpenSea(マルチトークンサポート)があります。

ERC-1155の最大の特徴は、バッチ転送です。ERC-20やERC-721では、複数種類のトークンを転送する場合、種類ごとに個別のトランザクションが必要ですが、ERC-1155では1回のトランザクションで複数種類を転送可能です。バッチ転送により複数トランザクションを1回に集約できるため、一般的にガスコストの削減が期待されます。


トークン規格比較

各規格の用途として、ERC-20は代替性トークン(通貨・ポイント)、ERC-721はNFT(アート・コレクティブル)、ERC-1155はマルチトークン(ゲーム等)に適しています。代替性については、ERC-20は代替可能、ERC-721は非代替、ERC-1155は両方サポートします。Token IDについて、ERC-20にはToken IDがなく、ERC-721とERC-1155にはToken IDが存在します。

供給量管理として、ERC-20は総供給量を管理し、ERC-721はToken IDごと(通常1)、ERC-1155はToken IDごとに任意の供給量を設定できます。バッチ転送について、ERC-20とERC-721にはバッチ転送機能がなく、ERC-1155にはあります。

主な実装として、ERC-20はUSDC、LINK、UNI、ERC-721はBAYC、ENS、Wrapped CryptoPunks、ERC-1155はEnjin、Gods Unchaindedがあります。標準化年は、ERC-20が2017年、ERC-721が2018年、ERC-1155が2019年です。


トークン規格選択の判断基準

トークン規格を選択する際の判断フローとして、まず発行するトークンの性質を確認します。代替可能(通貨・ポイント)の場合はERC-20を選択します。非代替(アート・コレクティブル)の場合、単一種類のNFTコレクションであればERC-721、複数種類・エディション制であればERC-1155を選択します。複数種類を1コントラクトで管理したい場合(ゲーム・複雑なエコシステム)は、ERC-1155を選択します。


トークン規格のセキュリティリスク

トークン規格には、いくつかの重要なセキュリティリスクが存在します。

リスク1として、無制限Approve(ERC-20)があります。スマートコントラクトに最大値を承認すると、ハッキング時に全資産が盗難される可能性があります。リスク軽減の技術的手段として、必要最小限の額のみapprove、定期的にRevoke(承認取消)、Permit(EIP-2612)の使用が推奨されます。

リスク2として、リエントランシー攻撃(全規格)があります。外部呼び出し後に状態更新を行うと、再入攻撃が可能になります。リスク軽減の技術的手段として、Checks-Effects-Interactionsパターン、ReentrancyGuard修飾子の使用が推奨されます。

リスク3として、整数オーバーフロー(ERC-20)があります。Solidity 0.8未満では、整数オーバーフローが発生する可能性があります。リスク軽減の技術的手段として、Solidity 0.8以降の使用、SafeMathライブラリの使用が推奨されます。

リスク4として、メタデータの改ざん(ERC-721)があります。tokenURIが中央集権的サーバーを指している場合、メタデータが改ざんされる可能性があります。リスク軽減の技術的手段として、IPFS等の分散ストレージ使用、On-chain SVG(完全オンチェーン)の使用が推奨されます。

リスク5として、フロントランニング(全規格)があります。Mempoolで高価値のNFT購入トランザクションを検知し、高いガス代で先に購入される攻撃が存在します。リスク軽減の技術的手段として、Commit-Revealスキーム、Private Mempool(Flashbots)の使用が推奨されます。

リスク6として、承認の取り消し忘れ(全規格)があります。使用済みのapproveを取り消さないと、将来的にリスクが残存します。リスク軽減の技術的手段として、定期的なRevoke、Revoke.cash等のツール使用が推奨されます。


FAQ

Q1:ERC-20とERC-721の最大の違いは何ですか?

A:代替性の有無です。ERC-20は代替可能(全てのトークンが同じ価値)で、ERC-721は非代替(各トークンが固有の価値)です。例えば、USDC(ERC-20)は100 USDCがどれも同じ価値ですが、BAYC(ERC-721)は各NFTが異なる価値を持ちます。

Q2:ERC-1155はERC-20やERC-721より優れていますか?

A:用途によります。ERC-1155はバッチ転送によりガスコストを削減できますが、全てのユースケースに適しているわけではありません。単一種類の通貨トークンであればERC-20、単一種類のNFTコレクションであればERC-721が適している場合があります。

Q3:無制限approveは危険ですか?

A:はい、リスクがあります。スマートコントラクトがハッキングされた場合、承認した全額が盗まれる可能性があります。必要最小限の額のみapproveし、使用後はRevokeすることが推奨されます。

Q4:NFTのメタデータはどこに保存されていますか?

A:3つの選択肢があります。中央集権的サーバー(低コストだが停止リスクあり)、IPFS(分散型で停止リスク低い)、On-chain(完全オンチェーンで改ざん不可能だが高コスト)です。プロジェクトによって選択が異なります。

Q5:トークン規格は誰が決めているのですか?

A:イーサリアムコミュニティです。誰でもEIPを提案でき、コミュニティの議論と合意を経て、ERCとして標準化されます。中央集権的な組織が決定しているわけではありません。

Q6:CryptoPunksはERC-721ですか?

A:オリジナルのCryptoPunksはERC-721標準化以前の独自実装であり、厳密にはERC-721に準拠していません。後にWrapped CryptoPunksとしてERC-721互換版が提供されています。

Q7:既存のERC-20トークンをERC-1155に変換できますか?

A:直接変換はできません。新しいERC-1155トークンを発行し、既存のERC-20トークンと交換する仕組みを構築する必要があります。これはブリッジと呼ばれる技術で実装されます。

Q8:approve()とtransfer()の違いは何ですか?

A:transfer()は自分のトークンを直接相手に送りますが、approve()は他者に「自分のトークンをX枚まで使っていいよ」と許可するだけです。実際の転送にはtransferFrom()が必要です。


まとめ:構造理解のためのフレームワーク

トークン規格を理解するための3つの視点を提示します。

視点1:代替性の軸

  • ERC-20:完全に代替可能(通貨)
  • ERC-721:完全に非代替(一点物)
  • ERC-1155:両方を包含(ハイブリッド)

視点2:効率性の軸

  • 単一転送:ERC-20が最効率
  • 複数転送:ERC-1155が効率的(バッチ処理)
  • NFT転送:ERC-721とERC-1155が同等

視点3:リスク管理の軸

  • approve管理:全規格で重要(特にERC-20)
  • メタデータ保護:ERC-721/1155で重要
  • 承認取消:全規格で定期的に実施

この3つの視点から、自身のユースケースに最適な規格を選択することが推奨されます。


Crypto Verseからのメッセージ

トークン規格の選択は、プロジェクトの成功を左右する重要な技術的判断です。本記事で解説したERC-20、ERC-721、ERC-1155の技術的差異、セキュリティリスクを理解することで、適切な規格選択が可能になります。

重要なのは、「どの規格が優れているか」ではなく、「自身のユースケースに最適な規格は何か」を判断することです。通貨トークンにはERC-20、NFTコレクションにはERC-721、ゲーム等の複雑なエコシステムにはERC-1155が適している傾向がありますが、プロジェクトの要件に応じて慎重に検討する必要があります。

また、トークン規格の技術的理解は、セキュリティリスクの軽減にも直結します。無制限approve、リエントランシー攻撃、メタデータ改ざん等のリスクを認識し、適切な対策を講じることが、資産保護の観点から極めて重要です。


データ参照元・出典

本記事は、以下の一次ソースおよび公式ドキュメントに基づいて作成されています。

ERC-20関連

ERC-721関連

ERC-1155関連

技術ドキュメント

セキュリティ関連

CryptoPunks関連


重要な注記

本記事の内容は、2026年3月時点の技術仕様に基づいています。イーサリアムおよびトークン規格は継続的に進化しているため、最新の仕様については公式ドキュメントを確認してください。

本記事で紹介したコード例は、説明を目的とした簡略版です。実際のプロダクション環境で使用する場合は、OpenZeppelin等の監査済みライブラリの使用、専門家によるセキュリティ監査、十分なテストの実施が必須です。

トークン規格の選択、スマートコントラクトの実装、セキュリティ対策等の技術的判断は、プロジェクトの要件、リスク許容度、技術的制約等を総合的に考慮した上で、専門家と相談しながら行うことを推奨します。

本記事で言及したプロジェクト名、トークン名等は、技術的説明を目的とした例示であり、特定のプロジェクトへの投資を推奨するものではありません。


関連記事

本記事の理解を深めるために、以下の関連記事も併せてご覧ください。


Crypto Verseの視点

┌─────────────┐
 複雑なWeb3の世界を、
 もっとも信頼できる「地図」へ。
└─────────────┘

Crypto Verseは、暗号資産・ブロックチェーン技術の本質的な理解を深めるための情報を提供します。表面的なトレンドや投機的な話題ではなく、技術的構造、リスク、仕組みを客観的に解剖することで、読者が自律的に判断できる知識基盤の構築を目指しています。

トークン規格は、Web3エコシステムの基礎インフラです。ERC-20、ERC-721、ERC-1155の技術的理解は、DeFi、NFT、GameFi等のあらゆるWeb3アプリケーションを理解するための出発点となります。本記事が、読者のWeb3技術理解の一助となれば幸いです。


免責事項

本記事は、情報提供のみを目的としており、金融商品の売買、投資判断、法律相談、税務相談を目的としたものではありません。

暗号資産・ブロックチェーン技術に関する投資判断は、読者自身の責任で行ってください。本記事の内容に基づいて読者が行った投資判断、技術的判断、その他の行動によって生じた損失について、Crypto Verseおよび執筆者は一切の責任を負いません。

トークン規格の選択、スマートコントラクトの実装、セキュリティ対策等の技術的判断には、専門的知識と経験が必要です。実際のプロジェクトにおいては、専門家と相談しながら慎重に進めることを強く推奨します。

本記事で言及したプロジェクト、トークン、技術等は、説明を目的とした例示であり、特定のプロジェクトへの投資、特定の技術の採用を推奨するものではありません。

暗号資産の価値は大きく変動する可能性があり、投資元本を割り込むリスクが存在します。投資に際しては、リスクを十分に理解し、自己責任で判断してください。

本記事の内容は、2026年3月時点の情報に基づいています。技術仕様、規制、市場環境等は常に変化するため、最新情報については公式ドキュメント、専門家、関連当局等に確認してください。

アバター画像

ByCo-Founder/ Researcher

2015年、ITエンジニアリングの領域から暗号資産(Cryptocurrency)の世界へ。

当初、私の網膜を焼いたのは、証券市場には存在しない「眠らないマーケット」の衝撃でした。CEX(中央集権取引所)に渦巻いていた当時の熱狂とカオスは、単なる投機ではなく、次なる時代の胎動そのものでした。

やがて技術はDEX、そしてDeFiへと進化し、マネーは「プログラム可能な金融」へと昇華する。その過程で私が魅せられたのは、コードが自律的に経済圏を構築する「自律分散システム」の構造的な美しさです。

私の原点は、日本初の暗号資産「モナコイン(Monacoin)」にあります。誰の指示でもなく、コミュニティの熱量だけで経済が回り始める──その光景に見た「人間主権」の可能性こそが、今の私のコンパスです。

以来10年、最前線で観測し続けてきた技術の進化。「価格」というノイズを削ぎ落とし、その奥にある「技術の実装」と「社会変革の本質」を言語化すること。

2026年、成熟しつつあるデジタル経済の荒野において、読者が迷わずに歩める「信頼できる地図」を。ここ東京から、テクノロジーと人間の未来を記録します。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です