Is there anyone who can break down the Segwit upgrade for me in simple terms? I’m kinda lost, all I get is that it changed how transaction data is structured, fixed transaction malleability, and maybe increased the block size. Were there any other improvements? If someone could explain it in a straightforward way, that’d be awesome.
Did we really need the Segwit upgrade
10 replies 212 views
cryptobridgeSenior Member
Posts: 221 · Reputation: 1481
#2May 27, 2017, 07:47 AM
I hope you know about transaction structure to make your understanding easy!
There was two upgrade of Segwit. The first one is Segwit version 0, which is the Segwit that introduced structure changed in the transaction and also fixed transaction malleability while Segwit version 1 introduced Taproot, this introduced a way to make signatures smaller with Schnorr signature to reduced number of signatures and the size in transaction, a new type of script called tapscript and also improved privacy in transaction.
Before the Segwit upgrade, legacy transactions(p2pkh and p2sh) are heavy in bytes and the fees are calculated with sat/byte, paying sats for each byte is expensive but the introduction of Segwit v0 introduced a discount weight unit with the witness field and that made the new fee rate as sat/vbyte and also increased the block size.
The legacy transactions do inlcude signature in the scriptsig, but with Segwit, the signature is removed from the scriptsig to the witness field. So when transactions byte are calculated, the signature is calculated on the discount of witness, you are paying less fee as compared to legacy transactions where signature is included in the scriptsig..
There are couple of threads in the forum about Segwit but the images are broken. Learnmeabitcoin gives summary and basic.
https://learnmeabitcoin.com/technical/upgrades/segregated-witness/
paul.stakeHero Member
Posts: 651 · Reputation: 3798
#3May 27, 2017, 12:06 PM
The simplified explanation is that Segwit was the solution to transaction malleability, as already mentioned above, in the learnmeabitcoin website. The idea is to segregate the signature from the transaction, so that the TXID is not determined by the signature. A beneficial side effect of this segregation is that, because signatures are no longer part of transactions, a block can now contain more transactions than before.
This is pretty much it. It got consensus because it also slightly increased the block size at a time when people really demanded it.
gr3g.0rbitHero Member
Posts: 1025 · Reputation: 2646
#4May 27, 2017, 01:25 PM
BIP-141 has enough "simplified" information regarding that.
If you disregard the references and examples, the rest or at least the "Motivation" part should be easy enough to understand and contains the answers that you seek.
Link: github.com/bitcoin/bips/blob/master/bip-0141.mediawiki
Most notably in point 3's "New script system could be introduced" paved a way for future upgrades without changing the consensus rules.
Be careful with your wording. IIRC only legacy node and wallet wouldn't see signature on segwit TX. Signature itself is part of TX, but it's counted as witness data, where witness data benefit from witness discount.
This is pretty much why it was really necessary.
As there are basically no downsides, and it allows transactions to be made cheaper and also fitting more transactions in a block, it greatly increases scalability.
Most scalability solutions costs decentralization, which isn`t the case for segwit.
There was no reason not to implement segwit, and many good reasons to.
SwiftMinerSenior Member
Posts: 259 · Reputation: 1036
#7May 27, 2017, 07:49 PM
There are a lot of reasons why SEGWIT upgrade was important. Periods of around 2017 and 2018 was when it was first obvious. No one would fancy a network where congestion was so high you would have to pay almost 10 % as fees it's literally almost like you are getting taxed. Yeah miners would have benefited from higher fees but it was not worth it.
Everything revolves around dropping fees and maximising block space. Splitting the witness data and the transaction data was most of it plus weight units was used to replace the initial hard block limit of 1MB back then.
Very clear and explicit thank you, thread is now closed
No, it's not. How about you actually close it instead of only talking about it?
diamond_atlasSenior Member
Posts: 408 · Reputation: 1359
#10May 29, 2017, 04:48 AM
It's not too necessarily to go into too technical things and if you simply look at what's going on the Bitcoin blockchain and Bitcoin mempools now, you can see good effects from Segwit upgrade years ago in 2017 and the Segwit adoption growth since 2017 which all contributed well to give cheaper fee rates in Bitcoin mempools and cheaper transaction fees for our bitcoin transactions recent months.
Practically, it's more important than anything else, as you can see someone try to talk about amazing technical upgrades or altcoin projects try to shill their technical innovations which all failled practically later.
Segwit Bech32 adoption.
Segwit spending transactions is the chart that visualizes how the Segwit adoption increases with time.
You can get more informative charts there https://mainnet.observer/
Signatures are bulky and every node has to validate them, but most wallets don't need to keep re-downloading them forever just to know coins moved. By separating that data, old nodes could still follow the chain (soft fork), and new nodes could count that signature data differently (block weight), so capacity goes up in a way that doesn't instantly blow up disk/bandwidth for everyone.
Before SegWit, someone could tweak a transaction's ID without changing what it did, which is a nightmare if you're trying to build reliable second-layer protocols. Lightning in particular basically needed stable txids to work sanely at scale.
So "was it necessary?" If you wanted Lightning and a safer path for future upgrades, yeah, pretty necessary.
Related topics
- Need Help! Funds Gone / Wrong Address 10
- Bitcoin Core displaying coins (UTXOs) in a new tab 13
- Are you in favor of BIP-110? Let's get a Bitcoin poll going. 0
- Erlay seems to have some issues here’s a better proposal for a bitcoin protocol without invites 3
- New Optional Hourglass Implementation is Live 3
- Ways to earn some sats by contributing to bitcoin core development 5