A technological disruption doesn’t occur unless people are heavy invested in it. People are well adapted to the existing technologies but still, have an old-school approach towards a solution. Basically, the problems underlying finance, data management, voting, and other areas are addressed using different platforms. Though such platforms do not necessarily provide a guaranteed solution. And the very centralized nature sometimes involves bad players leading to fraud or forgery. So what’s exactly I am talking about?
If you have heard about blockchain, that’s going to be the next big thing after the internet. Blockchain simply stores the monetary transactions, just like paper logbooks in the form of credits and debts that is transparent in nature. As the name depicts, all the individual transactions are bundled together in the form of blocks that are linked to each other immutably. Here, information is shared by the nodes (computers connected together on a dedicated network) just like the contents on the Torrent site, provided that they are legit or without copyright issues. So this technology will transform the transactions the way the internet did for the information.
Key features of blockchain:
· Any transaction can be verified to be legit via a consensus mechanism, which means all the network participants must agree with the transaction.
· A single distributed ledger allows a person to determine his/her ownership of an asset or the execution of a transaction.
· The transaction data can’t be reversed or forged. In case of an error in any transaction, a new transaction must be done to rectify the error. Both the information will be stored.
· Due to the provenance feature, participants can trace any assets right from the point of manufacturing to the ownership of that asset. Also used during the change of ownership.
How does blockchain work?
Blockchain works on the mining algorithm. Let us consider an algorithm for Bitcoin’s blockchain. The Bitcoin blockchain runs SHA-256 (SECURE HASH ALGORITHM 256 BITS). Basically, it collects input which can be anything ranging from numbers, texts to computer files of any size. The output produced is so-called a hash having the same size, that is 256 bits in machine code each time.
The same input will always return the same output. But the most striking factor of SHA-256 is that even a minute change in the input will change the output completely. Another thing is that you have only output; you can’t figure out what the input was. Moreover, you can only make a guess, and the odds of figuring that out is 1 in 2²⁵⁶, which is pretty much impossible. In simple words, it’s super secure. You can try out some SHA-256 conversions here.
We now know the abilities of hashing and will discuss what’s inside the process a little ahead. For now, let us have a look at a simple demonstration of P2P transactions via blockchain.
Say, Sam owes Mary 1 Bitcoin, and to do so, Sam broadcasts a message to all the miners in the network with the transaction he is going to make. During the process, Sam shares Mary’s public address and the amount of digital money he would send with the miners along with the digital signature and lastly his public key. The signature is created through Sam’s private key. The miners then verify if Sam is the owner of that 1 Bitcoin and he’s willing to send Mary. When miners make sure that the transaction in the process is legit, they proceed by including that in a block along with other transactions and finally attempt to mine the block. The miners then put the block through the mining algorithm, SHA 256.
To ensure validity, the output must begin with a certain number of 0s. The number of 0s required depends on “difficulty” which changes depending on the network’s computing power. If miners want to produce the desired number of 0s at the output hash, they add a Nonce number into the block right before running it through SHA 256.
Due to this add-on feature, a small change to the input drastically changes the hash value at the output. The miners implement random nounces until they get valid output. But once they successfully mine the block, miners can then broadcast that block to other miners on the network. Now again, the block is checked to ensure its validity and later that block is added to the blockchain. Eventually, Mary receives that 1 Bitcoin, and the transaction is now complete. Moreover, miners are also required to include the output from the previous block such that the rest of the blocks are chained together, hence the term blockchain.
This is how trust works in the blockchain system. Each miner equips one copy of the blockchain on their system. Even though a miner tries to change transactions on the previous block, that block’s hash value will change leading to the need to revise all the other blocks. Now in order to make anyone accept his block, the miner needs to redo all the work. To perform a forgery, that miner requires more than 50% of the network’s computational power which is not feasible.
Hashing: The heart of blockchain system
A hash is a math-based function or simply a computer program that converts an input of letters and numbers into a scrambled encrypted output of a fixed length. Also called a digital fingerprint, no matter how long a text may be, the algorithm doesn’t let anyone fetch original data from the output.
The hashing process involves:
· Input: The data to be hashed
· Hash function: Algorithm to encrypt the input
· Hash value: Alphanumerical output
There are many hashing formulas that can be used to hash a message, SHA 1, SHA 512, CRC 32, MD2, RipeMD128, MD5, just to name a few. Moreover, SHA 256 is a more generalized algorithm among all. There are a number of such formulas natively written and are confined within organizations for their own use-cases.
Nevertheless, the cryptographic hash function should have robust quality and the ability to generate unique output each time. In addition, the hashing function should have a scalability factor in order to speed up the hash value generation.
Hash represents the current state of a blockchain where each transaction contains information such as transferred amount, addresses of sender and receiver, timestamp, etc. The hash function combines them together to form Transaction ID which is a hash in order to make sure that the transaction has occurred.
It all starts with the genesis block where transactions combine to form a unique hash value. With the creation of the second block, the hash produced in the first block is combined with all of the new transactions in this second block. The process thus goes on with the creation of respective hashes with all new blocks being added while taking the previous hash values to produce newer ones thus leading to the formation of unbreakable dependency. Eventually, all the blocks create links to their previous blocks through hash values while forming a chain back to the first block. Hence a blockchain is created.
History of the evolution of blockchain
Let’s go back in time to unravel the origins of a technology that became, much like the internet, a global buzzword. For three-four decades, technology has been going through a series of research, and today we can eventually see its mainstream application in industries and academics. But it’s always interesting to know the technology that grew up so big that we missed and never realized its upbringing back then.
The research paper on cryptography proposed by IEEE members, Whitfield Diffie, and Martin E. Hellman threw the first light on the distributed ledger system. The paper, “New Directions in Cryptography” theoretically examined the possible solutions to the existing problems back then. That included the theories on the computational tools to solve the cryptographic problems and potential features such as private email, public key, signed digital contracts, and also sparked the idea of inexpensive communication between two systems located opposite to each other.
New York-based cryptography researchers, Stuart Haber and W. Scott Stornetta released a document, “How to Time-Stamp a Digital Document”. The document outlines the use of one-way hash functions and digital signatures to solve a major issue of time-stamping the data. The paper explains how DLTs can address any multimedia or textual file by implementing the creation and last changed dates, thus avoiding forgery or backdating efforts.
Stuart Haber and W. Scott Stornetta incorporated Merkle Tree, also called hash tree to store multiple transactions in each block. Currently being used by Bitcoin and Ethereum, the Merkle tree facilitates secure verification of large information and brings consistency. Back then, it was tested by linking the series of recorded data such that new data would hold the history of the entire blocks. However, the patent expired without being implemented.
Ross Anderson, a cryptographer from Cambridge University published a research paper, “The Eternity Service”. Anderson depicted a revolutionary idea that was adopted from the shutdown of Finnish Penet remailer and illustrated a P2P decentralized storage system where the system updates, by no means could be deleted or tampered with. The Finnish remailer worked on an email messaging service by keeping the anonymity of peers and source of mail.
B. Scheier & J. Kelsey, cryptographers from NIST, US wrote a paper where they described that using cryptography, computers can avoid bad actors or untrusted systems to tamper with any previous logs created, also simultaneously making any logs unreadable to them.
University professors David Mazières and Dennis Shasha co-proposed a research paper, “Building secure file systems out of Byzantine storage” focusing on the ability of blocks to hold the information. They talked about the proto-blockchain platform where users can trust each other but not the file system itself. They led the foundation of a primitive version of blockchain through SUNDR (Secure Untrusted Data Repository) using data structures and decentralized protocol for setting up a multi-user file system.
Cryptography scientist Hal Finney presented a prototype called Reusable Proof of Work which was a significant step in the evolution of digital money. The prototype ran on non-fungible or non-exchangeable token-based on Hashcash which further used RSA-signed token for P2P transfer. The idea solved the double-spending issue where users can keep the ownership of registered tokens on a trusted server.
Nick Szabo, a computer scientist and advocate introduced Bit Gold, a decentralized digital currency that is also regarded as “a direct precursor to the Bitcoin architecture”. This was the last attempt right before Bitcoin to bring a major breakthrough in digital currency. Though Szabo implemented innovative ideas like proof-of-work, client puzzle function, and time stamping, however, lagged behind due to the inability to solve the double-spending problem.
2008 and 2009
A pseudonymous identity, Satoshi Nakamoto shook the world when he launched the whitepaper of Bitcoin. Still, in disguise, this unconfirmed individual or group made a proposal that the cryptocurrency would facilitate P2P transactions without the need for centralized authority. In addition, the white paper proposed a solution to the double-spending issue of Bit Gold via P2P timestamp servers. The next year, the proposals made in the whitepaper became reality when Nakamoto successfully made the first-ever transaction by mining the first block. And this is how the first successful cryptocurrency got a kickstart and became a global buzzword.
Ever wondered, how to get a copy of blockchain?
Taking Bitcoin blockchain into account, if you want to see every single transaction to date, download the genuine Bitcoin client. But hey! You have to have an uninterrupted and strong internet in order to download a blockchain of more than 180 GB in size. So be patient as you’re going to download every bit of information from the date (3rd Jan, ’09) when Satoshi carried out the first-ever transaction. But once you’ve downloaded the client, you don’t need to execute heavy downloads anymore as each fresh blocks are just 1 MB in size. The downloaded files appear like: blk00001.dat which contains gibberish alphanumerics.
But what’s the benefit?
So each time you run the client on your system, you’ll be making the network stronger. You can relate the concept to the torrent network.
It all boils down to P2P System. Peers are nothing but computer systems that are connected to each other via the internet. Files can be directly shared through the internet without needing a centralized server. Each system on the network becomes the file system as well as the file client. In order to connect to the peer-to-peer network, various software is available such as Kaaza, Limewire, Bearshare, etc. Once connected to the P2P system, one can search for the required file in the particular system, but only on the directory which is designated for this particular purpose.
Torrent’s downloading works on this P2P concept. Here, more than one person can share data with the client which is trying to download that data. Here a server seeds the data, which means it allows the client to download that piece of the file that the server has. Whereas leeching means downloading a piece of data from the server, so the server seeds the data, on the other hand, the client leaches that data. If there are more seeders for a particular file than the leechers, then the downloading speed will be fast. However, if leechers are more than seeders then the downloading speed will decrease. There is one more factor that affects the speed of download. It depends on the speed with which all the leechers are downloading the content but not sharing it back to the network.
Difference between DLTs and blockchain
Many times, people interchangeably use DLTs and blockchain, however, that’s not true. There are a few distinguishing features between the jargon that must be considered rather than being carried away in the hype.
In DLT, the database is distributed across a specific number of nodes where each of them retains the copy of the information as well as updates themselves independently. Here, each node votes on the updates that are carried out by the consensus algorithm. This presents a whole new architecture for how data is collected and shared on the platform that doesn’t require trust for any person, company, or government.
This may sound like blockchain, isn’t it? However, the implementer may or may not hold control over the functioning, structure, and purpose of the network. Technically speaking, DLT perceives to be like the blockchain’s decentralized model. But from a logical point of view, if one body has control over the decentralized platform, that’s not decentralized. Some independent businesses run natively-built DLTs that are centralized in nature and confined to their own use-cases.
Whereas, blockchain is one form of DLT that employs a chain of blocks and uses P2P networks to deliver immutable, secured, and shared consensus. Due to the linked blocks, blockchain can exist without any intermediary or central server. Blockchain uses a protocol such as proof-of-work to create blocks by making the computers work.
The distributed ledger has been here for a while, quite before the birth of blockchain, but it doesn’t produce a chain of blocks. In fact, blockchain is a subset of DLT that can’t be controlled by any entity (some exceptions) and all the information is verified by the consensus. But what really distinguishes blockchain from other types of DLTs is the digital signature and linking the records in the ledger to form a chain of blocks. Most importantly, blocks are mined but DLTs are distributed hashtables. In conclusion, all blockchains are DLTs, but each DLT can’t be a blockchain.
Different versions of distributed ledger
The distributed ledger system has been existing for decades with Bitcoin being the most recent wave. The very first distributed network came up with an idea to exchange digital money by letting people perform proof of work and without the need of government or central authorities. That established the first version of blockchain technology that allowed the use of cryptocurrencies via wallets and use cases such as storage of value, P2P money transfer, utility tokens to pay for services. The evolution also led to the introduction of hard forks such as BitcoinCash, Litecoin, Dogecoin, and Reddcoin.
But that is just a tiny section of the whole universe. Now coming over to the second version of DLT which is not just confined to money but an immutable file system, allowing the peers to have the copy. The introduction of Ethereum tried to solve the major issues of slow speed and high mining costs via proof of stake. Eventually, this led to the introduction of smart contracts and the very first decentralized application. Neo and BATtoo followed the suit along with the emergence of ICOs.
The third version of distributed ledger focused to bring major disruption in the ecosystem thus brought up new players in the game. With that said, new consensus mechanisms grew abruptly that solved major scalability and interoperability issues. The network speeds ramped up impressively and introduced cross-chain transactions via sharding. In addition, many projects recently came up with the idea of cloudnode, blocknet, open-chain access, and incentive programs. Some of the big names are Cardano, Ziliqa, Iota, Nano, etc. Today, we can store land in the blockchain along with digital currencies and perform a swap through smart contracts. Eventually, the exchange of assets with money will be performed in transparency while eliminating any corruption.
But that’s not all. The fourth version will allow you to match your money and assets fairly with marketing and sales. Reportedly, the implementation of AI and machine learning will bring robust scalability, smooth connectivity, and add an extra layer of security. You will be able to perform auctions, participate in blockchain-based games, set up a patent office, retails, or any business on this platform. In addition, mobile-mining opportunities will be in prospect. Currently, some projects have been patenting their whitepapers and claiming to bring crazy new features, but nothing is clear yet.
Key benefits of blockchain:
· Since there is no central authority for verification, the transaction takes minutes or hours rather days in the traditional settlement method.
· Security features protect against fraud, forgery, and cybercrime.
· The blockchain network slashes unnecessary expenses by eliminating intermediaries.
· Due to the distributed ledger, all participants can identify if there is any duplication.
· Less oversight is required as the network is managed by the participants.
· Practical Byzantine Fault Tolerance or PBFT algorithm helps to settle any dispute when a node delivers different output from others during validation of the transaction.
· Through permissions and ID proofs, a user can share the transaction details with the chosen participants.
· The ability to audit and monitor the transactions has improved.
· The transfer of ownership of any asset or business is conducted in a much reliable and painless manner.
· End-to-end business processes can be achieved with flexibility and security with the help of smart contracts.
10 Key areas blockchain will transform
· Commercial financing
· Trade financing
· Cross-border transaction
· Supply-chain management
· Human resources
· Insurance claims
· Government actions
· Identity verification
· Healthcare and medicine
Sign Up today on The Blockchain School, to unlock more content on Blockchain.