L’ultimo incontro dei Legal Hacker Roma è stata l’occasione di fornire una dimostrazione, molto semplice, su come creare un NFT, ossia un token crittografico che si distingue rispetto alle criptovalute tipo Bitcoin per la caratteristica dell’infungibilità, rappresentando un unico asset all’interno della blockchain. In realtà, il processo per creare un NFT è abbastanza semplice ed alla portata anche di chi non ha fondamenti di linguaggi di programmazione, ciò anche grazie alle funzionalità che vengono messe direttamente a disposizione dai più noti marketplace di NFT, che consentono all’utente di procedere, tramite un processo guidato, alla creazione del token.
Vogliamo ripercorrere qui di seguito i vari passi per poter creare un NFT, dando al lettore la possibilità di comprendere come poter procedere in completa autonomia, valutando anche le varie opzioni che possono essere valutate.
Come creare un NFT: l’asset
L’asset è l’oggetto digitale che intendiamo tokenizzare come NFT. Può essere un’immagine, un video, un gif, una canzone, insomma qualsiasi contenuto digitale di cui vogliamo attestare l’esistenza e, in particolare, la riconducibilità a noi. È bene sottolineare che in realtà un NFT è uno smart contract che viene appositamente creato e attestato sulla blockchain nel momento in cui decidiamo di “mintare” (ossia appunto di realizzare) il Non Fungible Token. Ogni token ha un unico tokenURI che contiene i metadati dell’asset – secondo un particolare schema – e che indicano le caratteristiche del NFT (descrizione, nome, file di riferimento, etc).
Non fungible token (NFT): così la blockchain cambia il mercato dell’arte
Il ruolo della blockchain
La gran parte degli NFT sono oggi presenti su blockchain Ethereum, sfruttando due standard di programmazione presenti su tale sistema quali ERC-721 e ERC1155, che consentono appunto di creare token infungibili. Su Ethereum è interessante segnalare anche un nuovo standard denominato ITEMS, creato da alcuni sviluppatori italiani, che ha il vantaggio di poter gestire, con un unico smart contract diverse tipologie di token (sia fungibili sia infungibili) così riuscendo ad ottimizzare il GAS (ossia la valuta che viene utilizzata su Ethereum per poter eseguire gli smart contract) necessario alla creazione di NFT.
Proprio l’ampia diffusione di Ethereum come blockchain per la creazione e circolazione degli NFT ha determinato un aumento esponenziale dei costi delle transazioni. Si sono quindi diffuse in tempi più recenti anche altre alternative come Binance Smart Chain (BNC), Solana, Polygon, Algorand, e varie altre.
Bene evidenziare che una volta creato un NFT su una blockchain è possibile scambiarlo solo sulla stessa (o sulle piattaforme che si basano su quella determinata blockchain), dato che le transazioni sono controllate dallo smart contract che è stato in essa rilasciato. Ciò significa che se si decide di creare un NFT su Solana non sarà possibile poi gestirlo su Ethereum (mentre attraverso la Binance Smart Chain si possono sviluppare dApps e smart contract su Ethereum).
I marketplace
L’ecosistema degli NFT si è ampiamente espanso in questi ultimi mesi, grazie anche alla diffusione di vari marketplace su cui è facilitata la visualizzazione e lo scambio dei token creati. Anche i marketplace si distinguono a seconda della blockchain su cui consentono lo scambio e la creazione di NFT; su Ethereum i più famosi sono OpenSea (che consente anche di gestire token su Polygon), Rarible, Superrare, KnownOrigin ed altre decine di siti più o meno specializzati (quali, Curio, Niftys e altri legati anche a specifici videogiochi), mentre per altre blockchain sarà necessario approdare su marketplace ad esse dedicati (come Solsea per Solana).
Chiarito l’ecosistema in cui si muovono gli NFT è possibile esaminare i vari step necessari per crearli. Ci baseremo su Ethereum, essendo la più diffusa, ed analizzeremo la creazione di un NFT attraverso OpenSea, per poi svolgere qualche considerazione finale più avanzata.
Wallet e criptovaluta
Per poter creare un NFt è necessario dotarsi della criptovaluta necessaria a pagare le commissioni richieste per validare la transazione. Sarà, quindi, opportuno acquistare il relativo importo presso un cambiavalute virtuale (considerando che i costi di creazione variano a seconda della quantità di transazioni e del valore di cambio della criptovaluta). Fondamentale è anche dotarsi di un wallet (il più utilizzato è Metamask) che funziona quale plugin dei maggiori browser e creare un account (senza dimenticare di annotare in un posto sicuro la “frase seed” che viene indicata al momento della creazione dell’account).
A questo punto si trasferiranno le criptovalute acquistate nel wallet così da averle a disposizione per la creazione del NFT.
Creare l’NFT: la procedura step by step
Dunque è arrivato il momento di creare un NFT. Per far questo, senza dover mettere mano a codice di programmazione, è possibile navigare sul sito OpenSea ed autenticarsi collegando il wallet di Metamask (tale metodo di autenticazione si applica a tutti i siti del Web 3.0). Su OpenSea il menù di navigazione ci consente di selezionare il tasto “create” che ci porta sulla pagina che consente, appunto, di “mintare” un NFT (creando quindi il relativo smart contract su Ethereum).
Il processo è veramente semplicissimo: è sufficiente selezionare il file (di una dimensione massima di 100MB) in uno dei formati supportati dalla piattaforma, il nome che vogliamo dare, un link esterno che verrà visualizzato su OpenSea per fornire maggiori informazioni, la descrizione nonché la collezione a cui apparterrà l’NFT (all’interno di OpenSea). Possibile anche inserire informazioni opzionali, nonché contenuto “sbloccabile” solo dal possessore del NFT.
A questo punto bisognerà decidere la quantità di token che vogliamo creare (ma per ora è disponibile solo un NFT per file in questa modalità). Selezionando il tasto di creazione viene, appunto, creato il nostro NFT, che risulterà anche nel nostro wallet.
Come si potrà notare al momento della creazione non vengono applicate commissioni (circostanza semplice da verificare dato che Metamask si apre mostrando l’importo delle stesse). Si tratta del cd. “lazy minting”. Questo perché in realtà la piattaforma applica un “one time fee” al momento della registrazione. La commissione sulla creazione del token si applica in un momento successivo ossia quando decidiamo di porlo in vendita o di trasferirlo ad un altro utente.
Le alternative
La creazione di un NFT implica la realizzazione di uno smart contract, secondo gli standard già sopra citati. Evidente, quindi, che il processo che abbiamo sopra descritto può essere realizzato anche tramite la scrittura diretta del codice ed il rilascio del relativo smart contract su blockchain Ethereum. In tal ipotesi, come è facile immaginare, il processo è assai più complicato, ma esistono anche delle piattaforme, come Mintbase, che consentono di semplificarlo.