ECDH internal functions and FIPS140-2 mode

Nicolas Mora <[email protected]> Sun, 21 Feb 2021 17:39:18 -0500
Newsgroups gmane.network.gnutls.general
Message-ID <[email protected]>
Hello,

I'd like to use ECDH key agreement with GnuTLS. As far as I can see, 
there is no public function to generate a shared secret with ECC keys.

In lib/nettle/pk.c [1], the ECDH functions are defined if ENABLE_FIPS140 
is defined.

According to thee documentation [2], FIPS140-2 mode is not available 
without adding configure option –enable-fips140-mode.

In an old message on this ML [3], it was offered these functions to be 
exported in the normal API, but this message wasn't answered, and the 
ecdh functions are still private and available only with FIPS140-2 mode.

I'd like to make a feature request for the ECDH functions to be 
available in the normal API, even in non FIPS140-2 mode. Would it be 
possible in a future version?

Thanks in advance

/Nicolas

[1] https://gitlab.com/gnutls/gnutls/-/blob/master/lib/nettle/pk.c
[2] https://www.gnutls.org/manual/html_node/FIPS140_002d2-mode.html
[3] https://lists.gnupg.org/pipermail/gnutls-help/2019-November/004580.html

_______________________________________________
Gnutls-help mailing list
[email protected]
http://lists.gnupg.org/mailman/listinfo/gnutls-help
OpenPGP_0xFE82139440BD22B9.asc (application/pgp-keys, 3 KB)
-----BEGIN PGP PUBLIC KEY BLOCK-----

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
=1rnn
-----END PGP PUBLIC KEY BLOCK-----
OpenPGP_signature (application/pgp-signature, 840 B) - not displayed