§1 – Premessa
UniGreen è il wallet proprietario di UniLedger, creato per gestire gli NFT-certificato del Registro Blockchain.
L’utilizzo di UniGreen è del tutto opzionale, da intendersi come una possibilità in più che viene offerta agli atenei, e di rimando ai loro studenti.
La presente trattazione rappresenta un approfondimento sul tema, volto a spiegare meglio il funzionamento di UniGreen, le ragioni per cui è stato incluso fin da subito nel Sistema UniLedger, in quali circostanze se ne consiglia l’uso.

§2 – Funzionamento di UniGreen: stato attuale e prospettive future
Il wallet proprietario UniGreen è già integrato e operativo in UniLedger.
Al momento del mining, ossia quando un NFT-certificato viene generato, esso è automaticamente associato a un wallet UniGreen specifico; ma ciò è un fatto puramente tecnico, che come vedremo fra poco, non implica necessariamente l’uso del wallet da parte di università e utenti; servirà invece a non precluderlo per il futuro.
L’argomento potrebbe sembrare un po’ ostico da comprendere, ma le spiegazioni che seguono chiariranno ogni dubbio.
Il Sistema dei wallet UniGreen si può strutturare in diverse modalità: saranno le università a stabilire quella che preferiscono.
Nello specifico, si ipotizzano tre logiche principali (è sempre possibile il passaggio dall’una all’altra):
Quale fra le tre alternative è migliore?
In linea generale, sono tutte altrettanto valide.
In base alle circostanze, si consiglia l’una o l’altra.
Le determinanti sono il momento storico, in funzione di un processo di adozione in corso, quello della Blockchain su larga scala.
Si consideri che per la rivoluzione in atto, se paragonata a Internet e al Microprocessore, siamo ancora negli anni Novanta: sono sufficienti pochi mesi, per assistere a enormi sviluppi.
Su scala planetaria, ad oggi Blockchain resta poco più di una parola sulla bocca di tutti.
In che senso?
Il mondo della finanza ci investe da tempo, con particolare riferimento a criptovalute e DeFi, mentre i Legislatori –americani, europei e non solo- si adoperano per regolamentare il Settore; molte aziende stanno scoprendo opportunità e vantaggi della Blockchain, soprattutto in certi segmenti, dove le sue proprietà si rivelano sempre più preziose[4]; le università trattano ormai stabilmente la materia, come insegnamento e oggetto di ricerca; giornali e riviste ne scrivono, tg e trasmissioni radiotelevisive ne parlano; le masse iniziano a comprendere che dietro “i Bitcoin” c’è qualcosa di più profondo e importante, che la Blockchain è qui per restare, anche se ancora non ne comprendono i motivi.
Per riassumere: il processo di diffusione della Blockchain è in rapido avanzamento, non può più essere fermato, ma è ancora distante dal traguardo.
Tutto ciò considerato, torniamo alle tre modalità di utilizzo di UniGreen.
Finché certi aspetti della Blockchain non saranno alla portata di tutti, è vivamente consigliata la prima opzione, ossia la più semplice: il wallet per custodire le chiavi crittografiche degli NFT-certificato c’è, funziona, ma nessuno lo adopera né si accorge della sua esistenza.
L’intero ecosistema UniLedger si riduce così a un’interfaccia elementare, fruibile da chiunque (università e utenti), senza competenze particolari e praticamente zero rischio di errori.
Mano a mano che su larga scala si comprenderà come funziona un wallet, cosa si può fare con gli NFT, come si usano le dAPP, quali sono le potenzialità del Web 3.0… le università prima, gli utenti poi, saranno pronti a interagire direttamente con il Registro UniLedger.
A un certo punto, l’uso del wallet diventerà banale per chiunque, tanto quanto oggi lo è adoperare l’email. O disporre un bonifico bancario dal PC di casa.
In definitiva, nel tempo le università potrebbero ritenere -e probabilmente riterranno- vantaggioso spostarsi verso un utilizzo più sofisticato di UniLedger, cioè adottare la seconda e la terza delle impostazioni sopra descritte. Ovvero iniziare progressivamente ad adoperare UniGreen.
Ma sia chiaro, UniGreen sarà sempre e solo un’opzione in più da esercitare, mai un obbligo.

Per maggiore chiarezza, proviamo a spiegare i medesimi concetti da un’altra prospettiva.
Da un lato, si veda UniGreen come un potente strumento al servizio di atenei e utenti; d’altro canto, UniGreen aumenta la complessità di UniLedger, il cui utilizzo passerebbe da estremamente semplice al richiedere un po’ di dedizione. Non così tanta, in realtà, ma comunque un certo impegno.
Poniamo la questione come un problema da risolvere: noi per primi, insieme ai nostri clienti, intendiamo evitare che operatori e utenti incontrino la minima difficoltà nell’approcciarsi al Sistema UniLedger; al contempo, desideriamo che questi ultimi beneficino del wallet proprietario.
Esiste una soluzione win-win?
Certo che sì.
In tal senso, il tempo è il nostro migliore alleato.
Finché la società nel suo complesso non avrà pienamente acquisito la tecnologia Blockchain, tanto da rendere banale l’uso di un wallet nel Web 3.0, UniGreen esisterà solo per il Personale di UniLedger: il Sistema UniLedger rimarrà talmente elementare da utilizzare, che l’utente non si renderà neppure conto di interagire con una Blockchain.
Del resto, un pubblico che ancora non interagisce con il Web 3.0 non trarrebbe alcun vantaggio dalla disponibilità di UniGreen.
Nel momento in cui la tecnologia Blockchain sarà alla portata di tutti, ciò annullerà la contropartita dell’uso di UniGreen da parte di università e studenti/laureati, ossia le (sia pur minime) difficoltà dovute all’interazione con il wallet proprietario.
In definitiva, riguardo alle modalità di funzionamento di UniGreen, il passaggio dalla prima alla terza opzione avverrà in modo del tutto naturale. E certamente indolore.

§3 – E se si decidesse di non utilizzare il wallet per gestire gli NFT-certificato?
In generale, si può fare totalmente a meno di un wallet, a costo di limitare la potenza di un sistema Blockchain.
Nel caso specifico di UniLedger: considerandone scopo e servizi offerti, almeno nel breve periodo, l’assenza di un wallet non si noterebbe neppure.
Per alcuni anni, difficilmente si utilizzerà la Blockchain al 100% della sua forza, che va potenzialmente oltre le opportunità, i vantaggi e i problemi già risolti da UniLedger.
In previsione del futuro, UniLedger è stata programmata per evolversi di pari passo con il Settore Blockchain, per essere sempre pronta ad erogare nuovi servizi, secondo gli sviluppi e le esigenze del momento.
Come si vedrà più avanti, il wallet proprietario va proprio in questa direzione.
Nello specifico, fin da subito UniLedger assicura:
Non serve un wallet affinché UniLedger eroghi questi servizi alle università.
E allora, di nuovo, perché il wallet?
Per spiegarlo, guardiamo anzitutto al futuro: ribaltando la logica temporale, sarà più semplice comprendere. Infine, ragioneremo sul presente.
Il mondo di domani girerà su Blockchain; gli NFT saranno in grado di offrire sempre più funzioni, alcune già prevedibili e altre meno, che gli utenti potranno invocare (si dice proprio così) solo tramite chiave privata. E le chiavi crittografiche, ossia la chiave pubblica e quella privata, possono essere detenute solo tramite wallet.
Ecco spiegato il primo motivo per cui, nella UniLedger degli atenei 3.0, il wallet sarà uno strumento che tutti –università e utenti- vorranno avere.
Sebbene quasi scontata, la seconda ragione è altrettanto importante: per vari scopi, i titolari degli NFT-certificato avranno bisogno di sbloccare il wallet che “li contiene” (fra virgolette, perché espressione impropria)[5]: ad esempio, per accedere a un servizio, aderire a un bando, partecipare a un evento che richiedano la disponibilità di un NFT-certificato di laurea/laurea magistrale/master.
Come promesso, veniamo al presente.
Perché integrare un wallet in Blockchain fin da ora, prima che diventi davvero utile?
Questa è la tipica domanda, un po’ inquisitoria ma posta con simpatia, che l’Amministratore di UniLedger rivolge agli Sviluppatori.
Ma quando gli Sviluppatori si impuntano su qualcosa, c’è almeno un buon motivo.
In estrema sintesi, integrare oggi un wallet generico ( = gestito dallo Staff e relativo all’intera Blockchain) ci permette di decidere se utilizzarne di specifici ( = per università ed eventualmente studenti/laureati) domani.
Se un NFT viene minato senza assegnazione a un wallet, non può esservi associato in un momento successivo.
Nuove funzioni si possono (e si devono) inserire nel tempo, token e wallet vengono puntualmente implementati, una Blockchain è in evoluzione continua: ma integrare in Blockchain un wallet a posteriori rappresenterebbe un limite per gli NFT preesistenti.

§4 – Perché non utilizzare Metamask o altro Ethereum wallet al posto di UniGreen?
UniLedger utilizza già Metamask e altri wallet ERC-721 compatibili, compreso MEW (MyEtherWallet).
Di default, e sempre con la possibilità di passare del tutto al wallet proprietario, UniLedger assegna gli NFT di login in Piattaforma ad applicazioni di questo tipo[6].
Bisogna far presente che l’uso degli NFT di login rappresenta un misura di sicurezza per il Sistema, è semplicissimo e richiede quasi zero competenze specifiche. Tutto si riduce ad aggiungere un’estensione nel proprio Browser e a seguire poche istruzioni, fornite in un breve tutorial caricato su Piattaforma.
Per gestire gli NFT-certificato nel migliore dei modi, cioè i token nativi di UniLedger, è stato invece creato un wallet su misura. Questo perché la Blockchain UniLedger non è una copia di Ethereum, né un’imitazione, ma un prodotto originale: un wallet altrettanto originale non poteva certo mancare.
UniLedger è stata costruita utilizzando la tecnologia Ethereum, attingendo a piene mani dal suo codice sorgente, ma selettivamente: UniLedger ha acquisito da Ethereum gli elementi atti a costituirne i punti di forza; per altri aspetti, UniLedger ha sviluppato il proprio DNA.

Ecco un rapido confronto fra Ethereum e UniLedger.
Ethereum è una Blockchain pubblica, permissionless e open source; è la più avanzata, con il miglior compromesso fra sviluppo tecnologico e maturità; con la sua nascita ha portato l’intero Settore all’attuale livello evolutivo, persino i concetti di token in senso stretto, smart contract e timestamp, sono figli di Ethereum.
Senza Ethereum, è doveroso ribadirlo, neppure UniLedger sarebbe mai stata concepita: non smetteremo mai di essere grati a Vitalik Buterin, che diciannovenne scrisse la prima bozza di (ciò che si sarebbe chiamata) Ethereum. Era la fine del 2013.
Non a caso, il Settore considera Vitalik Buterin come Leonardo da Vinci, ma russo[7] e con il computer nello zaino.
Sebbene Ethereum detti gli standard più avanzati, i più utilizzati per gli NFT[8], essa non è stata specificamente progettata per tokenizzare documenti universitari.
A tale scopo, si è reso necessario inserire delle modifiche, anche importanti. Bisognava quindi creare una Blockchain dedicata, con caratteristiche idonee a servire il mondo degli atenei e gli atenei del mondo.
Una Blockchain destinata ai certificati accademici deve essere privata e permissioned, il suo codice sorgente adeguatamente protetto, non-open source. Non può entrarvi chiunque alle medesime condizioni, né la validazione dei blocchi essere eseguita da nodi non selezionati e autorizzati; solo le università hanno diritto di minare blocchi e fungere da oracoli, ciascuna per i titoli direttamente conferiti.
Gli NFT di UniLedger hanno caratteristiche e funzioni informatiche in parte diverse rispetto allo standard ERC-721, per quanto linguaggi di programmazione e ambienti di esecuzione assicurino logiche di funzionamento equivalenti.
UniLedger è un sistema che esclude lo standard fungibile ERC-20, comprese le criptovalute, e lo standard multiplo ERC-1155. Semplicemente perché in ambito universitario non hanno ragione di esistere.
[1] In questa prima logica di funzionamento, Gruppo UniLedger custodisce le chiavi crittografiche dell’unico wallet attivo (quello appunto relativo alla Blockchain).
La scelta di depurare il codice sorgente dalle funzioni invocabili sugli NFT costituisce l’ulteriore garanzia che nessuna azione, accidentale o meno, possa essere eseguita sui token.
Per completezza, si noti che persino nell’ipotesi (praticamente impossibile) che l’intero sistema dovesse essere compromesso, i backup frequenti ne permetterebbero il ripristino quasi immediato.
[2] Esercitando appunto le opzioni previste in Piattaforma, ma senza agire direttamente sulla Blockchain.
[3] Dal proprio profilo in Piattaforma è possibile generare delle credenziali temporanee, con le quali far accedere una terza persona per consultare un NFT-certificato.
[4] Per riportare solo alcuni esempi, fra i molti possibili: la tecnologia Blockchain è oggi discretamente utilizzata per controllare le filiere agro-alimentari e viti-vinicole; per monitorare l’utilizzo e la produzione di energia, piuttosto che le emissioni inquinanti; nel mercato dell’arte e della rappresentazione digitale, da grandi artisti come da marchi internazionali d’abbigliamento, compresi quelli dell’alta moda; nel mondo della musica, anche da importanti musicisti italiani e internazionali; nel settore dei videogame, per generare oggetti unici, ambientazioni virtuali, gestire ricompense ecc.
[5] Il wallet non contiene gli NFT, bensì custodisce le chiavi crittografiche che ne permettono il controllo, ovvero il possesso.
[6] Tale condizione si accoppia con l’impostazione di base, che non prevede l’uso del wallet proprietario: nel caso in cui gli atenei optassero per l’utilizzo di UniGreen, sarebbe consigliabile (ma sempre facoltativo) adottare la logica di un solo wallet, quindi UniGreen per tutti i tipi di NFT.
[7] Vitalik Buterin, il papà di Ethereum, è cittadino canadese di origine russa.
[8] Ethereum non è solo la Blockchain più largamente utilizzata per gli NFT: è anche la preferita per gli NFT che rappresentano importanti opere d’arte, e collezioni di immagini di pregio elevato.
UniGreen rappresenta un’opzione in più che UniLedger offre alle università, e su loro decisione anche agli utenti: l’utilizzo di UniGreen è assolutamente facoltativo.
Cos’è UniGreen
UniGreen è il wallet proprietario di UniLedger, destinato a custodire le chiavi crittografiche degli NFT-certificato presenti sul suo Registro Blockchain.
UniGreen è stato creato per gestire gli NFT nativi UniLedger[1], garantendone il possesso in totale sicurezza, massimizzando le prestazioni nel loro utilizzo.
UniGreen è per molti versi simile agli Ethereum wallet, con i quali condivide i medesimi algoritmi crittografici.
UniGreen vs. Ethereum wallet
Entrambi i sistemi prevedono:

[1] Oltre gli NFT nativi, a richiesta, l sistema UniLedger è in grado di minare NFT ERC-721 in Ethereum: per questi ultimi, viene ovviamente utilizzato un Ethereum wallet.
§1- Wallet, passaggi di proprietà e Blockchain, spiegati da favola[1]
D’istinto, lo affermerebbe chiunque: per fare la Blockchain, serve il computer.
Sì?! E chi l’ha detto?
Esiste un Popolo che pur non conoscendo l’elettricità, subito dopo il fuoco, ha scoperto Ethereum.
In realtà i Signori del racconto che segue non hanno scritto il White Paper di Vitalik Buterin[2], ma ci si sono avvicinati concettualmente…
In un’isola ancora vergine, vive tutt’ora una simpatica e bizzarra comunità di indigeni, primitivi ed estremamente pacifici.
Non avendo mai sprecato energie a preparare la guerra, il loro vivere associato ha generato solo buoni frutti.
Così i nostri amici hanno inventato un sistema monetario semplice, creativo ed efficace, che si narra abbia ispirato il Team che ha realizzato Ethereum.
Al centro del Villaggio di Fantàsia si erige una piazza circolare, dove sono disposti degli altari di varie dimensioni: ciascuno di questi rappresenta un certo valore in denaro, come una specie di moneta.
Ogni altare è dotato di un vano, costruito per alloggiarvici delle tavolette di pietra, in modo che queste possano essere sovrapposte una sull’altra in lunghissime colonne.
A ciascun individuo della comunità è attribuito un particolare colore, in una sfumatura lo distingue in modo univoco da tutti gli altri, identificando al contempo anche le tavolette di pietra che gli corrispondono, quale mezzo per contrassegnare la proprietà di ciascun altare/moneta: ogni qualvolta una tavoletta di pietra viene impilata sulla precedente, la proprietà dell’altare si trasferisce al soggetto da essa indicato.
Sebbene gli altari siano inamovibili, sotto gli occhi dell’intera comunità, la loro disponibilità viene continuamente scambiata fra le persone, che li utilizzano come catalizzatore dei negozi, in un’economia sorretta da quel sistema valutario.
Date le circostanze, a nessun indigeno verrebbe in mente di portarsi a casa il proprio denaro: se non altro, sarebbe fatica sprecata!
Bisogna notare che per qualsiasi altare-moneta, il Villaggio può darsi ragione dell’intera sequenza dei passaggi di proprietà, espressi dal progressivo sovrapporsi delle tavolette: in questo modo, ogni unità di misura della ricchezza conserva un proprio curriculum vitae.
Individualmente, gli abitanti dell’isola tengono traccia dell’alternarsi delle tavolette sulle colonne; quando si verifica una transazione, dopo l’approvazione generale, tutti aggiornano i propri appunti: di conseguenza, ogni tentativo di frode è reso vano dal confronto fra i singoli registri. E se qualcuno tentasse di barare, sarebbe esiliato dalla comunità.
Esattamente in questo modo funziona un token iscritto in un Registro Blockchain, che può cambiare infinite volte il suo proprietario, ma senza mai lasciare il suddetto Registro.
In altre parole, i passaggi di proprietà su Blockchain avvengono senza spostare alcunché, neppure in senso figurato, fra un wallet e l’altro.
I wallet non contengono nulla, se non chiavi crittografiche, che permettono di controllare i token di cui si ha legittima proprietà[3].
Inoltre, in Blockchain come nel Villaggio, agire scorrettamente sarebbe non solo inutile, ma controproducente: la Blockchain è un luogo dove i partecipanti si controllano a vicenda, e tale per cui l’interesse della collettività coincide con quello individuale, ossia del singolo individuo (nodo) a comportarsi onestamente.
Incredibile, vero? L’uomo ha inventato un mondo dove conviene, sempre e comunque, essere onesti!

§2 – Cos’è un wallet
In ambito Blockchain, con la parola wallet si indica il luogo fisico e/o digitale presso cui sono custodite le chiavi crittografiche.
In assenza delle chiavi crittografiche, in particolare della chiave privata, non è possibile disporre dei propri token (NFT, criptovalute ecc.).
Detto altrimenti, solo grazie alle chiavi crittografiche si configura il possesso dei beni in Blockchain, ossia quella situazione di fatto che ne consente l’uso: ad esempio per pagare un servizio in criptovalute, o per donare un collezionabile.
Si tenga a mente che i token Ethereum-based non sono semplici file, come un .pdf o un .jpeg, ma veri e propri mini-software. In quanto tali e a certe condizioni, questi token sono programmati per rispondere a eventi, e generarne di nuovi.
Wallet è un termine che semplifica, ma può anche fuorviare.
Si consideri il wallet digitale come metafora del portafogli analogico, quello di pelle o tela che tutti conosciamo. Fra le due fattispecie, il comun denominatore è la funzione di raccogliere in sé una qualche forma di valore: nel caso del wallet, tale valore non è rappresentato –in senso diretto- dai beni solitamente racchiusi nel portafogli fisico, come denaro e documenti; il wallet custodisce piuttosto dei codici, che permettono di controllare l’equivalente digitale del denaro e dei documenti[4], propri invece -questi ultimi- del mondo materiale.
Nel corso della loro vita, i token passano di mano indefinite volte, ma senza mai lasciare il Registro di appartenenza.
Persino quando viene effettuato il c.d. burning ( = la distruzione di un token), nulla viene in realtà cancellato dal Registro Blockchain: tutto ciò che si verifica è spesso un passaggio di stato, ossia l’attribuzione del token a un wallet privo di chiave privata, con il risultato che non sarà mai più possibile disporne[5].
Ogni qualvolta Tizio trasferisce a Caio la proprietà di un token Ethereum-based –mettiamo il Token A– egli invoca una funzione che si chiama Transfer[6]: possedendo la chiave privata a cui il Token A risponde, Tizio dispone che da quel momento in poi, detto token risponderà alla chiave privata di Caio.
Risultato: d’ora in avanti solo Caio (non più Tizio!) possiederà il Token A, ovvero potrà invocarne la funzione Transfer, per esempio allo scopo di cederlo a Sempronio.
Domanda: come fa Tizio a identificare il wallet di Caio?
Risposta: tramite l’indirizzo pubblico, che viene a sua volta derivato dalla chiave pubblica[7], essendo quest’ultima generata a partire dalla chiave privata.
Non è in nessun caso possibile, tramite la chiave pubblica (visibile a chiunque), risalire alla chiave privata corrispondente. Questo perché la chiave pubblica si ricava –come stringa di testo a 512 Bit– applicando a quella privata una funzione ellittica unidirezionale, una via non percorribile a ritroso.
Se vi fosse un modo per invertire l’algoritmo crittografico utilizzato per derivare la chiave pubblica, ECDSA in Ethereum, collasserebbe l’intero impianto della Blockchain corrispondente.
Il sistema crittografico utilizzato in Blockchain è tale da rientrare nella cosiddetta crittografia asimmetrica, ossia un sistema basato su due chiavi per ciascun soggetto: la chiave pubblica viene usata per codificare, è visibile da chiunque, che può avvalersene per inviare messaggi crittografati al proprietario del wallet corrispondente; la chiave privata serve invece per decodificare i messaggi criptati, ed è nota solo al destinatario del messaggio.
In breve, se Mario Rossi vuole inviare un messaggio criptato a Luca Verdi, utilizzerà la chiave pubblica di quest’ultimo per crittografarlo; a questo punto, il messaggio potrà essere decodificato esclusivamente tramite la chiave privata di Luca Verdi, senza che egli abbia mai il bisogno di condividerla con nessuno. Non deve, appunto, perché non ne ricaverebbe alcuna utilità (ma solo problemi).
Al netto di negligenze da parte di Luca Verdi[8], questo sistema esclude il rischio che terzi si approprino della sua chiave privata, decodificando così i messaggi criptati a lui destinati.
La c.d. crittografia simmetrica non esclude invece la tipologia di rischio di cui si è appena detto.
Tale sistema si basa non su due, ma su una sola chiave crittografica per soggetto, che per criptare un messaggio deve necessariamente essere comunicata allo scrivente.
Proprio qui risiede il principale vulnus della crittografia basata su una sola chiave, che la rende inutilizzabile in ambito Blockchain: all’interno del canale comunicativo, fra mittente e (legittimo) ricevente, la chiave crittografica può essere intercettata da terzi non autorizzati.
Non solo. Come si è visto, in Blockchain, la conoscenza della chiave privata permette pieno possesso dei token che a essa rispondono; se le diverse funzioni non venissero ripartite fra una coppia di chiavi crittografiche, caratteristica fondamentale della crittografia asimmetrica, la conoscenza dell’unica chiave da parte di terzi comprometterebbe irreversibilmente la sicurezza del wallet: anche nel caso in cui la chiave venisse comunicata volontariamente, consapevolmente e per ragioni legittime, tale azione equivarrebbe a consegnare ad altri le chiavi di casa propria… e spesso anche un assegno in bianco, l’identità personale e la firma digitale.
Per riassumere, la logica della crittografia asimmetrica è la seguente: chiunque può vedere “la serratura” (ossia la chiave pubblica) della porta di un appartamento, senza che ciò comporti il minimo rischio in termini di sicurezza (infatti in Blockchain, a differenza di quanto accade nel mondo materiale, non esiste la possibilità di forzare “una serratura”, ossia di aprirla senza la chiave privata); solo il legittimo proprietario possiede la chiave privata che apre “la serratura” dell’appartamento/wallet.

§3 – Tipi di wallet
Abbiamo visto che il wallet è un costrutto informatico, talvolta anche fisico, deputato alla custodia delle chiavi crittografiche.
Esistono diversi tipi di wallet, classificabili secondo molteplici prospettive.
Iniziamo ragionando proprio sulla custodia delle chiavi crittografiche, di cui si è appena detto, da parte di chi e con quali conseguenze.
Non-custodial sono i wallet nella piena disponibilità del singolo utente, che ne è anche l’unico vero proprietario: ciò implica il controllo esclusivo delle chiavi crittografiche, in particolare di quella privata.
Per quanto attiene i custodial wallet, si tratta di portafogli che non appartengono realmente all’individuo che ne fa uso; essi vengono prestati da un provider, che ne concede l’utilizzo a terzi, senza conferire la chiave privata.
È il caso dei wallet che gli Exchanger mettono a disposizione dei propri clienti, per la detenzione delle criptovalute.
In generale, è buona regola gestire i propri token tramite non-custodial wallet. Soprattutto se essi hanno valore pecuniario, in modo da scongiurare il rischio che possano andare perduti, ad esempio se fallisce l’Exchanger presso cui si è titolari di un conto criptovalutario.
Un’altra distinzione riguarda, per dirla con leggerezza (anche se l’argomento è tutt’altro che leggero), “la temperatura”: da un lato i cold wallet, dall’altro le controparti più “calde”, gli hot wallet.
“Freddi” sono i wallet le cui chiavi crittografiche sono detenute offline, il che li rende molto più sicuri rispetto agli hot wallet; questi ultimi comportano invece la registrazione online della chiave privata, ne consegue una maggiore vulnerabilità degli stessi.
La linea di confine fra le due tipologie non è sempre netta, talvolta è sfumata e dipende dall’utilizzo che si fa del wallet, piuttosto che dalla sua natura specifica.
È per esempio il caso di MEW (MyEtherWallet), che può funzionare in entrambi i sensi, a seconda che si decida di sbloccarlo inserendo le credenziali direttamente su Sito Web, oppure vi si acceda sfruttando un dispositivo hardware, evitando di esporne online la chiave privata.
Una cosa è certa: tutti i wallet fisici sono anche cold wallet, almeno finché l’utente (scriteriato)[9] non si arrischi a digitarne online la chiave privata.
A essere rigorosi, nel momento in cui la chiave privata compare online anche una sola volta, qualunque wallet -per quanto “freddo”- si converte per sempre in un hot wallet.
Rispetto alla fisicità, si distinguono i wallet digitali e gli hardware wallet.
L’uso di un hardware wallet implica sempre la presenza di un wallet digitale, sia esso costituito dal software proprietario del dispositivo fisico, piuttosto che da un portafoglio rilasciato da terze parti e associato al device su decisione dell’utente.
In ogni caso, gli hardware wallet nascono per portare ai massimi livelli la sicurezza -già molto elevata, se l’uso è corretto- dei corrispettivi digitali.
La forza degli hardware wallet risiede nell’impedire che la chiave privata venga esposta sul PC/Notebook/Tablet/Smartphone attraverso cui si sta operando: la chiave privata non lascia mai il dispositivo fisico, che consente di firmare le transazioni senza renderla nota.
In caso di rottura o smarrimento del dispositivo, gli hardware wallet prevedono un sistema per ripristinarne un clone su un nuovo supporto fisico.
Normalmente il recupero dell’account si basa su combinazione sequenziale di 12/24 parole, detta seed phrase, che l’utente deve conservare in un luogo sicuro. Per esempio incidendola su lastra metallica (va molto di moda), da riporre in cassaforte; mai salvare seed phrase e/o chiavi private su PC.
Di regola gli hardware wallet sono dotati di credenziali di accesso, da digitare all’accensione, come un PIN o una password.
In alcuni casi, dopo un numero di tentativi di immissione falliti, i dati sul dispositivo vengono cancellati e possono essere ripristinati solo tramite seed phrase.
Tutte le Blockchain del Gruppo UniLedger prevedono l’uso, non obbligatorio ma vivamente consigliato, dei migliori hardware wallet oggi disponibili sul mercato.
Se ne possono acquistare di molto validi per poco più di 50,00 €. I modelli più semplici assomigliano a una pen drive, da connettere con un cavetto a PC e smartphone; altri ricordano un cellulare dei primi anni Duemila, anche per dimensioni, e sono dotati di un display più grande rispetto ai loro fratelli minori.
Il prezzo di vendita è influenzato dalla capienza del dispositivo, che (repetita iuvant) non serve a memorizzare token, ma applicazioni installate.
In fase di acquisto, è buona regola servirsi dei Siti ufficiali dei produttori, mai di canali di vendita secondari[10]: ciò per evitare di ricevere dispositivi manomessi, contingenza da non trascurare assolutamente. Le case madri conoscono bene il problema e si avvalgono di corrieri di fiducia.
E’ importante mantenere sempre aggiornati i software e i firmware, le cui versioni successive vengono sistematicamente rilasciate dai produttori.
Un ultimo suggerimento.
Si presti religiosa attenzione alla correttezza di indirizzi Web e link utilizzati per scaricare e/o interagire con i wallet; più in generale, prima di collegarvisi, si controllino attentamente gli indirizzi relativi a qualunque applicazione per operare su Blockchain.
È sempre necessario assicurarsi di non digitare o cliccare su indirizzi simili a quelli desiderati, perché potrebbero portare a Siti Web creati da hacker, al fine di sottrarre i token ai malcapitati.
Per evitare attacchi di phishing, è sufficiente adoperare indirizzi Web forniti da canali sicuri, come le Piattaforme del Gruppo UniLedger.
Gli antivirus tendono a offrire un servizio di verifica dell’originalità dei Siti Web, di norma contrassegnandoli con un segno di spunta, apposto accanto ai risultati dei motori di ricerca.
§4 – Ethereum wallet
Sono i wallet progettati per interagire con Ethereum e le Blockchain che fanno parte del suo ecosistema, essendo Ethereum una Blockchain pubblica, permissionless e open source, il cui codice sorgente è liberamente consultabile, modificabile e utilizzabile da chiunque.
Esistono diversi wallet compatibili con gli standard di Ethereum, disponibili come estensioni dei principali Browser e/o come applicazioni per Android e iOS, le cui chiavi crittografiche possono essere create e salvate istantaneamente, con vari sistemi; sono generalmente gratuiti e associabili a dispositivi fisici.
In altri casi, i wallet Ethereum possono presentarsi come applicazioni proprietarie di hardware wallet, da scaricare e installare senza costi aggiuntivi.

Ecco alcuni fra i più noti wallet compatibili con Ethereum: MyEtherWallet (www.myetherwallet.com), Metamask (www.metamask.io), Eidoo (www.eidoo.io), Opera Crypto Wallet (https://help.opera.com/en/touch/crypto-wallet/).
I wallet Ethereum prevedono tutti la generazione casuale della chiave privata; a partire da quest’ultima, attraverso un algoritmo di crittografia ellittica detto ECDSA, viene generata una chiave pubblica con codice a 512 bit; dalla chiave pubblica cifrata tramite algoritmo di hashing, si deriva l’indirizzo del wallet.
§5 – Metamask
Per certi versi si può considerare un normale Ethereum (hot) wallet digitale, ma è molto di più.
Per diffusione, utilità e stabilità, Metamask merita una breve trattazione a parte. Esso si presenta come un’estensione per i principali Browser oggi in circolazione, si installa in pochi istanti ed è completamente gratuito.
L’associazione più gettonata è senza dubbio con Google Chrome, con il quale Metamask offre le migliori prestazioni; funziona discretamente anche con Modzilla Firefox, oltre che con il Browser 3.0 Brave, particolarmente amato dagli utenti Blockchain.

Metamask consente di interagire con diverse Blockchain, prima fra tutte quella di Ethereum: fra gli altri, supporta quindi i token ERC-20 ed ERC-721, che sono rispettivamente gli standard fungibile e non-fungibile di Ethereum.
Metamask è probabilmente il plug-in per Browser più largamente utilizzato per interagire con le dAPP, ovvero le applicazioni decentralizzate.
Consente sia di generare degli account nativi con relative chiavi crittografiche, sia di importare wallet di terze parti, compresi quelli legati a dispositivi fisici.
Come per qualsiasi altro wallet digitale, il miglior modo per utilizzare Metamask è in associazione a un hardware wallet.
Metamask è uno strumento affidabile anche se utilizzato su smartphone, soprattutto se accoppiato con wallet fisico. Particolarmente valida in tal senso, è la combinazione Metamask-Ledger Nano S o Plus.
Poiché le Blockchain del Gruppo UniLedger prevedono tutte l’uso di Metamask, le relative Piattaforme integrano video-tutorial per sfruttarne appieno le potenzialità.
§6 – Wallet come identità di persone fisiche
Sempre più frequentemente, il wallet sarà chiamato a gestire (anche ma non solo) quei token che raccontano chi siamo, testimoniando le nostre identità e i traguardi che abbiamo raggiunto nel corso della vita: ne sono un esempio i certificati di laurea in NFT (Non Fungible Token), come gli attestati di competenze professionali, o i corsi di formazione obbligatoria previsti dagli Ordini professionali, piuttosto che PoAP (Proof of Attendance Protocol) che dimostrino la nostra presenza a determinati eventi.
In un mondo che si sta evolvendo verso il Paradigma 3.0 del Web, sarà sempre più frequente accedere a determinati servizi grazie al possesso di un NFT, assicurato dal proprio wallet, fino al giorno in cui questo modus operandi diventerà la regola.
Allora, in forza dell’inoppugnabilità e dell’impossibilità di falsificare informazioni e documenti registrati in Blockchain, diventerà normale utilizzare il proprio wallet per firmare un contratto, o iscriversi a un corso universitario di secondo livello, che presupporrà il possesso di un NFT attestante il conseguimento della laurea del livello precedente.
Il wallet diventerà il mezzo per gestire e/o dimostrare la propria storia clinica, le lettere di presentazione rilasciate dal precedente datore di lavoro, i contratti fideiussori di cui si è contraenti o beneficiari, la carta d’identità, il passaporto e la propria fedina penale: il tutto nell’assoluta assenza di falsi documentali, perché in Blockchain non ne esistono.

Approfondimenti/vedi anche: UniLedger ed Ethereum; Dietro le quinte di UniGreen – il wallet proprietario di UniLedger.
[1] Il presente articolo ha lo scopo di offrire alcuni spunti per comprendere, a grandi linee, cosa sia un wallet Blockchain.
Non s’intende fornire una trattazione esaustiva in materia, perché ciò richiederebbe la scrittura di interi volumi, alcuni destinati a un pubblico altamente specializzato.
In questa sede non si impartiscono linee guida per scegliere e/o utilizzare un wallet: ciò è oggetto dei corsi di formazione che Gruppo UniLedger eroga per i propri Clienti, come dei tutorial disponibili sulle nostre Piattaforme.
[2] Vitalik Buterin è il creatore di Ethereum.
[3] Come vedremo più avanti, in Ethereum possiamo considerare i token come dei mini-software: essi rispondono unicamente a chi detiene le chiavi crittografiche in grado di controllarli, ossia di attivarne le funzioni previste dai programmatori.
[4] In realtà il wallet digitale permette di possedere molto più che gli equivalenti digitali di denaro e documenti, rappresentati da criptovalute e NFT: praticamente non esistono limiti ai beni, siano essi materiali o nativamente digitali, che possono essere tokenizzati.
[5] Il burning di un token può essere previsto o meno in fase di programmazione, al verificarsi di certe condizioni, per diverse ragioni. In altri casi può avvenire in modo accidentale, per errore o negligenza da parte di chi possiede un token.
L’argomento burning è molto ampio e non viene affrontato in questa sede.
Ai fini del presente articolo, non sono necessari ulteriori approfondimenti.
[6] La funzione Transfer è solo un esempio fra le molteplici funzioni invocabili in un token, le quali vengono previste in fase di programmazione.
[7] Sull’argomento si fa spesso confusione. In molti confondono l’indirizzo e la chiave pubblica di un wallet, che non sono esattamente la stessa cosa: dalla chiave pubblica si ricava l’indirizzo.
[8] Ovvero se il proprietario del wallet custodisce correttamente la propria chiave privata, che mai -in nessun caso- deve essere resa nota a terzi: su tale presupposto si fonda la sicurezza della crittografia asimmetrica.
[9] La condizione qui descritta, per fini puramente didattici, rappresenta un paradosso: non avrebbe alcun senso digitare online la chiave privata custodita in un hardware wallet, semplicemente perché già disponibile all’attivazione del dispositivo.
[10] Si evitino ad esempio gli store online: Amazon, Ebay e simili, anche se il rivenditore porta il nome del produttore.
Rispetto al valore a essi attribuibile, pecuniario e non solo, i token si dividono in tre macro-categorie: fungibili, non fungibili, semi-fungibili.
§1.1 – I token fungibili
Fungibili sono i beni perfettamente intercambiabili con altri dello stesso tipo, con cui condividono identiche caratteristiche, dunque valore.
Si pensi alle banconote da 20,00 €: pur differendo in parametri come il numero di serie o l’anno di emissione, l’una vale esattamente quanto qualsiasi altra. Qualunque banconota venga utilizzata in pagamento, nulla cambia, perché il denaro è un bene fungibile.
Per i token fungibili, quali sono gli asset nativi di una Blockchain (es. la criptovaluta Ether nella Blockchain Ethereum), vale lo stesso discorso.
1 Ether varrà sempre quanto un altro qualsiasi Ether, indipendentemente dai parametri che identificano lo specifico token, e dal curriculum vitae che ciascuno porta con sé[1].
I token fungibili sono uniformi, interscambiabili e divisibili in sottomultipli.
In Ethereum, lo standard che identifica i token fungibili si chiama ERC-20.
§1.2 – La denominazione ERC e gli standard di Ethereum
ERC è acronimo di Ethereum Request for Comments.
In Ethereum, le lettere ERC precedono sempre un trattino tipo “-”, che a sua volta segue un numero: con la stringa “ERC-[numero]”, si indicano gli standard vigenti nella Blockchain Ethereum.
Gli standard sono fondamentali per definire delle interfacce di base, con cui i token si presentano ai programmatori: ciò agevola non poco il lavoro di questi ultimi, semplificando e velocizzando lo sviluppo della Blockchain.
Quando uno standard è in approvazione, quindi in fase di proposta da parte di alcuni membri della Community di Ethereum, si utilizza la sigla “EIP-[numero]”, che sta per Ethereum Improvement Proposal.
Anche il recente standard ERC-998 -in realtà un’estensione, che permette agli NFT ERC-721 di possedere altri token, fungibili e non- è nato come EIP-998.
§2 – I token non fungibili (gli NFT – Non Fungible Token)
Non fungibili sono quei beni dotati di caratteristiche di unicità, tali per cui ciascuno di essi è diverso, non sostituibile, non intercambiabile con qualsivoglia altro bene.
Se fungibili sono una banconota da 20,00 €, o 1 Ether, non fungibili sono un quadro d’autore, piuttosto che la carta d’identità di un individuo o la sua pergamena di laurea; il concetto di non fungibilità vale tanto nel mondo fisico, quanto per opere d’arte e documenti emessi in forma di NFT; sia che tali NFT costituiscano il bene originale -nativamente digitale, presente solo in questa forma-, sia che essi rappresentino la legatura digitale di un bene materiale, ovvero il diritto di proprietà digitalizzato su un asset fisico.
Un’altra caratteristica propria degli NFT, come delle rispettive controparti materiali, è l’indivisibilità: un bene/token non fungibile non può essere frazionato.
Ovviamente, l’indivisibilità di beni/token non fungibili vale al netto di soluzioni che ne frammentino i diritti di proprietà (non potendone distribuire il possesso fra più soggetti): pur essendo ad esempio indivisibile un quadro, se ne può commercializzare in quote la proprietà, anche utilizzando soluzioni Blockchain.
Se la Blockchain è (fra le altre cose) un sistema matematico-informatico per ricreare scarsità nel mondo digitale, i token non fungibili ne sono in tal senso l’applicazione più rappresentativa.
In sintesi, un NFT è un token unico in senso stretto, non divisibile, che non può essere confuso con nessun altro token, file o costrutto digitale: un NFT non può essere falsificato, replicato e neppure imitato.
Le proprietà degli NFT sono dovute a quelle della Blockchain 2.0, senza le quali non sarebbe nata l’economia multi-miliardaria degli NFT dell’arte digitale.
Se la tecnologia Ethereum fosse hackerabile, e le sue funzioni crittografiche invertibili, sarebbe già crollato un comparto che fra NFT e criptovalute vale trilioni di Dollari: al contrario, forti delle garanzie del sistema Ethereum, si continuano a investire capitali negli NFT.
In Ethereum, lo standard non-fungibile -nel senso che definisce unicamente token non-fungibili– è denominato ERC-721.
Come la controparte fungibile ERC-20, rappresenta un’interfaccia per i token della sua tipologia, definendone fra l’altro funzioni invocabili ed eventi di base.
UniLedger applica alla documentazione universitaria la tecnologia e le logiche Ethereum, iscrivendo su Registro Blockchain proprietario dei certificati impossibili da falsificare, inoppugnabili proprio perché in forma di NFT.
§3 – I token semi-fungibili
I token semi-fungibili hanno caratteristiche differenti a seconda delle fasi della loro vita: si comportano come fungibili a partire dalla loro creazione, fino a data prestabilita; da quel momento in poi, si convertono in token non fungibili a tutti gli effetti.
Un esempio di token semi-fungibili sono alcune collezioni di figurine digitali vendute su marketplace, di solito generate in 5-10.000 pezzi, che solo a una certa data vengono – come si dice in gergo – rivelate.
Fino al reveal, le figurine appaiono “coperte”, se ne vede solo “il retro” comune a tutte: a tali condizioni, un token vale l’altro, c’è piena interscambiabilità; dopo il reveal, ciascuna figurina assume tratti e valore propri, diversificandosi dalle altre[2]: a quel punto, i token perdono le caratteristiche di fungibilità, per diventare veri e propri NFT.
In Ethereum, i token semi-fungibili non hanno uno standard proprio.
Le collezioni di NFT vengono di norma generate con un terzo standard, quello dedicato ai token multipli: ERC-1155.
ERC-1155 rappresenta l’interfaccia di base degli smart contract capaci di gestire un’intera collezione di token, con pezzi in quantità indefinita, anche in combinazioni multiple di fungibili (ERC-20), non fungibili (ERC-721) e/o semi-fungibili.
In primo luogo, far derivare una molteplicità di token da un solo smart contract creatore, consente un notevole risparmio sui costi di generazione.
Lo smart contract ERC-1155 funziona come una sorta di album fotografico.
Distinguiamo il supporto contenitore dalle fotografie in esso contenute: il primo, ovvero lo smart contract ERC-1155, genera e firma digitalmente i token[3] che sono parte della collezione; viceversa, tale firma digitale indica in ciascun token l’appartenenza alla medesima collezione, mantenendo sempre intatto questo legame.
Vedi anche: UniLedger ed Ethereum; Doppio Registro Diffuso.
[1] Le criptovalute sono beni digitali fungibili, che tuttavia si distinguono in base alla storia individuale, di cui ciascun token tiene traccia indelebile: dal blocco di generazione, fino all’ultimo wallet proprietario, ogni transazione è registrata.
[2] Trattasi di un fenomeno ben noto a chi conosce il mercato dell’arte digitale. All’interno di una collezione di figurine in NFT, si trovano soggetti tutti diversi fra loro, ciascuno con un proprio valore; il prezzo di mercato è di solito determinato dalla rarità dei tratti individuali.
[3] Nel caso delle collezioni di NFT su Ethereum, se lo smart contract creatore è di tipo ERC-1155, i token generati sono tendenzialmente di standard ERC-721.
UniLedger scrive sempre Blockchain, con la B maiuscola: si tratti della Blockchain di Bitcoin, o meno.
Anche con riferimento alla tecnologia Blockchain, usiamo l’iniziale maiuscola.
Lo Staff ne ha discusso a lungo, prima di convenire su un accordo di larghe intese.
Si vuole qui condividere un punto di vista, soggettivo e ragionato, alla base di una scelta di stile; una posizione che a pensarci bene, non fa torto a nessuno.
Per larga parte si utilizza oggi l’iniziale maiuscola per indicare la Blockchain di Bitcoin, chiamando blockchain – con la b minuscola -tutte le altre, oltre alla tecnologia in generale.
La ratio di tale scelta risiederebbe nel fatto che Bitcoin sia la Blockchain (qui sulla maiuscola siamo tutti d’accordo) originale.
Vero. Bitcoin è l’originale nell’accezione di Blockchain delle origini, in ordine cronologico, la prima ad aver visto la luce nel 2009. Se non fosse nata Bitcoin – ovvero il Bitcoin –forse nessuno avrebbe applicato questo nuovo protocollo alla consolidata tecnologia DLT, varcando così la soglia di un universo da esplorare.
Tuttavia, il termine originale non deve fuorviare: esso non può intendersi nel senso di per eccellenza, come se tutte le altre Blockchain fossero un’imitazione di Bitcoin, una semplice copia. In molti casi, non è assolutamente così.
Sistemi come Ethereum, e altri più o meno vicini a esso, sono in realtà evoluzioni di Bitcoin.
Ethereum nasce nel 2015 come prima Blockchain programmabile, molto più di un sistema matematico-informatico per generare scarsità (quindi valore e profitto) nel digitale.
Se i token di Ethereum possono contenere dei codici eseguibili, essendo dei mini-software a tutti gli effetti, il Registro di Bitcoin consente sostanzialmente di prendere appunti.
Il salto quantico è evidente, il gap insanabile.
Bitcoin è e rimane la Blockchain 1.0, anche definita Internet of Value.
A partire dal Livello 1.0, il settore ha proseguito sulla via dello sviluppo, lasciando indietro Bitcoin[1].
L’avanzamento tecnologico ha portato le Blockchain a stratificarsi su due livelli successivi: Blockchain 2.0, o Internet of Smart Contracts, dove l’avvento del Distributed Computing ha determinato la nascita dei token nel senso pieno del termine, del concetto di smart contract e dei timestamp; con Blockchain 3.0, o Decentralized Internet, hanno preso infine forma le dAPP e le DAO.
Bitcoin funziona con logiche superate anche sotto il profilo dell’energia necessaria ad alimentarne il meccanismo di consenso distribuito (Proof of Work), senza voler entrare in considerazioni/speculazioni di carattere ecologico.
Rispetto alla Proof of Work (PoW) di Bitcoin, la Proof of Stake (PoS) di Ethereum consuma oltre il 99% di energia in meno.
Va puntualizzato che (almeno per ora) Bitcoin detiene la dominance in termini di capitalizzazione, ovvero raccoglie più denaro di qualsiasi altra Blockchain; ma questo è un fatto puramente finanziario, di riserva di valore, nulla a che vedere con la tecnologia sottostante.
Per le ragioni sopra argomentate, riteniamo incongrua l’iniziale minuscola per protocolli (Ethereum, Blockchain Ethereum-based e altri) che sebbene posteriori, sono oggettivamente più avanzati di Bitcoin.
L’evoluzione successiva a Bitcoin ha avuto luogo grazie a Ethereum, che ad oggi rappresenta la Blockchain più avanzata, oltre a poter vantare il miglior compromesso fra tecnologia e processo di maturazione.
Abbiamo fin qui spiegato l’uso dell’iniziale maiuscola per Blockchain specifiche, diverse da Bitcoin ma dotate di nome proprio, a partire da Ethereum.
Nel caso della tecnologia Blockchain in generale, usiamo la maiuscola per pura scelta di gusto, per ragioni di uniformità nella scrittura, di equilibrio grafico.
La Blockchain esiste da ben oltre un decennio, durante il quale ha avuto modo di nascere, crescere e raggiungere non il limite evolutivo, ma certo l’età adulta.
In tale arco di tempo, non si è verificata l’adesione di massa che inevitabilmente dovrà avvenire.
Presto il mondo girerà su Blockchain, allora tutti ne parleranno. E siccome la lingua è un fatto di consuetudini, prima che di regole imposte dall’alto, allora ne sapremo di più: cosa ne sarà di quel lessico, e di quel gergo, di quello slang oggi nelle corde di pochi?
Quali parole resteranno nel vocabolario Blockchain, quali saranno coniate, modificate, tradotte, diverranno logore, cadranno in disuso? Quali saranno scritte con l’iniziale maiuscola o minuscola? La storia insegna. Se consideriamo i casi di Internet e Web, dove c’è sostanziale accordo sull’uso dell’iniziale maiuscola, nessuno scriverebbe Web 1.0 in contrapposizione a web 2.0 e web 3.0; la maiuscola si usa anche quando si intende il Web in senso generico, e spesso (ma non per regola, almeno in italiano) nell’accezione della tecnologia corrispondente.
Perché non dovrebbero valere le stesse considerazioni anche per la Blockchain 1.0 (Bitcoin) di fronte a tutte le altre, oltre che per il sostantivo generico e la tecnologia Blockchain?
Vedremo.
Per approfondire: Introduzione alla Blockchain; Token vs. smart contract, una questione linguistica.
[1] Ciò non vuol dire che la Blockchain di Bitcoin non venga aggiornata, ma certo è un sistema strutturato secondo logiche ormai superate.
Gli smart contract sono sostanzialmente dei mini-software, dotati di un piccolo database interno, capaci di eseguire delle istruzioni scritte in un determinato linguaggio di programmazione.
In quanto programmi a tutti gli effetti, gli smart contract rispondono a eventi predeterminati, generandone di nuovi.
Ethereum e derivazioni rappresentano quindi non un mero registro su cui prendere appunti, come il predecessore Bitcoin, ma un registro su cui vengono scritti dei codici eseguibili.
Per essere eseguiti, gli smart contract necessitano di un Runtime Environment, ossia di un ambiente di esecuzione[1]. Altrimenti non funzionerebbero.
Il Runtime Environment rappresenta a sua volta un software, che possiamo considerare di livello sottostante rispetto agli smart contract; in pratica, esso fornisce dei servizi di esecuzione del programma, quali: input-output, generazione di eventi, elaborazione degli errori di calcolo, utilizzo dei servizi del sistema operativo ecc.
Il Runtime Environment non consente di programmare e sviluppare delle applicazioni, perché a ciò sono deputati i software di sviluppo: il primo ha la sola funzione di eseguire le applicazioni.
L’ambiente di esecuzione è sostanzialmente una macchina virtuale (Virtual Machine) che esegue il codice oggetto, rendendo quindi disponibile al processore il codice nativo, il quale è a sua volta direttamente eseguibile dal processore stesso.
Nell’ecosistema Ethereum, il Runtime Environment è costituito dalla EVM, acronimo di Ethereum Virtual Machine.
La EVM è quindi il motore primo, il cuore di Ethereum, in quando permette agli sviluppatori di progettare gli smart contract che girano su EVM, che per l’appunto è il loro ambiente di esecuzione e sviluppo.
Gli smart contract di Ethereum possono essere scritti –fondamentalmente- in tre linguaggi di programmazione:
Sia l’ambiente di esecuzione, che il linguaggio di programmazione utilizzato per gli smart contract di UniLedger, sono molto simili ai corrispettivi di Ethereum.
Vedi anche: NFT, possesso e proprietà; Ecosistema UniLedger.
[1] Non si confonda il Runtime Environment con il runtime, con la l’iniziale minuscola e senza la parola Environment, che rappresenta il tempo di esecuzione di un programma.
Notarizzazione è un termine che nel gergo Blockchain viene utilizzato come sinonimo di data-certazione di un token, si tratti di bene digitale esso stesso, piuttosto che del diritto di proprietà su un bene digitale o fisico.
La notarizzazione comprende in sé due elementi: il timestamp e la firma digitale del soggetto responsabile di generare il token, ossia di colui che in ultima istanza garantisce la genuinità dei dati.
Il timestamp è una marca temporale -che comprende in sé data, ora, minuti e secondi- generata da uno smart contract, e in qualche modo associata all’immagine digitale del documento tokenizzato, ovvero al nostro NFT.
Esistono diversi metodi per creare un timestamp e soprattutto associarlo a un NFT.
Una soluzione -largamente utilizzata in Ethereum- consiste nel generare il timestamp con uno smart contract separato dallo smart contract creatore dell’NFT, passando al primo l’immagine tokenizzata da associare all’NFT stesso; ottenuta quindi l’immagine tokenizzata con timestamp associato, in pratica un HASH del documento dotato di prova di timestamp, il tutto viene inviato come input allo smart contract creatore, che genera l’NFT.
Al di là del metodo scelto per generare il timestamp, ciò che realmente conta sono la sua genuinità –il che implica una misurazione del tempo[1] tramite fonte affidabile- e il presupposto che la marcatura temporale venga registrata on-chain, tramite la scrittura di un blocco su registro indelebile.
In UniLedger sono rigorosamente soddisfatte entrambe le condizioni.
Il rilascio della firma digitale associata a un NFT, registrata anch’essa in un blocco non più modificabile, è il risultato dell’interazione fra: 1) lo smart contract creatore; 2) il soggetto che scrive il blocco, ovvero genera l’NFT, essendo tale soggetto debitamente autenticato all’interno dell’ecosistema Blockchain di riferimento.
Un determinato soggetto può essere identificato con un Administration Id, piuttosto che con il proprio wallet: nei sistemi UniLedger sono possibili entrambe le soluzioni, ma viene di default adottata la prima, in quanto elimina qualunque rischio legato alle transazioni di stato degli NFT (l’invocazione della funzione transfer).
Vedi anche: NFT, possesso e proprietà; Introduzione alla Blockchain; Fungibile, non-fungibile, semi-fungibile.
[1] Fra l’altro, il timestamp è misurabile non solo come tempo “umano”, ma anche in termini di blocchi in successione.
La Blockchain UniLedger è stata progettata sulla base della tecnologia Ethereum, il cui codice sorgente è open source, seguendo le logiche proprie di tale sistema.
Per creare UniLedger, i nostri ingegneri informatici hanno estratto da Ethereum prima di tutto un modo di pensare; ossia quella concezione di Blockchain programmabile, costruita intorno agli smart contract, che ha rivoluzionato l’intero settore; in secondo luogo abbiamo adottato/riadattato alcuni script, gli algoritmi crittografici e altri elementi propri della Chain più evoluta di sempre.
UniLedger è una Blockchain del tutto originale e privata, per ovvi motivi di tipo permissioned[1], concepita per essere un’implementazione di Ethereum nell’ottica di servire esclusivamente le università.
Poiché il codice sorgente di UniLedger rappresenta una rielaborazione costruita intorno a uno scopo preciso, non una copia di Ethereum, è scontato e necessario che vi siano anche delle differenze –in certi casi importanti- fra le due Blockchain.
Si pensi solo al fatto che nel Registro UniLedger vengono scritti dati fondamentalmente riservati, da parte di soggetti che devono essere debitamente autenticati e accreditati dal sistema (le università); l’accesso agli NFT-documento dev’essere regolato con la massima sicurezza e precisione, in primo luogo dagli atenei, poi dal lato degli studenti/laureati. Il codice sorgente di UniLedger, dunque, è stato scritto da principio e su un foglio bianco.
Il Runtime Environment di UniLedger permette di eseguirne gli smart contract in un ambiente dalla forte affinità rispetto alla EVM (Ethereum Virtual Machine), l’ambiente di esecuzione originale di Ethereum.
Il linguaggio di programmazione utilizzato per i nostri NFT permette logiche di funzionamento molto simili a quelle degli smart contract scritti in Solidity, il linguaggio di programmazione principalmente usato da Ethereum[2]: in conclusione, gli NFT di UniLedger hanno caratteristiche assimilabili agli smart contract ERC-721, lo standard non-fungible di Ethereum.
In quanto Blockchain Ethereum-based, UniLedger ha inoltre la capacità di scrivere direttamente sul Registro di Ethereum, utilizzando proprio lo standard NFT ERC-721.
Vedi anche: Cos’è una Blockchain; Ambienti di esecuzione e linguaggi di programmazione.
[1] Le ragioni di questa scelta sono state ampiamente chiarite in altre sezioni del Sito.
[2] Gli smart contract di Ethereum possono essere scritti –fondamentalmente- in tre linguaggi di programmazione: