Un token è una registrazione su una blockchain che conferisce un diritto: di regola, un diritto di proprietà su un bene. Un token può essere fungibile, e dunque sostituibile, o non fungibile: in questo caso si tratta di non fungible token, o NFT. Possiamo dire che un nft, non essendo sostituibile con nessun altro, individua un determinato bene, non confondibile con nessun altro. In questo articolo introduciamo l'argomento token e non fungible token, o NFT: alcune nozioni tecniche di base e possibili applicazioni.
Indice
Token e blockchain
La traduzione di token è: gettone. Possiamo cominciare la nostra esposizione pensando ai gettoni utilizzati (un tempo) per le cabine telefoniche o per le sale giochi. A pensarci bene entrambi gli esempi vengono da un tempo passato, ma ben descrivono la funzione di questi gettoni “fisici”: consentire l’utilizzo di un qualcosa.
Pur essendo scambiabili, l'utilità e il valore di questi gettoni, o token, è limitata al particolare utilizzo cui sono destinati. Al di fuori di una sala giochi, un gettone che consente di giocare in quella sala giochi non ha alcun valore.
I token che vogliamo trattare con questo articolo rappresentano una evoluzione dei loro antesignani fisici, i gettoni ai quali abbiamo appena fatto riferimento: a differenza di questi però, quelli che a noi ora interessano esistono nel solo formato digitale e sono una applicazione della tecnologia blockchain.
Con una certa approssimazione, per adesso possiamo dire che un token è una registrazione sulla blockchain che attribuisce ad un titolare, individuato attraverso una chiave pubblica, un certo diritto: tipicamente, come vedremo a breve, la proprietà su un bene.
Questo diritto può essere trasferito insieme al token attraverso una chiave privata. Abbiamo illustrato il funzionamento della coppia di chiavi e la crittografia a chiave pubblica, alla base della tecnologia blockchain, nell’articolo su bitcoin e crittografia a chiave pubblica.
Le applicazioni di un token: a cosa serve un token?
Una prima forma di token si è avuta con bitcoin: una moneta digitale, o payment token. Si è trattato della prima e più immediata applicazione di una blockchain. Abbiamo parlato di moneta digitale e blockchain nel nostro articolo sul funzionamento di bitcoin.
Lo sviluppo della tecnologia blockchain e in particolare l’avvento di Ethereum ha portato a concepire usi ulteriori per la blockchain oltre quello tipico di una moneta digitale, introducendo nuove possibili applicazioni per i token.
In considerazione delle molteplici applicazioni che i token hanno finora avuto, si ha la distinzione tra:
EQUITY TOKEN: rappresentano quote di proprietà di un qualcosa, come ad esempio una società e, a seconda dei casi, relativi diritti: partecipazione agli utili, diritto di voto.
UTILITY TOKEN: consentono l’utilizzo di qualcosa, ad esempio dando accesso ad un servizio o consentendo l’uso di una risorsa.
Token fungibili e non fungibili; gli NFT
Un'altra distinzione attiene a quella tra token fungibili e non fungibili.
TOKEN FUNGIBILE è sostituibile: le singole unità sono tra loro equivalenti e possono essere scambiate senza che il loro valore cambi.
TOKEN NON FUNGIBILE O NFT (non fungible token): è unico e conferisce il diritto su qualcosa di specifico e ben determinato.
Una applicazione tipica e attualmente piuttosto discussa di un token non fungibile o NFT è quella delle opere d’arte.
Ciascun NFT esprime il diritto di proprietà su una singola e ben determinata opera d’arte: una in particolare. Cedere il token equivale a cedere la proprietà dell'opera d’arte.
Ogni NFT deve dunque essere individuato singolarmente: ciò avviene attraverso un numero o codice (ID) che lo contraddistingue da qualsiasi altro.
Non solo blockchain...
A questo punto dobbiamo segnalare due casi che si possono verificare:
Un token può conferire un diritto o la proprietà di un qualcosa che esiste solo in formato digitale ed è “registrato” sulla blockchain, ad esempio un’opera d’arte digitale o un brano musicale. In tal caso, il diritto sulla cosa può essere acquisito secondo le sole regole tecniche proprie alla blockchain.
Un token rappresenta la proprietà di un bene materiale che esiste al di fuori della blockchain, come ad esempio una casa. In tal caso l’esercizio del diritto sul bene non dipenderà esclusivamente dal controllo sul token (attraverso il possesso della chiave privata), ma anche da variabili esterne alla blockchain che hanno a che vedere con la disponibilità fisica del bene, oppure da norme o provvedimenti legali che riguardano il bene in questione.Ad esempio: la casa potrebbe essere occupata da qualcuno che vi accampa diritti o gravata da un’ipoteca; in tal caso, il possesso del token non basta a garantire il pieno diritto sulla casa.
Aspetti tecnici: Ethereum
Passando agli aspetti tecnici, abbiamo già detto che i token sono una applicazione della blockchain e presuppongono una piattaforma blockchain.
Lo sviluppo e l’affermazione dei token si è in gran parte verificata sulla piattaforma Ethereum. Per comprendere gli aspetti tecnici salienti che andiamo ad illustrare, è dunque necessaria una conoscenza seppur basilare di Ethereum; sull’argomento, rinviamo al nostro articolo su Ethereum e smart contract.
Token e smart contract
Un punto da sottolineare attiene al fatto che un token viene creato con uno smart contract che ne disciplinerà interamente il funzionamento: dalla quantità massima emettibile alle caratteristiche dei token, i diritti ad essi connessi così come il saldo per ogni possessore, tutto viene definito e tracciato dallo smart contract che "crea" il token.
Questo determina una essenziale differenza tra token e criptovalute, in primo luogo ether, la criptovaluta di Ethereum. La circolazione di ether tra diversi account Ethereum, siano essi smart contract o EOA, risulta dalla blockchain di Ethereum, che attesta i trasferimenti di ether e il saldo di ciascun account.
In sostanza, è il protocollo Ethereum a regolare e tener traccia dei trasferimenti di ether; lo stesso vale per Bitcoin. Pertanto, per conoscere il saldo in ether di un account Ethereum, un wallet dovrà “interrogare” la blockchain.
Con un token la situazione è radicalmente diversa: tutto è incluso nello smart contract: vi sono indicati anche gli indirizzi ethereum detentori del token e il loro saldo. Da ciò discende che, se voglio sapere quante unità di un token X posseggo, il mio wallet dovrà connettersi allo smart contract che ha creato il token X.
Token e standard
Se il funzionamento di un token dipende esclusivamente dallo smart contract che lo ha creato, l’ecosistema che ne deriva è con tutta probabilità frammentato: ogni token costituisce un mondo a sé. Questo pone un problema di interoperabilità, rappresenta una barriera all’adozione e, nel limitare la circolazione e la facilità di utilizzo, di fatto limita anche l’effettiva utilità del token inteso come innovazione.
Il rischio è quello di riprodurre gli stessi limiti dei gettoni di cui abbiamo parlato all’inizio: una utilità nulla al di fuori del ristretto ambito cui sono destinati e per il quale sono stati emessi.
Per ovviare a tale problema, col tempo sono stati proposti degli standard, ossia funzionalità che gli smart contract possono prevedere nel creare un token.
Un minimo di omologazione e standardizzazione rende ad esempio la gestione di un token più facile da parte di un wallet, che sappiamo essere la principale interfaccia a disposizione dell’utente, così come lo sviluppo delle relative funzionalità.
Di seguito accenniamo a 2 degli standard finora elaborati su Ethereum.
ERC20
Il primo standard adottato su Ethereum è noto come ERC20; è stato ampiamente seguito, al punto da diventare lo standard di riferimento per i token fungibili. Il successo dello standard ERC20 ha portato alla rapida diffusione e crescita del fenomeno token su Ethereum. Va notato brevemente che, essendo destinato ai token fungibili, lo standard ERC20 indica il solo saldo (per ogni account Ethereum), senza fornire elementi che consentano di distinguere un token dall’altro.
ERC21
È stato proposto anche uno standard per i token non fungibili o NFT. Come detto in precedenza, ogni NFT è unico, perché ad esempio esprime la proprietà di un bene specifico e ben determinato. Abbiamo anche visto che ogni singolo NFT è identificato per mezzo di un proprio ID; a differenza di quanto avviene con ERC20, lo standard ERC21 non si limita ad indicare il saldo ma associa l’ID del token all’account che lo detiene.
Conclusioni
Con il nostro articolo abbiamo introdotto l’argomento token: una applicazione della blockchain affermatasi con Ethereum, attualmente molto discussa con riguardo agli NFT e che promette sviluppi interessanti.
Abbiamo anche segnalato alcuni aspetti tecnici che distinguono i token dalle criptovalute e che rendono necessaria la adozione di standard dedicati.
Da una maggiore omologazione derivano infatti migliori condizioni per l’ulteriore sviluppo dei token e delle tecnologie connesse, nuove applicazioni, maggiore utilità e dunque una più larga diffusione.
Vincenzo Lalli
Di formazione legale, appassionato da sempre di tecnologia ed informatica; esperienza professionale acquisita a cavallo tra i due mondi, finora piuttosto lontani tra loro. Mi dedico ad esplorare le crescenti interazioni tra il Diritto e la tecnologia, e a dare il mio contributo alla causa dell'innovazione nel settore legale; a tal fine, ho dato vita ad Avvocloud.net.