Cos'è Bitcoin SegWit e come funziona?
L'aggiornamento SegWit di Bitcoin è stato controverso, ma ha apportato importanti cambiamenti alla criptovaluta più popolare al mondo.
La scalabilità di Bitcoin è un problema costante per la criptovaluta più famosa al mondo e che gli sviluppatori di Bitcoin hanno faticato a risolvere. Una soluzione introdotta è stata il soft fork SegWit, che ha modificato il numero di transazioni Bitcoin che potevano essere elaborate simultaneamente. Anche se aumentare il numero di transazioni per blocco Bitcoin sembra una vittoria sicura, anche SegWit ha avuto problemi.
Come funzionano le transazioni Bitcoin?
Le transazioni Bitcoin utilizzano il modello UTXO (Unspent Transaction Output), in cui ciascuna transazione spende l'output della transazione precedente sulla blockchain e genera un nuovo output che può essere speso nella transazione successiva.
In base alla progettazione, non possiedi un token Bitcoin. Possiedi invece l'output non speso di un determinato numero di transazioni precedenti. È possibile dimostrare la proprietà di questo output tramite l'indirizzo, la chiave digitale e la firma digitale richiesti.
Supponiamo che tu voglia inviare bitcoin al tuo migliore amico. Utilizzerai innanzitutto una chiave privata per firmare un messaggio contenente l'input, l'output e l'importo. La transazione viene trasmessa all'intera rete Bitcoin e tutti gli utenti possono vederla.
Quando un nodo riceve la transazione, controlla se:
- La tua chiave privata corrisponde alla chiave pubblica che dichiari di possedere
- La somma degli input è maggiore della somma dei suoi output
- L'output non è speso.
Se la transazione soddisfa queste tre regole, viene verificata e trasmessa ad altri nodi, che ripetono il processo di verifica. Questo processo coinvolge complessi enigmi matematici, che i minatori con il tasso di hash crittografico più alto hanno le migliori possibilità di risolvere per primi.
I nodi minatori competono per risolvere gli enigmi e, in caso di successo, estraggono il modello di blocco in un blocco immutabile nella blockchain. Il blocco viene trasmesso all'intera rete ed è chiaro che il tuo migliore amico possiede la nuova produzione non spesa.
Qual è il difetto di malleabilità della transazione?
Scalabilità e velocità non sono gli unici problemi che affliggono la blockchain di Bitcoin. Sfortunatamente, esiste anche il "difetto di malleabilità della transazione", un difetto che consente l'alterazione della firma digitale di una transazione prima che venga confermata sulla blockchain.
Questa modifica viene effettuata in modo tale che la transazione mantenga la sua logica matematica ma produca un risultato diverso quando viene eseguita attraverso un algoritmo di hashing.
Prendi, ad esempio, il valore della firma della tua transazione con il tuo migliore amico, che era (5). Se viene modificato in (5-10+10), il valore matematico è ancora 5, ma se eseguiamo l'hashing di queste diverse versioni, otteniamo risultati diversi.
Poiché l’hash è il modo in cui la transazione viene identificata nella blockchain, questo cambiamento causa alcuni problemi.
- I malintenzionati possono creare una seconda transazione in conflitto prima che la prima venga confermata, causando confusione, ritardo e congestione nella rete.
- Ciò rende problematico per gli sviluppatori blockchain costruire soluzioni di secondo livello intese a migliorare la velocità e la scalabilità della rete principale.
Quindi questo è un difetto che potrebbe rendere la contabilità blockchain un incubo e sono state implementate diverse soluzioni per risolverlo. Ed è qui che entra in gioco Bitcoin SegWit.
Cos'è Bitcoin SegWit?
Segregated Witness (SegWit) è un aggiornamento del protocollo blockchain Bitcoin sviluppato principalmente per proteggere dalla malleabilità delle transazioni.
SegWit è stato proposto per la prima volta nel 2015 come fork della blockchain per migliorare la scalabilità. SegWit raggiungerebbe questo obiettivo separando le firme digitali dai dati delle transazioni, consentendo di archiviare più transazioni in un singolo blocco e riducendo il tempo necessario per elaborare un singolo blocco.
Il soft fork SegWit è stato finalmente implementato nel 2017, introducendo molti miglioramenti alla blockchain di Bitcoin, oltre a risolvere il difetto di malleabilità e migliorare l'efficienza delle transazioni.
Cos'è SegWit2x?
Prima dell'implementazione di SegWit, ci fu un po' di controversia nella comunità Bitcoin a causa di una proposta di aggiornamento dell'hard fork volta ad aumentare il limite della dimensione del blocco da 1 MB a 2 MB per migliorare la velocità di elaborazione delle transazioni, da qui il termine "SegWit2x".
Sebbene molte parti interessate abbiano sostenuto l’idea, sono sorti disaccordi all’interno della comunità e la mancanza di consenso ha portato a una divisione. La fazione separatista ha formato Bitcoin Cash (BCH), mentre il gruppo madre ha continuato a implementare SegWit.
Come funziona Bitcoin SegWit?
SegWit funziona separando alcuni dati dal blocco, rendendoli non disponibili per modifiche. Questa separazione crea due sezioni. La prima sezione del blocco contiene gli indirizzi del portafoglio del mittente e del destinatario, mentre la seconda sezione contiene le firme digitali, note anche come "dati testimone".
Poiché i dati testimone sono separati dal blocco principale, viene liberato più spazio nel blocco per la registrazione di più dati sulle transazioni. Ciò, a sua volta, aumenta la capacità del blocco e influisce direttamente sulle prestazioni della rete Bitcoin, migliorando significativamente la scalabilità.
I dati separati, cioè la firma digitale, vengono invece crittografati e archiviati su una sidechain. Questo ulteriore livello di sicurezza oltre alla separazione dalla rete principale rende impossibile modificare la firma digitale della transazione, risolvendo così il difetto di malleabilità.
Vantaggi di Bitcoin SegWit
SegWit offre numerosi vantaggi alla rete Bitcoin.
- Risolve la malleabilità delle transazioni: come accennato in precedenza, SegWit risolve il difetto di malleabilità delle transazioni che ha causato molta confusione e congestione nella blockchain di bitcoin. Ciò ha consentito transazioni più affidabili e sicure.
- Migliore sicurezza: risolvendo la malleabilità delle transazioni, SegWit ha reso la rete bitcoin più sicura e meno vulnerabile agli attacchi. Ha inoltre reso più semplice l’implementazione di nuove funzionalità di sicurezza in futuro.
- Migliore scalabilità: la scalabilità è l'aumento delle prestazioni di un sistema. Questo è quello che è successo a Bitcoin dopo il soft fork SegWit. Più transazioni potrebbero essere incluse in blocchi grazie allo spazio liberato, offrendo commissioni di transazione ridotte e tempi di conferma delle transazioni più rapidi.
- Commissioni di transazione inferiori: poiché più transazioni potevano essere inserite in un blocco Bitcoin, la concorrenza per lo spazio del blocco si è ridotta, il che a sua volta ha ridotto le commissioni di transazione. Ciò è stato particolarmente vantaggioso per le piccole transazioni.
- Compatibilità migliorata: essendo un soft fork, SegWit ha consentito l'estensibilità della blockchain aprendo allo stesso tempo la porta a futuri aggiornamenti (come l'aggiornamento Taproot) alla rete Bitcoin. Questa flessibilità fornisce alla blockchain la capacità di implementare nuove funzionalità e miglioramenti.
- Creazione ispirata di Lightning Network (LN): quando SegWit ha migliorato la scalabilità, il suo codice ha ispirato lo sviluppo di una soluzione Layer-2: Lightning Network. Il codice di LN consente la creazione di un canale di pagamento fuori catena tra due soggetti che effettuano transazioni, migliorando la velocità della rete principale e riducendo i costi di transazione.
SegWit è stato un aggiornamento cruciale per la rete Bitcoin perché offriva soluzioni che ne miglioravano le prestazioni e rendevano l'esperienza migliore per gli utenti Bitcoin. Tuttavia, non è arrivato senza una buona dose di nuove sfide.
Svantaggi di SegWit
Il soft fork SegWit ha introdotto un paio di potenziali svantaggi.
Ad esempio, sebbene molti scambi e portafogli abbiano adottato SegWit, non tutti i nodi supportano il nuovo protocollo. Inoltre, poiché SegWit riduce le commissioni di transazione richiedendo al contempo il supporto per la sidechain dei dati testimoni, i minatori orientati al profitto non lo apprezzano e possono essere riluttanti ad applicarlo.
Inoltre, a causa delle dimensioni della rete Bitcoin, SegWit non è sufficiente per risolvere il problema della scalabilità. È necessario un adeguamento significativo della blockchain per ridurne le dimensioni e aumentare la scalabilità a un livello simile alle blockchain alternative.
Anche se SegWit presenta questi inconvenienti, è chiaro che i vantaggi in termini di sicurezza e scalabilità superano di gran lunga i problemi.
Bitcoin SegWit è stata una buona idea?
SegWit ha impedito che un difetto causasse un ritardo così grande nella blockchain di Bitcoin in un momento in cui la sua adozione stava guadagnando terreno. In effetti, c'era voluto molto tempo prima che lo sviluppo venisse implementato. Mentre alcuni miner hanno riscontrato un impatto negativo sui loro portafogli, il soft fork ha migliorato la sicurezza e l'affidabilità della blockchain, incidendo positivamente sulla rete Bitcoin.

