6

Bitcoin’s Script is the forth-like, non-Turing complete language used for transactions. However, in practice, a very limited number of kinds of scripts are allowed, a number of opcodes have been disabled, and even a number of bugs in script have to be replicated to maintain consensus.

Have there been any innovations by the altcoin community, in their forks of Bitcoin’s Script? Any with non-secp256k1 crypto? Any with more functional bignum / arbitrary integer functionality that can do cryptographic primitives? Any that add Turing complete functionality?

3
  • 1
    Not anything significant that I know of. Note that more and more operators in the Bitcoin script have been/are being re-enabled and other new operator and script features have been/are being implemented. Turing completeness in this context is merely a buzz word that doesn't make sense to begin with. Most use cases need their own P2P network and data storage system (blockchain or otherwise) and only need to anchor hashes in the Bitcoin blockchain (if at all).
    – Jannes
    Commented Dec 17, 2015 at 20:27
  • 1
    Hi Christopher, have you looked into Ethereum at all? I don't know much about its scripting procedures, but I know it's touted as being Turing complete, and just generally more featureful. More complexity opens the door for more attack vectors, though. This seems like a good starting point: ethereum.gitbooks.io/frontier-guide/content/…
    – morsecoder
    Commented Dec 18, 2015 at 13:53
  • 2
    "Turing complete" is basically nonsense, the authors don't even call it that.
    – Claris
    Commented Dec 24, 2015 at 10:22

1 Answer 1

4

Bitcoin Cash is a code and blockhain fork (blocks 0 to 478558 are the same on both blockchains) which did the following upgrades to Bitcoin Script VM:

Turing completeness

Bitcoin Cash Script is not Turing-complete but OP_CHECKDATASIG (2018) and introspection opcodes (2022) made transaction chains Turing-complete. There's been some work discussing why this is so: Self-Reproducing Coins as Universal Turing Machine, A. Chepurnoy, Vasily Kharin, D. Meshkov

Note that nodes wouldn't be automatically evolving the multi-TX program. Some blockchain-external agent would have to construct the next transaction that satisfies the covenant and then broadcast it to the network. The program could code-in a reward for this and incentivize anyone to construct and post the next transaction, or external agents could do it for free. The program would halt when it runs out of money for the fees/incentives, but then again, other external agents could give it more money to continue evolving.

Not the answer you're looking for? Browse other questions tagged or ask your own question.