The value of Blockchain for business by Pablo Junco ⛓️?
Three years ago, I decided to write an article called “Blockchain as a service, helping to create confidence on digital transactions”. As it has been a long time since the article was published, and as a special request from one of our customers, I’ve decided to write an update about the subject.
Blockchain is still revolutionizing the way organizations think about the information exchange of their most valuable data, the compliance and sharing of this data. When we speak about private blockchain networks without waving the privacy requirements.
Big corporations like Starbucks, Singapore Airlines and Microsoft (XBOX) are using blockchain as a common data layer to enable new kinds of entrepreneurial applications, allowing increased efficiency, reduction in costs, increased agility and the reduction of fraud.
But what exactly is Blockchain?
Blockchain is a transparent system where users or systems of member organizations of a consortium can have a secure and distributed accounting ledger of the operations carried out among them.
The capabilities of blockchain technology are closely related to its advantages:
Security: The existing data on the ledger is always encrypted with strong cryptographic algorithms and signed with the digital certificate of the person, organization or device that registered the information.
Reliance: In the operations, to perform transactions like notes of the records from asset transactions or certificates issuance.
Note: An example of the record from assets transactions might be the in/out from hydrocarbon (gas, oil, products, etc.) in the different point of the supply chain (tax mediation bridge, storage tanks, pipelines, tank trailers, etc.)
Transparency: Transactions are made with the knowledge that each of the organizations participating in the network and all have the possibility to participate in them.
Immutability: The records are recorded and stored permanently, without the possibility of modification and with the possibility of consulting the transaction history (including the digital signature of the person who entered the information).
Disintermediation: eliminates the need for a central control authority to build trust (eg managing transactions or maintaining centralized records).
While it is true that blockchain became popular thanks to Bitcoin as a virtual currency (the so-called “Killer App”), both public institutions and large companies do not feel safe addressing projects using public networks. The projects led by these organizations are based on the so-called business blockchain.
More than the 80% of the market share from accounting books, categorized as entrepreneurial blockchain is covered by Hyperledger Fabric, Corda R3 and Quorum.
Since most of the projects that we see progress to productive environments are based in Quorum, I’ve decided to focus this article in that kind of accounting book.
What is Quorum?
Quorum is based on the Ethereum code (similar to the case of Redhat is an instance of LINUX), is a product of the Ethereum Business Alliance (EEA) and has become an extremely successful business platform as it provides greater privacy, scalability and security to a private blockchain network.
The EEA was launch in February 2017 and amongst the founders are organizations such as JP Morgan, BBVA, Santander, Microsoft, Intel and MasterCard. Today, there are more than 500 members and a developer’s community with more than 3,000 people.
Why the organizations choose Quorum?
To my knowledge because it is implemented on the Ethereum protocol, and provides the following additional benefits:
- Open source managed and support by the developer’s community with more than 23 000 code repositories related to blockchain with a high ratio of contributions. (401 000 commits)
- The biggest developer’s community with smart contracts (Solidity language) in the world (more than 250 000)
- Tested solutions in a public network that has more than 806 000 nodes.
- Quorum allows private transactions between the parties by adding privacy in the network nodes. That means that all the movements are not visible to all the nodes connected. The data of the private transactions never reach the nodes that do not participate. For this data blockchain communication is not used, but rather a point-to-point network is used that works alongside the blockchain and allows data to be sent one node to another, (provided by the Constellation Network). This data is verified on the blockchain through its hashes, but the data is never sent over the “open” network.
- Quorum has a GPL / LGPL license (similar to Ethereum) that ensures that the platform is free perpetually.
- Quorum is fast and able to process hundreds of transactions per second.
- Possibility of using popular OSS tools from the developer community (eg Truffle, Remix, and Geth), and those driven by Microsoft (eg Azure Blockchain Developer Kit)
Additionally, Microsoft has a strategic alliance with JP Morgan that is allows the improvement of a group of open source tools from the Quorum’s Blockchain. This is being very well received by the organizations and has driven the development of the industries such manufacturing, oil & gas, supply chain and bank (especially related to external trade and trade finance).
Consensus, the secret ingredient
Consensus is one of the key pieces in any blockchain solution since it is the mechanism by which, the participants of a transaction agree on a series of facts they have to comply to be admitted to a chain. In blockchain language, consensus means that several nodes agree on the same information.
Unlike a public network in a private blockchain, a majority consensus is not required and it is enough that only the parties involved intervene according to the statute or contract they have signed.
Consensus with Quorum
Quorum allows organizations to select the consensus algorithm that best suits their business needs and technical requirements of the blockchain network.
A common recommendation is the use of the consensus algorithm called RAFT, which, similar to the Proof of Stake (PoS), does not require the calculation of a hash and validates blocks / transactions in less than 0.5 seconds. RAFT is an open source consensus algorithm that is designed to be easy to understand and provide a democratic model of consensus based voting.
Organizations or users (which we will call “customers”) usually interact with a server, which in the case of blockchain, with replicas (backup type) on other servers. When RAFT is used, only the elected leader can respond to the client. All other servers synchronize with the leading server.
When we use RAFT, three types of nodes intervene to obtain consensus:
Leader: Is a server chosen as a leader that can interact with the client, it will be a maximum number or just one (or any at the beginning). All the other servers are synchronized with it.
Follower: The follower nodes synchronize their copy of the data with the data from the leader after each time interval. In the case of the leader server not being available, one of the followers can ask a vote and become a leader.
Candidate: At the time of request a vote to choose the leading server, the servers can request votes from other servers. Therefore, they are called candidates when they have requested votes. Initially, all servers are in the Candidate state.
In normal conditions, a node can remain in just in one of the previous states. Just the leader can interact with the client; any request to the follower node will be redirected to the leader node. A candidate can ask for votes to become a leader, the follower just responds to the candidate or leader.
Reducing costs, risks and launch time
Although the degree of adoption of blockchain technology is growing monthly, organizations are having a hard time solving challenges such as the following:
- Looking for qualified professionals (also with experience in the entrepreneurial world)
- Their teams training
- Network administration and governance of it.
With the goal of helping organizations and consortiums to work with the business logic and the development of their entrepreneurial applications, in April 2019 Microsoft announced the availability of Azure Blockchain Services as a business managed for Blockchain.
Azure Blockchain Services in the new offer of platform as a services (PaaS) to supply the needed infrastructure for the allowed network of blockchain. Thus, the blockchain will be managed and operated by Microsoft (*) which means a cost optimization and risk reduction.
(*) Even tough, Microsoft work the blockchain network, the data access will be only provided to the organizations inside the network. Similarly, any service hosted by Microsoft Azure.
Azure Blockchain Services can be summarized in four fundamentals pillars:
- Managed and ready to use supporting the out-Parity Proof-of-Authority y Quorum. Soon they will add R3 Corda
- Optimization for transactions and cross organization oriented to solve the needs of the clients related to the allowed blockchain networks in a consortium model. Specifically, facilitate the ability to add new members to a consortium, and for members who receive invitations to join the network easily and without any additional configuration.
- Adapted to a developer’s environment: It follows the same principles of open source software (or OSS), and means that customers should not have to use a particular Blockchain specified by Microsoft, but rather ensure that Microsoft provides first-class support for blockchain technologies.
- Integration with Azure services for extensibility: Similar to how Azure Blockchain Workbench, Azure Blockchain Services orchestrates the implementation of several Azure services to provide an “out of the box” development platform for customers.
Written by: Pablo Junco, CTO at Microsoft LATAM