🇮🇹 "Spiegare il modello eUTXO di Cardano ad un bambino di cinque anni"

:it: Traduzione italiana di “Explaining Cardano’s eUTXO model for a five-year-old”

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


Spiegare il modello eUTXO di Cardano ad un bambino di cinque anni

Cardano è fondamentalmente diverso da Ethereum per quanto riguarda il suo modello contabile. Mentre Cardano utilizza il modello UTXO esteso (eUTXO), Ethereum utilizza gli account. In questo articolo spiegheremo la differenza tra questi approcci in modo semplificato.

Modelli di contabilitĂ 

Si può pensare a una blockchain come a un libro mastro, una storia di registrazioni contabili scritte da un ragioniere. Il libro mastro è aperto, quindi tutti i registri possono essere consultati da tutti i ragionieri, ma anche da tutti gli utenti in qualsiasi momento. Nella nostra analogia, i ragionieri rappresentano la rete. Immaginiamo che i contabili siano seduti in una banca e vengano avvicinati da clienti (utenti) che chiedono loro di effettuare registrazioni contabili (transazioni). Tutti i ragionieri condividono un libro mastro che utilizzano per le registrazioni delle transazioni.

Nelle reti blockchain, gli utenti possiedono le monete. Anche se le registrazioni sono in un libro mastro, quando gli utenti si recano dal commercialista con una richiesta di modifica di una registrazione, devono confermarla con un’impronta digitale (analogamente alla firma digitale di una transazione). Immaginate le monete ADA e ETH come pezzi di carta che gli utenti inseriscono in una scatola di legno (portafogli). I pezzi di carta sono fisicamente nel libro mastro e insieme formano le singole pagine del libro mastro, ma grazie alla scatola gli utenti possono consultarli e consegnarli al contabile se chiedono di apportare una modifica a un record (inviare una transazione).

Cardano ed Ethereum si differenziano per il modo in cui vengono scritte le voci del libro mastro, quindi per il modo in cui i clienti detengono le monete.

Cardano lavora con le monete ADA in modo simile alle banconote, con la differenza che il taglio può essere di qualsiasi valore. Ad esempio, 12 ADA, 3,5 ADA e 0,3 ADA. L’utente ha 3 pezzi di carta nella sua scatola con questi valori scritti sopra (ha 3 UTXO). Il totale è di 15,8 ADA. A differenza di Ethereum, Cardano ha la capacità aggiuntiva di avere diverse scatole più piccole nella scatola che contengono singoli pezzi di carta (le scatole più piccole rappresentano gli indirizzi della blockchain). Ci possono essere più pezzi di carta in una scatola più piccola.


Se Alice volesse inviare 14 ADA a Bob, dovrebbe dare al contabile 2 pezzi di carta con 12 ADA e 3,5 ADA. Il contabile creerebbe un nuovo pezzo di carta (un nuovo UTXO) e vi scriverebbe 14 ADA. Mette questo pezzo di carta nella scatola di Bob. Successivamente, crea un altro pezzo di carta con un valore di 1,5 ADA, che rimette nella scatola di Alice.


Quando il contabile completa la registrazione nel libro mastro (elabora una transazione), Alice avrà 2 pezzi di carta nella scatola con un valore di 0,3 ADA e 1,5 ADA. La scatola di Bob era vuota prima della registrazione. Dopo l’inserimento nel libro mastro, avrà 14 ADA.

Abbiamo semplificato un po’ l’analogia. Il ragioniere prenderebbe una commissione (tassa di transazione) per scrivere una voce nel libro mastro, ad esempio 0,2 ADA, quindi rimetterebbe solo 1,3 ADA nella scatola di Alice.

Nel modello contabile di Ethereum, gli utenti hanno sempre e solo un singolo pezzo di carta nella scatola con un valore scritto sopra. Questo è simile al saldo corrente di un conto bancario. Nel caso di Cardano, Alice aveva 15,8 ADA nella sua scatola. Supponiamo che abbia 15,8 ETH in Ethereum, quindi ha un singolo pezzo di carta con quel valore nella sua scatola.


Nel caso di Ethereum, quando il ragioniere vuole fare una nuova registrazione contabile, sovrascrive i dati sul pezzo di carta di Alice e Bob allo stesso tempo. Se Alice invia 14 ETH a Bob, come nell’esempio precedente, il contabile sovrascrive il valore 15,8-1,8 sul foglio di carta di Alice. Allo stesso tempo, sovrascrive il pezzo di carta di Bob e trasforma il valore 0 in 14. In questo esempio, abbiamo anche omesso il compenso del contabile.


Abbiamo usato degli esempi per mostrare come gli utenti si rivolgano ai ragionieri e chiedano loro di effettuare una registrazione nel libro mastro, il che è analogo all’invio di una transazione. Il funzionamento sarebbe molto simile se gli utenti richiedessero ai contabili un’operazione più complessa, come un prestito o lo scambio di due asset (esecuzione di smart contract).

Un nuovo record in Ethereum viene creato riscrivendo pezzi di carta (cambio di bilancio), mentre nella rete Cardano vengono creati nuovi pezzi di carta separati che si basano sui pezzi di carta precedenti. La creazione di nuovi pezzi di carta invece della loro riscrittura è una differenza fondamentale tra i modelli contabili.

La differenza nell’uso del libro mastro

Il modello di contabilitĂ  influisce sul modo in cui Cardano ed Ethereum utilizzano il libro mastro, o come i ragionieri possono creare una nuova voce. Un contabile sulla rete Ethereum deve estrarre il libro mastro dal caveau quando crea un nuovo record (o piĂą record) e portarlo alla sua scrivania per lavorare con tutte le caselle contemporaneamente (stato globale condiviso).

Per poter effettuare la nuova registrazione, il contabile deve avere una visione d’insieme di tutte le caselle e deve essere sicuro che al momento della registrazione un altro contabile non tenterà di effettuare la registrazione contemporaneamente. Portando il libro mastro sulla propria scrivania, il contabile segnala agli altri contabili che solo lui può effettuare le registrazioni.

Gli altri ragionieri della rete non possono inserire le loro registrazioni nel libro mastro perché un altro ragioniere lo tiene per sé. Non possono nemmeno preparare nuove registrazioni in anticipo, perché non sanno quali saranno le nuove registrazioni nel libro mastro. Una volta che il libro mastro è tornato nel caveau, un altro contabile può prenderlo. Tutti i contabili possono guardare le nuove registrazioni e verificarne la correttezza (convalida in blocco).


Il vantaggio è che il ragioniere, che ha il libro per sé, può apportare qualsiasi modifica in tutte le caselle. Può anche cambiare (riscrivere) un foglio in una casella più di una volta di seguito. Lo svantaggio è che l’ordine in cui vengono scritte le nuove voci è importante. Se un contabile inserisce 20 nuove voci, gli altri contabili devono rispettare questo ordine. Le singole voci sono interdipendenti.

Può accadere che in coda ci siano più utenti interessati a inserire una voce nel libro mastro. Anche se la loro richiesta era valida al momento della coda, quando arriva il loro turno, il contabile potrebbe non essere in grado di evadere la richiesta. L’utente deve comunque pagare al ragioniere un compenso per aver tentato l’elaborazione. L’impossibilità di eseguire l’operazione contabile è dovuta al fatto che essa dipendeva da caselle (pezzi di carta nelle caselle) che cambiavano quando un altro contabile aveva il libro mastro per sé. Purtroppo, gli utenti non hanno la possibilità di verificare in anticipo se la loro richiesta sarà valida prima di accodarsi.

Anche il ragioniere della rete Cardano deve portare il libro mastro alla sua scrivania dal caveau quando vuole creare nuove voci, ma non impedisce agli altri ragionieri di fare il loro lavoro. Il contabile non ha bisogno di tenere traccia di tutte le altre casse perché lavora solo con i pezzi di carta che il cliente ha messo sulla sua scrivania. Il ragioniere può verificare la validità della transazione contabile richiesta indipendentemente dalle altre caselle (nessuno stato globale).

I clienti possono verificare in anticipo se la transazione richiesta è valida (convalida fuori dalla catena) e, in caso affermativo, possono essere certi che quando si uniranno alla coda, il commercialista accetterà ed eseguirà la loro transazione. Possono anche essere certi che la tariffa rimarrà invariata.

I singoli pezzi di carta non dipendono l’uno dall’altro, quindi l’ordine delle registrazioni effettuate dal contabile che ha a disposizione il libro mastro non è importante. Quando il contabile riporta il libro mastro nel caveau, gli altri contabili possono convalidare le registrazioni in parallelo.

L’indipendenza di una particolare operazione contabile dalle altre caselle (pezzi di carta nelle caselle) ha il vantaggio che è quasi certo il successo se ha superato la convalida locale da parte dell’utente. L’utente stesso può giocare a fare il contabile per vedere se la sua richiesta è valida. Questo è particolarmente importante per le operazioni più complesse come i prestiti e lo scambio di beni (smart contract).

Lo svantaggio è che, soprattutto con le operazioni contabili più complesse, due contabili possono voler lavorare contemporaneamente sullo stesso foglio, ma solo uno di loro può riuscirci. In alcuni casi, è necessario introdurre una speciale sincronizzazione tra i contabili.

Al momento, i contabili della rete Cardano funzionano in modo simile a quelli della rete Ethereum. La differenza principale è che i contabili non hanno bisogno di conoscere il contesto di tutti i pezzi di carta nelle scatole degli altri utenti per svolgere il loro lavoro. Il principio della creazione di una nuova serie di voci e della successiva convalida è simile a quello della rete Ethereum. Un contabile eletto porta il libro mastro dal caveau alla sua scrivania per creare nuove voci. Vedremo maggiori differenze quando passeremo alla nuova versione del consenso PoS di Ouroboros.

PossibilitĂ  di scalabilitĂ  rispetto al modello con account

I contabili della rete Ethereum non possono lavorare in parallelo su singole operazioni contabili. In qualsiasi momento, solo un contabile può estrarre il libro mastro dal caveau. A quel punto, può lavorare in sicurezza con tutti i pezzi di carta contenuti nelle scatole. Poiché gli altri contabili devono sempre seguire l’ultima voce del libro mastro per continuare il loro lavoro, non possono lavorare con i clienti in coda. Devono sempre aspettare che il libro mastro venga riportato nel caveau per consultare le voci precedenti. Devono convalidarle e solo allora un altro contabile può iniziare a lavorare con i clienti successivi in coda. Questo impedisce essenzialmente l’elaborazione parallela delle operazioni contabili e costituisce un ostacolo importante alla scalabilità.

Nella rete Cardano, sarĂ  possibile per piĂą contabili lavorare simultaneamente e ciascuno potrĂ  gestire le richieste dei clienti nella propria coda. Questa capacitĂ  sarĂ  utilizzata in un consenso PoS chiamato Leios. La rete Cardano sarĂ  in grado di far preparare ai contabili le scritture contabili in anticipo, in modo che un contabile principale riveda le scritture preparate.

Quando il contabile prende il libro mastro per sé, scrive sempre nuove voci (crea un nuovo blocco). Questo crea un elenco di voci che devono essere verificate dagli altri contabili (consenso di rete). Questo processo richiede di solito un certo tempo (tempo di blocco) e il numero di nuove voci è limitato (dimensione del blocco). I contabili condividono a turno il libro mastro a intervalli di circa 20 secondi. Anche se un contabile lavora per un secondo, ad esempio, il resto del tempo serve agli altri contabili per verificare le registrazioni.

Cardano consentirà al contabile prescelto (o eventualmente a più contabili) di preparare nuove registrazioni ogni singolo secondo, lasciando poi che sia il contabile principale a effettuare il controllo principale (trovare e scartare i tentativi di doppia spesa, rimuovere i duplicati, ecc.) Questo è possibile solo perché il lavoro dei singoli contabili è ampiamente indipendente dal risultato del lavoro degli altri contabili e del contabile principale. L’indipendenza deriva dal fatto che i pezzi di carta nelle scatole sono indipendenti l’uno dall’altro.


Nella rete Ethereum, la scalabilità dovrà essere gestita in modo diverso. Non è possibile utilizzare lo stesso approccio perché il lavoro dei singoli contabili è interdipendente. Ogni contabile deve sapere esattamente cosa ha fatto il precedente. Tuttavia, queste informazioni potrebbero non essere disponibili a causa del tempo necessario per propagare i dati attraverso la rete. Un limite è la necessità di bloccare il libro mastro per un singolo contabile che deve lavorare con tutte le caselle e l’impossibilità per gli altri contabili di fare qualcosa di utile nel frattempo. La produzione e la successiva convalida di nuovi record (blocco) richiedono 20 secondi e durante questo tempo solo un contabile è in grado di lavorare. Il resto dei contabili è inattivo.

Conclusione

Speriamo che la nostra analogia vi abbia aiutato a capire la differenza tra i modelli contabili di Cardano ed Ethereum. La differenza non è così grande a prima vista, ma in realtà il modello contabile influisce sulla scalabilità, sulla prevedibilità del risultato dell’operazione contabile desiderata, sulla prevedibilità dell’importo delle commissioni, sulla sicurezza, ecc.