11 June 2020
People love new things. That, of course, includes new technology. Bitcoin, Blockchain, and crypto are part of this conversation, too. Since its foundation, crypto has been groundbreaking. That is one of the main reasons there is a new use case for crypto every day. With crypto, the possibilities have no end. One of the many things that crypto bring and people loved are smart contracts.
It has been a long time since Nick Szabo explored the concept of smart contracts in 1995. What was then an unrealistic dream due to not having the right technology is now a reality. It is a technological advance that can change the way we do things now.
The Misunderstood Potential of Smart
The world could use the potential of these smart contracts. So much is its potential that it could compete with today's markets. Imagine a world in which you can buy cars, houses, collectibles with a single click. A single click would ensure your ownership of whatever you bought. Not only that, but we also talk about life insurance and insurance to our properties. No fees, no waiting times – just smart ownership.
Truth is, there are a lot of things that people have gotten wrong about our beloved smart contracts. Even if they seem to be easy-to-use – and to an extent, they are –, a lot is going on behind the scenes.
Yet, people make many mistakes when we talk about smart contracts. The first mistake does not even have to do with smart contracts, but with contracts in general. A contract is an agreement between two or more parties. This agreement includes conditions and what to do if the conditions are not met. These contracts can be oral or written.
There is a lot of paperwork and legal work behind a contract, so they crafting one can be very expensive. Here is where smart contracts enter the game. Smart contracts share many similarities with what we know as contracts. One of the main similarities is that of setting the rules of the game. Yet, smarts contracts are more complex than that – they are a series of programming scripts. These are executable codes.
Anyone with a little knowledge about technology can create them with the tools we have today. They are in the blockchain, which means that everyone can see the information shared. This means that they are impossible to change once they are executed.
But, the path to creating a smart contract is not as straightforward as it seems. These contracts have three main features: they represent value, they are immutable, and they are transparent. As great as this is, these are also essential for them to work well.
The Problem with Smart Contract
Still, as a new invention, there are many open issues around smart contracts. There is still a lot of noise around the issue of smart contract security. There is still a lot of noise around possible hacking or code failures that lead to money loss.
Let's be honest: we can all make a mistake when you have a lot of numbers in front of you. Smart contracts can fall into simple arithmetical errors. Things like whole numbers that should be decimals or badly rounded decimals are some of the most common errors.
Function argument errors are quite frequent as well. This includes not checking all address parameters. It can also be not limiting the access controls in the contract. These are silly human-made errors. And they can be avoided with more thorough testing before the final launch.
Smart contracts, when registered in the blockchain, are public for all. This, although it's great, also means the possibility that whoever has executed the contract can get frontran. Frontrunning, sadly, is a common practice. Someone pays a higher fee to appropriate an unconfirmed transaction. This is the most difficult problem to solve – it usually requires a redesign of the system.
Once people hear 'contract', they think of 'lawyers' in a few seconds. Smart contracts do not come to displace lawyers – not yet. Smart contracts are a completely different type of contract from other legal contracts. These contracts are a type of standard form contract – a contract in which one party sets the conditions. The other part just has to agree.
There is still a long way to go for smart contracts to evolve. We know their potential – they can change the world as we know it. Once the framework and legislation about them are clarified, we will be able to see the potential of these unleashed to the full.