Skip to content

ADR-0002: R3 Corda 5 as DLT Platform

Author: @MysterTech
Status: Accepted
Date: 2025-08-13
Deciders: @MysterTech
Technical Story: [optional link to ticket/issue]
Tags: dlt, corda, blockchain

Context

  • DealSphere platform requires a distributed ledger technology (DLT) platform for secure, tamper-proof transaction recording and multi-party business process execution.
  • R3 Corda 5 provides enterprise-grade DLT capabilities specifically designed for regulated financial services and complex business networks.
  • Team expertise includes blockchain development experience, and Corda's JVM-based architecture aligns with existing Java 17 runtime decisions.
  • PRD alignment: Security requirements and regulatory compliance for financial transactions are prioritized for Phase 1 core flows.

Decision

Adopt R3 Corda 5 as the distributed ledger technology platform for DealSphere Phase 1.

Rationale

Why R3 Corda 5 as DLT Platform?

Enterprise-Grade Security and Compliance: - Built-in privacy features with need-to-know data sharing principles. - Strong cryptographic foundations and secure communication protocols. - Regulatory compliance features aligned with financial services requirements. - Mature audit trails and transaction history capabilities.

Technical Architecture Alignment: - JVM-based platform compatible with Java 17 runtime decision. - Spring Boot integration capabilities for microservices architecture. - REST and gRPC API support for seamless service integration. - Familiar development patterns reducing team onboarding overhead.

Business Network Capabilities: - Multi-party transaction support essential for deal syndication workflows. - Smart contract (CorDapp) development for complex business logic. - Identity and certificate management for trusted counterparty networks. - Pluggable consensus mechanisms for different transaction types.

Operational Maturity: - Production-ready platform with enterprise support options. - Comprehensive monitoring and observability tools integration. - Docker containerization support for Phase 1 orchestration strategy. - Established backup and disaster recovery patterns.

Risk Management for Phase 1: - Proven track record in financial services implementations. - Active community and R3 support for issue resolution. - Clear upgrade paths and version compatibility strategies. - Minimizes experimental technology risk during initial platform delivery.

Performance Characteristics: - Optimized for financial transaction throughput requirements. - Deterministic finality for transaction settlement scenarios. - Scalable node architecture supporting network growth. - Efficient resource utilization in containerized environments.

Alternatives Considered

Hyperledger Fabric - Pros: Open-source platform with strong enterprise adoption. - Cons: More complex operational overhead; Go/Node.js ecosystem diverges from JVM stack; less financial services specific features. - Rejected: Does not align with JVM-based technology stack and financial services focus.

Ethereum (Enterprise) - Pros: Large ecosystem and developer community. - Cons: Significant development and maintenance overhead; security risks from custom cryptography; delays Phase 1 delivery timeline. - Rejected: Too high risk and development overhead for Phase 1 timeline.

Consequences

Positive: - DLT integration enables secure multi-party deal processing with cryptographic transaction integrity. - Corda's privacy model ensures sensitive deal information is only shared with relevant counterparties. - JVM-based development stack maintains consistency with Java 17 and microservices architecture decisions. - Enterprise-grade security and compliance features align with financial services requirements. - Established development patterns reduce team onboarding overhead.

Negative: - Requires team training on Corda-specific concepts (states, flows, contracts) but leverages existing JVM skills. - Platform lock-in to R3 ecosystem and potential licensing costs. - Performance limitations compared to traditional databases for non-DLT operations. - Additional operational complexity for node management and network coordination.

Mitigation Strategies: - Maintain abstraction layer between business logic and Corda-specific implementations. - Establish comprehensive training program for Corda development patterns. - Implement performance benchmarks and monitoring for transaction throughput. - Document all CorDapp development patterns and maintain code review standards.

Revisit Trigger and Target Sprint

  • Revisit Triggers:

  • Performance bottlenecks emerge that cannot be resolved through configuration or infrastructure scaling.

  • Regulatory requirements change significantly requiring features not available in Corda 5.

  • Major security vulnerabilities discovered that cannot be patched within acceptable timeframes.

  • Target Sprint:

  • Sprint 1 (DLT platform foundation established in Phase 1)

Guardrails

Must

  • Maintain abstraction layer between business logic and Corda-specific implementations to enable future platform migration if needed.
  • Establish performance benchmarks and monitoring for transaction throughput and latency.
  • Keep Corda version compatibility matrix updated and plan regular security updates.

Should

  • Document all CorDapp development patterns and maintain code review standards for smart contract logic.
  • Implement comprehensive testing strategies for Corda flows and contracts.

Won't

  • Allow direct database access bypassing Corda's data model.
  • Implement custom cryptographic solutions without R3 approval.
  • Deploy CorDapps without proper code review and security assessment.

Approvals

Review Reviewer Date (YYYY-MM-DD) Status Notes
Architectural Review @MysterTech 2025-08-14 Approved
Security Review @MysterTech 2025-08-14 Approved
SRE Review @MysterTech 2025-08-14 Approved

Technology Landscape: [DLT Platform] Sprint Plan: [Sprint 1 – Core Platform Foundation]
PRD: Security requirements and regulatory compliance

Related ADRs: - ADR-0001: Java 17 as Language/Runtime