Inutile negarlo, gli smart contract sono la grande promessa della blockchain di Ethereum.
Se non sei un esperto, uno smart contract è un programma informatico che automaticamente esegue i termini di un contratto sulla blockchain. Puoi usare gli smart contract per una grandissima varietà di scopi, come contratti per servizi wireless, affitto di appartamenti e hotel, contratti per lavori da freelance, pagamenti automatici, ecc…
Con più di $17 miliardi di asset posseduti dalle migliori 10 criptovalute, ci sono molte opportunità per dare agli attuali asset blockchain maggiore flessibilità aggiungendo le funzionalità degli smart contract.
Ecco di seguito alcuni punti su cui gli sviluppatori stanno lavorando per migliorare gli smart contract nel 2017.
1. La verifica formale
Tutti i software sono soggetti a bug o attacchi hacker di ogni genere.Si è sempre alla ricerca di nuovi metodi per rendere più sicuri i contratti. Uno di questi è l’uso di verifica formale, una tecnica matematica per controllare il codice per dimostrare che funzionerà come dovrebbe.
La verifica formale può dimostrare la proprietà che si intende controllare: se non verifichi che tutte le cose siano corrette, lasci sempre aperta la possibilità di vulnerabilità.
2. Trasparenza degli smart contract
Uno degli esperimenti più importati con gli smart contract è stato il DAO, un veicolo di investimenti virtuale che aveva guadagnato oltre $150m, ma che divenne presto vittima di un attacco hacker (grazie ad un hard fork il tutto si risolse abbastanza velocemente).
Quando gli addetti alla sicurezza iniziarono ad analizzare il DAO, fu difficile capire cosa stesse realmente facendo perché i bytecode del Dao (il codice della macchina virtuale) erano visibili sulla blockchain e non era chiaro quale versione del codice sorgente fosse stato distribuito.
Il codice degli smart contract deve essere trasparente, senza scappatoie, così si può sempre sapere cosa stiamo firmando al momento di un accordo e in modo che gli errori siano facili da identificare e risolvere.
Per farlo si può usare un linguaggio interpretato invece che uno compilato in modo che il codice sia visibile sulla blockchain e può essere facilmente controllato.
3. Governance
Poiché gli smart contract sono archiviati nella blockchain, per definizione il codice è immutabile e quindi non può essere cambiato in alcun modo e da nessuna entità.
Ma i software non sono mai perfetti. Modifiche alla piattaforma sottostante sono già state fatte (vedi hard fork) e accadranno sempre, e questo può interferire con l’esecuzione degli smart contract.
Come puoi leggere in questo articolo, il tema della governance è stato a lungo oggetto di dibattito, specie quando si è trattato di fare grossi cambiamenti alla blockchain di Ethereum, come nel caso di quello che ha portato alla creazione di Ethereum Classic.
Ma la community di Ethereum è molto forte e va sempre più a solidificars per rendere l’infrastruttura un posto sempre più sicuro per sviluppare dapp e investire in Ether.
Commenti