共计 827 个字符,预计需要花费 3 分钟才能阅读完成。
NFT 的图片、音视频等资源须要有个存储空间,咱们个别会应用 IPFS。
星际文件系统 IPFS(Inter-Planetary File System)是一个面向寰球的、点对点的分布式版本文件系统,零碎开发对接 v +hkkf5566 指标是为了补充(甚至是取代)目前统治互联网的超文本传输协定(HTTP),将所有具备雷同文件系统的计算设施连贯在一起。原理用基于内容的地址代替基于域名的地址,也就是用户寻找的不是某个地址而是贮存在某个中央的内容,不须要验证发送者的身份,而只须要验证内容的哈希,通过这样能够让网页的速度更快、更平安、更强壮、更长久。
idToOwner 保护了谁领有什么通证,映射关系是通证 ID 到其所有者地址;
idToApproval 保护了谁被受权操作某个通证,映射关系是通证 ID 到被受权操作的地址;
ownerToNFTokenCount 保护了某个地址所领有的 nft 总量,映射关系是用户地址到代表总量的整数;
ownerToOperators 保护了某个地址是否受权给了另外一个地址;
一个次要的 modifier 是 canOperate:
// 查看是否具备操作某个 nft 的权限
modifier canOperate(
uint256 _tokenId
)
{
// 找到对应 token 的所有者
address tokenOwner = idToOwner[_tokenId];
require(
// 须要操作者是所有者或者被所有者受权
tokenOwner == msg.sender || ownerToOperatorstokenOwner,
// 否则返回谬误
NOT_OWNER_OR_OPERATOR
);
_;
}
同时,ERC-721 还反对可选的实现项,metadata extension,次要用以返回 NFT 的形容信息。
ERC-1155
ERC-1155 同下面的形容,因为实现了“打包”的性能,所以 ERC-1155 的大部分函数都反对 batch 的操作。相比于 ERC-721,ERC-1155 有很好的效率晋升。