We need to Vitalik ButerinTransfer 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 .——
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 ：
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）
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.
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」.
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 .
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 qucoin.com , 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