Layer 1 Assets are also known as "Native Assets". With the IOTA tokenization framework, you can create NFTs and new Tokens on L1 using the new output types. You can transfer native assets on the Tangle without any fees and between different smart contract chains.
In Shimmer, you can create Native out of thin air as long as you fulfill the storage deposit.
Native tokens can have different types of metadata.
Ethereum was the first blockchain to support NFTs with its ERC-721 standard. The difference from regular tokens is that the NFT is unique and verifiable and can be used to prove ownership of any digital good.
There are many use cases for NFTs. The most common use case is to link an image to it, which becomes a unique digital art that can be sold on open NFT marketplaces.
Other use cases would be to use NFTs as assets in games, for event tickets, for Decentralized Finance (DeFi), for voting in decentralized autonomous organizations (DAOs) or for any objects in the Metaverse.
Layer 2 Assets
Layer 2 Assets are created within Smart Contracts and can be minted out of thin air. That means you don't need any base token to mint new NFTs.
- For the Wasm VM, there are ERC721 Standards implemented in Rust, Go, and Typescript.
- EVM Assets (Ethereum standards like ERC721 or ERC1155) can be used in the IOTA Smart Contract EVM Chain. You can use the Open Source library from OpenZeppelin Smart Contracts.
As mentioned in the IOTA tokenization framework specifications, since smart contract chains can issue their own native assets that are traceable to a specific smart contract on a specific chain, a smart contract that handles Layer 2 tokens can use the core contract to wrap its tokens into a native asset. It can also unwrap Native Assets (Layer 1) tokens into a Layer 2 representation of said token. This means you can send assets across both Layer 1 and Layer 2 chains. However, if you want to send Layer 2 assets to another chain, you will first need to wrap it as a native Layer 1 asset.