​为了制作一张NFT推特头像,我花了15个小时外加1000美元

区块律动BlockBeats view 28 2022-2-23 09:02
share to
Scan QR code with WeChat

为了制作一张 NFT 头像,我花费了整整 15 个小时,还额外掏了 1000 美元。在我看来,区块链技术作为数字身份的解决方案的确还有很长的路要走。

首先说一下我为什么要做 NFT 头像。作为一个加密 KOL,经常会有人假冒我的 Twitter 帐号,这些人以我的名义出售虚假的投资课程或者付费会员,给我的声誉造成了很恶劣的影响。

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

最糟糕的是,我多次要求 Twitter 验证我的帐号,结果都被拒绝了......

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

因此,当 Twitter Blue 推出 NFT 头像功能时,我有了一个想法:既然 NFT 是可以在链上跟踪的非同质化 Token,那么我就可以制作一个名为「Tascha Che」的 NFT,并把它连接到我的 twitter 帐号作为验证,就好比一张元宇宙中的身份证。

我马上找到了一位来自俄罗斯的计算机图形艺术家,她以我的 Youtube 视频作为素材制作了一张非常精美的头图。

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

但是当我试图把它变成 NFT 时,问题就来了。下面我会一步步展开我制作 NFT 头像的全过程,看完后你就会明白,为什么我说人人拥有元宇宙身份的时代还远没有到来。

第一步:编写 NFT 合约

由于我需要拥有自己的 ID,因此通过 OpenSea 之类的平台创建 NFT 是没有意义的,因为他们使用的是自己的共享合约。此外,在 OpenSea 上,你的 NFT 在出售或者转移之前都不会被铸造。

所以我从头开始创建了一份合约。这其实很容易,就是复制粘贴几行代码,但问题就出在这里,你不能指望社会上的每个人都去手动部署自己的合约吧?

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

第二步:部署合约

在写完合约后,我必须思考一个问题:是将它部署到像 Avalanche 或者 Polygon 这样的新链上,还是坚持使用旧的以太坊主网?

由于 Twitter 是从 Metamask 钱包中获取 NFT 数据,所有的 EVM 兼容链都可以通过自定义 RPC 进行连接,因此技术层面上讲从其他公链上提取 NFT 数据应该是没有问题的。

而将 NFT 合约部署到 Avalanche 只用花费我 10 美元,在以太坊主网上却要花 1000 美元,这么一比较下来,根本没有什么好考虑的。

但如果成本过低,其他冒充者会不会也用同样的元素制作一张和我一模一样的 NFT?虽说哈希值是唯一的,但元数据却不是,谁又能决定 Token ID「0x98a4ff8d…」是否是真正的 Tascha?在现实世界中,你的身份是由社会背景确定的,相比之下虚拟世界的语境要薄弱很多。虽然区块链可以提供一定的帮助,但还不能完全解决这一问题。

我最终决定部署到以太坊,因为我认为很少会有冒充者愿意承担这么巨大的成本。从某正程度上说,这也是一种「扭曲的」权益证明机制(Proof of Stake)。

我觉得这极具讽刺意味。就像奢侈、缓慢成了当今马术的价值支柱一样,高成本、低速率如今也成了以太坊的价值支柱。

为了发挥其作为价值网络的潜力,区块链需要成为汽车或者飞机,而不是马匹。要求人们通过支付高额费用来验证其 ID 的有效性是不可扩展的。但遗憾的是,以太坊 NFT 的平均价值要比其他链上的 NFT 高很多,不仅部署成本高昂,而且已经逐渐成了有钱人的游戏。

第三步:铸造 NFT

如你所知,NFT 的元数据——图像、视频、文本等并不存储在区块链上,因为链上空间有限。这也是很多人质疑 NFT 的原因之一,因为创建者可以在部署合约后更改元数据,或者调换存储在链下的图像文件。这究竟是不是 NFT 的缺陷还有待商榷。

一方面,允许在没有限制的情况下更改元数据确实会破坏对任何身份系统的信任,即使大多数创建者并没有更改元数据的动机。另一方面,作为元宇宙 ID 的持有者,您也应该拥有更改元数据的权利,就像你每隔几年更改一次证件照片一样。

归根结底,NFT 是一种通用技术,而我们目前还没有足够成熟的工具来满足不同的用例需求。

最后我决定在亚马逊 AWS 上创建了一个存储库来存储所有的元数据,并将链接包含在了我的 NFT 中。事后证明,可以更改元数据对我而言确实是一件幸事,下面我会告诉你为什么。

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

第四步:在 OpenSea 和 Metamask 上渲染 NFT

在铸造完 NFT 后,我打算去 OpenSea 看看最终效果。通常来说,当你连接 Metamask 后,OpenSea 会自动渲染你创建的所有 NFT,但奇怪的是,我新铸造的 NFT 显示的是一个没有名称或描述的空白页......

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

网站页面没有给出任何的错误提示,在各种尝试无果后,我便去找 NFT 大佬 CHANCE(Nuclear Nerds 首席开发员)帮忙,最后他在我的元数据 JSON 文件中发现了一个多余的逗号。

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

在 AWS 中修复了元文件后,NFT 图像就显示出来了。想象一下,如果不能更改元数据的话,我之前花的 0.5 个 ETH 就白费了,换来的就是个什么也显示不出来的废品。

你可能会和我说:「Tascha,测试网就是用来防止这种情况的,你应该先在测试网上部署呀!」没错,我承认我犯傻了,但是让 OpenSea 或者 Metamask 弹出个错误提示应该不难吧?有时候我感觉 Web3.0 就是一群笨蛋领着一群更笨的人到处跑......

不管怎么说,我的 NFT 还是渲染出来了。现在总该万事大吉了吧?答案是并没有。

第五步:将 NFT 连接到 Twitter

我进入「编辑个人资料图片」,选择了渲染好的 NFT,在被引导到 Metamask 后,应用提示我的 NFT 数据无法被提取。

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

研究了半天后我才发现,你必须在 Metamask 安全设置中启用 OpenSea API,因为 Metamask 和 Twitter 都是依靠 OpenSea 来查询你持有的 NFT。

​为了制作一张NFT推特头像,我花了15个小时外加1000美元

没错,在大肆宣传的区块链背书所有权的背后,我的元宇宙身份仍然依赖于 OpenSea 云服务器中的 SQL 数据库。

尽管如此,我还是启用了 OpenSea API,我的 NFT 头图终于出现在了 Twitter 上。直到这时我才意识到,实际上 NFT 头图唯一的区别就是有一个六边形框架,对于圈外人来说,它和普通头图看起来几乎没有区别,你必须从个人资料页面单击图片才能获取 NFT 的详细信息。

我认为 Twitter 模糊 NFT 头图的区分是有原因的,这一功能所解决的问题本身就很模糊,它究竟是为了让人们炫耀自己昂贵的 NFT,还是为了驱动元宇宙身份的发展?

整个过程折腾下来后,我仍然不确定我的 NFT ID 是否真的能帮助人们识别出我的冒充者,只有时间才能给出答案了。

不要误会我的意思,我丝毫不怀疑区块链和 NFT 作为一种通用技术对世界的巨大影响力。但我们正处于发展的的原始阶段,无论是应用程序的执行还是实际用例的基础设施都很差,因此理性看待行业的发展现状不是一件坏事。

btcfans公众号

Scan QR code with WeChat

Disclaimer:

Previous: 从虚拟餐厅到虚拟时装秀,行业巨头掀起元宇宙商标注册潮 Next: 在地缘政治冲突之后,卢布美元汇率跌至近6年来的低点,比特币跌至 3.64 万美元

Related