Corda 4.7 Beta — our winter release

December 08, 2020

Corda 4.7 Beta — our winter release

Photo by Hans-Jurgen Mager

We are (almost) through 2020, and our team has been working hard on new enhancements to ease node operations and support existing production deployments to scale over time.

As we are finishing off the release, you can get your hands on these new features with the beta. Please contact our support team for access at support@r3.com.

This quarter our focus has been across three long term optimizations:

  • Archiving
  • Transaction Breaks
  • Notary Burst Handling

Archiving

As production CorDapps grow in size and maturity, nodes accumulate more and more ledger related data over their lifecycle. Some longer-term considerations such as cost and performance over an increasing dataset come into focus.

In Corda Enterprise 4.7 — we are introducing a new tool that offers node operators the ability to identify and safely remove data from the ledger that is no longer needed — in a safe and reversible way.

This tool adds to the suite of enterprise utilities that now support the Corda ledger — from the distributed integrity check, collaborative disaster recovery (introduced earlier this year) and now archiving functionalities.

Transaction Breaks

Secondly, we are introducing better support for a developer pattern known as “Chain snipping.” Today, a CorDapp developer can write custom logic to allow a state to periodically be exited then reissued onto the ledger in separate transactions. A developer might want to do this for privacy reasons or to optimize performance. While this is already possible today — it relies on the developer foresight in anticipating performance issues when chains grow to a certain size and its implementation varies.

In Corda 4.7, we are introducing platform support for creating breaks in transaction chains. State owners can request a break via a flow and comes with platform guarantees that states aren’t removed without a replacement or duplicate. Providing the same benefits in terms of privacy and performance as chain snipping, but in a way that addresses known sharp edges, and imposes minimal or zero development costs on the CorDapp developer.

Notary Burst Handling

Finally, we have enhanced the way the notary handles traffic. We built the notary to withstand an extremely heavy amount of traffic and perform its duties in an orderly fashion. It does so via a back-pressure mechanism that handles the queue of requests and ensures that any node retries due to a timeout (typical in periods of high traffic) are a function of the notary capacity.

Ensuring nodes will get the guarantee of seeing through request and retry if necessary but also avoids artificially increasing the queue in the notary with unnecessary retries, thus reducing its efficacy.

In Corda Enterprise 4.7, we have improved this mechanism to be more accurate and responsive under heavy load conditions, resulting in fewer retries and better end-user performance from the node point of view.

Corda Gets a Face — New User Interfaces

Yes! Our first attempt at simplifying the operations of a Corda node and Corda Network via a User Interface (UI) is here. In this first release, we are delivering the initial preview of UIs on components of the platform and start with a developer preview that is narrowly focused on simplifying some key operations of a node and a network.

On the node management console, we have focused on the management of flows — offering operators the ability to monitor and filter checkpoints and safely act on that information from the UI. We have also looked at node lifecycle and configuration management.

We built on the previous releases of Corda Enterprise Network Manager that introduced an interface to manage user-permissioning — expanding support for CSR/CRR lifecycle monitoring, Flag day management (changing a network parameter — e.g., introducing a new notary) and configuration management.

This is just a preview of what is to come — we are committed to simplifying our products’ user experience and are keen to get these features out to the community to hear your feedback!

More in the box

As usual — in addition to the major areas of focus above we have included some improvements you might like, these include:

  • HSM APIs: We are introducing an HSM library with its own API that external tooling developers can use to expand Corda Enterprise Hardware Security Module support.
  • More HSMs support Confidential identity: We are expanding our key support matrix to our existing HSM vendors, Corda Enterprise now provides HSM support for securely storing Confidential Identity keys and Account keys across Securosys Primus X, AWS CloudHSM, Azure Key Valut, nCipher and Future X HSMs.
  • Corda Enterprise Network Manager supports AAD: We have introduced support for Azure Active Directory as an SSO for the CENM RBAC service.
  • Business Network Extension: We are introducing enhancements to the Business Network extension to allow for access control group reporting, batch onboarding, membership group querying and a way to log and report actions to membership attestations.

Look out for the generally available release in mid-December! And as always, let us know what you like and what you would like to see in future Corda releases by emailing us at productfeedback@r3.com.

— Gabe Farei a Lead Product Manager at R3, an enterprise blockchain software firm working with a global ecosystem of more than 350 participants across multiple industries from both the private and public sectors to develop on Corda, its open-source blockchain platform, and Corda Enterprise, a commercial version of Corda for enterprise usage.


Corda 4.7 Beta — our winter release was originally published in Corda on Medium, where people are continuing the conversation by highlighting and responding to this story.