Microsoft recently announced the introduction of the Coco (or Confidential Consortium) Framework. A ‘first of its kind innovation’ as they named it, designed to work with any ledger or operating system. CoCo is a blockchain protocol technology aimed to make it easier to build enterprise networks quicker and more secure using any distributed ledger.

The ultimate goal is to facilitate and advance the adoption of distributed ledger (DLT) and blockchain technology in the enterprise sector, by removing existing complexities surrounding the current blockchain protocols. Though other projects in the DLT and blockchain sphere are working toward a similar goal, Microsoft’s CoCo Framework for enterprise blockchain networks is different. It may very well prove to become a game changer.

What’s the issue?

Corporate interest in blockchains is firmly growing. Embracing this innovative technology however remains a big hurdle for most enterprises, as there is no unified approach in this regard. As a result they have difficulties integrating in into their systems.

There are many different blockchains, but major blockchains are not designed to be interoperable with one another. As enterprises look to apply blockchain technology to meet their business needs, they’ve come to realize that many existing blockchain protocols fail to meet key business requirements. The problem is that most blockchain protocols today require complex development techniques to meet the operational and security needs of enterprises.

Issues like performance, confidentiality of data, governance and required processing power are still major stumbling blocks for using blockchains. One of the other key enterprise blockchain problems is that of access controls for transactions

“The limited scalability, lack of confidentiality between blockchain-transaction participants, and shortage of simple, centralized governance has held back blockchain's adoption by more enterprise customers” Mark Russinovich CTO at Microsoft Zure.



What is the Coco Framework?

The Coco Framework is an open-source Ethereum-based protocol, designed to provide high-scale and confidential blockchain networks for enterprise purposes. It should be seen as the foundation of blockchain for the enterprise.

It is designed to work with any ledger or operating system. It can connect existing blockchains with one another. The Framework is targeted especially for consortiums where nodes and actors can be controlled.

“We have listened to the needs of our customers and the blockchain community and are bringing foundational functionality with the Coco Framework.” Mark Russinovich, chief technology officer of Azure at Microsoft



The Coco Framework is built to address some of the current limitations of enterprise blockchain. It is meant to reduce the complexity currently associated with blockchain protocol technology and make it easier for enterprises to adopt blockchain technology. This by increasing transaction speeds, offering confidentiality and simplify governance decisions. The ultimate goal is to boost widespread adoption, particularly among enterprises, of blockchain technology.

"We're going to remove a lot of barriers, the scalability barrier, the privacy barrier and the security barriers, so now companies that are building blockchain technologies can focus on what adds value to their business." Microsoft

“Coco presents an alternative approach to ledger construction, giving enterprises the scalability, distributed governance and enhanced confidentiality they need without sacrificing the inherent security and immutability they expect.” Mark Russinovich CTO at Microsoft Zure.

The CoCo Framework is not a decentralised solution in this regard as participants will still be able to exert a high degree of control over their blockchain. CoCo is more of a distributed ledger-oriented approach than a decentralised technology.

The design of the CoCo Framework

Microsoft is developing the CoCo Framework in cooperation with Intel, JP Morgan and Ethereum. The Coco platform is designed specifically for confidential consortiums, through the introduction of a trusted execution environment (TEE), advanced cryptography and innovative blockchain-focused consensus mechanisms “to open up new blockchain enabled scenarios across industries”.



The Coco Framework needs a trusted execution environment where nodes and actors are explicitly declared and controlled because it relies on shared trust between machines running modified blockchain software in order to avoid the need for transaction verification. With these TEEs a network of trusted enclaves can be build that all agree on the ledger and Coco code they are running. Because it’s an open framework, it can also support other compatible TEEs as they become available.



The idea is that enterprises may place their blockchain code in a trusted area, which is established through integrated tools such as Intel’s Software Guard Extensions (SGX) or Windows Virtual Secure Mode (VSM). These are hardware-based security technologies that the CoCo Framework uses to improve the throughput, efficiency and privacy of the blockchain.





Compatibility

The CoCo Framework is designed to integrate with a wide range of blockchains and distributed ledgers. It is meant to provide the infrastructural underpinnings for the growing number of such ledgers that are emerging from different vendors and groups. Although CoCo is not an actual ledger, it will help other companies with established blockchains to come together, link with each other and built large networks.

While the CoCo Framework is capable of being ‘powered’ by the Microsoft Azure cloud-computing offering, the Framework is open and will be compatible with any ledger protocol. It can be “run virtually” anywhere – from any cloud platform and/or on premises, and on any operating system and hypervisor that supports a compatible trusted environment (like Intel’s Software Guard Extensions and Windows Server’s Virtual Secure Mode).



“CoCo will be compatible, by design, with any ledger protocol and can operate in the cloud and on premises, on any operating system and hypervisor that supports a compatible TEE. We are building in this flexibility in part to allow the community to integrate CoCo with additional protocols, try it on other hardware and adapt it for enterprise scenarios we haven’t yet thought of” Mark Russinovich CTO at Microsoft Zure.



Participating ledgers

By providing these capabilities, Coco offers a trusted foundation with which existing blockchain protocols can be integrated to deliver complete, enterprise-ready ledger solutions, opening up broad, high scale scenarios across industries, and furthering blockchain's ability to digital transform business.



The Coco Framework will be integrated with a number of existing open-source blockchains and distributed ledgers. As of today, CoCo already supports 10 different ledgers. Initial ledger integration partners include names like Ethereum, R3 Corda, the Intel’s Hyperledger Sawtooth and JPMorgan's Quorum.

Microsoft has already begun integrating Ethereum into CoCo. And the others are expected to follow in the near future so that these could become accessible through the CoCo Framework as well.

"Microsoft's Coco Framework represents a breakthrough in achieving highly scalable, confidential, permissioned Ethereum or other blockchain networks that will be an important construct in the emerging world of variously interconnected blockchain systems. " - Joseph Lubin, Founder of ConsenSys

Problems to solve

Despite taking a more centralised approach there are many benefits to embracing the the CoCo Framework. When implemented into blockchain networks and processed in a trusted environment, allowing for a “simplified’ consensus mechanism” may solve the various privacy, speed and governance issues for commercial adoption by corporates. At the same time, ”they will not lack in security and immutability”, which are two of the driving factors behind blockchain technology as a whole.

According to the Coco Framework White Paper, these “enterprise-ready trusted blockchains networks” that all agree on the ledger and the CoCo code they are running, will deliver:

Throughput and latency approaching database speeds.

Richer, more flexible, business-specific confidentiality models.

Network policy management through distributed governance.

Support for non-deterministic transactions.

Reduced energy consumption.

Higher speed

A key feature of the CoCo Framework is its speed. Microsoft says that once integrated within a CoCo enabled trusted blockchain network could see much higher transaction throughput. By using that shared trust, it is possible for blockchain networks using the CoCo Framework to bypass transaction verification operations like those required by the current open source version of Ethereum. This will greatly increases the transaction speed.

They may handle more than 1,600 transactions per second on average in its present prototype setup, with low hundreds of milliseconds latency. That is on par with database speed. During a speed test, Coco achieved approximately 1,700 transactions per second using a private version of the Ethereum blockchain, compared to only a handful of transactions per second without the framework.



Easily managed data confidentiality

The CoCo Framework also promise to deliver more data confidentiality. CoCo adds a confidentiality layer on top of a ledger like Ethereum (or any other ledger, because the Framework is ledger-agnostic). It will as a result promote secure and confidential data management “without sacrifying perform”. The potential business confidentiality models are virtual limitless, according to Microsoft.

Coco could for instance be used to create permissioned access to a private version of Ethereum that only lets certain participants view certain purchase orders, while ensuring the order was accurate. “Adding data confidentiality without scarifying this improvement is what will enable us to lead the digital transformation we are envising with smart supply chain”.

Comprehensive governance

The Coco framework also features "a comprehensive, industry-first distributed governance model for blockchain networks that establishes a network constitution”.

This built-in governance model lets consortia members set up rules for voting on all terms and conditions of a network, including when members can be added or ejected. The new framework would also allow for arbitrary complexity in access controls, so companies could personalize visibility to their “heart’s content”.

When to start?

According to Microsoft, the company has now started exploring the CoCo Framework’s potential across different industries, such as retail, supply chain and financial services.

Microsoft plans to make the Coco Framework available as an open source software project by 2018. It will be posted to and available on Github.

“Microsoft will work with customers and partners, as well as the blockchain technical and business communities, to continue advancing foundational blockchain technology”.





CoCo as blockchain game changer?

A universal framework like CoCo capable of linking existing blockchains in one convenient solution may have some interesting ramifications. The solid and unified approach as well as the degree of flexibility offered by the CoCo Framework, could be the driving factor for enterprises to adopt a blockchain oriented approach in the coming years.

As this CoCo Framework could eliminate the existing barriers to blockchain technology it may bring blockchain to the main stream. Large corporates that now have trouble reaching privacy and security at scale could begin exploiting the opportunities that the blockchain has to offer.

As such the CoCo Framework could become a real game changer. Providing these foundational capabilities it may pave the way for “more complex, real-world blockchain scenarios across industries — like financial services, supply chain and logistics, healthcare and retail — further proving blockchain’s potential to digitally transform business.” Mark Russinovich CTO at Microsoft Zure.