En begyndervejledning til Segregated Witness (SegWit)
Hjem
Artikler
En begyndervejledning til Segregated Witness (SegWit)

En begyndervejledning til Segregated Witness (SegWit)

Avanceret
Offentliggjort Nov 25, 2019Opdateret Jun 13, 2023
6m

Hvad er SegWit?

Segregated Witness (segregeret vidne, SegWit) er en protokolopgradering, der blev udviklet i 2015. Konceptet blev introduceret som en l√łsning p√• det problem med skalerbarhed, som blockchain-netv√¶rk stod og stadig st√•r over for i dag.¬†

I gennemsnit validerer Bitcoin-netv√¶rket en ny blok hvert 10. minut, som hver indeholder flere transaktioner. Som s√•dan p√•virker blokst√łrrelsen antallet af transaktioner, der kan bekr√¶ftes i hver blok. I √łjeblikket kan Bitcoin-blockchainen behandle omkring 7 transaktioner i sekundet.

SegWits hovedid√© er at omorganisere blokdata, s√• signaturer ikke l√¶ngere placeres sammen med transaktionsdata. Med andre ord best√•r SegWit-opgraderingen i at adskille¬†vidner¬†(signaturer) fra transaktionsdata. Dette giver mulighed for at¬†lagre¬†flere transaktioner i en enkelt blok, hvilket √łger netv√¶rkets dataoverf√łrselshastighed for transaktioner.

Eftersom en Bitcoin-transaktion kun kan behandle ca. 7 transaktioner i sekundet, kan det nogle gange tage lang tid at gennemf√łre den. Det er meget langsommere sammenlignet med konventionelle betalingsl√łsninger og finansielle netv√¶rk, som kan behandle tusindvis af transaktioner i sekundet.

SegWit blev udviklet i 2015 af Bitcoin-udvikleren Pieter Wuille sammen med andre Bitcoin Core-udviklere. I august 2017 blev SegWit-opgraderingen implementeret som en soft fork på Bitcoin-netværket.

I dag bruger flere kryptovalutaprojekter SegWit, herunder Bitcoin og Litecoin. Opgraderingen af protokollen gav mange fordele, f.eks. forbedret transaktionshastighed og blokkapacitet. SegWit l√łste ogs√• den s√•kaldte transaktionsfejl (omtalt nedenfor).


Hvad er de vigtigste fordele ved SegWit?

For√łgelse af kapaciteten

√Čn af de st√łrste fordele ved SegWit er for√łgelsen af blokkapaciteten. Ved at fjerne signaturdataene fra transaktionsinputtet kan flere transaktioner lagres i en enkelt blok.

Transaktioner best√•r af to hovedkomponenter: input og output. Inputtet indeholder i princippet afsenderens public address, mens outputtet indeholder modtagerens public address. Afsenderen skal dog bevise, at denne har de midler, der skal overf√łres, og det g√łr vedkommende med en digital signatur.

Uden SegWit kan signaturdataene fylde op til 65 % af en blok. Med SegWit flyttes signaturdataene v√¶k fra transaktionens input. Dette medf√łrer, at den effektive blokst√łrrelse √łges fra 1 MB til ca. 4 MB.

Bem√¶rk, at SegWit ikke er en egentlig blokst√łrrelsesfor√łgelse. I stedet er det en teknisk l√łsning til at √łge den effektive blokst√łrrelse uden at skulle √łge blokst√łrrelsesgr√¶nsen (hvilket ville kr√¶ve en hard fork). For at v√¶re mere specifik er den faktiske blokst√łrrelse stadig 1 MB, men den effektive blokst√łrrelsesgr√¶nse er 4 MB.

SegWit introducerede ogs√• id√©en om blokv√¶gt. Vi kan betragte blokv√¶gt som et begreb, der erstatter id√©en om blokst√łrrelse. Blokv√¶gt er grundl√¶ggende en foranstaltning, der omfatter alle blokdata, herunder transaktionsdata (1 MB) og signaturdata (op til 3 MB), som ikke l√¶ngere er en del af inputfeltet.


For√łgelse af transaktionshastigheden

Med en blok, der kan lagre flere transaktioner, har SegWit ogs√• mulighed for at √łge transaktionshastigheden, da der kan v√¶re et st√łrre antal transaktioner, der bev√¶ger sig gennem blockchainen. Selv om det tager lige s√• lang tid at mine en blok, bliver der behandlet flere transaktioner i den, s√• transaktion pr. sekund er h√łjere.

Den √łgede transaktionshastighed har ogs√• bidraget til at reducere transaktionsomkostningerne i Bitcoin-netv√¶rket. F√łr SegWit var det ikke ualmindeligt at bruge over 30 USD pr. transaktion. Men SegWit har s√¶nket denne omkostning drastisk til under 1 USD pr. transaktion.


Rettelse af transaktionernes smedelighed

Et stort problem med Bitcoin var muligheden for at manipulere med transaktionssignaturer. Hvis en signatur √¶ndres, kan det resultere i, at en transaktion mellem to parter bliver √łdelagt. Eftersom de data, der er lagret p√• blockchains, er praktisk talt uforanderlige, kan ugyldige transaktioner blive permanent lagret p√• blockchainen.

Med SegWit er signaturer ikke længere en del af transaktionsdataene, hvilket fjerner muligheden for at ændre disse data. Denne rettelse har givet mulighed for yderligere innovation inden for blockchain-fællesskabet, herunder layer 2-protokoller og smart contracts.


SegWit og Lightning Network

Udviklingen af layer 2-protokoller blev delvist muliggjort ved at rette fejlen om transaktionens smedelighed. Sagt p√• en enkel m√•de er layer 2-protokoller nye platforme eller produkter, der er bygget oven p√• en blockchain s√•som Bitcoin. √Čn af de mere popul√¶re layer 2-protokoller er Lightning Network, som er et off-chain-mikrobetalingsnetv√¶rk.

Lightning Network er en layer 2-protokol, der fungerer oven p√• Bitcoin-netv√¶rket. Hovedform√•let med Lightning Network er at g√łre det muligt at bekr√¶fte flere transaktioner p√• kortere tid, hvilket resulterer i hurtigere transaktioner for brugerne. Transaktioner indsamles off-chain og lagres effektivt i en buffer, s√• Bitcoin-netv√¶rket i sidste ende kan behandle dem.

Lightning Network er en foresl√•et skalerbarhedsl√łsning til Bitcoin. Flere andre kryptovaluta- og blockchain-projekter arbejder dog p√• at implementere teknologien i deres netv√¶rk. Dette vil ikke blot reducere bekr√¶ftelsestiden for transaktioner, men ogs√• fremme udviklingen af nye l√łsninger p√• problemet med skalerbarhed.


SegWit vs. SegWit2x

SegWit er en soft fork-opgradering, hvilket betyder, at den er bagudkompatibel. Med andre ord kan Bitcoin-noder, der ikke er opdateret til at omfatte SegWit, stadig behandle transaktioner. Der var dog et andet forslag til SegWit-implementering kaldet SegWit2x (S2X), som ville kræve en hard fork-opgradering.

Den vigtigste forskel mellem SegWit og SegWit2x er, at sidstn√¶vnte ikke blot ville have omfattet en √¶ndring i transaktions-batching, men ogs√• en for√łgelse af blokst√łrrelsen (fra 1 MB til 2 MB). En st√łrre blokst√łrrelse vil dog √łge byrden for nodeoperat√łrer og minere, da der vil v√¶re flere data, der skal h√•ndteres.¬†

En anden bem√¶rkelsesv√¶rdig forskel er, at SegWit-forslaget blev st√łttet og h√•ndh√¶vet af Bitcoin-f√¶llesskabet. Episoden gav anledning til begrebet UASF, som st√•r for¬†user-activated soft fork (brugeraktiveret soft fork).

På den anden side foreslog SegWit2x en væsentlig ændring af én af de grundlæggende regler for Bitcoin. Men da udviklerne ikke kunne opnå konsensus om at vedtage og implementere den, blev SegWit2x-bevægelsen i sidste ende suspenderet.


Indlejret SegWit vs. integreret SegWit (bech32)

Kort sagt er integreret SegWit (ogs√• kendt som bech32) en opdateret version af indlejret SegWit. Bech32-formatet giver √łget transaktionshastighed, bedre fejlfindingsmekanismer og endnu lavere transaktionsgebyrer. Desuden er bech32-adresser skrevet med sm√• bogstaver, hvilket g√łr dem lettere at l√¶se.

Bem√¶rk, at blockchain-transaktioner mellem adresser, der ikke er SegWit (Legacy), indlejrede SegWit-adresser og integrerede SegWit-adresser (bech32) er fuldt kompatible. Det er dog ikke alle b√łrser og krypto-wallets, der underst√łtter SegWit, s√• du kan muligvis ikke h√¶ve midler direkte til en SegWit-adresse.

Binance-b√łrsen underst√łtter SegWit-inds√¶ttelser og -h√¶vninger for Bitcoin (BTC). Du kan finde flere oplysninger i ofte stillede sp√łrgsm√•l om SegWit.


Sammenfatning

Implementeringen af SegWit markerede den st√łrste protokolopgradering af Bitcoin, og det faktum, at den blev st√łttet og implementeret af det decentrale f√¶llesskab, g√łr den endnu mere interessant.

Indf√łrelsen af SegWit var et stort skridt fremad i l√łsningen af mange problemer i forbindelse med Bitcoin og andre blockchain-netv√¶rk ‚Äď is√¶r med hensyn til skalerbarhed. Gennem kombinationen af SegWit og layer 2-protokollerne kan blockchain-netv√¶rk h√•ndtere et st√łrre antal transaktioner med st√łrre effektivitet og lavere omkostninger.

Selv om SegWit er en effektiv og innovativ l√łsning, er den endnu ikke blevet fuldt ud indf√łrt. I √łjeblikket er procentdelen af Bitcoin-adresser, der bruger SegWit, omkring 53 %.