Su Ethereum

All'inizio del 2014, il programmatore russo Vitalik Buterin ha annunciato l'idea di una nuova rete decentralizzata che, come bitcoin, utilizza la tecnologia blockchain. Ha chiamato questa idea Ethereum.

Da allora Ethereum è diventato una rete mondiale di computer su cui girano migliaia di applicazioni decentralizzate. In effetti, l'etere di valuta digitale è diventata la seconda criptovaluta più grande. In questo discorso, cercheremo di spiegare Ethereum in un linguaggio semplice.

Cos'è Ethereum e come funziona?

Wat è Ethereum?

Ethereum è una rete decentralizzata che utilizza la tecnologia blockchain. Su questa rete è possibile eseguire applicazioni distribuite sull'intera rete. Queste applicazioni sono anche conosciute come DApps (app decentralizzate). Poiché le applicazioni sono distribuite in tutta la rete, la possibilità che le singole applicazioni vengano disattivate è praticamente impossibile. Di conseguenza, le DApp sono resistenti alla perdita di dati, alla manipolazione e alla censura.

La rete di Ethereum ospita anche l'etere, una valuta digitale che funziona come una sorta di carburante. Gli ether sono necessari per apportare modifiche alla blockchain di Ethereum. Se gli utenti effettuano transazioni tra di loro sulla rete, devono pagare i costi di transazione. Il ricavato va ai miner che assicurano che la transazione sia inclusa nella blockchain.

Molte aziende sono anche attratte da questa nuova tecnica, in parte perché possono utilizzare la rete Ethereum e utilizzarla per portare nuove innovazioni sul mercato. Pensa, ad esempio, a un frigorifero che può ordinare automaticamente una nuova scorta e quindi ha un suo budget.

La piattaforma Ethereum ha anche un proprio linguaggio di programmazione chiamato Solidity. Gli sviluppatori possono utilizzare la blockchain di Ethereum e creare le proprie applicazioni e lanciare criptovalute con Solidity. Smart contract e DAO sono esempi di applicazioni interessanti che sono possibili grazie a Ethereum.

Come funziona Ethereum?

Possiamo pensare a Ethereum come a una pila di livelli uno sopra l'altro. Il primo, base layer che rende tutto il resto possibile, è una vasta rete di computer che elaborano le transazioni e mantengono un database condiviso aggiornato nel tempo (la blockchain di Ethereum). Il secondo è il livello software che consente agli sviluppatori di eseguire programmi chiamati smart contract sulla blockchain di Ethereum, utilizzando il linguaggio di programmazione Solidity. Il terzo livello è costituito da applicazioni che forniscono servizi diversi (dalla governance alla gestione dell'identità). La cosa notevole di questa piattaforma è che sfruttando i livelli hardware e software di Ethereum, queste applicazioni sono decentralizzate, non hanno punti centrali di errore e sono inarrestabili. Non puoi semplicemente disabilitare le app.

Diamo un'occhiata a ciascuno di questi livelli in dettaglio.

Strati di Ethereum in tre parti

Livello hardware di Ethereum: blockchain

La maggior parte di ciò che vedi su Internet, incluso questo articolo, è ospitato da un server in un data center da qualche parte nel mondo. Quando apri il browser e navighi in Internet, il tuo computer (client) si connette a tali server e scarica il contenuto desiderato. Questa infrastruttura client-server era concepita per un Internet con pochi repository centralizzati (server) che avrebbero distribuito contenuto a molti utenti (client). Tuttavia, Internet di oggi connette molti client ad altri client perché siamo sia creatori di contenuti che utenti (Web 2.0). I computer possono essere collegati in una rete di grandi dimensioni e passare il contenuto dal computer che lo ha generato al computer che lo ha richiesto. Questo grande gruppo di computer che si scambiano contenuti è noto come rete peer-to-peer.

Il livello hardware di Ethereum è una rete peer-to-peer di computer che calcola e sequenzia le transazioni in un registro condiviso. Ciò consente loro di costruire un database distribuito in grado di tenere traccia di tutte le informazioni condivise nella rete: tutte le transazioni che avvengono. Ogni computer della rete è chiamato "nodo" e convalida le transazioni in entrata e le organizza in blocchi che vengono poi trasmessi all'intera rete Ethereum. Di seguito è riportata la rete Ethereum di computer che elaborano transazioni in tempo reale.

Blockchain di Ethereum

Le transazioni possono contenere sia valore che informazioni. Il valore è espresso in "etere", la valuta digitale della piattaforma Ethereum. E l'informazione è un codice che può trasmettere dati e attivare azioni. Questo è rilevante per il livello software di Ethereum, per il livello hardware teniamo solo a mente che è costituito da centinaia di computer sparsi per il pianeta che sono collegati tra loro tramite Internet.

Chiunque può offrire il proprio computer per elaborare le transazioni della rete semplicemente eseguendo del codice sul proprio laptop. Esiste uno schema di incentivi che favorisce la crescita della rete Ethereum, infatti chi gestisce i nodi viene premiato in ether – che è un bene prezioso in quanto può essere utilizzato per sfruttare le applicazioni in esecuzione sulla piattaforma eseguite.

Questo dovrebbe essere sufficiente per darti una comprensione generale del livello hardware di Ethereum. Se vuoi sapere come questi computer coordinano il lavoro e elaborano le transazioni, devi imparare come funziona la tecnologia blockchain: questo articolo è un buon inizio (usa la blockchain di Bitcoin come esempio per spiegare la tecnologia, ma la maggior parte dei contenuti è valida anche per Ethereum).

Livello software Ethereum: Solidità

La flessibilità della piattaforma Ethereum la rende popolare tra i primi appassionati di Bitcoin e blockchain. Mentre Bitcoin è stato progettato come valuta per scambiare valore tra diversi utenti, Ethereum è stato sviluppato per estendere l'uso della tecnologia ausiliaria Bitcoin e costruire una blockchain generale più ampia.

Il livello del software Ethereum è costruito per consentire la transazione di valore in qualsiasi valore o forma, che si tratti di una valuta, una casa, un'identità, i diritti di utilizzare o riprodurre un numero o qualsiasi altro bene che ti viene in mente.

Per fare ciò è stato creato un linguaggio di programmazione completamente nuovo, chiamato 'Solidity'. Per coloro che sono sviluppatori di software, è simile a JavaScript. I programmatori Solidity possono costruire semplici programmi chiamati "contratti intelligenti" in grado di implementare strategie di base per le transazioni.

Contratto intelligente Ethereum

Tutto il codice di Ethereum è open source e disponibile online su Github. Infatti, chiunque può scaricare (e utilizzare) gratuitamente il codice dell'immagine sopra per sviluppare una nuova applicazione. La natura open source di Ethereum consente a chiunque voglia contribuire di scrivere nuovo codice e condividerlo online, sviluppare nuove funzionalità o migliorare la piattaforma complessiva correggendo i bug. Ciò significa anche che la piattaforma di Ethereum si sta in qualche modo evolvendo poiché la community aggiunge costantemente nuovo codice, proprio come Wikipedia ha editori che aggiungono nuovi articoli e modificano quelli esistenti.

Chiunque può imparare a programmare in Solidity, ci sono molte risorse gratuite online, come il sito Web ufficiale di Ethereum o queste classi ludici con zombi.

In sintesi, il livello software di Ethereum consente agli sviluppatori di software di progettare contratti intelligenti che consentono il trasferimento programmabile di valore. Tutto il codice del contratto intelligente è pubblico, quindi chiunque può verificare cosa eseguono effettivamente questi programmi.

Livello dell'applicazione Ethereum: dApps

La combinazione dei livelli hardware e software sopra descritti consente a Ethereum di operare come un supercomputer globale e decentralizzato in grado di eseguire applicazioni di terze parti.

Anche se molti early adopter utilizzano la funzione di "emissione di token" di Ethereum per raccogliere fondi per nuovi progetti (Initial Coin Offerings), le applicazioni di Ethereum vanno ben oltre il settore finanziario. Ci sono oltre 900 applicazioni costruite su Ethereum, circa il 30% sono live mentre l'altro 70% è ancora in fase di sviluppo.

DApp

A causa della natura aperta e trasparente di Ethereum, molti sviluppatori in tutto il mondo si sono riuniti e hanno creato una comunità forte e ampia che sta attualmente lavorando per espandere le funzionalità e le applicazioni di questa piattaforma.

La creazione di applicazioni pubbliche decentralizzate presenta diversi vantaggi che superano le applicazioni private centralizzate, in particolare:

  • Trasparenza: chiunque può leggere il codice e assicurarsi che l'applicazione faccia ciò che promette. Tutte le transazioni sono anche pubbliche e tracciabili.
  • Resilienza: è difficile o praticamente impossibile fermare queste applicazioni una volta eseguite su Ethereum.
  • Codice migliore: poiché il codice è pubblico e qualsiasi hacker può leggerlo, i bug devono essere corretti in modo rapido ed efficace, ottenendo una qualità superiore e un codice più affidabile.

Ogni giorno vengono lanciati nuovi progetti e diverse applicazioni sulla piattaforma mirano a migliorare il mondo in cui viviamo, proprio come questo progetto del WWF.

Sembra che Ethereum possa svolgere un ruolo importante nello spostamento della nostra attuale Internet centralizzata verso un futuro più trasparente, incentrato sulla privacy ed equo.

Cosa sono gli smart contract e i DAO?

Uno smart contact (o smart contract) è un'applicazione che gira sulla rete Ethereum ed esegue automaticamente una serie di azioni. Si pensi ad esempio a un Se questo, allora quello (IFTT). Poiché il contratto viene eseguito sulla blockchain di Ethereum, non può essere modificato o risolto nel frattempo. Le regole concordate non possono essere modificate da nessuno.

Il pagamento automatico degli alimenti a un ex partner potrebbe essere un esempio di smart contract. Oppure cosa ne pensi che ad ogni transazione l'IVA venga automaticamente inviata direttamente al fisco? Altre possibili applicazioni sono la prevenzione di frodi, abusi o manipolazioni, ad esempio, nelle campagne di raccolta per una buona causa. Con gli smart contract è possibile programmare denaro.

È anche possibile costruire un'azienda completamente virtuale basata su un contatto intelligente. Le organizzazioni potrebbero funzionare interamente sulla blockchain di Ethereum e garantire così la continuità. Questi tipi di organizzazioni sono chiamati DAO (Organizzazione Autonoma Decentralizzata).

Le nuove società possono anche utilizzare Ethereum per emettere le proprie criptovalute e inizialmente detenere una sorta di spesa azionaria. Le organizzazioni che vogliono raccogliere fondi per il loro progetto lo fanno attraverso una ICO (Initial Coin Offering). Il "token" che viene rilasciato è in linea di principio completamente separato dalla rete su cui gira e ha poco a che fare con il prezzo dell'etere. Le monete (o token) in esecuzione sulla blockchain di Ethereum sono anche conosciute come token ERC-20.

Vedi anche: