Cardano: Poof-of-stake (PoS) e il linguaggio di codifica

Dopo aver presentato il progetto Cardano (ADA) in questa guida introduttiva, abbiamo cominciato a fornirti una vista più di dettaglio afforntando i concetti come  la tecnologia a strati e il portafoglio in questa sezione.

In sintesi avevamo detto che i punti innovativi che rendono unico il progetto Cardano (ADA) sono:

  • il portafoglio;
  • la tecnologia a strati;
  • la Proof-of-Stake (PoS);
  • il linguaggio di codifica;
  • il modello di governance e la tesoreria.

Vediamo adesso il concetto di la Proof-of-stake (PoS) ed il linguaggio di codifica.

Partiamo!

Proof-of-stake (PoS)

Cardano, come NEO, usa un protocollo Proof of Stake (PoS), che si chiama Ouroboros. Si dice che sia l’unico protocollo Proof of Stake (PoS) con sicurezza provata matematicamente. Ouroboros è stato sviluppato in maniera specifica con l’aiuto dell’Università di Edimburgo, dell’Università del Connecticut, IOHK e del Tokyo Institute of Technology.

A differenza delle criptovalute come Ethereum che utilizzano la Proof of Work (PoW) per determinare chi conferma i blocchi sulla blockchain, Cardano utilizza il criterio di Proof of Stake (POS) per farlo: con PoS, i blocchi vengono confermati in base a chi detiene il maggior numero di token.

Cardano utilizza un sistema Proof of Stake chiamato Ouroboros.

Ma facciamo un esempio pratico:

  • con la Proof of Work (POW) se gestisci il 3% della potenza di calcolo totale della rete, puoi aspettarti di ottenere il 3% dei premi del blocco.
  • con la Proof of Stake (POS) se gestisci il 3% dei Token, puoi aspettarti di ottenere il 3% dei premi del blocco.

In altre parole, con il Proof of Stake (POS) non hai bisogno di grandi investimenti nella infrastruttura di calcolo.

Come con NEO e Ark, Cardano utilizza una variazione del protocollo Proof of Stake (POS) simile a Delofated Proof of Stake (dPoS).  I premi di blocco vengono assegnati ai nodi di consenso che forniscono un pagamento ai titolari di token che hanno votato per loro.

Con Cardano, il sistema funziona in modo leggermente diverso:

  • Il tempo viene spezzato in Epoche Epoch (ogni Epoca potrebbe essere di 20 minuti)
  • All’interno di ogni epoca, o blocco di 20 minuti, ci sono slot.
  • Le slot sono solo i blocchi da estrarre.

Un algoritmo casuale seleziona un titolare di token per ogni slot (leader di slot) per fungere da nodo di consenso. Il leader di slot quindi conferma il blocco e si arrende al prossimo leader di slot scelto a caso. Tutti i premi del blocco vengono raccolti in un pool e vengono distribuiti ai leader degli slot alla fine di ogni epoca.

Un pò come succede per i biglietti della lotteri, con Cardano, più token (ADA) hai, più è probabile che tu venga eletto leader di slot: più ne hai, migliori sono le tue probabilità.

Le epoche definiscono i leader degli slot per ogni slot: una volta che leader di slot finisce il suo turno, la persona successiva prende il suo posto.

La piattaforma di Cardano sceglie casualmente un nodo per confermare il blocco successivo e i premi vengono assegnati a quel nodo.

Più token hai, più alta è la probabilità di essere eletti. I titolari di token possono anche “votare” per i nodi contribuendo con i loro token,  aumentando la probabilità che vengano eletti.

 

Scalabilità della piattaforma Cardano (ADA)

Con Cardano, è stata approfondita l’idea di come scalare la piattaforma. Infatti Ouroboros consente che:

  • i leader di slot possono gestire blocchi su più catene;
  • si possono gestire più Epoche contemporaneamente.

Entrambe queste features consentono una blockchain in grado di supportare soluzioni di scalabilità come

  • sidechain – catene multiple che interagiscono fra loro
  • sharding – la possibilità di frammentare la blockchain più grande in “pezzi” gestibili.

È importante notare che nulla di tutto ciò è stato ancora implementato. Attualmente è in fase di ricerca e verrà definito meglio quando la rete ne avrà bisogno.

Nel secondo trimestre del 2018 ci saranno molte più informazioni disponibili riguardo a come funzionerà il sistema di ricompensa e le regole sulla scalabilità.

Confronto con NEO ed Ethereum:

  • Ethereum utilizza ancora la Proof of Work, che è un grave svantaggio. Stanno comunque passando a un sistema Proof of Stake.
  • NEO usa quello che viene chiamato dBFT. Il sistema NEO consente ai possessori di token NEO di eleggere nodi di consenso che raggiungono il consenso sul blocco successivo, non diversamente da Cardano. Il team NEO sta abbandonando il controllo su questi nodi di consenso.
  • Ethereum sta lavorando per sharding, sidechains e altre soluzioni di scaling. La piattaforma NEO ha già implementato più soluzioni di scaling rispetto a Ethereum, ma sta lavorando verso sidechain e interoperabilità.

Il Linguaggio di Codifica

Cardano è codificato in un linguaggio chiamato Plutus, che è molto simile a Haskell.  Innanzitutto, è più semplice ed efficiente rispetto a linguaggi come Solidity. In secondo luogo, si tratta di un codice più preciso che impiega metodi di verifica matematica al fine di limitare l’errore umano e confermare la correttezza del codice.

Cardano usa Plutus, un linguaggio simile a Haskell, linguaggio di codifica molto più dinamico.

In sostanza, il codice ha un processo migliore per verificare che lo stesso sia stato scritto correttamente. Questo probabilmente aiuterà a prevenire errori e bug, come quelli che hanno permesso l’Hack of Ethereum DAO o la catastrofe Parity Wallet.

Cardano prevede anche di incorporare più linguaggi nella sua piattaforma di smart contracts in futuro.
Confronto tra Ethereum e NEO:

  • NEO consente la codifica in una varietà di linguaggi di codifica più comuni, offrendo agli sviluppatori maggiore flessibilità.
  • Ethereum ha creato il proprio linguaggio chiamato Solidity, ottimizzato per gli smart contracts di Ethereum.

 Per adesso fermiamoci qui, tratteremo gli ultimi punti  il modello di governance e la tesoreria che rendono cosi speciale Cardano (ADA) nelle prossime sezioni.

 

Commenta per primo

Lascia un commento

L'indirizzo email non sarà pubblicato.


*


*