'lb

Scritto da Robert Steinadler 2 mesi fa

SegWit spiegato: Che cos' è Segregated Witness?

Alcuni dei nostri lettori potrebbero aver notato che ci sono diversi tipi di formati di indirizzi Bitcoin. Segregated witness è stato un aggiornamento del protocollo che è stato distribuito da un soft fork sulla rete Bitcoin nel 2017 e da quando ci sono tre diversi tipi di formati.

Qual è il vantaggio di un Segregated witness? Perché è importante e come funziona? In questo articolo spiegheremo cos' è SegWit.

SegWit consente a Bitcoin di scalare e migliorare la sicurezza

La nascita di un Segregated witness richiede una piccola lezione di storia in Bitcoin. Il protocollo originale dei bitcoin ha permesso la creazione di un nuovo blocco ogni dieci minuti in media e ogni blocco aveva una dimensione predeterminata di 1 megabyte. La dimensione del blocco limita lo spazio per le transazioni e quindi la scalabilità dei Bitcoin. A partire da qualche parte nell'anno 2015 la comunità Bitcoin ha iniziato a discutere su come scalare Bitcoin in modo che la rete potesse gestire più transazioni.

Un approccio è stato quello di aumentare drasticamente la dimensione del blocco che avrebbe semplicemente consentito più transazioni per blocco aumentando lo spazio. Un altro è stato quello di riorganizzare le informazioni che sono state incluse in ogni blocco e fare più spazio, contenendo meno dati che non è immediatamente necessario includere per le transazioni di accadere. Vale la pena ricordare che fino ad oggi c'è ancora una discussione se SegWit è stata una buona idea e se una maggiore dimensione del blocco è una soluzione migliore. Storicamente questo dibattito ha portato al fork Bitcoin Cash a creare una nuova criptovaluta con Bitcoin che implementa un Segregated witness e Bitcoin Cash che opta per una dimensione del blocco drasticamente più grande.

Un altro problema importante che viene spesso supervisionato perché la scalabilità sembra essere il problema più urgente è la prevenzione della malleabilità delle transazioni. Prima che SegWit fosse attivo era possibile per un nodo modificare l'hash della transazione di una transazione non confermata.

Ciò è estremamente problematico soprattutto se la parte ricevente dipende dall'affidabilità di una catena di transazioni non confermate. Modificando l'hash della prima transazione non viene invalidato, ma la transazione successiva nella catena si basa su un hash che è stato modificato. Pertanto, tutte le seguenti transazioni falliranno e sono considerate non valide perché si riferiscono all'ID TX errato.

La manipolazione degli ID di transazione apre la porta a tutti i tipi di frode. Ma ancora più importante, questo è assolutamente inaccettabile se stai cercando di utilizzare una soluzione di secondo livello in cima a Bitcoin come la rete Lightning.

Come funziona segregated witness?

L'aggiornamento del protocollo SegWit ha separato i dati della transazione dalla firma digitale del witness della transazione. La dimensione del blocco è stata effettivamente aumentata fino a 4 megabyte pur essendo compatibile con il protocollo Bitcoin originale.

In origine ogni blocco legacy conteneva l'output e l'input delle transazioni, nonché le firme e gli script aggiuntivi. I blocchi SegWit sono infatti più grandi e strutturati in modo diverso. Separando le firme e gli script, esiste un blocco di base chiamato anche blocco di transazione, che è ancora considerato valido secondo il vecchio protocollo. Contiene ingressi e uscite e non supera il limite di 1 megabyte.

Il blocco esteso invece è più grande e contiene fino a 3 megabyte di dati. Vale a dire firme e copione. Questa struttura consente a SegWit di essere compatibile con le versioni precedenti, il che significa che nessuno deve utilizzarlo mentre offre grandi vantaggi nel farlo allo stesso tempo. Ha anche permesso SegWit per essere implementato come un soft fork invece di richiedere un hard fork che sarebbe stato più stressante e avrebbe potuto mettere la rete a rischio di una scissione.

Dimensioni vs Peso

Con i blocchi legacy misurati in dimensioni c'è stato anche un aggiornamento di come vengono misurate le transazioni. I blocchi SegWit non sono misurati in dimensioni ma in peso. Invece di misurare ogni blocco in megabyte (dimensione), viene misurato in unità di peso. Un blocco SegWit ha un peso di 4 milioni di WU (unità di peso) che equivale a 4 megabyte di dati.

La formula per calcolare il peso di una transazione SegWit è:

(Dimensione transazione - Dati witness) * 3 + Dimensione transazione completa

Il peso di una transazione legacy viene calcolato in modo diverso:

Dimensioni transazione * 4

In effetti, le transazioni SegWit sono sempre più leggere delle transazioni legacy incentivando i minatori a includere prima quelle transazioni, perché possono raccogliere più commissioni poiché ogni blocco conterrà più transazioni. Ciò ha anche un impatto sulle tariffe per il mittente. Una transazione legacy è sempre più costosa poiché è più pesante e richiede il pagamento di una commissione più elevata per essere confermata alla stessa velocità di una transazione SegWit.

I formati degli indirizzi

Ci sono tre tipi di formati di indirizzo che sono stati introdotti con Bitcoin. I primi sono indirizzi legacy, iniziano sempre con 1:

1Mpf72Q2xwi1okJL1RCaQeVRPKDhEWRtXt

Il secondo sono gli indirizzi SegWit, iniziano con 3:

392PTfCzykHSyteg6umCCvbrofRSoJb96i

E il terzo sono SegWit nativi (bech32) che inizia con bc:

bc1qar0srr7xfkvy5l643lydnw9re59gtzzwf5mdq

Native SegWit è un nuovo formato che è ancora più efficiente in termini di peso e offre un migliore rilevamento degli errori rispetto al formato originale SegWit. In effetti, l'utilizzo di bech32 si traduce nelle commissioni più economiche e nelle transazioni più veloci possibili sulla rete Bitcoin.

FAQ: SegWit

SegWit è sicuro?

Sì, non ci sono problemi di sicurezza nell'utilizzo di SegWit. Si tratta infatti di un aggiornamento di sicurezza quando si considera la rimozione della malleabilità delle transazioni non confermate.

Ci sono altri vantaggi?

SegWit ha permesso l'implementazione di Taproot che consente contratti intelligenti e convalide ancora più veloci.

Devo accettare le transazioni SegWit?

Puoi sempre optare per un wallet legacy che non utilizza SegWit. È ancora possibile inviare fondi tra gli indirizzi legacy e SegWit. Ma in cambio le transazioni costeranno più commissioni e sono più lente.

Aspetta, significa che SegWit sta aumentando la dimensione del blocco dopo tutto? Perché discuterne, allora?

La dimensione del blocco è stata aumentata a un livello teorico di 4 megabyte. La dimensione media del blocco è ora di circa 2 megabyte. Il vantaggio di SegWit è il fatto che è compatibile verso il basso rispettando il limite di 1 megabyte dei blocchi di transazione. Non ha richiesto un cambiamento al protocollo originale. D'altra parte, aumentare la dimensione del blocco al di sopra di tale limite richiederebbe una forcella dura che è considerata un evento critico.

Fai trading quando e dove vuoi

Aumenta l’impatto del tuo trading e i tempi di reazione in più di 70 criptovalute tramite l’accesso istantaneo al tuo wallet con l’app LiteBit.

lb