Fork in proof-of-stake?

Sep 17 2020

Per quanto riguarda il fatto che in Proof-of-Stake, uno stakeholder sarà eletto casualmente come l'autore successivo del blocco successivo in ogni epoca ( o ogni round o slot ), logicamente, in ogni round (o slot) c'è un solo autore del blocco, e quindi un unico blocco proposto. Con queste condizioni, e se questo nuovo blocco sarà convalidato o meno dal resto della rete, c'è ancora la possibilità che si verifichi un fork ad ogni round? (Come in ogni round viene selezionato un singolo autore.)

IMPORTANTE: in questa domanda, intendo "slot" dicendo "round" ed "epoch" .

Domande correlate:

Proof-of-Stake: come evitare che qualcuno venga sempre selezionato come autore del blocco?

Come selezionare l'autore successivo del blocco in Proof-of-Stake?

Risposte

3 eth Sep 18 2020 at 11:50

Sì, i fork sono possibili in Proof of Stake.

Ecco un esempio. Supponiamo che Alice (A) sia il proponente per lo slot 1 e Bob (B) per lo slot 2. Il blocco genesis (G) è lo slot 0.

Alice crea il blocco nello slot 1. Questa catena è G-> A.

Bob non ha mai visto il blocco di Alice, quindi crea il blocco nello slot 2. Questa catena è G-> vuota-> B.

Ora ci sono 2 forchette. Charlie, il proponente nello slot 3, può scegliere tra entrambi i fork. (C'è anche la possibilità che Charlie non possa scegliere nessuna delle due forchette e una terza forchetta potrebbe essere G-> vuota-> vuota-> C.)

Vedi qual è la differenza tra uno slot e un blocco?