Nick Szabo is credited as being the visionary, if not the godfather, of smart contracts. He sees smart contracts as agreements that “involve objectively verifiable performances, or performances that can be automated such as cash flows.” His blog “unenumerated” is fantastic (deep posts on a variety of topics – each one is an ocean of thought in and of itself) and his appearance on Tim Ferriss’ podcast is probably the best crash course on all things blockchain and crypto-currency related.
Nick’s proposed definition of a “smart contract” is (1) a set of promises (2) specified in digital format (3) which includes various protocols (4) within which the parties perform.
My view is that what we do now, where an agreement contains any aspect which is controlled by, or triggered by a computer (something outside of an act by a party or third party), that is a “smart feature” and the agreement is a “smart contract.” I think we already have smart contracts to some extent – for example – if you put in an order through your Fidelity or eTrade account to sell Exxon if it drops below $70.00 that can be seen as a smart contract. The system will track the stock price, if it hits the floor it sells it automatically and transfers your evidence of ownership of the stock (itself another process) and the proceeds of the sale end up in your cash account.
The penultimate type of smart contract is likely a contract which is agreed to electronically by the parties, which is documented only in computer code, and all aspects of same take place electronically without any involvement by either party (the scarier part is if we humans eventually give our authority to contract to computers, and we are not involved at all).
The most defining feature of a smart contract is that is self- executing, and automatically enforced. The code associated with the contract waits for input and either validates a condition or determines that it is un-validated and the transaction should not proceed (with the money refunded or some other pre-determined outcome), and the transaction as well as the outcome is enshrined into the decentralized ledger. Typically people think that a smart contract has to be attached or somehow utilize blockchain technology, but any electronic system would work for this general concept. Blockchain is the obvious choice for any smart contract however.
The spectrum of “smart contracts” at this point in time can be seen as one of the following, with the level of “smartness” on a descending level: (1) an agreement written entirely in source code, (2) an agreement written in both source code and natural language, or (3) an agreement written only in natural language but with an encoded performance or payment mechanism.
The smartest of the smart contracts, which is entirely written in computer code is not something the current legal system is ready for. Some advancements will need to be made, or some sort of agreed upon translation routine used. It is hard to imagine as things stand, how a smart contract written entirely in source code, could be adjudicated by a judge, jury or arbitrator. I envision each side would have technical experts to explain it and it would be very costly and time consuming. Another view of the future, which I find pretty entertaining, is the thought of computer science classes being taught in law school, or some other curriculum as to how to code smart contracts.
However the play out in the future, there are many potential valuable uses for smart contracts, some of which are:
- Government/Database Management
- Self Identification – This can be a way to prove who you actually are to anyone at anytime.
- Voting Systems – As per the Self Identification feature above, it would be easy to track each individual and ensure only one vote occurred.
- Real Property/UCC Records – Knowing who owned what any any moment in time, as well as who had put what assets up as collateral to any lender, and pair it with automatic liens and lien releases (when loans repaid) would greatly update these areas.
- Taxes – Needed updates to the Internal Revenue Service’s system are myriad, and smart contracts are just one way to do it.
- Supply Chain Finance and Logistics – Knowing when any shipment came into port and automatic proffering of bills of lading and payment for goods accepted.
- Management – Adding smart features to accounting systems and financial reporting. Also inventory management and other uses are low hanging fruit.
- Financial – Some of these are already down with some “smart” features, but they contain many intermediaries, which smart contracts can do away with. Likely uses include for derivatives, stock trades, commodities, cash accounts and other.
- Insurance – Automatic claim verification and payment sounds fantastic.
- Intellectual Property – This is especially pertinent to licensing and royalty issues. The blockchain would know at any given time who owned what intellectual property, and any use of same, pursuant to the terms of a smart contract, which could be open to any licensee, automatic payments could be made into the account of the owner of the intellectual property.
- Internet of Things – this is really a catch all and covers some of the above. The future is that everything will, to some extent, be smart – either through computer or RF chips or some other technology and be trackable and able to interact with other systems.
- Healthcare – I see some possibilities in this market but it would likely be the late adopter of smart contracts. Once the HIPAA issues got ironed out, enrypting certain information could be beneficial and make sharing with multiple healthcare providers more efficient.
There are many legal issues which arise from the concept of smart contracts. Some of those include, issues when making the contract, documenting possible outcomes, certain amorphous legal concepts which have nuance which computers at this point cannot fully grasp, venue, jurisdiction, who may be held liable for any occurence, ability to get evidence and records of the transaction, bugs, systematic failure, securities issues, tax issues, and many others. How much human input do we want in any smart contract? Are there benefits we humans add, or are we merely the speed bumps when it comes to smart contracts? We will look into each of these and more in later posts.