NFT:以最简单的方式解释NFT项目的一般架构

NFT:以最简单的方式解释NFT项目的一般架构

未标题-3

当我们不是很熟悉所涉及的技术时,却试图想要理解NFT项目的体系结构,有时就会觉得它是一项艰巨的任务。本文试图来解释一二,希望能给大家对NFT 的一般架构的理解有一定帮助。

让我们参考下图,看看典型的NFT项目的核心组件是什么。这里强调的是典型且一般的,但由于项目都不尽相同,使得他们之间总会有一些细微的变化。

img

​ 图 1. 可视化所涉及的交互和组件。

典型的NFT项目架构由4个主要组件组成。这些本质上可以分解为:

  • 铸造网站:用户通常会去“铸造”NFT的地方。
  • 钱包管理软件:终端用户用于与以太坊区块链进行交互的地方。
  • 智能合约:存在于区块链上的一段代码,NFT就“存在”在这里。所有的NFT都是由智能合约产生的,但并不是所有的智能合约都会产生NFT。
  • 元数据存储:项目选择托管与NFT相关的数据的方式。

铸造网站

铸造网站和普通网站并没有太大区别。主要的区别在于,它们通常使用一些流行的JavaScript库,允许终端用户通过钱包连接与区块链交互。在编写本文时,最常见的两个库是Web3和Ethers。

img

​ 图 2. 带有 MetaMask 提示的 Otherside 铸造页面。

它被称为铸造网站的原因是,这是客户经常去铸造NFT的地方。我们可以将铸造看作是一个实际创建NFT本身的过程。通常情况下,用户会访问一个铸造网站,将所谓的交易发送到与该网站相关联的智能合约,在成功支付后,NFT被创建并被转移到用户的钱包。

钱包

当涉及到生成NFT或与区块链进行任何形式的交互时,通常需要某种形式的钱包管理软件,例如MetaMask。

img

软件钱包使用所谓的RPC与区块链交互,并允许用户向以太坊网络提交交易。当将钱包连接到铸造网站时,就已经迈出了与智能合约交互所需的第一步,该智能合约将铸造NFT。

智能合约真的那么智能吗?

任何NFT都源于所谓的智能合约。在区块链的世界中,这些通常被称为一组逻辑或代码,它们以一种无需信任的方式管理用户之间的交互。智能合约代码的执行方式保证了一个可预测的结果,并确保用户之间的交易不需要第三方的信任。

img

​ 图 4.“Hello World”的智能合约。

智能合约本身是由开发人员编写的,然后部署到以太坊网络,在那里它们将无限期地存在,直到时间和空间的尽头。当我们创建一个NFT时,最终会将一个交易发送给一个智能合约,其中会包含一些数据,这些数据告知它要执行哪个函数,而那个函数又会给我们生成一些宝贵的NFT。

将元数据附加到NFT

要记住的一个重要方面是,区块链本身是一个封闭系统。考虑到这一点,人们可能会问,生活在以太坊生态系统智能合约中的NFT项目中的代币ID如何与代表链下代币本身的元数据相关联。

img

​ 图 5. 调用 tokenURI 函数。

其实就是tokenURI函数。使用Bored Ape Yacht Club (BAYC)的智能合约作为上下文,我们可以看到与代币ID #1相关联的代币URI如下所示。BAYC已选择使用IPFS(一种去中心化的文件系统协议)来存储与每个BAYC代币相关的元数据,如ipfs返回 URL 的前置方案所示。

img

​ 图 6. BAYC 代币 #1 的元数据。

结果字符串是与这个特定代币ID相关联的URL的表示。但是,需要注意的是,并非所有的NFT都必须指向某些外部URL。有各种各样的“链上”项目,这些代币的数据完全托管在以太坊网络上。

Source:https://medium.com/@ItsCuzzo/general-architecture-of-an-nft-project-on-ethereum-b54b047800cc

关于

ChinaDeFi - ChinaDeFi.com 是一个研究驱动的DeFi创新组织,同时我们也是区块链开发团队。每天从全球超过500个优质信息源的近900篇内容中,寻找思考更具深度、梳理更为系统的内容,以最快的速度同步到中国市场提供决策辅助材料。

Layer 2道友 - 欢迎对Layer 2感兴趣的区块链技术爱好者、研究分析人与Gavin(微信: chinadefi)联系,共同探讨Layer 2带来的落地机遇。敬请关注我们的微信公众号 “去中心化金融社区”

img

猜你喜欢

转载自blog.csdn.net/chinadefi/article/details/126364059