Smart contract e automazione contrattuale

di Maria Lillà Montagnani e Mirta Cavallo

Il presente articolo è un estratto di “L’industria finanziaria tra FinTech e TechFin: prime riflessioni su blockchain e smart contract”, pre-stampa Zanichelli, 2019.
Leggi anche:


Gli smart contract, come concepiti da Nick Szabo nel 1994, sonoprotocolli di transazione informatizzati che eseguono i termini di un contratto in modo automatico; in altre parole, sono accordi tradotti in codice informatico che sfruttano il sistema del registro decentralizzato – la blockchain – per la gestione di rapporti di scambio[1].

Uno smart contract non corrisponde quindi ad un contratto in termini giuridici, quanto, piuttosto al software (o protocollo informativo) sviluppato per l’esecuzione del contratto. In tal senso, uno smart contract è “programmato” in maniera tale da non necessitare altre regole se non quelle incorporate nel codice, ed è pertanto (auto)sufficiente. In sostanza, una volta che le particoncordano i termini e le condizioni del contratto, questi vengono riscritti sotto forma di codice e aggiunti come blocco nella blockchain, diventando così verificabili, immutabili e irrevocabili. Quando i termini preimpostati nell’accordo sono soddisfatti (secondo una logica “if-then”), lo smart contract si esegue automaticamente, tramite il trasferimento di token reciprocamente accettati dalle parti come parte dello scambio. Si può tuttavia programmare uno smart contract in maniera tale che tenga in considerazione anche una serie di input esterni, ad esempio il prezzo delle azioni oggetto di trasferimento. Il verificarsi o meno di tali condizioni deve però provenire da fonti certe che sono denominate “oracoli”, ossia ulteriori programmi, indipendenti dalla blockchain, che monitorano dati esterni al sistema come l’andamento di titoli azionari, la temperatura di un certo ambiente, etc.[2]. Ciò non vuol dire che l’oracolo abbia una funzione da intermediario, il processo di esecuzione dello smart contract è infatti completamente automatizzato, non essendo presente nessuna entità che valuti la validità e la liceità della transazione ai sensi dell’ordinamento giuridico[3].

Deriva dall’automatizzazione dell’esecuzione dello smart contract la sicurezza dell’adempimento dei contraenti. L’architettura blockchain è infatti concepita e realizzata in maniera tale da non lasciare alcun margine per violazioni volontarie delle condizioni stabilite. In questo modo la vincolatività dei termini dell’accordo deriva dal code layer in cui lo smart contract è eseguito, invece di essere radicata in una fonte normativa dell’ordinamento[4]. Si ritiene quindi che gli smart contract, nell’essere protocolli informatici programmati per ridurre o eliminare il rischio di inadempimento, realizzino uno spostamento nella pratica contrattuale dal giudizio autoritativo ex post – tipico dei contratti tradizionali – alla valutazione automatizzata ex ante[5].

Invero, la progettazione degli smart contract è stata teorizzata da Nick Szabo al finedi soddisfare condizioni contrattuali comuni (ad esempio, termini di pagamento, privilegi e riservatezza), minimizzando il rischio di inadempimento e riducendo al minimo la necessità di ricorrere ad intermediari fidati o a meccanismi di enforcement tradizionali[6]. Gli smart contract permettono inoltre di eliminare i costi eventualmente connessi all’individuazione di una controparte per la transazione, all’interpretazione della volontà negoziale, alla corretta esecuzione dell’accordo, a frodi e alla risoluzione delle controversie[7].

Già dalla sommaria descrizione ora operata emerge come, per quanto gli smart contract abbiano il potenziale per diventare strumenti di business fondamentali nel prossimo futuro, essi non manchino di presentare numerosi profili controversi[8]. Per quanto possano contribuire, per un verso, a snellire il processo di esecuzione, eliminando gli intermediari, riducendo i costi di transazione, semplificandone l’enforcement e rimuovendo la necessità di ricorrere all’autorità giudiziaria[9], per altro verso sono numerosi i dubbiche vengono sollevati circa la loro compatibilità con l’ordinamento giuridico vigente[10].

Da una parte vi è chi ritiene che le peculiarità tecniche degli smart contract siano tali da mettere in discussione la stessa teoria dei contratti[11]e rendano addirittura superfluo il sistema giuridico, dato che si sostituiscono al diritto nell’assicurare che le controparti contrattuali – tipicamente diffidenti l’una dell’altra – raggiungano un accordo reciprocamente vantaggioso, senza neppure entrare in contatto. Dall’altra parte non manca chi esclude categoricamente che gli smart contract possano essere considerati dei contratti oppure che possano ad essi sostituirsi[12], sostenendo che “smart contract are neither extremely smart nor contracts”[13]. Sicuramente condivisibile la posizione di chi ritiene che “nononostante il nome, gli smart contract non [siano] necessariamente contratti giuridicamente intesi (sebbene possano esserlo ove ne integrino i requisiti). [Siano], più semplicemente, degli strumenti per la negoziazione, conclusione e/o automatica applicazione di rapporti contrattuali o relazioni para-contrattuali: un canale per la conclusione e gestione degli accordi, piuttosto che accordi in sé”[14].

Aldilà dalle questioni di teoria del diritto, alcuni degli aspetti più problematici degli smart contract sono radicati nelle peculiarità di funzionamento e si rinvengono sia nella fase preliminare, sia in quella dell’esecuzione. In particolare, durante la fase di creazione e scrittura dello smart contract si rende necessario tradurre l’accordo delle parti in codice, operazione non certo agevole poiché non vi è un’immediata corrispondenza tra linguaggio naturale e linguaggio informatico, a maggior ragione se si considerano la varietà di interessi che animano le parti e le molteplici sfumature che le clausole contrattuali possono assumere. Non esiste infatti un linguaggio legale standardizzato che possa essere tradotto in protocollo informatico, ed essendo impossibile convertire automaticamente il linguaggio naturale in codice, si rende necessario l’intervento umano. Si ha quindi da una parte dei programmatori senza competenze in materia di interpretazione contrattuale e, dall’altra, contraenti e giuristi senza competenze informatiche; in altre parole, soggetti tutti privi, in genere, delle competenze per verificare la rispondenza o meno di quanto programmato a quanto stipulato. Inoltre, quand’anche vi fosse la capacità di comprendere sia il linguaggio giuridico sia quello informatico, si incontrerebbe un limite ulteriore rinvenibile nell’impossibilità di tradurre in codice tutte le circostanze che possono interessare un contratto – stante l’imprevedibilità delle stesse – o di inserire all’interno dello smart contract alcuni concetti che, come il canone di buona fede o di ragionevolezza, sono tipici dell’ordinamento giuridico. Dettagliare ogni possibile evenienza in modo completo, univoco e senza lasciare spazio per interpretazioni richiederebbe, ammesso che sia fattibile, la redazione di contratti molto lunghi, con conseguente incremento del rischio di incorrere in errori di programmazione[15]. Un’alternativa potrebbe essere quella di far fronte a variabili e imprevisti facendo affidamento sulle capacità predittive del programma medesimo che potrebbero essere abilitate dal ricorso all’intelligenza artificiale, affidando così alla tecnologia una funzione che invece è sempre stata riservata al diritto contrattuale[16].

Passando alla fase dell’esecuzione dello smart contract, si deve notare che il meccanismo di convalida, pur comprovando il completamento di una data transazione, non fornisce alcuna indicazione sulla legalità o illegalità della medesima[17]. E infatti gli smart contract sono spesso usati per scambi illegali che avvengono nel dark web o a fini di riciclaggio[18]. Inoltre, l’auto-esecuzione, combinata alle caratteristiche di immodificabilità e irrevocabilità, costituisce un problema quando viene identificato un bug oppure una discrepanza tra quando inserito nel programma e la volontà delle parti, poiché in alcun modo queste possono intervenire per porvi rimedio. Per di più, l’immodificabilità priva il debitore della possibilità di violare il contratto quando sarebbe economicamente efficiente farlo, così come priva il creditore della possibilità di soprassedere ad un minimo inadempimento quando economicamente insignificante o quando comunque si ritiene più importante preservare la relazione contrattuale. Ecco allora che la rigida logica binaria sottesa agli smart contract garantisce certezza a discapito dell’adattabilità[19].

Si deve ritenere, infine, che, per quanto siano sistemi disintermediati e automatizzati, nella misura in cui gli smart contract incorporano dei termini contrattuali non possano sfuggire né ad un intervento umano – che come si è visto cambia funzione ma non è del tutto eliminato – né ad un eventuale procedimento giudiziario nel caso in cui venisse contestata la violazione del diritto contrattuale pro tempore vigente[20].

I limiti ora enunciati non devono tuttavia essere intensi nel senso di annullare le potenzialità offerte dagli smart contract, che, come si vedrà nel prosieguo, rimangono comunque molto promettenti nell’ambito di attività standardizzabili e rappresentabili matematicamente, quali quelle bancarie e finanziarie.


[1]N. Szabo N., Smart contract, 1994, disponibile all’indirizzo internet http://www.fon.hum.uva.nl/rob/Courses/InformationInSpeech/CDROM/Literature/LOTwinterschool2006/szabo.best.vwh.net/smart.contracts.html.

[2]P. Cuccuru, Blockchain ed automazione contrattuale. Riflessioni sugli smart contract, cit., p. 111.

[3]R. O’Shields, Smart contract: Legal Agreements for the Blockchain, in 21 North Carolina Banking Institute Journal, 2017, p. 177  ss., in particolare 179.

[4]P. Cuccuru, Blockchain ed automazione contrattuale. Riflessioni sugli smart contract, cit., p. 112.

[5]J.I.H. Hsiao, Smart Contract on the Blockchain. Paradigm Shift for Contract Law, in 14 US-China Law Review, 2017, p. 685 ss., in particolare p. 690.

[6]Il tema dell’enforcement è affrontato in R. Koulu, Blockchains and online dispute resolution: smart contract as an alternative to enforcement, in 13 SCRIPTed, 2016, p. 41 ss.

[7]N. Szabo N., Smart contract, cit., ove si riscontra la seguente definizione di smart contract: “A smart contract is a computerized transaction protocol that executes the terms of a contract. The general objectives of smart contract design are to satisfy common contractual conditions (such as payment terms, liens, confidentiality, and even enforcement), minimize exceptions both malicious and accidental, and minimize the need for trusted intermediaries. Related economic goals include lowering fraud loss, arbitration and enforcement costs, and other transaction costs”.

[8]K. Werbach, N. Cornell, Contracts Ex Machina, in 67 Duke Law Journal, 2017, p. 313 ss.

[9]E. Mik, Smart contract: Terminology, Technical Limitations and Real-World Complexity, in 9 Law, Innovation & Technology, 2017, p. 1 ss., disponibile all’indirizzo https://ink.library.smu.edu.sg/cgi/viewcontent.cgi?article=4298&context=sol_research, in particolare p. 2.

[10]E. Mik, Smart contract: Terminology, Technical Limitations and Real-World Complexity, cit., pp. 14-15.

[11]K. Werbach, N. Cornell, Contracts Ex Machina, cit., p. 342.

[12]S. Capaccioli, Smart contract: traiettoria di un’utopia divenuta attuabile, cit., p. 25.

[13]G. Hileman, M. Rauchs, Global blockchain benchmarking study, Cambridge Centre for Alternative Finance, 2017, disponibile all’indirizzo internet https://www.ey.com/Publication/vwLUAssets/ey-global-blockchain-benchmarking-study-2017/$FILE/ey-global-blockchain-benchmarking-study-2017.pdf.pdf, p. 57.

[14]P. Cuccuru, Blockchain ed automazione contrattuale. Riflessioni sugli smart contract, cit., p. 111.

[15]Come osserva J.I.H. Hsiao, Smart Contract on the Blockchain. Paradigm Shift for Contract Law, cit., p. 694: “smart contract is based on a binary zero –sum logic that does not appear in all real-life contract cases”.

[16]A.J. Casey, A. Niblett, Self-Driving Contracts, in 43 The Journal of Corporation Law, 2017, p. 101 ss.

[17]E. Mik, Smart contract: Terminology, Technical Limitations and Real-World Complexity, cit., p. 9.

[18]A. Juels, A. Kosba, E. Shi, The ring of Gyges: Investigating the future of criminal smart contract, in ACM Conference on Computer and Communications Security, 2016, p. 283 ss.

[19]J.M. Sklaroff, Smart contract and the Cost of Inflexibility, in 166 University of Pennsylvania Law Review, 2017, p 262 ss, in particolare p. 303 ove si legge ce : “technology cannot replace what is fundamentally a human activity. Smart contracting certainly proposes exciting new changes to the way transactions might take place […]. But a full –scale smart contracting revolution would introduce costs far more extreme and intractable than the ones it seeks to solve”.

[20]E. Mik, Smart contract: Terminology, Technical Limitations and Real-World Complexity, cit., pp. 5-21. Una rassegna di potenzialità e limiti degli smart contract è altresì offerta da P. Cuccuru, Blockchain ed automazione contrattuale. Riflessioni sugli smart contract, cit., pp. 111-117.


Autori

en_USEnglish
it_ITItaliano en_USEnglish