moneymonday
指數/外匯
明報APP

報章內容

潘俊文:逐一拆解NFT背後機制

【明報專訊】非同質化代幣(NFT)熱潮席捲全球,但背後的技術大家又知多少呢?NFT大多應用在圖像、音樂等數碼檔案上,而當中NFT經常提及的獨特性,背後都是依賴智能合約(smart contract)技術。智能合約在得到用戶授權後能自動執行交易程序,當中的速度及處理時間都極快捷方便,是NFT世界中一個不可或缺的角色。隨着鏈上技術不斷迭代,項目對不同協議的需求亦不斷翻新。今天筆者會帶大家認識常見的NFT協議及NFT授權轉移時涉及的技術。

ERC721買賣授權 轉移後不可逆轉

NFT最為常見的協議包括ERC721、ERC1155、ERC721A和SPL等。ERC全名為Ethereum Request for Comment,主要用於發行以太幣平台下的代幣和NFT。ERC721為最早應用的NFT協議,這些NFT協議重點是賦予每個NFT一個獨特的uint256代幣號碼(token ID),使每一個NFT變得獨一無二。同時每個代幣中都具備metadata(元數據)以代表NFT中的特徵及其稀有度,買家會根據metadata中顯示的數值去購買比較稀有的NFT,作收藏或投資等用途。

要發行ERC721的NFT代幣,當然要先了解ERC721的合約內容。ERC721的最主要功能包括執行轉移NFT代幣擁有權,查看在鏈上總共發行代幣的數量及特定代幣的擁有人。在常規NFT交易時,智能合約會要求用戶授權(approval)轉移特定代幣所需的權限以換取售出時所獲得的以太幣。如果擁有人沒有授權的話,特定代幣是不可能被轉移的。如果在第三方平台上買賣NFT時(例如Opensea) ,智能合約會要求用戶授權該項目所有代幣的權限 (approval for all ),方便日後的操作,例如省略多項買賣中涉及的步驟和gas fee。這些交易可追蹤但不可逆轉,因此一旦授權及轉移了該代幣,原本代幣的擁有者將喪失控制該代幣的權利。

最近不少的釣魚網站都利用free mint(免費購買)中的按鈕做掩護,在購買按鈕背後加插授權等指令,導致用家在購買時不為意地授權了該代幣的轉移,最近的一次攻擊令著名NFT收藏家Digital Ornithologist失去總值近1000萬港元的月鳥(moonbird)NFT。

另一方面,ERC1155比較適合發行通行證類型的NFT,ERC1155跟ERC721最大分別是同一個item中有不同的代幣號碼 (token ID),在批量NFT購買時(比如將100個武器皮膚NFT一次過賣出),ERC721需要100次交易,而ERC1155的優點是在同一個交易中能夠包含多次交易,大大減少當中需要的交易費用(gas fee)。ERC1155近期亦研發出半同質化(semi-fungible) 等技術,能將同質化代幣(fungible)燒毁並產出非同質化代幣(non-fungible),現時能夠在mocktailswap平台使用。

ERC1155適合發行通行證類型NFT

由於加密貨幣和NFT興起,頻繁的交易令NFT主要的網絡——以太坊變得非常繁忙。基於以太坊POW的設計,gas fee成為了NFT市場交易的一大痛點。

現在見到的趨勢是,有不少價值較低的項目會放在Solana或Polygon鏈上發行,以降低交易成本,相信在以太坊升級至2.0前,發行商都會考慮這安排。此外,ERC721作為第一個廣泛使用的NFT發行機制,將會繼續優化,例如最近的ERC721A,潛力實在不容忽視,相信其影響會延續,並持續獲主流使用。

香港數碼資產學會幹事

www.hkdas.net

(本網發表的文章若提出批評,旨在指出相關制度、政策或措施存在錯誤或缺點,目的是促使矯正或消除這些錯誤或缺點,循合法途徑予以改善,絕無意圖煽動他人對政府或其他社群產生憎恨、不滿或敵意。)

[潘俊文 加密解碼]