Post
Topic
Board Development & Technical Discussion
Merits 8 from 5 users
Re: When Schnorr will be added?
by
theymos
on 20/09/2018, 03:40:38 UTC
⭐ Merited by Foxpup (4) ,ETFbitcoin (1) ,bob123 (1) ,gmaxwell (1) ,nullius (1)
So in order to add schnorr signatures, we will not go through another dramafest of mining wars fighting each other with hashrate signaling different things?

If I remember correctly satoshi used in the past softforks that didn't need mining signaling (basically a UASF? but there wasn't a name for it back then). Im not sure why segwit took that route. Was it simply to allow miners to have their say with their hashrate or was it because of technical reasons that needed it to be implemented that way?

Yes, Satoshi always did UASF-style softforks. AFAIK future softforks, including Schnorr, are likely to use BIP 8, which is basically a UASF with an optional miner-enabled fast-track. So miners will be able to speed things up, but not block anything.

It was thought that BIP9 would be a faster and safer way of doing softforks than the Satoshi-style method, but boy did that turn out to be wrong. It was definitely not intended to be a way of letting miners "vote"; miners are not and should not be a decision-making body for Bitcoin.

That's because SegWit developer use "anyone-can-spend" and remove signature part of transaction as method for backward compability where it can be used to steal Bitcoin if majority nodes/miners don't support/use client that support SegWit.

Those were arguments that the anti-SegWit people used, but they're not true:
 - SegWit's security doesn't depend on miners, but rather on the economy. (Otherwise the UASF attempt wouldn't have made any sense...)
 - SegWit outputs are interpreted by pre-SegWit nodes as being spendable by anyone, but that doesn't really mean anything. P2SH outputs were also interpreted as more-or-less spendable by anyone by pre-P2SH nodes.
 - The signature is not removed. Between SegWit nodes, every transaction must be accompanied by its signatures or it's invalid.