宇宙链 宇宙链
Ctrl+D收藏宇宙链

如何创建和部署 ERC-721(NFT)?

作者:

时间:1900/1/1 0:00:00

概述

自Cryptokitties推出以来,兼容ERC-721标准的加密收藏品已经非常流行,并在最近几个月向大规模采用的方向发展。本指南将涵盖使用0xcert/ethereum-erc721智能合约库创建和部署我们自己的ERC-721。

什么是非同质化代币?

同质化是指相同或可互换的意思。例如,以太坊代币、特定代币类的所有币,都具有相同的价值。Cardano代币也是如此。同质化代币可1:1互换。

而NFT是独一无二的,每个人都是不同的。每一个代币都有独特的特点和价值。可以成为NFT的东西类型有收藏卡、艺术品、飞机票等。它们之间都有明显的区别,不能互换。将非同质化代币视为稀有的收藏品;每个代币都有独特的特征,不寻常的属性,大多数时候,它利用元数据表示。

什么是ERC-721?

ERC是以太坊建议请求的缩写,721是提案编号。ERC是以太坊生态系统中的应用级标准,它们可以是代币的智能合约标准,如ERC-20,ERC的作者负责与以太坊社区建立共识,一旦提案被社区审核通过,就会成为标准。你可以跟踪最近的ERC提案这里。ERC-721的创建是为了提出在智能合约内跟踪和转移NFT的功能。

ERC-721是一个开放的标准,它描述了如何在EVM(以太坊虚拟机)兼容的区块链上构建非同质化代币;它是非同质化代币的标准接口;这是一套规则,使其易于与NFT交互。NFT不仅是ERC-721代币,还可以是ERC-1155代币。

以下是ERC-721标准中定义的一组函数和事件:ERC-721定义了一些符合ERC-20的函数。这使得现有钱包更容易显示简单的代币信息:

ERC20类函数:

name:用于定义代币的名称。

Sweat授权社区决定如何处理自年初以来积累的1亿枚SWEAT代币:4月18日消息,Move-to-Earn 项目 Sweat 授权社区决定如何处理自今年年初以来积累的 1 亿枚 SWEAT 代币,投票选项包括 0% 分发和 100% 销毁,25% 分发和 75% 销毁,50% 分发和 50% 销毁,75% 分发和 25% 销毁,100% 分发和 0% 销毁。[2023/4/18 14:11:30]

symbol:用于定义标记代币的符号。

totalSupply:这个函数用来定义区块链上的代币总数,供应量不必是恒定的。

balanceOf:返回一个地址拥有的NFT数量。

Ownership函数

本函数返回代币所有者的地址。由于每个ERC-721代币都是独一无二的,非同质化的,它们在区块链上由一个ID来表示。其他用户、合约、应用可以使用这个ID来确定代币的所有者。

approve:此函数批准另一个实体代表所有者转让代币的权限。

takeOwnership:这是一个可选的函数,它的作用就像一个取款函数,因为外界可以调用它从另一个用户的账户中取出代币。当一个用户被批准拥有一定数量的代币,可以使用takeOwnership。

transfer:这是另一个转移函数;它允许所有者将代币转让给另一个用户,就像加密货币一样。

tokenOfOwnerByIndex:这是一个可选的函数,但建议使用。每个所有者可以同时拥有一个以上的NFT。其独特的ID可以识别每一个NFT,结果可能会变得难以跟踪ID。所以合约将这些ID存储在一个数组中,tokenOfOwnerByIndex函数让我们从数组中检索这些信息。

直播|Elsa > 区块链企业钱包如何防护数字资产安全:金色财经 · 直播主办的《 币圈 “后浪” 仙女直播周》第8期20:00准时开始,本期“后浪”仙女太壹科技 首席品牌官 Elsa将在直播间聊聊“区块链企业钱包如何防护数字资产安全”,感兴趣的朋友扫码移步收听![2020/7/12]

元数据

tokenMetadata:(可选)一个接口,让我们可以发现代币的元数据或其数据的链接。

事件

Transfer:当代币的所有权从一个人变为另一个人时,该事件被触发。发出的信息包括哪个账户转移了代币,哪个账户收到了代币,以及哪个代币被转移。

Approve:当用户批准另一个用户获得代币的所有权时,该事件就会被触发,也就是说,每当approve函数被执行时,该事件就会被触发。它发出的信息包括:当前哪个账户拥有该代币,哪个账户被批准在未来拥有该代币,以及哪个代币被批准转让其所有权。

非同质化代币的使用场景

数字艺术(或实物艺术):艺术作品是NFT最受欢迎的使用案例。数字艺术拍卖是NFT的第一个应用,并且还在继续发展。游戏:提供游戏内购和游戏收藏。房地产:将房产和智能合约Token化,并进行买卖。金融:贷款、期货等金融工具,并承担其他责任。软件标题:软件授权,确保反盗版和隐私。演唱会门票/体育比赛门票:为了保证在卖票过程中不发生欺诈行为,粉丝可以在一个地方查看以往的经历。KYC合规性:为特定用户的KYC创建代币。

获得测试ETH

现在我们知道了什么是ERC-721代币以及它们是如何工作的,让我们看看如何构建和部署自己的代币。

我们将在Ropsten测试网上部署合约。开始前,你需要安装Metamask浏览器扩展来创建一个ETH钱包和获取一些测试ETH,你可以通过进入Ropsten水龙头来获得。你需要在Metamask钱包上选择Ropsten测试网络,并将自己的钱包地址复制粘贴到水龙头中的文本字段中,然后点击“SendmetestEther”。

大咖零距离 | 行情巨震 如何合理配置币圈资产:3月30日16:00,由金色盘面主办、BTSE交易所独家赞助的《大咖零距离》正式开播。届时BTSE联合创始人/CPO BrianWong,将在《大咖零距离》直播间分享《行情巨震,如何合理配置币圈资产》,敬请关注,欲进群观看直播扫描海报二维码报名即可![2020/3/30]

图片

将文件添加到IPFS

在写NFT合约之前,我们需要托管好NFT所对应的艺术作品,并创建一个元数据文件;为此,我们将使用IPFS--一个点对点文件存储和共享的分布式系统。按照IPFS文档中的安装指南下载并安装基于你的操作系统的IPFSCLI。

以下是托管图像和元数据文件的步骤:

步骤1:创建IPFSrepo。在终端窗口中输入以下内容来初始化IPFSrepo

$ipfsinit

步骤2:启动IPFS守护进程。打开一个单独的终端窗口,输入以下内容:

$ipfsdaemon

步骤3:添加图像到IPFS,进入第一个终端窗口,将图像添加到IPFS中。

$ipfsaddart

functionmint(address_to,uint256_tokenId,stringcalldata_uri)externalonlyOwner{super._mint(_to,_tokenId);super._setTokenUri(_tokenId,_uri);}}

Thomas 发布趣味视频 讲述EOSIO系统如何向节点支付奖励:据金色财经合作媒体IMEOS 报道,昨日 Thomas Cox 在 YouTube 上传了一个手绘风视频,为大家讲解 EOSIO 系统如何向节点支付奖励。视频中说到,按照每年通货膨胀 5% 的规则,每天大约会有 133,000 个新的 Token 产生,那么增发总数的 1%,即约为 27,000 个新的 Token 用于支付节点支出。并且,新系统中没有取中间值报价的说法。另外 4% 会进入 Worker Proposal Fund。[2018/5/21]

以下是代码的解释:

第1行:指定SPDX许可证类型,这是在Solidity^0.6.8之后增加的。每当智能合约的源代码向公众开放时,这些许可证可以帮助解决/避免版权问题。如果你不想指定任何许可证类型,你可以使用一个特殊的值UNLICENSED,或者直接跳过整个注释。

第2行:声明Solidity版本。

第4-5行:导入0xcert/ethereum-erc721合约。

第7行:合约命名为newNFT,它继承了NFTokenMetadata和Ownable合约。

第9-12行:初始化构造函数并设置名称及代币符号。

第14行:声明函数mint有三个参数,类型为地址的变量_to,存储NFT代币接收者的地址,类型为uint256的变量_tokenId,将保存代币id,类型为字符串的变量_uri,将存储JSON文件的URI。将mint声明为外部函数,可以从其他智能合约和当前合约之外访问。

第15行:使用接收方的地址和代币ID来铸造代币。

第16行:使用代币id和JSON文件的URI设置代币URI。

编译智能合约,并使用_InjectedWeb3_进行部署(编译合约前一定要在Metamask上选择Ropstentestnet)。批准来metamask的交易。

remix

如果你在部署前收到一条错误消息:此合约可能是抽象的,请确保在合约选项卡下选择适当的合约。在Metamask中确认交易。

metamask

现在进入Remix中的DeployedContracts部分,展开部署的合约。你会看到一堆函数/方法。展开mint函数并添加以下参数:

在_to中添加你的Ropsten地址。

在_tokenid中输入任何数字值(建议为1,因为它是第一个)。

在_uri字段中,添加上一节获得的JSON文件的URI。

img

点击交易,并从metamask确认交易。

你可以通过输入我们之前提到的tokenid来查看其他细节,如名称、符号、所有者或tokenuri。

nft信息

结论

恭喜你创建了自己的NFT,帮助你的艺术家朋友把他们的艺术作品发布到以太坊区块链上,或者自己也成为一名艺术家。查看0xcert/ethereum-erc721的GitHub获取更多例子。

原文:https://www.quiknode.io/guides/solidity/how-to-create-and-deploy-an-erc-721-nft

参考资料

Cryptokitties:https://www.cryptokitties.co/

0xcert/ethereum-erc721:https://github.com/0xcert/ethereum-erc721

ERC-20:https://www.quiknode.io/guides/solidity/how-to-create-and-deploy-an-erc20-token

这里:https://github.com/ethereum/EIPs/issues

ERC-721:https://eips.ethereum.org/EIPS/eip-721

ERC-1155:https://eips.ethereum.org/EIPS/eip-1155

Metamask:https://metamask.io/

Ropsten水龙头:https://faucet.ropsten.be/

IPFS:https://learnblockchain.cn/tags/IPFS

IPFS文档中的安装指南:https://ipfs.io/#install

0xcert/ethereum-erc721:https://github.com/0xcert/ethereum-erc721

以太坊Remix:https://remix.ethereum.org/

SPDX许可证:https://spdx.org/licenses/

0xcert/ethereum-erc721的GitHub:https://github.com/0xcert/ethereum-erc721

免责声明:作为区块链信息平台,本站所发布文章仅代表作者个人观点,与链闻ChainNews立场无关。文章内的信息、意见等均仅供参考,并非作为或被视为实际投资建议。

本文来源于非小号媒体平台:

登链社区

现已在非小号资讯平台发布105篇作品,

非小号开放平台欢迎币圈作者入驻

入驻指南:

/apply_guide/

本文网址:

/news/9805231.html

免责声明:

1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险

2.本文版权归属原作所有,仅代表作者本人观点,不代表非小号的观点或立场

上一篇:

盘点零知识证明代表性项目:如何影响和塑造区块链生态系统?

标签:TOKNFTETHTOKENimtoken币种MoonieNFTtogetherbnb手游下载官网KRW Token

欧易交易所app下载热门资讯
一文了解以太坊的Gas费用和EIP-1559提案

近几个月来,以太坊的采用率以前所未有的速度增长。去中心化金融继续快速增长,稳定币在全球范围内被采用,NFT也成为热点话题。以太坊的广泛使用对其长期前景而言是一个很好的信号.

1900/1/1 0:00:00
席幕枫:3.25以太坊1600再夺分水岭,横久必是续跌时

多言不可与谋,多动不可与久处,交易与其冲动,还不如一动不动!大家好,我是席幕枫。心存阳光必有诗与远方,认识我老席何惧再遇荒凉?席幕枫:3.25以太坊午间行情分析以太坊,早盘日线大阴结尾,昨晚晚间冲高1741.56承压受阻,早间滑铁跌至.

1900/1/1 0:00:00
陶治庸:BTC ETH 短期反弹修复,后市依旧看好空头走势!

BTC行情分析: 4小时走势方面,K线沿布林带下轨运行,K线目前已经四连阴,整体空头趋势比较明朗!中短周期均线呈空头排列向下延伸.

1900/1/1 0:00:00
HomiEx(红米交易所)关于上线LON/USDT交易对公告

亲爱的用户: HomiEx将于2021年3月26日15:00上线LON/USDT交易对。关于LON(Tokenlon)Tokenlon定位是imToken推出的基于区块链网络实现的去中心化交易支付结算协议.

1900/1/1 0:00:00
Uniswap V3即将发布,DEX龙头将会为市场带来什么?

前几天Uniswap团队发了一条推特:“今天,我们很兴奋地向大家介绍Uniswapv3的概况。我们的目标是于今年5月5日在以太坊主网上线,之后再上线部署于Optimism的Layer2版本.

1900/1/1 0:00:00
关于WBF开启NBTC活期理财的公告

尊敬的用户: WBF携手BNTC项目方开启活期理财第一期,具体详情如下: 认购说明: 1.本次认购仅支持APP端,可在APP端“挖矿宝”-“定期理财”中认购.

1900/1/1 0:00:00