The Step-by-Step Guide for Beginners to Understand Blockchain
You have most probably heard of Bitcoins and Blockchain. They are the trending and media’s favorite topics these days and even the people who’ve never read about a cryptocurrency or understand how it works, are talking about it. I have more non-technical friends than technical ones and they have been bugging me for a long time to explain this new buzzword to them. There are probably many of you out there who feel the same. And when that happens, there comes a time to write something about Bitcoin technology that any regular internet user can understand.
Blockchain Technology: Why Do We Even Need Something This Complex?
Instead of first defining the Blockchain, we’ll understand the problem it solves.
Imagine this situation. Joe is your best friend and he is travelling overseas. He calls you on the sixth day of his vacation and says: „Dude, I have run out of money. Could you help me, please?“
You say: „I will send you some money right away, “and hung up.
After that, you call your account manager and tell him: „Could you send $1000 from my account to Joe’s account, please? “
Your account manager replies, “Of course, sir.”
He opens up the register, checks your account balance to see if you have enough balance. You have plenty because you are a rich man and he makes an entry in the register like the following:
You call Joe and tell him: „I’ve send you $1000 and next time, you’d go to your bank, you can withdraw the money that I have just sent.”
Did you see what just happened? There was no real movement of physical bills to transfer the money because you and Joe both trusted the bank to manage your money. All that was needed was an entry in the register (or to be more precise, an entry in the register that neither you nor Joe controls or owns).
And this is the problem of today’s system.
We depend on individual third-parties to establish trust between ourselves.
We’ve depended on these middlemen for years to trust each other, and might ask, “What is the problem depending on them?”
The problem is that they are singular in number and if a chaos has to be injected in the society, all it requires is one person/organization to go corrupt, intentionally or unintentionally. Imagine these situations:
- The register in which the transaction was logged gets burnt.
- Your account manager writes $1500 instead of $1000 by mistake.
- Or he did that on purpose.
Is there a system where we can still send money without needing the account manager?
To answer this question, we’ll need to drill down further and ask ourselves a better question.
What does transferring money means? Think about it for a second. Just an entry in the register so the better question would then be –
„Could there be a way to maintain the register among ourselves instead of depending on someone else to do it for us? “
Now, this is a great question. And the answer to this profound question is what you might have already guessed – the Blockchain.
It is a method to maintain that register among us.
Are you still following me? Great! Several questions have probably started popping in your mind. Good! Now, we will learn how this distributed register works.
How Does It Work?
The requirement of this method is that there must be enough people who would like not to depend on a third-party and only then these people can maintain the register on their own.
In 2009 Satoshi Nakamoto said that it might make sense just to get some Bitcoin in case it catches on and that becomes a self-fulfilling prophecy if enough people think the same way.
How many people is enough? Three at least. We will assume ten individuals want to give up on banks or any third-party for our example. They have details of each other’s accounts all the time upon mutual agreement, but they don’t know the other’s identity.
- An Empty Folder
Everyone contains an empty folder with themselves to start with and all these ten individuals will keep adding pages to their currently empty folders. And the register that tracks the transactions will be formed from this collection of pages.
- When a Transaction Happens
Everyone in the network sits with a pen and a blank page and in their hands and they are all ready to write any transaction that happens within the system.
For example, #2 wants to transfer $10 to #9.
To make the transaction, #2 shouts and tells everyone, “I want to send $10 to #9, so, everyone, please make a note of it on your pages.”
Everyone checks if #2 has enough balance to send $10 to #9 and everyone then makes a note of the transaction on their blank pages if she has enough balance.
We consider this transaction to be complete now.
- Transactions Continue Happening
More people in the network feel the need to transfer money to others as the time passes. Whenever they want to make a transaction, they announce it to everyone else and as soon as a person listens to the announcement, (s)he writes it on his/her page.
This exercise continues until everyone runs out of space on the current page and assuming a page has space to record ten transactions, everybody runs out of the space as soon as the tenth transaction is made.
It’s time to put the page away in the folder and bring out a new page. After that, repeat the process from the step 2 above.
- Putting Away the Page
We need to seal the page with a unique key that everyone in the network agrees upon before we put it away in our folders. By sealing it, we will make sure that no one can make any changes to it once its copies have been put away in everyone’s folder. Once in the folder, it will always stay in the folder — sealed, and moreover everyone trusts the contents of the page if everyone trusts the seal. The sealing of the page is the crux of this method.
[Jargon Box] It is called ‘mining’ on the page to secure it. However, we’ll keep calling it ‘sealing for the simplicity of it.
The middleman/third-party gave us the trust earlier that whatever they have written in the register will never be changed. This seal will provide the trust instead in a distributed and decentralized system like ours.
Interesting! How Is The Page Sealed Then?
We’ll know how the seal works, in general before we learn how we can seal the page. But before that, I would like to say something about that I like to call…
The Magic Machine
Imagine a machine surrounded by thick walls and if you send a box with something inside it from the left, it will spit out a box containing something else.
[Jargon Box] This machine is called ‘Hash Function,’ However, for today, these are ‘The Magic Machines,’ because we aren’t in a mood to be too technical.
Suppose, you send the number 4 inside it from the left. We’d find that it spat out the following word on its right: ‘dcbea.’
No one knows how it converted the number 4 to this word, but it is an irreversible process. Given the word, ‘dcbea,’ it is impossible to tell what the machine was fed on the left, but the machine will always spit out the same word, ‘dcbea’ every time you’d feed the number 4 to it.
Let’s try sending in a different number, for example 26.
Interesting! This time we got ‘94c8e’, which means that the words can contain the numbers too.
What if I ask you the following question now:
„What should I send from the left side of the machine such to get a word that begins with three leading zeroes from the right side of it, e.g. 000fa, or 00098, or 000ab, anything among the others.“
Could you please think about the question for a moment, please?
As I told you before, the machine has a property that it cannot be calculated what it must be sent from the left after we’re given the expected output on the right. How can we answer the question I asked with such a machine given to us?
There is one method that comes to my mind. We can try every number one by one until we get a word that begins with three leading zeroes.
Being optimistic, we’ll end up with a number that will yield the required output on the right after several thousand attempts.
It was extremely difficult to calculate the input given the output, but at the same time, it will always be incredibly easy to verify if the predicted input yields the required output. The machine spits out the same word for a number every time.
If I give you a number, say 72533, and ask you the question: „When you feed the number into the machine, does it yield a word that begins with three leading zeroes?” how difficult do you think the answer is?
Just throw the number in the machine and see what did you get on the right side of it and that’s it.
The most important property of such machines is that — “Given an output, it is extremely difficult to calculate the input. However, given the input and the output, it is pretty simple to verify if the input leads to the output.”
How to Seal a Page Using These Machines?
We’ll use this magic machine to generate a seal for our page and we’ll start with an imaginary situation, like always.
Imagine you get two boxes from me and the first box contains the number 20893. After that, I ask you: „Can you calculate a number that, when added to the number in the first box and fed to the machine, will give us a word that begins with three leading zeroes?”
This is a similar situation as we had previously. We have learned that by trying every number available in the whole universe is the only way to figure out such a number.
We’ll stumble upon a number, say 21191, after several thousand attempts. This number, when added to 20893 (i.e. 21191 + 20893 = 42084) and fed to the machine, will yield a word that satisfies our requirements.
This number, 21191 becomes the seal for the number 20893 in such a case. Suppose there is a page that contains the number 20893 written on it. We will put a badge labelled ‘21191’ on top of it to seal that page (i.e. no one can change the contents of it). The page is sealed once the sealing number (i.e. 21191) is stuck on it.
[Jargon Box] The sealing number is called ‘Proof Of Work.’ This means that this number is the proof that efforts had been made to calculate it. But for our purposes, we are good with calling it ‘sealing number.’
All that you need to do to verify whether the page was altered is to add the contents of the page with the sealing number and feed to the magic machine. The contents were untouched if the machine gives out a word with three leading zeroes. We can throw away the page if the word that comes out doesn’t meet our requirements because its contents were compromised, and are of no use.
We’ll seal all our pages using a similar sealing mechanism and eventually arrange them in our respective folders.
Sealing the Page
We’ll need to figure out a number that when appended to the list of transactions and fed to the machine, we get a word that begins with three leading zeroes on the right to seal our page that contains the transactions of the network.
Note: The phrase ‘word starting with three leading zeroes’ is used only as an example. It illustrates how Hashing Functions work, but the real challenges are much more complicated than this.
Once that number is figured out after spending time and electricity on the machine, the page is sealed with that number. The sealing number will allow anyone to verify the integrity of the page if someone tries to change the contents of the page.
Now it’s time to go back to the time when we had finished writing the tenth transaction on the page, and we ran out of space to write more.
As soon as everyone runs out of the page to write further transactions, everyone in the network indulge in calculating the sealing number for the page so that it can be tucked away in the folder and the first one in the network to figure out the sealing number announces it to everyone else.
Instantly, on hearing the sealing number, everyone verifies if it yields the required output or not and, if it does, everyone labels their pages with this number and put it away in their folders.
But what if the sealing number that was announced doesn’t yield the required output for someone, say #7. Such cases are not unusual and the possible reasons for this could be:
- The transactions that were announced in the network might have been miswritten.
- The transactions that were announced in the network might have been misheard.
- When writing transactions he might have tried to cheat or be dishonest, either to favor himself or someone else in the network.
#7 has only one choice — to discard his page and copy it from someone else so that he too can put it in the folder. He cannot continue writing further transactions unless he doesn’t put his page in the folder. This means that he is no longer part of the network.
Then why not sit idle and wait for the announcement and why does everyone spend resources doing the calculation when they know that someone else will calculate and announce it to them?
Interesting question because this is where the incentives come in the picture. Everyone who is the part of the Blockchain is eligible for rewards and the first one to calculate the sealing number gets rewarded with free money for his efforts (i.e. expended CPU power and electricity).
Simply imagine, #5 gets rewarded with some free money, say $1 if he calculates the sealing number of a page. The money gets minted out of thin air, which means the account balance of #5 gets incremented with $1 without decreasing anyone else’s account balance.
That’s how Bitcoin got into existence, because it was the first currency to be transacted on a Blockchain. And in return, people were awarded Bitcoins to keep the efforts going on in the network.
Bitcoins grow in value when enough people possess them. This makes other people wanting Bitcoins; making Bitcoins grow in value even more; making even more people wanting Bitcoins; making them grow in value even more; and so on.
And they bring out a new blank page once everyone tucks away the page in their folders. The whole process is repeated all over again — doing it forever.
[Jargon Box] Think of a single page as a Block of transaction. Also, think of the folder as the Chain of pages (Blocks), therefore, turning it into a Blockchain.
And that is how Blockchain works.
But there’s yet one tiny thing I didn’t tell you.
Imagine there are five pages in the folder already. They are all sealed with a sealing number. If I go back to the second page and modify a transaction to favor myself the sealing number will let anyone detect the inconsistency in the transactions. Or what if I go ahead and calculate a new sealing number too for the modified transactions and use that number to label the page?
There’s a little twist to how a sealing number is calculated to prevent this problem of someone going back and modifying a page (Block) as well as the sealing number.
Protecting Modifications to the Sealing Numbers
Remember how I told you that I had given you two boxes? One box contained the number 20893 and another was empty for you to calculate. In reality, instead of two boxes, there are three to calculate the sealing number in a Blockchain. Two are pre-filled and one to be calculated.
The answer that comes out from the right side must satisfy the required conditions when the contents of all those three boxes are added and fed to the machine.
One box contains the sealing number, one box will contain the list of transactions and the third box will contain the output of the magic machine for the previous page.
We have made sure that every page depends on its previous page with this neat little trick. Therefore, if someone has to modify a historical page and keep the chain consistent, he would also have to change the contents and the sealing number of all the pages after that.
If one individual tries to cheat and modify the contents of the Blockchain (the folder containing the pages with the list of transactions), he would have to adjust several pages and also calculate the new sealing numbers for all those pages. Therefore, one dishonest individual in the network cannot beat the nine honest individuals because we know how difficult it is to calculate the sealing numbers.
What will happen is, from the page the dishonest individual tries to cheat, he would be creating another chain in the network. However, one individual’s efforts and speed cannot beat cumulative efforts and speed of nine so that chain would never be able to catch up with the honest chain. This means that the longest chain in a network is the honest chain.
Did it ring any bell in your head when I told you that one dishonest individual cannot beat nine honest individuals?
What If Six Individuals Turn Dishonest Instead of One?
The protocol will fall flat on its face in that case. The protocol will fail its purpose if the majority of the individuals in the network decide to turn dishonest and cheat the rest of the network. This is known as “51% Attack”.
And that’s the only vulnerable reason why Blockchains might collapse, but it is unlikely to happen. However, we must all know the vulnerable points of the system because it is built on the assumption that the majority of a crowd is always honest.
Who Will Use the Blockchain?
You don’t need to know about the blockchain for it to be useful in your life.
Currently, finance offers the strongest use cases for the technology, international remittances for example. There is a high demand for blockchain developers (http://courses.blockgeeks.com/) at the moment. The World Bank estimates that in 2015 over $430 billion US in money transfers were sent.
For these types of transactions the blockchain potentially cuts out the middleman. With the invention of the Graphical User Interface (GUI) personal computing became accessible to the general public, which took the form of a “desktop”. Similarly, the most common GUI devised for the blockchain is the so-called “wallet” applications. People use them to purchase things with Bitcoin, and store it along with other cryptocurrencies.
Transactions online are closely connected to the processes of identity verification and it is easy to imagine that wallet apps will transform in the coming years to include other types of identity management.
The Blockchain a New Web 3.0?
The blockchain gives you the ability to create value and authenticates digital information. Which new business applications will we get?
The sharing economy
The sharing economy is already a proven success with companies like Uber and AirBnB flourishing. Currently, however, people who want to use a ride-sharing service have to rely on a middleman like Uber. The blockchain opens the door to direct interaction between parties by enabling peer-to-peer payments. This is a truly decentralized sharing economy result.
OpenBazaar (https://openbazaar.org/) is an early example. It uses the blockchain to create a peer-to-peer eBay. You can transact with OpenBazzar vendors without paying transaction fees by downloading the app onto your computing device. Personal reputation will be even more important to business interactions than it currently is on eBay thanks to the “no rules” ethos of the protocol.
Smart contracts (http://blockgeeks.com/guides/smart-contracts/)
The coding of simple contracts is enabled by distributed ledgers. This will execute when specified conditions are met. Ethereum (http://blockgeeks.com/guides/what-is-ethereum/) is an open source blockchain project that has the potential to leverage the usefulness of blockchains on a truly world-changing scale. It was built specifically to realize this possibility.
Smart contracts can be programmed to perform simple functions at the technology’s current level of development. For example, with the use of blockchain technology and Bitcoin enabling the payout to be automated a derivative could be paid out when a financial instrument meets certain benchmark.
Distributed database technology could bring full transparency to elections or any other kind of poll taking by making the results fully transparent and publicly accessible. The process can be automated with the help of ethereum-based smart contracts.
The app, Boardroom, enables organizational decision-making to happen on the blockchain, which means that, when managing digital assets, equity or information, company governance becomes fully transparent and verifiable.
Crowdfunding initiatives, such as Kickstarter and Gofundme, are doing the advance work for the emerging peer-to-peer economy and the popularity of these sites suggests people want to have a direct say in product development. Blockchains take this interest to the next level. It potentially creates crowd-sourced venture capital funds.
In 2016, one such experiment raised an amazing $200 million USD in just over two months. It was the Ethereum-based DAO (http://blockgeeks.com/guides/what-is-ethereum-a-step-by-step-beginners-guide/) (Decentralized Autonomous Organization). Participants bought “DAO tokens”. This gave them the right to vote on smart contract venture capital investments (voting power was proportionate to the number of DAO they were holding). A subsequent hack of project funds proved that the project had disastrous consequences because it was launched without proper due diligence. Nevertheless, as we saw in this DAO experiment, the blockchain has the potential to usher in “a new paradigm of economic cooperation.”
Decentralizing file storage on the internet brings clear benefits and you can protect files from getting hacked or lost by distributing data throughout the network.
IPFS (Inter Planetary File System) makes it simple to conceptualize how a distributed web might operate. IPFS gets rid of the need for centralized client-server relationships (i.e., the current web), similar to the way a bittorrent moves data around the internet. An internet that is made up of completely decentralized websites has the potential to speed up streaming times and file transfer. Such an improvement is not only convenient, but also necessary upgrade to the web’s currently overloaded content-delivery systems.
Supply chain auditing
People want to know that the ethical claims companies make about their products are genuine and distributed ledgers provide a simple way to certify that the backstories of the products we purchase are real. Transparency comes with blockchain-based timestamping of a date and location that corresponds to a product number.
The UK-based Provenance offers supply chain auditing for a range of consumer goods and a Provenance pilot project ensures that fish sold in Sushi restaurants in Japan has been sustainably harvested by its suppliers in Indonesia, making use of the Ethereum blockchain.
Protection of intellectual property
Thanks to the internet digital information can be infinitely reproduced and distributed widely. This has given web users globally a goldmine of free content, but copyright holders have not been so happy. They lost control over their intellectual property and suffering financially as a consequence. Smart contracts can protect copyright and automate the sale of creative works online. This eliminates the risk of file copying and redistribution.
Mycelia (https://mycelium.com/) is founded by the UK singer-songwriter Imogen Heap. It uses the blockchain to create a peer-to-peer music distribution system and enables musicians to sell songs directly to audiences, as well as licence samples to producers and divvy up royalties to songwriters and musicians. Smart contracts automated all these functions and the capacity of blockchains to issue payments in fractional cryptocurrency amounts (micropayments) suggests this use case for the blockchain has a great chance of success.
It is proved that the crowdsourcing of predictions on event probability has a high degree of accuracy. Prediction markets that pay out according to event outcomes are already active and averaging opinions cancels out the unexamined biases that distort judgment. Blockchains are a “wisdom of the crowd” technology that will find other applications in the following years.
Still, in Beta, Augur (https://www.augur.net/), the prediction market application, makes share offerings on the outcome of real-world events. Participants can earn money by purchasing into the correct prediction and the higher the payout will be the more shares bought in the correct outcome. Anyone can ask a question, create a market based on a predicted outcome, and collect half of all transaction fees the market generates if he has a small commitment of funds (less than a dollar).
AML and KYC
Know your customer (KYC) and anti-money laundering (AML) practices have a great potential for being adapted to the blockchain. Currently, for each new customer financial institutions must perform a labour intensive multi-step process. Through cross-institution client verification KYC costs could be reduced, and increase monitoring and analysis effectiveness at the same time.
Startup Polycoin has an AML/KYC solution that involves analysing transactions and those transactions identified as being suspicious are forwarded on to compliance officers. Tradle is another startup that is developing an application called Trust in Motion (TiM), which is characterized as an “Instagram for KYC”. This application allows users to take a snapshot of key documents (passport, utility bill, etc.). This data is cryptographically stored on the blockchain once verified by the bank.
Internet of Things (IoT) (http://blockgeeks.com/5-incredible-blockchain-iot-applications/)
IoT is the network-controlled management of certain types of electronic devices. Smart contracts make the automation of remote systems management possible and a combination of software, sensors, and the network facilitates an exchange of data between objects and mechanisms. The result improves cost monitoring and increases system efficiency.
The biggest players in manufacturing, tech and telecommunications, such as Samsung, IBM and AT&T are all vying for IoT dominance because IoT applications will run the gamut from predictive maintenance of mechanical parts to data analytics, and mass-scale automated systems management.
The ability to verify your identity is the lynchpin of financial transactions that happen online so there is a definite need for better identity management on the web. However, the problem is that remedies for the security risks that come with web commerce are imperfect at best. Distributed ledgers offer the possibility to digitize personal documents and enhanced methods for proving who you are. Having a secure identity will also be important for online interactions because a good reputation is the most important condition for conducting transactions online.
Developing digital identity standards is definitely a highly complex process. A universal online identity solution requires cooperation between government and private entities and adds to that the need to navigate legal systems in different countries and the problem becomes exponentially difficult. For secure transactions on the web E-Commerce on the internet currently relies on the SSL certificate (the little green lock). Netki is a startup that aspires to create a SSL standard for the blockchain and they expect a product launch in early 2017.
With Blockchain technology you can purchase and sell the renewable energy generated by neighborhood microgrids. Ethereum-based smart contracts automatically redistribute excess energy when solar panels make it. When the IoT becomes a reality similar types of smart contract automation will have many other applications.
Consensys (https://consensys.net/about/) is located in Brooklyn and it is one of the foremost companies globally that is developing a range of applications for Ethereum. Transactive Grid is one project they are partnering on and they work with the distributed energy outfit, LO3. A prototype project currently up and running uses Ethereum smart contracts to automate the monitoring and redistribution of microgrid energy and this so-called “intelligent grid” is an early example of IoT functionality.
Blockcains have potential for added efficiency in share settlement, which makes a strong use case for them in stock trading. Trade confirmations become almost instantaneous when executed peer-to-peer. Potentially, this means intermediaries get removed from the process.
Many stock and commodities exchanges are prototyping blockchain applications for the services they offer. This includes the JPX (Japan Exchange Group), the Deutsche Börse (Frankfurt’s stock exchange) and the ASX (Australian Securities Exchange). The Nasdaq’s Linq is the most high profile because the acknowledged first mover in the area. This is a platform for private market trading (typically between pre-IPO startups and investors). A partnership with the blockchain tech company Chain, in 2015 Linq announced the completion of it its first share trade. Also, Nasdaq announced the development of a trial blockchain project for proxy voting on the Stock Market in Estonia more recently.
Land title registration
Blockchains are Publicly-accessible ledgers, which mean that they can make all kinds of record-keeping more efficient. Property titles are a case in point and they tend to be susceptible to fraud. They are also costly and labour intensive to administer.
Blockchain-based land registry projects are undertaken by many countries. In 2015 Honduras was the first government to announce such an initiative. However, the current status of that project is unclear. The Republic of Georgia made a deal this year with the Bitfury Group to develop a blockchain system for property titles. Allegedly, Reportedly, Hernando de Soto will be advising on the project. He is the high profile economist and property rights advocate. Also, Sweden announced it was experimenting with a blockchain application for property titles most recently.
Today, people can use social media platforms like Facebook for free in exchange for their personal data and in future, people will have the ability to manage and sell the data their online activity generates. Bitcoin — or something like it — will most likely be the currency that gets used for this type of transaction, because it can be easily distributed in small fractional amounts.
Enigma, the MIT project, understands that the key precondition for creating of a personal data marketplace is the user privacy. To allow individual data sets to be split between nodes, Enigma uses cryptographic techniques. Also, at the same time it runs bulk computations over the data group as a whole. Fragmenting the data also makes Enigma scalable. Within the next six months a Beta launch is promised.
And that is all there is about Blockchains. If you ever find someone feeling left behind and wondering, “What is Blockchain Technology?” you know where you can point them to.
Blockchain Wiki: An In-depth Guide about the Many Colorful Faces of Blockchain
This guide aims to cut through the nebular and explain the different families and trees of Blockchains.
What kinds of blockchains (http://blockgeeks.com/guides/what-is-blockchain-technology/) are there?
What are the differences between the hundreds of blockchains in existence and what are cryptocurrency (https://blockgeeks.com/guides/what-is-cryptocurrency/) blockchains, private blockchains, and sidechains?
What is a Blockchain?
The proposition of the term Blockchain (http://blockgeeks.com/guides/what-is-blockchain-technology/) can be confusing, because sometimes you read a blockchain, sometimes the blockchain, sometimes blockchain technology and here and then simply blockchain. Sure, we could state, that the written word is unclear, and that language simply needs its time to catch up since blockchain is a new thing, but this would ignore that fact that Blockchain-technology is an emerging, organically growing business that has created a vivid ecosystem with a lot of “Blockchains”.
I will try to sort things up and provide an overview of the families and trees of blockchains with this in-depth guide. I assume that readers are aware of the concept of Blockchain and cryptocurrencies, so this is not an introduction to Blockchain. Here Blockchain (http://blockgeeks.com/guides/what-is-blockchain-technology/) is defined as a public ledger of all Bitcoin transactions that have ever been executed. You should start with this article if you want to learn more about Blockchain as a technological concept.
This guide discriminates Blockchains by applications and by properties.
Cryptocurrencies (http://blockgeeks.com/guides/what-is-cryptocurrency/) are the most common, successful and tested Blockchain-application so will start with them. Cryptocurrencies build a consensus about a shared ledger of past financial transactions, and in this way use the Blockchain to create a decentralized monetary system. Cryptocurrencies (http://blockgeeks.com/guides/what-is-cryptocurrency/) establish a system that regulates the distribution of monetary units and processes transactions. They do it in a decentralized kind with no authority to trust.
Each blockchain that has become the host of a cryptocurrency shares two very important features – transparency and openness.
- Transparency – The shared ledger of past transactions, usually called blockchain, is public and there is no privacy because everybody can see what happens on the blockchain.
- Openness – This property has a two-fold meaning: first, the code is open source and second, it is permissionless. This means that everybody can download the software and participate in the network. Both result in that every person who has internet access can test and fork the source code and verify the validity of a transaction.
The cryptocurrency Bitcoin (http://blockgeeks.com/guides/what-is-bitcoin-a-step-by-step-guide/) is the most famous and successful of all blockchains. Bitcoin demonstrated that these features make it possible to get rid of a trusted third party from an electronic cash system and replace trust in individuals or institutions with trust in a protocol. An open and permissionless blockchain allows everybody to access everything he needs to verify or sign when making or receiving a payment.
However, almost every other feature than transparency and openness can be changed in a cryptocurrency. There are two powerful variables that have become the source of the creation of several Blockchain families and trees with fundamental differences: the anonymity of transactions and the mechanism to establish a consensus.
Blockchains with Different Mechanism to Establish Consensus
We hear plenty of talk of how public blockchains are going to change the world. However, a shared public ledger needs a functional, efficient and secure consensus algorithm to function on a global scale.
This family begins with the basic feature of all blockchains – only when specific conditions are met they are able to organize data in a chain of blocks and add new blocks of data. This enables the system to establish a consensus about a single valid chain of blocks and thus about a single valid set and history of data.
Usually, the data-adding entities are called miners. They compete for this task by proofing something – something that can be verified by every other entity of the network solely with information completely availably on the blockchain. In a cryptocurrency blockchain, for this work miners are awarded with units of the cryptocurrency. The details of this mechanism are a major factor to discriminate cryptocurrency families.
Proof of Work (PoW)
A consensus algorithm, like bitcoin’s Proof of Work (https://www.coindesk.com/information/how-bitcoin-mining-works/), does two things: it keeps powerful adversaries from derailing the system and successfully forking the chain, and it ensures that the next block in a blockchain is the one and only version of the truth.
In PoW, miners compete to add the next block in the chain by racing to solve an extremely difficult cryptographic puzzle and the first to solve the puzzle, wins the lottery. The difficulty of the riddles is set by the network and every other participant can verify the solution. The miner receives 12.5 newly minted bitcoins – and a small transaction fee as a reward for his or her efforts.
Yet, although a masterpiece in its own right, bitcoin’s PoW has some downsides. It requires a lot of energy to keep the network secure. For instance, Bitcoin consumes about as much energy as Scotland or Denmark.
However, Bitcoin is not the onliest PoW blockchain (http://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/) and there is a wide range of blockchains employing several PoW-algorithms (beside SHA 256, which is used by Bitcoin).
There are families that use:
- Cryptonote (Bytecoin, Monero), X11 (Dash)
- X11 (Dash), Scrypt (Dogecion, Litecoin, Feathercoin)
- Equihash (Zcash) and some more
- Equihash (Zcash), Ethash (Ethereum, Ethereum Classic (https://blockgeeks.com/guides/what-is-ethereum-classic/)) and some more
Newly invented algorithm aims to make it difficult to produce special purpose hardware for mining. In that way it will keep the mining decentralized.
Proof of Stake (PoS)
Proof of Stake is the most common alternative to Proof of Work. In Proof of Stake (http://blockgeeks.com/guides/proof-of-work-vs-proof-of-stake/) a ‘validator’ invests in the coins of the system, instead of investing in expensive computer equipment in a race to mine blocks . Mining is somehow like a lottery, and in Proof of Stake you get the tickets for lockings your cryptocurrency token, while in Proof of Work you have to let your hardware create tickets.
Note the term validator, because no coin creation exists in PoS. Instead, all the coins exist from day one, and validators are paid strictly in transaction fees.
In PoS, your chance of being picked to create the next block depends on the fraction of coins in the system you own. A validator who has 300 coins will have a three times bigger chance to be chosen than someone who has 100 coins.
Once a validator creates a block, that block still needs to be committed to the blockchain and different PoS systems vary in how they handle this. For instance, in Tendermint every node in the system has to sign off on a block until a majority vote is reached. On the other hand, in other systems, a random group of signers is chosen.
Now we have a problem. What is to discourage a validator from creating two blocks and claiming two sets of transaction fees, and what is to discourage a signer from signing both of those blocks? This has been called the ‘nothing-at-stake’ (https://www.coindesk.com/ethereum-casper-proof-stake-rewrite-rules-blockchain/) problem, since a participant with nothing to lose has no reason not to behave badly.
Blockchain engineers are trying to find ways to tackle this and other issues in the burgeoning field of ‘crypto-economics’ (https://www.coindesk.com/ethereum-economics-gets-spotlight-vitalik-buterin-edcon-keynote/), and one answer is to require a validator to lock their currency in a type of virtual vault.
Those coins are slashed if the validator tries to double sign or fork the system.
Proof of Stake has several advantages against Proof of Work:
- It decreases the amount of electricity that the network needs.
- It decreases the initial investment in mining, and in this way keeps mining more decentralized.
- It produces less volatile time intervals between new blocks and in this way has better scaling properties.
- It is secure against a number of attacks based on the distribution of the hardware.
The first coin to implement PoS was Peercoin, and blackcoin and NXT followed it. Ethereum currently relies on PoW. However, it is planning a move to PoS in early 2018.
All currently available PoS coins have in common that they need an initial and trusted setup to keep a consensus. This is problematic for Blockchain purists but seems to work in practice. The economic context of PoS is maybe even more problematic. It sets incentives to hoard coins by giving a direct interest that doesn’t require any economic action.
BitShares Delegated Proof of Stake is an interesting branch of PoS. This means that a number of delegates, mostly 99, are nominated by a vote of the economic majority and these delegates stake for the other participants of the network. Lisk followed after BitShares’ first implementation of this concept. With Steem another tree of the Delegated PoS established the model of a Subjective PoW. If you have a limited number of mining nodes, you can let them subjectively decide when a work fulfils the conditions a proof and Steem used this concept to create a coin that is mined by contributing to a social network and earning upvotes and not by staking with funds nor by burning computer power.
Proof of Burn
With Proof of Burn, you ‘burn’ coins by sending them to an address where they are irretrievable, instead of pouring money into expensive computer equipment. You earn a lifetime privilege to mine on the system based on a random selection process by committing your coins to never-never land.
Miners may burn the native currency or the currency of an alternative chain, like bitcoin, depending on how proof of burn is implemented, and the more coins you burn, the better chance you have of being selected to mine the next block.
Your stake in the system decays over time. This means that you will want to burn more coins to increase your chances of being selected in the lottery. (This mimics bitcoin’s mining process. In this process, to maintain hashing power, you have to continually invest in more modern computing equipment.)
Proof of burn is an interesting alternative to PoW. However, the protocol still wastes resources needlessly and mining power simply goes to those who are willing to burn more money.
Slimcoin, a cryptocurrency based on peercoin, is the only coin that uses proof of burn. It uses a combination of PoW, PoS and proof of burn. However, it is only semi-active (https://www.reddit.com/r/slimcoin/comments/4su0ti/slimcoin_is_dead/) at this time.
Proof of Storage
Coins such as Maidsafecoin, Siacoin and the still developed KopperCoin aim to make the storage of files the condition for miners to find a block, which has the effect that it makes the Blockchain essentially an instrument to create a decentralized cloud storage. However, the cryptographic processes involved are difficult and immature. They also might have issues to guarantee that a miner or node keeps a file after he gets a reward and that it is always possible to download a file you uploaded into the network. Also, a nearly unlimited scaling should be a necessity for such a system. However, that remains problematic to achieve.
Proof of Elapsed Time
Proof of Elapsed Time (https://www.coindesk.com/intel-winning-blockchain-critics-reimagining-bitcoins-dna/) is Intel’s alternative consensus protocol that works similarly to PoW, but consumes far less electricity.
Further, to ensure blocks get produced in a random lottery fashion, the algorithm uses a trusted execution environment (TEE) – such as SGX – instead of having participants solve a cryptographic puzzle.
Intel’s approach is based on a guaranteed wait time provided through the TEE, and according to Intel, the Proof of Elapsed Time algorithm scales to thousands of nodes and will run efficiently on any Intel processor that supports SGX.
It is important to note that this protocol requires you to put your trust in Intel, and that’s one problem with it. It also isn’t putting trust in third parties, what we were trying to get away from with public blockchains.
Proof of Research
An interesting attempt to use the miner’s work for something useful started with Primecoin in early February 2014. Sunny King, a developer/architect of Peercoin, discovered a method to make the search for a prime number to a PoW. The Primecoin-project succeeded in finding several new record prime numbers. It proved that it is possible to couple the work of the miners to scientific tasks. Other coins, such as Curecoin and Gridcoin, couple the work of the miners to the scientific computing tasks of the BOINC-network to try to enhance this approach. Gridcoin established itself as one of the leading contributors to BOINC, despite the fact that there remain doubts about the security of this procedure.
Proof of Capacity (PoC)
Most of these alternative protocols employ some type of pay-to-play scheme and Proof of Capacity is no different. However, you ‘pay’ with hard drive space here and the more hard drive space you have, the better your chance of mining the next block and earning the block reward.
The algorithm generates large data sets known as ‘plots’ prior to mining in a Proof of Capacity system. These plots are stored on your hard drive, and the more plots you have, the better your chance of finding the next block in the chain.
You buy yourself a better chance to create duplicate blocks and fork the system by investing in terabytes of hard drive space. But with PoC, we still have the issue of nothing at stake to deter bad actors.
The only cryptocurrency to use a form of PoC is Burstcoin. Variations of PoC include Proof of Space (https://eprint.iacr.org/2013/796.pdf) and Proof of Storage.
Proof of Activity
Bitcoin will only ever produce 21m bitcoins to avoid hyperinflation, which means that, at some point, the bitcoin block reward subsidy will end and bitcoin miners will only receive transaction fees.
Some people have speculated this might cause security problems resulting from a ‘tragedy of the commons’ (https://en.wikipedia.org/wiki/Tragedy_of_the_commons). For that reason, Proof of Activity (https://eprint.iacr.org/2014/452.pdf) (a hybrid approach that combines both PoW and PoS) was created as an alternative incentive structure for bitcoin.
In Proof of Activity, mining kicks off in a traditional PoW fashion. Miners here race to solve a cryptographic puzzle. Depending on the implementation, blocks mined do not contain any transactions. This means that the winning block will only contain a header and the miner’s reward address.
The system switches to PoS at this point. A random group of validators is chosen to sign the new block based on information in the header and the more coins in the system a validator owns, the more likely he or she is to be chosen. As soon as all of the validators sign it, the template becomes a full-fledged block.
The next winning block is selected if some of the selected validators are not available to complete the block. After that a new group of validators is chosen, and so on, until a block receives the correct amount of signatures. The miner and the validators who signed off on the block split the fees.
The only coin using a variation of Proof of Activity is Decred.
Criticisms of Proof of Activity are the same as for both PoS (there is nothing to deter a validator from double signing) and PoW (too much energy is required to mine blocks).
Blockchains with Improved Privacy Properties
The basis features of a cryptocurrency-blockchain – transparency and openness – are bad for privacy. Everybody can see all transactions because they are stored in a public database. There are already companies analyzing the Bitcoin blockchain to identify monetary flows connected to criminal activity and to help governments and exchanges to track the transactions of users. For that reason, several cryptocurrencies try to establish advanced privacy properties.
The cryptonote family started with Bytecoin. However, today it is mostly known for Monero. There are some more implementations beside those, such as Quazarcoin, Digital Note, Dashcoin, Boolbery, and Aeon. The only cryptocurrency-design that implemented strong privacy as a default is Cryptonote. Cryptonote provides an advanced mining-algorithm and implements so-called Ring Signatures. These Ring Signatures obscure the sender and receiver of transactions.
Dash, earlier called Darkcoin, implemented CoinJoin. It is a procedure developed for Bitcoin that combines the in- and outputs of several transactions in one transaction and thus mixes them. Dash established so-called MasterNodes to enable the optional use of CoinJoin. The MasterNodes earn money for their service, and it is the only known way to incentivize non-mining nodes of a cryptocurrency.
Zcash (http://blockgeeks.com/zcash-mean-ethereum/) is one of the newest cryptocurrencies. It invented a so-called zero-knowledge proof. This proof enables users to publicly proof that their transaction is valid without publicly showing any transactional data. Zcash not only hides the participating parties but also the amount sent, which means that this is the only cryptocurrency that provides complete anonymity of transaction.
Things get confusing if we leave the space of cryptocurrency-blockchains. There are some people who doubt that there is any useful blockchain-application other than a decentral cryptocurrency. However, most people see a wide scope of applications for blockchain-technology in general, ranging from financial assets to land-registries, tax control and the energy trading. These applications, as some claim, will have a more sustainable and important impact on economy and society as cryptocurrencies.
However, since there is no best-practice, no success-story, no standard, non-cryptocurrency applications are often hardly more than an idea. There are few ideas, at best experiments, proof-of-concept, studies, reports, and whitepapers, at worst nothing but shiny websites, persuading PR-stunts and consultants.
It’s no wonder that, in this context, the most active scheme for non-currency blockchain application settles on top of open and public cryptocurrencies.
Also, there are experiments and ideas to create so-called sidechains to leverage the powerful consensus mechanism of this cryptocurrency-blockchain. Finally, we see an intriguing range of new approaches and architectures when we talk about blockchains that are specifically designed for non-currency applications. Some of them like Ethereum keep the properties of currency-blockchain – transparency and openness. On the other hand, some sacrifice them, on parts or as a whole, to develop new features and properties.
Non-cryptocurrency Applications on Top of Cryptocurrency Blockchains
What would happen if we would use a currency blockchain like Bitcoin to transfer other things than Bitcoin? Like writing a message on a banknote, you can implement some meta-information in a Bitcoin transaction. This information could be something like “this is a share of company X”.
Protocols such as Colored Coins, Factom, Mastercoin (Omni), and Counterparty create a layer on top of Bitcoin. This allows using a fraction of a Bitcoin to create a token for something else, e.g. gold, shares or other assets. It is important to note that these protocols are already in use. The Bitcoin-exchange BitFinex used Omni after a hack to issue shares that represented debts of users. Also, the wallet-developer Mycelium issues shares on future profits with a crowdfunding.
These different protocols compete to become a standard to issue token on top of Bitcoin, but none of it could establish itself as the standard. All these protocols suffer from high transaction fees, Bitcoin scalability restriction and the problem of an indirect injection of data. To verify the validity of the data, this indirect injection always requires some additional data external to the blockchain.
Sidechains are an extremely important innovation for cryptocurrency and they also extend and incentivize the cryptocurrency mining opportunities and industry.
Sidechains are the idea to take an asset on one blockchain and, without violating the consensus rules, transport it on another. By this, it can be possible to keep the legacy blockchain strong and „hard“, while allowing innovation and risk on the Sidechain.
Sidechains as an idea have existed and had been floating around for quite some time now. The bases are to extend the decentralization of trust into other sectors and to other digital assets. This sounds perfect in theory. However, in practice it has a few problems. Nevertheless, this hasn’t stopped people from trying. Groups, such as Blockstream, are exploring the idea. The Blockstream developed the sidechain prototype Alpha and used several major Bitcoin exchanges (https://blockgeeks.com/guides/best-cryptocurrency-exchanges/) to test the sidechain Liquid. Non-monetary applications are said to be possible. However, to overcome the privacy and scalability restrictions of Bitcoin Blockstream currently focuses on monetary applications.
Paul Sztorc from Blockchain-startup bloq developed a sidechain-based prediction market (Truthchain) and he wants to create a sidechain using the power of Bitcoin. In this sidechain, the participants compete in guessing the outcome of future events.
Also, people at Rootstock co-created a Sidechain. This allowed Bitcoin and Litecoin to execute smart contracts, all without changing the core software of the original currency. Using Rootstock as an example, user on the parent first has to send their coins to a special output address where they will consequently become locked and un-spendable in order to transfer assets from one chain to the other. Once the transaction is completed, SPV confirms it across the chains. And, the equivalent amount will be credited and spendable on the Sidechain and vice versa after waiting out a contest period, which is just a secondary method to help prevent double spending.
Currently, all these attempts have the problem that the Bitcoin-Blockchain is blind to the activity on a sidechain. This is the reason why all these sidechains need a federation of trusted nodes to work. The sidechains of the cryptocurrency Lisk are more decentralized.
Blockchains Specifically Designed for Non-monetary Applications
Several attempts to build Blockchains that are designed to serve non-currency applications are created thanks to the vivid ecosystem of cryptocurrencies. Ironically, the thing that sets monetary incentives to build a blockchain that serves non-currency applications is the cryptocurrency application of Blockchain token.
Namecoin (the first fork of Bitcoin) is the first example of these Blockchains. It is a cryptocurrency designed to store little strings of data and serve as a DNS-System. Namecoin has never become really popular, although it actually enables a decentralized hosting of websites.
Namecoin was followed by Bitshares and Next. They integrated a mechanism for marketplaces in its scripting system and thus in its consensus-mechanism. There are also some filecoins that fall under this category – Koppercoin, Maidsafecoin, and Siacoin. However, all these Blockchains have one thing in common with Bitcoin – their scripting-system has a hardcoded and very limited scope of operations.
The internal scripting system of a Blockchain became for the first time turing-complete with the rise of Ethereum. This has become the new standard for non-monetary blockchain-application. The Ethereum-Blockchain, in its short history, has became host to an incredible amount of token, shares and smart contracts, which have been extensively used to crowdfund projects. Many things that are out of reach for other blockchains become possible with Ethereum (http://blockgeeks.com/guides/what-is-ethereum/). For instance, you can create complex self-executing Smart Contracts which become the base of Decentralized Autonomous Organizations (DAO, or you can build token which regularly pays out something when some conditions are met. Many more things are possible, more than you can even imagine.
However, Ethereum (http://blockgeeks.com/guides/what-is-ethereum/) has few downsides. One is part of its design – its openness and complexity. As a series of attack in autumn 2016 demonstrated, this can become the entry point for many attacks. Also, the future of Ethereum is unclear and it is not clear by knowing if the developers will be successful in transforming the blockchain to Proof of Stake. The token economics of Ethereum beg questions to the long-term security of the network, and it is not said that Ethereum will solve the scalability issues. All these things aside, Ethereum is definitely the most interesting new public blockchain.
Private and Closed Blockchains
It might be a condition for a blockchain-currency to be open and transparent. However, this doesn’t need to be a condition for a blockchain itself. Vitalik Buterin, a founder of Ethereum, writes (https://blog.ethereum.org/2015/08/07/on-public-and-private-blockchains/):
Essentially, instead of having a fully public and uncontrolled network and state machine secured by crypto economics (e.g. PoW, PoS), it is also possible to create a system where access permissions are more tightly controlled. Those permissions should also have rights to modify or even read the blockchain state restricted to a couple of users, while still maintaining many kinds of partial guarantees of authenticity and decentralization that blockchains provide.
What does it mean for a blockchain to be open and permissionless? It means that the system’s capability to scale is as low as the capability of its weakest node and that the privacy on a blockchain is seriously decreased. Both are attributes that can make a blockchain totally unusable for big companies, as these have to have a significant degree of the two scalabilities as privacy.
So some came up with the idea that a blockchain that doesn’t comply with these conditions can be built. You can build a blockchain where the whole history of the ledger is hidden from the public, and you can also build a blockchain where the process to find consensus is a permission and restricted on a consortium of trusted nodes.
There are many examples of attempts to bulid such kind of private blockchain, and doing this with sidechains is one approach. For example, to increase the privacy of transactions and to implement Smart Contract applications, Rootstock and Blockstream want to use closed and federated sidechains to overcome limitations of public blockchains. Lisk is the cryptocurrency built for smart contract sidechains. This cryptocurrency also enables the creation of private chains.
However, other entities build totally new blockchains. As of now, there is a confusing variety of private and permission blockchains, which is difficult to overview. Also, nearly no one of it is ready for production. Other than with cryptocurrency-blockchains there is no standard, no leading blockchain you can rely upon. Also, there is no token that is traded on the market and whose price serves as an indicator of its popularity.
R3 developed Corda. This is a Blockchain specifically designed for the financial obligations banks have with each other. Richard Gendal Brown is its architect, and he writes:
Corda is a distributed ledger platform designed from the ground up to record, manage and synchronize financial agreements between regulated financial institutions and this platform is greatly inspired by and captures the benefits of blockchain systems, without the design choices that make blockchains inappropriate for many banking scenarios.
Precisely: Corda has no globally sharing of data, and its consensus mechanism is tailored for its purposes. It only allows banks and regulators to participate.
Ethereum Enterprise (http://blockgeeks.com/enterprise-ethereum/) is a project of several actors in the Ethereum space and outside. It aims to create a closed version of Ethereum that serves the needs of enterprises. However, there are many unknown detail about this project. Ethereum Enterprise (http://blockgeeks.com/enterprise-ethereum/) should create the privacy, security, and scalability which the public Ethereum can’t provide. Also, its roadmap should follow the roadmap of the public Ethereum, and it should stay compatible and perhaps interoperable with it.
Tech Company Max builds Eris, a blockchain framework, and Eris is used for example by every ledger to record the history of diamond certificates. Eris enables companies to build, run and host their own blockchain with different smart contract application. Eris is a blockchain with features like Ethereum, but permission and closed. This means that it is more or less what Ethereum Enterprise aims to become.
In cooperation with companies like IBM and Intel, the Hyperledger project around the Linux Foundation developed several Business Blockchain Frameworks. Precisely it is the private Blockchain projects Iroha, Fabric, and Sawtooth Lake, and these three Blockchains are still in incubation and neither is tested nor used. However, they represent different approaches to create new kinds of Blockchains designed for different non-currency use-cases.
The company Axoni provides Blockchain solutions for financial markets, and it promises an advanced smart contract, high throughput, and a private data management with its private Blockchains. World leading clearing house DTCC is one of the first and most prominent clients of Axoni. It aims to improve the post-trade settlement of derivates using Axoni’s blockchain solution.
Consultant company Accenture suggested a blockchain project in which the use of the so-called Chameleon hash enables an administrator to edit the blockchain in a way that every participant can see that there something has been edited, which could enable interesting applications. This is one of the most interesting private blockchain projects. However, it is not known that it went beyond the stage of a proposal.
BigChainDB by German startup Ascribe is a mix of distributed databases and Blockchain technology and it aims to mix both technologies and enable a private setup between trusted parties to combine the immutability and security of a blockchain with the scalability and searchability of distributed databases. Trent McConaghy, a founder of BigChainDB, explains: BigChainCB is for individuals who want a scalable, queryable database with blockchain features.
By now, none of these private blockchain projects did gain any important traction, but this doesn’t change the fact that they promise to become an interesting alternative to public blockchains. This can serve the needs of companies. In the end, blockchains will not and should not be assessed by single properties. However, by how well the complete set of attributes they represent serves a precise purpose.
Blockchain is without a doubt one of the most talked about technologies in the world at present. You may have noticed the word “blockchain” touted as the wave of the future if you’ve been skimming the financial news over the past few months.
Companies could use blockchain technology to help keep track of their supply chain, such as how imported goods go from a manufacturing plant to being shipped halfway across the globe to landing in your local mall, or how food goes from farm to grocery store. In theory, this technology could help you book goods or services without going through a central booking agent.
The point is that the potential uses for this technology are vast. However, Blockchain is still probably a couple of years away from having a real, everyday impact on your life. With companies like IBM and Microsoft working hard to develop the technology, I predict that more and more industries will find ways to put it to good use in the very near future.