ethereum

Gli smart contract del settore blockchain creano ancora un po’ di confusione. Sono un termine difficile da capire poiché, in parte, il termine confonde l’interazione principale.

A differenza di un contratto standard, che delinea di termini di una relazione, uno smart contract impone l’utilizzo di un codice crittografico. In poche parole, sono programmi eseguiti esattamente come sono stati creati.

Nato per la prima volta nel 1993 da un’idea di Nick Szabo, uno smart contract può essere utilizzato, ad esempio, dagli utenti Ethereum di inviare 10 ether ad un amico in una determinata data. In pratica, un utente crea un contratto ed invia i dati a quel contratto in modo da poter eseguire il comando desiderato.

Ethereum è una piattaforma creata appositamente per la creazione di smart contract. Però, questi strumenti non sono destinati ad un utilizzo solitario, ma possono anche costituire i mattoni per le “applicazioni decentralizzate” e persino per intere aziende autonome decentralizzate.

Come funzionano gli smart contract

La prima criptovaluta che ha supportato gli smart contract è stata Bitcoin, trasferendo valore da una persona ad un’altra. La rete di nodi convalida le transazioni sono se vengono soddisfatte determinate condizioni. Ma il bitcoin è limitato al caso d’uso della valuta.

Al contrario, ethereum sostituisce il linguaggio più restrittivo del bitcoin (un linguaggio di scripting di circa un centinaio di script) e lo sostituisce con un linguaggio che consente agli sviluppatori di scrivere i propri programmi.

Ethereum consente agli sviluppatori di programmare i propri smart contract. La lingua è il “Turing-complete”, il che significa che supporta un set più ampio di istruzioni computazionali.

I contratti intelligenti possono:

  • Funzionare come account “multi-firma”, in modo che i fondi vengano spesi solo quando una percentuale richiesta di persone è d’accordo.
  • Gestire gli accordi tra gli utenti, ad esempio, se uno acquista un’assicurazione dall’altro.
  • Fornire utilità ad altri contratti (simile a come funziona una libreria software).
  • Archiviare informazioni su un’applicazione, ad esempio informazioni sulla registrazione del dominio o record di appartenenza.

Forza dei numeri

E’ molto probabile che gli smart contract abbiano bisogno dell’assistenza di altri smart contract. Quando qualcuno fa una semplice scommessa sulla temperatura che ci sarà in una calda giornata estiva, potrebbe innescare una sequenza di contratti.

Un contratto userebbe i dati esterni per determinare il tempo e un altro potrebbe saldare la scommessa in base alle informazioni ricevute dal primo quando le condizioni sono state soddisfatte. L’esecuzione di ciascun contratto richiede commissioni di transazione ether, che dipendono dalla quantità di potenza computazionale richiesta.

Ethereum esegue un codice smart contract quando un utente o un altro contratto gli invia un messaggio con sufficienti commissioni di transazione. Ethereum Virtual Machine esegue quindi smart contract in “bytecode”, o una serie di quelli e il numero zero che possono essere letti e interpretati dalla rete.