Ethereum is an open soft ware platform based on blockchain technology that enables developers to build and deploy decentralized applications (dapps). It was launched in 2015 and since then the value of Ether has increased more than 2,300 per cent and one Ether is almost $300(October 2017). Ether is a digital currency that is used for operating smart contracts on the Ethereum network. The Ethereum network and Ether tokens are not controlled or issued by any bank or government instead it’s an open network which is managed by its users. Nick Szabo is believed to have brought this concept of smart contracts to the table in the 90s. The concept has further been popularized with its use on Ethereum. A smart contract therefore is a piece of soft ware that contains rules and regulations for negotiating the terms of a contract; it automatically verifies the contract then executes the agreed upon term. The general objectives are to satisfy common contractual conditions. The Ethereum block chain mechanism coupled with smart contract technology removes intermediaries and escrow services.
SMART CONTRACT’S CHARACTERISTICS ON ETHEREUM;
Smart contracts have the following characteristics;
- Self verifying
- Immutable; Coding and executing smart contracts on Ethereum block chain makes them immutable and independent
- Self executing
- Auto enforcing
- Cost saving; smart contracts radically reduces transaction cost, whether on the protocol level or application level a standardize transaction rules thus reducing transaction cost of reaching an agreement, formalizing and enforcement.
HOW IT WORKS
Ethereum’s smart contract system can be very powerful and it is enabled by two important factors: a Turing complete programming language called solidity and a minimum Ether price for each line of code. Solidity is specifically created for use in Ethereum smart contracts. A Turing complete means the language can potentially be used to solve any computational problem and includes support for functions such as infinite loops.
Developers write the code of smart contract using solidity. These contracts codes can be of many forms such as the transaction of money when certain conditions are met or the exchange of goods between parties. This transaction is made without any destination address and contains a section of codes to determine what it does. Once the code is written it is uploaded on Ethereum Virtual Machine (EVM) which is a universal runtime compiler or browser to execute smart contract’s code. When the code is on the EVM it will be same on each Ethereum node. Each node will try to run and see if the conditions are met or not. A contract of Ethereum will involve two or more parties which will be fueled by the digital asset Ether. Once the contract is executed successfully, Ether will be distributed or re-distributed according to the logics defined in the code. As every transaction history and history of executed is stored on the block chain you can trust and verify everything when needed. When developing smart contract for implementation on the Ethereum block chain it is, important for developers to make the code as simple as possible to avoid unnecessary high cost which can deter users from interacting with their application. While some smart contracts cannot be reasonably implemented due to cost constraints, Ethereum’s developers are constantly improving Solidity and refining the way it interacts with block chain. Smart contracts are what differentiate Ethereum from the rest of the major block chains.
REAL LIFE EXAMPLE
Let’s assume that Mary has given John a task to develop a website for $500. Mary has hard coded the website requirements and conditions of this website development on the Ethereum blockchain. If John accepts the job, he will also view the requirements and conditions and accept, thereby entering into a contact with Mary. These requirements and conditions could be design features, server hosts etc. The Ethereum blockchain will serve as the evaluator of the set conditions when John submits the work to Mary. When John completes the work and submits, the blockchain will check whether the pre-set conditions and requirements have been met. If they are, then the contract will self-execute and the payment due to John will be released.
suppose there is a disagreement between John and Mary, for example, Mary refuses to pay John. what happens?
This can be resolved on the Ethereum blockchain. Every agreement between John and Mary is recorded and stored on the Ethereum blockchain. Mary cannot cheat John by refusing to pay or John cheating Mary by refusing to do the work or doing half work. Once the smart contract is set in motion, its execution is no longer dependent on a single user or node. It is now on the network and can be viewed publicly by users within the network. There is therefore no single point of failure or chance to change the conditions and requirements. This is how trust is executed on Ethereum smart contracts.
Based on this understanding, Ethereum smart contracts can be used in many industries such as:
- Real estate
- supply chain management
- intellectual property rights
and many other areas
We also examined how smart contracts can be used in resolving issues related to governance and corruption.
Therefore Ethereum smart contracts have the capability of opening up a whole myriad of applications and transforming how we interact and execute smart contracts online without the need of meeting face-to-face.
Make sure you keep here as we explore more this groundbreaking technology.
You can also check out our other article on difference between DAO and DAPPs on Ethereum network.