In Blockchain beginner's guide (part - 1), we've covered Blockchain, Blockchain Technology, Blockchain and Ethereum and Applications of Ethereum.
Formerly, most protocols of blockchains were designed like single purpose tools that are specifically designed around one particular application (transaction type). For example, in Bitcoin – “Currency”, Namecoin – “Domain registration”, Primecoin – “Trying to do scientific computing” etc.
Then, comes second generation protocols. Here, we know 50 different transactions types. Protocol development was based on this prior information. Every time someone come up with a new type of transaction that was deemed enough to be worth including, the engineers creating protocols just add new transaction type to the existing protocol. Vitalik Buterin (founder of Ethereum) has even worked for this system for quite some time. He believes that this way of making protocols should be fundamentally eliminated from the modern world of computing.
So, he comes up with a solution that is very similar to the concept of a smart phone. The idea here is that instead of having a protocol designed around every particular type of transaction (use case), we just create a general-purpose operating system and allow people build on top of it as application. He wants to make blockchain useful in more generic term rather than specific one was and this is the base concept of Ethereum.
Additions to the existing blockchain (for Ethereum)
Built in programming language – People can write program in scripts (HLL complied down in a script). Then take the complied scripts, put them into transactions and sent the transactions off to the blockchain. When the transaction gets confirmed, an address is generated. A special kind of account is created at that address, called 'contract'.
There are two types of accounts -
User Account is for general people (human). These accounts are controlled by private keys.
Contract is set of instructions and is controlled by code. If you send 1 ETH to the account that is controlled by contract of code then, no person controls that any more. The only thing that can move that ETH is the execution of contract of code itself.
Each of these accounts have completely equal privileges.
Anyone can create an application with any rules by defining it as a contract. If you have an application, write the rules of your application in the code (contract) and upload it on the blockchain.
If you like the article, please follow us at