時価総額: $2.6211T 0.33%
ボリューム(24時間): $44.7391B 21.75%
恐怖と貪欲の指数:

33 - 恐れ

  • 時価総額: $2.6211T 0.33%
  • ボリューム(24時間): $44.7391B 21.75%
  • 恐怖と貪欲の指数:
  • 時価総額: $2.6211T 0.33%
暗号
トピック
暗号化
ニュース
暗号造園
動画
トップクリプトスペディア

言語を選択する

言語を選択する

通貨の選択

暗号
トピック
暗号化
ニュース
暗号造園
動画

NFT コントラクト (ERC-721) を最初から作成するにはどうすればよいですか?

ERC-721 mandates unique token IDs, owner tracking, and Transfer events; optional metadata via tokenURI enables rich NFTs—implemented securely using OpenZeppelin contracts.

2026/01/22 03:40

ERC-721標準仕様を理解する

1. ERC-721 は、 ownerOf 、 safeTransferFrom 、 approveなど、準拠するすべての契約が実装する必要がある必須の関数とイベントのセットを定義しています。

2. この標準では、一意のトークン識別子が強制されます。各 NFT は、常に 1 人の所有者にマッピングされた個別の uint256 ID を持たなければなりません。

3. メタデータのサポートはオプションですが、広く採用されています。 tokenURI関数は、名前、説明、画像リンクを含む JSON を指す URI を返します。

4. 転送イベントは、ウォレットとエクスプローラーの互換性を確保するために、from、to、および tokenId パラメーターを使用してTransferを発行する必要があります。

5. 列挙のサポートは基本 ERC-721 では必須ではありませんが、多くの実装ではマーケットプレイスのインデックス付けのためにtotalSupplyとtokenByIndexが追加されています。

開発環境のセットアップ

1. Node.js と npm をインストールして、ローカル コンパイルとテスト用の Hardhat や Foundry などの依存関係を管理します。

2. npm init -yで新しいプロジェクトを初期化し、 npm install @openzeppelin/contractsで OpenZeppelin Contracts をインストールします。

3. 導入シミュレーションのために Sepolia またはローカル Anvil ネットワークに接続するように Hardhat 構成ファイルを構成します。

4. MyNFT.solという名前の Solidity ファイルを契約ディレクトリに作成し、OpenZeppelin のERC721およびOwnableモジュールをインポートします。

5. 名前やシンボルなどのコンストラクター引数を定義し、それらの値を使用して親 ERC721 コンストラクターを呼び出します。

コアコントラクトロジックの作成

1. _baseTokenURI状態変数を追加して、契約所有者のみが更新するメタデータのルート パスを保存します。

2. tokenURI関数をオーバーライドして_baseTokenURI をtokenId 文字列と連結し、IPFS または HTTP エンドポイントが正しく解決されるようにします。

3. _safeMintを使用して新しいトークンを msg.sender に排他的に割り当て、内部カウンターをインクリメントするmint関数を実装します。

4. 不正なメタデータ操作を防ぐために、 setBaseURIなどの機密関数にonlyOwner修飾子を導入します。

5. 0x80ac58cd (ERC-721) および 0x5b5e139f (ERC-721 メタデータ) インターフェイス ID に対して true を返すために、 supportsInterfaceオーバーライドを組み込みます。

テストネットでのコンパイルとデプロイ

1. npx ハードハット コンパイルを実行して ABI とバイトコードを生成します。構文エラーや継承エラーが表示されないことを確認します。

2. 「CryptoPanda」と「CPANDA」を引数としてコントラクト コンストラクターを呼び出すデプロイメント スクリプトを作成します。

3. デプロイヤ アドレスに資金を提供した後、 npx hardware run scripts/deploy.js --network sepoliaを使用してトランザクションをブロードキャストします。

4. コンパイル時に使用したものと同じコンパイラ バージョンと最適化設定を使用して、Etherscan Sepolia 上のコントラクトを確認します。

5. Etherscan の「Write as Proxy」または MetaMask に接続された dApp インターフェイスを使用して、デプロイされたコントラクトと対話し、ミントと転送をトリガーします。

よくある質問

Q: ミント後に tokenURI を変更できますか? A: はい。契約で所有者専用のセッター関数を使用することが許可されている場合は、トークンごとの URI を保存しない限り、それを変更すると、以前に作成されたすべてのトークンに遡及的に影響します。

Q: 2 つのトークンが同じ ID を共有するとどうなりますか? A: OpenZeppelin の_ownersマッピング検証によって強制される重複マッピング チェックにより、コントラクトはミント中に元に戻ります。

Q: ERC-721 のガスコストは ERC-20 よりも高くなりますか? A: はい - ERC-721 操作では、トークン ID ごとに個別のストレージへの書き込みが必要となるため、鋳造と転送のガス消費量が大幅に増加します。

Q: 契約にロイヤルティを導入する必要がありますか? A: いいえ、ロイヤルティは ERC-721 仕様の一部ではありません。 OpenSea などのプラットフォームは、ERC-2981 経由で実装されている場合、 royaltyInfo関数からロイヤルティ情報を読み取ります。

免責事項:info@kdj.com

提供される情報は取引に関するアドバイスではありません。 kdj.com は、この記事で提供される情報に基づいて行われた投資に対して一切の責任を負いません。暗号通貨は変動性が高いため、十分な調査を行った上で慎重に投資することを強くお勧めします。

このウェブサイトで使用されているコンテンツが著作権を侵害していると思われる場合は、直ちに当社 (info@kdj.com) までご連絡ください。速やかに削除させていただきます。

関連知識

BTCUSDT先物ポジションを保有する総コストの計算方法

BTCUSDT先物ポジションを保有する総コストの計算方法

2026-10-26 04:06:35

BTCUSDT先物ポジションの総コスト構成要素1. BTCUSDT 先物ポジションを保持するための総コストには、明示的な料金と暗黙的な料金の両方が含まれます。明示的なコストは取引開始手数料と終了手数料で構成されますが、暗黙的なコストは主に、長期にわたる資金調達率の支払いまたは受け取りによって発生しま...

XRPSDT の資金調達レートと建玉を一緒に監視する方法

XRPSDT の資金調達レートと建玉を一緒に監視する方法

2026-10-20 18:39:42

XRPUSDT 無期限契約の資金調達率の仕組み1. XRPUSDT 無期限スワップの資金調達率は、XRP と USDT 建て融資市場の間のプレミアム インデックスと金利差を使用して 8 時間ごとに計算されます。 2. Binance、Bybit、OKX などの取引所は、デリバティブ API エンドポ...

SOLUSDT 無期限先物で損益分岐点ストップロスを設定する方法

SOLUSDT 無期限先物で損益分岐点ストップロスを設定する方法

2026-10-23 09:34:18

損益分岐点とストップロスの仕組みを理解する1. 損益分岐点ストップロスは、ポジションが有利に動くにつれて上方に調整され、約定時に純損失がゼロになるように固定する動的な注文です。 2. 取引が事前に定義された利益しきい値 (通常、初期リスクまたはエントリー手数料の 1 倍から 2 倍) に達した場合に...

ETHUSDT取引にBinance Futures Calculatorを使用する方法

ETHUSDT取引にBinance Futures Calculatorを使用する方法

2026-10-21 02:00:11

Binance Futures Calculator インターフェイスを理解する1. 計算機は Binance Futures 取引インターフェイス内に直接組み込まれており、注文入力パネルの ETHUSDT 無期限契約ページからアクセスできます。 2. ユーザーがポジションサイズ、エントリー価格、レ...

先物清算前にBTCUSDTマーク価格を確認する方法

先物清算前にBTCUSDTマーク価格を確認する方法

2026-10-26 12:20:18

BTCUSDT 先物におけるマーク価格を理解する1. マーク価格は、市場環境が不安定な場合に不当清算を防止するために取引所が使用する計算値です。 2. 指標価格や調達率など、複数の情報源から導き出された公正かつ安定した参照価格を反映しています。 3. 前回の取引価格とは異なり、マーク価格には操作リス...

TRUMPUSDT 無期限契約のレバレッジを調整する方法

TRUMPUSDT 無期限契約のレバレッジを調整する方法

2026-10-30 22:19:37

TRUMPUSDT の無期限契約の仕組みを理解する1. TRUMPUSDT は、複数の Tier-1 デリバティブ取引所に上場されているテーマ別無期限先物契約であり、資産の基礎となるファンダメンタルズではなく、米国の政治的物語を中心とした価格センチメントを追跡するように設計されています。 2. プラ...

BTCUSDT先物ポジションを保有する総コストの計算方法

BTCUSDT先物ポジションを保有する総コストの計算方法

2026-10-26 04:06:35

BTCUSDT先物ポジションの総コスト構成要素1. BTCUSDT 先物ポジションを保持するための総コストには、明示的な料金と暗黙的な料金の両方が含まれます。明示的なコストは取引開始手数料と終了手数料で構成されますが、暗黙的なコストは主に、長期にわたる資金調達率の支払いまたは受け取りによって発生しま...

XRPSDT の資金調達レートと建玉を一緒に監視する方法

XRPSDT の資金調達レートと建玉を一緒に監視する方法

2026-10-20 18:39:42

XRPUSDT 無期限契約の資金調達率の仕組み1. XRPUSDT 無期限スワップの資金調達率は、XRP と USDT 建て融資市場の間のプレミアム インデックスと金利差を使用して 8 時間ごとに計算されます。 2. Binance、Bybit、OKX などの取引所は、デリバティブ API エンドポ...

SOLUSDT 無期限先物で損益分岐点ストップロスを設定する方法

SOLUSDT 無期限先物で損益分岐点ストップロスを設定する方法

2026-10-23 09:34:18

損益分岐点とストップロスの仕組みを理解する1. 損益分岐点ストップロスは、ポジションが有利に動くにつれて上方に調整され、約定時に純損失がゼロになるように固定する動的な注文です。 2. 取引が事前に定義された利益しきい値 (通常、初期リスクまたはエントリー手数料の 1 倍から 2 倍) に達した場合に...

ETHUSDT取引にBinance Futures Calculatorを使用する方法

ETHUSDT取引にBinance Futures Calculatorを使用する方法

2026-10-21 02:00:11

Binance Futures Calculator インターフェイスを理解する1. 計算機は Binance Futures 取引インターフェイス内に直接組み込まれており、注文入力パネルの ETHUSDT 無期限契約ページからアクセスできます。 2. ユーザーがポジションサイズ、エントリー価格、レ...

先物清算前にBTCUSDTマーク価格を確認する方法

先物清算前にBTCUSDTマーク価格を確認する方法

2026-10-26 12:20:18

BTCUSDT 先物におけるマーク価格を理解する1. マーク価格は、市場環境が不安定な場合に不当清算を防止するために取引所が使用する計算値です。 2. 指標価格や調達率など、複数の情報源から導き出された公正かつ安定した参照価格を反映しています。 3. 前回の取引価格とは異なり、マーク価格には操作リス...

TRUMPUSDT 無期限契約のレバレッジを調整する方法

TRUMPUSDT 無期限契約のレバレッジを調整する方法

2026-10-30 22:19:37

TRUMPUSDT の無期限契約の仕組みを理解する1. TRUMPUSDT は、複数の Tier-1 デリバティブ取引所に上場されているテーマ別無期限先物契約であり、資産の基礎となるファンダメンタルズではなく、米国の政治的物語を中心とした価格センチメントを追跡するように設計されています。 2. プラ...

すべての記事を見る

User not found or password invalid

Your input is correct