Post
Topic
Board Speculation
Re: Long term advance notice!
by
figmentofmyass
on 07/06/2019, 22:36:11 UTC
Quote
When you put a SegWit booty bug in many software clients that convinces users to spend their BTC to "anyone can spend" unrecognized addresses, then the Satoshi protocol is eventually incentivized to take those as donations. Never did the Satoshi protocol change. Some miners were duped into honoring Core protocol rules and Satoshi protocol can tolerate Core's protocol rules until the booty piles up stinking high, then the Satoshi protocol will not have Nash equilibrium until the booty is take and the bug is removed from the clients.

whoever cooked up this theory didn't read any of satoshi's writings, or vehemently disagrees with how satoshi's protocol was written. satoshi clearly envisioned new consensus rules being added to the protocol to fulfill new transactional use cases, enforced by consensus but backward compatible with older nodes---just like segwit. the forward compatibility he built into the protocol was quite elegant:

The nature of Bitcoin is such that once version 0.1 was released, the core design was set in stone for the rest of its lifetime.  Because of that, I wanted to design it to support every possible transaction type I could think of.  The problem was, each thing required special support code and data fields whether it was used or not, and only covered one special case at a time.  It would have been an explosion of special cases.  The solution was script, which generalizes the problem so transacting parties can describe their transaction as a predicate that the node network evaluates.  The nodes only need to understand the transaction to the extent of evaluating whether the sender's conditions are met.

The script is actually a predicate.  It's just an equation that evaluates to true or false.  Predicate is a long and unfamiliar word so I called it script.

The receiver of a payment does a template match on the script.  Currently, receivers only accept two templates: direct payment and bitcoin address.  Future versions can add templates for more transaction types and nodes running that version or higher will be able to receive them.  All versions of nodes in the network can verify and process any new transactions into blocks, even though they may not know how to read them.