Come funzionano i contratti intelligenti di Ethereum?
Come molte idee nel settore blockchain, una confusione generale circonda i cosiddetti «contratti intelligenti». Una nuova tecnologia resa possibile dalle blockchain pubbliche, i contratti intelligenti sono difficili da capire perché il termine confonde in parte l’interazione centrale descritta. Considerando che un contratto standard descrive i termini di un rapporto (di solito uno applicabile per legge). Uno smart contract impone una relazione con il codice crittografico e questo si applica all’interno di Ethereum.
In altre parole, gli smart contract sono programmi che funzionano esattamente come configurato dai loro creatori.
Concepito per la prima volta nel 1993. L’idea è stata originariamente descritta dallo scienziato informatico e crittografo Nick Szabo come una sorta di distributore automatico digitale. Nel suo famoso esempio, ha descritto come gli utenti possono inserire dati o valori e ricevere un elemento finito da una macchina. Per questo caso applicherei uno snack del mondo reale o una bevanda analcolica.
In un semplice esempio, gli utenti di ethereum possono inviare 10 ether a un amico in una determinata data utilizzando uno smart contract. In questo caso, l’utente creerebbe un contratto e invierebbe i dati a quel contratto in modo che possa eseguire il comando desiderato. Ethereum è una piattaforma creata appositamente per creare contratti intelligenti.
Ma questi nuovi strumenti non sono pensati per essere usati isolatamente. Si ritiene che possano anche costituire i mattoni per le applicazioni decentralizzate. E possono anche far parte di tutte le società autonome decentralizzate.
Come funzionano i contratti intelligenti?
Vale la pena notare che Bitcoin è stato il primo a supportare i contratti intelligenti di base, nel senso che la rete può trasferire valore da una persona all’altra. La rete del nodo convaliderà le transazioni solo se vengono soddisfatte determinate condizioni. Ma il bitcoin è limitato al caso d’uso della valuta.
Al contrario, ethereum sostituisce il linguaggio più restrittivo di bitcoin. Lo sostituisce con un linguaggio che consente agli sviluppatori di scrivere i propri programmi.
Ethereum consente agli sviluppatori di programmare i propri contratti intelligenti, o «agenti autonomi», come li chiama il white paper di ethereum. Il linguaggio è «Turing-complete», il che significa che supporta un insieme più ampio di istruzioni computazionali.
I contratti intelligenti possono:
Funzionano come account «firma multipla». Quindi i fondi vengono spesi solo quando una percentuale richiesta di persone è d’accordo.
Gestiscono accordi tra utenti, ad esempio, se uno acquista l’assicurazione dall’altro.
Forniscono utilità ad altri contratti (in modo simile a come funziona una libreria software). Memorizzano anche informazioni su un’applicazione, come le informazioni sulla registrazione del dominio o i record di appartenenza.
Forza nei numeri
Estrapolando quest’ultimo punto, è probabile che i contratti intelligenti necessitino dell’assistenza di altri contratti intelligenti. Quando qualcuno fa una semplice scommessa sulla temperatura in una calda giornata estiva, potrebbe innescare una sequenza di contratti sotto il cofano.
Un contratto utilizzerebbe dati esterni per determinare il tempo e un altro contratto potrebbe saldare la scommessa in base alle informazioni ricevute dal primo contratto quando le condizioni sono soddisfatte. L’esecuzione di ciascun contratto richiede commissioni di transazione ether, che dipendono dalla quantità di potenza di calcolo richiesta.
Ethereum esegue il codice del contratto intelligente quando un utente o un altro contratto gli invia un messaggio con commissioni di transazione sufficienti. La macchina virtuale Ethereum esegue quindi contratti intelligenti su «bytecode», ovvero una serie di uno e zero che possono essere letti e interpretati dalla rete.