如果说区块链是元宇宙的“补天石”,那NFT又扮演着什么角色?( 二 )


这三层世界里面涉及到现实世界的大数据 , 虚拟人类的劳动量 , 暗网世界的财富管理 , 貌似就是一个游戏场景 , 但理解起来并不容易 。
它们有什么样的元宇宙社会学、经济学、政治学 , 不得而知 。
但我们可以借助马克思的《雇佣劳动与资本》理论 , 进行类比划分:
?生产力(5G、web3.0、AI、云算力)
?生产资料(自然数据 , 人类数据 , 物联数据 , 数字原生数据)
?生产关系(区块链)
区块链就是将生产力和生产资料组合起来的技术 , 只有将这两者组合起来 , 元宇宙才有可能向前快速发展 , 这与现实世界没什么区别 。

在这三者互动的过程中 , 有一个物体非常重要 , 它统一的名字叫NFT 。
在数字世界 , 万物皆可NFT 。
NFT与数字原生NFT全称non-fungible Token , 中文名非同质化通证 。
NFT非同质化代币最大的特点就是其不可分割 , 而且独一无二 。 就像世界上没有两片完全一样的树叶 , NFT属性表现也是如此 。 并且 , NFT这种特性是由其代币合约在链上保证的 , 如果该NFT资产发行在以太坊上 , 只要以太坊网络是安全的 , 那么你的NFT资产的属性就是确定的 , 无法篡改和抹除 。
它带来一个很大的特点就是:稀缺性 。

稀缺性 , 就是解开这些定价和交易行为之谜的一把钥匙 。
由于原子和比特注定属于两个世界 , 现在的NFT市场存在一个天然的矛盾:大部分的NFT产品 , 它在物理上是独一无二的 , 同时又想进入比特世界 , 而这两个共生的世界一旦纠缠起来是相当麻烦的 。
从最底层的逻辑来讲 , 所有原子产品都不是真正意义上的NFT , 它有着天然不可更改的缺陷 。 所以 , 即使你烧掉了原来的画作 , 你用相机拍下来的照片仍然只是一种数字模拟信号 , 它并非原生性的数字作品 。
这是什么意思呢 , 就是你直接在数字化的空间里进行创作 , 艺术品一出生就是比特 , 压根儿就不需要考虑原子问题 。 对这种数字化原生的艺术品来说 , 绑定NFT、证明稀缺性乃至独一无二性 , 反而天经地义 。

以Loot这个数字原生产品为例 , 每个Loot代表一个装备包 , 共有8000个NFT Loot包 。 每个Loot都包含8个装备 , 各种组合的解释完全取决于社区 。
每一个Loot天生就是原生的 , 它的基因就是不可更改的比特信号 , 如果未来的“元宇宙”中的各种应用愿意接受Loot这个智能合约 , 那么即便进入到任何一个元宇宙的产品之中 , 最终都可以形成一个自己的、超出任何产品的世界 。
NFT将会成为所有权数字化标志方式 , 从此以后 , 数字世界 , 万物生长 。
为什么大家相信NFT , 因为它由智能合约生成 , 具有数学合法性 。
智能合约与NFT生成代码即法律 , 数字世界不需要警察 。
智能合约从一开始 , 就是奔着超越普通的法律纸质合约去的 。
数字化、智能化的代码直接嵌入到软件之中 , 这是一种执行力非常强的虚拟合约 。
从本质上而言 , 智能合约是一种直接控制数字资产的电脑程序 。 它通过在区块链上写入类似if-then语句的程序 , 使得当预先编好的条件被触发时 , 程序自动触发支付及执行合约中的其它条款 , 也就是说 , 它是储存在区块链上的一段代码 , 由区块链交易触发 。
如下图所示 , 就是一个简单的例子:

这样一个if-then语句 , 意思就是 , 你我约定 , 如果事件X发生 , 则合约给你发送1000美元;否则 , 给我发送1000美元 。 这就是最简单的合约 。
以以太坊公链的ERC721为范本“bboyHan”极简化的梳理了NFT制作方法 。
ERC721定义了以太坊生态中不可分割的、具有唯一性的token交互、流通规范:
?在该合约设定范围内 , 具有唯一的token_id;
?token_id只能被一个owner(i.e. eth address) 所拥有;
?一个owner可拥有多个NFTs , 它的balance只记数量 。 有另外存储列表记录token_id - owner_addr对应关系中;
?NFT有approve , transfer , takeOwnerShip等接口方法适于流通的功能 。 即所属权转移 。 这些方法是在ERC721标准中定义的;
?定义一个multiaddr型式的复合地址来索引该token对应的元数据(名称、图片、各种信息) 。 通过tokenMetadata方法 , 获取这个multiaddr (形如url的字符串) , 来获取token元数据 。
所有NFT的制作方法基本上相同 , 在逻辑上是严谨的 。
它最后的交易过程也基本遵循:验证节点会把所有合约打包成一个合约集合(set) , 并算出这个合约集合的Hash值 , 最后将这个合约集合的Hash值组装成一个区块结构 , 扩散到全网;其它验证节点收到这个区块结构后 , 会把里面包含的合约集合的Hash取出来 , 与自己保存的合约集合进行比较……

推荐阅读