🇮🇹 "Il percorso di Ouroboros verso la decentralizzazione

:it: Traduzione italiana di “The Ouroboros path to decentralization” scritto dal prof. Aggelos Kiayias e pubblicato nel blog IOHK il 23 giugno 2020.

Traduzione italiana a cura di Lordwotton di RIOT Stake Pools


Il percorso di Ouroboros verso la decentralizzazion

Il protocollo che alimenta Cardano e la sua filosofia progettuale

image

La progettazione e l’implementazione di un ledger distribuito è un compito tecnicamente impegnativo. Ciò che ci si aspetta da un registro è la promessa di una visione coerente a tutti i partecipanti, nonché una garanzia di reattività al flusso continuo di eventi che derivano dalle loro azioni. Queste due proprietà, a volte definite come persistenza e vivacità, sono il segno distintivo dei sistemi di contabilità distribuita.

Raggiungere la persistenza e la vivacità in un sistema centralizzato è un compito ben studiato e abbastanza semplice; purtroppo, il ledger che emerge è precariamente fragile perché il server che supporta il registro diventa un unico punto di fallimento. Di conseguenza, l’hacking del server può portare alla violazione istantanea di entrambe le proprietà. Anche se il server non viene hackerato, gli interessi degli operatori del server potrebbero non essere in linea con la continua garanzia di queste proprietà. Per questo motivo, il decentramento è stato avanzato come rimedio essenziale.

Informalmente, il decentramento si riferisce a un’architettura di sistema che richiede a molte entità di agire individualmente in modo tale che le proprietà del ledger emergano dalla convergenza delle loro azioni. In cambio di questo aumento di complessità, un sistema ben progettato può continuare a funzionare anche se alcune parti si discostano dal corretto funzionamento. Inoltre, nel caso di deviazioni più significative, anche se qualche perturbazione è inevitabile, il sistema dovrebbe comunque essere in grado di tornare al normale funzionamento e contenere i danni.

Come si progetta un sistema decentralizzato robusto? Il mondo è un luogo complicato e la decentralizzazione non è una caratteristica che può essere codificata in modo rigido o dimostrata tramite test - le potenziali configurazioni che potrebbero sorgere sono infinite. Per contrastare questo, è necessario sviluppare modelli che comprendano sistematicamente tutte le diverse minacce che il sistema può incontrare e dimostrare in modo rigoroso che le due proprietà fondamentali della persistenza e della vivacità sono mantenute.

Gli argomenti più forti a favore dell’affidabilità di un sistema decentralizzato combinano garanzie formali contro un ampio portafoglio di diverse classi di modelli di fallimento e di attacco. La prima classe importante è quella dei potenti modelli bizantini. In questo contesto si dovrebbe garantire che anche se un sottoinsieme di partecipanti si discosta arbitrariamente dalle regole, le due proprietà fondamentali vengono mantenute. La seconda classe importante è quella dei modelli di razionalità. Qui si presume che i partecipanti siano massimizzatori di utilità razionale e l’obiettivo è quello di mostrare che le proprietà del ledger derivano dai loro sforzi per perseguire il loro interesse personale.

Ouroboros è un protocollo di contabilità decentralizzato che viene analizzato nel contesto del comportamento sia bizantino che razionale. Ciò che rende unico il protocollo è la combinazione dei seguenti elementi di progettazione.

  • Utilizza lo stake come risorsa fondamentale per identificare l’influenza dei partecipanti nel sistema. Nessuna risorsa fisica viene sprecata nel processo di manutenzione del ledger, che si dimostra robusto nonostante la “simulazione senza costi” e gli attacchi “nothing at stake” che in precedenza erano considerati come barriere fondamentali per i ledger basati sullo stake. Questo rende Ouroboros decisamente più attraente dei protocolli proof-of-work, che richiedono una spesa energetica gigantesca per mantenere il consenso.
  • È dimostrato che è resistente anche se i sottoinsiemi arbitrariamente grandi di partecipanti, in termini di quota di partecipazione, si astengono dalla manutenzione del ledger. Questa garanzia di disponibilità dinamica assicura vivacità anche in presenza di livelli di impegno arbitrari e imprevedibili. Allo stesso tempo, di quei partecipanti che sono attivi, poco più della metà deve seguire il protocollo - il resto può deviare arbitrariamente; infatti, anche picchi temporanei al di sopra della soglia del 50% possono essere tollerati. Così Ouroboros è decisamente più resistente e adattabile dei classici protocolli bizantini di tolleranza ai guasti (così come tutti i loro moderni adattamenti), che devono prevedere con relativa certezza il livello di partecipazione previsto e possono smettere di funzionare quando la previsione è falsa.
  • Il processo di adesione e partecipazione all’esecuzione del protocollo è trustless. , nel senso che non richiede la disponibilità di alcuna risorsa speciale condivisa come un checkpoint recente o un orologio comune. L’adesione al protocollo richiede solo il blocco di genesi pubblico della catena e l’accesso alla rete. Questo rende Ouroboros libero dai presupposti di fiducia comuni ad altri protocolli di consenso la cui sicurezza crolla quando le risorse condivise di fiducia sono sovvertite o non disponibili.
  • Ouroboros incorpora un meccanismo di ricompensa per incentivare i partecipanti ad organizzarsi in nodi operativi, noti come stake pool, che possono offrire una buona qualità di servizio indipendentemente da come gli stake sono distribuiti tra la popolazione di utenti. In questo modo, tutti gli stakeholder contribuiscono al funzionamento del sistema - garantendo robustezza e rappresentanza democratica - mentre il costo della manutenzione del ledger è distribuito in modo efficiente tra la popolazione di utenti. Allo stesso tempo, il meccanismo viene fornito con contromisure che disincentivano la centralizzazione. Questo rende Ouroboros fondamentalmente più inclusivo e decentralizzato rispetto ad altri protocolli che finiscono con il coinvolgere solo una manciata di attori responsabili della manutenzione del ledger o non forniscono alcun incentivo alle parti interessate a partecipare e ad offrire una buona qualità del servizio.

Questi elementi di design di Ouroboros non dovrebbero essere appelli evidenti al buon senso dell’utente del protocollo. Al contrario, sono stati consegnati con una documentazione meticolosa in documenti che sono stati sottoposti a peer review e sono apparsi in conferenze e pubblicazioni di alto livello nel campo della sicurezza informatica e della crittografia. In effetti, è giusto dire che nessun altro sforzo di ricerca del consenso è rappresentato in modo così completo in questi circoli. Ogni articolo è esplicito sul tipo specifico di modello che viene utilizzato per analizzare il protocollo e i risultati che ne derivano sono esposti in termini concreti. Gli articoli sono ad accesso aperto, privi di brevetto, e includono tutti i dettagli tecnici per consentire a chiunque, con la relativa competenza tecnica, di convincersi della veridicità delle affermazioni fatte in merito a prestazioni, sicurezza e funzionalità.

Costruire un’infrastruttura inclusiva, equa e resistente per applicazioni finanziarie e sociali su scala globale è la grande sfida della tecnologia dell’informazione oggi. Ouroboros contribuisce, non solo come protocollo con caratteristiche uniche, ma anche nel presentare una metodologia di progettazione che mette in evidenza i primi principi, un’attenta modellazione e un’analisi rigorosa. La sua architettura modulare e adattabile si presta anche al miglioramento continuo, all’adattamento e all’arricchimento con elementi aggiuntivi (come la parallelizzazione per migliorare la scalabilità o le zero-knowledge proofs per migliorare la privacy, per citare due esempi), che è una caratteristica adatta a soddisfare le esigenze e le complessità in continua evoluzione del mondo reale.

Ulteriori letture

Per approfondire il protocollo Ouroboros, dal suo inizio alle recenti novità, seguite questi link:

Ouroboros (Classic): il primo protocollo blockchain PoS provato e sicuro.

Ouroboros Praos: elimina la necessità di una struttura rotonda rigida e migliora la resilienza contro gli aggressori “adattativi”.

Ouroboros Genesis: come evitare la necessità di un recente checkpoint e dimostrare che il protocollo è sicuro sotto disponibilità dinamica per un’adesione e una partecipazione senza fiducia.

Ouroboros Chronos: elimina la necessità di un orologio comune.

Schemi di condivisione delle ricompense per le stake pool.

Gestione della contabilità e massimizzazione della partecipazione alle stake pool.

Ottimizzazione del throughput delle transazioni con protocolli di proof-of-stake.

Fast settlement con l’utilizzo di combinatori di contabilità.

Ouroboros Crypsinous: un protocollo di proof-of-stake che preserva la privacy.

Kachina: un modello di sicurezza unificato per smart contract privati.

Hydra: un’architettura di scalabilità off-chain per un alto throughput delle transazioni con bassa latenza e un minimo di storage per nodo.