Smart contract: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
FrescoBot (discussione | contributi)
m Bot: spaziatura sezioni
indicata una citazione
Riga 3:
 
== Storia ==
E' importante sottolineare che la definizione di cui sopra è in qualche modo riconducibile a Nick Szabo<ref>{{Cita pubblicazione|nome=Nick|cognome=Szabo|data=1997-09-01|titolo=Formalizing and Securing Relationships on Public Networks|rivista=First Monday|volume=2|numero=9|lingua=en-US|accesso=2019-02-25|doi=10.5210/fm.v2i9.548|url=https://firstmonday.org/ojs/index.php/fm/article/view/548}}</ref> ma nella pratica industriale corrente si intende per smart contract un programma che viene messo in esecuzione sui nodi validatori di una blockchain e il cui risultato, che in genere corrisponde ad un cambio di stato della blockchain stessa, rappresenta una transazione sulla quale i nodi validatori devono trovare un consenso<ref>{{Cita web|url=https://www.interlogica.it/insight/smart-contract-ethereum/|titolo=Come funzionano gli Smart Contract in Ethereum?|sito=Interlogica|data=2018-05-03|lingua=it-IT|accesso=2019-04-10}}</ref>. L'algoritmo di consenso può eventualmente essere di tipo proof-of-work o proof-of-stake o qualunque altra tipologia che garantisca l'integrità del cambiamento di stato e del rispetto delle regole del protocollo.
 
Questa accezione di smart contract non è esattamente quella di un contratto, ma piuttosto quella di un programma la cui esecuzione e i cui risultati sono garantiti integri dalle proprietà di una blockchain pubblica, tale accezione deriva dalla scelta del progetto Ethereum<ref>{{Cita pubblicazione|autore=|data=2019-02-25|titolo=Ethereum White Paper|rivista=|editore=ethereum|volume=|numero=|accesso=2019-02-25|url=https://github.com/ethereum/wiki/wiki/White-Paper/f18902f4e7fb21dc92b37e8a0963eec4b3f4793a}}</ref> di denominare tale codice in esecuzione come smart contract.