From feaf10d0a7eb5e59e69c058b10c91c45d2b1b0e3 Mon Sep 17 00:00:00 2001 From: beck <> Date: Sat, 3 Feb 2024 15:58:34 +0000 Subject: Remove GOST and STREEBOG support from libssl. This version of GOST is old and not anywhere close to compliant with modern GOST standards. It is also very intrusive in libssl and makes a mess everywhere. Efforts to entice a suitably minded anyone to care about it have been unsuccessful. At this point it is probably best to remove this, and if someone ever showed up who truly needed a working version, it should be a clean implementation from scratch, and have it use something closer to the typical API in libcrypto so it would integrate less painfully here. This removes it from libssl in preparation for it's removal from libcrypto with a future major bump ok tb@ --- src/regress/lib/libssl/client/clienttest.c | 226 ++++++++++++------------- src/regress/lib/libssl/interop/Makefile.inc | 15 +- src/regress/lib/libssl/interop/cipher/Makefile | 15 +- src/regress/lib/libssl/unit/tls_prf.c | 48 +----- 4 files changed, 115 insertions(+), 189 deletions(-) (limited to 'src/regress/lib/libssl') diff --git a/src/regress/lib/libssl/client/clienttest.c b/src/regress/lib/libssl/client/clienttest.c index 8fb5a1da7f..18cf2d0c95 100644 --- a/src/regress/lib/libssl/client/clienttest.c +++ b/src/regress/lib/libssl/client/clienttest.c @@ -1,4 +1,4 @@ -/* $OpenBSD: clienttest.c,v 1.42 2023/07/11 17:03:44 tb Exp $ */ +/* $OpenBSD: clienttest.c,v 1.43 2024/02/03 15:58:34 beck Exp $ */ /* * Copyright (c) 2015 Joel Sing * @@ -36,7 +36,7 @@ #define TLS13_RANDOM_OFFSET (TLS13_HM_OFFSET + 2) #define TLS13_SESSION_OFFSET (TLS13_HM_OFFSET + 34) #define TLS13_CIPHER_OFFSET (TLS13_HM_OFFSET + 69) -#define TLS13_KEY_SHARE_OFFSET (TLS13_HM_OFFSET + 188) +#define TLS13_KEY_SHARE_OFFSET (TLS13_HM_OFFSET + 184) #define TLS13_ONLY_KEY_SHARE_OFFSET (TLS13_HM_OFFSET + 98) #define TLS1_3_VERSION_ONLY (TLS1_3_VERSION | 0x10000) @@ -75,57 +75,54 @@ static const uint8_t cipher_list_dtls12_aes[] = { 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, 0x00, 0x9f, 0x00, 0x6b, 0x00, 0x39, 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, - 0xff, 0x85, 0x00, 0xc4, 0x00, 0x88, 0x00, 0x81, - 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35, 0x00, 0xc0, - 0x00, 0x84, 0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, - 0xc0, 0x23, 0xc0, 0x13, 0xc0, 0x09, 0x00, 0x9e, - 0x00, 0x67, 0x00, 0x33, 0x00, 0xbe, 0x00, 0x45, - 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f, 0x00, 0xba, - 0x00, 0x41, 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, - 0x00, 0x0a, 0x00, 0xff + 0x00, 0xc4, 0x00, 0x88, 0x00, 0x9d, 0x00, 0x3d, + 0x00, 0x35, 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, + 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, + 0xc0, 0x09, 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, + 0x00, 0xbe, 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, + 0x00, 0x2f, 0x00, 0xba, 0x00, 0x41, 0xc0, 0x12, + 0xc0, 0x08, 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, }; static const uint8_t cipher_list_dtls12_chacha[] = { 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, 0x00, 0x9f, 0x00, 0x6b, 0x00, 0x39, - 0xff, 0x85, 0x00, 0xc4, 0x00, 0x88, 0x00, 0x81, - 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35, 0x00, 0xc0, - 0x00, 0x84, 0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, - 0xc0, 0x23, 0xc0, 0x13, 0xc0, 0x09, 0x00, 0x9e, - 0x00, 0x67, 0x00, 0x33, 0x00, 0xbe, 0x00, 0x45, - 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f, 0x00, 0xba, - 0x00, 0x41, 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, - 0x00, 0x0a, 0x00, 0xff, + 0x00, 0xc4, 0x00, 0x88, 0x00, 0x9d, 0x00, 0x3d, + 0x00, 0x35, 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, + 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, + 0xc0, 0x09, 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, + 0x00, 0xbe, 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, + 0x00, 0x2f, 0x00, 0xba, 0x00, 0x41, 0xc0, 0x12, + 0xc0, 0x08, 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, }; static const uint8_t client_hello_dtls12[] = { 0x16, 0xfe, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xbe, 0x01, 0x00, 0x00, - 0xb2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xb2, 0xfe, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xba, 0x01, 0x00, 0x00, + 0xae, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xae, 0xfe, 0xfd, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0xc0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, 0x00, 0x9f, 0x00, 0x6b, 0x00, - 0x39, 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0xff, - 0x85, 0x00, 0xc4, 0x00, 0x88, 0x00, 0x81, 0x00, - 0x9d, 0x00, 0x3d, 0x00, 0x35, 0x00, 0xc0, 0x00, - 0x84, 0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, 0xc0, - 0x23, 0xc0, 0x13, 0xc0, 0x09, 0x00, 0x9e, 0x00, - 0x67, 0x00, 0x33, 0x00, 0xbe, 0x00, 0x45, 0x00, - 0x9c, 0x00, 0x3c, 0x00, 0x2f, 0x00, 0xba, 0x00, - 0x41, 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, 0x00, - 0x0a, 0x00, 0xff, 0x01, 0x00, 0x00, 0x34, 0x00, - 0x0b, 0x00, 0x02, 0x01, 0x00, 0x00, 0x0a, 0x00, - 0x0a, 0x00, 0x08, 0x00, 0x1d, 0x00, 0x17, 0x00, - 0x18, 0x00, 0x19, 0x00, 0x23, 0x00, 0x00, 0x00, - 0x0d, 0x00, 0x18, 0x00, 0x16, 0x08, 0x06, 0x06, - 0x01, 0x06, 0x03, 0x08, 0x05, 0x05, 0x01, 0x05, - 0x03, 0x08, 0x04, 0x04, 0x01, 0x04, 0x03, 0x02, - 0x01, 0x02, 0x03, + 0x39, 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0x00, + 0xc4, 0x00, 0x88, 0x00, 0x9d, 0x00, 0x3d, 0x00, + 0x35, 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, 0xc0, + 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, 0xc0, + 0x09, 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, 0x00, + 0xbe, 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, 0x00, + 0x2f, 0x00, 0xba, 0x00, 0x41, 0xc0, 0x12, 0xc0, + 0x08, 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, 0x01, + 0x00, 0x00, 0x34, 0x00, 0x0b, 0x00, 0x02, 0x01, + 0x00, 0x00, 0x0a, 0x00, 0x0a, 0x00, 0x08, 0x00, + 0x1d, 0x00, 0x17, 0x00, 0x18, 0x00, 0x19, 0x00, + 0x23, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x18, 0x00, + 0x16, 0x08, 0x06, 0x06, 0x01, 0x06, 0x03, 0x08, + 0x05, 0x05, 0x01, 0x05, 0x03, 0x08, 0x04, 0x04, + 0x01, 0x04, 0x03, 0x02, 0x01, 0x02, 0x03, }; static const uint8_t cipher_list_tls10[] = { @@ -186,92 +183,90 @@ static const uint8_t cipher_list_tls12_aes[] = { 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, 0x00, 0x9f, 0x00, 0x6b, 0x00, 0x39, 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, - 0xff, 0x85, 0x00, 0xc4, 0x00, 0x88, 0x00, 0x81, - 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35, 0x00, 0xc0, - 0x00, 0x84, 0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, - 0xc0, 0x23, 0xc0, 0x13, 0xc0, 0x09, 0x00, 0x9e, - 0x00, 0x67, 0x00, 0x33, 0x00, 0xbe, 0x00, 0x45, - 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f, 0x00, 0xba, - 0x00, 0x41, 0xc0, 0x11, 0xc0, 0x07, 0x00, 0x05, - 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, 0x00, 0x0a, - 0x00, 0xff, + 0x00, 0xc4, 0x00, 0x88, 0x00, 0x9d, 0x00, 0x3d, + 0x00, 0x35, 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, + 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, + 0xc0, 0x09, 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, + 0x00, 0xbe, 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, + 0x00, 0x2f, 0x00, 0xba, 0x00, 0x41, 0xc0, 0x11, + 0xc0, 0x07, 0x00, 0x05, 0xc0, 0x12, 0xc0, 0x08, + 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, }; static const uint8_t cipher_list_tls12_chacha[] = { 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, 0x00, 0x9f, 0x00, 0x6b, 0x00, 0x39, - 0xff, 0x85, 0x00, 0xc4, 0x00, 0x88, 0x00, 0x81, - 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35, 0x00, 0xc0, - 0x00, 0x84, 0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, - 0xc0, 0x23, 0xc0, 0x13, 0xc0, 0x09, 0x00, 0x9e, - 0x00, 0x67, 0x00, 0x33, 0x00, 0xbe, 0x00, 0x45, - 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f, 0x00, 0xba, - 0x00, 0x41, 0xc0, 0x11, 0xc0, 0x07, 0x00, 0x05, - 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, 0x00, 0x0a, - 0x00, 0xff, + 0x00, 0xc4, 0x00, 0x88, 0x00, 0x9d, 0x00, 0x3d, + 0x00, 0x35, 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, + 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, + 0xc0, 0x09, 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, + 0x00, 0xbe, 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, + 0x00, 0x2f, 0x00, 0xba, 0x00, 0x41, 0xc0, 0x11, + 0xc0, 0x07, 0x00, 0x05, 0xc0, 0x12, 0xc0, 0x08, + 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, }; static const uint8_t client_hello_tls12[] = { - 0x16, 0x03, 0x03, 0x00, 0xbb, 0x01, 0x00, 0x00, - 0xb7, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x16, 0x03, 0x03, 0x00, 0xb7, 0x01, 0x00, 0x00, + 0xb3, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x5a, 0xc0, 0x30, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, 0x00, 0x9f, 0x00, 0x6b, 0x00, 0x39, - 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0xff, 0x85, - 0x00, 0xc4, 0x00, 0x88, 0x00, 0x81, 0x00, 0x9d, - 0x00, 0x3d, 0x00, 0x35, 0x00, 0xc0, 0x00, 0x84, - 0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, - 0xc0, 0x13, 0xc0, 0x09, 0x00, 0x9e, 0x00, 0x67, - 0x00, 0x33, 0x00, 0xbe, 0x00, 0x45, 0x00, 0x9c, - 0x00, 0x3c, 0x00, 0x2f, 0x00, 0xba, 0x00, 0x41, - 0xc0, 0x11, 0xc0, 0x07, 0x00, 0x05, 0xc0, 0x12, - 0xc0, 0x08, 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, - 0x01, 0x00, 0x00, 0x34, 0x00, 0x0b, 0x00, 0x02, - 0x01, 0x00, 0x00, 0x0a, 0x00, 0x0a, 0x00, 0x08, - 0x00, 0x1d, 0x00, 0x17, 0x00, 0x18, 0x00, 0x19, - 0x00, 0x23, 0x00, 0x00, 0x00, 0x0d, 0x00, 0x18, - 0x00, 0x16, 0x08, 0x06, 0x06, 0x01, 0x06, 0x03, - 0x08, 0x05, 0x05, 0x01, 0x05, 0x03, 0x08, 0x04, - 0x04, 0x01, 0x04, 0x03, 0x02, 0x01, 0x02, 0x03, + 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0x00, 0xc4, + 0x00, 0x88, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35, + 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, 0xc0, 0x2b, + 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, 0xc0, 0x09, + 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, 0x00, 0xbe, + 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f, + 0x00, 0xba, 0x00, 0x41, 0xc0, 0x11, 0xc0, 0x07, + 0x00, 0x05, 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, + 0x00, 0x0a, 0x00, 0xff, 0x01, 0x00, 0x00, 0x34, + 0x00, 0x0b, 0x00, 0x02, 0x01, 0x00, 0x00, 0x0a, + 0x00, 0x0a, 0x00, 0x08, 0x00, 0x1d, 0x00, 0x17, + 0x00, 0x18, 0x00, 0x19, 0x00, 0x23, 0x00, 0x00, + 0x00, 0x0d, 0x00, 0x18, 0x00, 0x16, 0x08, 0x06, + 0x06, 0x01, 0x06, 0x03, 0x08, 0x05, 0x05, 0x01, + 0x05, 0x03, 0x08, 0x04, 0x04, 0x01, 0x04, 0x03, + 0x02, 0x01, 0x02, 0x03, }; static const uint8_t cipher_list_tls13_aes[] = { 0x13, 0x02, 0x13, 0x03, 0x13, 0x01, 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, 0x00, 0x9f, 0x00, 0x6b, 0x00, 0x39, - 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0xff, 0x85, - 0x00, 0xc4, 0x00, 0x88, 0x00, 0x81, 0x00, 0x9d, - 0x00, 0x3d, 0x00, 0x35, 0x00, 0xc0, 0x00, 0x84, - 0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, - 0xc0, 0x13, 0xc0, 0x09, 0x00, 0x9e, 0x00, 0x67, - 0x00, 0x33, 0x00, 0xbe, 0x00, 0x45, 0x00, 0x9c, - 0x00, 0x3c, 0x00, 0x2f, 0x00, 0xba, 0x00, 0x41, - 0xc0, 0x11, 0xc0, 0x07, 0x00, 0x05, 0xc0, 0x12, - 0xc0, 0x08, 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, + 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0x00, 0xc4, + 0x00, 0x88, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35, + 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, 0xc0, 0x2b, + 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, 0xc0, 0x09, + 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, 0x00, 0xbe, + 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f, + 0x00, 0xba, 0x00, 0x41, 0xc0, 0x11, 0xc0, 0x07, + 0x00, 0x05, 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, + 0x00, 0x0a, 0x00, 0xff, }; static const uint8_t cipher_list_tls13_chacha[] = { 0x13, 0x03, 0x13, 0x02, 0x13, 0x01, 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, - 0x00, 0x9f, 0x00, 0x6b, 0x00, 0x39, 0xff, 0x85, - 0x00, 0xc4, 0x00, 0x88, 0x00, 0x81, 0x00, 0x9d, - 0x00, 0x3d, 0x00, 0x35, 0x00, 0xc0, 0x00, 0x84, - 0xc0, 0x2f, 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, - 0xc0, 0x13, 0xc0, 0x09, 0x00, 0x9e, 0x00, 0x67, - 0x00, 0x33, 0x00, 0xbe, 0x00, 0x45, 0x00, 0x9c, - 0x00, 0x3c, 0x00, 0x2f, 0x00, 0xba, 0x00, 0x41, - 0xc0, 0x11, 0xc0, 0x07, 0x00, 0x05, 0xc0, 0x12, - 0xc0, 0x08, 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, + 0x00, 0x9f, 0x00, 0x6b, 0x00, 0x39, 0x00, 0xc4, + 0x00, 0x88, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35, + 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, 0xc0, 0x2b, + 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, 0xc0, 0x09, + 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, 0x00, 0xbe, + 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f, + 0x00, 0xba, 0x00, 0x41, 0xc0, 0x11, 0xc0, 0x07, + 0x00, 0x05, 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, + 0x00, 0x0a, 0x00, 0xff, }; static const uint8_t client_hello_tls13[] = { - 0x16, 0x03, 0x03, 0x01, 0x14, 0x01, 0x00, 0x01, - 0x10, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x16, 0x03, 0x03, 0x01, 0x10, 0x01, 0x00, 0x01, + 0x0c, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -279,33 +274,32 @@ static const uint8_t client_hello_tls13[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x13, 0x03, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x13, 0x03, 0x13, 0x02, 0x13, 0x01, 0xcc, 0xa9, 0xcc, 0xa8, 0xcc, 0xaa, 0xc0, 0x30, 0xc0, 0x2c, 0xc0, 0x28, 0xc0, 0x24, 0xc0, 0x14, 0xc0, 0x0a, 0x00, 0x9f, - 0x00, 0x6b, 0x00, 0x39, 0xff, 0x85, 0x00, 0xc4, - 0x00, 0x88, 0x00, 0x81, 0x00, 0x9d, 0x00, 0x3d, - 0x00, 0x35, 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, - 0xc0, 0x2b, 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, - 0xc0, 0x09, 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, - 0x00, 0xbe, 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, - 0x00, 0x2f, 0x00, 0xba, 0x00, 0x41, 0xc0, 0x11, - 0xc0, 0x07, 0x00, 0x05, 0xc0, 0x12, 0xc0, 0x08, - 0x00, 0x16, 0x00, 0x0a, 0x00, 0xff, 0x01, 0x00, - 0x00, 0x67, 0x00, 0x2b, 0x00, 0x05, 0x04, 0x03, - 0x04, 0x03, 0x03, 0x00, 0x33, 0x00, 0x26, 0x00, - 0x24, 0x00, 0x1d, 0x00, 0x20, 0x00, 0x00, 0x00, + 0x00, 0x6b, 0x00, 0x39, 0x00, 0xc4, 0x00, 0x88, + 0x00, 0x81, 0x00, 0x9d, 0x00, 0x3d, 0x00, 0x35, + 0x00, 0xc0, 0x00, 0x84, 0xc0, 0x2f, 0xc0, 0x2b, + 0xc0, 0x27, 0xc0, 0x23, 0xc0, 0x13, 0xc0, 0x09, + 0x00, 0x9e, 0x00, 0x67, 0x00, 0x33, 0x00, 0xbe, + 0x00, 0x45, 0x00, 0x9c, 0x00, 0x3c, 0x00, 0x2f, + 0x00, 0xba, 0x00, 0x41, 0xc0, 0x11, 0xc0, 0x07, + 0x00, 0x05, 0xc0, 0x12, 0xc0, 0x08, 0x00, 0x16, + 0x00, 0x0a, 0x01, 0x00, 0x00, 0x67, 0x00, 0x2b, + 0x00, 0x05, 0x04, 0x03, 0x04, 0x03, 0x03, 0x00, + 0x33, 0x00, 0x26, 0x00, 0x24, 0x00, 0x1d, 0x00, + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, - 0x02, 0x01, 0x00, 0x00, 0x0a, 0x00, 0x0a, 0x00, - 0x08, 0x00, 0x1d, 0x00, 0x17, 0x00, 0x18, 0x00, - 0x19, 0x00, 0x23, 0x00, 0x00, 0x00, 0x0d, 0x00, - 0x18, 0x00, 0x16, 0x08, 0x06, 0x06, 0x01, 0x06, - 0x03, 0x08, 0x05, 0x05, 0x01, 0x05, 0x03, 0x08, - 0x04, 0x04, 0x01, 0x04, 0x03, 0x02, 0x01, 0x02, - 0x03, + 0x00, 0x00, 0x0b, 0x00, 0x02, 0x01, 0x00, 0x00, + 0x0a, 0x00, 0x0a, 0x00, 0x08, 0x00, 0x1d, 0x00, + 0x17, 0x00, 0x18, 0x00, 0x19, 0x00, 0x23, 0x00, + 0x00, 0x00, 0x0d, 0x00, 0x18, 0x00, 0x16, 0x08, + 0x06, 0x06, 0x01, 0x06, 0x03, 0x08, 0x05, 0x05, + 0x01, 0x05, 0x03, 0x08, 0x04, 0x04, 0x01, 0x04, + 0x03, 0x02, 0x01, 0x02, 0x03, }; static const uint8_t cipher_list_tls13_only_aes[] = { diff --git a/src/regress/lib/libssl/interop/Makefile.inc b/src/regress/lib/libssl/interop/Makefile.inc index 4a66390cbd..fa22fb8514 100644 --- a/src/regress/lib/libssl/interop/Makefile.inc +++ b/src/regress/lib/libssl/interop/Makefile.inc @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile.inc,v 1.9 2023/10/18 19:14:32 anton Exp $ +# $OpenBSD: Makefile.inc,v 1.10 2024/02/03 15:58:34 beck Exp $ .PATH: ${.CURDIR}/.. @@ -39,7 +39,7 @@ run-self-client-server: client server 127.0.0.1.crt CLEANFILES += 127.0.0.1.{crt,key} \ ca.{crt,key,srl} fake-ca.{crt,key} \ {client,server}.{req,crt,key} \ - {dsa,ec,gost,rsa}.{key,req,crt} \ + {dsa,ec,rsa}.{key,req,crt} \ dh.param 127.0.0.1.crt: @@ -70,10 +70,6 @@ dsa.key: ec.key: openssl ecparam -genkey -name secp256r1 -out $@ -gost.key: - openssl genpkey -algorithm gost2001 \ - -pkeyopt paramset:A -pkeyopt dgst:md_gost94 -out $@ - rsa.key: openssl genrsa -out $@ 2048 @@ -82,11 +78,6 @@ dsa.req ec.req rsa.req: ${@:R}.key -subj /L=OpenBSD/O=tls-regress/OU=${@:R}/CN=localhost/ \ -nodes -key ${@:R}.key -out $@ -gost.req: ${@:R}.key - openssl req -batch -new -md_gost94 \ - -subj /L=OpenBSD/O=tls-regress/OU=${@:R}/CN=localhost/ \ - -nodes -key ${@:R}.key -out $@ - -dsa.crt ec.crt gost.crt rsa.crt: ca.crt ${@:R}.req +dsa.crt ec.crt rsa.crt: ca.crt ${@:R}.req openssl x509 -CAcreateserial -CAkey ca.key -CA ca.crt \ -req -in ${@:R}.req -out $@ diff --git a/src/regress/lib/libssl/interop/cipher/Makefile b/src/regress/lib/libssl/interop/cipher/Makefile index 627cfc8f9f..3a116d5ed5 100644 --- a/src/regress/lib/libssl/interop/cipher/Makefile +++ b/src/regress/lib/libssl/interop/cipher/Makefile @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile,v 1.13 2023/10/30 17:15:21 tb Exp $ +# $OpenBSD: Makefile,v 1.14 2024/02/03 15:58:34 beck Exp $ # Connect a client to a server. Both can be current libressl, or # openssl 1.1 or 3.0. Create lists of supported ciphers @@ -6,17 +6,6 @@ # certificate with compatible type. Check that client and server # have used correct cipher by grepping in their session print out. -run-cipher-GOST2001-GOST89-GOST89-client-libressl-server-libressl \ -run-cipher-GOST2012256-GOST89-GOST89-client-libressl-server-libressl \ -client-cipher-GOST2012256-GOST89-GOST89-client-libressl-server-libressl.out \ -client-cipher-GOST2001-GOST89-GOST89-client-libressl-server-libressl.out \ -server-cipher-GOST2001-GOST89-GOST89-client-libressl-server-libressl.out \ -server-cipher-GOST2012256-GOST89-GOST89-client-libressl-server-libressl.out \ -check-cipher-GOST2001-GOST89-GOST89-client-libressl-server-libressl \ -check-cipher-GOST2012256-GOST89-GOST89-client-libressl-server-libressl: - # gost does not work with libressl TLS 1.3 right now - @echo DISABLED - LIBRARIES = libressl .if exists(/usr/local/bin/eopenssl11) LIBRARIES += openssl11 @@ -96,8 +85,6 @@ LEVEL_openssl30 = ,@SECLEVEL=0 TYPE_${cipher} = dsa .elif "${cipher:M*-ECDSA-*}" != "" TYPE_${cipher} = ec -.elif "${cipher:M*-GOST89-*}" != "" -TYPE_${cipher} = gost .elif "${cipher:M*-RSA-*}" != "" TYPE_${cipher} = rsa .else diff --git a/src/regress/lib/libssl/unit/tls_prf.c b/src/regress/lib/libssl/unit/tls_prf.c index a22d0e70d0..b6836da167 100644 --- a/src/regress/lib/libssl/unit/tls_prf.c +++ b/src/regress/lib/libssl/unit/tls_prf.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tls_prf.c,v 1.8 2022/11/26 16:08:57 tb Exp $ */ +/* $OpenBSD: tls_prf.c,v 1.9 2024/02/03 15:58:34 beck Exp $ */ /* * Copyright (c) 2017 Joel Sing * @@ -57,29 +57,6 @@ static struct tls_prf_test tls_prf_tests[] = { 0x12, 0x44, 0xec, 0x60, 0x61, 0xd1, 0x8a, 0x66, }, }, - { - .desc = "GOST94", - .ssl_method = TLSv1_2_method, - .cipher_value = 0x0081, - .out = { - 0xcc, 0xd4, 0x89, 0x5f, 0x52, 0x08, 0x9b, 0xc7, - 0xf9, 0xb5, 0x83, 0x58, 0xe8, 0xc7, 0x71, 0x49, - 0x39, 0x99, 0x1f, 0x14, 0x8f, 0x85, 0xbe, 0x64, - 0xee, 0x40, 0x5c, 0xe7, 0x5f, 0x68, 0xaf, 0xf2, - 0xcd, 0x3a, 0x94, 0x52, 0x33, 0x53, 0x46, 0x7d, - 0xb6, 0xc5, 0xe1, 0xb8, 0xa4, 0x04, 0x69, 0x91, - 0x0a, 0x9c, 0x88, 0x86, 0xd9, 0x60, 0x63, 0xdd, - 0xd8, 0xe7, 0x2e, 0xee, 0xce, 0xe2, 0x20, 0xd8, - 0x9a, 0xfa, 0x9c, 0x63, 0x0c, 0x9c, 0xa1, 0x76, - 0xed, 0x78, 0x9a, 0x84, 0x70, 0xb4, 0xd1, 0x51, - 0x1f, 0xde, 0x44, 0xe8, 0x90, 0x21, 0x3f, 0xeb, - 0x05, 0xf4, 0x77, 0x59, 0xf3, 0xad, 0xdd, 0x34, - 0x3d, 0x3a, 0x7c, 0xd0, 0x59, 0x40, 0xe1, 0x3f, - 0x04, 0x4b, 0x8b, 0xd6, 0x95, 0x46, 0xb4, 0x9e, - 0x4c, 0x2d, 0xf7, 0xee, 0xbd, 0xbc, 0xcb, 0x5c, - 0x3a, 0x36, 0x0c, 0xd0, 0x27, 0xcb, 0x45, 0x06, - }, - }, { .desc = "SHA256 (via TLSv1.2)", .ssl_method = TLSv1_2_method, @@ -126,29 +103,6 @@ static struct tls_prf_test tls_prf_tests[] = { 0x05, 0x76, 0x4b, 0xe4, 0x28, 0x50, 0x4a, 0xf2, }, }, - { - .desc = "STREEBOG256", - .ssl_method = TLSv1_2_method, - .cipher_value = 0xff87, - .out = { - 0x3e, 0x13, 0xb9, 0xeb, 0x85, 0x8c, 0xb4, 0x21, - 0x23, 0x40, 0x9b, 0x73, 0x04, 0x56, 0xe2, 0xff, - 0xce, 0x52, 0x1f, 0x82, 0x7f, 0x17, 0x5b, 0x80, - 0x23, 0x71, 0xca, 0x30, 0xdf, 0xfc, 0xdc, 0x2d, - 0xc0, 0xfc, 0x5d, 0x23, 0x5a, 0x54, 0x7f, 0xae, - 0xf5, 0x7d, 0x52, 0x1e, 0x86, 0x95, 0xe1, 0x2d, - 0x28, 0xe7, 0xbe, 0xd7, 0xd0, 0xbf, 0xa9, 0x96, - 0x13, 0xd0, 0x9c, 0x0c, 0x1c, 0x16, 0x05, 0xbb, - 0x26, 0xd7, 0x30, 0x39, 0xb9, 0x53, 0x28, 0x98, - 0x4f, 0x1b, 0x83, 0xc3, 0xce, 0x1c, 0x7c, 0x34, - 0xa2, 0xc4, 0x7a, 0x54, 0x16, 0xc6, 0xa7, 0x9e, - 0xed, 0x4b, 0x7b, 0x83, 0xa6, 0xae, 0xe2, 0x5b, - 0x96, 0xf5, 0x6c, 0xad, 0x1f, 0xa3, 0x83, 0xb2, - 0x84, 0x32, 0xed, 0xe3, 0x2c, 0xf6, 0xd4, 0x73, - 0x30, 0xef, 0x9d, 0xbe, 0xe7, 0x23, 0x9a, 0xbf, - 0x4d, 0x1c, 0xe7, 0xef, 0x3d, 0xea, 0x46, 0xe2, - }, - }, }; #define N_TLS_PRF_TESTS \ -- cgit v1.2.3-55-g6feb