Nowadays, there are a lot of people talking about blockchain due to the financial movements of cryptocurrencies, but what does blockchain as a technology offer us?
The word itself gives us two important details: blocks and chains. That was easy, wasn’t it?
The information is grouped and stored in a package with an identifier. This package is known as a block, and its identifier is known as a block number. The first block, known as the genesis block, is the one that starts the chain.
When a new block is created, it assigns a block number and it is linked to the previous block by a key data known as the block hash. This hash is the result of encrypting the combination of the previous block hash with the information from the block itself. That is why it is difficult to alter blocks that have already been confirmed in the chain: if a block is modified, all subsequent blocks must also be modified.
The process of generating the hash, committing and writing the blocks to the chain is known as mining. This topic became quite popular in recent years because of the profits it generated for the miners. (Did you know that the profits can change: Bitcoin has a Having event every four years! Read more about it here)
So, once data is stored on the blockchain, is it impossible to alter it? This is not entirely the case. There is not a single way of implementing a blockchain: there are different types of blockchains, and each has its advantages and disadvantages. Let’s highlight some:
Considering privacy, there are two types: public blockchains (like Bitcoin) are those that can be used by any user and all of the stored information is accessible to everyone, whereas private blockchains are those that are only visible in a specific environment, such as a company or an organization. Only members of this group can access what is stored. Which is better? It depends. Public blockchains offer greater confidence in the stored data since altering it is extremely difficult and expensive. The cost of the project depends on how many transactions are going to be carried out, since a fee is paid for each one. Using private blockchain you can avoid the transaction fee, but the confidence is lower since there are fewer nodes, making it easier to alter the data.
Considering who can confirm transactions in the chain, we can distinguish the permissioned and the not permissioned blockchain types. The permissioned blockchains are those in which only authorized users are able to be auditors or miners. For example, there might be educational content storage on blockchain controlled by universities around the world. In other words, anyone could propose content and access it, but only authorized users (universities) can accept or reject that content. The not permissioned blockchains are those in which any user in the environment can be miner and confirm transactions. The latter option is popular in public projects as cryptocurrencies and collectibles, but the first is used mostly in enterprise solutions as it allows to have controlled and trusted miners.
So, when should my project implement blockchain? Blockchain makes sense when you want to decentralize and empower the user: they cannot only make transactions, but they are also owners of all the information. This solves serious trust issues that occur in many current use cases such as in voting processes or legal contracts. Can you imagine a future where the economy is managed by users and not by banks or states? Well that’s happening, and it’s called Bitcoin.