notes icon indicating copy to clipboard operation
notes copied to clipboard

A new day, a new reasoning

Open void4 opened this issue 7 years ago • 0 comments

The gist of what I'm trying to do is about this: Right now 99% of blockchain development focuses on the enhancement of single networks (the Ethereum Mainnet, the various Bitcoin mainnets etc.). Major architectural changes there are impossible because it is necessary to maintain backward compatibility and choices are inherently political because these networks have attracted so much value.

I want to create a virtual machine that makes small deterministic objects (code+state) possible, you'll be eventually able to create very compact blockchains on them.

This has several advantages: There is no network "client" application (like Geth or Parity), because the behavior is defined by the virtual machine and the consensus algorithm is contained within the object. Because it is contained within the object, and the object can self-modify, even the consensus algorithm can be changed dynamically.

This is something that current systems cannot do, because the blockchain client and the blockchain object (the Bitcoin Opcodes or Ethereums' EVM stack machine) are written in different languages.

If they are written in the same language, you can establish a boundary between local client and global synchronized state (that which is under consensus): https://twitter.com/dd4ta/status/999520910968311809

If the language is powerful enough, you could even imagine these objects creating new objects.

tl;dr: The Ethereum Virtual Machine is very limited, and very dependent on the Ethereum architecture. I'm building a generalized virtual machine that has more security properties. Parity's substrate is probably the closest thing that exists right now, with the difference that the consensus algorithm is implemented separately, in a different language than the blockchain object, and cannot be changed from within the system.

void4 avatar Nov 06 '18 15:11 void4