* CORDA-2089 - network parameters tags - part
Data structures changes, storage and notarisation.
Tag transactions with network parameters hash that was in force when tx
was created. Add component group on all core transactions and resolved
parameters on full transactions. The hash should be always visible on
the filtered versions of transactions. Add
notarisation check that the parameters are current.
Implement network parameters storage on services for resolution.
This is only part of the work, next PR will include changes to
ResolveTransactionsFlow to make sure that parameters in the transaction
graph are ordered (this is to prevent the downgrade attack, when the
malicious notary and participants sign transaction that shouldn't be
notarised otherwise).
Probably on network services side we need the default parameters
endpoint for the
transactions that were created before this change - for now it's default
to the current ones.
* Make parameters storage agnostic to cert hierarchy
Test fixes
* Address most PR comments
* Fixes after rebase
* Fixes. Add epoch column to parameters storage.
* Address part of review comments
* Some more comments
* Hopefully fixing what I broke doing rebse
* Address Kostas comments
* Further fixes
* Save all parameters from updates to storage
* Fix integration test
* Address comments
* Fixes after rebase
* Fix test
* Fixes
* Add wrapper for filtering around parameters hash
* API stability fixes
* Add NetworkParametersStorageInternal
* Rename
* Temp commit
* Print the error message first by default, makes error output more natural.
* Polishing
* Further modifications after testing
* Documentation updates
* Couple of fixes after review
* Removing unnecessary tests
* Fix broken test
* Add interface to bootstrapper for testign
* Added unit tests
* Remove unused class
* Fix up bootstrapper unit tests and add a couple more
* Refactor the tests slightly
* Review comments
* Couple of minor tweaks
* Add dependencies for Utimaco HSM.
The CryptoServerJCE.jar was added in node/lib.
The node/capsule/build.gradle excludes this jar from
the final corda.jar.
* Copy the HSM Simulator utility from Network Services.
HsmSimulator.kt uses the spotify docker client to pull an
image with a pre-configured hsm simulator from our docker
registry and run it in integration tests.
* Implementation of the CryptoService interface for Utimaco HSM.
* Integration test for Utimaco CryptoService.
* Unit tests for UtimacoCryptoService (only config parsing).
* Integrate Utimaco CryptoService in AbstractNode and NodeConfiguration.
* Respond to Feedback: Remove copyright notice.
* Respond to PR Feedback: Improve integration test.
* Use custom overrides in DriverDSLImpl.startNodeRegistration
* Make Utimaco dependencies compileOnly and testCompile.
* Add integration test for registering a node that is backed by utimaco HSM.
* Respond to feedback: move HsmSimulator to different package.
* Make NodeConfiguration.cryptoServiceConf a Path instead of String.
* Add Keyfile-based login.
* Respond to feedback -- default signing algorithm.
* Respond to feedback: naming.
* UtimacoNodeRegistrationTest: explicitly verify that tx signature is valid.
* Respond to feedback: Static import assertThat.
* Rename key file for test login so it's not ignored.
* [CORDA-2219] Show message if CorDapp already exists
* Update definition of `net.corda.core.node.services.Vault$StateMetadata` in `api-current.txt` or else diff tool gets very confused.
* First pass
* Update test.
* Address review comments.
* Added docs and kdocs.
* Clean-up.
* Add extra test.
* Changes to docsite.
* Added try/catch block as recommended by Andras.
* Removed try catch block. It's not required as the checkpoint serialiser deals with this.
* Re-used existing DB session instead of creating a new session.
* Entity manager auto flushes.
* Added java friendly api.
* Addressed review comments.
* ENT-2669: Introduce option for HTTP proxy for outbound Bridge connectivity
One of our customers currently using HTTP proxy without which outbound connection from Corda Node cannot be established.
Also, propagate `trace` setting correctly down the Bridge stack.
* ENT-2669: Compilation fixes.
* ENT-2669: Revert deleted constructor back.
* ENT-2669: First stub on HTTP Proxy integration test.
* ENT-2669: Minor changes.
* ENT-2669: Reduce test to bare minimum.
* ENT-2669: Attempt to write own HttpProxy.
* ENT-2669: Another attempt to make programmatic HttpProxy work.
* ENT-2697: Disable DNS resolution before sending requests to proxies.
* ENT-2669: Switch to use Jetty HttpProxy for integration testing.
* Adds a pipeline logger ahead of the proxy stage if trace is set. The logging is removed once the proxy completes.
Define a constant for pipeline stage.
* print node-gen log when nodeInfo generation fails during bootstrapping
* add logic to print out the legal name of the node which failed to generate nodeInfo
* ENT-2655: added a lock on leader status to ensure no clients can be leader at the same time
* ENT-2655: reworked tests to not use hacky timeouts, now check for max 1 leader at any given time, improved error handling in the latch
* ENT-2655: address PR comments and use atomic int properly
* ENT-2669: Rename SocksProxyVersion into ProxyVersion
* ENT-2669: Rename SocksProxyConfig into ProxyConfig
Update documentation and make code changes such that old style configs are still parsed.
* ENT-2669: Changelog update