Will Bitcoin and Litecoin Ever Support Smart Contracts?
Until recently, Bitcoin and Litecoin were only really capable of being a simple exchange of value. They allow two parties to securely exchange value free of a third party, while ensuring that sensitive information is kept private and that the transaction is logged into the blockchain.
Both Bitcoin and Litecoin did not allow for smart contract implementation initially, as the size of the blocks and coding language that they use does not support the amount of information and data transfer required for smart contracts.
Before we dive into whether or not bitcoin or litecoin could ever have smart contract functionality, let us first understand what a smart contract is and what type of code it requires.
Smart Contract Functionality
A smart contract is a programmable contract that is capable of automatically enforcing itself upon the completion of pre-defined conditions. They are able to execute complicated multi-party agreements beyond the capability of any singular organization, at a fraction of the cost and time. The contract software implementation also allows for an immutable, verifiable, and secure record of all agreements, transactions, and data involved in these processes.
Benefits of Smart Contracts
There are 3 main benefits that smart contracts add to the value exchange-only functionality of Bitcoin and Litecoin:
1. Faster, more efficient settlement and negotiation times due to the elimination of third party interference
2. Trustless agreements between anonymous parties
3. Automation and ease of compliance and reporting data reduces administration and service costs.
Steps Involved in a Smart Deal
Smart contracts operate automatically, and are programmed to be secure, immutable, and binding. There are 4 basic steps involved in a smart deal:
1. Transacting parties record the terms
The terms of the deal between the two parties are outlined (payment, time, tasks, etc.). Then the details of contract (except for private information like bank info) are on a public ledger, and validated by validators
2. Oracle service connects with internal and external systems
The smart contract connects with bank information or any external data needed to complete the terms, data and accounts associated etc., places triggers to be activated by completion of tasks.
3. Evaluation Period
The contract waits for external triggers (social media posts, duration of campaign, payment) to evaluate pre-defined conditions.
Contract self-executes upon completion of pre-defined terms via triggers or sensors.
In essence, a smart contracts allows for two parties to enter into an agreement free of relying on trust or a legal framework, and the terms are automatically enforced in a decentralized fashion.
Ethereum: The Biggest Smart Contract Platform
Currently, Ethereum is the champion of smart contract functionality. The platform uses a coding language called Solidity that can execute these complicated agreements, and verify them using a proof of stake system.
Even though Ethereum has established that their platform can run smart contracts under nearly any use case, they have still struggled to support the mass scalability that such an endeavor requires. Smart contracts require a flexible coding language, large block size, and set mining procedures in place that can efficiently verify and cement these agreements into the blockchain.
Ethereum sought to add on to the original use case Bitcoin brought to the table – anonymous and trustless value transfer, by creating anonymous, trustless, and self-completing smart contracts. Bitcoin itself has struggled with block size and transaction speed recently, but a few of its new protocol updates and soft fork proposals have shown that it may in fact be able to support smart contract functionality one day.
In addition, Litecoin, which is similar to Bitcoin in every way except for the fact that it possesses slightly larger blocks, is also poised to take on smart contracts if these new side chain projects are successfully implemented.
Bitcoin and Litecoin Smart Contracts
As mentioned, Bitcoin and Litecoin have faced a scaling problem recently, struggling to handle the massive amount of traffic and transactions that financial giants such as Visa are able to handle on a daily basis. Litecoin has inherently larger block sizes and transaction times than Bitcoin, but has still faced similar roadblocks.
The lightning protocol soft fork that bitcoin recently implemented has allowed for them to divert traffic off-chain, meaning that each block is responsible for less data processing. This protocol was implemented to:
- De-load the bitcoin blockchain
- Speed up transaction times
- Lower transaction fees
- Allow for code improvements to periodically implemented
What the lightning protocol also quietly did was lay the groundwork for bitcoin and litecoin to have the processing power and code flexibility required to utilize basic smart contract architecture. Sidechain protocols such as RSK and Polkadot are needed in order to run the smart contracts through the Bitcoin or Litecoin blockchains.
Despite the ability to create smart contracts, these two platforms still have ground to cover before it is as equally viable an option as Ethereum is.
Co-founder of Augur Joey Krug tested the two modes of smart contract creation in Bitcoin and Ethereum. He spent a total of 3 months developing the tools necessary to implement a smart contract on bitcoin, while it only took him a day using the Ethereum protocol and their smart contract-focused development tools.
Smart contracts are most readily used within what are called dApps, or decentralized applications. These dApps use smart contracts within their platform to facilitate whatever type of deals that platform supports. Ethereum was built with all of this functionality in mind, while Bitcoin and Litecoin were not.
Running smart contracts off chain works in theory, but for developers, the process is currently too slow and difficult to be adopted by a large amount of core developers. Ethereum already has a large number of planned dApps, and its unique smart contract coding language gives developers the tools they need to use smart contracts however they see fit, easily and effectively. Bitcoin and Litecoin, on the other hand, do not possess these inherent smart contract-focused protocols that streamline the development process.
At the end of the day, the new lightning protocol and soft fork that Bitcoin engaged in does in fact allow for smart contract functionality within their platform. But, it is not yet at a level of functionality that is practical for developers.
Ethereum is currently the smart contract leader, and in order for Bitcoin and Litecoin to catch up, they must cater to the developers and give them a better option for smart contract development.