Successful Collaboration Software using Conclave

In this post, you will learn how a tech company used Conclave and Corda to build 180Protocol to enable secure multi-party computation.

What is 180Protocol?

180Protocol is building collaboration software for the next generation of the enterprise. Their goal is to create a world with connected enterprises, powered by the exchange of data. It is comprised of the following components:

  • Aggregator SDK:– A developer toolkit that includes a set of configurable workflows to coordinate multi-party computations on private and public data and a data analytics interface built upon a trusted execution environment (TEE) that can take flexible inputs from Data Providers and produce outputs for Data Consumers.

  • 180Dashboard: A front-end application that allows Data Providers and Data Consumers to keep track of shared data and rewards for each data aggregation.

  • Codaptor: A middleware that connects to the Corda RPC and generates OpenAPI bindings automatically for any CorDapp.

Confidential applications built with 180Protocol can leverage the power of DLT via R3 Corda and the security of confidential computing via R3 Conclave, alongside other core technologies.

Since 180Protocol allows enterprises to collaborate securely, they require an audit and trust layer to record data sharing workflows and resulting rewards. 180Protocol utilizes R3 Corda to fulfill this requirement.

They also build a toolkit to deploy application logic and communicate securely with the TEE, also called an enclave. R3 Conclave is a good fit due to its secure and simple enclave messaging API called Mail, the ability to deploy native JVM code into the enclave. Other features like a local secure persistent file store, or its Key Derivation Service (KDS) also added to the appeal of Conclave as their first enclave messaging and deployment layer.

Secure Workflows Powered by Enclaves

They have utilized Conclave as a foundational technology for configurable multi-party computations (MPC). Several key features are worth highlighting:

  • Dynamic serialization: 180Protocol supports dynamic serialization for getting data in and out of the enclave. Dynamic serialization allows configuring input/output data structures to fit any use case. Developers can simply override the enclave data interface with rewards and output calculations logic. There is no need to rewrite any core workflows. We achieved this by abstracting away any data structure specifics in our workflows and using Apache Avro as the serialization mechanism to get data in and out of the enclave.

  • Mail API: They utilize the Conclave Mail API to manage secure communication between the clients and the enclave. Mail allows easy encryption and decryption of private messages between clients and the enclave, enabling the security of the sensitive data in transit and only allowing the enclave to view sensitive data.

  • Rewards engine:180Protocol has developed a proprietary rewards engine that runs inside the enclave, evaluating the data shared by each data provider during data aggregation workflows. Provider data is decrypted only inside the enclave and scored on factors including completeness, uniqueness, the amount provided, and update frequency. This score is recorded on the Corda ledger for each provider and can be redeemed for rewards.

  • Secure workflows: 180Protocol Aggregator SDK ships with a consumer aggregation workflow that allows data consumers to pull pre-approved data from data providers in the union. Developers simply need to configure input/output data structures and can start using our SDK with minimal configurations. All enclave specific actions like attestation, key management, encryption, and decryption are handled by our workflows making enclave development easy.

  • Modularity for extension: 180Protocol is a modular toolkit for developers to build data unions. As described earlier, 180Protocol is composed of the Aggregator SDK, the Codaptor, and the 180Dashboard. These can be decoupled and used by developers independently as per their unique needs. Further, the Aggregator SDK is modularized and composed of enclave, workflow, and contracts modules – each of which can be extended by developers to suit their unique use cases.

Successful story and blog post by Parth Shukla from a technology company finding solutions with the use of Corda and Conclave. They also invite developers and enterprises to go to their GitHub page and utilize their SDKs.

Visit your Developer platform, and if you have any questions or concerns, please reach us at: devrel@r3.com