Introduction to Corda
A Corda Network is a peer-to-peer network of
Nodes, each representing a party on the network.
These Nodes run Corda applications
(CorDapps), and transact between Nodes using public or
confidential identities.
When one or more Nodes are involved in a transaction, the transaction must be notarised.
Notaries are a specialised type
of Node that provides uniqueness consensus by attesting that, for a given transaction, it has not already signed other
transactions that consumes any of the proposed transaction’s input states.
Corda Enterprise
Corda Enterprise is a commercial edition of the Corda platform, specifically optimised to meet the privacy, security and
throughput demands of modern day business. Corda Enterprise is interoperable and compatible with Corda open source and
is designed for organisations with exacting requirements around quality of service and the network infrastructure in
which they operate.
Corda Enterprise contains all the core Corda functionality, but also includes the
Corda Firewall,
support for high-availability Node and Notary deployments, and compatibility with hardware security modules
(HSMs).
Corda Enterprise vs Corda open source: feature comparison
More details on Corda Enterprise features compared to Corda open source features follow below.
Corda Functionality
Feature | Corda open source | Corda Enterprise |
---|
Corda ledger | ✓ | ✓ |
Flow framework | ✓ | ✓ |
Immutable states | ✓ | ✓ |
Vault | ✓ | ✓ |
Smart contracts | ✓ | ✓ |
Atomic transactions (with input, output and reference states) | ✓ | ✓ |
Multiple accounts | ✓ | ✓ |
Supported development languages | Java, Kotlin | Java, Kotlin |
Standard Corda APIs | ✓ | ✓ |
Compatible with any Corda network (including the Corda Network) | ✓ | ✓ |
Node
Feature | Corda open source | Corda Enterprise |
---|
Single node | ✓ | ✓ |
Multiple nodes for high availability/disaster recovery | ✗ | ✓ |
Connectivity
Feature | Corda open source | Corda Enterprise |
---|
In-process Artemis MQ | ✓ | ✓ |
External Artemis MQ | ✗ | ✓ |
Corda firewall | ✗ | ✓ |
Multi-node use of a shared external Artemis MQ and a shared Corda firewall | ✗ | ✓ |
Key storage
Feature | Corda open source | Corda Enterprise |
---|
Java keystore file | ✓ | ✓ |
HSM support | ✗ | ✓ |
Vault databases
Feature | Corda open source | Corda Enterprise |
---|
H2 (development use only) | ✓ | ✓ |
Postgres | ✓ Please note that this has been harmonised with Corda Enterprise in Corda 4.5 to allow for in-place upgrades | ✓ |
SQL Server | Experimental only | ✓ |
Oracle | ✗ | ✓ |
Notaries
Feature | Corda open source | Corda Enterprise |
---|
Simple notary | ✓ | ✓ |
Oracle RAC connectivity | ✗ | ✓ |
CockroachDB connectivity | ✗ | ✓ |
Clustered notary (for high availability) | ✗ | ✓ |
Feature | Corda open source | Corda Enterprise |
---|
Dynamic database caching and performance enhancements | ✗ | ✓ |
Multi-threaded flow state machine | ✗ | ✓ |
Feature | Corda open source | Corda Enterprise |
---|
Node health check tool | ✗ | ✓ |
Configuration obfuscation tool | ✗ | ✓ |
HA admin tool | ✗ | ✓ |
Support
Feature | Corda open source | Corda Enterprise |
---|
Developer mailing lists (no SLA) | ✓ | ✓ |
Cordaledger slack (no SLA) | ✓ | ✓ |
Software maintenance | ✗ | ✓ |
Support by R3 Support Engineering | ✗ | ✓ |
Access to R3 Professional Services | Upgrading to Corda Enterprise only | ✓ |