压缩NFT是什么?

  • Alchemy
  • 发布于 2023-03-27 17:17
  • 阅读 11

本文介绍了Compressed NFTs在Solana区块链上的工作原理,重点强调了其在铸造和管理大规模NFT方面的成本效益。它详细解释了Compressed NFTs的定义、与传统NFT的区别、使用案例以及如何进行压缩和解压缩操作。

在Solana上,压缩NFT通过将数据存储在账本本身来减少铸造和管理大量NFT的成本。与铸造常规NFT相比,铸造压缩NFT的成本显著更低,从而创造了一系列新的用例和吸引更多Solana活跃用户的方法。

本文将解释什么是压缩NFT,它们是如何工作的,以及如何压缩你现有或新的NFT。

什么是压缩NFT?

压缩NFT是指在Solana上存储在Merkle树结构中的NFT,其中Merkle根存储在链上一个账户中,Merkle叶子存储在Solana账本中(这在链外,但受到共识的约束),而不是像常规NFT那样完全存储在链上。

与普通NFT一样,压缩NFT在链上发行和确认,然而,使用 Solana RPC提供者 在链外存储和处理数据以降低存储成本。

压缩NFT使用索引器来管理交易数据并促进RPC和链上智能合约之间的数据查询。现有智能合约必须进行修改才能与压缩NFT进行交互。或者,压缩NFT可以被解压缩以与未修改的Solana程序一起使用。

谁创建了压缩NFT?

压缩NFT是Solana Labs的Merkle树程序(称为 account-compression )和Metaplex基金会的压缩NFT程序(称为Bubblegum)的结合创作。

Metaplex 创建了Solana的NFT标准,其创始团队从Solana Labs分拆出来。自2021年推出以来,Metaplex已促进铸造超过2200万NFT,并产生36.6亿美元的NFT销售。Solana上的Merkle树程序使得 通过Metaplex创建的压缩NFT 可编码到Solana区块链的账本中。

压缩NFT的常见用例是什么?

压缩NFT使企业和个人能够大规模铸造NFT,而不必承受与常规NFT相关的高昂成本。 可能利用压缩NFT的行业包括:游戏、音乐、活动、元宇宙和企业。

1. 游戏

压缩NFT可能作为数百万玩家的游戏内资产。由于web3游戏潜在的规模,压缩NFT可以节省web3游戏开发公司的成本,同时发行数百万个游戏内NFT。

2. 音乐和活动

每年有数百万张音乐会和活动的门票销售,压缩NFT可以为票务公司节省资金,并作为活动参与者的数字收藏品,同时提供web3产品的安全性和真实性。

3. 元宇宙

随着元宇宙和元宇宙类游戏的日益普及,压缩NFT使元宇宙开发公司能够为全球数百万人数字化大量的游戏内收藏品。

4. 企业级系统

从在供应链中跟踪商品到数字化公共记录,压缩NFT可以让大型组织以极低的成本铸造、存储和检索大量NFT。

何时应该使用压缩NFT?

当需要大规模铸造NFT时,应使用压缩NFT,因为在链外存储数据可显著降低 租用账户空间的成本 ,每个Solana账户都需要支付以管理数据。

压缩NFT与未压缩NFT的对比

压缩NFT和未压缩NFT都在链上发行和验证,但主要区别在于NFT元数据的存储位置。 压缩NFT在链外存储元数据,而传统的Solana NFT在链上存储数据。

压缩NFT与常规NFT有何不同?

压缩NFT在四个关键方面与常规NFT不同:

1. NFT元数据存储

压缩NFT的数据存储在链外的Merkle树中,并通过Solana RPC提供者访问。

2. 成本

由于它们在链外存储数据,压缩NFT的成本显著更低。

3. 数据所有权

当你希望修改压缩NFT时,必须通过加密的方式证明你修改链外数据的权限,这确保了链外数据存储是可信的。

4. 程序交互

现有的 程序 (即Solana智能合约)必须进行修改,才能与压缩NFT交互,除非NFT本身被解压缩。

压缩NFT可以节省多少费用?

铸造100万个常规NFT大约需要12000 SOL,而铸造同样数量的压缩NFT只需5 SOL,节省了99.9%的成本。

实际上,NFT收藏数量越大,使用压缩铸造成本的降低越明显,如下图所示:

铸造压缩和未压缩NFT的成本铸造压缩和未压缩NFT的成本

由于铸造常规NFT时最主要的支出是支付Solana上的存储空间费用,而压缩NFT则消除了这一费用,因此剩余的大部分费用仅为简单的交易费用。

铸造10k Solana NFT集合的成本是多少?

铸造10,000个压缩NFT,即新项目的标准NFT集合大小,大约需要3.5 SOL。下表提供了压缩NFT集合数量从10k到10亿NFT的铸造成本详细信息:

铸造压缩NFT的成本铸造压缩NFT的成本

压缩NFT是如何工作的?

这是NFT压缩的过程:

  1. 使用Metaplex的Bubblegum程序来验证与NFT相关的元数据

  2. 通过Bubblegum调用account-compression来向Merkle树追加新的叶子

  3. account-compression在链上更新Merkle树以反映新的世界状态

  4. 对Merkle树的任何更改,例如新NFT的添加,都会写入Solana区块链

链外索引器跟踪对Merkle树的修改,并管理支持dapp和程序所需的信息和授权。

什么是压缩NFT权限?

权限是与NFT账户关联的属性,用于指定该账户可以执行的操作。 每个NFT账户下有三个其他账户:

  1. 一个位铸造账户

  2. 一个 关联的Token账户

  3. 一个钱包账户

这些从属账户都有不同的属性。

1. 树权限

此权限通常是一个被授权通过account-compression程序向树中添加新叶子的程序,该程序还处理加密哈希的编码。

2. 叶子权限

这是赋予拥有叶子的钱包账户的属性。钱包账户可用于替换、移除和解压缩叶子。

压缩NFT存储在哪里?

压缩NFT元数据存储在链外的Merkle树中,由Solana RPC服务提供者监控,并由索引器管理。这比在链上存储相同的数据更具成本效益。实际上,数据在链外,而数据的更小证明以Merkle树根的形式存储在链上。

如何压缩NFT

压缩NFT是一项相对简单的任务,但根据你是压缩新NFT还是现有NFT,过程会略有不同。

压缩新NFT

压缩新NFT(尚未铸造的NFT)的步骤如下:

  1. 使用Metaplex的Bubblegum软件创建一个Gummyroll Merkle树

  2. 调用Bubblegum的 mintNFT 指令

  3. 此时,链外索引器从账本中检索 mintNFT 指令,并保存叶元数据。

  4. dapp通过RPC节点调用 get_assets_for_owner 指令以返回NFT

压缩现有NFT

压缩现有NFT(已铸造的NFT)的步骤如下:

  1. 在Bubblegum程序上调用 transfer 指令及NFT信息

  2. Bubblegum程序向Gummyroll发出一个 跨程序调用 以添加新的Merkle树根

  3. 链外索引器从区块链检索转移指令并更新叶子的拥有者属性。

第三步确保NFT叶子对应的NFT的所有权转移给新的拥有者。

要压缩现有NFT,并不需要从头创建Gummyroll树,可以阅读 Metaplex的压缩NFT文档 以获取更多信息。

NFT解压缩的工作原理是什么?

解压缩过程是从链外的Merkle树数据集中移除NFT。以下是一个简单的概述:

一旦Token Metadata Program验证了对应于NFT的Merkle树上叶子的完整性,该程序将创建以下账户:

  1. 铸造账户

  2. 关联的Token账户(ATA)

  3. Token元数据账户

  4. Master Edition 账户

然后,Token Metadata Program更新Merkle树以移除该叶子。

  • 原文链接: alchemy.com/overviews/co...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Alchemy
Alchemy
江湖只有他的大名,没有他的介绍。