From f8fcf556caab3fb1fb9d9b496d2724345c90a3eb Mon Sep 17 00:00:00 2001 From: beck <> Date: Thu, 4 Dec 2025 21:03:42 +0000 Subject: Add a MLKEM768_X25519 hybrid key share. This implements the currently in use MLKEM768_X25519 hybrid key share as outlined in https://datatracker.ietf.org/doc/draft-ietf-tls-ecdhe-mlkem/ This commit does not yet wire this up to anything, that is done in follow on changes. ok tb@ jsing@ kenjiro@ --- src/lib/libssl/tls_internal.h | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/lib/libssl/tls_internal.h') diff --git a/src/lib/libssl/tls_internal.h b/src/lib/libssl/tls_internal.h index 84edde8474..3d8d6aa940 100644 --- a/src/lib/libssl/tls_internal.h +++ b/src/lib/libssl/tls_internal.h @@ -1,4 +1,4 @@ -/* $OpenBSD: tls_internal.h,v 1.10 2022/11/10 18:06:37 jsing Exp $ */ +/* $OpenBSD: tls_internal.h,v 1.11 2025/12/04 21:03:42 beck Exp $ */ /* * Copyright (c) 2018, 2019, 2021 Joel Sing * @@ -85,12 +85,15 @@ int tls_key_share_nid(struct tls_key_share *ks); void tls_key_share_set_key_bits(struct tls_key_share *ks, size_t key_bits); int tls_key_share_set_dh_params(struct tls_key_share *ks, DH *dh_params); int tls_key_share_peer_pkey(struct tls_key_share *ks, EVP_PKEY *pkey); -int tls_key_share_generate(struct tls_key_share *ks); +int tls_key_share_client_generate(struct tls_key_share *ks); +int tls_key_share_server_generate(struct tls_key_share *ks); int tls_key_share_params(struct tls_key_share *ks, CBB *cbb); int tls_key_share_public(struct tls_key_share *ks, CBB *cbb); int tls_key_share_peer_params(struct tls_key_share *ks, CBS *cbs, int *decode_error, int *invalid_params); -int tls_key_share_peer_public(struct tls_key_share *ks, CBS *cbs, +int tls_key_share_server_peer_public(struct tls_key_share *ks, CBS *cbs, + int *decode_error, int *invalid_key); +int tls_key_share_client_peer_public(struct tls_key_share *ks, CBS *cbs, int *decode_error, int *invalid_key); int tls_key_share_derive(struct tls_key_share *ks, uint8_t **shared_key, size_t *shared_key_len); -- cgit v1.2.3-55-g6feb