Why could Cypherium decouple proof-of-work and transaction validation?
Because proof-of-work is not related with transaction validation, they serve entirely different purposes. Take an example, Bitcoin’s proof-of-work only calculates SHA-256 algorithm billions of time, while its transaction validation checks secp256k1 signature and all input transactions. Other consensus mechanisms, such as proof-of-stake, don’t involve proof-of-work at all.
Why use Proof-of-work, not Proof-of-stake?
Proof-of-stake is more centralized, less secure and still untested in many aspects. Bitcoin’s proof-of-work allows nodes to join and exit anonymously at any time. In a proof-of-stake based network, stakeholders serve as validators for each transaction. This requires that all validators must be available at all times and creates single-point-of-failure. The initial distribution of coins is controlled by the developer. Nodes will compete for storing more coins. Coins in circulation could become scarce. And it provides more incentive for controlling groups to collude together and manipulate the supply and price.
Doesn’t Proof-of-Work use a large amount of energy?
Energy use is relative. If we scale transaction throughput, for example, 1000x compared to Bitcoin, while retaining SHA-256 as the Proof-of-Work mechanism, then efficiency is effectively improved 1000x.
Why is two-third majority chosen as the validation threshold?
It’s mathematically proven that in order to tolerate f number of Byzantine nodes, a minimum 3f+1 number of nodes must present. For more detail, please refer to Byzantine general’s problem.
Does Cypherium have an UPPER LIMIT for transaction speed?
No. There is no fixed block size on Cypherium’s transaction chain, which also means no fixed transaction limit will be imposed. Transaction throughput will be a function of network latency.
What is the time to generate a block?
There is no fixed block time in Cypherium’s design. The validator committee fills a transaction block until the data of transactions reaches its limit. Transaction blocks are small in size, usually a few hundred kilobytes.