Blockchain and Cryptocurrency (3/3)
This article is the last step of our journey to a better understanding of blockchain and of cryptocurrencies.
To conclude our journey we will take a look at Ethereum and all of its component .
Allowing computation on the blockchain.
Bitcoin totally disrupted the world of peer-to-peer transaction by allowing its user to transfer money without the need of a third party and Ethereum did exactly the same things with the way we do computation and implement application.
First off all we need to clarify something Ethereum is divided into two main component that allow it to function properly. Those component are Ether and Ethereum.
Lets demystified Ethereum first. Ethereum is in some way similar to bitcoin in the sense that they are both build upon the blockchain technology the major difference is that Ethereum support a Turing complete programming language which allow it to perform computation on its blockchain. This programmable blockchain was something Vitalik try to implement into the blockchain of Bitcoin but unfortunately did no succeed because of many reason.
The second component of Ethereum is Ether which is a cryptocurrency token build in the Ethereum blockchain. Ether as a big role in the functioning of Ethereum that we will talk about later.
To summarise Ethereum is a programmable blockchain and Ether is a native cryptocurrencies token of Ethereum.
Smart contract and decentralised application.
As we stated before Ethereum allowed its user to programme it to do so Ethereum created two Turing complete programming language called Solidity and also Vyper but solidity is more popular and more used.
A turing complete programming language mean that it can run any programme and that you cam implement any type of algorithm with it.
Those programming language allow the implementation of smart contract which are the fondation of any decentralised application or Dapp.
But what are smart contract? If we take the definition from Wikipiedia we read the tex below:
A smart contract is a computer program or a transaction protocol which is intended to automatically execute, control or document legally relevant events and actions according to the terms of a contract or an agreement. The objectives of smart contracts are the reduction of need in trusted intermediators, arbitrations and enforcement costs, fraud losses, as well as the reduction of malicious and accidental exceptions.
Unfortunately this explanation is filled with technical word and it can be difficulty to fully understanding it. If we wanted to explained smart contract with less technical jargon we would just say that a smart contract is a special king of code which intended to digitally facilitate the execution of a contract. In other word a smart contract is the same thing as a normal contract made with pen and paper the only difference is that it is made with code and put into the blockchain doing so allow the contract to execute without the need of a third party.
Smart contract allow us to also create decentralised application or Dapp. Dapp are application that are implemented on a blockchain platform and use it for data storage and for processing.
Smart contract and Dapp put some computational effort on the Ethereum blockchain more precisely on the Ethereum virtual machine which is the run time environment of smart contract. To be able to compensate for this computational effort ethereum used something called gas which is the ammount that need to be paid to the network for executing the computation that a smart contract or a dapp generate and you usually paid this gas with the cryptocurrency build on top of Ethereum called Ether.
TL;DR
- Ethereum is a programmable blockchain
- Ether and Ethereum are two different things
- Smart contract are contract made with code that execute without the need of a third party
- Dapp are application build on the Ethereum blockchain.
- Ether are used to pay for the computational effort generate by smart contract and Dapp