Informazioni sulle reti private Ethereum

Completato

Una rete Ethereum viene considerata privata quando i relativo nodi sono isolati. In una rete privata i nodi non sono mai connessi a una rete pubblica come invece avviene nella mainnet o in una testnet. Le reti Ethereum private includono le reti di sviluppo e le reti di consorzi.

Reti di sviluppo

Quando si sviluppa un'applicazione Ethereum, si inizierà a eseguirla in una rete privata. È necessario verificare il funzionamento dell'applicazione prima di distribuirla nell'ambiente di produzione. Questo tipo di rete privata è detto rete di sviluppo.

La creazione di una soluzione blockchain in una rete di sviluppo è simile alla progettazione di un'app Web in un server locale. È possibile progettare, creare, testare ed eseguire l'iterazione della soluzione nello stesso ambiente.

In una rete di sviluppo è possibile creare, testare ed eseguire rapidamente l'iterazione delle modifiche apportate alla soluzione. L'iterazione della soluzione può essere eseguita in modo più semplice e rapido in una rete di sviluppo rispetto a una testnet pubblica. Strumenti come Ganache e Hardhat vengono usati in genere per eseguire le reti di sviluppo Ethereum personali.

Soluzioni per le reti di consorzi

Le reti di consorzio sono dotate di autorizzazioni. Richiedono un invito per partecipare. Le reti di consorzio garantiscono sicurezza, privacy, conformità e prestazioni.

Le numerose opzioni per le blockchain di consorzi includono Hyperledger Besu, R3 Corda e Quorum. Si esamineranno due opzioni comuni per le blockchain di consorzi: Hyperledger Besu e R3 Corda.

Hyperledger Besu

Hyperledger Besu è un client Ethereum open source. È sviluppato con la licenza per Apache 2.0 e scritto in Java.

Besu viene usato per sviluppare applicazioni aziendali che richiedono l'elaborazione delle transazioni sicura e a prestazioni elevate in una rete privata. Ha un'interfaccia della riga di comando e un'API JSON-RPC.

Besu esegue, gestisce, esegue il debug e monitora i nodi in una rete Ethereum. L'API supporta le tipiche funzionalità di Ethereum, ad esempio:

  • Mining di Ether
  • Sviluppo di contratti intelligenti
  • Sviluppo di applicazioni decentralizzate

Besu è un noto client Ethereum. È univoco e può essere usato sia nelle reti pubbliche che nelle reti private basate su consorzi.

Besu può essere distribuito in diversi modi. Per altre informazioni sulla configurazione e la distribuzione, vedere il sito Web di Hyperledger Besu.

R3 Corda

La piattaforma Corda è una blockchain privata con autorizzazioni, il cui scopo è supportare comunicazioni, interazioni e transazioni attendibili tra le entità.

Corda Enterprise fornisce gli attributi di base della codebase open source Corda. Una funzionalità chiave è il supporto per i requisiti aziendali per il software con licenza.

In Ethereum le applicazioni client svolgono un ruolo fondamentale nel ciclo di vita delle transazioni. L'applicazione client ottiene le chiavi di firma e le transazioni prima che le identità vengano inviate ai nodi.

Nella piattaforma Corda le applicazioni client (comunemente dette CorDapps) risiedono interamente nei nodi Corda. Le identità di firma di chiavi e transazioni esistono solo nei nodi, non nel client. Le applicazioni client attivano il flusso di lavoro registrato nel nodo Corda di destinazione e ne monitorano l'avanzamento.

Un'estensione di Visual Studio Code per Corda supporta lo sviluppo Corda. Per installare l'estensione, in Visual Studio Code selezionare l'icona Estensioni, quindi immettere Corda per trovare e installare l'estensione.