Smart Contracts in a Free Society

in #ethereum8 years ago

In light of the recent drama surrounding The DAO's unexpected behavior, it is time we reconsider the use of the word contract. This word is loaded with all kinds of implicit meaning and expectations. Perhaps the most dangerous aspect of contracts is the presumption that they can be enforced at gunpoint.

What is a Contract?

Let's get back to the basis and consider the actual meaning of a contract:

A legal obligation or duty is enforced by a court of law, it can be a debt and the legal responsibility to carry out what the law asks. -- thelawdictionary.com

To summarize, in the event of a dispute, parties ask a judge to make a ruling. After the judge decides, one party is compelled by threat of force to obey the court's ruling. If he does not obey, then he can be arrested for contempt of court. If he resists arrest then he may be shot and killed.

Those of us who believe in the silver rule know that we would never want someone else to kill us for failing to abide by the ruling of a judge whom we did not consent to. Violence and death is just not an acceptable means for a civilized society to resolve conflicts.

What is the problem with Contracts?

The problem is that as soon as you enter a contract with someone, the government presumes to have jurisdiction. They use their jurisdiction to determine whether or not to enforce the terms. Often they will completely ignore the terms and replace them with terms defined by law.

Almost all laws and regulations are based upon restricting the types of contracts that people can enter into. If you attempt to construct a contract that the government does not like, then government courts will not enforce it. I know from personal experience that this isn't limited to things like hiring an assassin, but includes ordinary family affairs.

When going through a divorce my ex-wife and I opted for legally binding arbitration. We both signed a contract agreeing to allow a neutral panel of 3 arbiters decide how to divide our assets, liabilities, and child custody. At the end of the day, the government overturned the ruling of the arbiters. In other words, it is not possible to rely on governments to enforce legitimate contracts in an unbiased manner.

What is the promise of Smart Contracts

The promise of smart contracts is to create a new jurisdiction that is beyond the reach of government courts. Smart contracts are not enforced by violence, but through complex economic interactions of a decentralized community utilizing a common crypto-currency.

Smart contracts are pure information and as such they should be protected under freedom of speech. The result of a contract impacts someone's reputation in the community. Their reputation takes the form of purchasing power of a communities cryptocurrency.

The larger the community and the more economic might placed on its currency, the more powerful the rulings of its contracts can become. These rulings are enforced by everyone in the community having a clear and objective evaluation of who owns what and why.

The Dangers of Mixing Contracts and Smart Contracts

People are starting to realize the benefits of Smart Contracts cannot be had without tradeoffs. In this case, the tradeoff is that programming errors can cause the automatic consensus process to render results that are perceived as unjust.

Almost instantly everyone falls back to the "safety" of contracts. The threat of lawsuits is thrown out by both sides of the dispute. In effect, those calling for lawsuits are begging the government to claim jurisdiction over the interpretation of the smart contracts. They are begging the government to render an opinion on the intent of the parties involved.

This is very dangerous. If the government were to have jurisdiction on judging the intent of the parties, then it might conclude that the intent was a conspiracy to create an illegal joint partnership. The liability would fall on the creators. Rather than just arresting the so-called 'attacker', the government would likely arrest everyone involved in creating The DAO, including investors like the so-called attacker.

It is becoming all too common that people call the police for help, and when the police show up they kill the person they were supposed to help. I am afraid that those who have the mindset that the so-called attacker did something illegal need to be very careful what they wish for.

The Power of Community

At the end of the day, it is the job of any community to ensure there is a sense of justice. This means that to the extent possible, wrongs must be made right. Communities that are able to protect its members from both intentional and accidental injustices are stronger than those who are unable to protect their members. The problem is that with great power comes great responsibility.


Whether or not anyone wants to admit it, every cryptocurrency community has this power and must decide how they will use it. Many people argue that using this power will ultimately cause a smart contract platform to turn into something just as corrupt as we have today. I consider this a slippery slope fallacy.

There is one critical distinction between blockchain hard forks and arbitrary government power. A hardfork does not utilize force. No one is forcing anyone to use a platform or to run the same version of the code. A decision to hardfork must be accepted by the majority of participants and is enforced without any violence.

It is true that ending up on the wrong side of a hardfork is like becoming an economic outcast. The outcast may feel like something has been stolen from them, but the reality is that everyone else just changed their opinion. Individuals do not have a right to any particular reputation.

Free Market Competition

Capital will flow to wherever it is treated best. Countries that have low taxes and favorable / predictable court rulings tend to flourish. Countries that have unpredictable business environment tend to flounder. This same principle will apply to blockchain communities.

The Smart contract industry is still young and capital is learning the hard way that there are risks involved in writing code. The market will have to offer options to mitigate these risks. Options can include: review periods, insurance policies, standardization, and hard forks. Platforms that have insufficient options to mitigate these risks will face challenges in the market.

Conclusion

As we move into a future of smart contracts, we need to do everything we can to keep them outside the jurisdiction of governments. This means we need to be very explicit that there is no legal recourse to losses as a result of bugs in smart contracts. This means that communities must develop alternative systems to ensure that intent is judged fairly and that bugs don't result in disputes that eventually yield jurisdiction to governments.

With respect to Ethereum the process of resolving disputes involves miners voting with their hash power. The process also allows for miners to be bribed. If there is a large enough divide, then two communities will emerge each of which adopts a different philosophy toward who is liable for bugs. The market will then determine which approach has more value.

Sort:  

Losses of this magnitude are more likely to attract government attention than anything else. Crypto is still in it's early adoption phase and a failure to correct as needed now will seriously undermine confidence in the entire crypto ecosystem moving forward. In the end it seems likely that the biggest loss will not be the theft, it will be the $300-$500 million in losses absorbed by small traders.

I don't support or oppose a fork, but I see this as being dangerous either way. To not fork would cause huge harm, and to fork might too. Blockchain based smart contracts are a huge leap forward. This is how much science works, a series of micro adjustments until the optimal outcome is achieved.

I don't think a fork causes as much harm as a no fork. I mean say we decide under no circumstances should there ever be a fork because immutability is more important than reliability or safety? In that case if it's 50 years into the future, and the blockchain connects to us via brain to computer interface, in that cyborg future do we want to be hostages to a blockchain AI which might not allow us to fork even if it's in our best interest?

It should be up to each individual to determine which chain they trust, which programmers they trust, which community they want to be involved in or associated with, and forking in my opinion should be something anyone can propose at any time and let the market decide if it's in the best interest of the community or not.

A hard fork might not be an ideal. Immutability might be the ideal. But we have practical concerns which might outweigh the ideal and if at any time a blockchain goes against the self interest of the community it serves then we should be able to fork or choose a new block chain. If all the trusted programmers, exchanges, businesses, advocates, and most faithful supporters put their trust somewhere else then it's their choice where to put it.

This means we need to be very explicit that there is no legal recourse to losses as a result of bugs in smart contracts.

Contracts as presented by the DAO are partnerships, where all participants in this partnership are bound by not taking actions that will harm the contract or any other participant in the contract. When the hacker used the bug, he actually had to become a participant in this contract first, to be able to use the hack. When you are a partner all actions you take as a partner will have to be considered, and draining the funds was an action that caused harm to other partners. Taking action to reverse this harm should be based on that fact alone, especially if the action can undo the harm done. A decision has to be made one way or another even if we are to follow the law of common sense alone. Was the DAO explicit about losses from bugs?

This means that communities must develop alternative systems to ensure that intent is judged fairly and that bugs don't result in disputes that eventually yield jurisdiction to governments.

I agree, but while we are on that learning curve, why not consider the legal precedents that took years to develop as a starting point. Do we need to create a law of the machine, meanwhile all is open for anyone to pass his own moral judgment of what it right and what is wrong . We all agree we do not want to yield back our decisions to a faulty legal system, or better yet yield jurisdiction to governments. But are we to strike down every aspect of the legal system, where a bug becomes a feature, and theft becomes a stroke of genius.

When you are a partner all actions you take as a partner will have to be considered, and draining the funds was an action that caused harm to other partners.

Actually, the attacker has a very strong case and is likely to win in a court of law, as stated in the opening sentence of "his" letter:
I have carefully examined the code of The DAO and decided to participate after finding the feature where splitting is rewarded with additional ether.

Especially when we consider the crucial sentence from the DAO's terms & conditions:
The DAO’s code controls and sets forth all terms of The DAO Creation.

Was the DAO explicit about losses from bugs?

Yes, it was very explicit:
The DAO concept is both experimental in nature and unproven. There is a risk that, as an open source project, any contributor to The DAO’s software could introduce weaknesses or bugs into the DAO software, causing the loss of DAO tokens or ETH in one or more or even all of the DAO Token Holder’s accounts.

It's not likely to win in court because the attacker can never expose themselves without taking risks. And the court is not likely to side with the attacker. In any case if the attacker were to bring it to court the community might view the attacker as some kind of government plant to bring down all of crypto including Bitcoin and Bitshares.

The whole point of decentralized governance on the blockchain is to be self governing. Self governing requires taking responsibility when things go wrong. If there is a hard fork because something went wrong and the developers of the smart contract say it's a bug, then the exploiter has no legal leg to stand on anymore. It's only if we find that the developers of the smart contract say it's a hidden feature that there might be some chance but even then I highly doubt anyone would win because it would be in court in all jurisdictions where some would win and some would lose and no one would know what would happen.

It would be bad for everyone.

"As we move into a future of smart contracts, we need to do everything we can to keep them outside the jurisdiction of governments." That would be a hell of a nail in the coffin!

I loved this all the way to the end, yes the market decides which approach has more value!

"The cops will arrive and shoot" Haha, sad but true.

Excellent write up on the subject!

The last thing we want is the government to cut the baby in half in order to be "just".

@dantheman
Social networks as contract enforcement

Abstract. Absence of well-functioning formal institutions leads to reliance on social
networks to enforce informal contracts. Social ties may aid cooperation, but agents
vary in network centrality, and this hierarchy may hinder cooperation. To assess
the extent to which networks substitute for enforcement, we conducted high-stakes
games across 34 Indian villages. We randomized subjects’ partners and whether contracts
were enforced to estimate how partners’ relative network position differentially
matters across contracting environments. Socially close pairs cooperate even without
enforcement; distant pairs do not. Pairs with unequal importance behave less
cooperatively without enforcement. Thus capacity for cooperation in the absence of
contract enforcement depends on the underlying network.

I have to say one thing which is special about the Bitshares community is Bitshares actually takes care of it's members. It's something we can't say about every community. The idea of social network as contract enforcement applies here with smart contracts. I call it social network enforced smart contracts or community enforced smart contracts. The point being that any blockchain exists to serve the community (not the other way around). This means the ability to exit, to fork, must always be on the table in any free community and in any free market.

References
https://stanford.edu/~arungc/CKL.pdf

A hardfork does not utilize force.

It just seizes every other DAO's (using the same code) funds in the process without regard to how it affects them. "Oh it's just a little DAO only worth $10,000, they won't mind. We're too big to fail, so **** 'em, let's hardfork!".

No force is required because there is no opportunity to resist.

If all DAO code is broken then why not shut it all down? Let me propose something else, if you can't trust the code in a decentralized smart contract platform then what do you gain as a community? Without the ability to trust the programmers of the code or the code itself you have absolutely nothing but a scam. Yet it's currently a situation where we cannot the DAO code anymore.

What should be done to restore trust and faith in smart contracts in general?

Erhereum is still in experimental stage for all those new to it. There will be 4 stages in total with the final stage Serenity, which will transition Ethereum from POW (Proof of Work) to POS (Proof of Stake) mining. Bitcoin had a hard fork in 2010 when billions of Billions were sent an address and now with the DAO Ethereum miners will have to vote with their hashing power whether to hard fork or not to give all DAO token holders back there coins. In this case I would suspect they will vote to refund b/c its possible with such large amounts of funds at stake here the SEC (or government agency) goes after the Crurators of the DAO.

Many people argue that using this power will ultimately cause a smart contract platform to turn into something just as corrupt as we have today. I consider this a slippery slope fallacy.

I think it will be corrupt, but not because miners can be bribed or because the majority cannot be trusted to produce a fair judgement.
The main issue is that this safety net will only be offered to the financial elite - only big players involved in big contracts will have enough resources to have their case considered and be compensated, whereas small payers involved in small contracts will be left without any protection.

Coin Marketplace

STEEM 0.18
TRX 0.13
JST 0.028
BTC 57614.45
ETH 3097.31
USDT 1.00
SBD 2.57