Token e smart contract: una questione linguistica



Che differenza c’è fra token e smart contract?
Tecnicamente, nessuna.
Tutti i token sono smart contract, e tutti gli smart contract sono token; tutti gli NFT sono token, pur non essendo vero il contrario, in quanto i token possono essere fungibili, non fungibili e semi-fungibili; quindi, per logica aristotelica, gli stessi NFT sono sia token che smart contract.
Allora, perché la necessità di adoperare due termini diversi?
E soprattutto, si chiede spesso chi segue il settore: come mai in certi contesti si utilizza (solo) uno dei due lemmi, piuttosto che l’altro?

Come in tutte le lingue, anche nell’inglese informatico esistono parole che pur essendo sinonimi, portano in sé differenti sfumature di significato.
Il fenomeno ha una chiara utilità: più una lingua è forbita – il che è direttamente proporzionale allo spessore del suo dizionario – più essa è potente; d’altro canto, il numero di parole che conosciamo determina la nostra capacità di pensare, in larghezza e in profondità, quanto più precisamente riusciamo a definire i concetti che elaboriamo.

Dal punto di vista semantico, token e smart contract riposano su un’ampia terra di confine, essendo costrutti informatici capaci di generare specifici eventi e di rispondere ai medesimi.
I token/smart contract sono insiemi di istruzioni formulate in specifici linguaggi di programmazione, che vengono scritte ed eseguite automaticamente su Blockchain, al verificarsi di eventi previsti dal programmatore.
Facendo riferimento alla tecnologia Ethereum, con cui essi nascono e dalla quale mutuano le rispettive definizioni, token e smart contract sono quindi dei mini-software. Rappresentano dei programmi informatici tutto sommato semplici, operanti su condizioni del tipo if-then-else; sono dotati di un piccolo database interno, modificabile solo dal programma che li controlla, in quanto codice e dati sono incapsulati; ciascuno smart contract/token porta con sé un proprio curriculum vitae, che ne racconta la storia su Blockchain, dal blocco di generazione fino all’ultimo proprietario[1].




La parola token è spesso tradotta come gettone. In tal senso il token rappresenta la legatura di un bene specifico, allo stesso modo di come un gettone dei vecchi cabinet costituiva un surrogato spendibile di un servizio, ossia di una partita al videogame che in ciascuno di essi era installato.
Nell’esempio c’è una sottigliezza, che è fondamentale comprendere.
Il bene non è nel nostro caso il gettone, ma appunto la partita, che il primo rappresenta e quantifica.
Per amor di precisione, possiamo tradurre token come gettone tutte le volte in cui si verifica la situazione appena descritta: è il caso di un NFT che rappresenti il diritto di proprietà (non il possesso) di un’opera d’arte digitale, quando quest’ultima sia stata archiviata off-chain[2].
Se invece il token fosse una criptovaluta, piuttosto che un certificato digitale di laurea, avrebbe meno senso tradurlo con gettone. In simili casi, dove il token rappresenta sé stesso, è più calzante l’espressione bene digitale.

Quando token è sinonimo di gettone, in senso stretto, dove possiamo collocare l’espressione smart contract?
Ecco un buon punto di partenza per tracciare il confine fra le due categorie, che teniamo a ribadire: coincidono sotto il profilo tecnico-informatico, ma possono differire in base alla sfumatura semantica che gli si attribuisce.
Se il gettone rappresenta un bene astratto (o volendo un servizio), costituito dalla partita al videogame, il software del cabinet fa da cerniera fra i due elementi.
Il software sarebbe in questo caso lo smart contract.
In sintesi: il gettone sta al token, come la partita sta al bene digitale, come il software del cabinet sta allo smart contract.

Nel gergo Blockchain, si preferisce token a smart contract, quando con il primo si vuole indicare uno smart contract dotato di interfaccia standardizzata. Per esempio gli Ether[3], che rispondono allo standard ERC-20, essendo essenzialmente tutti uguali.
In ambito Blockchain, come altrove, creare degli standard serve a facilitare il lavoro di chi progetta all’interno di un ecosistema. Sapendo di avere a che fare con dei token dall’interfaccia standardizzata, quindi più o meno omologati, i programmatori hanno buon gioco nel progettare smart contract specifici che interagiscano con essi.
Girando il discorso, possiamo definire come segue il termine token: l’interfaccia standard con cui chi ne dispone -attraverso chiave privata– può dialogare con gli (altri) specifici smart contract. Esattamente come avviene per il gettone di una sala giochi, che consente di interagire con tutti i cabinet installati all’interno del locale.

Un’altra distinzione importante riguarda i concetti di smart contract-creatore, da un lato, e quello di smart contract-token: il primo è essenzialmente un software che serve a generare il secondo, che è anch’esso un software e può consistere in un NFT, una criptovaluta o altro tipo di token.



Vedi anche: NFT, possesso vs. proprietà; ForLedger ed Ethereum.


[1] Il proprietario di un token, colui che ne ha il possesso e la disponibilità, è il soggetto che custodisce la chiave privata che controlla il token medesimo, ossia alla quale il token risponde.

[2] In tal caso, di solito l’NFT contiene un semplice digest (o impronta digitale) dell’opera d’arte originale. In altri casi l’NFT può addirittura essere costituito da semplici metadati, riportando le indicazioni sul luogo fisico/digitale in cui l’opera d’arte e il suo digest sono stati archiviati.

[3] Ether è una criptovaluta, ovvero l’asset nativo della Blockchain Ethereum.

© Copyright 2023 Gruppo Uniledger - All Rights Reserved
Uniledger Srl, P.Iva 02159850664 - info@uniledger.it