Corda is an open source blockchain project, designed for business from the start. Only Corda allows you to build interoperable blockchain networks that transact in strict privacy. Corda's smart contract technology allows businesses to transact directly, with value.
Go to file
2022-10-22 15:18:14 +01:00
.ci ENT-6947 Intern common types to reduce heap footprint (#7239) 2022-10-18 09:28:41 +01:00
.github INFRA-1856: Update pr scanner version 2022-09-09 16:20:56 +01:00
.idea ENT-6947 Intern common types to reduce heap footprint (#7239) 2022-10-18 09:28:41 +01:00
buildSrc INFRA-803 Rebuild Docker image tasks (#6804) 2020-11-20 10:21:53 +00:00
client ENT-6947 Intern common types to reduce heap footprint (#7239) 2022-10-18 09:28:41 +01:00
common ENT-6947 Intern common types to reduce heap footprint (#7239) 2022-10-18 09:28:41 +01:00
confidential-identities Merge branch 'release/os/4.4' into chrisr3-44-merge 2020-03-04 16:27:44 +00:00
config ENT-6784: Change Artemis Server logging to WARN (#7215) 2022-07-12 15:06:55 +01:00
core Ability to write single outer schema. Some groundwork for using Descriptor code for custom serializers (but lots of places still do descriptor?.name, which needs replacing with a toShortString() implementation) 2022-10-22 15:18:14 +01:00
core-deterministic ENT-6947 Intern common types to reduce heap footprint (#7239) 2022-10-18 09:28:41 +01:00
core-tests Validate LedgerTransaction deserialised from AttachmentsClassLoader. (#7049) (#7052) 2022-01-31 09:40:01 +00:00
detekt-plugins NOTICK: Update Gradle files for DeteKt plugins. (#5970) 2020-02-16 08:21:05 +00:00
docker ENT-6975: Updated docker jdk version to 345 for zulu ubuntu and 8u342-al2 for amazon corretto. 2022-10-14 12:09:34 +01:00
docs ENT-6498 Fix API docs dependencies (#7054) 2022-02-08 10:25:07 +00:00
experimental NOTICK: Fix some Gradle technical debt. (#6430) 2020-07-07 09:08:58 +01:00
finance Ability to write single outer schema. Some groundwork for using Descriptor code for custom serializers (but lots of places still do descriptor?.name, which needs replacing with a toShortString() implementation) 2022-10-22 15:18:14 +01:00
gradle/wrapper INFRA-1699 use correct version 2022-03-16 16:51:07 +00:00
isolated CORDA-2893 Upgrade Corda to use Gradle 5.4.1 (Take 2) (#5137) 2019-05-20 14:26:42 +01:00
jdk8u-deterministic NOTICK: Avoid configuring more tasks in the deterministic modules. (#6452) 2020-07-13 10:33:23 +01:00
lib Switch out Symbol based descriptors for UnsignedLong descriptors where there is no custom serializer 2022-10-21 18:43:59 +01:00
node ENT-6947 Intern common types to reduce heap footprint (#7239) 2022-10-18 09:28:41 +01:00
node-api ENT-6947 Intern common types to reduce heap footprint (#7239) 2022-10-18 09:28:41 +01:00
node-api-tests ENT-6588 Restrict database operations platform flag (#7053) (#7073) (#7074) (#7076) 2022-02-18 09:42:59 +00:00
release-tools CORDA-3017 - Fix release tooling when product name != jira project (#5229) 2019-06-21 09:28:07 +01:00
samples NOTICK: release support optionally exclude shell dependency 2022-03-08 10:50:59 +00:00
serialization Ability to write single outer schema. Some groundwork for using Descriptor code for custom serializers (but lots of places still do descriptor?.name, which needs replacing with a toShortString() implementation) 2022-10-22 15:18:14 +01:00
serialization-deterministic ENT-6357: Deserialize LedgerTransaction elements for each Contract.verify(). (#6962) 2021-11-10 16:38:40 +00:00
serialization-djvm Ability to write single outer schema. Some groundwork for using Descriptor code for custom serializers (but lots of places still do descriptor?.name, which needs replacing with a toShortString() implementation) 2022-10-22 15:18:14 +01:00
serialization-tests ENT-6947 Intern common types to reduce heap footprint (#7239) 2022-10-18 09:28:41 +01:00
testing ENT-6784: Change Artemis Server logging to WARN (#7215) 2022-07-12 15:06:55 +01:00
tools Ability to write single outer schema. Some groundwork for using Descriptor code for custom serializers (but lots of places still do descriptor?.name, which needs replacing with a toShortString() implementation) 2022-10-22 15:18:14 +01:00
.dockerignore WIP Kubenetes parallel build (#5396) 2019-09-03 15:40:08 +00:00
.gitignore INFRA-505: Move integration tests to unit tests (#6530) 2020-08-06 15:16:27 +01:00
build.gradle Upgraded shiro and apache commons-text, to address security issues. 2022-10-17 17:44:32 +01:00
BUILD.md add a shared memory port allocator to allow multiple processes to sha… (#5223) 2019-07-02 18:38:33 +00:00
buildCacheSettings.gradle Explicitly disable remote gradle build cache when building locally. (#4095) 2018-10-19 16:40:06 +01:00
constants.properties Upgraded shiro and apache commons-text, to address security issues. 2022-10-17 17:44:32 +01:00
CONTRIBUTING.md LEDG-67 updating contrib links (#7036) 2022-02-14 10:09:36 +00:00
CONTRIBUTORS.md EG-4168 Updating contributors.md list for OS 4.7 release branch (#6782) 2020-10-22 22:52:11 +01:00
detekt-baseline-config.yml TM-45 Make detektBaseline pass (#5561) 2019-10-15 15:49:31 +01:00
detekt-baseline.xml ENT-6286: OS: Upgrade version of Artemis to 2.19.1 (#6975) 2022-01-21 09:18:14 +00:00
detekt-config.yml [NOTICK] - Enable check in detekt for unused imports (#6106) 2020-03-26 15:46:33 +00:00
deterministic.gradle NOTICK: Avoid configuring more tasks in the deterministic modules. (#6452) 2020-07-13 10:33:23 +01:00
gradle.properties INFRA-424: Merge openj9 updates into 4.6 (#6683) 2020-09-02 14:35:30 +01:00
gradlew CORDA-3892: Upgrade Gradle 5.4.1 -> 5.6.4. (#6435) 2020-07-07 09:07:55 +01:00
gradlew.bat CORDA-3892: Upgrade Gradle 5.4.1 -> 5.6.4. (#6435) 2020-07-07 09:07:55 +01:00
java8.gradle NOTICK: Fix some Gradle technical debt. (#6430) 2020-07-07 09:08:58 +01:00
Jenkinsfile INFRA-1697: remove authentication details from gradlew wrapper download and add helper to add them in when ran on CI 2022-03-16 16:41:16 +00:00
LICENSE Use full Apache 2.0 license so GitHub recognizes it 2019-08-23 12:24:37 +02:00
README.md Update README.md 2022-06-13 16:53:12 +08:00
SECURITY.md CORDA-2958 Security policy for corda 2019-06-03 10:38:13 +02:00
settings.gradle NOTICK: Replace global dependency exclusions with dependency substitution. (#7099) 2022-03-08 12:04:26 +00:00
sizing.sh add a shared memory port allocator to allow multiple processes to sha… (#5223) 2019-07-02 18:38:33 +00:00
TRADEMARK Updated URL link to R3 trademark policy 2017-07-13 11:43:41 +01:00

Corda

License

Corda

Corda is an open source blockchain project, designed for business from the start. Only Corda allows you to build interoperable blockchain networks that transact in strict privacy. Corda's smart contract technology allows businesses to transact directly, with value.

Architecure Evolution

The code present in this repository reflects the first version of the implementation of the Corda model for DLT technology. This first architecture version covers Corda versions 1 through 4 and continues to deliver on the promise of DLT for both the open source community and industry as a whole.

However, like all things, Corda must evolve to serve the more stringent needs of today. This is why the second (and current) version of the Corda Arcchitecture can be found here and will form the basis of the Corda 5 release.

Features

  • Smart contracts that can be written in Java and other JVM languages
  • Flow framework to manage communication and negotiation between participants
  • Peer-to-peer network of nodes
  • "Notary" infrastructure to validate uniqueness and sequencing of transactions without global broadcast
  • Enables the development and deployment of distributed apps called CorDapps
  • Written in Kotlin, targeting the JVM

Getting started

  1. Read the Getting Started documentation
  2. Run the Example CorDapp
  3. Read about Corda's Key Concepts
  4. Follow the Hello, World! tutorial

Contributing

Corda is an open-source project and contributions are welcome!

To find out how to contribute, please see our contributing docs.

License

Apache 2.0

Acknowledgements

YourKit

YourKit supports open source projects with its full-featured Java Profiler.

YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.