What is Blockchain?
The Blockchain is best described as a type of distributed ledger or decentralized database that keeps a complete record of all digital transactions. Instead of having a traditional centralized database with a centralized control, this distributed ledger has a complete network of replicated databases. These databases are continuously synchronized via the internet and are completely visible to anyone within the network. When a digital transaction is processed, it will be grouped together in a cryptographically (SHA-256 hashing) protected block with all other transactions that have occurred in the last ten minutes. These transactions are distributed throughout the complete network. Validation of the transactions is provided by the Blockchain Miners. The Miners are members of the infrastructure with vast amount of computing power. All Miners will compete to validate all of the transactions that have occurred in the ten minute period. The validation is performed by solving complex coded mathematical problems. The first Miner to solve the problems and validate the block receives a reward. For example, in the Bitcoin Blockchain system the reward would be newly created Bitcoins.
The validated block of transactions is then provided with a timestamp and added to a chain in a linear, chronological order. Newly created blocks of validated transactions are linked to older blocks, creating a chain of blocks that show every transaction made in the complete history of the Blockchain. The chain is continually updated so that every ledger in the complete network is identical. In turn providing all members of the network the ability to prove who owns what at any given time.
Vitalik Buterin, co-founder of Ethereum and co-founder of Bitcoin Magazine, sums it up quite well:
Blockchain's decentralized, open and cryptographic attributes allow people to trust each other and transact peer to peer, in turn making the need for intermediaries (e. g. banks) obsolete. This also brings unprecedented security benefits. Cyber attacks that commonly impact large centralized intermediaries like banks and clearing houses would be virtually impossible to accomplish on the Blockchain. Let’s take for example that someone wanted to hack into a particular block in a Blockchain. The attacker would not only need to hack into the specific block, but all of the preceding blocks going back the entire history of the Blockchain. This will also need to be performed on every ledger in the complete Blockchain network infrastructure. This would mean simultaneously changing millions of ledgers.
How does a Blockchain transaction work?
A Blockchain transaction has five main components. Taking a look at these components and how each component is a step in each and every transaction.
- Wallets and addresses:
A cryptocurrency wallet is a secure digital wallet used to store, send, and receive digital currency. Most coins have an official wallet or a few officially recommended third party wallets. In order to use any cryptocurrency you will need to use a cryptocurrency wallet. A cryptocurrency address is used to receive and send transactions on the network. An address is most commonly represented as a string of alphanumeric characters. Addresses can also be represented as a scanable QR code. Each address has its own balance of its representing cryptocurrency. Simply put, a cryptocurrency address is best described as a bank account. Cryptocurrency wallet users can create as many addresses as they need. Best operational practice encourages cryptocurrency users should create a new address every transaction to increase privacy. The more addresses being used, the higher the total anonymity.
- Creating a new address:
Cryptocurrency addresses use public key cryptography. When a cryptocurrency address is created it is generating a cryptographic key pair. This is composed of a private key and a public key. The cyptocurrency address is the public key and the creator’s signature is the private key. A new cryptocurrency address represents a unique public key. The corresponding private key is stored in the wallet. The public key allows anyone to verify that a transaction signed with a private key is valid.
- Submitting a payment:
Initiating a payment or transaction is done via the cryptocurrency wallet. The recipient wallet address is entered and digitally signed with the initiating transactional wallet private key. A broadcast is created to the complete infrastructure. The transaction broadcast of the receiving wallet address can then be verified by the complete network. Anyone on the network can view and decrypt the transaction when they have the receiving wallet address.
- Verifying the transaction:
To verify transactions the network requires the use of Blockchain miners. The whole focus of mining is to provide bookkeeping services to the Blockchain currency network. Mining is essentially a fully automated computer accounting mechanism. Mining is accomplished by using specialized hardware that is setup to calculate cryptographic hash functions. The mining hardware bundle the transactions of the past ten minutes into a new transactional block. Cryptographic hash functions transform a collection of data into an alphanumeric string with a fixed length, called a hash value. Every change, no matter how minor to the original data, drastically changes the resulting hash value. It is essentially impossible to predict which initial data set will create a specific hash value. Nonces (a number or string used only once for authentication) are used to create different hash values from the same data. A nonce is just a random number that is added to the data prior to hashing. Changing the nonce results in a completely different hash value. The mining hardware calculates the new hash values based on a combination of the previous hash value, the new transaction block, and a nonce.
Creating hashes is computationally trivial. The Blockchain functionality requires that the new hash value has a particular chronological form. It must start with a certain number of zeros. The miners have no way to predict which nonce will produce a hash value with the required number of leading zeros. This forces them to generate many hashes with different nonces until they randomly land on one that works. Each block includes a transaction that pays out a set amount of cryptocurrency to the winning miner.
- Transaction verified:
As time progresses transactions get filed beneath recent transactions. If any one person was to try to modify an older transaction they would be forced to recalculate the transaction with a different winning nonce and redo all the work of the following blocks. Such a feat is practically impossible.
How do I view the Blockchain?
The Blockchain public ledger can be viewed using a Blockchain browser. This is an application with an internet interface that allows anyone with internet access to search and navigate the Blockchain. The Blockchain browser is used for checking address balances, tracking crypto currency coin transfer histories, watching for transaction acceptance and monitoring the network hash rate. Blockchain browsers provide a list of the Blockchain’s recent blocks, transactions in a block, links to previous and next transaction, a list of all transactions involving a specific address, current and previous address balances, a way to search for blocks, transactions, and addresses. Here are a couple of companies that provide this service: