Fixing Smart Contracts — Here comes Blockchain Contracts

Rohit Tripathy
RanchiMall
Published in
4 min readJan 3, 2018

Among many innovations spurred by Bitcoins — which includes distributed ledgers, the idea of decentralized trust, the first practical implementation of virtually unhackable datastores, demonstration of assets with non-tangible interactive valuations, seeding the notions of Initial Coin Offers, introducing the first mass scale system with completely transparent transactions — the one innovation that stands out for me is the ability to do human mediated and enforced contracts purely on blockchains. I will use the term Blockchain Contracts for this.

Blockchain Contracts are different from Smart Contracts. Smart contracts are purely algorithm driven. They are machines. But machines have no brains. They are hackable. As Kurt Godel postulated in 1931 with his two incompleteness theorems, in a formal system of purely logical rules, there will always be provable mistakes. If the logical rules are rigidly enforced, some wrong ones will be deemed compliant to rules when they are not. If the rules are loosely enforced, then some genuine cases will be classified as non-compliant to rules. In other words, if a purely logical system of rules were created to identify whether someone is guilty or innocent, the necessary price of finding everyone guilty is that some innocent people will be classified as guilty. And if the rule system were loose enough to ensure that no innocent is classified as guilty, then the price is some guilty people will necessarily go scot free. Only one or other of these scenarios can occur; not both.

The implication of Godel’s incompleteness theorems, in the world of smart contracts, is that a pure machine-based financial algorithm will never be 100% accurate. It will either dole out financial benefits to those who do not deserve or it will deny financial benefit to some of those who merit it. In other words, a pure machine-based system will definitely have some fraudulent cases. If all frauds were to be eliminated, then some genuine beneficiaries would have to be denied service. This is an unacceptable condition. So accepting fraud is the only possible compromise. Fraud cannot be eliminated in a pure smart contract-based financial system.

Satoshi Nakamoto, the creator of Bitcoins realized this. He defined the parameters of the system such that the bar to insert a fraudulent transaction in the Bitcoin ledger system is extremely high. To be able to insert a fraudulent transaction in the Bitcoin Blockchain, the fraudster needs to have computing power higher than all the supercomputers of world put together. Nakamoto altered the incentive system in Bitcoin in such a way that it is more profitable for fraudsters to co-operate with Bitcoin system than to practice fraudulent transactions. Those who have that amount of computing power would gain more by simply mining Bitcoins. Nakamoto also ensured that Bitcoin programming language’s scripting system is not Turing complete. A Turing complete programming language gives all logical powers to the programmer such that the programmer can do anything a logical system of rules can achieve. Ethereum, the most popular smart contract platform, on the other hand, permitted the programmers to have a Turing complete programming language. Not without surprise, smart contract writers are up against the wall of Godel postulates and as a result the Ethereum world is replete with hacking incidents at the blockchain level itself.

Can we never have a secure system that also services all its beneficiaries accurately? Are we chasing an impossible dream?

The answer is breaking the confines of a pure rules-based logical system. If we were to inject a little bit of illogical behaviour where the output is different for the same input cases at different times, then we can cut down the losses in comparison with a pure logical system. The best source of illogical behaviour is human judgment. If a smart contract were to be dependent on some human judgment for some actions, then at the price of little lower efficiency, we have a system that rejects false cases much better than a pure machine-based system. Of course, the system is now vulnerable to errors of human judgment but, as evidence from algorithmic trading in financial systems has demonstrated, human trading systems have performed much better than pure machine-based trading systems in general. The best investors in the world are human, with human instincts and human judgements. No machine has come close to beating Warren Buffett’s investment track record over long and consistent periods of time.

A Blockchain Contract is a smart contract with human judgment baked in. If the contract designer is smart, he will insert human elements at the most critical points so that the contract gets the full benefit of machine speeds as well as the fraud-resistance of human judgment. If the contract designer is sloppy and overdoes the human factor, the contract will be slow, lose the benefits of automatic execution and have more occurrences of fraud.

A well-designed Blockchain Contract will perform much better than a well-designed smart contract. It will create more trust. It will create more wealth.

--

--