diff options
author | Bob Beck <bbe@google.com> | 2024-03-09 18:15:01 +0000 |
---|---|---|
committer | Boringssl LUCI CQ <boringssl-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2024-06-04 20:39:03 +0000 |
commit | e491eeb610fcc69b98bc6d1ba08faf78655808f6 (patch) | |
tree | cc1b04750d8cf048500403efedd9ebca01157212 /include | |
parent | a11277e187e407d0ef403b8a60d9a32eaab7d301 (diff) | |
download | boringssl-e491eeb610fcc69b98bc6d1ba08faf78655808f6.zip boringssl-e491eeb610fcc69b98bc6d1ba08faf78655808f6.tar.gz boringssl-e491eeb610fcc69b98bc6d1ba08faf78655808f6.tar.bz2 |
Mark kyber as experimental
Kyber will be changing once the standardization of ML_KEM
is finalized by NIST.
Update-Note: The use of Kyber functions from
<openssl/experimental/kyber.h> will not compile unless the build
using them defines an appropriate preprocessor define.
As this interface will change once NIST finalizes the
standardization of ML_KEM. Users of this code must be aware, and be
prepared to make changes when this happens
Change-Id: I159bae38e58dd059b3fcccf69ae9f3d5fb03bd46
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/66868
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: Bob Beck <bbe@google.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/openssl/experimental/kyber.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/openssl/experimental/kyber.h b/include/openssl/experimental/kyber.h index e0268fc..e6e9e9a 100644 --- a/include/openssl/experimental/kyber.h +++ b/include/openssl/experimental/kyber.h @@ -22,6 +22,14 @@ extern "C" { #endif +#if defined(OPENSSL_UNSTABLE_EXPERIMENTAL_KYBER) +// This header implements experimental, draft versions of not-yet-standardized +// primitives. When the standard is complete, these functions will be removed +// and replaced with the final, incompatible standard version. They are +// available now for short-lived experiments, but must not be deployed anywhere +// durable, such as a long-lived key store. To use these functions define +// OPENSSL_UNSTABLE_EXPERIMENTAL_KYBER + // Kyber768. // // This implements the round-3 specification of Kyber, defined at @@ -128,6 +136,8 @@ OPENSSL_EXPORT int KYBER_marshal_private_key( OPENSSL_EXPORT int KYBER_parse_private_key( struct KYBER_private_key *out_private_key, CBS *in); +#endif // OPENSSL_UNSTABLE_EXPERIMENTAL_KYBER + #if defined(__cplusplus) } // extern C |