Headline: What is a “smart contract?”


Body: Have you ever seen a contract?   I mean a real contract?   I work for the Federal Government, and I have seen a few, and they are fearsome documents indeed.   There are dozens of terms that are explicitly defined, there are endless specifications spelled out and a plethora of detailed statements about what would happen if certain events happened.  It would seem so much simpler and easier if we could simplify these documents and have a simplified enforcement paradigm, similar to the consensus model.   Enter the smart contract.

What is a Smart Contract?

In the end, this is a series of computer code.    But, smart contracts are not completely new within the realm of contracts.   For a long time, there has been something called a unilateral contact wherein Party A does something valuable (takes an action) for Party B, and then Party B now owes something valuable to Party A.  The new wrinkle is that the exchange terms are already written, and the 2 actions are immediately taken, and the consensus function makes sure that the actions were taken correctly.  This is a very efficient mechanism, but, if there is a bug in the code, correcting errors is impossible.

An example follows.   Janus wants to learn to dive.   He goes to Tortuga and contracts with Ahab’s Diving school to train him and certify him for SCUBA diving for the total of 52 Dogecoin.  Janus deposits the 52 Dogecoin, and then, when the transaction is validated as complete, the Dogecoin are released to the diving school.

When did Smart Contracts get to be so important?

In 1994, Nick Szabo, a legal scholar, and cryptographer realized that the decentralized ledger could be used for smart contracts, otherwise called self-executing contracts, blockchain contracts, or digital contracts. In this format, contracts could be stored as computer code and easily executed and supervised.   In this paradigm, no middlemen were required.    Clearly, this would be more cost-efficient and a good solution.   This architecture would also allow for excellent internal control.  But, the seed of smart contracts was just blowing in the wind.

When Bitcoin started in 2009, smart contracts were technically feasible.     But, it was the advent of Ethereum when the smart contract became really important.   As Ethereum continues to evolve, smart contracts also continue to evolve.  In the not-so-distant future, it seems likely that Banks might begin issuing mortgages that incorporate smart contracts.   They will soon be ubiquitous.   

Are there certain blockchains that are better or worse for smart contracts?

Blockchain MechanismComment RE: Smart Contracts
BitcoinVery limited facility for adding documents to payment processing.
Side chainsThese have been developed adjacent to Bitcoin blockchain and allow more flexibility to handle smart contracts.
NXTThis is a public blockchain with templates for contracts.  If your contract doesn’t fit one of the templates, you could be out of luck here.
EthereumOffers a lot of flexibility for smart contract construction, but, they will make you pay ETH coin for that complexity you require.  This transaction fee is called “gas” and the more complex your transaction, the more gas is required.

Before we get too “down” on the Ethereum network for charging “gas” fees, you should consider the regulatory mechanism.   By charging this fee, the network is able to discourage overly-complex transactions, and thus keep the network free-flowing.

Are there types of transactions that smart contracts are best suited for?

Yes.   Smart contracts are, right now, best suited for very simple transactions of 2 types:

  1.  Ensuring payment of funds upon certain triggering events.  (e.g. when the inspection is done and accepted by the buyer, and all taxes have been paid, the remainder of the sales price is transferred to the Seller’s account or wallet.)
  2. Ensuring that if conditions are not met, there is a financial penalty (e.g. if the attributes are not met within 30 days, there will be a 5% decrease in selling price.)

Please note that on a nearly daily basis, the networks are improving in efficiency, so in the near future, it is likely that contracts with significant complexity will be accommodated.

Are these smart contracts enforceable?

There is no authority at the federal level to allow for enforcement.   At the state level, requirements differ among jurisdictions.  But, stay tuned.  The federal government installed the Uniform Commercial Code (UCC) to facilitate interstate commerce, so it seems likely that something similar could be done to facilitate smart contracts.

As for now, the key difference seems to be the difference between the terms “contract” and “agreement.”  States seem to largely stay away from the word “contract” because that implies that there is a Court-appointed process for adjudication, in case of disagreements.   That said, many states seem much more amenable to using these smart contracts as agreements.  The states also seem more likely to support simpler smart contracts, as the “vending machine” example is often brought up.  Given that there are a variety of Electronic Data Interchange agreements even today, it seems likely that these wrinkles will likely be ironed out, in time.  There also seems a likely role for insurance companies to make a few dollars here, insuring that the code works as expected, so it becomes even more likely that the states will fashion some type of agreement.   Stay tuned.

What if the contract requires information that cannot be pre-written into the code?

Nobody has a crystal ball (If you do, we REALLY need to talk.)   So, there is likely a circumstance where outside information must be applied before the contract is executed.  Think about an example.  A farmer has drought insurance and for the money to be disbursed, he or she must have some sort of proof that the precipitation is 30% less than normal conditions.  Might the contract look to the National Weather Service?   Maybe AccuWeather data would be used to substantiate the drought?  These are called “oracles” within the smart contract paradigm, and there is an active debate about how to best define the oracle that will be consulted.

Given the developmental stage of these smart contracts, what are the Best Practices to follow?

With the caveat that we have relatively little track record to go on, we can still suggest some best practices.

  1.  Though code-only contracts are most easily enforced in many states, the parties should give significant consideration to using a hybrid approach.   This allows for some text to be included, and that can be used to explicitly prescribe which oracle is to be consulted, and explicitly define terms that are central to the contract.
  2. The parties should consider risks due to a possible coding error.   Perhaps each would have to pay for a portion of an insurance contract.  
  3. The text portion should clearly spell out the law under which the contract is being executed, and the order of priority between text and code in case there is a conflict between the two.
  4. The text agreement should incorporate an acknowledgement by both parties that they have reviewed the code and that it reflects the terms in the text agreement.    (This is where insurance companies might come in.)  This acknowledgement is not enforceable per se, but it is a good idea to be careful in the execution of the contract.

 The Verdict

Here’s how Jeff Garzik, owner of blockchain services Bloq, described smart contracts:  “Smart contracts … guarantee a very, very specific set of outcomes. There’s never any confusion and there’s never any need for litigation.”  Assuming that you’re not a hungry attorney, these words probably bring you some comfort.  But, this comfort currently comes with a lack of ability to go to a Court and get the contract evaluated and enforced, and this might be a significant brake to financial transactions like these.  Perhaps in the future, we will figure out technical and social structures that will allow us to reap the benefits of smart contracts and mitigate the deficiencies.   But, for now, it would appear most wise to stick to simple transactions, and remain aware of the possibilities for the future.






Editor’s Note: Please note that the information contained herein is meant only for general education: This should not be construed as Tax Advice.   Personal attributes could make a material difference in the advice given, so, before taking action, please consult your tax advisor or CPA.

Comments (1)

Leave a comment

Your email address will not be published. Required fields are marked *

Share via
Copy link
Powered by Social Snap