譯文出自:登鏈翻譯計劃
譯者:翻譯小組
校對:Tiny熊
使用OpenZeppelin、Truffle和Pinata。
ERC-721標準催生了以太坊上的非可替代代幣(NFT)市場。ERC-721是一個創建NFT的標準。任何獨特的事物都可以成為NFT。一棟房子、一張棒球卡、一件藝術品等。但其蘊含的能量不僅僅在于事物是獨特的、數字化的,更在于其可驗證性。這就是ERC-721標準的閃光點。
創建ERC-721代幣的主要問題來自于存儲標的資產。區塊鏈并不適合存儲大量數據。2017年,Interplanetary數據庫的JamilaOmar估計,在以太坊上存儲1GB數據的成本將超過400萬美元。
在以太坊上存儲數據的成本約為17,500ETH/GB,按今天的價格計算,約為4,672,500美元。--JamilaOmar,2017
既然存儲NFT綁定的標的資產的成本太高,以致無法使用區塊鏈讓存儲,那么有什么替代方案呢?我們可以使用傳統的云存儲來存儲標的資產,如亞馬遜的S3和微軟的Azure提供了廉價的存儲解決方案。然而,我們所熟知的傳統云存儲有一個很大的缺陷:他們不是密碼學上可以驗證的。
可驗證性
NFT的全部意義可能是對標的資產或數字資產可驗證和可控制。
如果我們不能以類似于驗證代表資產的代幣所有權的方式來驗證標的資產本身,我們就失去了最終目標。
Terra 2.0 社區已啟動就有關如何分配 0.5% 應急資金提案的投票:6月9日消息,Terra 2.0 社區已啟動就有關如何分配 0.5% 應急資金提案的投票,該提案建議將這部分資金分配給在 Terra Classic 上推出過符合市場需求的產品,包括產生了一定量的 TVL 和沒有產生 TVL 的項目以及尚未推出過符合市場需求產品的項目,并提議向以上三類項目分別分配 250 萬枚 LUNA、100 萬枚 LUNA 和 150 萬枚 LUNA。此外,該提案建議組件一個由部分 Terra 社區的長期成員組成的理事會監督分配工作。[2022/6/9 4:13:09]
解決這兩個問題的方法是IPFS。IPFS是一個分布式存儲網絡。它的工作方式與云存儲類似。你請求內容,就會被返回該內容。然而,最大的不同是,內容的存儲利用了全球的存儲提供者網絡。IPFS利用了一種叫做內容可尋址的工具。這意味著,你不需要向俄亥俄州的數據中心提出請求,而是對內容本身提出請求。它可能位于俄亥俄州。有了內容可尋址性,你不再需要依賴單一的位置來檢索內容。這對于全球區塊鏈應用來說,分布式存儲效率更高。
IPFS還為我們解決了可驗證性問題。因為所有的內容都是根據內容本身來定義和存儲的,如果一個內容被篡改或改變,我們在試圖驗證內容時,就會出現不匹配的情況,知道內容是錯誤的。我們用一個簡單的例子來說明一下。
Alice在IPFS上存儲了一張貓的圖片,該貓的圖片由一個內容標識符來表示。為簡單起見,我們假設標識符為C。
聲音 | 人民郵電報:區塊鏈如何填補法律監管“空白”?:人民郵電報今日發表文章《區塊鏈:如何填補法律監管“空白”?》,文章表示, 如今,把區塊鏈作為核心技術自主創新重要突破口,加快推動區塊鏈技術和產業創新發展,成為大家關注的熱點話題。毫無疑問,區塊鏈將為新一代信息技術發展帶來新機遇,引發新一輪技術創新和產業變革。而與之相隨的,是新技術新業務發展應用所帶來的法律空白和監管困境,如何在監管空白與監管過度之間找到平衡點,成為擺在立法、執法者面前的一道難題。[2019/12/6]
鮑勃請求那張貓的照片,然后給那只可憐的貓畫上胡子。當Bob上傳他的圖片時,他將不再擁有相同的標識符。因為他改變了底層數據,所以Bob的標識符可能是M。
如果鮑勃想把他的照片冒充愛麗絲的照片任何人都會知道他在撒謊。愛麗絲的標識符與鮑勃的標識符不一致,因此,鮑勃試圖冒充愛麗絲的圖像是可以驗證的假象。
這有一個是視頻介紹:https://youtu
這里面有很多內容,讓我們一行一行的過。awardItem函數需要三個參數。一個名為recipient的地址變量,一個名為hash的字符串變量,一個名為metadata的字符串變量。地址變量recipient是將收到NFT的人的錢包地址。hash的字符串變量是與正在創建NFT的內容相關聯的IPFS哈希。而metadata的字符串變量是指向資產的JSON元數據的鏈接。元數據可能包括資產名稱、指向該資產的圖片鏈接或其他任何你想要的內容。
大咖零距離 | 交易心理重塑:如何在爆倉后調整交易心態:10月22日19:30,由金色盤面主辦、UP交易所獨家贊助的《大咖零距離》正式開播。屆時實盤大V鐵頭0707,將在《大咖零距離》直播間分享《交易心理重塑:如何在爆倉后調整交易心態》。敬請關注,欲進群觀看直播掃描海報二維碼報名即可![2019/10/22]
然后,在定義了函數之后,要把它變成public。這只是意味著它可以從智能合約外部調用,另外我們還定義函數的返回值為uint256類型。
在函數里面,使用Solidity內置的require來自動拒絕合約的調用,如果哈希之前已經被用來鑄造NFT。檢查hashes映射是否有匹配的整數為1的哈希值,如果有,那么這個哈希值已經被使用了。
如果哈希沒有被使用,我們將通過函數傳遞的哈希添加到哈希映射中,并將其值設為1。
最后,我們遞增_tokenIds變量,并鑄造代幣,返回代幣標識符。
快速總結一下,合約現在需要一個以太坊錢包地址和一個IPFS哈希。它會檢查以確保哈希值沒鑄造過NFT。如果一切正常,就會創建一個新的NFT,來對應該IPFS哈希。
好了,我們已經寫好了合約。現在怎么辦?
讓我們編譯并部署它,現在要用之前安裝的Ganache。通過ganache-cli或使用桌面客戶端啟動Ganache。
在項目目錄下,有一個migrations的文件夾。需要創建一個新的遷移文件來部署UniqueAsset,新遷移文件為2-deploy-contract
聲音 | 新加坡金管局高管:金管局正在研究如何通過監管應對加密貨幣帶來的風險:據Finance Magnates消息,新加坡金融管理局(MAS)高管Damien Pang在本周四舉行的年度金融科技聯合大會上表示,許多監管機構和行業人士呼吁以自上而下的方式對加密貨幣行業進行監管。金管局正在研究加密貨幣帶來的風險,以及如何通過監管來予以應對。 Pang稱:“我們絕對需要監管加密貨幣,這是為了正確應對風險。例如使用加密貨幣為恐怖主義融資等,這是我們需要解決的問題。因此,問題不在于加密貨幣是否應該受到監管,而是關于(區塊鏈)技術所帶來的風險,以及我們如何在不對整個加密貨幣行業一網打盡的情況下,試圖減輕這些風險。”[2019/6/27]
;
完成并保存后,在終端中,在項目目錄下,運行。
trufflecompile
假設沒有碰到任何錯誤,你的合約已經編譯完成,現在可以部署了。簡單的運行:
trufflemigrate
如果出現錯誤,你可能需要手動設置Ganache運行的端口,和你的truffle-config
;pinFileToIPFS();
上傳成功后,你會得到這樣的結果。
{IpfsHash:'QmfAvnM89JrqvdhLymbU5sXoAukEJygSLk9cJMBPTyrmxo',PinSize:2936977,Timestamp:'2020-12-03T21:07:13.876Z'}
動態 | EOS社區在如何使用eosio的資金上存在分歧:據Coindesk消息,EOS區塊鏈上的eosio.saving賬戶余額不斷增加,價值接近1.92億美元。EOS社區對如何處理這些資金存在分歧。EOS核心工作小組的成員希望看到這些資金被用于造福社會。然而,也有明顯的聲音,敦促社區關閉WPS,取消其資金來源,“燒掉”或銷毀目前在eosio.saving帳戶中的所有Token。[2018/8/27]
這個哈希值就是你的資產的可驗證的表示,它指向你在IPFS網絡上的資產。如果有人篡改了你的資產,改變了你的資產,哈希值就會不同。在通過我們的智能合約鑄造NFTs時,應該使用這個哈希值。任何提供公共網關的IPFS主機都可以為你顯示資產內容。
Pinata有一個網關,你可以在這里查看我剛才上傳的資產。
最后,我們需要做的是創建一個JSON文件,代表我們的資產及其元數據。這使得你可能想要列出你的資產的任何服務更容易顯示適當的元數據。讓我們創建一個簡單的JSON文件,像這樣。
{"name":"MyKid'sArt","hash":"QmfAvnM89JrqvdhLymbU5sXoAukEJygSLk9cJMBPTyrmxo","by":"JustinHuner"}
你可以添加任何你喜歡的元數據,但重要的是要包含哈希值。這是對實際資產的參考。現在,用使用Pinata上傳資產文件的方式上傳這個JSON文件。當你拿回元數據的IPFS哈希值時,要把它保存起來。在創建NFT代幣時需要這個。
還記得,智能合約采取的是元數據字符串嗎?這個字符串將是元數據的IPFSURL。你要這樣構造:
ipfs://YOUR_METADATA_HASH
因此,總結一下,你將向我們之前創建的智能合約函數中傳遞三個項目。
收件人地址
資產哈希
元數據URL
合并起來
NFT是我們處理各類商品所有權的重要改進。它們很容易轉讓,并簡化了建立所有權和證明所有權的過程。不過,缺失的一環,一直是對具體標的物所有權的驗證。
通過將資產保存到IPFS,并將IPFS哈希值與資產的NFT關聯起來,我們可以將資產的可驗證所有權擴展到驗證標的資產本身的有效性。
Pinata有助于簡化這一過程,使IPFS上的資產存儲變得簡單。
本翻譯由CellNetwork贊助支持。
來源:https://medium.com/pinata/how-to-build-erc-721-nfts-with-ipfs-e76a21d8f914
參考資料
登鏈翻譯計劃:https://github.com/lbc-team/Pioneer
翻譯小組:https://learnblockchain.cn/people/412
Tiny熊:https://learnblockchain.cn/people/15
ERC-721標準:https://eips.ethereum.org/EIPS/eip-721
JamilaOmar,2017:https://medium.com/ipdb-blog/forever-isnt-free-the-cost-of-storage-on-a-blockchain-database-59003f63e01
IPFS:https://ipfs.io/
安裝說明:https://docs.ipfs.io/how-to/command-line-quick-start/
安裝:https://www.trufflesuite.com/ganache
安裝:https://learnblockchain.cn/docs/truffle/getting-started/installation.html
安裝:https://nodejs.org/en/
運行自己的IPFS節點:https://medium.com/pinata/how-to-deploy-an-ipfs-node-on-digital-ocean-c59b9e83098e
Pinning服務:https://medium.com/pinata/what-is-an-ipfs-pinning-service-f6ed4cd7e475
在此注冊賬戶:https://pinata.cloud/
OpenZeppelin:https://openzeppelin.com/
OpenZeppelin:https://openzeppelin.com/
有一個方便的上傳功能的UI:https://pinata.cloud/pinataupload
在這里:https://gateway.pinata.cloud/ipfs/QmfAvnM89JrqvdhLymbU5sXoAukEJygSLk9cJMBPTyrmxo/
Pinata:https://pinata.cloud/
CellNetwork:https://www.cellnetwork.io/?utm_souce=learnblockchain
免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。
本文來源于非小號媒體平臺:
登鏈社區
現已在非小號資訊平臺發布105篇作品,
非小號開放平臺歡迎幣圈作者入駐
入駐指南:
/apply_guide/
本文網址:
/news/9762068.html
免責聲明:
1.資訊內容不構成投資建議,投資者應獨立決策并自行承擔風險
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表非小號的觀點或立場
上一篇:
盤點零知識證明代表性項目:如何影響和塑造區塊鏈生態系統?
3月12日針對比特大陸近期事宜,臺積電稱,我們無法回應檢調中的案件。臺積電公司不評論單一客戶特定訂單,但一向秉持與客戶建立伙伴關系的精神,以期成為客戶信賴且賴以成功的長期重要伙伴.
1900/1/1 0:00:00頭條 ▌美國總統正式簽署1.9萬億美元的經濟刺激法案美國總統拜登正式簽署1.9萬億美元的經濟刺激法案.
1900/1/1 0:00:00吳說作者|談叔 本期編輯|?ColinWu3月8日,塞舌爾金融服務管理局FSA的網站上發布了警示.
1900/1/1 0:00:00Gate.io一直秉承真實,透明的理念,不造假數據,不干預市場交易,為用戶提供真實自由的市場工具和穩定健康的市場服務。杠桿交易提供做多和做空機制,可以有效穩定市場到合理價值.
1900/1/1 0:00:00尊敬的社區用戶: 由于HNT節點升級,霍比特交易現已暫停HNT的充值和提現。霍比特交易所將在HNT節點升級完畢后恢復充提業務,具體時間將以公告另行通知.
1900/1/1 0:00:00作者:纏師說幣 出品:奔跑財經 導讀 比特幣的概念最初由中本聰在2008年11月1日提出,并于2009年1月3日正式誕生。根據中本聰的思路設計發布的開源軟件以及建構其上的P2P網絡.
1900/1/1 0:00:00