Home » Cos’è lo Sharding?

Cos’è lo Sharding?

  • di

Lo sharding può aiutare le blockchain a migliorare la loro scalabilità ed efficienza, con l’obiettivo di renderle più competitive rispetto alle soluzioni centralizzate esistenti.

Due tipologie di Sharding (Traditional e Layered)
Due tipologie di Sharding (Traditional e Layered)

Le blockchain pubbliche permissionless sono registri distribuiti in grado di archiviare qualsiasi tipo di dati in modo decentralizzato e sicuro. La mancanza di un’autorità centrale all’interno della rete significa che tutti i dati vengono elaborati da ogni nodo del sistema e qualsiasi nuova informazione viene aggiunta al registro solo quando i nodi sono d’accordo. In questo modo, la rete garantisce che i dati archiviati siano corretti e non possano essere danneggiati da uno o più nodi compromessi.

La sua natura decentralizzata conferisce alla tecnologia blockchain la resilienza alle modifiche dannose dei dati, ma crea anche uno dei principali ostacoli sulla strada di una più ampia adozione: la mancanza di scalabilità.

Quando vengono aggiunti più nodi al sistema e la quantità di dati nel registro aumenta, la latenza (ovvero la lentezza) della rete aumenta in modo significativo. Pensa a un sistema di pagamento decentralizzato. Ogni volta che è necessario elaborare una nuova transazione, le informazioni dovrebbero essere aggiornate su tutti i nodi della rete e ciò richiede tempo. Le reti centralizzate hanno un vantaggio significativo in questo caso: ad esempio, la rete di Visa afferma di essere in grado di elaborare decine di migliaia di transazioni al secondo.

Lo sharding è una delle soluzioni al problema della scalabilità delle blockchain: implica il partizionamento del database in “frammenti” (i cosiddetti “shard“), in cui ognuno di questi è responsabile dell’elaborazione di una sola parte dei dati archiviati nella rete. In questo modo, il tempo di elaborazione può essere notevolmente ridotto.

Ulteriori vantaggi dello sharding includono una migliore accessibilità per gli utenti e una maggiore partecipazione alla rete. In Ethereum, lo sharding dovrebbe ridurre i requisiti hardware lato client, in modo che diventi possibile farlo su un personal computer o un telefono.

Insieme ai benefici potrebbero esserci alcuni rischi. Per esempio, uno dei problemi di sicurezza è l’acquisizione di uno shard, o le collusioni tra shards. Ciò può comportare una perdita di informazioni parziale o completa o l’iniezione di dati danneggiati nella rete tramite uno shard compromesso. Su Ethereum 2, questo rischio per la sicurezza viene affrontato assegnando casualmente i nodi agli shard e riassegnandoli a intervalli casuali.