Vitalik buterin: how to make NFTs friendly across rollup by migrating them to layer 2?

Fun coin 2021-09-14 03:12:08 阅读数:553

vitalik buterin make nfts friendly

We need to NFT Transfer to section 2 layer (L2) Ecosystem to reduce costs . However , Doing this correctly requires good cross Rollup Portability criteria , Thus, the ecosystem can avoid being locked in a specific L2 in .——Vitalik Buterin

NFT The ecosystem is developing rapidly , Has become a The etheric fang chain gas An important part of consumption .NFT The rejuvenation and relative lack of foundation of ecosystems , And because NFT A large part of the non-financial nature and the need to avoid high costs , It also makes NFT Become transferred to the 2 layer (Layer2) The main goal of the network . However , This raises the question of how to NFT Migrate to Layer2 The problem of .

A simple proposal is : Coordination within the community will NFT Move to a single Rollup platform ( for example Arbitrum, Because it can now be used for general contract deployment ), But there are some important drawbacks :

  • All existing support EVM The main Rollup Platforms have back doors 、 Centralized sorting or other experimental functions , Leave the whole ecosystem to a single Rollup There are risks , and Rollup There is uncertainty about how these functions will be transcended .

  • NFT Ecosystems may become too big , So single Rollup Cannot safely handle

  • NFT Any part of the ecosystem , Even the whole NFT The ecological system , It's not a closed world ; They will need to interoperate with other parts of the Ethereum ecosystem

This article puts forward a method on how to make NFT Span Rollup A friendly proposal , allow NFT Move to the whole Layer2 The ecological system .

Proposed solution 1

NFT Will first be in a Rollup ( Or basic chain ) Register in . By creating a package NFT,NFT Can be in other Rollup ( Or basic chain ) Jump between .

encapsulation NFT The process is as follows :

  1. stay Rollup A On , take NFT ( We call it X) Send contract to package manager , Appoint (i) Destination Rollup and (ii) Initial owner . Lockbox contracts keep a record in storage , by X Assign a new serial number R, And save the target Rollup ( We call it B) And the target Rollup Initial owner of ( We call this account O1)

  2. stay Rollup B On , Anyone can use Rollup B The package manager contract on creates a package NFT. Create a package NFT You need to specify the source Rollup And serial number . establish X One of the 「 It works 」 encapsulation NFT Only by the specified owner and through the declaration (R, A) As serial number and source Rollup To complete . Please note that , It is possible to create an invalid wrapper that does not point to content NFT;Rollup B I don't know what is valid and invalid . Package manager contract store ( Serial number 、 Source Rollup、 Initial owner ) Tuples (tuples) And prevent the use of the same tuple to create multiple NFT.

  3. To extract... From the lockbox NFT,Rollup B The package on -X The current owner of must send it back to the encapsulation Manager , The latter will issue a receipt , explain 「 Serial number for R、 Source summary A And the initial owner O1 Of NFT Just touched the package , With the new owner you want O2」.

  4. Lockbox contracts can be summarized upon receipt B Proof of receipt on the will X hand O2, And check the serial number according to the information stored 、 Source Rollup And the initial owner , And verify that it passes .

Vitalik Buterin: take NFT towards Layer 2 transfer , How to make them cross Rollup?

Vitalik Buterin: take NFT towards Layer 2 transfer , How to make them cross Rollup?

Please note that , There will be a time delay for withdrawal , because Optimistic Rollup The state root needs about 1 The time delay of weeks can be finalized , In order to verify the receipt . up to now , The only way to do multi hop faster is to do multi-layer encapsulation .

In order for the user to verify the encapsulation -X Is it legal , They need to verify themselves Rollup B The state and Rollup A The receipt on the .

Expand : Add cross Rollup transmission

In summary B On ,wrapped-X The owner of can send it to the wrapper Manager , And attach instructions for issuing different receipts :「 Serial number for R、 Source Rollup A And the initial owner O1 Of NFT Just moved to Rollup C, With the new owner you want O2」.

stay Rollup C On , Anyone can specify the original source Rollup ( In this example Rollup A)、 Serial number and initial owner to make the package -X object , also Rollup C This package on -X Free to trade . however , In order to be able to withdraw the package -X, Need to put Rollup B Send your receipt to Rollup A.

What actually happened was , When NFT From a Rollup Move to another Rollup when , The transfer chain leaves a receipt chain , Each receipt in the receipt chain is mirrored to Rollup A And deal with it in sequence at a certain point in time . future , When others Rollup When the status of is finally determined ( This can be done in the short term through Kate Commit to space optimization , In the long run , Can pass ZK-SNARK Prove the whole receipt chain ).

In order for the user to verify the encapsulated X It's legal. , They need to verify that they reflect cross Rollup All transferred Rollup The whole receipt chain on ( Or at least , It has been mirrored to... Since the last receipt Rollup A kind of receipt chain ).

Also, please note , The protocol can simplify :「 To withdraw money 」 Just a cross Rollup Transfer Rollup A, If you realize Rollup A The specific serial number of the release is now Rollup A On , Then the encapsulated contract can be exchanged directly .

Expand 2: On the basic chain gas Optimize distribution

all NFT Can be distributed in this way , That is, they are contracted by the password box on the Ethereum basic chain 「 Have 」. In order to make this gas Efficient , The lockbox contract will generate a complete set of serial numbers and transmit them to Rollup The function of . actually , all NFT Are pre created , But not yet assigned to any of them 「 significance 」( Think : Yes 2**256 An undifferentiated 「 stem cells 」NFT), And they are transferred in batches to Rollup.

「 issue 」 The process of is now a process of giving meaning . This can be done by passing... In the receipt 「 Meaning hash 」 To complete , Just like passing on the owner : If NFT It makes no sense ( It's a 「 stem cells 」), The owner can assign a meaning , Turn it into a 「 Differentiation 」 Of NFT. The base chain only knows after verifying the receipt chain NFT The meaning of , Until the meaning is assigned ( actually , Receipt verification must be ZK-SNARK To make it work ).

This allows all NFT All in the basic chain 「 take root 」, instead of Rollup. This is for processing Rollup Interruption or otherwise becomes infeasible and applications need to be permanently migrated to other domains .

To view more

This article is issued by , Opinions only represent the author , In no way does qucoin agree with its views or confirm its description . Part of the text / picture / video / Audio comes from the network , If it infringes upon the rights of the copyright owner , Please contact us ( WeChat /QQ:1074760229). This article is not used as investment and financial advice . Reprint please indicate the source : Qu coin network

版权声明:本文为[Fun coin]所创,转载请带上原文链接,感谢。