Un argomento molto attuale è quello degli Smart Contract abbinati alle crypto monete, quindi cosa sono gli Smart Contract? Sono frazioni di codice che stabiliscono le condizioni da soddisfare per avere benefici a una qualsiasi delle parti.
Presentano il seguente set di caratteristiche uniche:
- Distribuito: qualsiasi contratto intelligente viene replicato e distribuito da tutti i nodi connessi alla rete. A ciascuno è garantito il possesso di copia delle condizioni stabilite e non possono essere modificate a piacimento da una delle parti.
- Deterministico: possono eseguire solo le azioni per le quali è stato progettato, ma solo quando le condizioni date sono soddisfatte. Il risultato finale non varierà mai, non importa chi lo esegue.
- Autonomo: hanno la capacità di automatizzare qualsiasi tipo di attività, funzionando come un programma con eseguibili automatici. Normalmente se uno smart contract non riceve un’attivazione, rimarrà in attesa e non farà nulla.
- Immutabili: quando vengono rilasciati in rete non possono più essere modificati. Una volta distribuiti, possono essere rimossi solo a condizione che questa particolare funzione sia stata implementata in precedenza.
- Personalizzabile: hanno la possibilità di modificare il codice prima di essere lanciati per fare ciò che vogliamo. Possono essere utilizzati per creare diversi tipi di applicazioni decentralizzate (DApp).
- Trustless: non sono richiesti da terze parti fidate per verificare l’integrità del processo e che le condizioni contrassegnate siano soddisfatte. Inoltre, la tecnologia blockchain è degna della precisione dei dati
- Trasparente: sono sempre archiviati in una blockchain pubblica, quindi il codice può essere visto da tutti, indipendentemente dal fatto che siano partecipanti o meno allo smart contract
Uno smart contract può essere cancellato?
La realtà è che i contratti intelligenti hanno la capacità di essere eliminati, se così programmati. All’interno della blockchain di Ethereum, i contratti intelligenti possono aggiungere una funzione nel codice che è: SELFDESTRUCT.
Questa implementazione nel codice ti consente di eliminare lo smart contract in futuro se viene rilevato un errore o di sostituirlo con uno nuovo. Se questo elemento non viene aggiunto, lo smart contract non potrà mai essere cancellato.