Bitcoin trade-offs?

So recently I’ve been wondering what makes Bitcoin so difficult to implement in DEX’s. Current solutions include IOU’s/wrapping with third party issuers which doesn’t solve the issues of custody.

So I decided to take some time and learn about Bitcoin’s scripting language called Script. It’s a stack-based language purposely made limiting to prevent bugs and keep the protocol stable. Functions on the Script language are called OpCodes. Many OpCodes that existed in earlier versions of Bitcoin have been removed due to fear of bugs, further limiting the protocol, additionally to keep the size of full nodes reasonable, sacrifices were made like keeping block size at only 1MB and limiting maximum bytes per OpCode to only 4 bytes allowing only very simple operations. All these limiting features make Bitcoin not turing-complete and a nightmare to work with.

This inspired the creation of smart contract platforms like Ethereum and Neo which use more traditional programming languages with much more functionality.

So with the recent announcement of protocol specs for Bitcoin trading being finalized, my question is; will there be trade-offs? If team delivers true non-custodial Bitcoin trading allowing for complex order types and similar performance to CEX’s this will be a game changer and anyone who cares about the values of self-custody should recognize this as one of the biggest achievements in this space. But again, my concern is that there’ll be some trade-offs, so if team could share something I’d really appreciate :v::nash_token:

2 Likes

Typical trade-off would be the need for validators outside the BTC network.
However such thing can theoretically be solved by outsourcing the validation to multichain structures that harvest the power from multiple chains into a new chain. The incentives in such networks are aligned to find blocks of memberchains first and validate transactions. Nothing else. Example of such network: http://multiverse.blockcollider.org/#/rover

BlockCollider is working on a new ScriptingLanguage Timble. (Formerly introduced as BEAM) This will bring support for opCodes back. https://hackmd.io/s/H1KY7tEQ4
(project is currently in stealth mode. Very quiet. Almost no documentation. But (hopefully) making progress.)

1 Like

Interesting…
I’ll take a look :+1:

Nothing to contribute from me, I admire your knowledge, congratulations, it is important to know that we have people with technical knowledge here.

1 Like