Skip to content

Technical Strategy and Planning (WORK IN PROGRESS)

Richard Gendal Brown edited this page Jun 29, 2023 · 4 revisions

Overall Objectives

  • Create a venue for the open sharing of knowledge about the unique interoperability needs of regulated financial networks, both amongst such networks and with those building interoperability solutions
  • Encourage definition of industry standards that meet these users' needs, paying attention to the business and legal constraints they face as well as technical correctness and operability
  • Engage constructively with relevant communities and bodies implementing and defining interoperability standards to help ensure their work reflects these needs
  • Facilitate the adoption of these standards and approaches by underlying platforms. This can include providing a home for reference code where it does not exist elsewhere as well as helping maintainers of different platforms to coordinate for the purposes of interoperability testing, etc.
  • Maintain a focus on pragmatic approaches, grounded in real-life projects; avoid unnecessary theory, abstractions or complexity; when in doubt, use the industry’s need for a standardised, widely accepted and correct protocol for atomic (all or nothing) delivery-versus-payment of digital assets and cash between Corda- and EVM-based networks as a ‘north star’.
  • Dispel the perception that those building regulated DLT networks - financial institutions or platform vendors - are closed; demonstrate through our actions that we are open and collaborative; seek out likeminded organisations.

Important note: the objectives above can be achieved in a number of ways and so we deliberately do not have a clear view on what the final deliverables or outputs of Harmonia will be. Harmonia is a means to the ends listed above, not an end in itself

Work Streams

We envisage two parallel streams of work initially: awareness and community building, and execution against the objectives.

Awareness and Community Building

Awareness

There are many existing communities and groups with whom we desire to collaborate - interoperability projects, industry special interest groups, in-flight projects in need of interoperability, etc. Here, we list those whom we desire to meet in the coming weeks

  • Interoperability Projects (Offer to present on their calls, etc)
    • Hyperledger Cacti
    • Yui
    • EEA Cross-chain Interop Working Group
    • Soda?
  • Industry-specific groupings and consumers
    • Hyperledger Financial Markets Special Interest Group
    • Operators and users of regulated DLT networks
    • Who else?
  • Converse with the broader community where they meet
    • RLN, BIS groups, etc
    • Who else?

Community Building

The core purpose of Harmonia is to create a venue for the open sharing of knowledge about the unique interoperability needs of regulated financial networks. As such, our work will fall broadly into three groups: capturing the knowledge, including reconciling and synthesising multiple perspectives; sharing and communicating these insights with those whose projects can benefit from them; and fostering the development of code (samples, libraries, reference implementations) that can be used by others to accelerate their work.

At a high level, we will execute this work as follows

  • Capturing and synthesising knowledge
    • Making direct contributions to the documentation repo and encouraging others to do so
    • Actively editing, integrating and reconciling the contributed documentation
    • Running a series of ‘workshop’ calls where contentious issues or those requiring broader discussion are surfaced. See below for sample topics
  • Sharing knowledge
    • Blog posts
    • Presentations to other groups
    • Meetups?
  • Developing code

Work in Progress

  • R3
    • JVM implementation of Merkle-Patricia Trie
    • Second draft of white paper
  • Adhara
    • Clean-room implementation of solidity contracts
    • Write-up of what the contract is doing when it inspects the contents of a Corda transaction
    • Deterministic cancellation of a settlement… the ‘happy unhappy path'
  • Need a plan to bring the two pieces together… hackathon… include externals?

Immediate To-Do List

  • Review the above
  • Draft Contribution Guidelines
  • Draft roadmap
  • Agree ownership roles and responsibilities for the repo and Discord
  • Populate Issues list
  • Investigate CI/CD
  • Schedule regular technical team catch-up call
  • Write down plan to bring the two pieces together so we can demonstrate publicly end-to-end, including agreeing on the default Corda Contract type to use in the repo.
  • Discuss if/when/how a hackathon would be appropriate

Examples of topics for technical calls

  • Options for standardising how to locate metadata (eg overarching ‘agreement ID’) in a foreign network’s data structures without compromising the ‘avoid tight binding’ principle
    • Concrete example: EVM introspection of a Corda transaction. Some part of the standardisation could enable the inclusion of some data (eg tx reference) inside a serialised Corda transaction, so the EVM side has a single way to check a particular Corda transaction relates to a specific business agreement without needing to know anything else about its structure (and without being dependent on the contract types). Including security discussion
  • Joint ‘therapy’ session for the sharing of real-life war stories from those installing enterprise blockchain nodes inside corporate firewalls.
    • Enumeration of common non-negotiable requirements
    • Where (and in what way) can standardisation or common components make this work easier
    • Introduce the ‘four interface’ model (interop, HSM, network-side, bank-side)
    • “Give business / implementer community confidence about what does and doesn’t work”?
    • Enumerate the issues the banks are facing, constraints they face operationally and with integration to/from payment/treasury/etc systems
  • ‘Vicarious trust’ - Introduction and evaluation of where and when it can and cannot be applied