Odysseia - NFT

Odysseia - NFT
Photo by Gilly / Unsplash

A non-fungible token (NFT) is a unit of data stored on a blockchain, that certifies a digital asset to be unique and therefore not interchangeable. NFTs can be used to represent items such as photos, videos, audio, and other types of digital files.

NFTs gained popularity when Ethereum introduced EIP-721: ERC-721 Non-Fungible Token Standard. A standard for how NFTs could be implemented on Ethereum through the existing Smart Contract system. Since this proposal has been released thousands of NFTs have been created and sold and a whole industry around them has been established with use-cases for something like video games.

Minting

Odysseia ships with its own implementation of NFTs. Available actions are minting, burning and swapping. The asset for minting has a few required properties to proof the authenticity of the digital file.

export interface NonFungibleTokenMintAsset {
	name: string;
	description: string;
	sha256: string;
	type: string;
	image: string;
	location: {
		ipfs: string;
		https: string;
	};
}
Structure of the NFT Mint Asset
  • The name has to be unique and no longer than 255 characters.
  • The description has to be no longer than 255 characters.
  • The sha256 hash has to be unique and no longer than 64 characters.
  • The type has to be one of image, video, audio or document.
  • The IPFS location should be a URL matching ipfs://{hash}
  • The HTTPS location should be a URL matching https://
  • The arweave location should be a URL matching https://*.arweave.net/{hash}

Burning

Burning an NFT might be something you want to do if you've lost access to the source files of the NFT you created or if you simply want to mark it as no longer accessible. Keep in mind that you'll need to take care of actually making it inaccessible because the blockchain only serves as a ledger to store the proof of authenticity.

Burning an NFT effectively destroys the token and removes it entirely from a blockchain. When you burn an NFT, the transaction is irreversible. Burning an NFT doesn't actually destroy the NFT because blockchains are immutable, meaning data can never be changed or removed.

There's also the fact that the digital file for which the NFT is a proof of authenticity doesn't actually live on the same blockchain. Instead it will be sent to a burner wallet for which no private key exists, thus the NFT will be inaccessible and also can't be recovered. Make sure you really want to destroy it before acting.

All that being said, there is a myriad of reasons to burn an NFT but you are not forced to specify a reason if you don't want to before destroying it. If you do want to specify a reason you can make it part of the burning transaction and it'll be persisted on the blockchain.

Swapping

A common use-case for NFTs is art and collectibles like Pokemon cards. All in the form of digital files. Owning digital Pokemon cards might be something you like to do but what use does it have if you can't trade them with others?

That's where swapping comes in. It enables trading by allowing one party to initiate a request for an NFT by offering one or more of their own and if the opposing party agrees the swap will be executed. Both parties have to agree to the swap by signing a transaction which is then verified and if everything adds up the deal is sealed.

Swapping is commonly used for NFT to NFT trades but it is also possible to exchange any kind of native token for an NFT. An NT to NFT exchange is the most common scenario for acquiring an NFT when it enters the market for the first time so that the artist can earn something for his work and from then on it will be in circulation for swapping between wallets on the blockchain.