“Distributed ledger technology has the power to do for the inter-company communications, what ERP (Enterprise Resource Planning) systems did for internal company communications – allowing all parts to stay in sync”
- Paul Brody, EY @ EY Blockchain Global
In the last several years, a lot of companies have been playing around with blockchain – from small niche startups to giant corporations. When it comes to enterprises, blockchain has been met with skepticism, and maybe rightfully so.
Companies have been hesitant to introduce blockchain to their operations – they risk leaking sensitive data, require sophisticated setup, and require joining a common network, to even yield the first meaningful results. Although quite a lot of privacy and user experience advancements, blockchain is still a hard sell to the enterprise.
The Baseline Protocol is an open-source initiative that combines the power of cryptography, peer-to-peer networking, and DLT in order to allow enterprises to deliver secure and private business processes at a low cost. The devil is in the details though, so in this article, we will clear out the following aspects of The Baseline Protocol:
The Baseline Protocol is an open-source initiative aimed at the synchronization of private business processes, like document exchange, via a public blockchain. It leverages cryptography techniques like zero-knowledge proofs and signatures, peer-to-peer messaging protocols, and the blockchain to achieve its goals.
On one hand, it is designed with confidentiality, privacy, and data security in mind. The mixture of technologies is aligned in such a way that none of your sensitive data is leaked. This data stays safely with you and your counter-parties. Outsiders looking in will not know what process is being executed, who are the actors, or what goods are exchanged.
On the other hand, the protocol is designed with complex interactions in mind. Inter-company business processes involve many stops and checks and are never straightforward. The protocol will allow you to describe and accommodate your business process however complex it is.
In this section, we will examine several alternatives to Baseline Protocol and will showcase how it compares to each of them.
The first alternative that comes to mind is using a centralised system to store the records of the communication and synchronization between the companies involved. Such a centralized solution will render one of the parties “ruling” over the others and having unfair access to all the data. Although a neutral third party can be used, this service is very costly and gives yet another actor access to sensitive data.
A second approach would be to develop a custom solution for each party of the exchange and connect them together. This solution will be costly to develop and will be difficult to scale when you need to accommodate new players. The new players will need to develop their own custom solution to join the network.
The third solution would be the usage of an access restricted enterprise blockchain network. Although this offers the desired decentralization and unification required, it hardly meets the highest standards for security, privacy, and performance – at the end of the day, your counterparty nodes are storing your data.
The Baseline protocol uses an always-on public blockchain network (currently Ethereum main net) to keep the parties synchronized and following the rules. Through the use of cryptography, the sensitive data never leaves your internal storage place, while both sides are guaranteed to follow the rules through the use of zero-knowledge proofs. The data exchange only happens in an encrypted peer-to-peer manner on a need-to-know basis. This way, The Baseline Protocol allows you to have the security of your data while still being sure that all the parties involved in the process are always in sync.
Radish34 is the reference use-case proof of concept for the Baseline Protocol. It showcases how document exchange and synchronization can happen in the context of a supply chain. Because the target audience is high scale enterprises, the end solution does not compromise information security practices.
The POC governs the process of procurement in the following steps:
• Request for Quotation – Buyers request a quote from a given supplier outlining their specific needs (items, quantities, dates, etc). The supplier receives and reviews the RFQ.
• Proposal – The supplier responds to the request providing the terms they can offer. The buyer reviews the Proposal.
• Contract – The buyer uses the terms of the proposal to generate and sign a contract. The supplier reviews the contract and counter-signs. A cryptographical proof of the contract and its signatures are sent to the blockchain in the form of a zero-knowledge artifact. The blockchain checks if all the requirements are met.
• Purchase Order – The buyer uses the terms in the contract and sends a purchase order to the supplier. The supplier receives and reviews the purchase order.
This process can be used to connect two companies regardless of the sophistication of their systems. Here is what the process would look like with Julia – using Microsoft Dynamics 365 and Todd using Google Spreadsheets.
The Baseline Protocol can be split into several distinct phases.
The first phase is a peer-to-peer exchange of documents. In this phase, the parties interacting secretly exchange the documents that will govern their further work. In the Radish34 use case, these are the RFQ and Proposal.
The second phase is called “Baselining a document”. In this phase, a proof is generated that the business process was followed and is sent to the blockchain. In order for this information to be private, the terms of the business process are written into a zero-knowledge cryptographical construct called a circuit. Imagine the circuit as the process definition in code.
When a document is being baselined, a zero-knowledge proof is generated and fed into the business process circuit. The zero-knowledge proof gives away no data, but through the circuit, one can be sure that the business process rules were followed.
In the case of agreeing on a contract, the business process rules are simple – “have the two parties signed.” Software developers can design much more complex rules and circuits accommodating for more complex scenarios. If the proof successfully passes all the checks, it is stored on the blockchain as an immutable reference point between the two companies.
Under the hood, Radish34 uses Ethereum Mainnet as a public always-on blockchain network. All the parties use GraphQL APIs and MongoDB as their own “ERP” while Whisper is used for peer-to-peer communication. Zokrates is used for the generation of the Zero-knowledge circuits and proofs. As every participant will have a specific set of technologies, different technologies can be used to achieve the same results.
In the following video you can see the process of baselining the communication between a large manufacturer being represented by their Microsoft Dynamics 365 ERP and a smaller niche vendor being represented by their Google Sheet.
The Baseline Protocol was started as POC between EY Blockchain, Consensys, and Microsoft. In March 2020, the effort was open-sourced and launched as an OASIS project enabling other collaborators to join in. Since then, several new maintainers like LimeChain and Unibright have been added. The work is openly governed and the code stays in the Baseline Protocol Github repository.
Level up your reading game by joining Hacker Noon now!