Origins of Smart Contracts
The origins of smart contracts stem from the creation of the cryptocurrency (Bitcoin) and blockchain technology. Bitcoin was developed as a “programmable currency” and its underlying technology, the blockchain, proved it could replace commonplace intermediaries such as attorneys and contracts within financial transactions.
This took the new concept of decentralization to the next level as the blockchain could automatically execute the agreed upon contracts of transferring money between parties with full transparency and without human influence. So, the bitcoin network was the first to use some sort of smart contract by to transfer value from one person to another1. And the type of “smart contract” involved employs basic conditions like checking if the amount of value to transfer is actually available in the sender account.
Furthering the concept of programmable contracts; Nick Szabo, a legal scholar, and a cryptographer recognized the application of a decentralized ledger for smart contracts. He theorized that these contracts could be written in code which can be stored and replicated on the system and supervised by the network of computers that constitute the blockchain. These smart contracts could also help in transferring digital assets, other than cryptocurrencies, between related parties under certain conditions.
The term “Smart Contract” coined by the blockchain pioneer Nick, are now recognized as self-executing pieces of computer code that debuted on the Ethereum blockchain, laying the groundwork for decentralized exchanges (DEXs) and non-custodial lending and borrowing apps.
John Dean Markunas
Chair FIBREE Florida, USA
First, let’s clear the air: Smart Contracts are neither “Smart” nor a “Contract”
The term "smart contract" is a bit of a misnomer in legal terms. It is neither “smart” (it is an algorithmic, cryptographic code) nor a “contract”. (It’s similar to a software program).
The coding in the image below is analogous to a smart contract.
Example of a smart contract
For instance, a smart contract is not a replacement for a legal contract to buy or sell shares or real estate or other assets. It's more like a tool that can be used to create instant, simultaneous “and/or” pre-agreed transfers of value.
It’s an “if-then” program that enables interaction between stakeholders on a blockchain, between two separate user wallets or on a peer-to-peer basis. It's a very useful tool but not one that is used for legal contracts per se.
What is a Smart Contract? General Definitions
A smart contract is an agreement between two or more parties that is stored on a blockchain. Each “smart” contract or agreement has a predefined set of rules and conditions and is automatically executed when those conditions are met. These contracts are guaranteed by the consensus of the whole blockchain network. They cannot be altered by anyone unless the whole network approves of the change. This makes smart contracts one of the safest and most powerful tools for creating agreements between different parties.
Smart contracts are simply programs stored on a blockchain that run when predetermined conditions are met. They typically are used to automate the execution of an agreement so that all participants can be immediately certain of the outcome, without any intermediary’s involvement or time loss. They can also automate a workflow, triggering the next action when conditions are met.
Smart contracts are often associated with the Ethereum blockchain which was designed specifically to support smart contract functionality. However, other blockchain platforms also support smart contracts2.
Business Logic and Requirements of Smart Contracts
- The parties involved define the specific business conditions of the smart contract and communicate them to the developer or smart contract coder.
- Designing the smart contract’s architecture - once the business logic has been determined, developers or coders (for purposes of this report are one in the same) design the architecture of the contract to represent that logic. This serves as a blueprint during the development process.
- Developing the smart contract - this stage involves writing the smart contract code for the blockchain platform of choice. This step also includes inhouse unit testing to determine if the contract performs as designed.
- Internal auditing - an internal audit via a local blockchain and then a testnet is performed. The audit checks if the contract functions as intended, and meets all security standards.
- Deploying on the blockchain - the “contract” or code is deployed on-chain in the marketplace in which it will operate. Smart contract audits are recommended.
- Simple smart contract - this category includes contracts that have legal implications for parties that fail to fulfill their part of the agreement. They are also known as smart legal contracts.
- Complex smart contracts - include Decentralized Autonomous Organizations (DAO) and Application Logic Contracts (ALC).
- DAOs are a form of blockchain community. This community operates and is governed by a set of rules via a number of smart contracts.
- ALCs represent the interfacing between smart contracts and the Internet of Things (IoT). ALCs serve to validate, aid the communication between devices within the IoT.
How Smart Contracts Function
The idea behind smart contracts is simple.
A smart contract is simply a digital contract with the security coding provided by blockchain technology. It has details and permissions written in code that require an exact sequence of events to take place to trigger the agreement of the terms mentioned in the smart contract. It can also include the time constraints that can introduce deadlines in the contract. Every smart contract has its address in the blockchain. The contract can be interacted with by using its address presuming the contract has been broadcasted on the network. As such, they are executed on a basis of simple logic, and as mentioned previously; the “if/when…then…” statement written into code on the blockchain.
To establish the statement terms, participants (such as the platform operator or issuer in a tokenization project) must determine how transactions and their data are represented on the blockchain, agree on the “if/when...then…” rules that govern those transactions, explore all possible exceptions, and define a framework for resolving disputes. Then, the smart contract can be programmed by an in-house developer – although increasingly, third-party vendors are providing templates, web interfaces, and other online tools to simplify structuring smart contracts.
There can be as many stipulations as needed to satisfy the participants that the task will be completed satisfactorily. A network of computers executes the actions when predetermined conditions have been met and verified. These actions could include a variety of things; releasing funds to the appropriate parties, registering a vehicle, sending notifications, or issuing a parking ticket.
The blockchain is then updated when the transaction is completed. That means the transaction cannot be changed, hacked or altered, and only parties who have been granted permission can see the results.
Smart Contract Auditing
Smart contract3 auditors can provide extensive auditing processes that help increase the quality of code while reducing the high level of risk presented by cryptographic tokens and blockchain technology. Blockchain technology and cryptographic assets present a high level of ongoing risk.
And with most auditing companies, their position is that each company, platform and individual writing and posting smart contracts on-chain are responsible for their own due diligence and continuous security and do not claim any guarantee of security or functionality of the technology they agree to analyze.
Benefits of Blockchain and Smart Contracts
Despite traditional legal agreements, which have worked well for many years, with the advent of blockchain and the use of it in real estate transaction processing, the number of benefits that smart contracts offer the real estate industry is impressive.
In general, blockchain and smart contract use provides the following benefits which mirror the faster – better – cheaper innovation mantra:
- Automation: Smart contracts can automate the tasks and processes that are done manually which reduces the time it takes to maneuver through all the human interaction-related processes.
- Security: Cryptography can make sure that the assets are safe. Even if someone breaks the encryption, the hacker will have to modify all the blocks that come after the block which has been modified. This is a highly difficult and computation-intensive task and is practically impossible for a small or medium-sized organization to do.
- Savings: Smart contracts save money as they eliminate the presence of intermediaries in the process. As well, the money spent on the paperwork is minimal to zero.
- Multi-signature accounts: Smart contracts support multi-signature accounts to distribute funds quickly and efficiently as soon as all the parties involved confirm the agreement.
- Recordkeeping: All contract transactions are stored in chronological order in the blockchain and can be accessed along with the complete audit trail.
- Autonomy: There are direct dealings between parties. Smart contracts remove the need for intermediaries and allow for transparent, direct relationships with customers.
- Fraudulent activity detection and reduction: As smart contracts are stored in the blockchain, forcefully modifying the blockchain is very difficult as it’s computation-intensive. As well, a violation of the smart contract can be detected by the nodes in the network and such a violation attempt is marked invalid and not stored in the blockchain.
- Enhanced trust: Business agreements are automatically executed and enforced. These agreements are immutable and therefore unbreakable and undeniable thus improving trust, security and transparency.
- Cost-efficiency: The application of smart contracts eliminates the need for intermediaries (brokers, lawyers, notaries, escrow agents, etc.) leading to reduced costs.
Smart Contract Uses and Benefits in Real Estate Processing and Tokenization
Smart contracts are known to automate processes involving document verification, mortgage approvals, proof of deposit, dividend or rental income disbursement by writing a piece of code that will in turn, cut down the current lengthy and tedious process of processing these types of real estate transactional functions, such as:
- Token minting
- Atomic swaps4
- Dividend distribution
- Allowing issuers to cancel or return and reissue tokens in case an investor loses their tokens i.e., lost or stolen wallet.
- To prevent the transfer of tokens except as expressly authorized by the issuer or in a market expressly authorized by the issuer
- Managing the token swap process where no third-party service fee is incurred, i.e., escrow payments
- Cap and minimum trade amounts
- Payment deadlines or disbursement of funds
- Manage periodic payments or disbursements
- Manage contract duration
- Apply appropriate or agreed upon discounts and penalties
- Manage security deposits and other payment
- Provide for cancellations or auto-renewals
- Initiate token burns, re-issuances
Examples of Smart Contract use in Real Estate
- “Smart Mortgage Contract” - can remove the need to depend on intermediaries and the constant back and forth between parties involved. The code for the smart mortgage contract will grant the mortgage request the moment all the documents and requirements defined are fulfilled and as well provide disbursement of the funds.
- “Smart Disbursement Contract” - will automatically transfer dividends or rental income to a token holder. The code for this will disburse or forward the periodic rental income according to the contract, as the rental payment is received or on an agreed periodic basis.
However, depending on how you set up the fund, you may or may not use the tokens and smart contracts to make dividends. You can handle dividends using traditional wire payments. This depends if issuers wish to make payment in tokens or fiat and if vendors and investors prefer payment in tokens or fiat.
- “Smart Contract Ownership Transfer” - transfers legal ownership of a real estate asset once the money from the agreed upon purchase price has been transferred to the seller’s account (or wallet).
Conclusion
To summarize, a smart contract is all code; an “if-then” program that enables interaction between stakeholders on a blockchain, between two separate user wallets or on a peer-to-peer basis. It's a very useful tool but not one that is used for legal contracts per se.
They are still behind their “legal” counterparts as they cannot be completely inclusive but they execute swiftly and leave no room for double-interpretation where they are applied. As traditional contracts are enforceable by law, smart contracts are enforceable by code.
From a practical and legal perspective, the main utility of smart contracts and certainly the underlying value of DLT (Distributed Ledger Technology) is disintermediating or eliminating intermediaries such as escrow agents, notaries, attorneys, and others, thus providing much needed increased efficiencies, decreased costs and a more improved and liquid marketplace.
Smart contracts, as self-executing, self-enforcing protocols governed by explicit terms and conditions, have the potential to transform the way agreements are made across several industries such as supply chain, telecom, manufacturing, and healthcare but the real estate industry and its legacy and antiquated processes is poised to change dramatically within the next three to four years.
1 It is to be noted that the contracts written in the case of the bitcoin network were written in a Turing-incomplete language (a high-level, general-purpose programming language developed in 1982) restricting the potential of smart contracts implementation in the bitcoin network.
2 Currently, Ethereum is the most popular smart contract platform, but many other cryptocurrency blockchains (including EOS, Neo, Tezos, Tron, Polkadot, and Algorand).
3 Three such smart contract auditing companies are SolidProof.io, OpenZeppelin.com and Slowmist.com.
4 Atomic swaps are automated, self-enforcing cryptocurrency exchange contracts that allow cryptocurrencies to be traded peer-to-peer without the need for a trusted third party.