🇮🇹 "Da Classic a Chronos: le implementazioni di Ouroboros spiegate"

:it: Traduzione italiana di “From Classic to Chronos: the implementations of Ouroboros explained - IOHK Blog

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


Da Classic a Chronos: le implementazioni di Ouroboros spiegate

Ouroboros è il protocollo di consenso di Cardano. Qui spieghiamo cosa fa e come si sta evolvendo.

img

Probabilmente avrete sentito parlare molto di Ouroboros: l’innovativo protocollo di consenso proof-of-stake utilizzato da Cardano. Sviluppato come alternativa più efficiente dal punto di vista energetico e sostenibile al proof of work, su cui si basano le precedenti criptovalute - Bitcoin e, attualmente, Ethereum - Ouroboros è stato il primo protocollo di consenso blockchain a essere sviluppato attraverso una ricerca sottoposta a revisione paritaria.

Guidato dal Prof. Aggelos Kiayias dell’Università di Edimburgo, Ouroboros e le sue successive implementazioni forniscono una nuova base per risolvere alcune delle più grandi sfide del mondo, in modo sicuro e su scala.

Ma il riconoscimento inizia con l’educazione. Questo articolo presenta una panoramica del funzionamento di Ouroboros. Esamina gli aspetti tangibili e gli aspetti introdotti da ciascuna implementazione, per favorire la comprensione del protocollo da parte della comunità e illustrare i motivi per cui è un vero e proprio cambiamento. Un’analisi dettagliata di ciascuna implementazione è contenuta nei documenti corrispondenti. Per una spiegazione a grandi linee di Ouroboros e delle sue implementazioni, invece, continuate a leggere.

Una parola sui protocolli di consenso e sul perché Ouroboros è differente

È ragionevole supporre che chiunque sia nuovo di questo settore possa essere confuso dal termine “protocollo di consenso”. In parole povere, un protocollo di consenso è il sistema di leggi e parametri che regolano il comportamento dei libri contabili distribuiti: un insieme di regole in base alle quali ogni partecipante alla rete gioca per raggiungere un accordo con tutti gli altri.

Le blockchain pubbliche non sono controllate da un’unica autorità centrale. Al contrario, viene utilizzato un protocollo di consenso per consentire ai partecipanti alla rete distribuita di concordare sulla storia della rete catturata sulla blockchain - per raggiungere un consenso su ciò che è accaduto e continuare da un’unica fonte di verità.

Questa singola fonte di verità fornisce un’unica registrazione. Questo è il motivo per cui le blockchain sono talvolta definite “trustless”: invece di richiedere ai partecipanti di fidarsi l’uno dell’altro, la fiducia è incorporata nel protocollo. Attori sconosciuti possono interagire e transare l’uno con l’altro senza dover fare affidamento su un intermediario che faccia da mediatore o su uno scambio preliminare di dati personali.

Ouroboros è un protocollo proof-of-stake, che si distingue dal proof of work. Invece di affidarsi ai “minatori” per risolvere equazioni computazionalmente complesse per creare nuovi blocchi - e premiare i primi che lo fanno - il proof of stake seleziona i partecipanti (nel caso di Cardano, stake pool) per creare nuovi blocchi in base alla quota che controllano nella rete.

Le reti che utilizzano Ouroboros sono molto più efficienti dal punto di vista energetico rispetto a quelle che utilizzano proof of work e, grazie a Ouroboros, Cardano è in grado di raggiungere un’efficienza energetica senza precedenti. A partire dal 2022, Bitcoin, ad esempio, richiede 204,50 TWh all’anno, un consumo paragonabile a quello della Thailandia. Ouroboros, invece, funziona con un Raspberry Pi, che ha un consumo di 15-18W (watt). La differenza di consumo energetico che ne deriva può essere paragonata a quella tra una famiglia e una nazione: una può essere scalata al mercato di massa, l’altra no.

Vediamo ora più da vicino come funziona il protocollo Ouroboros e cosa aggiunge ogni nuova implementazione.

Ouroboros Classic

Partiamo da Ouroboros: la prima implementazione del protocollo Ouroboros, pubblicata nel 2017. Questa prima implementazione (denominata Ouroboros Classic) ha gettato le basi del protocollo come rivale efficiente dal punto di vista energetico della proof of work, ha introdotto il quadro matematico per analizzare la proof of stake e ha introdotto un nuovo meccanismo di incentivi per ricompensare i partecipanti in un contesto di proof of stake.

Tuttavia, ciò che ha distinto Ouroboros dalle altre blockchain e, in particolare, dai protocolli proof-of-stake è stata la capacità di generare una casualità imparziale nell’algoritmo di selezione del leader del protocollo e le conseguenti garanzie di sicurezza che ne derivano. La casualità impedisce la formazione di schemi ed è una parte fondamentale del mantenimento della sicurezza del protocollo. Ogni volta che un comportamento può essere previsto, può essere sfruttato e, sebbene Ouroboros garantisca la trasparenza, impedisce la coercizione. È significativo che Ouroboros sia stato il primo protocollo blockchain a essere sviluppato con questo tipo di analisi di sicurezza rigorosa.

Come funziona Ouroboros

Una spiegazione completa del funzionamento di Ouroboros è contenuta nel suo documento di ricerca. Ouroboros divide il tempo su Cardano in epoche, dove ogni epoca è suddivisa in slot. Uno slot è un breve periodo di tempo in cui può essere creato un blocco e il raggruppamento degli slot in epoche è fondamentale per adattare il processo di elezione del leader alla distribuzione dinamica dello stake.
Il progetto di Ouroboros è incentrato sulla necessità di mantenere la sicurezza in presenza di attacchi. Per questo motivo, il protocollo ha una tolleranza incorporata per impedire agli attaccanti di propagare versioni alternative della blockchain e presuppone che un avversario possa inviare messaggi arbitrari a qualsiasi partecipante in qualsiasi momento. In effetti, il protocollo è garantito come sicuro nella cosiddetta impostazione sincrona (cioè con forti garanzie sui tempi di consegna dei messaggi) finché più del 51% dello stake in gioco è controllata da partecipanti onesti (cioè che seguono il protocollo).

Per ogni slot viene eletto un leader, responsabile di aggiungere un blocco alla catena e di passarlo al leader dello slot successivo. Per proteggere dai tentativi avversari di sovvertire il protocollo, a ogni nuovo slot leader viene richiesto di considerare gli ultimi blocchi della catena ricevuta come transitori: solo la catena che precede il numero prestabilito di blocchi transitori viene considerata stabilita. Questo viene anche definito ritardo di assestamento. Ciò significa, tra l’altro, che una parte interessata può andare offline ed essere comunque sincronizzata con la blockchain, purché non per un periodo superiore al ritardo di regolamento.

Nell’ambito del protocollo Ouroboros, ogni nodo della rete conserva una copia del mempool delle transazioni - dove le transazioni vengono aggiunte se sono coerenti con quelle esistenti - e della blockchain. La blockchain memorizzata localmente viene sostituita quando il nodo viene a conoscenza di una catena alternativa più valida.

L’inconveniente di Ouroboros Classic era che era suscettibile di attacchi adattivi - una minaccia significativa in un contesto reale che è stata risolta con Ouroboros Praos - e non aveva un modo sicuro per un nuovo partecipante di fare il bootstrap dalla blockchain, cosa che è stata risolta con Ouroboros Genesis.

Ouroboros BFT

Ouroboros BFT è venuto dopo, derivato come semplice caso speciale dall’analisi di Classic. Ouroboros BFT (Byzantine Fault Tolerance) è un semplice protocollo utilizzato da Cardano durante il riavvio di Byron, ovvero la transizione della vecchia base di codice di Cardano alla nuova. Ouroboros BFT ha contribuito a preparare la rete di Cardano al rilascio di Shelley e, con esso, alla sua decentralizzazione.

Invece di richiedere che i nodi siano sempre online, Ouroboros BFT ha ipotizzato una rete federata di server e una comunicazione sincrona tra i server per la creazione della blockchain. In questo contesto federato, il protocollo di consenso è interessante per la sua semplicità e la sua natura deterministica. Vale la pena notare che BFT richiede una frazione maggiore di parti oneste rispetto alle altre versioni di Ouroboros.

Ouroboros Praos

Ouroboros Praos si basa su Ouroboros Classic e ne migliora notevolmente la sicurezza e la scalabilità.

Come Ouroboros Classic, Ouroboros Praos elabora i blocchi di transazioni dividendo le catene in slot, che vengono aggregati in epoche. A differenza di Ouroboros Classic, tuttavia, Praos viene analizzato in un contesto semisincrono ed è sicuro contro gli attacchi adattivi.

Assume due possibilità: che gli avversari possano ritardare i messaggi dei partecipanti onesti per più di uno slot e che un avversario possa inviare messaggi arbitrari a qualsiasi partecipante in qualsiasi momento.

Grazie alla selezione del leader privato e alle firme sicure e in evoluzione, Praos offre una migliore casualità dell’epoca e garantisce che un avversario forte non possa prevedere il leader dello slot successivo e lanciare un attacco mirato (come un attacco DDoS) per sovvertire il protocollo. Praos è anche in grado di tollerare ritardi nella consegna dei messaggi controllati dagli avversari e la graduale corruzione dei singoli partecipanti in una popolazione di stakeholder in evoluzione, che è fondamentale per mantenere la sicurezza della rete in un contesto globale, a condizione che venga mantenuta una maggioranza onesta di stake.

Ouroboros Genesis

Poi c’è Ouroboros Genesis. Genesis migliora ulteriormente Ouroboros Praos aggiungendo un’inedita regola di selezione della catena, che consente alle parti di effettuare il bootstrap da un blocco genesi - senza, significativamente, la necessità di checkpoint affidabili o di ipotesi sulla disponibilità passata. Genesis fornisce anche la prova della Composibilità Universale del protocollo, che dimostra che il protocollo può essere composto con altri protocolli in configurazioni arbitrarie in un ambiente reale, senza perdere le sue proprietà di sicurezza. Ciò contribuisce in modo significativo alla sicurezza e alla sostenibilità del protocollo e delle reti che lo utilizzano.

Ouroboros Crypsinous

Ouroboros Crypsinous dota Genesis di proprietà che preservano la privacy. Si tratta del primo protocollo di blockchain proof-of-stake formalmente analizzato, che raggiunge la sicurezza contro gli attacchi adattivi mantenendo forti garanzie di privacy grazie all’introduzione di una nuova tecnica di evoluzione delle monete basata su SNARK e sulla crittografia forward-secure a chiave privata. Al momento non è prevista l’implementazione di Crypsinous su Cardano, ma può essere utilizzato da altre catene per ottenere maggiori garanzie di privacy.

Ouroboros Chronos

Ultimo ma non meno importante è Ouroboros Chronos. Chronos raggiunge due obiettivi: in primo luogo, mostra come i protocolli blockchain possano sincronizzare gli orologi in modo sicuro attraverso un nuovo meccanismo di sincronizzazione temporale, diventando così indipendenti da servizi temporali esterni. In secondo luogo, è un protocollo blockchain sicuro dal punto di vista crittografico che fornisce inoltre una fonte di tempo sicura dal punto di vista crittografico ad altri protocolli. In breve, Chronos rende il libro mastro più resistente agli attacchi che prendono di mira le informazioni temporali.

Da un punto di vista applicativo, Chronos può aumentare notevolmente la resilienza delle infrastrutture critiche di telecomunicazione, trasporto e altre infrastrutture IT che richiedono la sincronizzazione dell’ora locale con un orologio di rete unificato che non ha un singolo punto di fallimento.

Il futuro di Ouroboros

Ouroboros, che prende il nome dal simbolo dell’infinito, è la spina dorsale dell’ecosistema Cardano. Il protocollo funge da base e punto di partenza per sistemi auto-propaganti che si trasformano e crescono ciclicamente, soppiantando i sistemi esistenti - finanziari e non - e disintermediando le strutture di potere su cui si basano. È l’inizio di un nuovo standard, definito non dal centro ma dai margini.

Attualmente, Cardano opera sulla base di Ouroboros Praos. Genesis è in fase di implementazione per il 2022, dopodiché il libro mastro sarà aggiornato per supportare Ouroboros Chronos.

Il suo futuro è come il suo passato: uno sforzo instancabile per esplorare, iterare, ottimizzare e guidare il cambiamento positivo attraverso una ricerca rigorosa. Ogni passo nel viaggio di Ouroboros è una nuova evoluzione che ci avvicina alla visione di un mondo più equo, sicuro e sostenibile.

Questo post è una versione aggiornata dell’originale (creato da Kieran Costello) che è stato aggiornato per coprire le nuove versioni del protocollo.