Photo by Karolina Grabowska from Pexels
Last week, we explained hashing and public key cryptography in digital signatures. We will discuss its application in blockchain at a later stage. Today we will discuss another important concept which is a critical aspect of blockchain architecture for maintaining the infrastructure and network functions. It is not blockchain specific, it is more human nature specific. Before I say what it is, let us answer a simple question.
Why do we all work or run a business? There are many different answers to this question - but for our discussion, let us group them into two reasons :
a. To add value to the society by providing value propositions to customers &
b. To make money in the process where customers are ready to pay for the value proposition
In our previous discussions, we saw that blockchains are
a. Decentralized
b. Run by nodes who are connected to each other through the internet &
c. The nodes agree through a consensus mechanism to support the network by carrying out the necessary functions based on their type (Refer week 11 for more details).
Question - why should the nodes put in any effort to maintain and carry on a blockchain? What is the incentive to do so? What do they get out of this?
As per wikipedia, incentive is defined as :
"something that motivates or drives one to do something or behave in a certain way".
There are two types of incentives that affect human decision making. These are
Intrinsic incentives - those that motivate a person to do something out of their own self-interest or desires, without any outside pressure or promised reward &
Extrinsic Incentives - Those that are motivated by rewards such as an increase in pay for achieving a certain result, or avoiding punishments such as disciplinary action or criticism as a result of not doing something (Source : Wikipedia).
Incentive design is a critical aspect in designing a blockchain so that the nodes stay motivated to maintain the network and help it grow to derive more value from the network.
Let us take the example of remittances in traditional finance. The parties involved are :
a. A customer who wants to remit funds to his or her family
b. An Institution or institutions which facilitates this transfer
The institution or institutions involved in facilitating this transfer collects fees or margins on each transaction which is their incentive to do business. Financial Institutions are also one of the the most regulated sectors in any economy and hence to avoid regulatory censure, they ensure that adequate controls are in place to avoid fraud or errors. Both the above are extrinsic incentives to ensure smooth functioning of the business.
Hence, any institution operates in a way in which each individual in these institutions makes choices that is best for them. These choices involve trade off between costs & benefits.
The stakeholders who hold a stake in the business of remittances also have an incentive to invest in the business to get the required return on their capital.
Before starting any business, the first question to ask is
a. Who are your customers?
b. What is the value proposition being offered?
c. What are the costs involved in providing the value proposition?
Depending on the answers to the above, what are the revenue streams that can be expected on the value proposition that is being offered. (There are several other factors to be considered as per the "Business Model Canvas" but for now let us restrict our discussion to the above factors).
The business models for blockchain are no different. The models need to consider or factor the above for the network to thrive and grow. The major difference is that (at the cost of repeating myself !!) there is no centralized authority to take the decision on
a. The type of incentives required to manage the platform,
b. The amount of those incentives &
c. The recipient of those incentives
So, to put it in simple language, somebody needs to decide on who gets what in a blockchain for the effort expended. Another ancillary question is - what is expended to maintain a blockchain network?
The work which is done by a centralized institution in traditional finance is distributed amongst the nodes in a blockchain. So who decides on this in a blockchain?
Through bitcoin blockchain, Satoshi Nakamoto introduced a way of agreeing on the contents of a database (consensus) without anyone being "in charge" of it and finding a way to compensate the nodes for helping make that database more valuable, without those people being on any official payroll or being a stakeholder.
How? - let us extract some relevant points from Satoshi Nakamoto's white paper on how he introduced the concepts of incentives in a blockchain :
By convention, the first transaction in a block is a special transaction that starts a new coin owned by the creator of a block. This adds an incentive for nodes to support the network, and provides a way to initially distribute coins into circulation, since there is no central authority to issue them.
The steady addition of a constant amount of new coins is analogous to gold miners expending resources to add gold to circulation. In our case, it is CPU time and electricity that is expended.
The incentive can also be funded with transaction fees. If the output value of a transaction is less than its input value, the difference is a transaction fee that is added to the incentive value of the block containing the transaction.
The incentives may help encourage nodes to stay honest. If a greedy attacker is able to assemble more CPU power than the honest nodes, he would have to choose between using it to defraud people by stealing back his payments, or using it to generate new coins.
He ought to find it more MORE PROFITABLE TO PLAY BY THE RULES, such rules that favor him with more new coins than everyone else combined, than to undermine the system and validity of his own wealth.
More on this next week!!