Cloud cat-huffing use the method of issuing Token to breed cats. This requires that each Token be unique. Then proposed a new ERC standard: ERC721
The ERC721 standard defines a set of “non-fungible” token standards. Provides such a token tracking, transfer interface definition.
The first part is to supplement the ERC20 standard.
function name() constant returns (string name) function symbol() constant returns (string symbol) function totalSupply() constant returns (uint256 totalSupply) function balanceOf(address _owner) constant returns (uint256 balance)
In the ERC20 standard, reading the corresponding four variables requires using the underlying callcode, reading the variables in the contract, and then parsing the return value. Now provide the corresponding method, simply call the method can easily query ERC20 contract variables.
Basic permissions system
function ownerOf(uint256 _tokenId) constant returns (address owner)
ownerOf defines the token’s holder address.
function approve(address _to, uint256 _tokenId)
approve delegates the specified token owned by sender (contract caller / transaction initiator) to
_to. Unlike the ERC20 standard, the ERC20 standard authorizes each other a certain amount of credit. This standard is for a specific token.
function takeOwnership(uint256 _tokenId)
The authorized person can accept the authorized Token by this method, at this moment, the ownership of Token has been transferred.
function transfer(address _to, uint256 _tokenId)
The Token owner can transfer the token directly to the other party.
function tokenOfOwnerByIndex(address _owner, uint256 _index) constant returns (uint tokenId)
Query the specified Token owned by an address.
function tokenMetadata(uint256 _tokenId) constant returns (string infoUrl)
Returns the meta information corresponding to the specified token. infoUrl is an ipfs or http (s) address. Need to implement the multiaddress standard.
Overall, the core idea of ERC721 is to change the traditional token of Token into the only product for distribution.