Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for the ECDH KeyAgreement method algorithm #264

Merged

Conversation

jrihtarsic
Copy link
Contributor

The PR aims to enable the ECDH_ES Key Agreement Algorithm for WSS4J using EC and XEC keys. The details are described in the ticket WSS-706.

The Elliptic-curve Diffie–Hellman ephemeral static algorithm (ECDH_ES) is a key agreement protocol that allows two parties to establish a shared secret over an insecure channel. It is a variant of the Diffie–Hellman protocol using elliptic-curve cryptography.

The code is contributed on behalf of the European Commission’s edelivery project to support eDelivery AS4 2.0 profile.

@jrihtarsic
Copy link
Contributor Author

@coheigea please note the PR is using the not yet released santuario version
<xmlsec.version>4.0.2-SNAPSHOT</xmlsec.version>

@jrihtarsic
Copy link
Contributor Author

Hi @coheigea I would like to draw your attention to the last commit:
XDH and EdEC key length validation for AlgorithmSuiteValidator
where I used the elliptic curve parameters to validate the key lengths of the XDH and EdEC keys.
Alternative would be to introduce new variables or to start using "estimated security strength"
as defined here:
https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-5.pdf
But this would probably be implemented in a "dedicated jira" ticket?

@coheigea
Copy link
Contributor

@jrihtarsic Yes I think any other changes should go in a new JIRA for now.

@coheigea coheigea merged commit 7ab6a7e into apache:master Jan 25, 2024
3 checks passed
coheigea pushed a commit that referenced this pull request Jan 25, 2024
* Support for the ECDH KeyAgreement method algorithm

* Fix typos, regenerate example keystores using keytool/

* Clean double spaces, NPE validation for KeyAgreement

* XDH and EdEC key length validation for AlgorithmSuiteValidator

* Add check for KeyAgreement

---------

Co-authored-by: RIHTARSIC Joze <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants