电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

如何用用Python制作NFT區(qū)塊鏈作品

瀏覽:44日期:2022-06-16 15:39:39
目錄什么是 NFT?ERC20 與 ERC721NFT 有什么用?NFT 的價(jià)值如何制作 NFT如何進(jìn)行無限定制的 NFT快速上手ERC721 代幣標(biāo)準(zhǔn)什么是 NFT 元數(shù)據(jù)和 TokenURI?TokenURI鏈下元數(shù)據(jù)與鏈上元數(shù)據(jù)什么是 NFT?

NFT英文全稱為Non-Fungible Token,翻譯成中文就是:非同質(zhì)化代幣,具有不可分割、不可替代、獨(dú)一無二等特點(diǎn)。NFT由于其非同質(zhì)化、不可拆分的特性,使得它可以和現(xiàn)實(shí)世界中的一些商品綁定。換言之,其實(shí)就是發(fā)行在區(qū)塊鏈上的數(shù)字資產(chǎn),這個(gè)資產(chǎn)可以是游戲道具、數(shù)字藝術(shù)品、門票等,并且具有唯一性和不可復(fù)制性。由于NFT具備天然的收藏屬性和便于交易,加密藝術(shù)家們可以利用NFT創(chuàng)造出獨(dú)一無二的數(shù)字藝術(shù)品。

ERC20 與 ERC721

NFT 是類似于 ERC20 的區(qū)塊鏈token標(biāo)準(zhǔn),如 AAVE、SNX 和 LINK(技術(shù)上為 ERC677)。ERC20 是“可替代”的代幣,意思是“可替換”或“可互換”。

例如,無論您使用什么美元紙幣,您的美元紙幣都將值 1 美元。美元鈔票上的序列號(hào)可能不同,但鈔票是可以互換的,無論如何它們都值 1 美元。

另一方面,NFT 是“不可替代的”,它們遵循自己的代幣標(biāo)準(zhǔn) ERC721。例如,蒙娜麗莎是“不可替代的”。即使有人可以復(fù)制它,但永遠(yuǎn)只有一個(gè)蒙娜麗莎。如果蒙娜麗莎是在區(qū)塊鏈上創(chuàng)建的,它將是 NFT。

如何用用Python制作NFT區(qū)塊鏈作品

NFT 有什么用?

NFT 通過將合約永久地部署在鏈上,讓創(chuàng)作者、藝術(shù)家、游戲設(shè)計(jì)師等創(chuàng)造價(jià)值。

你將永遠(yuǎn)知道誰創(chuàng)造了 NFT,誰擁有 NFT,它來自哪里等等,這種獨(dú)特性讓他們比傳統(tǒng)藝術(shù)更有價(jià)值。在傳統(tǒng)藝術(shù)中,理解什么是“假貨”可能很棘手,而鏈上的歷史很容易追溯。

由于智能合約和 NFT 是 100% 可編程的,NFT 還可以添加內(nèi)置的版稅和任何其他功能。補(bǔ)償藝術(shù)家一直是一個(gè)問題,因?yàn)橥ǔK囆g(shù)家的作品在沒有任何歸屬的情況下四處傳播。

越來越多的藝術(shù)家和工程師開始利用這一巨大的附加值,因?yàn)檫@最終成為藝術(shù)家獲得工作報(bào)酬的好方法。不僅如此,NFT 還是一種展示您的創(chuàng)造力并成為數(shù)字世界收藏家的有趣方式。

NFT 的價(jià)值

NFT 已經(jīng)走過了漫長(zhǎng)的道路,我們不斷看到 NFT 的銷售額創(chuàng)下紀(jì)錄,例如下面這幅名為“每天:前 5,000 天”的畫作售價(jià)為 6930 萬美元。

如何用用Python制作NFT區(qū)塊鏈作品

NFT也是在數(shù)字世界中創(chuàng)造藝術(shù)和了解智能合約創(chuàng)建的一種有趣、動(dòng)態(tài)和引人入勝的方式。所以現(xiàn)在將教你制作 NFT 所需的一切知識(shí)。

如何制作 NFT

現(xiàn)在,制作 NFT 的最簡(jiǎn)單方法就是前往 Opensea、Rarible 或 Mintible 等平臺(tái),并按照他們的分步指南在他們的平臺(tái)上進(jìn)行部署即可。

你可以 100% 走這條路,但是你可能會(huì)被平臺(tái)綁定。你無法實(shí)現(xiàn)無限的定制,或者真正利用 NFT 的任何優(yōu)勢(shì)。

如果你想用代碼來實(shí)現(xiàn),學(xué)習(xí)一些扎實(shí)的知識(shí),并有能力以無限的創(chuàng)造力創(chuàng)造出一些東西,那么請(qǐng)繼續(xù)閱讀!

如何進(jìn)行無限定制的 NFT

首先介紹NFT Brownie Mix。這是一個(gè)包含大量樣板代碼的工作倉庫。

https://github.com/PatrickAlphaC/nft-mix

先決條件

我們需要安裝一些東西才能開始:

Python Nodejs 和 npm Metamask

如果您不熟悉 Metamask,您可以按照下面教程進(jìn)行設(shè)置。

https://docs.chain.link/docs/install-metamask/

Rinkeby Testnet ETH 和 LINK

我們還將部署在 Rinkeby 以太坊測(cè)試鏈上!

測(cè)試鏈?zhǔn)菧y(cè)試我們的智能合約在現(xiàn)實(shí)世界中表現(xiàn)的好方法。我們需要 Rinkeby ETH 和 Rinkeby LINK,我們可以從 Chainlink 文檔中最新水龍頭的鏈接中免費(fèi)獲得它們。

我們還需要將 rinkeby LINK 的token添加到metamask中,我們可以按照 LINK 文檔進(jìn)行操作。

https://docs.chain.link/docs/acquire-link/

注意一定要使用 Rinkeby 而不是 Ropsten。在使用像以太坊這樣的智能合約平臺(tái)時(shí),我們需要支付一點(diǎn) ETH,而從鏈下獲取數(shù)據(jù)時(shí),我們需要支付一點(diǎn) LINK。這就是我們需要獲取測(cè)試鏈上的LINK 和 ETH 的原因。

下面這件作品就是我們要部署到 OpenSea 的 NFT。

https://testnets.opensea.io/assets/0x8acb7ca932892eb83e4411b59309d44dddbc4cdf/0

如何用用Python制作NFT區(qū)塊鏈作品

快速上手

git clone https://github.com/PatrickAlphaC/nft-mixcd nft-mix

現(xiàn)在我們需要安裝 ganache-cli 和 eth-brownie。

pip install eth-brownienpm install -g ganache-cli

現(xiàn)在我們可以設(shè)置我們的環(huán)境變量。如果您不熟悉環(huán)境變量,只需將它們添加到 .env 文件中,然后運(yùn)行:

source .env

.env的示例應(yīng)該在你剛剛克隆的 repo 中,并注釋掉了環(huán)境變量。請(qǐng)確保取消注釋以使用它們!

您需要一個(gè) WEB3_INFURA_PROJECT_ID和一個(gè) PRIVATE_KEY 。WEB3_INFURA_PROJECT_ID 可以在注冊(cè)免費(fèi) Infura 帳戶時(shí)找到。這將為我們提供一種將交易發(fā)送到區(qū)塊鏈的方法。

我們還需要一個(gè)私鑰,您可以從您的 Metamask 中獲取。點(diǎn)擊 3 個(gè)小點(diǎn),然后單擊帳戶詳細(xì)信息和導(dǎo)出私鑰。如果您投入現(xiàn)金進(jìn)去,請(qǐng)不要與任何人分享此密鑰!

export PRIVATE_KEY=YOUR_KEY_HEREexport WEB3_INFURA_PROJECT_ID=YOUR_PROJECT_ID_HERE

現(xiàn)在我們可以部署我們的 NFT 合約并使用以下兩個(gè)命令創(chuàng)建我們的第一個(gè)收藏品。

brownie run scripts/simple_collectible/deploy_simple.py --network rinkebybrownie run scripts/simple_collectible/create_collectible.py --network rinkeby

第一個(gè)腳本將我們的 NFT 合約部署到 Rinkeby 區(qū)塊鏈,第二個(gè)腳本創(chuàng)建了我們的第一個(gè)收藏品。

您剛剛部署了第一個(gè)智能合約!

它根本沒有什么作用,但別擔(dān)心——我將在本教程的高級(jí)部分向您展示如何在 OpenSea 上渲染它。首先,讓我們看看 ERC721 代幣標(biāo)準(zhǔn)。

ERC721 代幣標(biāo)準(zhǔn)

我們來看看我們剛剛部署的合約,在 SimpleCollectible.sol 文件中。

如何用用Python制作NFT區(qū)塊鏈作品

我們將 OpenZeplin 包用于 ERC721 token。導(dǎo)入的這個(gè)包允許我們使用典型 ERC721 token的所有功能。這定義了我們的代幣將具有的所有功能,例如 transfer——將代幣轉(zhuǎn)移給新用戶, safeMint——?jiǎng)?chuàng)建新代幣,等等。

您可以通過查看 OpenZepplin ERC721 代幣合約找到賦予我們合約的所有功能。我們的合約在下面一行繼承了這些功能:

https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC721/ERC721.sol

contract SimpleCollectible is ERC721 {

這就是 Solidity 繼承的方式。當(dāng)我們部署一個(gè)合約時(shí),構(gòu)造函數(shù)會(huì)被自動(dòng)調(diào)用,它需要一些參數(shù)。

如何用用Python制作NFT區(qū)塊鏈作品

我們還使用了 ERC721 的構(gòu)造函數(shù),在我們的構(gòu)造函數(shù)中,我們只需要給它一個(gè)名稱和一個(gè)符號(hào)。在我們的例子中,它是“Dogie”和“DOG”。這意味著我們創(chuàng)建的每個(gè) NFT 都將是 Dogie/DOG 類型。

這就像每張口袋妖怪卡仍然是口袋妖怪,或者交易卡上的每個(gè)棒球運(yùn)動(dòng)員仍然是棒球運(yùn)動(dòng)員。每個(gè)棒球運(yùn)動(dòng)員都是獨(dú)一無二的,但他們?nèi)匀欢际前羟蜻\(yùn)動(dòng)員。我們只是使用 DOG 類型。

我們?cè)陧敳坑?tokenCounter 來計(jì)算我們創(chuàng)建了多少這種類型的 NFT。每個(gè)新token都會(huì)根據(jù)當(dāng)前的 tokenCounter 獲得一個(gè) tokenId。

實(shí)際上可以使用 createCollectible 函數(shù)創(chuàng)建 NFT。這就是我們?cè)?create_collectible.py 腳本中所寫的。

如何用用Python制作NFT區(qū)塊鏈作品

_safeMint函數(shù)創(chuàng)建新的 NFT,并將其分配給調(diào)用 createdCollectible的人,也就是 msg.sender,并使用從 tokenCounter 派生的 newItemId。這就是我們?nèi)绾瓮ㄟ^檢查 tokenId的所有者來跟蹤誰擁有什么。

您會(huì)注意到我們還調(diào)用了 _setTokenURI。讓我們來看一下。

什么是 NFT 元數(shù)據(jù)和 TokenURI?

當(dāng)創(chuàng)建智能合約和創(chuàng)建 NFT 時(shí),人們很快意識(shí)到將大量數(shù)據(jù)部署到區(qū)塊鏈?zhǔn)欠浅0嘿F的。小至 1 KB 的圖像的存儲(chǔ)成本很容易超過 100 萬美元。

這顯然是 NFT 的一個(gè)問題,因?yàn)閾碛袆?chuàng)意藝術(shù)意味著您必須將這些信息存儲(chǔ)在某個(gè)地方。他們還想要一種輕量級(jí)的方式來存儲(chǔ)有關(guān) NFT 的屬性——這就是 tokenURI 和元數(shù)據(jù)發(fā)揮作用的地方。

TokenURI

NFT 上的 tokenURI 是token“外觀”的唯一標(biāo)識(shí)符。URI 可以是通過 HTTPS 的 API 調(diào)用、IPFS 哈希值或任何其他獨(dú)特的東西。

它們遵循顯示元數(shù)據(jù)的標(biāo)準(zhǔn),如下所示:

如何用用Python制作NFT區(qū)塊鏈作品

這些顯示了 NFT 的外觀及其屬性。圖像部分指向 NFT 外觀的另一個(gè) URI。這使得 Opensea、Rarible 和 Mintable 等 NFT 平臺(tái)可以輕松地在其平臺(tái)上呈現(xiàn) NFT,因?yàn)樗鼈兌荚趯ふ疫@種元數(shù)據(jù)。

鏈下元數(shù)據(jù)與鏈上元數(shù)據(jù)

現(xiàn)在你可能會(huì)想“等等......如果元數(shù)據(jù)不在鏈上,這是否意味著我的 NFT 可能會(huì)在某個(gè)時(shí)候消失”?你是對(duì)的。

您認(rèn)為鏈下元數(shù)據(jù)意味著您不能使用該元數(shù)據(jù)讓您的智能合約相互交互也是正確的。

這就是為什么我們要專注于鏈上元數(shù)據(jù),以便我們可以對(duì) NFT 進(jìn)行編程以相互交互。

但是,我們?nèi)匀恍枰溝略獢?shù)據(jù)的圖像部分,因?yàn)槲覀儧]有一種很好的方法來在鏈上存儲(chǔ)大圖像。但是別擔(dān)心,我們?nèi)匀豢梢酝ㄟ^使用 IPFS 在去中心化網(wǎng)絡(luò)上免費(fèi)做到這一點(diǎn)。

這是來自 IPFS 的 imageURI示例,它顯示了在龍與地下城教程中創(chuàng)建的 ChainlinkElf。

https://blog.chain.link/build-deploy-and-sell-your-own-dynamic-nft/

如何用用Python制作NFT區(qū)塊鏈作品

我們沒有為簡(jiǎn)單的 NFT 設(shè)置 tokenURI,因?yàn)槲覀冎幌胝故疽粋€(gè)基本示例。

下一篇將講解 NFT 進(jìn)階知識(shí),這樣就可以看到我們用鏈上元數(shù)據(jù)實(shí)現(xiàn)的一些驚人功能,在 opeansea 上渲染 NFT,并讓我們的狗狗振作起來!

以上就是如何用用Python制作NFT區(qū)塊鏈作品的詳細(xì)內(nèi)容,更多關(guān)于Python制作NFT區(qū)塊鏈作品的資料請(qǐng)關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 污泥烘干机-低温干化机-工业污泥烘干设备厂家-焦作市真节能环保设备科技有限公司 | 微量水分测定仪_厂家_卡尔费休微量水分测定仪-淄博库仑 | 货车视频监控,油管家,货车油管家-淄博世纪锐行电子科技 | 北京发电机出租_发电机租赁_北京发电机维修 - 河北腾伦发电机出租 | 浙江自考_浙江自学考试网 | 净化车间_洁净厂房_净化公司_净化厂房_无尘室工程_洁净工程装修|改造|施工-深圳净化公司 | 越南专线物流_东莞国际物流_东南亚专线物流_行通物流 | 光泽度计_测量显微镜_苏州压力仪_苏州扭力板手维修-苏州日升精密仪器有限公司 | 一点车讯-汽车网站,每天一点最新车讯! | 山东锐智科电检测仪器有限公司_超声波测厚仪,涂层测厚仪,里氏硬度计,电火花检漏仪,地下管线探测仪 | 大数据营销公司_舆情监测软件_上海SEO公司-文军营销官网 | 威客电竞(vk·game)·电子竞技赛事官网 | 广州番禺搬家公司_天河黄埔搬家公司_企业工厂搬迁_日式搬家_广州搬家公司_厚道搬迁搬家公司 | 粉末冶金注射成型厂家|MIM厂家|粉末冶金齿轮|MIM零件-深圳市新泰兴精密科技 | 元拓建材集团官方网站 | 河北凯普威医疗器材有限公司,高档轮椅系列,推车系列,座厕椅系列,协步椅系列,拐扙系列,卫浴系列 | 碎石机设备-欧版反击破-欧版颚式破碎机(站)厂家_山东奥凯诺机械 高低温试验箱-模拟高低温试验箱订制-北京普桑达仪器科技有限公司【官网】 | 安徽华耐泵阀有限公司-官方网站 安德建奇火花机-阿奇夏米尔慢走丝|高维|发那科-北京杰森柏汇 | 搪瓷反应釜厂家,淄博搪瓷反应釜-淄博卓耀 | 27PR跨境电商导航 | 专注外贸跨境电商 | POS机官网 - 拉卡拉POS机免费办理|官网在线申请入口 | 刮板输送机,粉尘加湿搅拌机,螺旋输送机,布袋除尘器 | 南京兰江泵业有限公司-水解酸化池潜水搅拌机-絮凝反应池搅拌机-好氧区潜水推进器 | 板框压滤机-隔膜压滤机-厢式压滤机生产厂家-禹州市君工机械设备有限公司 | 安平县鑫川金属丝网制品有限公司,防风抑尘网,单峰防风抑尘,不锈钢防风抑尘网,铝板防风抑尘网,镀铝锌防风抑尘网 | 订做不锈钢_不锈钢定做加工厂_不锈钢非标定制-重庆侨峰金属加工厂 | 蜂窝块状沸石分子筛-吸附脱硫分子筛-萍乡市捷龙环保科技有限公司 | EFM 022静电场测试仪-套帽式风量计-静电平板监测器-上海民仪电子有限公司 | 电动卫生级调节阀,电动防爆球阀,电动软密封蝶阀,气动高压球阀,气动对夹蝶阀,气动V型调节球阀-上海川沪阀门有限公司 | 杭州月嫂技术培训服务公司-催乳师培训中心报名费用-产后康复师培训机构-杭州优贝姆健康管理有限公司 | 深圳办公室装修-写字楼装修设计-深圳标榜装饰公司 | 亮化工程,亮化设计,城市亮化工程,亮化资质合作,长沙亮化照明,杰奥思【官网】 | PE拉伸缠绕膜,拉伸缠绕膜厂家,纳米缠绕膜-山东凯祥包装 | 变色龙PPT-国内原创PPT模板交易平台 - PPT贰零 - 西安聚讯网络科技有限公司 | 杭州代理记账多少钱-注册公司代办-公司注销流程及费用-杭州福道财务管理咨询有限公司 | 车充外壳,车载充电器外壳,车载点烟器外壳,点烟器连接头,旅行充充电器外壳,手机充电器外壳,深圳市华科达塑胶五金有限公司 | 电动不锈钢套筒阀-球面偏置气动钟阀-三通换向阀止回阀-永嘉鸿宇阀门有限公司 | 运动木地板厂家_体育木地板安装_篮球木地板选购_实木运动地板价格 | 紧急泄压人孔_防爆阻火器_阻火呼吸阀[河北宏泽石化] | 福兰德PVC地板|PVC塑胶地板|PVC运动地板|PVC商用地板-中国弹性地板系统专业解决方案领先供应商! 福建成考网-福建成人高考网 | 东莞喷砂机-喷砂机-喷砂机配件-喷砂器材-喷砂加工-东莞市协帆喷砂机械设备有限公司 |