The Blockchain technology has been appreciated for its ability to ensure the validation of any transaction on the Blockchain network without the need to centralize the process, thereby, maintaining data privacy while adhering to the most stringent data validation mechanisms. This is possible through a process called bitcoin mining. Mining is the process of adding a record of the transaction created to the Blockchain network’s public immutable record of past transactions (visualised as a chain of blocks).
The purpose of the blockchain is to serve as a confirmation mechanism to the remaining part of the network regarding the validity of the transaction having taken place. The nodes in the Bitcoin network use Blockchain to distinguish legitimate Bitcoin transactions from fraudulent attempts to re-spend coins that have already been spent elsewhere. The functionality of mining is due to the Proof-of-Work mechanism-a set-up that requires a non-negligible but feasible amount of effort in order to prevent malicious uses of computing power. Each block must have a Proof-of-Work embedded within it and should be attested by other bitcoin nodes to be considered valid. To maintain the number of blocks obtained each day by miners for avoiding exhaustion, mining is curated to constantly maintain an increasing level of difficulty. Hence, this leads to the common terminology of mining being described as a “resource-intensive” process with miners “wasting” a lot of energy and computing power throughout the activity.
To resolve this issue, a better protocol has been developed with its basis on training a machine learning model on the blockchain to make the process faster and significantly more efficient while retaining the utility of the computational model. The high-level working of the system is as follows- miners can create new coins after performing sincere ML training work. The clients involved in this, present the task and complete the payment to all the miners who contribute to training of the ML model as an incentive to encourage more genuine participation. The protocol can help inquiring parties to order, finish, and cross-check useful work in a distributed environment. This ensures a fair system in which malicious and deceitful activities are curbed through appropriate penalties and the legitimate contributors are rewarded.
The recently proposed Proof-of-Useful work, which is another mechanism for combating the excessive energy consumption in the current mining procedure, rudimentarily consists of the following mining components :
- Useful-work component- This component converts an uInput to an uOutput. As the name of the component suggests, this conversion should be beneficial for the nodes of the blockchain network. The useful work mechanism is constructed to process following inputs to outputs- The previous Block header is converted into Useful Nonce also referred to as uNonce and the Useful Input (uInput) is converted into Useful Output (uOutput).
- Proof-of-Work hashing component- While the mainstream Bitcoin Ethereum mining accepts any input Nonce at random for the Proof-of-Work hashing part of the system, the model of Proof-of-Useful-Work only allows for accredited uNonces as inputs to the Proof-of-Work hashing component.
The useful Work component should satisfy the following criteria:
- Conversion of the uInput provided to the uOutput given out as a useful service for public network nodes while maintaining the data privacy of individual nodes.
- Should, first, have a credible proof of the details of the useful computing steps which were executed to convert a uInput to a uOutput.
- Should, then, have a proof of the fact that the previous block header had been identified at the start of the useful work conversion from uInput to uOutput to maintain uniqueness.
- Both uNonce proofs should be separately verifiable by the miners of the blockchain network.
- Validation of the first proof should maintain the confidentiality of the uInput and uOutput.
The uNonce is produced by useful work done for generating it. Since the uNonce has a proof that the previous block header was identified at the beginning of the mining process and that useful work was executed, as mentioned in the above criteria, it helps to prevent before-hand mining of uNonces.The miner then provides the uNonce as an input to the Proof-of-Work mining algorithm. The network confirms the credibility of the newly created blocks only if the verified uNonce are in compliance to the aforesaid model rules and the Proof-of-Work mining numbers of foremost zeros.After the successful mining of a new block, other miners in the network can verify that an uNonce qualifies as input to mine a new block. A successful miner will get a block reward similar to that in the regular bitcoin incentive concept. This setup incentivises miners to set up both components, the useful work part as well as the Proof-of-Work hashing part.
Conclusion: These mechanisms are still in the initial stages of development and a solid mathematical base would prove to be a game-changer in terms of deeper understanding of how and why the model is good enough but needs substantial improvement for seamless execution.