Deconstructing “Code Is Law” and Layer 2 “Smart Contracts”

Code Is Law

The phrase “code is law” has been misunderstood to accuse advocates of proposing that in a smart contract “world”, code will supersede or even enable the removal of the legal/judicial system. This is simply not the case. “Code is law” is a shorthand for the idea proposed above — that a smart contract will execute as specified without interruption, and that that’s generally a better choice than allowing any party to interrupt execution at any time. “Breach of contract” suits are therefore impossible, but “smart contract is legally invalid” or “smart contract did not match human understanding” suits are very possible.

Uses For Smart Contracts?

The above statement is very important. Prior to smart contracts, this list of situations was basically was a danger checklist. Entering into a contract with some of the above qualities would result in a significantly higher chance of a negative outcome. International deals, small values, unidentified parties (or parties who can disappear easily — for example, a small business), and unclear contractual terms (often complicated by foreign languages) all contribute to a higher risk for negative outcomes.

Uses for Blockchain settled Contracts?

However, smart contract rules may be manipulated by a dishonest party in a manner which any human would see as clearly against the intention of the contract. In this case the “smart” contract is actually extremely dumb — it will execute its rules allowing the exploit, whereas a human would likely stop. This is what happened in the infamous Ethereum DAO hack.

Hybrid Contracts: Using Smart Contracts as a better base for Blockchain Settled Contracts

An interesting evolution is hybrid smart and blockchain settled contracts. This may allow contracts to stipulate certain undeniable guarantees, but still have the applicability of blockchain settled contracts. For example, in the introduction I showed that problem with basing blockchain settled contracts solely on multisig is any problem results in a traditional negotiation between parties. In a payment for service contract, this could be very bad for the service provider because toward the end of the contract, it has completed or nearly completed the work, yet the purchaser has invested nothing. A better base for this kind of contract could be a smart contract that has an exit clause in which the service provider receives some payment that is proportional to the time passed (this is different than periodic payments — the implication, which may be important in subsequent litigation, is that the contract was breached and a penalty payment made, periodic payments may imply that one party exercised his right to amicably terminate the relationship). Another possibility is that the contract verifies that periodic payments are made, and exits with a penalty payment to the service provider if a payment is missed.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store