火星链 火星链
Ctrl+D收藏火星链
首页 > MANA > 正文

PUN:CryptoPunk:世界上最早的去中心化NFT交易市场

作者:

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

CryptoPunk加密朋克不仅是一个顶级蓝筹NFT项目,更是后续ERC721标准协议的灵感来源。NFT交易市场,是目前整个区块链行业中除了以太坊本身之外最高收入的赛道,而OpenSea,x2y2,LooksRare是目前Top3平台,其合计交易量占99%以上。今天咱们将解读CryptoPunk的区区230行源码,其对订单模型与交易流程的实现,探索其内置的专用NFT交易市场的优势缺点,也为后续逐步源码分析3大NFT交易市场合约模型做基础铺垫。想知道大蛋糕未来鹿死谁手,不妨和我一起源码入手吧。CryptoPunk内置的交易市场

如果细心的同学可以发现,在OpenSea上如果想购买Punk在其属性页面会发现,对其所用标准的描述并非ERC721或者1155,而是绝无仅有的cryptoPunks,他作为2017年推出堪称史上最早的NFT协议,不仅实现了如今721标准的多数功能甚至还在其中内置了一个完全去中心化的交易服务市场,实现3种交易拍卖模式!

<OpenSea上Punk首页>拓展阅读:你买的NFT到底是什么?其实对于NFT最底层而言,交易流动是个最最基础的功能了,无非是要求双方都使用tansfer,卖方给买方NFT,买方给卖方ETH,一手交钱一手交货,但是当面交易尚且担忧对方不给钱呢。因此原子性,是达成信任的必备因素,链上成交基于不可更改的特性正是最佳解决方案1、Punk优美的订单模型

CryptoPunk #4608 以220ETH的价格成交:金色财经报道,数据显示,CryptoPunk #4608 以220ETH的价格成交。[2023/2/19 12:15:41]

回想一下,咱们在现实中是如何买卖商品的,大概有三类卖家报价,买家支付→等于超市选购买家报价,卖家同意→等于菜市口砍价线下议价,链上成交→等于线下公证拍卖无论哪种,最终达成成交则需要执行交换,既要防止卖家不给货,也要防止买家不给钱。区块链技术虽然完美的解决了万一不给钱的问题,但是也带来了议价困难的痛点,毕竟“砍一刀价格”都是要上链的,肯定不能用拼多多那样的砍小数点后6位Punk的market同时支持这3大类交易形式,既可以卖家报价,也可以买家报价,也可以议价后由合约帮你成交,全程无任何版税扣取,且230行简短的代码也杜绝了后门的可能他的订单结构非常简单分两种:卖家报价单Offer和买家投标单Bid1.1、卖家报价单Offer

与标准NFT一样,每个Punk都有一个唯一ID,因此每个punk都有一个独占的Offer订单簿,这个独占指的是,如果我重新报价无论是涨价还是降价,都将会替换掉前一个。这里通过isForSale标注是否在售,通过onlySellTo标注指定买家,则是用于链下议价链上执行成交功能

Jump Crypto总裁:随着中心化交易所的崩溃,现在建立信任层的压力越来越大:金色财经报道,Jump Crypto总裁Kanav Kariya周日谈到了在加密货币中需要更好的信任层。这位高管认为,随着中心化交易所的崩溃,现在建立更强大、更快速的信任层的集体压力越来越大。

Kanav Kariya补充道,FTX的所谓欺诈在100年前会被视为欺诈。它在一个以抽象化信任为前提的行业中浮出水面,这是一个残酷的把戏,在社会信任度下降的环境中,加密货币和信任的抽象概念比以往任何时候都更有意义,信任的解体对我们的行业产生了严重的负面影响,而且在我看来,大大超过了正面影响。低信任度极大地减缓了创新和进步。[2022/11/28 21:05:53]

咱们可以显著感受到,订单模型非常的简单,甚至连常见的订单有效期都没有,只要挂单卖家不主动取消的话,就总是有可能被买家以此价格购走特别说明:这点虽然和opensea长时间的授权卖单类似,但不会出现异常价成交的情况,因为Punk在转移的时候会取消掉历史的报价单记录1.2、买家投标单Bid

投标单也非常简约,基本等于四元组了。除了卖家标价等待购买的形式,任何人均可以通过提交投标单,来声明哪个punk我愿意用x的金额购买,这里同样提供了hasBid变量用于体现当前这个投标单是否有效买方随时可以取消之前的投标单,但是如果没有更高的价格覆盖的话,则原始的投标价格会保留,这是用于辅助其他买家定价出价的信息共享的设计

Cryptowatch推出加密社交平台Cryptowatch Social:金色财经报道,加密货币交易终端Cryptowatch宣布推出 Cryptowatch Social,这是第一个旨在培养基于信任和透明度的加密社区的社交平台。

Cryptowatch Social功能包括交易所账户集成,验证创建者的数字资产或进行的交易。

Cryptowatch 成立于2014年,是加密持有者扫描价格、分析市场走势并在每个主要交易所进行交易的一体化界面。(businesswire)[2022/11/2 12:09:35]

投标时,钱在哪里??其实已经打到Punk合约里了买家要提交投标单Bid是通过其Punk合约的enterBidForPunk方法进入的,要传入punkID参数以及当前交易的Value值,这就意味着,买家报价的时候,就已经将要购买的资金转入到Punk的合约中1.3、小结

看懂其核心的订单簿结构后就是抓住了老鼠尾巴,其实他对应的各种方法,都是在进行对当前交易是否合理合法的审核,确定合法后,再对订单数据做增删查改

CryptoPunks系列NFT近24小时交易额涨幅超1000%:金色财经消息,据OpenSea最新数据显示,CryptoPunks系列NFT近24小时交易额为708.39 ETH,24小时增幅1024.43%。交易额排名达到第一。

此前消息,珠宝品牌蒂芙尼(Tiffany&Co)宣布发行NFT,仅面向CryptoPunks持有者出售。[2022/8/1 2:51:15]

比如卖家成交后,会执行修改balanceOf中记录的用户累计持有的Punk总量,也会修改最核心punkIndexToAddress这个记录哪个PunkID所有者是哪个的信息对于标准协议的底层数据意义可拓展阅读NFT租赁提案EIP-5006步入最后审核!让海外大型游戏的链改成为可能总之订单是为交易模式服务的,而Punk内置了3种交易方法2、Punk支持三种交易模式

2.1、卖家先报价,买家再竞标

如果我作为持有Punk的尊贵用户之一,想要卖出Punk,需3步卖家报价->买家提交买单->卖家提取收益展开看看卖家报价:卖家执行offerPunkForSale设置愿意以某价格卖掉某nft,而后订单簿如下

声音 | Crypto PR实验室联合创始人:区块链技术很快将在俄罗斯得到发展:据btcmanager报道,Crypto PR实验室联合创始人兼首席法律官Maria Prusakova在接受采访时表示,新的区块链相关业务现在在俄罗斯兴起。与加密货币相比,区块链技术在俄罗斯更具有优势。Prusakova指出,已经看到俄罗斯主要指导参与者倾向于推动相关的立法。虽然这个过程非常耗时,但期待这一领域很快将得到发展。[2018/7/24]

买家购买:执行buyPunk方法在交易的value值传入超过于卖家的minValue即可购买成功。**卖家需要再次调用withdraw提走自己本次收益(即买家buy时存入合约的value)如果卖家突然不想卖了:则调用punkNoLongerForSale来报价单还有什么流程能比这更简单的?或许只有在买家购买的同时也将收益打入卖家账户了吧。而Punk系统不这么设计的原因或许是激励更高频的场内交易,等需要外部用再提取走吧2.2、买家先竞标,卖家先确认

如果我并未持有Punk但对某个ID情有独钟,也能先出价分3步:买家报竞标单Bid->卖家接受->卖家提取收益展开看看买家报价:调用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<Looksrare3.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市场平台,从合约出发,看其优势与局限性,有兴趣的看官,速速点赞关注,后续跟进吧~

标签:PUNKPUNNFTCRYPTSPUNK Vault (NFTX)Unicly CryptoPunks CollectionNFTN价格Power Crypto World

MANA热门资讯
GAL:Galxe推出Passport引争议,浅谈SBT的未来发展趋势如何

当一个Web3项目开始推出需要KYC的服务时,结果可想而知。知名Web3凭证数据网络项目Galxe在推出自己的Passport后,遭到骂声一片,因为需要用户的身份和人脸信息,虽然一再强调其加密存.

1900/1/1 0:00:00
TOKEN:一文梳理10个小众却强大的加密研究工具

除去大家耳熟能详的加密市场工具Nansen、Dune、DefiLlama和Parsec等,加密KOLSergioGallardo在其个人社交平台上分享了10个相对小众但同样强大的加密研究工具.

1900/1/1 0:00:00
DEF:盘点12个可能照亮DeFi未来的协议

虽然2022年到目前为止是熊市大屠杀的一年,但在DeFi内部有一些非常激烈的建设正在进行,并产生了许多有趣的影响…… 因此,我想做一个关于12个协议的长贴.

1900/1/1 0:00:00
PTI:Messari:对Optimism治理基金的观察

本文来自MessariGovernor团队两名分析师Raho和Tnorm对OP治理激进的观察,OP采用的是委托投票治理模式,本文对于了解委托投票及其中存在的漏洞具有一定的参考意义.

1900/1/1 0:00:00
SUI:新公链后浪Aptos、Sui强势来袭:Move将如何书写新篇章?

2019年,Meta推出了加密货币项目Libra,吸引了整个金融市场的关注,但随后Libra因监管限制被迫转型Diem。今年1月底,Diem以约1.82亿美元的价格被Meta出售.

1900/1/1 0:00:00
BAB:浅析Binance首个灵魂绑定代币BAB的潜在应用场景

9月8日,Binance宣布推出基于BNBChain上首个灵魂绑定通证:Binance账户绑定通证,作为Binance用户已完成KYC认证的身份证明.

1900/1/1 0:00:00