What is BlockChain?
Blockchain is immutable distributed database. It is like a spreadsheet that is copied across a network of computer thousands of times. In addition, the spreadsheet is being regularly updated in the network.
Blockchain is well-ordered sets of data, on which agreement of all peers eventually appear. The data on which participants all agree upon is interpreted as single truth. This single truth is a true state of distributed ledger. Furthermore, information that exists and held on blockchain is shared and visible to everyone.
- Ethereum 1.5.9 and later
- Truffle @3.2.1 and later
- Solidity ^0.4.8, ^0.4.13
- Mist, Ethereum Wallet, lightwallet.js
Why to use BlockChain?
Need of database - BlockChain is technology for shared usage. Here, the big question is whether project can use traditional database as MySQL.
Multiple authors - There is a need to have more than one essence that can generate transactions that changes state of data
No trust between users - For example, if one user doesn’t want to place faith in honesty of another user that owns the database. This user will not want to take the data that is located on servers of another user as single truth.
Connectivity of transactions - transactions that were created with different author often depend on each other. For instance, when Alice wants to send coins to Bob and then Bob send coins to Charlie. In the case of Bob transaction there is no way to check the transaction without checking transaction of Alice. With this dependency together those transactions are the shared database. So, the benefit of blockchain that transaction can be created with a lot of authors and nobody takes risk.
Need of Rules. If there is a database that many authors can manipulate and they don’t trust each other there is a need to rules to follow.
Need of transactions without Middleman. In blockchain ensures that every user follows rules, so it eliminates middleman in transactions. Which also makes transaction much faster in real life without any risk for both parties.