SegWit

acronimo di: Segregated Witness

Difficoltà: intermedio

Argomento: tecnologia


DEFINIZIONE

SegWit, o nella forma estesa Segregated Witness, è un aggiornamento al protocollo bitcoin attivato nel 2017 in modalità soft-fork, e quindi garantendo la retro-compatibilità.

Con l'aggiornamento sono state introdotte diverse novità e sistemati alcuni problemi.

Uno dei cambiamenti più evidenti è stata l'introduzione di un nuovo tipo di indirizzi, che sono riconoscibili per il fatto che iniziano con i caratteri bc1, poiché utilizzano come codifica il formato bech32, rispetto ai vecchi indirizzi chiamati legacy che utilizzano la codifica Base58.

SegWit ha risolto il problema della Transaction Malleability. Questo aggiornamento ha aperto la strada all'implementazione di Lightning Network e al più recente aggiornamento Taproot. SegWit ha introdotto due nuovi tipi di script, o modalità di invio e ricezione di bitcoin.

Il nome Segregated Witness deriva dal fatto che le informazioni di una transazione sono state divise in due segmenti e una di queste, ovvero i dati della firma chiamati witness, viene separata dalla parte originale e spostata o segregata come struttura separata alla fine del blocco.

Questo ha permesso di includere più transazioni in ogni blocco, il che ha allentato la pressione sulle fee e ha fornito una parziale soluzione al problema della scalabilità.

La discussione che ha proceduto la decisione di effettuare l'aggiornamento a SegWit è stata controversa e la sua attivazione ha causato profonde divisioni all'interno della comunità Bitcoin. Tuttavia, Bitcoin è emerso più forte e più scalabile, dimostrando che il suo decentramento potrebbe resistere a un tentativo di acquisizione da parte di miner e leader della comunità.

Sebbene SegWit sia tecnicamente un soft fork, ha alterato una delle importanti regole di consenso di Bitcoin in modo retrocompatibile al fine di aumentare il numero di transazioni che potrebbero essere incluse in ciascun blocco.

Prima di SegWit, ogni blocco era limitato a 1 MB di dati, che equivale a circa 1650 transazioni in un blocco pieno. SegWit ha introdotto il Block weight o peso del blocco, che ha sostituito la Block Size o dimensione del blocco come fattore limitante per un blocco. Oggi, i blocchi pieni riescono a contenere circa 2700 transazioni.


aggiornato il 2021-12-18