Microsoft has been building an Ethereum implementation on its cloud computing platform Azure and recently released an alternative consensus mechanism using Proof of Authority that does away with the energy consuming Proof of Work used by most blockchains in exchange for needing to trust the validators.
The ‘Blockchain as a Service’ (BaaS) offering was built to allow Microsoft’s primarily enterprise clients to deploy private or semi-public blockchains on Microsoft’s cloud infrastructure and allows for quick spin ups of distributed applications (dApps).
With the latest update, those clients can now choose to utilize the Proof of Authority consensus method for those dApps which will do away with the computational costs and energy use required to validate transactions using Proof of Work.
Proof of Authority vs Proof of Work
The Proof of Authority consensus method isn’t something unique to the blockchain applications running on Azure. The same consensus method is used most notably on VeChain, which is a blockchain ecosystem for companies to share data across supply chains.
The primary difference between Proof of Authority and Proof of Work is based on trust.
Part of the premise of the Proof of Work consensus method used by both Bitcoin and Ethereum is to allow users to transact with each other without the need to trust one another or trust any third party processing the transaction. The Proof of Work method avoids the need for trust because validators (miners) must spend money on the electricity and equipment needed to solve a cryptographic problem and must compete with others to get rewarded in ‘mined’ coins.
If a miner is dishonest and attempts to alter transactions in their favour, their competition won’t accept their validation of a transaction and they will in the end lose out on their rewards and whatever they were trying to achieve in altering the transaction. This method works provided there isn’t a single entity that controls more than 51% of the network.
Proof of Authority avoids some of this complication by starting with the premise that users must trust the validators as authorities who are able to verify the legitimacy of a transaction. It’s similar to the trust that people put into their banks, credit cards, and companies in transactions they do every day. It creates centralized authorities who are allowed to determine what nodes (computers in the network) process and validate transactions on the blockchain.
The Proof of Authority method has two main advantages over Proof of Work:
- It avoids the need for spending computational power and thus electricity on mining
- Since there is no mining, transactions can be verified much much faster, which makes it more scalable
However, there are also two significant disadvantages to Proof of Authority:
- The ‘authority’ now has control over what constitutes a valid transaction and if it chooses to do so could censor transactions
- The disincentive for an authority to alter transactions is to protect their reputation, but if the economic benefit of cheating is sufficient, then it is possible that an authority cheats and destroys the trust in the entire system
Microsoft’s Play for dApps
This added feature is a way to incentivize more Azure customers to build up dApps on the platform since they can utilize the power of the blockchain without the need for them or their users to pay for the costs of Proof of Work.
The update also comes with some additional features aimed to ease companies’ transition into the world of dApps. Notably, developers now have the ability to use Parity WebAssembly (WASM) which allows for writing smart contracts in more widely used programming languages such as C and C++.
Microsoft isn’t trying to compete with the other public dApp blockchains like Ethereum or EOS, rather they’re trying to attract corporate customers looking to leverage blockchain technology in private networks. The gist is summarized nicely in the initial announcement of the offering:
Along with the recent acquisition of crypto and blockchain developer code warehouse of choice, Github, Microsoft is clearly trying to position itself among those building up the next generation of the internet.