Che cos’è uno smart contract?
Uno smart contract è un’applicazione decentralizzata che esegue la logica aziendale in risposta agli eventi. L’esecuzione intelligente del contratto può comportare lo scambio di denaro, la fornitura di servizi, lo sblocco di contenuti protetti dalla gestione dei diritti digitali o altri tipi di manipolazione dei dati come la modifica del nome su un titolo fondiario. Gli smart contract possono essere utilizzati anche per imporre la protezione della privacy, ad esempio facilitando il rilascio selettivo di dati protetti dalla privacy per soddisfare una richiesta specifica.
Esistono diverse architetture per sviluppare, distribuire, gestire e aggiornare i programmi alla base degli smart contract. Possono essere archiviati come parte di una blockchain o di un’altra tecnologia di contabilità distribuita e integrati in vari meccanismi di pagamento e scambi digitali che possono includere bitcoin e altre criptovalute. Nonostante il nome, i contratti intelligenti non sono contratti legalmente vincolanti.
La loro funzione principale è quella di eseguire in modo programmatico la logica aziendale che esegue varie attività, processi o transazioni che sono stati programmati in essi per rispondere a un determinato insieme di condizioni. Devono essere intraprese azioni legali per collegare questa esecuzione ad accordi legalmente vincolanti tra le parti. Walmart Canada ha implementato un’applicazione blockchain che combina smart contract con IoT per automatizzare la fatturazione delle merci.
Un contratto intelligente è un contratto autoeseguibile con i termini dell’accordo tra acquirente e venditore scritti direttamente in righe di codice. Le transazioni sono irreversibili e tracciabili grazie al codice in esecuzione che li controlla. Sebbene la tecnologia blockchain sia stata pensata principalmente come la base per bitcoin, si è evoluta ben oltre il sostegno alla valuta virtuale .
COSA BISOGNA SAPERE
- Gli smart contract sono una sorta d’accordo tra acquirente e venditore scritto direttamente in un codice auto eseguibile
- Nick Szabo, un informatico americano che ha inventato una valuta virtuale chiamata “Bit Gold” nel 1998, ha definito gli smart contract come protocolli di transazione computerizzati che eseguono i termini di un contratto.
- Gli smart contract facilitano transazioni e rendono il tutto irreversibile e trasparente
Come funzionano gli smart contract
I contratti intelligenti sono stati proposti per la prima volta nel 1994 da Nick Szabo, un informatico americano che ha inventato una valuta virtuale chiamata “Bit Gold” nel 1998, ben 10 anni prima dell’invenzione del bitcoin. Infatti, si dice spesso che Szabo sia il vero Satoshi Nakamoto, l’anonimo inventore del bitcoin, cosa che ha negato. Szabo ha definito gli smart contract come protocolli di transazione computerizzati che eseguono i termini di un contratto.
Intendeva espandere e migliorare la funzionalità dei POS come metodi di transazione elettronica nel mondo digitale. Szabo ha proposto nel suo articolo un’esecuzione di un contratto per piccole attività come obbligazioni e derivati. Dice inoltre che questi nuovi titoli sono formati combinando obbligazioni e derivati in una vasta varietà di modi.
Strutture a termine molto complesse per i pagamenti possono ora essere integrate in contratti standardizzati e negoziate con bassi costi di transazione, grazie all’analisi computerizzata di queste complesse strutture terminologiche. Szabo ha previsto molte cose in campo tecnologico che poi si sono avverate prima della tecnologia blockchain. Ad esempio, la negoziazione di derivati è ora condotta principalmente attraverso reti di computer utilizzando complesse strutture a termine.
Un contratto intelligente è un tipo speciale di programma che codifica la logica aziendale che viene eseguita su una macchina virtuale per scopi speciali inserita in una blockchain o in un altro tipo di registro distribuito. Il processo di creazione di uno smart contract inizia con i team aziendali che lavorano con gli sviluppatori per descrivere i loro requisiti per il comportamento desiderato dei contratti intelligenti in risposta a vari eventi o circostanze. Semplici eventi potrebbero essere condizioni come pagamento autorizzato, spedizione ricevuta o soglia di lettura del contatore di utenze.
Una logica più sofisticata potrebbe codificare eventi più complessi come il calcolo del valore di uno strumento finanziario derivato e l’elaborazione di una negoziazione del derivato o il rilascio automatico di un pagamento assicurativo in caso di morte di una persona o di calamità naturale. Gli sviluppatori lavorano quindi in una piattaforma di scrittura del contratto intelligente per sviluppare la logica e testarla per assicurarsi che funzioni come previsto. Dopo che la domanda è stata scritta, viene consegnata a un altro team per una revisione della sicurezza.
Potrebbe trattarsi di un esperto interno o di un’azienda specializzata nel controllo della sicurezza dei smart contract. Una volta che il contratto è stato approvato, viene distribuito su una blockchain esistente o su un’altra infrastruttura di contabilità distribuita. Una volta distribuito, il contratto intelligente è configurato per ascoltare gli aggiornamenti degli eventi da un “oracolo”, che è essenzialmente una fonte di dati in streaming protetta criptograficamente. Lo smart contract viene eseguito una volta ricevuto il mix appropriato di eventi da uno o più oracoli.
Applicazioni smart contract e blockchain
Blockchain è l’ideale per archiviare contratti intelligenti grazie alla sicurezza e all’immutabilità della tecnologia. I dati del contratto intelligente sono crittografati su un registro condiviso, rendendo praticamente impossibile la perdita delle informazioni memorizzate nei blocchi. La tecnologia blockchain incorporata nei smart contract ha il vantaggio di essere flessibile.
Gli sviluppatori possono archiviare quasi tutti i tipi di dati in una blockchain e hanno un’ampia varietà di opzioni di transazione tra cui scegliere. I contratti intelligenti basati su blockchain stanno aiutando a rendere le transazioni e altri processi aziendali più sicuri, efficienti ed economici, riducendo così i costi di transazione. Ad esempio, nel 2016, la Contea di Cook, Illinois, ha utilizzato la blockchain per creare un database per trasferire e tenere traccia dei titoli di proprietà.
Quando si verificano queste transazioni, oltre al tradizionale atto cartaceo, l’acquirente riceve un token digitale che può essere utilizzato come prova di proprietà. Una varietà di settori potrebbe trarre vantaggio dall’utilizzo di smart contract basati su blockchain come parte delle loro catene di approvvigionamento. L’automazione dei pagamenti sanitari utilizzando i contratti intelligenti può ridurre la sovrafatturazione e prevenire le frodi.
L’industria musicale potrebbe registrare la proprietà della musica nella blockchain e quindi implementare uno smart contract per garantire che le royalty vengano pagate quando la musica viene utilizzata per scopi commerciali. I contratti intelligenti e la blockchain potrebbero avvantaggiare l’industria automobilistica memorizzando informazioni prontamente disponibili sulla manutenzione del veicolo e sulla cronologia degli incidenti e della proprietà.
La piattaforma di smart contract più popolare è Ethereum, che è anche una piattaforma di criptovaluta ampiamente utilizzata. Nella comunità ethereum è nato il linguaggio per la scrittura di contratti intelligenti e applicazioni per essere eseguiti in ambiente EVM (ethereum virtual machine). Altri ambienti di programmazione popolari includono il linguaggio WebAssembly (WASM) e il Digital Asset Modeling Language (DAML).
WASM consente agli sviluppatori di creare smart contract che possono essere eseguiti in un browser Web ed essere integrati in blockchain e altri registri distribuiti utilizzando vari linguaggi di programmazione come C, JavaScript , TypeScript e Rust.
DAML è un linguaggio incentrato sull’azienda progettato per modellare vari casi d’uso aziendali e che aiuta anche a far rispettare le garanzie della privacy.
Vantaggi dei contratti intelligenti
Ci sono diversi potenziali vantaggi commerciali derivanti dall’utilizzo di contratti intelligenti.
- Efficienza dei costi. Gli smart contract promettono di automatizzare i processi aziendali che superano i confini organizzativi. Ciò può eliminare molte spese operative e risparmiare risorse, incluso il personale necessario per monitorare l’avanzamento di un processo complesso che viene eseguito in risposta a condizioni che abbracciano le aziende.
- Velocità di elaborazione. I contratti intelligenti possono migliorare la velocità di elaborazione dei processi aziendali eseguiti su più aziende.
- Autonomia. Gli smart contract vengono eseguiti automaticamente dalla rete e riducono la necessità di una terza parte per gestire le transazioni tra le aziende.
- Affidabilità. I contratti intelligenti possono anche sfruttare i registri blockchain e altre tecnologie di registro distribuito per mantenere un registro verificabile di tutte le attività relative all’esecuzione di processi complessi e che non possono essere modificati dopo il fatto. Supporta anche transazioni automatizzate che rimuovono il potenziale di errore umano e garantiscono l’accuratezza nell’esecuzione dei contratti.
- Problemi e sfide comuni con gli smart contract. Ci sono numerosi problemi e sfide che devono essere considerati quando si pianifica l’implementazione di un contratto intelligente.
- Sicurezza. Gli smart contract proteggono alcuni elementi chiave in un processo aziendale che coinvolge più parti. Tuttavia, la tecnologia è nuova e gli hacker continuano a identificare nuove superfiche di attacco che consentono loro di compromettere l’intento delle aziende che hanno indicato le regole. Nei primi giorni di Ethereum, gli hacker di contratti intelligenti sono riusciti a rubare $ 50 milioni in criptovaluta.
L’IEEE ha anche documentato preoccupazioni circa le incongruenze negli strumenti utilizzati per rilevare diverse vulnerabilità nella sicurezza dei smart contract.
- Integrità. Un oracolo (una delle origini dati in streaming che invia gli aggiornamenti degli eventi) deve proteggersi dagli eventi falsi degli hacker che attivano l’esecuzione di contratti intelligenti quando non dovrebbero. Deve essere programmato per generare con precisione eventi, il che può essere impegnativo per scenari complessi.
- Allineamento. Gli smart contract possono accelerare l’esecuzione di processi che abbracciano più parti indipendentemente dal fatto che siano in linea con l’intenzione e la comprensione di tutte le parti. Ma questa capacità può anche amplificare l’impatto del danno che può verificarsi quando gli eventi sfuggono al controllo, in particolare quando non c’è modo di fermare o liberare un comportamento involontario. La società di ricerca Gartner ha notato che questo problema pone sfide nella scalabilità e gestibilità dei contratti intelligenti che devono ancora essere completamente affrontate.
- Gestione. Gli smart contract sono complicati da implementare e gestire. Sono spesso configurati in modi che li rendono difficili o impossibili da modificare. Sebbene questo possa essere considerato un vantaggio in termini di sicurezza, le parti non possono apportare modifiche all’accordo sul contratto intelligente o incorporare nuovi dettagli senza sviluppare un nuovo contratto.
Il futuro dei smart contract
I contratti intelligenti sono complessi e il loro potenziale va oltre il semplice trasferimento di beni. Possono eseguire transazioni in un’ampia gamma di campi, dai processi legali ai premi assicurativi, agli accordi di crowdfunding ai derivati finanziari. Gli smart contract hanno il potenziale per disintermediare i campi legale e finanziario semplificando e automatizzando i processi di routine e ripetitivi per i quali le persone attualmente pagano commissioni considerevoli a banche e avvocati.
Il ruolo degli avvocati potrebbe anche cambiare in futuro man mano che i contratti intelligenti acquisiscono capacità come le decisioni sui contratti legali tradizionali e i modelli di smart contract personalizzabili. Inoltre, la capacità dei contratti intelligenti non solo di automatizzare i processi, ma anche di controllare il comportamento, nonché il loro potenziale per l’ audit in tempo reale e le valutazioni dei rischi, può essere utile per la conformità. Gli smart contract mostrano anche risultati promettenti nell’automazione dei processi eseguiti su dispositivi IoT e edge computing.
Ad esempio, una società di servizi pubblici potrebbe offrire un servizio in cui i contratti intelligenti vengono eseguiti in risposta ai cambiamenti nelle tariffe elettriche in coordinamento con i dispositivi integrati nei misuratori di potenza. Ad esempio, quando i prezzi raggiungono una determinata soglia, uno smart contract potrebbe spegnere o abbassare automaticamente gli elettrodomestici che consumano molta energia come i condizionatori d’aria utilizzando un controller IoT appositamente controllato. Un altro potenziale caso d’uso è l’integrazione di contratti intelligenti in distributori automatici che potrebbero rilasciare merci in risposta a pagamenti in criptovaluta.
In uno scenario di catena di approvvigionamento, gli smart contract potrebbero sbloccare fondi una volta che un container è arrivato a destinazione e i sensori IoT indicano che è rimasto chiuso e che il contenuto è stato mantenuto alla giusta temperatura, umidità appropriata e non spinto troppo durante il viaggio.
Cronologia e creazione del contratto intelligente
La nozione di smart contract è stata proposta per la prima volta da Nick Szabo nel 1994. Szabo è uno studioso di diritto e crittografo noto per aver gettato le basi per la valuta digitale. All’epoca, c’era poco interesse o attività nei contratti intelligenti perché non esisteva una piattaforma digitale o una tecnologia di contabilità distribuita in grado di supportarli.
Nel 2008, la criptovaluta bitcoin è stata sviluppata su una rete blockchain con un registro distribuito che tiene traccia delle transazioni monetarie. Questa tecnologia ha consentito lo sviluppo di un codice di smart contract che viene utilizzato per inserire i termini del contratto nella blockchain. Molte piattaforme ora consentono l’uso di contratti intelligenti, tra cui Ethereum, Hyperledger, Tezos e Corda. Oggi, con la crescente adozione di bitcoin e il supporto delle tecnologie blockchain , i contratti intelligenti stanno diventando sempre più popolari.