smart contract in codice

Smart contract, il minimo da sapere

Tempo di lettura stimato: 7 minuti

Quando sono stati inventati gli smart contract?

Nel 1994, Nick Szabo ( un crittografo ), ebbe la stravagante idea di poter registrare un contratto sotto forma di codice informatico .

Questo contratto, nella visione di Szabo, sarebbe stato attivato automaticamente al verificarsi di determinate condizioni, senza necessità di intermediari.

Di fatto non sarebbe stata più necessaria ìuna terza parte fidata che effettuasse materialmente la transazione, si pensi, ad esempio, una banca .

Gli smart contract, infatti dovevano essere autoeseguiti su una rete affidabile completamente controllata dai computer.

Szabo ci lavorò per diversi anni finché, nel 1994, per l’appunto, se n’è uscì con un libro intitolato ” Contratti intelligenti: blocchi da costruzione per i mercati liberi digitali “.

Il problema era che nel 1994 la tecnologia blockchain, su cui attualmente “girano” gli smart contract, ancora non esisteva.

Qualche anno più tardi, non pochi a dire la verità, e precisamente nel 2009, Bitcoin lanciava il primo utilizzo della tecnologia blockchain.

E così nel 2015, ancora qualche anno dopo, un altro nerd, tale  Vitalik Buterin, una volta fondata Ethereum, metteva in circolazione i primi contratti intelligenti.

L’idea visionaria di Nick Szabo a questo punto si era realizzata.

Che cos’è uno smart contract?

Uno smart contract è un accordo tra due parti sotto forma di codice informatico.

Funziona sulla tecnologia blockchain, quindi è archiviato su un database pubblico e non può essere modificato.

Le transazioni che avvengono in uno smart contract vengono elaborate dalla blockchain automaticamente senza la mediazione di terze parti.

Le transazioni si concretizzano solo quando le condizioni dell’accordo sono soddisfatte.

Tutto chiaro?

No, non è ancora chiaro! Lo immaginavo.

Provo a fare un esempio con qualcosa che esiste in natura: il distributore automatico delle merendine.

Passaggio 1: inserisco le monete nel distributore automatico;

Passaggio 2: premo il pulsante corrispondente alla merce che desidero acquistare;

Passaggio 3: la merce rotola giù,  raccolgo la Fiesta.

Come si vede, il completamento di ogni fase innesca l’esecuzione della fase successiva, una sorta di effetto domino.

Ma  c’è un altro fattore da considerare che è parte integrante dello smart contract.

Durante l’interazione con il distributore automatico, io (avido consumatore di merendine) lavoro semplicemente con la macchina (fornitore). Non c’è assolutamente nessuna terza parte coinvolta.

Non crediate che ciò sia indifferente. Di certo non lo era per i titolari dei distributori automatici di videocassette se è vero che i film per adulti erano quelli più acquistati attraverso questo sistema.

Scherzi a parte, veniamo ora a qualche applicazione pratica di un vero smart contract.

Anche in questo caso ricorrerò a situazioni per così dire estreme, più facili da ricordare.

Allora,  immaginiamo che Flavio voglia comprare una delle ville in Sardegna di Silvio e che non abbia voglia di pagare il notaio, far intervenire la Banca etc. etc.

Questo accordo si potrebbe perfezionare in tutta tranquillità sulla piattaforma blockchain di Ethereum utilizzando uno smart contract.

Lo smart contract conterrà, infatti,  un accordo tra Flavio e Silvio.

Semplificando, l’accordo sarà simile a questo: ” QUANDO (If) Flavio pagherà a Silvio tot Ether, ALLORA (Then) Silvio cederà la proprietà della casa “. (Va bene, ho capito, “if” significa “se”, ma metteteci un po’ d’ironia!)

Una volta che questo smart contract è immesso sulla piattaforma blockchain, dalle nostre parti si dice “non ci sono più Santi nè Madonne!”, è stato messo in atto, non può essere modificato, il che significa che Flavio può sentirsi sicuro di pagare a Silvio tot Ether per il mega villone.

Senza l’uso di un contratto intelligente, in questo scenario, Flavio e Silvio dovrebbero pagare molte commissioni a società di terze parti. Tra cui ad esempio Banca Mediolanum, il Notaio, l’Avvocato Previti  e Tecnocasa.

Niente più commissioni e niente più ritardi nell’attesa che un avvocato e un intermediario elaborino l’accordo!

Smart Contract e Blockchain

Come si è detto all’inizio di quest’articolo, gli smart contract furono immaginati prima che fosse concepita la tecnologia su cui potevano “girare”

Questa tecnologia è la blockchain. Dunque, no, la Blockchain non è la giostra del settecento!

‎Una blockchain (catena di blocchi) è, invece, una rete decentralizzata composta da un elenco crescente di record (blocchi) collegati tramite crittografia.

Per decentralizzazione, si intende che i contratti non sono controllati da un Ente centrale ( come una banca, un broker o un governo, ecc.).

Una rete blockchain, pertanto, non prevede un singolo punto centrale come un database convenzionale.

Al contrario, i dati memorizzati nella blockchain, sono condivisi tra tutti i computer che compongono la rete. In tal modo la rete è meno esposta a possibili guasti o attacchi.‎

‎Inoltre, in una blockchain, un record presente su un computer non può essere modificato senza modificare lo stesso record sulle altre macchine in rete.

Le transazioni eseguite attraverso una blockchain, infatti, sono raggruppate in blocchi collegati in una catena. La catena, pertanto, procede come un “continuum”. Ogni volta che nella catena viene iscritta un’operazione, si chiude un blocco.

E così un nuovo blocco viene creato solo quando il blocco precedente è completato. I blocchi sono disponibili in un ordine cronologico lineare e ogni blocco contiene un hash crittografico del blocco precedente.‎ Senza entrare troppo nel dettaglio, questo sistema rende possibile l’immodificabilità della catena che, peraltro, è condivisa perché il registro della catena è distribuito tra i nodi della rete.

Conseguentemente il contratto, che è racchiuso in un blocco della catena, non è hacherabile: o meglio, l’hacker dovrebbe hackerare più della metà dei nodi se volesse attaccare la blockchain o gli smart contract che vi girano.

L’operazione, fidatevi!, costerebbe molto di più del mega villone di Silvio.

Come vengono firmati gli smart contract?

Gli smart contract sono firmati digitalmente, utilizzando chiavi private e possono essere decodificati solo dalla chiave pubblica condivisa dalle parti coinvolte.

Chiunque può rivedere, controllare e convalidare le transazioni perché, come si è detto, il registro è molto democraticamente distribuito sui nodi della rete.

In tal modo le transazioni su smart contract possono essere tracciate fin dal punto di origine e l’archiviazione avviene automaticamente, creando una cronologia completamente accessibile.

A cosa servono gli smart contract attualmente?

I contatti intelligenti possono essere utilizzati per qualsiasi tipo di transazione, non è necessario che sia finanziaria.

Le possibilità sono infinite.

Sono già utilizzati per operazioni e servizi finanziari , assicurazioni, autorizzazione al credito , processi legali e persino per accordi di crowdfunding ( ICO).

Esempi:

Compagnie di assicurazione: due compagnie assicurative, Atlas Insurance a Malta e Axa in Francia, nel 2017 avevano ideato e tradotto in codice informatico dei protocolli che compensavano i clienti delle compagnie aeree se i loro voli erano in ritardo.

Torniamo ad usare la fantasia:

Flavio sta per volare da New York a Los Angeles. Invia $ 5 di criptovaluta allo smart contract di Axa Insurance e fornisce il suo numero di volo. Axa, a sua volta, invia $ 95 allo smart contract. Quindi, ci sono $ 100 nello smart contract.

Se il volo di Flavio è in orario, ad Axa vengono inviati $ 100 dallo smart contract Ma se l’aereo è in ritardo, $ 100 vengono inviati a Flavio dallo smart contract. Tutto è automatico.

Ciò consente di risparmiare un sacco di tempo e denaro. Significa anche che Flavio non deve fidarsi che AXA gli pagherà l’importo concordato se il suo volo è in ritardo: sa che se è in ritardo, lo smart contract gli invierà immediatamente il suo risarcimento di $ 100 e per Flavio, si sa, questo fa una grande differenza.

Sistemi sanitari

I sistemi sanitari utilizzeranno contratti intelligenti per registrare e trasferire i dati in modo sicuro .

L’app Encrygen, per esempio, consente di monetizzare i propri dati sanitari.

I pazienti,  hanno, quindi, il pieno controllo dei propri dati, caricandoli sull’app.

Ma vi è di più! Se i ricercatori vogliono utilizzare i dati dei pazienti, devono pagare tali informazioni. Non solo, il paziente può scegliere se cedere o meno i propri dati. Per la serie, se vuoi i dati sanitari del Covid di Flavio, devi cacciare un “tot di grano”, ammesso e non concesso che Flavio, (if), sia disposto a venderti i suoi dati sanitari. Ne dubito!

Governi

Per i governi, gli smart contract che girano sulla blockchain possono rendere i sistemi di voto e  molto più sicuri .

Applicazioni come Followmyvote utilizzano gli smart contract e tecnologia blockchain per proteggere i voti dalle frodi .

Quando l’operazione di voto viene scritta sulla blockchain, la stessa non può essere più modificata. Al termine della votazione, lo smart contract, effettuato il conteggio, invierà un token a un indirizzo che rappresenta il vincitore del voto.

Immaginate il povero Trump in una situazione simile; niente più contestazioni di brogli, ma “the end”, si va a casa, passi lunghi e distesi; il tutto con grande sollievo dei senatori in Campidoglio.

Smart contract e  contenzioso giudiziario

Per questa applicazione pratica vi porto in Cina; lì, per certi versi, sono degli alieni. Ad ogni modo, vi troviamo le smart court.

Non solo Covid, dunque, ma nella città di Hangzhou, nel 2017, è stata istituita una sezione dedicata alla gestione delle controversie in materia di e-commerce, contratti online e violazioni del diritto d’autore su Internet.

Più recentemente lo stesso tribunale made in China, ha lanciato la sua piattaforma blockchain per le prove.

Potevamo non riportarvi le dichiarazioni del Dott. Wang Jiangqiao, vicepresidente esecutivo del predetto tribunale?

Sentite qua: “Nel caso dei contratti, dopo la firma di un contratto tradizionale, se una parte è inadempiente, l’altra parte impiegherà molto tempo e sforzi per raccogliere prove e salvaguardare i diritti, e il ciclo di protezione dei diritti è lungo e costoso. 

Uno smart contract consiste nel compilare i termini di un contratto in un codice informatico che viene eseguito automaticamente dopo che le parti della transazione hanno firmato“.

Sotto il profilo procedurale, in sede di presentazione degli smart contract davanti alla Corte, viene verificato il codice ed il processo elaborativo del software; all’esito, le prove conformi fanno ingresso in tribunale.

Il sistema processuale estrae automaticamente i punti critici del caso, individuando i documenti di riferimento, compreso il giudizio finale.

Il sistema collega quindi la fase della cognizione alla fase successiva dell’esecuzione semplicemente interfacciandosi automaticamente con le istituzioni pertinenti, come banche o proprietari di beni immobili e aggiunge la parte condannata in una black list. L’annotazione finale fa molto China, lo ammetto.

Vi pare brutto? Per uno che come il sottoscritto, la settimana scorsa, si è “sciroppato” un quinto accesso con l’ufficiale giudiziario prima di ottenere la liberazione di un immobile oggetto di sfratto, non direi proprio!

Già, perché persino l’esecuzione di uno sfratto potrebbe in un mondo “tipo Star Trek” essere gestita con uno smart contract.

E allora facciamolo! Ipotizziamo un contratto di locazione in versione smart contract. Nel codice prevediamo che il mancato pagamento di due rate di affitto determini il cambio della combinazione della serratura. Se (if) l’affittuario paga alle date stabilite, allora (then) la combinazione non cambia.

Viceversa se (if) l’affittuario non paga, il sistema, che registra tutti i pagamenti ed è via internet collegato alla porta dell’abitazione locata (internet of things), provvede a modificare la serratura.

Gestione aziendale

Allo stesso modo, tutta la gestione dei pagamenti del personale potrebbe essere gestita con gli smart contract. Bye, bye consulente del lavoro!

Le aziende potrebbero semplicemente impostare uno smart contract che dice “QUANDO la data è 27.03.21, l’azienda invia a Marco il suo stipendio.”

Ciò significa che Marco sarà sempre pagato in tempo e non sarà mai sottopagato.

Così il sottoscritto non verrà mai contattato da Marco per sollecitare il consulente del lavoro a predisporre la busta paga.

Chi è Marco? Esiste, il suo vero nome è un altro e per ovvie ragioni non posso svelarlo, però…sì… ci fosse stato uno smart contract in questi ultimi giorni, sarei stato un avvocato più felice.

Conclusioni

Ci sarà sempre un Flavio che comprerà un mega villone da un Silvio. Non altrettanto si può dire per il notaio di Flavio, per le Banche di Flavio e Silvio e per l’Agente Immobiliare.



Primo contatto
Chiamaci a questo numero: 0422-235703.