關於ERC721的理解

weixin_33860722發表於2018-03-22

ERC721定義了一種Ethereum生態中不可分割的、具有唯一性的token互動、流通的介面規範。該規範本質上是Ethereum上的智慧合約,依託於EVM執行。符合該規範的token (Non-Fungible Token, NFT),具有以下特性:

  1. 在該合約範圍內,唯一的token_id
  2. token_id只能被一個owner(i.e. eth address) 所擁有
  3. 一個owner可以擁有多個NFTs,它的balance只記數量。有另外的儲存列表記錄token_id - owner_addr的對應關係
  4. NFT有approve, transfer, takeOwnerShip等介面方法適於流通的功能。即所屬權轉移。這些方法是在ERC721標準中定義的。
  5. 定義一個multiaddr型式的複合地址來索引該token對應的後設資料(名稱、圖片、各種資訊)。通過tokenMetadata方法,獲取這個multiaddr (形如url的字串),來獲取token後設資料。
  6. ERC721與ERC20的token,有相容的地方,即token name, token symbol。這是便於ERC20的錢包可以顯示ERC721的token

目前,ERC721的用例:

  1. 以太貓。ERC721以外的特性:固定時間產生一隻創世貓,兩貓可以交配,根據定義的基因資料、遺傳演算法獲取後代貓的特性基因。
  2. Decentraland. 也是一款遊戲,通過在虛擬的領地設計、建設,創造特殊性的領地,然後通過交易提現價值。ERC721以外的特性:可以自己搭配,感覺類似於自己創造“基因”,支援3D展示。
  3. CryptoPunks。這是個朋克造型圖片的交易平臺。平臺初始時生成了固定的10000個朋克,各不相同,似乎特性不可更改。現在只是交易平臺。

關於ERC721標準的示例性闡釋,可以參見這篇文章:The Anatomy of ERC721

相關文章