Security is one of the most important things when talking about cryptocurrencies and blockchain networks, the mechanisms to avoid attacks and ensure the invulnerability of the networks are very necessary and indispensable to guarantee the trust to the users in the transparency of the operations that are perform.
In the previous article entitled 51% attacks how do they work? We already mentioned some of the consequences of not implementing enough security mechanisms. If there is something that is difficult to control is the computational power of the miners that are part of the blockchain network, the work tests can help to reduce the risk of these attacks.
What is a work test?
A work test (PoW) is a consensus algorithm of the Blockchain network that is used to confirm transactions and add new blocks to the chains and is also used to avoid unwanted behavior of members of the blockchain such as attacks 51% of those we talked about earlier, denials of service (DoS) or spam.
This strategy is designed so that it is not so easy to solve for users or clients and very easy to verify on the servers side. In this sense, the work test (PoW) handles two types of protocols: the challenge-response protocol and the solution-verification protocol.
Challenge Protocol – Answer
It consists of an interactive type link that acts between the client and the server where the latter chooses a specific challenge depending on the type of test that has been chosen and the client must find an answer to this challenge or problem that has been raised.
When the client sends the solution that has been found (alone or in conjunction with a group of miners or nodes), the server is responsible for verifying that it corresponds with the correct answer. Being a challenge chosen by the server, the degree of difficulty of the same is adapted to the service load that exists at that moment then the work by the client would be ordered within the chain and its variance would be low.
Solution Protocol – Verification
Unlike the previous case of the challenge-response protocol, in this case no link is used but rather it is a self-imposed challenge that must be raised before the client can find a solution. The function of the server in this case is not only to check the response of the client but also that the chosen challenge is the correct one. In most cases these challenges are chosen in a random and iterative way, so it is very difficult to find a solution.
Functions used for PoW protocols
Mainly there are two types of mathematical functions that are used for the PoW protocols: the CPU bound that leave all the calculation power at the speed of the processor in which it is running and the Memory bound, where the power will correspond to the speed access to the main memory of the computer.
Another thing that corresponds to the PoW are the known shortcut computations that allow those participants of the blockchain that handle some type of secret information such as a private key, can access that service using a minimum workload. An example could be that the owner of a mailing list can send messages to all members of the blockchain without having to incur high costs.
What are the mathematical calculations used in the PoW?
This is important to know, because it is not about simple problems, on the contrary, it is something that requires a great power of calculation to be able to be solved. In this sense, 3 types of basic problems can be identified: the hash function, which is an operation in which the input must be found knowing the output.
The other two types of calculations that are performed are the factorization of integers, the same factorization process that we use in traditional mathematics and the guided puzzle protocol that is presented when the server has the suspicion that he may be the victim of an attack DoS, and in that case it establishes a defined order for calculating the hash functions of some nodes.
What do you think about this topic? Did you know of the existence of work tests in the blockchain network?
If you want to receive more information about buying and selling cryptocurrencies you can contact us or write your query in the bottom part (comments section).
Image of geralt via Pixabay.com under the creative commons license.