从表象到本质,包你一文看懂NFT
Posted vigor2323
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从表象到本质,包你一文看懂NFT相关的知识,希望对你有一定的参考价值。
上面这5000幅画的合体,是数字艺术画家Beeple的NFT作品《Everyday:The First 5000 Days》,2021年3月,卖了6934万美元。
上面这个图,是NFT“无聊猿”(BAYC Bored Ape Yacht Club)第3749号作品,2021年9月6日,卖了740ETH,时价约290万美元。
这是NFT“加密朋克”(Cryptopunks)第3100号作品,2021年3月11日,卖了4200ETH,时价约758万美元。
买这些的人是疯了吗?这不就是些图片吗?
就在一年前,还没有多少人知道NFT,然而,现在,人人都在讲NFT,要么是想买,要么是想做。
注:本文是“用直观抓住NFT是什么”系列文章的合集,方便读者一次性看完。
注:本文的示例主要是图片类NFT,其他类型(如视频、音乐)的NFT,原理上是一样一样的。
一、NFT的突破性及其实质
人们之所以热衷买一个NFT,因为第一次在互联网上,人们踏实地感觉到自己拥有了一个数字作品的拥有权(所有权,ownership)。而且这个权利,是全网公开透明的,是主人亲自掌握的,是谁也剥夺不了的。
这个能力是区块链技术带来的。
背后是区块链中无处不在的密码学技术。
只有掌握了私钥的人,才能转移、转让他的NFT,其他任何人都无法做到这点。
为了明白这点,我们先仔细看看,对于一个NFT,区块链上到底存放了什么。
从目前绝大多数NFT的实现上看,区块链上只是记录了一个作品拥有者的地址、作品的编号、以及这个作品的链接。作品本身并不在区块链上,除非是那种很简单的作品(因为作品比较大,存在区块链上很贵的)。
简单地说,区块上存这三样东西:地址、编号、链接
。
地址
指的是拥有者的区块链地址,对于以太坊而言,通常是下面类似的样子:
0x40468d172cE354d3fAdAb06D0FA53eDdB2F3AA54
编号
就是一套NFT中某个艺术品(或称“收藏品”)的编号,比如有一个NFT叫Creature,里面有20个形态各异的动画形象,你买了编号第6的那个。
这个Creature NFT是Opensea(一个NFC交易平台)的一个示范教材例子,里面是一些动物的动画形象,可以用于游戏或社交之类的平台。
注意我们说NFT,有两种语境,比如说加密朋克是一个NFT,其实说它是一套NFT作品,里面有10000个punk,每个punk都是一个具体的NFT。
现在我们看第3个要素,作品的链接
,这和我们平时所说的链接是一样的,比如这个样子:
https://Opensea-creatures-api.herokuapp.com/api/creature/6
注意后面那个6,正是这个NFT的编号。
这个链接打开后,显示如下:(你也可以自己打开看看)
"attributes":["trait_type":"base","value":"jellyfish","trait_type":"eyes","value":"joy","trait_type":"mouth","value":"pleased","trait_type":"level","value":2,"trait_type":"stamina","value":2.3,"trait_type":"personality","value":"sleepy","display_type":"boost_number","trait_type":"aqua_power","value":10,"display_type":"boost_percentage","trait_type":"stamina_increase","value":5,"display_type":"number","trait_type":"generation","value":1],"description":"Friendly Opensea Creature that enjoys long swims in the ocean.","external_url":"https://example.com/?token_id=6",
"image":"https://storage.googleapis.com/Opensea-prod.appspot.com/creature/6.png",
"name":"Herbie Starbelly"
打开的并不是NFT作品本身,而是对这个作品的一些信息描述(也即这个NFT的元数据(metadata),用的是json格式)。具体不用细看,这些主要描述的就是这个动画的属性,比如这是个水母,眼睛是快乐的,嘴巴是高兴的,耐力值是2.3,特点是爱睡觉的,它的名字,它的编号、它的图像等等。
这些属性我并不感兴趣,我最感兴趣的是这个动物到底长什么样,那就要去看里面的image值:
image:https://storage.googleapis.com/Opensea-prod.appspot.com/creature/6.png
这又是一个链接,打开这个链接,可以看到:
对这个NFT(Creature NFT 6号)而言,区块链上只是保存了以下3个要素:
(0x40468d172cE354d3fAdAb06D0FA53eDdB2F3AA45,6,https://Opensea-creatures-api.herokuapp.com/api/creature/6)
在NFT的标准ERC721中,这三个要素就是(address,ID,tokenURI)。在NFT智能合约的地址上,通过读接口查询你的address,就能知道你拥有NFT的ID,并进而得到这个ID的tokenURI(链接)。
ERC721是一套关于以太坊上发行NFT的标准,说明了NFT合约应该提供什么接口,metadata数据以什么格式存储等等。后来还有ERC1155、ERC998等标准(感觉这两者更多适用在游戏中),有兴趣可以自行去看看。
所以,从技术上讲,目前而言,NFT就是作品链接、编号和作品拥有者地址在区块链上的一个简单记录,而作品本身,在链下。因为画作(音乐、视频等类似)比较大,放在区块链上过于昂贵(都是要花gas费的),仅仅是那些比较简单的图案类作品,才会舍得放在链上。
这些记录的管理,是通过“智能合约”来自动实现的。“智能合约”就是区块链上的可执行的代码。就像一个计算机,区块链上,要么是代码,要么是数据。
谁买了一个NFT,智能合约就会把这个人的地址和这个NFT的编号绑定起来。从编号可以查对应的拥有者地址,从地址也可以查一个人拥有的NFT作品。
当拥有者想转让NFT时,会调用智能合约提供的接口(比如transfer接口),填上作品编号以及被转让人的地址,发送“调用消息”就可以了。这个消息是需要调用者提供数字签名的,而只有掌握该地址对应的私钥,才能做出数字签名。其他人没有私钥,做不出数字签名,他发送的消息就不被区块链认可,就改不了一个NFT对应的地址。
张三把NFT转让给李四之后,该作品原先绑定的张三的地址,现在就改为李四的新地址了。
而且这个转换,会记录下来,谁都可以查。
原理基本讲完了,现在我们看一个很实际的问题:链接失效了怎么办?
这个问题很让人头疼,因为链接失效的事情太多了,而且在NFT领域也确实发生过这类事:有人买了一个音乐NFT,但是链接失效了。理论上他仍然是拥有者。但从一定程度上看,证据没了,谁能证明那个“链接”里原先是那首曲子?
更何况,链接里面的内容是可以改的,我卖给你的时候是一个卡通鱼,后来我把链接里的内容改成了卡通猪,那你是拥有那只鱼还是那头猪?这就考验发行者的诚信了。
所以,现在NFT发行者,一般都会用IPFS替代HTTPS。IPFS是一个分布式的文件存储系统,更符合区块链这种去中心化系统的要求,能更好做到不可篡改性。无聊猿用的就是这个。
无聊猿第1号作品的链接(tokenURI)为:
ipfs://QmeSjSinHpPnmXmspMjwiXyN6zS4E9zccariGR3jxcaWtq/1
打开这个文件,其内容是:
"image":"ipfs://QmPbxeGcXhYQQNgsC6a36dDyYUcHgMLnGKnF8pVFmGsvqi","attributes":["trait_type":"Mouth","value":"Grin","trait_type":"Clothes","value":"Vietnam Jacket","trait_type":"Background","value":"Orange","trait_type":"Eyes","value":"Blue Beams","trait_type":"Fur","value":"Robot"]
这里面的image又是一个IPFS链接:
ipfs://QmPbxeGcXhYQQNgsC6a36dDyYUcHgMLnGKnF8pVFmGsvqi
打开这个文件,是这样的:
二、NFT和以前的数字商品有什么不同
看到这里,你也许会想,不就是一些数据上链嘛(还不是所有数据),这和以前有什么不同?
这里我打个比方:V家出了限量包包,10000个(每个包包可能不一样,也可能是一样的包包,仅仅是编号不一样)。
你去买,买了第23号,并留下了你家地址。那么,你家地址、23号、包包链接
就会记录在V家的账本上。
以前,这个记录是售货员小姐姐记在门店的纸质账本上的,后来,小姐姐输入到V家请IT公司开发的类似客户管理系统或者ERP这样系统的数据库中,现在,小姐姐没了,你在交易平台买了包包,就会自动记到区块链上。
如果有人说他才拥有第23号,而不是你。你们可以对簿公堂,大家查区块链帐本,帐本说23号包包绑定的地址是某小区某号楼某房间。
在法院的监督下,你们一行人来到这个家门口,他打不开房门,而你掏出钥匙打开了,就证明了你是真正的拥有者。
而V家的包包,其实是数字的,放在账本上链接指向的地方。
如果有人买了这个数字包包,他得到的好处是:
1、可以炫耀。你可以说,我也是有NFT的人了。如果别人问你到底买了个啥,你就说我有了一个独一无二的东西,或者说我有了一个全球限量10000个“包包”里面的一个。
2、如果有人说你并没有,你可以证明给他看。比如你可以在数字钱包上展示给他看,可以在Opensea上给他看,也可以在该NFT的网站上给他看,而且,归根到底,可以在区块链上看,比如,对于以太坊区块链上的NFT,可以在etherscan网站上给他看。
3、你拥有它,所以你可以随意送人;以后这个NFT要是升值了,还可以卖掉它赚钱。
有人说,这和在电商平台(淘宝、京东)上买数字商品是不是差不多?
也不一样的:
1、NFT是纯数字产品,交易高度自动化,而且所有交易不可篡改,是你的就不会是别人的了。(电商的交易环节中很多缺不了人,而且数据并非不能改)
2、没有人能够在后台控制,没有内幕、没有黑箱操作,一切数据都明明白白公示。(电商后台的代码和数据都不会给你看的)
3、由于智能合约(简单理解为区块链上的代码)的能力,可以创新出很多以前不能做的事。
加密朋克官网是这么说的:
“我们编写了存在于区块链上的代码,任何人都可以使用它与世界上任何另一个人买卖朋克(punk)。这个系统一个有趣的地方是,我们不再控制运行加密朋克的代码!一旦我们将其发布到区块链上,它就永久嵌入在那里,任何人都无法再修改。这对我们作为开发人员来说很可怕,因为我们担心有Bug。但不能修改代码这点是非常强大的,它允许用户验证确实只有10000个朋克,验证我们无法从您那里窃取任何一个punk,并确保我们所声称的都是真实的。加密朋克被创造后就运行在以太坊网络上,代码掌控所有权。此后,我们不再有创造上或是所有权上的控制了。”
NFT的另一个巨大好处是公开透明性。
我们知道,篮球明星库里花了18万美元(55ETH)买了第7990号猿猴,并把它作为自己在社交平台上的头像:
只要知道这个猿猴的编号,在OpenSea上查找记录就能发现,这是库里在2021年8月28日购买的:
由于知道了库里的地址(SC30对应的地址),还可以顺便看看他还买了什么NFT:
https://opensea.io/SC30
打开上面这个链接可以看到,库里还有很多其他收藏。
同样的方法可知娱乐明星余文乐的以太坊地址,并进而得知他拥有第8787号punk:
由于区块链的公开透明性,我们可以查到:
2021年3月20日,0x0e4437……这个地址花了47ETH,买下了该punk,然后转赠给了余文乐(0x279679……)
至于0x0e4437……是不是也是余文乐的地址,就不知道了。
报道1称:“2021年9月17日到9月28日期间,佳士得拍卖行拍卖余文乐的精选珍藏,而拍卖品里不仅有传统的实体收藏,其中还有NFT作品。当佳士得询问余文乐关于对NFT 的看法时,他认为NFT 对他来说会是未来的大趋势,因为这代表了一个时代的模式。而在此之前,余文乐就已把自己的头像改为Cryptopunk NFT。根据这个头像,找到了余文乐的ETH 地址,发现他的众多NFT收藏。”
三、NFT的交易和价格
NFT目前大都是通过NFT交易平台来完成交易的,常见的交易平台有Opensea、Rarible、SuperRare 、AtomicMarket、Nifty Gateway这些。国内有蚂蚁链粉丝粒、腾讯的幻核、NFT中国、秘宝等等这些(国内交易网站大多只能买不能卖)
但全球知名度最高的还是Opensea。
很多NFT作品有自己的网站,可以在它自己的网站买,比如加密朋克的网站:
https://www.larvalabs.com/cryptopunks
也可以线下卖,只要你有合适的渠道。比如Beeple的《Everydays: The First 5000 Days》就是通过佳士得拍卖会成交的。
为什么这些有名气的NFT作品能卖那么贵?
概括说来,一是它本身有其价值,二是它已经形成了很大的名声效应,三是因为前两点,它发展出了投资价值。
我们先看一下Cryptopunks:
1、它的名字里有crypto还有punk这两个点都是非常让geek想拥有一个的。crypto有自由、神秘、反主流、数字权力的象征;punk则是酷、屌、玩世不恭、简单随意;每个punk都是计算机自动生成,这很符合hacker行事方式;24*24像素则挑逗起一种复古的geek情怀。
2、加密朋克不是第一个NFT,但是第一个知名的NFT。圈内先火起来,一部分区块链玩家、科技企业高管率先购买Punk,以此为荣,提升数字威望。然后出圈,引发潮流。
3、 到现阶段,再买punk的人基本是以投资心理进入的,以期今后升值卖出。
背景知识:CryptoPunk创制于2017年6月,当时NFT概念尚未完全确立,更没有市场。Larva Labs原本是打算做一批手机app或游戏的头像,于是根据算法生成了1万个24 x 24像素的8-bit头像,每个都有自己随机生成的独特朋克外观和特征。但在出售时,无人问津。
于是他们改变主意,自留其中1000个头像,再把余下9000个免费发放,任何拥有以太坊钱包的用户都可以自行获取,所有头像很快被抢夺一空。玩家获得头像后,可以自由转卖。就像BTC一样,横空出世的CryptoPunk在NFT领域具有老大一般的地位。
无聊猿卖这么贵的原因是类似的:
1、无聊猿的10000个头像,每个看上去都很精致,做头像是很适合的。
2、在2021年4月23日开始发售时,并没有受到许多关注,直到5月1号的一天,知名收藏家Pranksy关注到了这个项目,并宣布他已经购买了250多只猿猴。从他发布推特的那一刻起,BAYC的销量、用户、交易数激增。仅在117分钟后,BAYC售罄。
3、无聊猿在发售时,每一只猿猴的售价都是0.08ETH,这提供了较低的入门成本,使所有用户站在同一起跑线上,这种公平公正的方式吸引了不少投资者。
至于Beeple的《Everydays: The First 5000 Days》买那么贵,也是有原因的:
1、Beeple的画作,每件都是真正的、手工做出来的艺术品。
2、Beeple早已大名鼎鼎。自2007年5月1日以来,Beeple每一天都创作和上传一幅数码作品,并取名为《Everyday》,卖出的这幅作品是他5000幅作品的拼贴集合,像素是21069 x 21069。
3、购买者是NFT基金Metapurse的匿名创始人(化名Metakovan),他表示想让该艺术品留在加密货币领域。
当然,这些很贵的NFT是少数,大多数NFT并不贵,而且也无人问津。这和现实世界是一样的,少数塔尖的东西受人追捧,更多的东西默默无闻,虽然他们的质量并没有如此大的差异。
四、NFT和版权的关系
有人说:加密朋克、无聊猿这种头像,我买不起。不过,不买难道我就不能用吗?
你可以很轻松地下载和使用,但你并不是真正的头像拥有者,如果你用,会带来一点问题:
1、你是未经授权地使用别人的作品,理论上讲,别人可能会追究你。
2、如果你把它作为头像,别人问是不是你买的,你可能有点尴尬。因为NFT头像这个领域的共识是:你拥有,才能作头像。
而且,从技术上讲,证明一个人有没有一个NFT是很容易的,推特就计划用技术标明一个NFT头像是不是真的:用户可以设置自己的NFT头像,连接到对应的加密钱包,然后选择对应的NFT作品,完成头像设置。如果无误,头像上右下角会有一个以太坊的标识。
同样地,支付宝上卖的NFT藏品,可以在支付宝中设置为付款码皮肤,你如果从“咸鱼”上买了一个伪造的NFT藏品,是没法做成皮肤的。
总之,一切都是透明的,如果你不拥有而使用,会露馅,而且你也享受不到那种真实的炫耀感。
从发行者的角度考虑问题:如果我把某个画家的画作做成NFT,需要什么样的版权?
用版权(即著作权)语言来说,他至少要把“复制权”和“发行权”许可给你。
根据我国的著作权法:
复制权:即以印刷、复印、拓印、录音、录像、翻录、翻拍、数字化等方式将作品制作一份或者多份的权利;
发行权,即以出售或者赠与方式向公众提供作品的原件或者复制件的权利;
道理很简单,你得到了复制权许可,才能把他的画作复制到网上;你得到了发行权许可,你才能把这个数字画作公开进行售卖。
对于NFT买家而言,如果你买了一个NFT,你得到了什么权利?
很多情况下这些是没有明说的,就常理而言,你有如下权利:
1、复制、观赏、展示权,这是显而易见的,你可以在将它在你的电脑和硬盘、U盘上复制若干份,你可以随时观赏,你可以展示给他人看。(在版权法上大致对应“复制权”和“展览权”)
2、独享权,卖给你,别人就不会拥有了,就像限量10000个的名贵包,每个都编上号,第1号到第10000号,你买了第23号,别人就不买不到了。(这个对应的是版权的“独家授权”)
3、转让权,你买了以后,还可以再卖,也可以免费送给别人。(这个不一定都有,国内很多NFT是不给途径卖的。)
第1点是常见的,不稀奇的,没有NFT的时候,这种事也天天在发生,比如你去图片网站买一张图片,差不多就是这样。
而第2、3点,是实物交易的特点。对于数字作品,这种交易以前是很少见的,即便有,交易成本也很高。是NFT带来了这个创新,把传统世界的“独享权”和“转让权”,安全而便利地带到了互联网上。
对于那些复制他人NFT头像的人,虽然他得到了这幅头像,而且可以不合规地进行复制、观赏和展示,但他拿不到第2和第3项权利,这个头像是谁的,区块链上一查即知,能不能转让更涉及到有没有私钥的问题。
所以,如果你买了一个无聊猿头像,但发现有人复制并做成了他自己的头像,不用愤怒,因为你手上那个才是正品,你能卖到钱,他不能。
正好比,你家里有一副《蒙娜丽莎》的正品,你会计较别人家里那个仿制品吗?
因为如果有买家想买正品,肯定会找到你而不是他,而且鉴定专家肯定能鉴别出来你拥有的才是正品(在区块链上,鉴定是最简单的事了,人人都能做到)。
所以,NFT并不是用技术防范别人复制、下载、使用的,而是用技术明确了所有权。
NFT的极具突破性之处,在于它给出了一种通用、安全、便利的交易方式,使得用户可以方便地购买一个作品的独享权和转让权。
它使得物理世界的“物权”体系,在互联网上得以技术实现,一定程度上解决了数字世界中数字资产的归属和支配问题。
至于你买了一个NFT,能不能得到该作品的改编权(制作衍生品)乃至商业授权,也是要看发行者有没有明确说的,比如BAYC明确说可以,拥有者就可以用这些图像做贴纸、T恤等周边商品并出售;而“蚂蚁链粉丝粒”上卖的NFT则明确说不可商用,你就没有这些权利。
在版权这个领域,对于没有明说的,只能认为说不允许。
五、国内NFT和国外NFT的区别
简单地说,国内NFT和国外NFT目前的差别还比较大,主要有这么几点:
1、国外的NFT多发行在公链上,如Ethereum、BSC、Polygon等,国内则多放在联盟链上,如蚂蚁链、至信链等。
2、国外NFT交易一般用虚拟货币,国内NFT交易均使用人民币。
3、国外的NFT通常可以随意转让和再次出售,国内通常有较多限制,比如蚂蚁链粉丝粒上的藏品,要求持有180天以后才能转赠好友。
4、此外,在版权要求上,比如能否商用,也有很多不同。
国内这样做的目的,主要是防范少数人利用NFT进行恶意炒作,或者以NFT为名从事虚拟货币相关违规活动,简单地说,主要是防范金融风险,保障老百姓不被割韭菜。
由于以上这些差别,国内的NFT,很多都改用“数字藏品”这个叫法了。
六、NFT的铸造和展示
怎么把一个艺术品放到区块链上呢?答案是:铸造(mint)。
而所谓铸造,就是在区块链上记录那三个要素。
常见的铸造方法有两种:一是通过NFT交易平台提供的功能来做;二是通过写区块链智能合约来做。这两种在本质上没有什么区别。
先铸造给谁也有两种:一是先铸造给作者自己,然后通过交易转移给其他人的地址;二是由用户在购买NFT时直接铸造给他本人。这两种在本质上也没有什么区别。
通过交易平台页面铸造比较简单,以OpenSea为例,你通过钱包软件(主要是提供以太坊地址和私钥管理,提供签名和交易消息发送等功能)登录以后,点击平台上那个“Creat”,然后一步一步做就可以了,比较简单。
如果通过编程来铸造,也不难,主要是写合约,下面这段代码(Solidity语言)就可以完成铸造。
contract newNFT is NFTokenMetadata, Ownable
constructor()
nftName = "MY FIRST NFT";
nftSymbol = "MFN";
function mint(address _to, uint256 _tokenId, string calldata _uri)external onlyOwner
super._mint(_to, _tokenId);
super._setTokenUri(_tokenId, _uri);
当然,它本身还需要调用一个ERC721的实现库(基合约),我们这里并不需要深入下去,只是简单示例一下。
这段代码,constructor函数是构造函数,合约部署时,会自动调用此函数,确定该NFT的名字“MY FIRST NFT”和简写“MFN”。
部署完成后,调用合约的mint函数接口就可以铸造了(mint函数再去调用基合约的_mint和_setTokenUri函数),铸造时在_to参数中填入地址
,_tokenId填入NFT的ID
号(可以自己随意定义),_uri填入链接
,和前面说的一样,这个链接指向一个描述该NFT元数据的json格式文件,其中含有image项,image链接指向真正的作品。
再重复一遍,铸造一个NFT,就是确定三大要素:地址、ID、链接
。
合约本身也有一个地址,把这个地址导入到opensea中,opensea通过读取tokenURI,就可以获取NFT的元数据,并最终显示NFT图像了。
而支持NFT展示的钱包,会通过NFT合约地址和编号,将拥有者地址下的收藏品展示出来。
如果你把NFT从你的钱包转给别人,从技术角度看,这个编号的NFT,拥有者地址从你的变成他的,从最终用户界面看,你的钱包里没有这个NFT了,而他的钱包里,多了一个NFT。
这是不是很像实物的转移!
这就是NFT让人着迷的地方。
作者:卫剑钒
余文乐ETH地址曝光,收藏超千万美元的NFT (https://www.sohu.com/a/492614084_121118710)
以上是关于从表象到本质,包你一文看懂NFT的主要内容,如果未能解决你的问题,请参考以下文章
K:剑指offer-56 题解 谁说数字电路的知识不能用到算法中?从次数统计到逻辑表达式的推导,一文包你全懂
一文看懂 Attention(本质原理+3大优点+5大类型)
[转帖]一文看懂mysql数据库本质及存储引擎innodb+myisam