CryptoPunk加密朋克不僅是一個頂級藍籌NFT項目,更是后續ERC721標準協議的靈感來源。
NFT交易市場,是目前整個區塊鏈行業中除了以太坊本身之外最高收入的賽道,而OpenSea,x2y2,LooksRare是目前Top3平臺,其合計交易量占99%以上。
今天咱們將解讀CryptoPunk的區區230行源碼,其對訂單模型與交易流程的實現,探索其內置的專用NFT交易市場的優勢缺點,也為后續逐步源碼分析3大NFT交易市場合約模型做基礎鋪墊。
想知道大蛋糕未來鹿死誰手,不妨和我一起源碼入手吧。
CryptoPunk內置的交易市場
如果細心的同學可以發現,在OpenSea上如果想購買Punk在其屬性頁面會發現,對其所用標準的描述并非ERC721或者1155,而是絕無僅有的cryptoPunks,他作為2017年推出堪稱史上最早的NFT協議,不僅實現了如今721標準的多數功能甚至還在其中內置了一個完全去中心化的交易服務市場,實現3種交易拍賣模式!
拓展閱讀:你買的NFT到底是什么?
其實對于NFT最底層而言,交易流動是個最最基礎的功能了,無非是要求雙方都使用tansfer,賣方給買方NFT,買方給賣方ETH,一手交錢一手交貨,但是當面交易尚且擔憂對方不給錢呢。因此原子性,是達成信任的必備因素,鏈上成交基于不可更改的特性正是最佳解決方案
1、Punk優美的訂單模型
回想一下,咱們在現實中是如何買賣商品的,大概有三類
英格蘭銀行允許CBDC和加密貨幣共存:金色財經報道,英格蘭銀行(BoE)數字部門負責人 Cathy Fortune 表示,未來會出現各種形式貨幣的混合生態系統,包括 CBDC 和穩定幣。CBDC 還將制定法律標準,這反過來將有助于刺激創新。穩定幣和 CBDC 具有創造新經濟的巨大潛力,錢應該像開燈一樣,我不考慮電,但我們都使用相同的能源這一事實產生了很大的不同。
根據Cathy Fortune的說法,重點應該放在創建 CBDC 基礎設施上,讓人們能夠更順暢地進行金融交易。[2023/3/31 13:37:58]
賣家報價,買家支付→等于超市選購
買家報價,賣家同意→等于菜市口砍價
線下議價,鏈上成交→等于線下公證拍賣
無論哪種,最終達成成交則需要執行交換,既要防止賣家不給貨,也要防止買家不給錢。
區塊鏈技術雖然完美的解決了萬一不給錢的問題,但是也帶來了議價困難的痛點,畢竟“砍一刀價格”都是要上鏈的,肯定不能用拼多多那樣的砍小數點后6位
Punk的market同時支持這3大類交易形式,既可以賣家報價,也可以買家報價,也可以議價后由合約幫你成交,全程無任何版稅扣取,且230行簡短的代碼也杜絕了后門的可能
他的訂單結構非常簡單分兩種:賣家報價單Offer和買家投標單Bid
1.1、賣家報價單Offer
與標準NFT一樣,每個Punk都有一個唯一ID,因此每個punk都有一個獨占的Offer訂單簿,這個獨占指的是,如果我重新報價無論是漲價還是降價,都將會替換掉前一個
當前全球前300家加密VC資管總規模為839億美元:3月21日消息,據Coinstack Partners管理合伙人Ryan Allis在分析全球前300家加密貨幣風險投資公司后得出,300家加密VC管理的資本總額為839億美元;舊金山是全球加密貨幣風險投資公司資本的第一大城市,代表著全球前50家加密貨幣風險投資公司總資本的45.16%,其次是紐約、香港、新加坡、奧斯汀、倫敦和上海。此外,盡管經歷熊市,2022年仍是歷史上加密貨幣風險投資的最大年份,市場進行了超過262億美元的新資本投資,高于2021年的251億美元。[2023/3/21 13:16:56]
這里通過isForSale?標注是否在售,通過onlySellTo?標注指定買家,則是用于鏈下議價鏈上執行成交功能
咱們可以顯著感受到,訂單模型非常的簡單,甚至連常見的訂單有效期都沒有,只要掛單賣家不主動取消的話,就總是有可能被買家以此價格購走
特別說明:這點雖然和opensea長時間的授權賣單類似,但不會出現異常價成交的情況,因為Punk在轉移的時候會取消掉歷史的報價單記錄
1.2、買家投標單Bid
投標單也非常簡約,基本等于四元組了。
除了賣家標價等待購買的形式,任何人均可以通過提交投標單,來聲明哪個punk我愿意用x的金額購買,這里同樣提供了hasBid?變量用于體現當前這個投標單是否有效
買方隨時可以取消之前的投標單,但是如果沒有更高的價格覆蓋的話,則原始的投標價格會保留,這是用于輔助其他買家定價出價的信息共享的設計
紐約聯儲顧問:相比發行CBDC,支持Stablecoin是一條可選擇的捷徑:金色財經報道,美聯儲紐約聯儲研究顧問Antoine Martin在倫敦出席活動時表示,中央銀行可以通過允許 Stbelcoin 與央行賬戶中的余額一比一錨定支持來支持 Stablecoin,而不是另發行零售的中央銀行數字貨幣紐約銀行。
Martin 補充表示,調整美國的監管和立法環境以支持 Stablecoin 已經是一項艱巨的任務,但它可能也要比管理 CBDC 更加容易。[2022/11/24 8:02:22]
投標時,錢在哪里??其實已經打到Punk合約里了
買家要提交投標單Bid是通過其Punk合約的enterBidForPunk?方法進入的,要傳入punkID參數以及當前交易的Value值,這就意味著,買家報價的時候,就已經將要購買的資金轉入到Punk的合約中
1.3、小結
看懂其核心的訂單簿結構后就是抓住了老鼠尾巴,其實他對應的各種方法,都是在進行對當前交易是否合理合法的審核,確定合法后,再對訂單數據做增刪查改
比如賣家成交后,會執行修改balanceOf中記錄的用戶累計持有的Punk總量,也會修改最核心punkIndexToAddress這個記錄哪個PunkID所有者是哪個的信息
對于標準協議的底層數據意義可拓展閱讀
NFT租賃提案EIP-5006步入最后審核!讓海外大型游戲的鏈改成為可能
總之訂單是為交易模式服務的,而Punk內置了3種交易方法
數據:USDT交易所提款數量達到2年低點:8月6日消息,據Glassnode數據顯示,USDT交易所提款數量達到2年低點,7日均值數額為510.798。之前的2年低點7日均值數額為511.190,日期為2022年6月10日。[2022/8/6 12:06:43]
2、Punk支持三種交易模式
2.1、賣家先報價,買家再競標
如果我作為持有Punk的尊貴用戶之一,想要賣出Punk,需3步
賣家報價->買家提交買單->賣家提取收益
展開看看
賣家報價:賣家執行offerPunkForSale?設置愿意以某價格賣掉某nft,而后訂單簿如下
買家購買:執行buyPunk方法在交易的value值傳入超過于賣家的minValue即可購買成功。**
賣家需要再次調用?withdraw?提走自己本次收益(即買家buy時存入合約的value)
如果賣家突然不想賣了:則調用punkNoLongerForSale?來報價單
還有什么流程能比這更簡單的?
或許只有在買家購買的同時也將收益打入賣家賬戶了吧。而Punk系統不這么設計的原因或許是激勵更高頻的場內交易,等需要外部用再提取走吧
2.2、買家先競標,賣家先確認
如果我并未持有Punk但對某個ID情有獨鐘,也能先出價分3步:
買家報競標單Bid->賣家接受->賣家提取收益
慢霧:Solana公鏈上發生大規模盜幣,建議用戶先將熱錢包代幣轉移到硬件錢包或知名交易所:8月3日消息,據慢霧區情報,Solana公鏈上發生大規模盜幣事件,大量用戶在不知情的情況下被轉移SOL和SPL代幣,慢霧安全團隊對此事件進行跟蹤分析:
已知攻擊者地址:
Htp9MGP8Tig923ZFY7Qf2zzbMUmYneFRAhSp7vSg4wxV、CEzN7mqP9xoxn2HdyW6fjEJ73t7qaX9Rp2zyS6hb3iEu、5WwBYgQG6BdErM2nNNyUmQXfcUnB68b6kesxBywh1J3n、GeEccGJ9BEzVbVor1njkBCCiqXJbXVeDHaXDCrBDbmuy
目前攻擊仍在進行,從交易特征上看,攻擊者在沒有使用攻擊合約的情況下,對賬號進行簽名轉賬,初步判斷是私鑰泄露。不少受害者反饋,他們使用過多種不同的錢包,以移動端錢包為主,我們推測可能問題出現在軟件供應鏈上。在新證據被發現前,我們建議用戶先將熱錢包代幣轉移到硬件錢包或知名交易所等相對安全的位置,等待事件分析結果。[2022/8/3 2:55:22]
展開看看
買家報價:調用enterBidForPunk,并將eth作為value,此時錢存于punk合約內
賣家接受:調用acceptBidForPunk,要明確按買家報價的價格接受此交易,執行后買方已經得到了此朋克NFTID
賣方提取收益:需要再次執行withdraw?提走所有可提額度
如果買家不想買了:則調用?withdrawBidForPunk?取消競標單,同時提走預存金額
2.3、鏈下議價鏈上執行
最后一種更簡單了,就是完全已經談妥了價格,由賣家通過
offerPunkForSaleToAddress?對訂單簿不僅設置價格,還設置一個唯一買家地址onlySellTo,只有此地址可以來完成這個訂單
這樣一來雖然鏈上依舊是3次交易但是可以實現低價交易的應用場景,例如定向質押,防止被人監聽截胡低價單用
3、如何評價Punk的交易市場?
乍一看,是一個很標準的最小NFT交易模型,確實可以準確穩定可靠的實現交易的核心環節,但有得有失,他優勢如何,而又少了什么呢
3.1、GAS成本低
由于鏈上只存儲了offer和Bid兩種簡約的訂單簿,且只保留最新最高價的部分詳情可見下文文末對以太坊黃皮書中定義gas計算的解析:你買的NFT到底是什么?
所以Punk市場的整體gas消耗并不高,筆者核算了下完成買賣提取全環節,大致消耗為30W的gas
按成交GAS排序:?Punk?<?opensea<GEM<Genie<X2Y2?<Looksrare
3.2、無需手續費
目前鏈上可見Punk累計有21W交易,如果5筆交易可成交一單的話,則以及有4W次轉移,對于這樣數十億市值的頂級藍籌而言,不收版稅簡直是暴遣天物啊
當然,拿這樣內置交易服務對比專職交易市場來比著實有些不公平,但也正是因為punk這樣內置完成交易的功能是遠遠到不了完善的功能體系的,所以才有了各種廣泛市場的可乘之機
而按手續費排序:Punk(0%)?<X2Y2(0.5%)<Looksrare(2%)<OS(2.5%)
3.3、對機制的缺點評價
結論1:買賣機制不利于流動性池
NFT而言流動性是至關重要的,而每次報價都要上鏈顯然是盆冷水,賣家不缺錢則不樂意動,買家難成交也缺乏動機,所以對報價者即收費且要求鎖定資產到Punk此舉雖然不會出現扣款失敗的情況,但是也導致買家資產的時間的價值的損失
這點,后來Os等平臺均采用簽名的方式,來鏈下撮合購買意愿,報價近乎無需gas僅成單的時候需要鏈上登記訂單結果來執行轉移
這一擊是中心化與去中心化在效率上的爭奪,顯然現在的市場還是需要效率
結論2:訂單模型不利于批量操作
Punk訂單模型的簡約堪稱是交易模型的典范,然而面對批量成交的訴求呢?
賣家:得每個id每個報單,確定成交
買家:得每個id每個競價,等待成交
雖然收益的資金有可以累計后批量提取的設計,但不是重點
而批量報價成交,是現在NFT市場的必爭之地
x2y2和Looksrare都在這點發力作為針對os的包圍戰,甚至拉上Gem等聚合器打通流量池的局限性,而os最新的SeaPort協議也實現了捆綁交易的新訂單模型,從而可以任意資產組合對應任意資產組合直接實現市場交易
然而Punk的源碼太過于超前,缺乏了代扣授權的功能,再也無緣批量成交
結論3:單一拍賣流程不利于撮合成交與定價
成交是需要妥協的,而NFT當前的價值也需要通過成交來博弈,如何為NFT定價一直都是巨大的難題
由此常見有四大拍賣機制:
英式拍賣。公開競標往上拾價,最高出價者得
荷式拍賣。價格由高往低降,首個出價者得
第一價格拍賣。對拍品進行單獨密封報價競品,不知道其他競買人的出價
第二價格拍賣。與上類似,不同的是最后出價最高者獲勝,但只需按第二高價格支付
而這些拍賣機制是Opensea的基礎功能,利于促進成交與定價
英拍:限定時間競拍,即不占用高價值藍籌的資金成本,也有時間緩沖來擬合各群體的博弈結果
荷拍:更有效的減少過高報價流動性低而無成交的問題,讓價值總要依據市場而變化
最終
雖然我吐槽了一堆,但是如此精簡優美的NFT協議+NFT交易市場,僅僅使用230行代碼就在2017年實現,并且演變為目前世界上最有價值的藍籌NFT之一,是值得研究的產品
未來未必只有交易市場一頭獨大,更多垂類會在自己NFT內也內置交易功能如StepN、AxieInfinity、NBATopShot,而在Seaport開源開放后內置市場就未必是功能濃縮版的代言詞了
后續筆者將繼續研究OpenSea,X2Y2,Looksrare,Gem等頭部NFT市場平臺,從合約出發,看其優勢與局限性,有興趣的看官,速速點贊關注,后續跟進吧~
前文回顧
一文講清-DeFI王者AAVE最新的穩定幣GHO提案
火爆的二舅幣真的跑路了嗎?
NFT租賃提案EIP-5006步入最后審核!讓海外大型游戲的鏈改成為可能
Harmony鏈橋被盜一億美金分析?
新標準4907是怎樣實現NFT租賃的?
OpenSea免費創造的NFT都沒上鏈竟能出現在我的錢包里?
你買的NFT到底是什么?
EIP-5058能否防止NFT項目方提桶跑路?
當我們在看Etherscan的時候,到底在看什么?
當奈飛的NFT忘記了web2的業務安全
歡迎你從后臺提交web3行業問題探討
點贊關注十四,用技術視角帶給你價值
來源:金色財經
Tags:PUNKPUNNFTBIDUnicly CryptoPunks CollectionPeople's Punknft幣今日價格行情BIDR價格
比特幣未平倉合約提供了對流入和流出比特幣衍生品市場的資金量的洞察。交易者使用比特幣期貨和永久掉期等衍生品來推測比特幣的價格是否會上漲或下跌,而無需擁有數字資產.
1900/1/1 0:00:00問炫到停不下來的是什么水果?答當然是桔子,就連小老虎都喜歡。問 小老虎喜歡桔子? 答是啊,不信的話我給你講個故事從虎虎生威到軟萌可rua,虎桔來啦!如果說好吃到停不下的是砂糖桔,那么可愛到放不下.
1900/1/1 0:00:00火幣科技控股有限公司下屬部門火幣科技戰略投資併購部於2022年7月發佈研究報告《萬字解析NFT預言機》.
1900/1/1 0:00:00TOKEN2049會議將在新加坡首次亮相,有望成為該地區規模最大的面對面加密行業會議。2022年7月8日,亞洲頂級加密會議TOKEN2049宣布了即將于9月28日至29日舉行,宣布了一批贊助商和.
1900/1/1 0:00:00以太坊網絡上最富有的錢包在過去30天里增加了近十億美元,在ETH反彈強勁的背景下。根據區塊鏈跟蹤服務Whalestats的數據,被稱為火影忍者的鯨魚從7月15日的略高于19.8億美元的余額增加到.
1900/1/1 0:00:00昨日,一張海報在社群上瘋狂傳播,短短幾分鐘內,相關話題在市場快速發酵。這張圖充分表明了現在市場上討論的熱點項目---Aleo,并且與當年紅極一時的王者項目Filecoin做了非常精確的對比.
1900/1/1 0:00:00