Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ERC721拡張機能の仕組みを理解しよう!
Search
cardene
July 19, 2023
Programming
1
630
ERC721拡張機能の仕組みを理解しよう!
https://cryptogames.connpass.com/event/289171/
上記の勉強会でしようする資料です。
cardene
July 19, 2023
Tweet
Share
More Decks by cardene
See All by cardene
Upgradable Contractについてわかりやすく解説
cardene
0
430
非エンジニアでも理解できるようにERC721Aをわかりやすく解説
cardene
0
800
Other Decks in Programming
See All in Programming
nilとは何か 〜interfaceの構造とnil!=nilから理解する〜
kuro_kurorrr
3
1.9k
AI時代のソフトウェア開発でも「人が仕様を書く」から始めよう-医療IT現場での実践とこれから
koukimiura
0
150
Understanding Apache Lucene - More than just full-text search
spinscale
0
120
grapheme_strrev関数が採択されました(あと雑感)
youkidearitai
PRO
1
220
AI 開発合宿を通して得た学び
niftycorp
PRO
0
120
GC言語のWasm化とComponent Modelサポートの実践と課題 - Scalaの場合
tanishiking
0
110
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
180
野球解説AI Agentを開発してみた - 2026/02/27 LayerX社内LT会資料
shinyorke
PRO
0
300
[SF Ruby Feb'26] The Silicon Heel
palkan
0
100
オブザーバビリティ駆動開発って実際どうなの?
yohfee
3
840
AI時代のシステム設計:ドメインモデルで変更しやすさを守る設計戦略
masuda220
PRO
5
1k
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
180
Featured
See All Featured
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
140
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
220
New Earth Scene 8
popppiees
1
1.7k
Faster Mobile Websites
deanohume
310
31k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.9k
Docker and Python
trallard
47
3.8k
Paper Plane
katiecoart
PRO
0
48k
How GitHub (no longer) Works
holman
316
140k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
470
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
340
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Transcript
C r y p t o G a m e
s Cardene ERC721 拡張機能の 仕組みを理解しよう!
自己紹介
自己紹介 Cardene(かるでね) 2021年後半からNFTに興味を持ち、 2022年夏頃からSolidityの勉強を始め る。 新卒で入社した会社を辞めて今年の1月 にCryptoGamesに参画。 ▪ 名前 ▪
経歴
ERC721 の拡張機能
OpenZeppelin OpenZeppelinとは、安全にスマートコントラ クトを開発するためのライブラリです。 開発者は1から実装する必要がなくなる。 多くのNFTのコントラクトで使用されてます。 https://docs.openzeppelin.com/contracts/4.x/
OpenZeppelin ERC721の拡張機能が7つ実装されています。 ・ERC721Pausable ・ERC721Burnable ・ERC721Consective ・ERC721URIStorage ・ERC721Votes ・ERC721Royalty ・ERC721Wrapper
ERC20 とERC721
ERC20 とERC721 の違い ERC20 ERC721 代替性トークン 非代替性トークン 交換できる 交換できない
ERC20 とERC721 の違い ERC20 ERC721
ERC20 とERC721 の違い ERC20 ERC721 1 2 3 4
ERC20 とERC721 の違い ERC20 ERC721 『誰が』 『いくつ持っているか』 『誰が』 『何を持っているか』 ・・
・・・
ERC20 とERC721 の違い Mint : トークンを新規に生成すること。 Transfer : トークンを誰かに送ること。 ガス代:手数料のこと。
トランザクション:取引のこと。 ▪ 用語の整理
ERC20 とERC721 の違い ちなみに... 『ERC』とは何でしょうか?
ERC20 とERC721 の違い 『ERC = 改善提案』 番号は提案された順番。 *ERC20 → 20番目の提案
ERC20 とERC721 の違い ERC20 トークンを作成するための標準規格(設計書) ERC721 NFTを実装するための標準規格(設計書)
ERC721Pausable
NFTの送付機能をオン・オフする。 ERC721Pausable
ERC721Pausable ある値をオンにしたり、オフにしたりす ることでNFTの送付機能を制御する。 不正を検知した時に緊急で送付機能を止 めたりする時に使用される。 送付機能だけなく、他の処理にも適用で きる。
ERC721Burnable
NFTをバーンする。 ERC721Burnable
ERC721Pausable NFTを0アドレスに送っている。 あるNFTをバーンして、新たなNFTをゲ ットするなどが実例として挙げられる。
ERC721Consective
複数のNFTを一気に作成する。 ERC721Consective
ERC721Consective 連続したトークンID(NFTの番号)を持 つNFTを複数発行できる。 コントラクトの作成時にのみ実行するこ とができる。 発行できる最大値を設定可能。
ERC721Consective ▪ なぜコントラクト作成時のみ実行なのか? ・他のNFT発行処理が走らないため、『連続し たトークンID』を確保できる。 ・予期しないNFTの発行を防ぐことができ、セ キュリティを強化できる。
ERC721URIStorage
コントラクト内でURI情報を管理する。 URI(データや情報、それがどこにあるか) ERC721URIStorage
ERC721URIStorage コントラクト内でNFTのURIやメタ データ(データの説明や構造な ど)を管理している。 独自のURIを設定してNFTに紐づけ ることができる。
ERC721URIStorage ▪ ERC721との違いは? ・ERC721ではデータが保存されている場所の URLなどを格納していた。 ・独自のカスタマイズもできない。 → ERC721URIStorageで簡単にカスタマイ ズ可能に!
ERC721Votes
NFTを利用した投票権の委任と追跡を行う。 ERC721Votes
ERC721Votes 所有しているNFTの数だけ投票権を持て ます。 自分自身、もしくは別のアドレスに投票 権を渡し(委任)アクティブにします。 投票権の委任機能と委任履歴を管理する 拡張機能です。
ERC721Votes 投票イベント自体は別でコントラクトを 作成し、アクティブな投票権を使用して 投票を行うことができる。 誰にも委任されていない投票権は無効と なる。
ERC721Royalty
ロイヤリティ(二次流通した時の 売り上げの一部がクリエイターに 入る)の強制化。 ERC721Royalty
ERC721Royalty NFTの売却価格と事前に設定されたパー センテージを使用して、ロイヤリティを 計算する。 NFTを購入するときは、ロイヤリティを 支払わないと購入処理が実行されない。
ERC721Royalty ▪ ほんとにロイヤリティを強制できるの? ・答えとしては「できない」。 ・結局はマーケットプレイスの実装次第。 ・いろんな人が頭を使いながらできないか考 えている。
ERC721Wrapper
NFTをもとに別のトークン発行。 ERC721Wrapper
ERC721Wrapper NFTをコントラクトに預けて、同じトー クンIDの別のトークンを発行する。 トークンを「ラップ」するという。 ラップされたトークンをバーンして、元 のNFTを取り戻せる。
ERC721Wrapper ラップに関しては、「ところてん」をイ メージすると理解しやすいです。 一方からNFTを入れることで、もう片方 から別のトークンが発行されます。
ERC721Wrapper Aというゲーム(カードゲーム)のNFT をもとに、Bというゲーム(RPG)の NFTを取得する。 所有しているNFTをレンタルする。 複数の装備アイテムを取得する。 ▪ 使用場面
まとめ
まとめ 色々なERC721の拡張機能を見てきました。 よく使われるものもあれば、あまり使われないものも あるので、自分で触ってみたりして活用場面を考えて みるのも面白そうです。 ERCの一覧を見てみるのも面白いのでおすすめです✨
最後に
最後に もっと詳しく知りたい方は以下の記事を参考に! OpenzeppelinのERC721の拡張機能を理解して 使えるようになろう! 普段記事を書いているので興味ある方はぜひ! Qiita ブログ
最後に Crypto Gamesでは積極的にメンバーを募集しています! 少しでも興味持った方は是非お話からでもしましょう! 以下から是非ご連絡ください! https://www.wantedly.com/companies/cryptog ames https://twitter.com/cardene777