Segwit2Mb - combined soft/hard fork - Request For Comments



Summary:

In an email exchange between Natanael and Jorge Timón via bitcoin-dev, the topic of Segwit was discussed. Segwit is a protocol update that replaces the 1 MB size limit with a weight limit of 4 MB. However, it was pointed out that if done exactly as stated, it would make it a hardfork instead of a softfork. Segwit separates signature data from transaction scripts, but the 1 MB limit would still remain and only cover the contents of the transaction scripts. With Segwit, there are two size limits in place, not one. Even with Segwit and MAST, which is used for large complex scripts, there will still be a low limit to the total number of possible transactions per block, and not all transactions will get the same space savings. However, due to the way the weight is calculated, it is impossible to create a block that old nodes would perceive as bigger than 1 MB without violating the weight limit after Segwit activation. Nodes supporting Segwit do not need to validate the 1 MB size limit anymore as long as they validate the weight limit. The weight is the only notion of cost miners need to consider when comparing transactions by feerate. Having two separated limits or costs would make block creation and relay policies much harder to implement. Therefore, after Segwit, a hardfork can simply increase the weight limit and forget about the pre-Segwit 1 MB size limit.


Updated on: 2023-06-11T23:09:43.932593+00:00