时间:2021-11-20|浏览:409
NFTs它已经成为主流,但不幸的是,这个领域充满了误解,许多开发商在急于利用这个新市场时有意无意地走了弯路。
虽然客户购买NFT我认为它们是永久的、不可改变的所有权记录,但情况并不总是这样,很多NFT其结构存在根本缺陷,危及资产的长期完整性。
这是整个生态系统的一个重大问题,可能会迅速侵蚀客户的信心。不仅仅是对NFT整个区块链技术都是如此。为了避免声誉损失,开发者社区需要积极承认和解决这些问题。
幸运的是,了解破坏NFT缺陷和修复方法相对直接。在这篇文章中,我将详细介绍这些问题是什么,以及开发者如何在自己的产品中避免这些问题。
背景:什么是背景?NFT?
最近几个月,人们用于数字资产(如图片、音乐或视频) NFT 产生了特殊的兴趣。这里销售的核心概念是对这些资产的声明——通过分布式数字共识,而不是中央机构授予和验证的权利要求。这些声明被标榜为永久的、不可改变的、不可破解的所有权证明。
可悲的是,很多NFT购买者无法在技术上评价这种营销的真实性。对区块链不可篡改性的模糊理解是各种形式的NFT提供掩护,其中一些NFT辜负了这种声誉。
最基本的是,NFT只是存储在区块链的所有权记录,它把一个身份和一个资产联系起来。明确这一点非常重要:NFT不是资产本身——它是记录。例如,让我们谈谈Zoe Schmoe买了猫的照片NFT。记录或多或少如下:
Zoe Schmoe owns cat.png.
当然,这掩盖了很多细节。在实践中,我们面临着数字共识的问题:我们如何(在区块链的背景下)同意"Zoe Schmoe "和"cat.png "实体达成一致吗?我们可以给任何数量的东西起这些名字!
对于Zoe答案本身是比较标准的。我们可以利用公钥密码学为网络参与者生成唯一的身份,并合理假设,如果一个人有具体身份的相应私钥,那么他们就是创建这个身份的人。记录中提到的不是她的名字,而是Zoe匿名身份被控制。
0xZ03 owns cat.png.
这解决了一半的问题,但我们仍然需要一种表达特定的方法。"cat.png"。另外,我们强调资产和NFT是两个不同的东西,但是资产本身还没有讨论过。应该放在哪里,谁应该负责它的存储?这暗示了我们需要解决的两个广泛的问题,以建立灵活性NFT。
持久性问题
如果NFT为了保持它的价值,它必须存储在某个地方。否则,如果所有的副本都被删除了,就没有什么可以拥有的了!这就要求我们考虑一些问题,从谁负责存储到所需的冗余、可访问性和寿命。这些方面都与持久性问题有关:确保内容永久可用,其方法对我们在互联网上看到的典型故障具有很强的稳定性,目前有很多问题NFTs完全忽略了这些考虑。
确保资产在NFT存储在生命周期中的一种方法是将资产存储在区块链,并利用区块链永久存储。这也解决了责任问题,使得网络中的每个节点都负责资产的维护。
不幸的是,正是因为区块链被复制到每个网络参与者,所以存储数据非常昂贵。因此,除了最微不足道的数据,在链中存储任何数据通常都是昂贵的。我们需要在其他地方保存数据,这意味着我们需要链接它。
寻址问题
我们需要解决的第二个问题是寻址问题:我们需要一种方法来明确识别数据的内容。
我们能做的方法是在不可改变的数据存储中提供索引,例如区块链!考虑到这样的存储,同意给定数据在存储中的位置相当于同意数据的内容。不幸的是,正如我们刚才看到的,将我们的数据存储在普通链中的做法必须被排除在外。
与第一个方案相比,我们想到了第二个方案:与其在内部链接到区块链,不如在外部链接到网站,使用图像HTTP通过时间考验的协议。
0xZ03 owns "cat.png", which is stored at https://nft-emporium.com/cat.png.
事实上,今天的市场很多NFT都是这样做的。不幸的是,虽然乍一看这似乎是合理的,但正是这种做法损害了很多NFT的完整性。
HTTP URL它有两个令人不安的特点,影响它们作为数据的长期参考的适宜性。第一个问题是它们是指数据可能随时间变化的位置的链接。因此,由HTTP上预测的NFT所有权的概念非常脆弱。Zoe有了这个链接上的猫图,她明天可能会变成404。后天,有人买了nft-emporium.com,改变了链接,现在Zoe猫变成了马的照片。
在HTTP以上开发NFT破坏了所有关于永久性和不变性的承诺。
这导致我们面对HTTP寻址的第二个顾虑:集中控制。一个人或实体对一个链接背后的内容有完全的控制权,对一个链接的长期生存能力有非常不利的影响。
总之,在区块链上存储数据允许我们对数据进行不可改变的引用,但太昂贵了;在区块链外存储数据允许我们避免这种高额成本,但传统链接是集中的、可改变的引用。这就是我们的困境:我们需要一种方法来对存储在链外的数据进行不可变的引用。
解决方法
幸运的是,这是一个我们可以不折不扣地实现我们追求的两个属性的问题:解决办法是用一个叫做内容地址的东西来识别和链接一个资产。
某个数据的内容地址是完全由该数据产生的链接——最基本的形式是数据的哈希值。我们可以把内容地址当成指纹:理想情况下,在给定的内容地址方案范围内,一个地址应该唯一识别一个数据块。综上所述,这意味着内容地址是一个永不改变的链接,是一个各方都能认同其含义的链接:这就是我们所追求的不信任的清晰度 如果用这些来代替,我们会得到接近以下的记录。
0xZ03 owns "cat.png", which hashes to.
这是一个很好的开始,但是请注意,原始哈希值不同于内容地址,后者具有可以作为链接的额外含义。您不能在浏览器中输入原始哈希值,然后获得文件。以上记录允许我们验证Zoe有什么,但是没有人能检索到这些数据。这这并不反映当今大多数用例的现实。在这些用例中,许多资产可以直接从记录中访问NFT核心功能。
使用分布式存储协议解决寻址问题
必须创建额外的基础设施,以便哈希或任何这样的地址能够填充链接。幸运的是,我们不需要从一开始就创建自己的内容地址基础设施。星际文件系统生态系统多年来一直在开发一种特别强大的内容地址形式——内容识别符CID。
在分布式存储协议的范围内,CID唯一的标记是数据。在此基础上,分布式存储协议实现了全球分布式数据共享网络。网络节点可以通过CID广播数据请求,任何拥有该文件的节点都可以为该请求提供服务。这正是我们要找的,让我们调整一下NFT记录以使用CID。
现在,任何遇到该记录的人都可以看到Zoe只要分布式存储协议网络上有人拥有该文件并愿意向他们提供任何数据,!
除了为CID分布式存储协议,分布式存储协议还有一个巨大的生态系统支持。它提供的一个主要优势是它自己的国际公认URI:除了现有广泛使用的浏览器兼容层,这个URI最近开始得到当地浏览器的支持。
分布式存储协议为我们提供了不可改变和广泛支持的链接,反映了区块链的不信任和分布式性质:它直接解决了我们上面指出的寻址问题。
当我们引用分布式存储协议时 CID构建资产NFT当时,我们既保留了资产的完整性,又保留了通过存储和链接到链外资产所获得的优势。
用星际文件系统解决持久性问题
当然,寻址只是等式的一部分:我们需要保证数据的持续存储和访问。分布式存储协议只能在有人存储文件的情况下检索文件!
为了解决这个问题,我们可以向分布式存储协议的姐妹项目和星际文件系统求助。星际文件系统是一个分布式存储网络,旨在作为分布式存储协议的激励层,为希望保证分布式存储协议托管资产寿命的用户提供强大的付费存储解决方案。
就像分布式存储协议一样,星际文件系统是完全分散的,所以没有单点故障,这是我们对的HTTP主要注意事项之一。星际文件系统允许我们通过与合同挂钩的奖惩措施直接激励数据存储,给我们最有力的保证,即有人对保持我们的链接感兴趣。
一个开放、分散的存储生态系统有几个长期的托管优势:
它为存储客户和供应商创造了一个有竞争力、跨越世界的市场。
数据的可移植性和互操作性在设计中非常重要,可以防止制造商锁定。
一个分散的网络可以扩展到提供额外的托管和冗余——尤其是在偏远地区,它比集中的存储服务方便得多。
最重要的是,星际文件系统为我们提供了持续和完全透明的证明,证明数据被正确存储。这是传统云服务提供商不支持的真正创新的一流功能。
NFT既是投资,也是文化艺术品,他们链接的资产不应该因为他们的托管公司倒闭而无法解决。星际文件系统使我们能够克服面对这种突发事件时的持久性问题。为了帮助每个人实现这个目标,协议实验室目前正在nft.storage为NFT星际文件系统支持的免费存储。
结果
今天卖给客户的很多NFT从根本上说,不好的。它们嵌入可变链接来指示它们传达所有权的资产,因此不能被信任为真理的来源。NFT开发商必须停止依靠集中可变的链接来试图创造永恒的资产。为了保证这些资产的可访问性,他们还必须确保它们未来的存储安全。
如果NFTs目标是有单点故障的技术栈,所以无法实现。通过分布式存储协议和星际文件系统,我们可以完全消除这种依赖,同时获得整个生态系统的额外能力NFT增加价值。
通过统一区块链的分散共识、分布式存储协议的分散搜索和星际文件系统的分散存储,我们可以尽可能接近实现真正的永久性和分散性数字所有权。
用戶喜愛的交易所
已有账号登陆后会弹出下载