🇮🇹 "Uno sguardo da vicino al software che esegue Cardano"

:it: Traduzione italiana di “A close look at the software running Cardano” scritto da Niamh Ahern nel blog IOG

Traduzione italiana a cura di Lordwotton di RIOT Stake Pools. Se apprezzi queste traduzioni, per favore valuta di supportare il mio lavoro delegando i tuoi ada a RIOT :pray: entra nel nostro gruppo Telegram


Uno sguardo da vicino al software che esegue Cardano

Scopri lo ‘stack’ di componenti che interagiscono per eseguire la piattaforma blockchain

img

Cardano è stato progettato in moduli, con componenti collegati che possono essere utilizzati in vari modi. Questi componenti formano lo “stack della piattaforma” di Cardano. Lavorano insieme sotto il cofano per supportare la costruzione e l’uso della blockchain Cardano dal vivo.

Siamo attualmente nella fase iniziale di testnet sulla strada verso l’hard fork di Alonzo, che porterà la piena capacità di contratto intelligente a Cardano. Questo processo è molto complesso e richiede il costante aggiornamento dei diversi elementi che compongono la piattaforma Cardano, e la loro attenta integrazione e test. Quindi, è un buon momento per rivisitare questi componenti, spiegare alcuni della terminologia, e scoprire come interagiscono all’interno dello ‘stack della piattaforma’.

Elementi dello stack della piattaforma Cardano

img

Figura 1. Componenti che comunicano con il nodo Cardano

Lo stack della piattaforma per Cardano include questi componenti principali:

  • Nodo Cardano (e processi associati)
  • Portafoglio Cardano
  • Interfaccia a riga di comando del portafoglio (CLI)
  • DB Sync (sincronizza i dati della blockchain con un database relazionale)
  • Database PostgreSQL (che interagisce con GraphQL, REST API e Smash)
  • Server Smash
  • Rosetta API (protocollo di comunicazione blockchain)

Si noti che il portafoglio Daedalus non fa parte dello stack principale, ma comunica con i componenti (Figura 1).

Il nodo e il livello di rete

Per prima cosa, diamo un’occhiata al nodo Cardano. Questo software gira sul tuo computer e sostiene la rete, permettendo a tutti di partecipare alla blockchain decentralizzata. Il nodo integra il consenso, il ledger e i sottocomponenti della rete, fornendo la configurazione di alto livello, le API, la CLI, il logging, la gestione della memoria e le capacità di monitoraggio che possono essere utilizzate da altri componenti di Cardano o da utenti esperti. Daedalus è un portafoglio full-node, quindi se lo stai eseguendo sulla tua macchina locale, stai effettivamente aiutando a gestire la rete.

Il livello di rete

Poi abbiamo il livello di rete. Questo collega ogni nodo Cardano in un sistema distribuito che gestisce la blockchain e i servizi associati. La rete consiste in un insieme di nodi che comunicano tra loro per mantenere il ledger distribuito, supportare l’invio delle transazioni e interagire con i portafogli degli utenti e altri servizi. Il nucleo della rete è costruito intorno ai nodi decentralizzati - i pool di stake - che convalidano collettivamente i blocchi e aggiungono nuovi blocchi alla catena. Essi sono supportati da nodi relay dedicati che gestiscono le connessioni di rete e stabiliscono la struttura della rete nel suo complesso. I nodi consumer dedicati che sono gestiti dal portafoglio Daedalus e da altri servizi si connettono a questa rete per tracciare e inviare transazioni sulla catena.

I nodi Cardano mantengono le connessioni con i loro pari. Un insieme di mini-protocolli permette la comunicazione tra i nodi. Ogni mini-protocollo implementa un requisito di base per lo scambio di informazioni, come informare i peer dell’ultimo blocco, condividere i blocchi se necessario, o condividere le nuove transazioni nella rete Cardano. Ai fini della connessione, i mini-protocolli sono determinati dalla versione del protocollo di rete.

Backend del portafoglio Cardano

Il componente Cardano wallet backend supporta l’interfaccia grafica del portafoglio Daedalus. È usato per inviare e ricevere ada. Dietro le quinte, il portafoglio esegue un nodo Cardano completo. A differenza di un portafoglio client leggero, carica l’intero libro mastro condiviso e convalida tutte le transazioni, rafforzando così la sicurezza della blockchain per tutti.

Interfaccia a riga di comando del portafoglio (CLI)

L’interfaccia a riga di comando del portafoglio (CLI) supporta le interazioni con la blockchain vera e propria. Gli utenti tecnicamente più avanzati possono usare la CLI per lavorare con una collezione di strumenti per generare chiavi, costruire transazioni, creare certificati ed eseguire altri compiti. È organizzata in una gerarchia di sottocomandi, e ogni livello è dotato di una propria documentazione integrata della sintassi dei comandi e delle opzioni.

DB Sync

DB Sync è un componente che segue le attività sulla catena Cardano e memorizza blocchi e transazioni in PostgreSQL. Come componente ‘middleware’, alimenta cardano-graphql. DB Sync memorizza i dati della blockchain recuperati da cardano-node in un database intermedio per consentire interfacce di livello superiore per l’esplorazione della blockchain. Fornisce anche una serie di query per recuperare i dati della blockchain di Cardano da PostgreSQL, e supporta servizi come il Cardano Explorer, un’interfaccia grafica che riflette i dati della blockchain in modo diretto. Cardano GraphQL è un’API multipiattaforma per il linguaggio di interrogazione dati GraphQL.

Rosetta API

L’interfaccia di programmazione dell’applicazione Rosetta fornisce un’interfaccia di alto livello che mira a rendere il processo di integrazione più facile, più veloce e più affidabile in modo da poter costruire una volta e integrare la tua blockchain ovunque. Abbiamo creato un’implementazione unica cardano-rosetta per semplificare il processo di integrazione con Cardano. Questa interfaccia è particolarmente utile per gli exchange, poiché possono interagire con la catena Cardano utilizzando la stessa interfaccia che usano con altre blockchain.

Guardando avanti

Con i contratti intelligenti in arrivo su Cardano, questo significa che Plutus, il linguaggio nativo dei contratti intelligenti, e altri linguaggi di sviluppo di contratti intelligenti come Marlowe per la finanza e Glow per DApps saranno integrati nello stack Cardano. Gli ingegneri di IO Global forniranno componenti nuovi ed estesi per compilare gli script di Plutus, Marlowe e Glow, presentarli sulla catena e interagire con essi (Figura 2).

img

Figura 2. Plutus, Marlowe, Glow, Solidity e IELE possono essere utilizzati per scrivere contratti intelligenti Cardano

L’aggiornamento del protocollo Alonzo si baserà sui recenti aggiornamenti dei token e viene distribuito alla rete principale attraverso diversi testnet. I nostri partner di Plutus e i pionieri di Plutus ci aiuteranno a testare Plutus Core e faranno parte della fase di accettazione degli utenti prima del dispiegamento su mainnet. A questo punto aggiungeremo ufficialmente i componenti Plutus e Marlowe, come entrambi gli interpreti, allo stack della piattaforma di Cardano.

Per rimanere aggiornati sul rollout di Alonzo, controllate i nostri canali sociali e la pagina del blog.