Loopring二层NFT技术原理

Frankle
路印协议
Published in
Sep 6, 2021

摘要:

  • 路印zkRollup将会基于二层直接支持NFT铸造、交易、转账等功能。
  • 任何在二层铸造的NFT都能提取到一层。
  • 路印协议将会支持ERC1155与ERC721标准的NFTs。
  • 任何一层的NFTs都能存入到路印二层。
  • 无任何限制:任何路印二层账户都能铸造NFTs。
  • NFT的支持将会作为Loopring 3.6.2协议更新的一部分于2021年八月底上线。
  • 路印正在寻求更多的应用场景以及合作伙伴,以求在以太坊二层将NFTs推入下一个发展阶段。

我们很高兴地宣布以太坊的首个也是运行时间最长的zkRollup即将支持 NFTs。 Loopring 二层将提供流畅的NFT体验,在维持百分百以太坊非托管安全性的前提下,允许任何人快速且零Gas地铸造和交易 NFT。

NFTs在过去的一年里风靡一时,很明显 — — 和其他很多事情一样 — — 以太坊仍在引领潮流。以太坊为艺术家和创作者们打开了新大门,让他们可以以无中介的方式出售他们的作品,并与他们的粉丝建立非中介的联系。话虽如此,但创作者很大程度上只能销售高价值作品来覆盖高昂的一层Gas成本… 二层无疑会使NFT商品打开大众化领域,彻底为所有价格水平的NFT打开市场,让NFT面向更广大的用户群体。

当然,NFTs不仅仅是艺术。越来越多的人开始数字化生活,我们的人际关系、社区以及各种财产都开始从物理转向虚拟。可自证产权的数字产品是整个社会的一次飞跃,同时也是即将到来的元宇宙的地基。如此重要的事情必须锚定在最安全、最去中心化且最可信的中立环境中 — — 那就是以太坊。

我们相信用户和应用程序的未来会主要在二层上,仅用以太坊一层作为基础结算层。在所有的二层解决方案中,基于 ZKP 的解决方案最适合在不影响用户体验或安全性的前提下扩展 NFT。与 Optimistic Rollups 中用户提取NFTs必须经历长时间的等待不同, zkRollup 用户可以通过从下一个区块中提出NFTs 来减少非必要的等待时间。与侧链不同的是,zkRollups 继承了以太坊级别的安全性,且不依赖于新的、中心化的验证器集。

技术细节

我们会为每个NFT存储以下数据:

  • 铸造者(Minter):该NFT铸造者的以太坊地址。
  • NFT地址:NFT合约在一层的地址
  • NFT类型:一层的NFT合约所属的代币标准。(比如说ERC1155或ERC721)
  • NFT id:NFT的标识符。
  • 创作者激励:当前还未在协议中使用,用于标识创作者应该从NFT交易中获得多少版税。

在二层上铸造NFT时,协议仅确保铸造者(Minter)地址是铸造 NFT 的二层地址。除此之外,NFT铸造者可以自由选择所有其他 NFT 的参数。

这意味着任何人都可以为任何代币合约铸造 NFT。但是,在提取到一层时,NFT只有以能被NFT合约所接受的方式铸造,才是真实可用的(见下文)。

在二层铸造的NFTs,只要其NFT代币合约实现了mintFromL2 函数,即可提取到一层。该函数会在NFT被提取到一层时被调用。在这里,NFT合约决定了于二层铸造的NFT到底是不是可用的。最简明的方法就是校验NFT的铸造者地址是否被授权在二层铸造NFTs。除此之外,NFT合约可以自由的规定任何它想要的规则。

已经存在于一层的NFT也能被存入二层。这些NFTs需要将其铸币地址设置为它的代币地址。(NFT代币合约地址是与二层地址相链接的,NFT从一层存入二层的本质就是批准对应的二层账号铸造NFT)。所有其它NFT参数将会被设置为被存入的一层NFT的值。当存入的NFT被提取时,我们只需要使用普通的一层转账将NFT从zkRollup转出即可。

NFT 存储

Loopring 的 zkRollup 用于二层存储数据的 Merkle 树有 2¹⁶ (65536) 个代币卡槽,可用于存储每个二层帐户的余额。到目前为止,我们为每个 ERC20 代币都预留了一个槽位,因此可以简单地通过存储余额的卡槽推断出每个余额到底存了什么代币。同时这种机制也简化了一些事情,因为对于特定的代币,所有账户都是用的同一个插槽。

然而,NFT 的数量是不确定的,因此我们不能再仅是简单的为所有代币预留卡槽。对于 NFT,我们现在是将NFT的数据存储在卡槽中的余额附近。通过这种方式,每个账户的 NFT 都可以存储在不同的卡槽中,并且一个账户中的卡槽只有在实际存储了 NFT 时才会被占用。

因此,当将 NFT(交易基本上是二次原子转移)从一个账户转移到另一个账户时,用于存储 NFT 的代币卡槽可能会发生变化。如果该卡槽当前未使用(余额为零)或相同的 NFT 已存储在那里(在这种情况下余额将增加),则该代币卡槽只能由 NFT 使用。

NFT 交易

我们添加了两种额外的交易:

  • NFT Mint:用于在二层上创建 NFT。 用于铸造 NFT 并处理 NFT 二层存入。
  • NFT Data:用于将存储在二层上的 NFT 数据作为公共数据的一部分带回 一层。 这使得在需要时可以在一层轻松访问二层上的 NFT 数据。

我们已经支持的所有其他交易类型实际仍保持不变。 由于代币卡槽的使用方式不同,用于交易、转账和提现的现有交易类型需要进行一些微调以使其与 NFT 兼容。

我们现在还支持更高的最高交易费比例。 在 NFT 交易中,交易费用现在可以由买家支付(以前有的是需要由卖家支付,但这在购买 NFT 时是不可能的)。

未来

二层zkRollups 开启了 NFT 不再仅是图片的新时代。 路印二层为NFT提供了了快速、低成本且安全的交易平台,而这将为全球创作者和开发者提供充沛的资源,让他们在可扩展市场、保险和安全、音乐、游戏、全球 ID 等领域进行充分试验。 现在仅仅是二层 NFT 的开始,我们将一步步挖掘NFT的无限潜力。

我们为此次在数字确权领域的原始创新而倍感兴奋,并正在探索潜在的合作伙伴以扩展生态。

关于路印

路印协议 是全球首个基于以太坊二层的 zkRollup 去中心化可扩展交易协议。路印基于以太坊二层开发了多个高性能、高技术产品,包括全球首个支持社交恢复的以太坊智能合约钱包,以及全球首个集成 zkRollup 且支持订单本、AMM 挖矿的去中心化交易所。

更多问题,请添加路印微信客服:L_Loopring 或 Y_Loopring

TwitterDiscordForumTelegramRedditGitHubDocsYouTubeWeiboGitbook

--

--