What Are Smart Contracts and How Do They Work?

Obvious or not, intermediaries permeate our digital lives. Even simply sharing a cat photo with friends online requires the services of an intermediary like Facebook or Twitter — a central authority that doesn’t just manage the network, but also set the rules and enforce their violation.

BXX
Baanx BXX

--

Smart contracts make it possible to automate these digital tasks without needing a centralised entity to manage and approve the transaction.

Blockchains make smart contracts possible, a network of computers that work together to enforce rules on the network without requiring the help of an intermediary.

How Smart Contracts work

With conventional contracts, a document outlines the terms of a relationship between two parties. If one Party A violates the terms, Party B can take Party A to court for not complying with the agreement. A smart contract fortifies such agreements in code so the rules are automatically enforced without courts (or any third party) getting involved.

First conceived in 1993, the idea of a “smart contract” was originally described by computer scientist and cryptographer Nick Szabo as a kind of digital vending machine. In his famous example, he described how users could input £1, and receive an item from a machine, in this case, a snack or a soft drink.

Smart contracts are the same in that with a certain input (the £1), the user should be able to expect a certain outcome (the chosen drink).

In a simple example of an Ethereum smart contract, a user sends a friend ten ether–the token native to Ethereum–but requires that it can’t be dispersed until after a certain date using a smart contract.

Ethereum is the world’s second-largest digital assets trader by Market cap, created in 2013 specifically for creating smart contracts. To date, it is the most popular platform for doing so.

Smart contracts aren’t widely used outside of Ethereum, and some are sceptical they’ll ever achieve mainstream popularity as a way to manage transactions. Ethereum proponents, however, believe they could eventually become the norm for executing and securing online relationships.

Hundreds of apps that use smart contracts are already up and running. Popular Ethereum apps MakerDAO and Compound use smart contracts at their core for lending and allowing users to earn interest.

Why Ethereum smart contracts?

The world’s first digital asset company, Bitcoin, was the first to support basic smart contracts, although they are extremely limited in comparison with Ethereum. Each transaction is a smart contract because the network will only approve of the transactions if certain conditions are met — that the user provides a digital signature proving that they indeed own the digital assets they hold. Only the owner of a Bitcoin private key can produce such a digital signature.

In contrast, Ethereum replaces Bitcoin’s more restrictive language, replacing it with language that allows developers to use the blockchain to process more than just digital asset transactions. The language is “Turing-complete,” meaning it supports a broader set of computational instructions. Without limits, programmers can write just about any smart contract they can think of.

While this has obvious advantages, it also means, because novel smart contracts aren’t tested as much, there is a higher chance of vulnerabilities. Ethereum has already seen millions of dollars of losses from exploited vulnerabilities in smart contracts.

Smart contract questions answered

What can smart contracts be used for?

Smart contracts are an installed program that runs on the blockchain. They can automatically execute transactions if certain conditions are met without requiring the help of an intermediary company or entity (a third person). They are often associated with Ethereum which has catered their blockchain to accommodate smart contracts, but the idea isn’t restricted to any particular platform or network.

Some common ways of using smart contracts are:

  • Multisignature accounts. Funds can only be spent when a required percentage of people agree.
  • Encoding financial agreements. Manage agreements between users. If one person buys insurance from an insurance company, the rules of when the insurance can be redeemed can be programmed into a smart contract.
  • Agreements based on the outside world. Pull in data from the outside world (financial, political, or whatever) with the help of oracles.
  • Provide third-party access to other smart contracts. Similar to how a software library works, smart contracts can work with other smart contracts in a chain.
  • Storage. Store information about an application, such as domain registration information or membership records. Storage in a blockchain like Ethereum is unique in that the data is immutable and can’t be erased.

How can smart contracts work together?

Smart contracts aren’t meant to be isolated, some smart contracts are built to assist others.

If someone was to place a simple bet on the temperature on a hot summer day via a smart contract, it might trigger a chain reaction of contracts. One contract would use outside data to determine the weather, and another contract could settle the bet based on the information it received from the first contract when the conditions are met.

With this in mind, smart contracts form the building blocks for decentralised applications and even whole companies, dubbed decentralised autonomous companies (DAO), which are controlled by smart contracts rather than human executives.

How is a smart contract set up?

A developer can create a smart contract by writing a slab of code — spelling out the rules, such as that ten ether can only be retrieved by Alice ten years from now.

The developer then pushes the smart contract to the Ethereum network, which enforces the contract — preventing anyone to take the money unless they follow the exact rules in the code. Thousands of computers from around the world then all have a copy of this smart contract.

How do I use a smart contract?

Users can use smart contracts for a range of use cases. Anyone can use smart contracts if they have Ethereum’s native token Ether, which can be bought on digital asset exchanges.

Ethereum apps will usually provide instructions for how to use their specific app and underlying smart contracts. A common method is to use an Ethereum wallet tool, such as Metamask, to send the ether.

Users can publish uncensorable posts to microblogging apps or lend out money without an intermediary, using a variety of Ethereum apps. Do smart contracts cost anything?

Getting thousands of computers across the world to validate smart contracts often isn’t cheap, though, as recent ballooning Ethereum fees highlight. The user must pay a fee, typically in ether (Ethereum’s native token), to keep the network up and running. Fees go up when the network grows more congested.

Are smart contracts the future?

Many developers, researchers, and even lawyers and doctors are excited about the promises of smart contracts. But it’s early days for smart contracts. While users of smart contracts don’t need to trust intermediaries, users must trust that the code was written correctly, which is a big ask seeing as there are still plenty of security issues.

One of the major drawbacks of the Ethereum smart contract is the reliance on external information as it can jeopardise consensus. Many bug exploits have been unearthed over the years which allowed bad actors to steal user funds. On the other hand, Ethereum 2.0 is working to reduce energy consumption this year. The hope is these issues will grow rarer as the code matures.

‍Buy, sell, and transfer digital assets with the Baanx App

Ready to invest in digital assets? Download the Baanx App to buy, sell and transfer digital assets. The platform is registered, safe, secure, and reliable. Plus, the fees are highly competitive. Sign up today and start trading digital assets!

We’ve also launched our own DeFi token BXX so you can receive rewards for holding, staking, and spending BXX tokens!

Follow Baanx BXX for the latest updates, events, rewards and more!

--

--