Commit Graph

328 Commits

Author SHA1 Message Date
464ab11a2a ENT-12811: lasiqueira/rebase 4.13 (#7910)
rebase with 4.13
2025-04-07 14:33:30 +01:00
1c40e969f7 ENT-12507 - Revert Log4j (#7895)
* Rollback log4j

* Revert Log4j further
2024-12-13 09:32:00 +00:00
40ce095398 ENT-12507 - Upgrade log4j (#7894)
* Upgrade log4j

* Added deprecation suppressions
2024-12-11 13:02:01 +00:00
3d611247c8 Dependency updates 2024-12-04 16:08:18 +00:00
c59040fbc2 ENT-11975:Merge typo, removed commons_lang_version added. 2024-10-21 09:01:25 +01:00
fc261beff0 Merge branch 'release/os/4.12' into merge-release/os/4.11-release/os/4.12-2024-10-19-420 2024-10-21 08:49:56 +01:00
df7c073e3e Dependency updates 2024-10-18 11:48:44 +01:00
ea568e0780 Merging forward updates from release/os/4.10 to release/os/4.11 - 2024-10-17 2024-10-17 03:33:27 +00:00
78e7f62df3 Updated commons-io version 2024-10-15 10:11:58 +01:00
80ff76c52c Merge pull request #7776 from corda/merge-release/os/4.11-release/os/4.12-2024-07-31-321
ENT-12039: Merging forward security updates from release/os/4.11 to release/os/4.12 - 2024-07-31
2024-08-13 10:28:12 +01:00
ed3875c8b7 Merge branch 'release/os/4.10' into merge-release/os/4.9-release/os/4.10-2024-08-12-297 2024-08-12 19:27:12 +01:00
7e61db7142 ENT-12060: Upgrade artemis to 2.36 2024-08-01 10:21:36 +01:00
08e084a449 Merge branch 'release/os/4.12' into merge-release/os/4.11-release/os/4.12-2024-07-31-321 2024-07-31 13:37:23 +01:00
d6dd4cebbe Merging forward updates from release/os/4.10 to release/os/4.11 - 2024-07-31 2024-07-31 09:49:49 +00:00
9ba25720d8 Upgraded jackson 2024-07-30 16:09:59 +01:00
4b90f93f77 Updates for security issues 2024-07-18 14:23:16 +01:00
4ed675e56d ENT-12008: Upgrade artemis and resolved deprecated methods. 2024-07-17 11:37:43 +01:00
060bdab88f Restored previous version of netty 2024-07-16 10:53:44 +01:00
4534b3b024 Restored old netty version 2024-07-16 10:22:08 +01:00
743b1d7fc8 Upgrade Bouncy Castle 2024-07-15 10:57:34 +01:00
a86853adbf Dependency updates for security issues 2024-07-12 13:57:51 +01:00
c7c89f33c7 Dependency updates for security issues. 2024-07-11 09:42:29 +01:00
89e9298ba5 ENT-11892: Upgrade Snappy to 0.5 2024-06-06 15:48:58 +01:00
7209a4e25c ES-2371: Revert h2 data test change. Will be done in separate branch. 2024-05-23 16:07:45 +01:00
5f994fde18 Un-ignored tests for JDK17 2024-05-21 17:08:17 +01:00
204a86d9a6 ES-2371: Update version 2024-05-13 14:17:44 +01:00
835e95c222 ES-2371: Consume H2 DB snapshot version 2024-05-12 18:37:43 +01:00
35dc65550f Netty and SSHD upgrades 2024-05-02 11:12:33 +01:00
f87f51e660 Dependency updates for security issues (#7722) 2024-04-24 09:03:41 +01:00
0f713aaa44 ENT-11003: Upgraded Jetty and Jersey. (#7715)
* ENT-11003: Upgraded jetty and jersey. Fixed up simm valuation demo.
2024-04-18 09:40:42 +01:00
2db7c9656c ENT-11728: Force use of LTS version of BC everywhere. (#7709)
* ENT-11728: Force use of LTS version of BC everywhere.

* ENT-11728: Removed extra task left in.

* ENT-11728: Revert to the now released 2.73.6 version of BC.
2024-04-08 13:09:34 +01:00
9ab1b36128 ENT-11106: Upgrade dependencies Part 1, (jackson, caffeine, guava, je… (#7708)
* ENT-11106: Upgrade dependencies Part 1, (jackson, caffeine, guava, jetty.

* ENT-11106: removed unused import.

* ENT-11106: Fixed the deprecation and null check.
2024-04-03 12:59:34 +01:00
6c4b8fdf23 ENT-11657: Upgrade artemis. (#7707)
* ENT-11657: Upgraded artemis.

* ENT-11657: Reverted dependencies task leftin.

* ENT-11657: Upgraded log4j and slf4j.
2024-04-03 11:15:00 +01:00
72778b7fb0 ENT-11728: Switched to LTS version of BC. Also removed PQC algos as n… (#7706)
* ENT-11728: Switched to LTS version of BC. Also removed PQC algos as not supported in LTS.
* ENT-11728: Removed the SPHINCS PQC algorithm.
* ENT-11728: Added dependency on bcutil to fix missing class error.
2024-04-03 11:14:19 +01:00
54135a26c9 Merge pull request #7680 from corda/shams-cleanup-jdk-8-11
ENT-11090: Removed all JDK 8/11 conditional code
2024-03-07 20:03:20 +00:00
5c9164c94a ENT-11501: Re initialise the logging, after system property set. 2024-03-05 19:40:14 +00:00
900809b3d7 ENT-11090: Removed all JDK 8/11 conditional code 2024-03-05 17:10:26 +00:00
0091807c2f ENT-11101: Fix all crypto issues introduced by Java 17 upgrade
The various crypto tests that were previously ignored have been re-enabled.

The abandoned i2p EdDSA library has been replaced with native support that was added in Java 15.

Java 17 (via the `SunEC` provider) does not support the secp256k1 curve (one of the two ECDSA curves supported in Corda). This would not normally have been an issue as secp256k1 is already taken care of by Bouncy Castle. However, this only works if the `Crypto` API is used or if `”BC”` is explicitly specified as the provider (e.g. `Signature.getInstance(“SHA256withECDSA”, “BC”)`). If no provider is specified, which is what is more common, and actually what the Java docs recommend, then this doesn’t work as the `SunEC` provider is selected. To resolve this, a custom provider was created, installed just in front of `SunEC`, which “augments” `SunEC` by delegating to Bouncy Castle if keys or parameters for secp256k1 are encountered.

`X509Utilities.createCertificate` now calls `X509Certificate.verify()` to verify the created certificate, rather than using the Bouncy Castle API. This is more representative of how certificates will be verified (e.g. during SSL handshake) and weeds out other issues (such as unsupported curve error for secp256k1).

`BCCryptoService` has been renamed to `DefaultCryptoService` as it no longer explicitly uses Bouncy Castle but rather uses the installed security providers. This was done to fix a failing test. Further, `BCCryptoService` was already relying on the installed providers in some places.

The hack to get Corda `SecureRandom` working was also resolved. Also, as an added bonus, tests which ignored `SPHINCS256_SHA256` have been reinstated.

Note, there is a slightly inconsistency between how EdDSA and ECDSA keys are handled (and also RSA). For the later, Bouncy Castle is preferred, and methods such as `toSupportedKey*` will convert any JDK class to Bouncy Castle. For EdDSA the preference is the JDK (`SunEC`). However, this is simply a continuation of the previous preference of the i2p library over Bouncy Castle.
2024-03-04 13:29:49 +00:00
4031c28947 ENT-11502: Upgrade platform version to 140. (#7674) 2024-03-04 12:24:15 +00:00
8840710fab ENT-11521: Upgraded to latest log4j to resolve getCallerClass warning
"WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance." warning was being caused by log4j. Latest version fixes this issue.
2024-03-01 13:53:32 +00:00
52a6d477da Upgraded Jetty 2024-01-12 17:12:46 +00:00
b6007625f8 ENT-11113 Upgrading mockito kotlin version (#7639)
* ENT-11113 Removing test case that is not relevate with Kotlin 1.9.0

* ENT-11113 Upgrade mockito kotlin version
2024-01-03 18:28:16 +00:00
406f7ff292 ENT-11056: Compile the external verifier using Kotlin 1.2 (#7622)
This requires Kotlin 1.2 versions of core and serialization (core-1.2 and serialization-1.2 respectively), which are just "shell" modules and which compile the existing source code with Kotlin 1.2. The 1.2 plugin does not work with the current version of Gradle and so the 1.2 compiler has to be called directly.

Now with two versions of Kotlin in the code base, each module needs to have its version manually specified to ensure a clean separation. Otherwise, the default Kotlin version can override 1.2 when needed.

Some of the code was tidied-up or improved to enable it to be cross-compiled. For post-1.2 APIs being used, they have been copied into core-1.2 with the same method signatures. OpenTelemetryComponent was moved to node-api, along with the dependency, to avoid also having a 1.2 version for the opentelemetry module.
2024-01-02 17:02:20 +00:00
74ca2c6734 ENT-10560 JDK 17 Test Cases Fixes (#7598)
* Updated mockito version and removed ignored annotation to relevant test cases

* Updated mockito version and removed ignored annotation to relevant test cases
2023-12-07 10:46:56 +00:00
4cf5fe55dd ENT-11099: Update Java compile source & target to 17 (#7594)
And removed unused `jdkClassifier` in build files.
2023-12-06 09:46:29 +00:00
2380364650 Jetty upgrade 2023-11-10 15:59:16 +00:00
974d81cf41 Revert netty version 2023-11-10 12:41:44 +00:00
3c34caabc3 ENT-10888,ENT-11108 - Security vulnerabilties (#7556)
* Security vulnerabilties
* Upgraded netty
* ENT-11108: Upgraded tcnative depedency to 2.2.224.
* Added architecture classifiers for netty-tcnative
2023-11-07 10:46:03 +00:00
958c0bf53c Updated to use Corda Shell HC01 2023-11-06 10:25:34 +00:00
6dd33fb8f7 Upgrade to gradle 7.6, kotlin 1.8 and jdk 17
Major changes due to JDK 17:
1. JDK17 JCE Provider now has built-in support for eddsas, corda uses
   the bouncycastle (i2p) implementation. This PR removes the conflicting
   algorithms from the built-in JCE provider.

2. JavaScript scripting has been removed from the JDK, the corda log4j config was using
   scripting to conditionally output additional diagnostic info if the MDC
   was populated. This PR has removed the scripting.

3. The artifactory plug-ins used are now deprecated, this PR has removed them
   and uses the same code as Corda 5 for publishing to artifactory.

4. Javadoc generation has been modified to use the latest dokka plug-ins.

5. Gradle 7.6 has implemented an incredibly annoying change where transitive
   dependencies are not put on the compile classpath, so that they have to be
   explicitly added as dependencies to projects.

6. Mockito has been updated, which sadly meant that quite a few source files
   have to changes to use the new (org.mockito.kotlin) package name. This makes
   this PR appear much larger than it is.

7. A number of tests have been marked as ignored to get a green, broadly they fall
   into 3 classes.

   The first is related to crypto keypair tests, it appears some logic
   in the JDK prefers to use the SunJCE implementation and we prefer to use
   bouncycastle. I believe this issue can be fixed with better test setup.

   The second group is related to our use of a method called "uncheckedCast(..)",
   the purpose of this method was to get rid of the annoying unchecked cast compiler
   warning that would otherwise exist. It looks like the Kotlin 1.9 compiler type
   inference differs and at runtime sometimes the type it infers is "Void" which causes
   an exception at runtime. The simplest solution is to use an explicit cast instead of
   unchecked cast, Corda 5 have removed unchecked cast from their codebase.

   The third class are a number of ActiveMQ tests which appear to have a memory leak somewhere.
2023-11-06 10:24:17 +00:00