Hva er SegWit? En introduksjon til Bitcoins kjedeskaleringsmetode | Blockchain-ordliste| OKX Academy

En nybegynnervennlig introduksjon til Bitcoins SegWit, inkludert hva SegWit er, hvorfor det er viktig og hva det oppnår

SegWit er navnet på en Bitcoin-oppgradering implementert via en myk gaffel i august 2017. Den hadde som mål å øke antall transaksjoner per blokk Bitcoin-nettverket kunne behandle. I tillegg adresserte den en sjelden utnyttelse knyttet til transaksjonsformbarhet og la til større programmerbarhet til Bitcoin, noe som muliggjorde ytterligere skaleringsløsninger som Bitcoins Lightning Network.

I denne nybegynnervennlige introduksjonen til SegWit forklarer vi hva SegWit er, dens betydning og oppgraderingens bakgrunn. Vi vurderer også SegWits innvirkning siden den ble tatt i bruk.

Innholdsfortegnelse:

Hva er Bitcoins SegWit?

SegWit – forkortelse for “segregated witness (consensus layer)” – er en skaleringsmekanisme implementert på Bitcoin-nettverket i august 2017. Den hadde som mål å redusere størrelsen på transaksjonsdata slik at flere transaksjoner kunne inkluderes i hver blokk uten å øke blokkstørrelsen begrense via en hard gaffel.

I tillegg til å øke Bitcoins transaksjonsgjennomstrømning, tok SegWit også opp et par andre problemer på nettverket. For det første reduserer oppgraderingen en sjelden utnyttelse der en angriper kan opprette en ny transaksjons-ID før en transaksjon utvinnes. De kan da plausibelt hevde at de aldri har mottatt pengene sine fordi avsenderen ikke vil gjenkjenne transaksjonen sin fordi den vises under en annen ID. Under SegWit krever ikke utregning av transaksjons-ID transaksjonssignaturdata. Derfor, hvis en dårlig skuespiller endrer signaturdata, forblir IDen den samme.

En annen forbedring SegWit ga Bitcoin var økt programmeringsfleksibilitet. Dette muliggjorde effektivt Layer-2-skaleringsløsninger som Lightning Network. Lightning Network krever mer komplekse transaksjoner som er avhengige av hverandre. Uten transaksjonens formbarhetsfiks kan transaksjoner som er avhengige av andre, bli ugyldige ved å endre signaturdataene og dermed transaksjons-IDen. Siden SegWit skiller transaksjonssignaturer fra transaksjonsdata og beregner ID fra sistnevnte, kan ikke en endring i signaturdata ugyldiggjøre fremtidige transaksjoner.

Bitcoin-industrien støttet ikke SegWit universelt. Før aktiveringen var det noen som forsvarte å skalere nettverket ved å øke blokkstørrelsesgrensen via en hard gaffel. Til slutt ville denne fraksjonen introdusere en økning i blokkstørrelse. Den resulterende harde gaffelen skapte Bitcoin Cash-nettverket og dets opprinnelige kryptoaktiva, BCH.

Selv om ikke alle interessenter i Bitcoin-nettverket oppgraderte til SegWit umiddelbart, betydde det faktum at det ble implementert som en bakoverkompatibel endring at dens egen aktivering ikke delte nettverket. I motsetning til en hard gaffel, er en slik endring kjent som en myk gaffel, som risikerer å splitte et nettverk.

En kort SegWit-historie

SegWits kode var publisert som Bitcoin Improvement Proposal 141 i desember 2015. BIPs forfattere var utviklerne Eric Lombrozo, Johnson Lau og Pieter Wuille. Det ble senere introdusert i Bitcoin Core-klienten i oktober 2016. Likevel var det få Bitcoin-gruvearbeidere som godkjente endringen og ga ikke signal om å støtte SegWit.

En rapport i Bitcoin Magazine antyder at en fraksjon av gruvearbeidere var motstandere av SegWit fordi de tjente på en utnyttelse kjent som "AsicBoost" som ga dem 20% forbedret effektivitet, noe som gjorde dem mer lønnsomme.

I mai 2017 møttes en gruppe av de mektigste Bitcoin-gruvearbeiderne og selskapene og utarbeidet det som senere skulle bli kalt New York-avtalen. De ble enige om å aktivere SegWit og øke blokkstørrelsesgrensen som en del av endringen - en oppgradering referert til som "SegWit 2X." I motsetning til SegWit-versjonen implementert i Core-programvaren året før, var endringen ikke bakoverkompatibel med tidligere Bitcoin-programvareversjoner og risikerte å splitte nettverket.

New York-avtalen hadde SegWit 2Xs aktivering planlagt til november 2017. Likevel følte mange i Bitcoin-fellesskapet at et hemmelig møte med selskaper ikke representerte dem og oppfattet SegWit 2X som en trussel mot kryptos generelle desentraliserte etos.

Pseudonym Bitcoin-utvikler Shaolin Fry kom opp med en løsning kjent som en brukeraktivert myk gaffel, eller UASF. I hovedsak vil node- og lommebokoperatører aktivere SegWit og avvise ikke-SegWit-blokker. Dette vil presse gruvearbeidere til å aktivere oppgraderingen fordi uten brukerstøtte blir gruvedrift for Bitcoin raskt en fåfengt operasjon.

UASF var ikke nødvendig til slutt, da trusselen om den var nok til å overbevise gruvearbeidere om å signalisere SegWit-støtte. Gruvearbeidere låste seg inne i SegWit 9. august 2017.

I forkant av SegWits aktivering gikk imidlertid de som var mest forpliktet til å skalere Bitcoin via en blokkstørrelsesøkning hver sin vei. En endring av nettverkets blokkstørrelse implementert av en gruppe såkalte «big blockers» – dvs. gruvearbeidere som favoriserte skalering ved å øke størrelsen på blokker på en måte som ikke var bakoverkompatibel – resulterte i den harde gaffelen som skapte Bitcoin Cash .

Perioden var en turbulent for Bitcoin-nettverket, og etter at støvet rundt de harde og myke gaflene la seg, brukte BTC-prisen resten av 2017 på å nå et daværende høydepunkt på nesten $20,000 XNUMX.

Etter SegWits aktivering i august 2017, steg BTC til 2017-høyden. Kilde: CoinGecko

Hvordan fungerer SegWit?

SegWit fungerer ved segregering en transaksjons vitnedata fra transaksjonsdataene. I det gamle systemet inneholdt blokker transaksjonsinnganger (sendere), utganger (mottakere) og transaksjonssignaturdata. Med SegWit aktiv partisjoneres blokker i en basisblokk på 1 MB og en ekstra seksjon som lagrer transaksjonsdata. Den andre delen kan lagre opptil 3 MB med vitnedata.

Derfor, i motsetning til populær tro, er SegWit faktisk en økning i blokkstørrelsesgrensen. Økningen ble imidlertid gjennomført på en slik måte at den ikke risikerte å splitte nettet. De som ikke ønsker å oppgradere nodene sine til SegWit kan fortsatt delta i Bitcoin-nettverket.

I eldre transaksjoner dannet transaksjonsdata og signaturer et enkelt Merkle-tre – dvs. en datastruktur dannet ved å hashe forskjellige databiter sammen – som en transaksjons-ID ble opprettet fra. Dette betydde at endring av signaturdataene, som er mulig før en transaksjon mineres, resulterte i en annen transaksjons-ID.

Under SegWit er ikke transaksjons-IDen avhengig av signaturdataene. Derfor, selv om en ondsinnet enhet klarte å endre en transaksjons signatur, ville det ikke påvirke noen transaksjons-IDer eller ugyldiggjøre noen transaksjon avhengig av en tidligere.

Selv om basisblokken fortsatt er 1 MB, kan den inkludere data fra flere transaksjoner per blokk fordi, uten vitnedataene, er transaksjoner opptil 65 % mindre. Dette gjør det mulig for gruvearbeidere å inkludere et større antall transaksjoner i hver blokk, og skalere Bitcoin-nettverket til flere brukere.

I tillegg til å øke Bitcoins transaksjonsgjennomstrømning, muliggjør SegWit også mer komplekse transaksjoner. Tidligere kunne transaksjoner som var avhengige av hverandre, bli ugyldiggjort ved å utnytte feilen for transaksjonsformbarhet. Med SegWit aktiv er transaksjons-IDer ikke lenger avhengige av data som senere kan endres. Derfor kan ikke transaksjoner med avhengigheter av andre transaksjoner ugyldiggjøres. Dette muliggjør ytterligere skaleringsløsninger, for eksempel Lightning Network.

SegWit adresseformat

SegWit-transaksjoner bruker ett av to adresseformater. Dette gjør det veldig enkelt å finne ut om du sender fra en SegWit-adresse eller handler med en lommebok som støtter SegWit.

Adresser som begynner med en "3" er kjent som Pay to Script Hash, eller P2SH, adresser. Dette er et eldre adresseformat som er kompatibelt med både eldre (eller ikke-SegWit) og SegWit-transaksjoner. Lommebøker som ikke støtter SegWit kan fortsatt motta SegWit-transaksjoner ved å bruke dette adresseformatet. Transaksjonsgebyrer bør være noe lavere enn eldre adresser ved transaksjoner med P2SH-adresser.

I mellomtiden begynner Bech32-adresser - også kjent som en innfødt SegWit-adresse - med "bc1." Transaksjoner med Bech32-adresser bruker mindre data enn P2SH-motpartene. Dette adresseformatet muliggjør enda flere transaksjoner per blokk, noe som resulterer i enda lavere transaksjonsgebyrer. Det krever imidlertid lommebøker som brukes for å støtte SegWit, som krever en programvareoppgradering.

Hvorfor er SegWit viktig?

SegWit adresserer de økende transaksjonskostnadene som Bitcoin-utviklere og industriobservatører forsto ville begrense nettverkets bruk. Når Bitcoin-blokker er fulle, venter transaksjoner i det som er kjent som mempool.

Transaksjoner forblir i mempoolen til en gruvearbeider inkluderer dem i en blokk. Gruvearbeideren velger hvilke transaksjoner som skal inkluderes basert på transaksjonsgebyret inkludert. Transaksjoner inkludert en veldig liten avgift vil vente i mempoolen i lang tid i perioder med stor overbelastning på Bitcoin-blokkjeden fordi gruvearbeidere vil favorisere transaksjoner med høyere gebyrbetalinger – da det resulterer i større lønnsomhet.

Med SegWit kan gruvearbeidere inkludere flere transaksjoner per blokk fordi dataene som er lagret i 1 MB basisblokken er mindre for hver enkelt enn under det eldre formatet. Dette resulterer i større blokkkapasitet og færre transaksjoner som venter i mempoolen. Med færre transaksjoner som venter, er det større sjanse for å få en transaksjon inkludert i en blokk med lavere gebyr. Derfor vil den gjennomsnittlige transaksjonsavgiften på tvers av nettverket falle.

I tillegg muliggjør SegWit ekstra skaleringsløsninger bygget på lag over den viktigste Bitcoin-blokkkjeden. Den første og mest kjente i dag er Lightning Network. Lightning Network gjør det mulig for transaksjoner å skje utenfor kjeden i betalingskanaler. Fordi disse transaksjonene ikke lenger trenger utvinning i en blokk umiddelbart, venter færre transaksjoner på å bli utvunnet, noe som ytterligere lindrer presset for brukere om å øke transaksjonsgebyrene.

For de som støtter SegWit er oppgraderingen mer fordelaktig enn å øke blokkstørrelsesgrensen via en hard gaffel. For det første risikerer ikke en myk gaffel å splitte nettverket, noe som kan føre til forvirring blant Bitcoin-brukere.

For det andre tvinger ikke oppgraderingen ytterligere maskinvarekrav til nodeoperatører. En av de viktigste egenskapene til Bitcoin er at hvem som helst kan betjene maskinvaren som kreves for å referere til Bitcoin-blokkjeden og bekrefte gyldigheten av transaksjoner selv. En økning i blokkstørrelsesgrensen vil kreve at nodeoperatører bruker dyrere maskinvare med ekstra minneressurser, noe som øker nettverksentraliseringen.

Var SegWit vellykket?

Fordi det er en valgfri, bakoverkompatibel oppgradering, tok SegWit en stund å virkelig påvirke nettverket. Selv om det ble aktivert i august 2017, nådde gebyrene fortsatt nivåer som priset ut potensielle Bitcoin-brukstilfeller. På høyden i 2017 nådde den gjennomsnittlige transaksjonsgebyret mer enn $55, noe som gjorde små transaksjoner eller betalinger økonomisk umulige.

Den gjennomsnittlige BTC-transaksjonsavgiften steg over $55 i 2017 etter SegWits aktivering. Kilde: glass node

Selv om noen økosystemdeltakere implementerte oppgraderingen nesten umiddelbart, tok det lang tid for lommebokleverandører og andre tjenesteleverandører som børser å implementere SegWit. Ved slutten av 2019 brukte bare halvparten av alle transaksjoner det nye formatet. I dag er mer enn 80% av transaksjonene bruke SegWit.

Diagrammet ovenfor viser at daglige transaksjonsgebyrer betalt i BTC har redusert betraktelig etter hvert som SegWit har blitt tatt i bruk. Selv om antall transaksjoner i kjeden behandlet per dag har nådd rundt 7 % under 2017-toppen, har betalte avgifter holdt seg en liten brøkdel av de 1,500 BTC som ble betalt til nettverket 22. desember 2017. Totale gebyrer betalt på en enkelt dag har ikke overskredet 300 BTC under nyere topper.

I vurderingen av SegWits innvirkning er det viktig å huske at oppgraderingen gjorde Lightning Network mulig. Lightning Network ble lansert som en betaversjon i 2018, og har hatt en enorm vekst. Ved inngangen til 2021 hadde skaleringsløsningen en total kapasitet på i overkant av 1,000 BTC. I april 2022 hadde nettverkets totale kapasitet vokst til mer enn 3,650 XNUMX BTC.

Lightning Networks totale kapasitet har økt til mer enn 3,650 2018 BTC siden lanseringen i XNUMX. Kilde: glass node

Antall Lightning Network-kanaler har også økt i samme periode. Fra 37,100 2021 tidlig i 86,500 nådde kanalene en topp på 2022 XNUMX i mars XNUMX. Begge beregningene viser sterk vekst i Lightning-aktiviteten, som kun ble muliggjort av SegWit.

Tydeligvis har SegWit vært en suksess både når det gjelder innvirkning på nettverksavgifter og støtte for mer komplekse transaksjonstyper. I tillegg til Lightning Network, nyere Bitcoin-nettverksoppgraderinger, som for eksempel Taproot, bygger på SegWit for å optimalisere nettverket ytterligere - og ved å adressere transaksjonsformbarhet, vil den myke gaffelen muliggjøre innovasjoner som ennå ikke er utviklet.


Ikke en OKX-handler? Meld deg på og bli med oss ​​i dag.

Kilde: https://www.okx.com/academy/en/what-is-segregated-witness