April 08, 2022 - 9 min read
Unsurprisingly, smart contracts are not entirely dissimilar from traditional contracts. They are agreements between multiple parties to make transactions, and often require certain conditions to be met in order for the contract to execute. The primary difference with smart contracts is that the agreements are arranged and processed by some sort of permissionless software instead of waiting for the approval of trusted entities.
Put simply, smart contracts follow the logic if catalyst A occurs, then execute action B. The first and presently most prominent smart contract programming language is Solidity, which has been used by Ethereum and various other blockchain developers as well. Smart contracts are written, hosted, and executed on specific blockchains, meaning their functionality does not extend outside of the intended network without the use of composable software, like oracles. Developers can define how users may interact with smart contracts, like granting exclusive access token holders, making them available at specific or for limited times, and the parameters of inputs and outputs.
Another way to think of smart contracts is like establishing fair and unbiased rules of play and letting the code execute the agreements deterministically once the right conditions have been met. At the same time, parties entering into the smart contracts don’t need to know or trust each other, but only that the code was fair and unbiased, and that no exploits were used to manipulate the end results.
One of the main purposes of smart contracts is to automate trustless financial agreements between multiple parties. Of course, many agreements are already automated in their own rights, but at the settlement layer, there are still custodians or gatekeepers, typically banks or credit card companies, which have administrative control over the network. Of course, we place trust in banks and credit card companies all the time, and life functions more or less satisfactorily.
The most common manifestation of smart contracts usually can be found within decentralized applications, or dApps, on blockchains. Public dApps are open-source protocols which allow users to connect compatible cryptocurrency wallets and interact with other users via smart contracts. For example, some dApps function as marketplaces for the near-instant exchange of crypto assets via the use of liquidity pools. That is, that the dApps do not take custody of the crypto assets which are exchanged, but held in escrow by smart contracts to create trading liquidity on the protocol.
Another dApp example is a decentralized money market which offers collateralized borrowing and lending services. As lenders, users may deposit crypto assets into their interest-earning wallets, while as borrowers they may choose to deposit their assets into money market smart contracts. These contracts offer varying interest rates for borrowed assets depending on the LTV ratio of collateral deposited to the assets borrowed.
For instance, borrowing less than 25% of the deposited collateral would benefit from the lowest interest rates, and carries the lowest risk of margin calls. If the spot price of the deposited collateral were to drop, users could simply adjust to a higher interest rate instead of having their collateral liquidated. Borrowing the maximum 50%, on the other hand, would require a significantly higher interest rate and risk liquidation if the spot price of the collateral deposited suffers any volatility to the downside and more collateral weren’t added.
Traditionally, financial agreements between strangers involve counterparty risks that are often handled by trusted institutions. When entering into an agreement, the institutions may hold funds in escrow and perform necessary background checks, and enforce the terms of contracts or reverse them in the case of error or malpractice. These agreements and the institutions which uphold and enforce them allow for a level of economic dynamism between strangers both domestically and internationally that has led to the globalized world as we know it.
Nevertheless, the status quo institutions of trust can only scale to certain limits, with their resilience and universal market penetration losing potency outside of their domestic economies or politically allied nations. Smart contracts allow for economic dynamism to scale to new heights, facilitating cooperation between strangers of different nations and backgrounds, trustlessly.
Smart contracts therefore provide economic security and reliability that was once only afforded to those nearest to the institutions granting it. This universal efficiency in the global financial system facilitates equitable access to capital markets and liquidity where it had previously been absent.
In the case of smart contracts, users often undergo Know Your Customer, or KYC, verification screenings when creating their wallets, but the smart contracts themselves allow users to enter into agreements frictionlessly. The code replaces the counterparty risk of the third-party custodian or institution to enforce the contract. The contracts simply wait for the appropriate inputs and execute the terms once their conditions have been met.
Smart contracts trustlessly automate three functions between the participating parties: placing assets in escrow, ensuring the settlement of funds upon catalyzing events, and penalizing malicious behavior when it occurs. In each case, human intervention is no longer needed, thereby reducing the execution, settlement, and enforcement costs when entering into financial agreements.
Smart contracts thus offer significant reductions in terms of counterparty risks, so long as the code executes properly and the off-chain data entering the blockchains is both timely and correct. This is why oracles are crucial for the security of Web3 and interoperability amongst a diversity of blockchain networks.
Despite the aforementioned advantages of smart contracts, they unfortunately have their own limitations which require further innovation and safeguarding against. For instance, smart contracts run on blockchains, which operate as siloed networks. That is, network participants keep copies of the blockchain’s transaction ledger and history, but do not necessarily have immediate and verifiable access to information external to their blockchains. They cannot themselves verify the occurrence of real world events or fluctuations in the various spot prices of financial assets and physical commodities.
Lacking secure access to verifiable and up-to-date external data meant that universal adoption and application seemed unlikely without a secure bridge to source data and audit its veracity before being allowed to communicate with smart contracts. With decentralized oracles, the ‘siloed network’ limitation to smart contracts is addressed since off-chain assets can now be tokenized and tracked. The tokenized off-chain assets therefore benefit from the liquidity of blockchains and smart contracts since the oracles keep their spot prices pegged to external markets.
Since oracles act as a sort of middleware between smart contracts and external data, they remain of paramount importance to the functionality and interoperability of smart contracts. If not properly decentralized and secured, corrupted or stale data could erroneously trigger a smart contract’s execution. That makes oracles into potential single points of failure, which confounds the benefits of decentralization which characterize blockchains and smart contracts in the first place.
Oracles greatly enhance the value proposition of smart contracts, making them interconnected with practical use cases and the functionality of interacting with traditional markets and assets. Thinking historically, imagine the usefulness calculators brought to society in terms of making efficient work of difficult computations, accounting practices, research, and countless other endeavors.
Add to this usefulness the network effects added by the functionality of the Internet and composability of its software and hardware applications, and it does not seem an exaggeration to state that we are still experiencing the exponential gains in productivity and human cooperation that the Internet’s scaling powers brought to bear. Decentralized oracles facilitate the scaling of smart contracts in just the same manner, indicating that there is still a lot of runway left to pick up speed before the technology really discovers its wings.
Given this understanding, smart contracts, blockchains, and oracles have become inseparable, composable members of a functional constituency. It is through this decentralized combination of checks and balances and transition to a world of cryptographic, verifiable truths that smart contracts will increasingly find retail, industrial, and institutional adoption.
Perhaps the most obvious use for smart contracts are their use in financial products, like limit orders and options trading on exchanges, and automated asset management services. For example, Uniswap makes use of smart contracts to facilitate the exchange of Ethereum-compatible tokens without taking custody of either party’s assets. Users can also deposit assets into smart contracts to provide liquidity to the protocol in exchange for generating yields.
As mentioned, DeFi money markets use smart contracts to offer stablecoins and other assets for lending and borrowing, even in the case of semi-centralized protocols like Celsius. Users deposit funds into smart contracts which automatically escrow the appropriate crypto assets, administer fees and rewards, and liquidate collateral if terms of the smart contracts are violated. While Celsius handles the KYC, customer service, and other business operations, smart contracts contribute to the protocol’s security and functionality.
Smart contracts are also used in blockchain gaming and non-fungible tokens (NFTs), and are expected to be present in forthcoming metaverse projects. In-game items and currencies can be tokenized and collected in users’ wallets, allowing them to be generated and traded between users in auditable, tamper-proof ways. The result is that digital assets can be tagged cryptographically to give them value on blockchains, like NFTs, and thus easily and confidently traded between users knowing the assets are not fabricated and indeed have a historical record on their respective blockchains.
When considering the composability of software and hardware technologies, the number of use cases will likely trend upwards. This will be further perpetuated by the increasing number of developers learning to program smart contracts and related applications. Given these trends, it is clear that smart contracts will become more prominently featured in our daily lives for the foreseeable future. Perhaps in a few decades, moviegoers will watch movies set in current times and smile nostalgically at the stark contrast between the world before and after the mainstreaming of automated smart contracts.
Sign up for the Supra newsletter for company news, industry insights, and more. You’ll also be the first to know when we come out of stealth mode.