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
szymonsztuka 10e7c07c11
CORDA-2577 Disable or delete the no-downgrade rule (#4741)
With (Contract JARs) rolling upgrades the downgrade rule cannot be effectively check as the platform can't tell the difference between a transaction that's downgrading because of an attack, vs a transaction that's downgrading because Alice has upgraded but Bob hasn't yet. During a rolling upgrade we would expect state versions to fluctuate up and down as data gets read/written by a mix of nodes. With the feature as implemented Alice will upgrade and start trading with Bob. Bob will be able to read and process the states Alice sent him, but the moment he tries to consume such a state he will fail. This will result in cascading flow deaths and a hung business network the moment an upgrade starts.
2019-02-13 11:36:43 +00:00
.ci CORDA-2577 Disable or delete the no-downgrade rule (#4741) 2019-02-13 11:36:43 +00:00
.github Typo. (#3750) 2018-08-07 10:14:23 +01:00
.idea Made FlowCheckpointVersionNodeStartupCheckTest leaner (#4640) 2019-01-28 14:08:54 +00:00
buildSrc Move cmd file to more suitable place 2018-11-09 17:55:15 +01:00
client CORDA-2467: Moved non-contract things out of finance-contracts and into finance-workflows (#4700) 2019-02-01 17:31:12 +00:00
common [CORDA-2235]: Add overrides for network parameters via command line and file (#4279) 2018-11-26 17:11:05 +00:00
confidential-identities Reducing the size of the CorDapp jars used in tests (#4600) 2019-01-21 13:54:26 +00:00
config [CORDA-1897] Improve exception handling on startup (#4452) 2019-01-11 17:40:32 +00:00
core CORDA-2577 Disable or delete the no-downgrade rule (#4741) 2019-02-13 11:36:43 +00:00
core-deterministic [CORDA-2431] - Small refactorings following-up on PR-4551 (#4564) 2019-01-15 14:34:11 +00:00
create-jdk8u ENT-1467: Make the deterministic JDK image compatible with IntelliJ. (#3416) 2018-06-26 11:53:16 +01:00
djvm fix unit test for different decimal separator for different locales (#4459) 2018-12-31 07:51:49 +00:00
docker improve docker image and allow automatically restarting node after --initial-registration 2019-02-11 15:17:57 +00:00
docs CORDA-2577 Disable or delete the no-downgrade rule (#4741) 2019-02-13 11:36:43 +00:00
experimental ENT-3000 Start pooling classpath scanning and related fixes (#4664) 2019-01-30 10:35:20 +00:00
finance CORDA-2467: Moved non-contract things out of finance-contracts and into finance-workflows (#4700) 2019-02-01 17:31:12 +00:00
gradle/wrapper CORDA-1983: Upgrade to Gradle 4.10.1. (#3947) 2018-09-15 14:23:16 +01:00
isolated Fixed AttachmentLoadingTests (#4565) 2019-01-14 14:32:14 +00:00
jdk8u-deterministic CID-251: Integrate DJVM with Corda's existing deterministic-rt. (#3846) 2018-08-24 15:51:40 +01:00
lib [CORDA-1611] Upgrade Quasar to 0.7.10 (#3342) 2018-06-12 09:38:14 +01:00
node [CORDA-2487] Provide a migration for vault states when moving from V3 to V4.1 (#4699) 2019-02-12 15:22:15 +00:00
node-api [CORDA-2487] Provide a migration for vault states when moving from V3 to V4.1 (#4699) 2019-02-12 15:22:15 +00:00
release-tools NOTICK - Allow JIRA user name to be provided in an environment variable (#4202) 2018-11-08 18:19:10 +00:00
samples CORDA-2467: Moved non-contract things out of finance-contracts and into finance-workflows (#4700) 2019-02-01 17:31:12 +00:00
serialization Rework package namespace ownership check to verify every package of every class file. 2019-02-11 17:10:50 +01:00
serialization-deterministic CORDA-2099 serialisation rewrite (#4257) 2018-11-22 11:44:40 +00:00
testing [CORDA-2487] Provide a migration for vault states when moving from V3 to V4.1 (#4699) 2019-02-12 15:22:15 +00:00
tools CORDA-2556: Refactor World City database into a library module. (#4718) 2019-02-05 15:29:26 +00:00
webserver [CORDA-2431] - Reduce memory footprint of classpath scanning (#4576) 2019-01-15 10:15:40 +00:00
.gitignore add kotlin 1.3 codestyle to git (#4204) 2018-11-09 09:38:41 +00:00
build.gradle Remove old reference to publishing a single corda finance jar. (#4704) 2019-02-07 18:33:20 +00:00
buildCacheSettings.gradle Explicitly disable remote gradle build cache when building locally. (#4095) 2018-10-19 16:40:06 +01:00
constants.properties [CORDA-2349] - Enable methods synthesized by Kotlin in api scanning (#4595) 2019-01-17 10:03:46 +00:00
CONTRIBUTING.md Combines all contributing info in one place. Clean-up. (#4266) 2018-11-20 18:17:11 +00:00
CONTRIBUTORS.md Update CONTRIBUTORS.md 2019-01-04 11:23:56 +00:00
deterministic.gradle ENT-1463, ENT-1903: Refactor Gradle for deterministic modules (#3387) 2018-06-18 14:14:48 +01:00
gradle.properties [CORDA-2285]: Enabled jUnit parallel execution. (#4344) 2018-12-03 13:31:17 +00:00
gradlew Upgraded to gradle 4.1. 2017-08-23 15:36:08 +01:00
gradlew.bat Upgrade gradle to 4.4.1 2018-01-24 16:15:43 +00:00
LICENSE Update license year 2019 (#4490) 2019-01-03 09:31:15 +00:00
README.md Update README.md (#4507) 2019-01-04 10:54:05 +00:00
settings.gradle CORDA-2556: Refactor World City database into a library module. (#4718) 2019-02-05 15:29:26 +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.

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.