What is Segwit? A Beginners Crash Course!

Ameer Rosic

3 years ago
what is segwit

Se sei interessato alla criptovaluta, non c'è modo che tu non abbia mai capo di «Segregated Witness» o Segwit prima. Alcune persone pensano che questo sta per rivoluzionare Bitcoin, mentre alcuni sono stati così delusi da esso che hanno preferito andare per la loro strada con una nuova forma di Bitcoin chiamata Bitcoin Cash!

Allora, cos'è Segwit?

Per capire questo, dovremo prima capire alcuni concetti fondamentali.

Come funzionano le transazioni in un Bitcoin?

Prima di continuare, un enorme grido al professor Donald J Patterson e al suo canale Youtube «djp3» per la spiegazione.

Supponiamo che Alice voglia inviare un certo numero di bitcoin a Bob. Come funziona il sistema di transazioni in Bitcoin? Le transazioni Bitcoin sono molto diverse dalle transazioni del portafoglio Fiat. Se Alice avesse dato $2 a Bob, avrebbe preso fisicamente 2 dollari dal suo portafoglio e lo avrebbe dato a Bob. Tuttavia, le cose non funzionano così in Bitcoin. Non possiedi fisicamente alcun Bitcoin, quello che hai è la prova che hai Bitcoin.

Ci sono altre due cose che devi sapere:

I minatori convalidano le tue transazioni inserendo i dati all'interno delle miniere che hanno bloccato. In cambio di fornire questo servizio, addebitano una commissione di transazione.

Quando si tratta di valuta FIAT, non si tiene traccia di come e dove si è ottenuto quella nota specifica da. Ad esempio: Apri il tuo portafoglio in questo momento e tira fuori tutte le banconote e le monete in esso. Riesci a dire da dove hai preso esattamente ogni singola nota e moneta? È probabile che tu non lo faccia. Tuttavia, in bitcoin, la cronologia di ogni singola transazione bitcoin viene presa nota.

Ok, ora facciamo un tuffo profondo su come avviene una transazione bitcoin tra Alice e Bob. Ci sono due lati di una transazione, l'Input e l'Output. L'intera transazione avrà un nome che scopriremo alla fine. Per ora, diamo un'occhiata alle dinamiche.

Inizia subito la prova gratuita

Versione di prova gratuita

Ingresso delle transazioni

Per fare in modo che questa transazione avvenga, Alice ha bisogno di ottenere bitcoin che ha ricevuto da varie transazioni precedenti. Ricorda, come abbiamo detto prima, in bitcoin, ogni moneta viene contabilizzata tramite una cronologia delle transazioni.

Quindi, supponiamo che Alice abbia bisogno di estrarre bitcoin dalle seguenti transazioni che chiameremo TX (0), TX (1) e TX (2). Queste tre transazioni saranno sommate insieme e che vi darà la transazione di input che chiameremo TX (Input).

Diagrammaticamente, sarà simile a questo:

What is Segwit?

Quindi, questo è dal lato di input, diamo un'occhiata a come sarà il lato di uscita.

Output delle transazioni

L'uscita fondamentalmente avrà un certo numero di bitcoin che Bob posseggerà transazione post e qualsiasi cambiamento rimanente che viene lasciato sopra, che viene poi inviato di nuovo ad Alice. Questa modifica diventa quindi il suo valore di input per tutte le transazioni future.

Una rappresentazione pittorica del lato di output è simile a questa:

What is Segwit?

Ora, questa è una transazione molto semplice che ha solo un output (a parte il CAMBIO), ci sono transazioni che sono possibili con più output.

Ecco come appare il layout di base della transazione. Perché tutto questo possa passare attraverso, tuttavia, alcune condizioni devono essere soddisfatte.

Condizioni di una transazione

TX (ingresso) TX (uscita). La transazione di input deve essere sempre maggiore della transazione di output. In ogni transazione, il deficit tra l'input e l'output (output+change) è le commissioni di transazione che i minatori raccolgono. Quindi: commissioni di transazione = TX (Input) - (TX (output) + Modifica).

Nella parte di ingresso:TX (0) + TX (1) + TX (2) = TX (Input) .Se Alice non ha i fondi necessari per effettuare le transazioni allora i minatori rifiuteranno semplicemente le transazioni.

Bob dovrà dimostrare di essere in grado di fornire la prova necessaria per ottenere i bitcoin. Alice bloccherà le transazioni con l'indirizzo pubblico di Bob. Avrà bisogno di produrre la sua chiave privata per sbloccare le transazioni e ottenere l'accesso alle sue tasse.

Alice ha anche bisogno di verificare di avere i diritti necessari per inviare i bitcoin in primo luogo. Il modo in cui lo fa è firmando la transazione con la sua firma digitale (alias la sua chiave privata). Chiunque può decodificare questo utilizzando la sua chiave pubblica e verificare che sia stata effettivamente Alice a inviare i dati. Questa prova è chiamata «Dati della firma». Ricordate questo perché questo sarà molto importante in seguito.

Allora, quale sarà il nome di tutta questa transazione?

L'input (inclusi i dati della firma) e i dati di output vengono aggiunti insieme e hash utilizzando l'algoritmo di hashing SHA 256. L'hash di output è il nome che viene dato a questa transazione.

Il codice dei dettagli della transazione

Questo è l'aspetto della transazione nel modulo di codice. Supponiamo che Alice voglia inviare 0.0015 BTC a Bob e per farlo, lei invia input che valgono 0.0015770 BTC. Ecco come appare il dettaglio della transazione:

What is Segwit? A Beginners Crash Course!

Immagine cortesia: canale youtube djp3.

La prima cosa che vedi:

What is Segwit? A Beginners Crash Course!

È il nome della transazione aka l'hash del valore di input e output.

Vin_sz è il numero di dati di input dato che Alice sta inviando i dati utilizzando solo una delle sue precedenti transazioni, è 1.

Vout_sz è 2 perché le uniche uscite sono Bob e il cambiamento.

Questi sono i dati di input:

What is Segwit? A Beginners Crash Course!

Vedi i dati inseriti? Alice sta usando solo una transazione di input (nell'esempio che abbiamo dato sopra, questo sarà TX (0)), questo è il motivo per cui vin_sz era 1.

Sotto i dati di input sono i suoi dati di firma.

Sotto tutto questo ci sono i dati di output:

What is Segwit? A Beginners Crash Course!

La prima parte dei dati indica che Bob sta ricevendo 0.0015 BTC.

La seconda parte significa che 0.00005120 BTC è ciò che Alice sta tornando come cambiamento.

Ora, ricorda che i dati di input erano 0.0015770 BTC? Questo è maggiore di (0.0015 + 0.00005120). Il deficit di questi due valori è la commissione di transazione che i minatori stanno riscuotendo.

Quindi, questa è l'anatomia di una semplice transazione.

Prima di continuare però, discutiamo di un tipo speciale di transazione chiamata transazione Coinbase. Si tratta fondamentalmente dei primi dati di transazione che si trova sul blocco, e significa la ricompensa mineraria che i minatori ottengono al momento dell'estrazione del blocco. Al momento, la ricompensa è 12.5 BTC. Queste transazioni non hanno dati di input e hanno solo dati di output. Ricordate questo perché questo diventerà importante in seguito.

Qual è il problema di scalabilità?

Ora, ricorda, tutte le transazioni che avvengono nella blockchain portano avanti perché i minatori effettivamente miniano questi blocchi e mettono le transazioni nei blocchi per convalidarli. Ma ci sono solo così tante transazioni che puoi inserire nel blocco. Quando Bitcoin è stato concepito per la prima volta non c'era limite di blocco.

Tuttavia, Satoshi Nakamoto (il fondatore (i) di Bitcoin) è stato costretto ad aggiungere il limite perché prevedevano un possibile attacco DoS (attacco di negazione del servizio) che hacker e troll possono infliggere alla blockchain. Possono riempire i blocchi con transazioni di spam, e possono estrarre blocchi che potrebbero essere inutilmente grandi per intasare il sistema. Come risultato di cui i blocchi sono stati dati un limite di dimensione di 1 MB.

Questo era praticabile all'inizio, ma man mano che la sua popolarità continuava a diventare sempre più grande, un certo numero di transazioni iniziarono ad aggiungersi. Questo grafico mostra il numero di transazioni che si verificano al mese:

What is Segwit? A Beginners Crash Course!

Come puoi vedere, il numero di transazioni mensili è solo in aumento e con l'attuale limite di dimensioni del blocco di 1mb, bitcoin può gestire solo 4,4 transazioni al secondo. Uno dei motivi principali per cui le transazioni sono ingombranti e occupano così tanto spazio è a causa dei dati della firma in esso contenuti (ti abbiamo detto di tenerlo a mente). Il fatto è che il 65% dello spazio utilizzato dalla transazione è occupato dai dati della firma.

Man mano che il numero di transazioni è aumentato a passi da gigante, anche il tasso di riempimento dei blocchi è aumentato. Il più delle volte, le persone in realtà hanno dovuto aspettare fino a quando sono stati creati nuovi blocchi in modo che le loro transazioni sarebbero passate attraverso. Questo ha creato un backlog di transazioni, infatti, l'unico modo per ottenere le tue transazioni priorità era quello di pagare una commissione di transazione abbastanza alta per attirare e incentivare i minatori a dare priorità alle tue transazioni.

Questo ha introdotto il sistema «replace-by-fee». Fondamentalmente, è così che funziona. Supponiamo che Alice stia inviando 5 bitcoin a Bob, ma la transazione non sta attraversando a causa di un arretrato. Non può «cancellare» la transazione perché i bitcoin una volta spesi non possono mai tornare indietro. Tuttavia, lei può fare un'altra transazione di 5 bitcoin con Bob, ma questa volta con commissioni di transazione che sono abbastanza alte per incentivare i minatori. Mentre i minatori mettono la sua transazione nel blocco, sovrascriverà anche la transazione precedente e la renderà nullo e nullo.

Mentre il sistema «replace-by-fee» è redditizio per i minatori, è piuttosto scomodo per gli utenti che potrebbero non essere così bene da fare. In effetti, ecco un grafico del tempo di attesa che un utente dovrà passare attraverso se ha pagato le commissioni di transazione minime possibili:

What is Segwit? A Beginners Crash Course!

Immagine cortesia: Business Insider.

Se paghi le commissioni di transazione più basse possibili, dovrai attendere un tempo mediano di 13 minuti per la transazione.

Una possibile soluzione che è stata pensata per accelerare le transazioni è stata l'introduzione di Lightning Network.

Cos'è la rete lampo?

Il netwok lightning è un sistema di micropagamento off-chain progettato per rendere le transazioni più veloci nella blockchain. È stato concettualizzato da Joseph Poon e Tadge Dryja nel loro white paper che mirava a risolvere il limite di dimensioni del blocco e i problemi di ritardo delle transazioni. Funziona sopra Bitcoin ed è spesso indicato come «Layer 2».

Come nota Jimmy Song nel suo medio articolo:

«La rete Lightning funziona creando una transazione con doppia firma. Cioè, abbiamo un nuovo controllo che richiede a entrambe le parti di firmare affinché sia valido. Il controllo specifica quanto viene inviato da una parte all'altra. Poiché i nuovi micropagamenti vengono effettuati da una parte all'altra, l'importo dell'assegno viene modificato ed entrambe le parti firmano il risultato.»

La rete permetterà ad Alice e Bob di negoziare tra loro senza essere tenuti prigionieri da una terza parte alias il minatore. Per attivare questa operazione, la transazione deve essere firmata sia da Alice che da Bob prima che venga trasmessa in rete. Questa doppia firma è fondamentale affinché la transazione possa essere completata.

Tuttavia, qui è dove affrontiamo un altro problema.

Poiché il doppio controllo si basa fortemente sull'identificatore della transazione, se per qualche motivo l'identificatore viene modificato, ciò causerà un errore nel sistema e la rete Lightning non si attiverà. Nel caso, ti stai chiedendo quale sia l'identificatore della transazione, è il nome della transazione alias l'hash delle transazioni di input e output. Nell'esempio che abbiamo dato prima:

What is Segwit? A Beginners Crash Course!

Questo è l'identificatore della transazione.

Ora, ti starai chiedendo, cosa causerebbe la modifica dell'identificatore della transazione? Questo ci porta a un bug interessante nel sistema bitcoin chiamato, «Transaction Malleability».

Cos'è la malleabilità delle transazioni?

Prima di capire quale sia la malleabilità delle transazioni, è importante riepilogare una delle funzioni più importanti nel modello di crittoeconomia... hashing. Abbiamo scritto un articolo prima che copre l'hashing in dettaglio. Solo per darti una breve panoramica, una funzione di hashing può assumere qualsiasi input di qualsiasi lunghezza ma l'output che fornisce è sempre di una lunghezza fissa.

Tuttavia, c'è un'altra importante funzione di hashing che è necessario conoscere per capire il «bug di malleabilità della transazione» come viene chiamato. Qualsiasi piccola modifica nei dati di input cambierà drasticamente l'hash di output.

Ad esempio: Dai un'occhiata a questo test che abbiamo fatto con SHA-256 alias l'algoritmo di hashing usato in bitcoin:

What is Segwit? A Beginners Crash Course!

Lo vedi?

Abbiamo appena cambiato «T» da maiuscolo a minuscolo, e guarda cosa ha fatto all'output!

Un'altra cosa che devi capire sulla blockchain è che è immutabile, il che significa, una volta che i dati sono stati inseriti in un blocco, non può mai essere cambiato. Mentre questo dimostra una rete di sicurezza contro la corruzione, c'era una debolezza che nessuno vedeva arrivare.

E se i dati fossero stati manomessi prima ancora di entrare nel blocco? Anche se la gente lo scoprisse più tardi, non c'era nulla che chiunque possa fare al riguardo perché i dati entrati in un blocco non possono mai essere tolti! Questo in sostanza è il motivo per cui la malleabilità delle transazioni è un problema del genere.

Ora, perché avviene la malleabilità delle transazioni?

Risulta che la firma che accompagna i dati di input può essere manipolata, il che a sua volta può cambiare l'ID della transazione. Infatti, può far sembrare che la transazione non sia stata nemmeno avvenuta. Vediamo questo in un esempio.

Supponiamo che Bob vuole Alice per inviargli 3 BTC. Alice avvia una transazione BTC 3 all'indirizzo pubblico di Bob e poi la invia ai minatori per l'approvazione. Mentre la transazione è in attesa in coda, Bob utilizza la malleabilità della transazione per modificare la firma di Alice e modificare l'ID della transazione.

Ora c'è la possibilità che questa transazione manomessa venga approvata prima che Alice venga approvata, che a sua volta sovrascrive la transazione di Alice. Quando Bob ottiene il suo 3 BTC, può semplicemente dire ad Alice che non ha ottenuto il BTC 3 che gli doveva. Alice vedrà allora che la sua transazione non è andata a termine e li invierà di nuovo. Di conseguenza, Bob finirà con 6 BTC invece di 3 BTC.

Questo è il modo in cui la malleabilità delle transazioni può funzionare e questo è un problema serio. Dai un'occhiata a questo:

What is Segwit? A Beginners Crash Course!

Immagine cortesia: Bitcoin Magazine.

Queste sono le statistiche dell'attacco di malleabilità del 2015 su Bitcoin. Le linee rosse rappresentano approssimativamente transazioni malleate sulla rete

Ricordi cosa abbiamo detto all'inizio? La malleabilità delle transazioni stava accadendo perché i dati delle firme sono temperabili. Quindi, non solo i dati della firma stavano divorando spazio di blocco, ma rappresentava anche una seria minaccia con la malleabilità delle transazioni.

La soluzione e le paure di una forchetta dura

Nel 2012 le persone stavano esplorando l'idea di togliere i dati delle firme dalle transazioni. Persone come Russell O'Connor, Gregory Maxwell, Luke Dashjr e il dottor Adam Back stavano lavorando su un modo per farlo funzionare, ma tutti stavano colpendo un muro. Si sono resi conto che l'unico modo per andare avanti era fare una forchetta dura, e nessuno voleva farlo.

Ma poi, nel 2015, il dottor Peter Wiulle di Blcokstream ha trovato una possibile soluzione.

Sidechains e Segwit

Sidechain come concetto è stato nei cerchi bitcoin da un bel po 'di tempo. L'idea è molto diretta; hai una catena parallela che corre insieme alla catena principale. La catena laterale sarà fissata alla catena principale tramite un piolo a due vie.

Ecco come appariva l'idea iniziale di Blockstream della blockchain Bitcoin e di una sidechain:

What is Segwit? A Beginners Crash Course!

Immagine per gentile concessione: Bitcoin Magazine

Quello che pensava il dottor Wiulle era semplice perché non aggiungere una funzione a questa sidechain? Questa funzionalità includerebbe i dati di firma di tutte le transazioni, separandoli dalla catena principale del processo. Questa funzione sarebbe chiamata Segregated Witness aka Segwit.

Questo è come apparirebbe un blocco una volta implementato segwit:

What is Segwit? A Beginners Crash Course!

Quindi, rimuovendo i dati della firma dalle transazioni, stava uccidendo due piccioni con una fava, lo spazio del blocco si è svuotato e le transazioni sono diventate malleabili. C'era comunque un'altra cosa su cui bisognava lavorare. L'attivazione di Segwit era possibile solo tramite un hardfork, che è ciò che tutti volevano evitare. Gli sviluppatori volevano guardare le alternative soft fork. Fu allora che Luke Dashjr colpì l'oro.

Segwit come una forchetta morbida

Per utilizzare segwit come soft fork gli sviluppatori hanno dovuto inventare 2 innovazioni ingegnose. Essi sono i seguenti:

Disporre i dati della firma nelle catene laterali sotto forma di un albero Merkle.

Conservare una parte dei dati della firma in una nuova parte del blocco.

Prima di continuare, facciamo un fare un breve aggiornamento di alberi Merkle.

Che cos'è un albero Merkle?

What is Segwit? A Beginners Crash Course!

Immagine Cortesia: Wikipedia

Il diagramma sopra mostra come appare un albero Merkle. In un albero Merkle, ogni nodo non foglia è l'hash dei valori dei loro nodi figlio.

Nodo foglia: I nodi foglia sono i nodi nel livello più basso dell'albero. Quindi wrt il diagramma sopra, i nodi foglia saranno L1, L2, L3 e L4.

What is Segwit? A Beginners Crash Course!

Nodi figlio: Per un nodo, i nodi al di sotto del suo livello che stanno alimentando in esso sono i suoi nodi figlio. Wrt il diagramma, i nodi etichettati «Hash 0-0» e «Hash 0-1» sono i nodi figlio del nodo etichettati «Hash 0».

Nodo radice: il singolo nodo sul livello più alto etichettato «Top Hash» è il nodo radice alias radice Merkle.

What is Segwit? A Beginners Crash Course!

Tutte le transazioni all'interno di un blocco sono disposte sotto forma di albero Merkle e la radice Merkle di tutti quei dati viene mantenuta all'interno del blocco. Tutte le transazioni sono accessibili attraversando la radice Merkle.

(Se vuoi una spiegazione dettagliata di Merkle Trees e la loro applicazione in Blockchain, controlla il nostro articolo su «Hashing»).

Quindi, ciò che gli sviluppatori segwit hanno suggerito è stato, perché non eseguire un altro albero Merkle, ma solo con i dati della firma? Questa è stata la prima innovazione.

La seconda innovazione era sapere dove esattamente mettere la radice Merkle dei dati della firma. Gli sviluppatori sapevano che per attivare il segwit soft fork, la radice della firma doveva essere posizionata nel blocco. Il punto che hanno scelto era lo spot di transazione di base. Ora ricordate, ne abbiamo parlato prima, la transazione coinbase è la prima transazione che avviene in un blocco, questa fondamentalmente la transazione che dà ai minatori la loro ricompensa e non aveva alcun valore di input di sorta.

Ciò che gli sviluppatori non si sono resi conto è stato facendo in modo che stavano involontariamente inciampando in qualcosa che avrebbe avuto ripercussioni molto più ampie.

Mettendo il merkle firma in un nuovo posto nel blocco, erano sempre più la dimensione del blocco... senza effettivamente aumentare il limite di dimensione del blocco in primo luogo! Quindi fondamentalmente ciò che segwit ha ottenuto è stato che hanno aumentato la dimensione del blocco E hanno reso l'intera transizione compatibile all'indietro aka una forcella morbida! Questo è stato un importante passo avanti che ha dato alla rete bitcoin una correzione temporanea per i loro problemi di ridimensionamento.

La Convenzione sulla scalabilità di Hong Kong e i detrattori segwit

Nella convenzione di Hong Kong del 2015, il dottor Wiulle ha introdotto la proposta Segwit che è stata ampiamente accolta molto bene. Questa doveva essere la risposta che tutti cercavano. Si sperava che tutti saltassero a bordo, ma non funzionava in quel modo. Alcuni minatori avevano un grosso problema con Segwit.

Quando gli sviluppatori hanno costruito SegWit hanno aggiunto una clausola speciale ad esso. Può essere attivato solo quando ha l'approvazione del 95% da parte dei minatori. Dopotutto, si tratta di un enorme cambiamento nel sistema e hanno capito che ottenere una super maggioranza era la strada da percorrere. Tuttavia, ciò ha causato un'interruzione del sistema. Alcuni minatori non volevano che il segwit si attivasse. Temevano che, dal momento che lo spazio di blocco disponibile aumenterà, ci sarà più spazio disponibile per le transazioni e che ridurrà il tempo di attesa.

Questo, a sua volta, ridurrà le commissioni di transazione e ucciderà il sistema «replace-by-fee», che sono le principali modalità di reddito (a parte la ricompensa del blocco). Di conseguenza, l'implementazione di segwit è stata bloccata. Questo, a sua volta, ha infuriato gli utenti. Nel contesto di una blockchain, gli utenti sono persone che eseguono nodi nella rete blockchain. Si sono resi conto che qualcosa doveva essere fatto per incoraggiare i minatori a estrarre blocchi attivati segwit.

Insieme ai minatori, c'erano alcuni sviluppatori che non erano soddisfatti della soluzione segwit. Ai loro occhi, una soluzione temporanea non era abbastanza buona, era necessario qualcosa di più permanente, come un aumento delle dimensioni dei blocchi. Uno dei client bitcoin che offrono aumento delle dimensioni del blocco denominato «Bitcoin Unlimited», stava guadagnando un sacco di supporto. Il CEO di DCG Barry Silbert riteneva che la comunità bitcoin fosse sotto un sacco di tensioni e, se non affrontata, potrebbe portare a molte tensioni in futuro. Ha chiamato tutti per una riunione di tregua a New York. Il risultato di questo incontro è quello che è noto come «The New York Agreement».

L'accordo di New York

Il 21 maggio 2017, membri di spicco della comunità Bitcoin si sono incontrati a New York per la convention. Dopo molte deliberazioni, è stato raggiunto un compromesso tra il pro-segwit e il campo di aumento pro-blocksize. L'esito della riunione è spesso chiamato «The New York Agreement» o SegWit2x. Si tratta fondamentalmente di un accordo a due fasi.

Fase 1: Segwit si alza e funziona. La percentuale di minatori che devono acconsentire a farlo funzionare va dal 95% all'80%. Pubblica la forcella morbida, tutti i minatori che estraggono i blocchi che non sono segwit friendly verranno automaticamente rifiutati dalla blockchain. I minatori che hanno mostrato il loro sostegno a questo hanno iniziato a includere le lettere «NYA» nei loro blocchi.

Fase 2:6 mesi dopo l'attivazione di segwit, la blockchain subirà un hardfork e le dimensioni dei blocchi saranno aumentate da 1 mb a 2 mb.

What is Segwit? A Beginners Crash Course!

Immagine cortesia: articolo DCG in Medium.

Dopo l'accordo di New York

C'erano alcuni detrattori molto vocali del segwit2x. In realtà, questo ha portato alla serie di eventi che alla fine hanno dato vita a Bitcoin Cash. Tuttavia, molti membri della comunità hanno deciso che questo era il percorso migliore per andare avanti per i bitcoin. Tutti erano molto entusiasti dell'imminente attivazione del segwit che sarebbe stata intorno a metà luglio. Ma poi è successo qualcosa, a causa di molte complicazioni, i minatori hanno perso la finestra!

Segwit non è stato attivato quando avrebbe dovuto e che ha causato il panico diffuso perché si sentiva che questo avrebbe diviso la comunità Bitcoin Core ancora di più. Questo ha sceso il prezzo di BTC da $2500 fino a $1900... il più basso è stato in più di un mese. Questo calo di prezzo ha spaventato la comunità mineraria e li ha spinti in azione. Entro il 20 luglio, la prima fase di attivazione segwit, l'attivazione BIP 91 è stata bloccata. Entro l'8 agosto il punto di non ritorno è stato raggiunto e infine, il 24 agosto, Segwit è stato attivato. Vediamo cosa ha detto Segwit a riguardo:

What is Segwit? A Beginners Crash Course!

Immagine cortesia: segwit.co

I pro ei contro di Segwit

Pro di segwit:

Aumenta il numero di transazioni che un blocco può eseguire.

Diminuisce le commissioni di transazione.

Riduce la dimensione di ogni singola transazione.

Le transazioni possono ora essere confermate più velocemente perché il tempo di attesa diminuirà.

Aiuta nella scalabilità del bitcoin.

Poiché il numero di transazioni in ogni blocco aumenterà, potrebbe aumentare il totale delle commissioni totali che un minatore può raccogliere.

Rimuove la malleabilità delle transazioni.

Aiuta nell'attivazione del protocollo fulmini.

Rimuove il problema di hashing quadratico: l'hashing quadratico è un problema che viene fornito con l'aumento delle dimensioni del blocco. Il problema è che in alcune transazioni, l'hashing della firma si ridimensiona in modo quadratico:

Immagine cortesia: Bitcoincore.org

Fondamentalmente, raddoppiando la quantità di transazioni in un blocco raddoppierà un numero di transazioni e che, a sua volta, raddoppierà la quantità di dati di firma che saranno all'interno di ciascuna di queste transazioni. Ciò renderebbe le transazioni ancora più ingombranti e aumenterebbe il tempo di transazione di una quantità enorme. Questo apre le porte per le parti malevoli che potrebbero voler inviare spam alla blockchain.

Segwit risolve questo problema modificando il calcolo dell'hash della firma e rendendo l'intero processo più efficiente di conseguenza.

Contro di segwit:

I minatori ora riceveranno commissioni di transazione inferiori per ogni singola transazione.

L'implementazione è complessa e tutti i portafogli dovranno implementare segwit stessi. C'è una grande possibilità che non riescano a farlo bene la prima volta.

Aumenterà significativamente l'utilizzo delle risorse poiché la capacità, le transazioni, la larghezza di banda tutto aumenterà.

Come mostra la creazione di Bitcoin Cash, alla fine ha diviso la comunità Bitcoin Core.

Un altro problema con Segwit è la manutenzione. Anche la sidechain contenente i dati della firma dovrà essere mantenuta dai minatori. Tuttavia, a differenza della blockchain principale, i minatori non hanno benefici finanziari per farlo, dovrà essere fatto pro-bono o qualche schema di ricompensa deve essere pensato per incentivare i minatori.

Guardando avanti

I mesi successivi potrebbero essere i momenti più importanti ed emozionanti della storia di Bitcoin da quando Satoshi Nakamoto ha pubblicato per la prima volta il white paper Bitcoin. Vediamo cosa il futuro potenzialmente riserva per le varie parti.

Core Bitcoin

BTC è cresciuta da forza a forza attivazione post-segwit:

What is Segwit? A Beginners Crash Course!

Immagine Cortesia: Coindesk

Il 2 settembre 2017, BTC ha raggiunto massimi record su $5000 prima di riaggiustarsi rapidamente a $4690. BTC finalmente scalato la montagna $5000 e non c'è motivo per cui questo non possa diventare la nuova norma.

Bitcoin Cash

Bitcoin Cash fornisce un caso di studio molto interessante e un'opzione molto forte per chiunque stia cercando di diversificare il proprio portafoglio crittografico. Nessuno può dire cosa accadrà nel suo futuro, ma una cosa è certa, ha il potenziale per essere un'alternativa BTC a lungo termine.

What is Segwit? A Beginners Crash Course!

Like what you read? Give us one like or share it to your friends and get +16

222
Hungry for knowledge?
New guides and courses each week
Looking to invest?
Market data, analysis, and reports
Just curious?
A community of blockchain experts to help

Get started today and earn 128 bonus blocks

Already have an account? Sign In