[UNDER CONSTRUCTION]
Here are cryptoLaw resources I have found useful over the years, curated by topic with my notes."Blockchain governance" generally comes in only three varieties: (1) Lord of the Flies, (2) lawyers, or (3) ruthlessly minimized.
On-chain governance means that blockchain nodes automatically upgrade when an on-chain governance process decides on an upgrade. Off-chain governance requires node operators to consciously decide whether to install a hard fork; thus, node operators are necessary participants in off-chain governance. On-chain governance moots node operator participation. Thus, with on-chain governance an important check on developer and tokenholder power is lost. Users !== token holders, their interests may diverge, and in general blockchains should benefit the public at large, not merely token holders. Thus, plutocracy based on token ownership is undesirable.
Blockchain governance is not really a decision function, but a set of coordination mechanisms. Multifactorial consensus, including but not limited to non-binding tokenholder voting, is superior to both binding tokenholder voting and core developer consensus without tokenholder voting. Binding tokenholder voting suffers from several problems, including extra costs of minority forking, low participation, bribery attacks and lack of representation of non-plutocratic interests. Digital constitutions do not sufficiently mitigate these issues with voting because norms are not reducible to simple edicts.
Discusses how the problems abstractly identified in Part 1 above have played out in practice on the EOS blockchain network, and proposes use of better cryptoeconomic designs to ameliorate such issues.
Discusses collusion issues presented by attempted to align incentives via cryptoeconomic mechanisms like prediction markets, TCRs, Harberger taxes, quadratic voting/financing, etc. Common tactics for dealing with selfish attacks within these systems have the undesirable side effects of subsidizing plutocracy and opening bribe attack vectors (collusion). Models where collusion is possible implicate cooperative game theory in which there are classes of games that have no stable equilibrium and therefore sound cryptoeconomic design is highly difficult. This issue can be addressed either by only playing identity-free and collusion-safe games or by developing better solutions to the problems posed by identity and collusion. Identity-free and collusion-safe games include many systems, including Nakamoto consensus under certain conditions, various competitive markets and futuarchy. Such systems are limited by tragedy of the commons effects because any mechanism that can help genuinely under-coordinated parties coordinate will, without the right safeguards, also help already coordinated parties over-coordinate, extracting money from the system. An identity-free mechanism that empowers distributed communities cannot avoid over-empowering centralized plutocrats pretending to be distributed communities. Thus, richer governance will require dealing with the problems of collusion and identity more directly. Identity proof mechanisms based on claims of identity confirmed by trusted parties or via futurarchy are discussed. Defenses against renting identity such as making identity revocable and renting unreliable are discussed. In-person identity verification methods may also protect against certain forms of collusion attacks.
Blockchains are not companies. Tokenholders are not stockholders. Blockchains are more like societies and tokenholders are more like (a subset of) their citizens.
Blockchains are not companies. Tokenholders are not stockholders. Blockchains are more like societies and tokenholders are more like (a subset of) their citizens.
On-chain governance has many advantages (transparency, auditability, accountability, enforceability), and the mechanisms of on-chain goverannce are not limited to stake-weighted token voting.
tldr: There is a dilemma for miners on blockchain networks with scripting capabilties — whether to verify the validity of scripted transactions or accept them without verification. Verifying scripts consumes computation resources and therefore delays honest miners in the race to mine the next block. This dilemma leaves open the possibility of attacks which result in unverified transactions on the blockchain. This means that some computation tasks outsourced to cryptocurrency-based consensus computers may not execute correctly
tldr: Ethereum miners have sufficient selfish incentive to refrain from setting a high gaslimit that blocks will not take very long to verify and the verifier's dilemma will not kick in.