bitconio.net

Blockchain, commodities & Trading

Blockchain

SegWit Day


Oggi è il primo giorno dal quale potrebbe iniziare l’attivazione di “Segregated Witness” (SegWit), una nuova funzionalità implementata nel protocollo Bitcoin che ne aumenta flessibilità ed efficienza e porta diversi benefici agli utenti bitcoin. Dopo l’attivazione di SegWit, quando effettueremo un pagamento i costi della transazione saranno minori, alcuni tipi di transazioni saranno più veloci ed il protocollo raggiungerà ulteriori livelli di affidabilità.

SegWit è stato presentato al “grande pubblico” dallo sviluppatore Bitcoin Core Pieter Wuille (anche co-founder di Blockstream) alla conferenza Scaling Bitcoin di Hong Kong nel 2015.

Qui di seguito una spiegazione tecnica di come sono possibili queste caratteristiche avanzate:

“Segregated Witness”, liberamente traducibile come “firma separata”, è una tecnologia che riguarda le transazioni bitcoin, dove si separa (to segregate) la parte riguardante la firma delle transazioni (il witness o testimone in terminologia crittografica) dal resto dei dati permettendo ai minatori (miners) di posizionarla al di fuori della struttura tradizionale di un blocco, recuperando di fatto 3Mb di spazio e riducendo la dimensione di una transazione media. Questo porta a benefici immediati come, per esempio, l’incremento di transazioni che possono essere contenute in un blocco e l’eliminazione della transaction malleability. Il problema della mallebility è il fatto che una transazione Bitcoin, oggi, non abbia un codice univoco, stabile ed inalterabile che la identifica, finché un miner non inserisce la transazione in un blocco. È quindi possibile che la transazione venga inserita in un blocco, senza essere alterata nelle funzionalità, ma con un codice differente. Questo non permette di spendere quei bitcoin (nei wallet cauti, perlomeno) finché il codice (chiamato txid, per “transaction identity”) sia stabile, cioè inserita in un blocco.

Ora, con SegWit, una transazione avrà un txid immutabile fin dalla sua creazione. Oltre a questo, il codice semplificherà l’aggiunta a Bitcoin di nuove caratteristiche e migliorerà l’efficienza computazionale dei nodi Bitcoin nel verificare molte più transazioni, cose entrambe necessarie prima di poter ulteriormente aumentare la capacità di Bitcoin tramite meccanismi di scalabilità sia off-chain, (cioè al di fuori della Blockchain, come per esempio con Lightning Network, del quale parleremo più avanti) che on-chain (cioè di aumento della capacità di transazioni al secondo gestibili direttamente sulla blockchain).

Per l’attivazione di Segwit inoltre, serve che il 95% dei miners aggiorni il software e segnali, nel blocco che risolve, di essere pronto. Detto più “in tecnichese”, serve “che almeno 1916 blocchi su 2016 quando avviene un retarget della difficulty abbiano il flag corretto”. Si può seguire la segnalazione dei miners in tempo reale ai link seguenti:

https://coin.dance/blocks/proposals – l’adozione di segwit è la linea nera in basso a destra nel grafico. Deve arrivare a 95%. https://bitcoincore.org/en/segwit_a… più affidabile, ma meno leggibile.

Presentazione di Pieter Wuille @ScalingBitcoin Hong Kong 2015 per chi volesse approfondire: https://www.youtube.com/watch?v=fst1IK_mrng&t=36m

https://www.facebook.com/notes/inbitcoin/segwit-day/1469680716393587

 

Segregated Witness Adoption

The last 2k block segwit activation graph. Segwit activation 2000 block window


The last 10k block segwit activation graph. Segwit activation 10000 block window

https://bitcoincore.org/en/segwit_adoption/

 
Resta aggiornato con la Newsletter Settimanale