Version bump
This commit is contained in:
Executable → Regular
+11
-1
@@ -35,6 +35,7 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN
|
||||
bftest ssltest_old dsatest exptest rsa_test \
|
||||
evp_test evp_extra_test igetest v3nametest v3ext \
|
||||
crltest danetest bad_dtls_test lhash_test \
|
||||
conf_include_test \
|
||||
constant_time_test verify_extra_test clienthellotest \
|
||||
packettest asynctest secmemtest srptest memleaktest stack_test \
|
||||
dtlsv1listentest ct_test threadstest afalgtest d2i_test \
|
||||
@@ -390,6 +391,10 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN
|
||||
INCLUDE[time_offset_test]=../include
|
||||
DEPEND[time_offset_test]=../libcrypto libtestutil.a
|
||||
|
||||
SOURCE[conf_include_test]=conf_include_test.c
|
||||
INCLUDE[conf_include_test]=../include
|
||||
DEPEND[conf_include_test]=../libcrypto libtestutil.a
|
||||
|
||||
# Internal test programs. These are essentially a collection of internal
|
||||
# test routines. Some of them need to reach internal symbols that aren't
|
||||
# available through the shared library (at least on Linux, Solaris, Windows
|
||||
@@ -400,7 +405,8 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN
|
||||
# names with the DLL import libraries.
|
||||
IF[{- $disabled{shared} || $target{build_scheme}->[1] ne 'windows' -}]
|
||||
PROGRAMS_NO_INST=asn1_internal_test modes_internal_test x509_internal_test \
|
||||
tls13encryptiontest wpackettest ctype_internal_test
|
||||
tls13encryptiontest wpackettest ctype_internal_test \
|
||||
rdrand_sanitytest
|
||||
IF[{- !$disabled{poly1305} -}]
|
||||
PROGRAMS_NO_INST=poly1305_internal_test
|
||||
ENDIF
|
||||
@@ -460,6 +466,10 @@ INCLUDE_MAIN___test_libtestutil_OLB = /INCLUDE=MAIN
|
||||
SOURCE[curve448_internal_test]=curve448_internal_test.c
|
||||
INCLUDE[curve448_internal_test]=.. ../include ../crypto/ec/curve448
|
||||
DEPEND[curve448_internal_test]=../libcrypto.a libtestutil.a
|
||||
|
||||
SOURCE[rdrand_sanitytest]=rdrand_sanitytest.c
|
||||
INCLUDE[rdrand_sanitytest]=../include
|
||||
DEPEND[rdrand_sanitytest]=../libcrypto.a libtestutil.a
|
||||
ENDIF
|
||||
|
||||
IF[{- !$disabled{mdc2} -}]
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIICQDCCASigAwIBAgIBAjANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDDAdSb290
|
||||
IENBMCAXDTE4MDIyNzE3MTAxN1oYDzIxMTgwMjI4MTcxMDE3WjAXMRUwEwYDVQQD
|
||||
DAxDbGllbnQtRWQ0NDgwQzAFBgMrZXEDOgB4bFbdmw9IviAHXKt/2/hRDaiEr6JH
|
||||
bsLr3IPNQq3XIYxYh4AIPx3YffYW3xukHDGWTQ50dptQiwCjezB5MB0GA1UdDgQW
|
||||
BBTEno3ezhmTYZzGdD65nVRMp3f2hzAfBgNVHSMEGDAWgBSO9SWvHptrhD18gJrJ
|
||||
U5xNcvejUjAJBgNVHRMEAjAAMBMGA1UdJQQMMAoGCCsGAQUFBwMCMBcGA1UdEQQQ
|
||||
MA6CDENsaWVudC1FZDQ0ODANBgkqhkiG9w0BAQsFAAOCAQEAP2/y30iko57i8lUY
|
||||
ju9Vb4V0TCATKa+HNnzHG1jyWAgiWpPtHe269Cnb8AvdwWKVeppKkG6LeWHo3btP
|
||||
LOd8xEFhnklM4rPkxMYMCQ0lcw2xagbw3CW12mLs15N3QCjxSnA/kuuftzor9fRl
|
||||
gzazVh4Kf/jXtlRyBI6R4+bXSGgKhIipdBF5xWmTPvZBViWKxgysQuP1bNzw9AC4
|
||||
QMGm4ApOVuY9iE8dPYKgJUVGWc3d9l23fkd422kEgz5euK66HovjYaBj0S0kZhEZ
|
||||
tWUCRTcv4k40ke2jr8/Zm3Ugab09XWU2T98k/OvXu+Y0AlLMZp2ehC6wXObprEXv
|
||||
dY5URg==
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,4 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOWmRn7GCRupyB1q/qQZ+h1lEt+TGtZSNJ5U+Saa+X+hk
|
||||
gWpeKJP9MTpw7kdMAeAhb6XlhCANH2zV9A==
|
||||
-----END PRIVATE KEY-----
|
||||
Executable → Regular
+1
@@ -55,6 +55,7 @@ key() {
|
||||
args=("${args[@]}" -pkeyopt ec_param_enc:named_curve);;
|
||||
dsa) args=(-paramfile "$bits");;
|
||||
ed25519) ;;
|
||||
ed448) ;;
|
||||
*) printf "Unsupported key algorithm: %s\n" "$alg" >&2; return 1;;
|
||||
esac
|
||||
stderr_onerror \
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIICHTCCAQWgAwIBAgIBAjANBgkqhkiG9w0BAQsFADASMRAwDgYDVQQDDAdSb290
|
||||
IENBMCAXDTE4MDIyNzE1MDcxM1oYDzIxMTgwMjI4MTUwNzEzWjAQMQ4wDAYDVQQD
|
||||
DAVFZDQ0ODBDMAUGAytlcQM6ABBicYlhG1s3AoG5BFmY3r50lJzjQoER4zwuieEe
|
||||
QTvKxLEV06vGh79UWO6yQ5FxqmxvM1F/Xw7RAKNfMF0wHQYDVR0OBBYEFAwa1L4m
|
||||
3pwA8+IEJ7K/4izrjJIHMB8GA1UdIwQYMBaAFHB/Lq6DaFmYBCMqzes+F80k3QFJ
|
||||
MAkGA1UdEwQCMAAwEAYDVR0RBAkwB4IFRWQ0NDgwDQYJKoZIhvcNAQELBQADggEB
|
||||
AAugH2aE6VvArnOVjKBtalqtHlx+NCC3+S65sdWc9A9sNgI1ZiN7dn76TKn5d0T7
|
||||
NqV8nY1rwQg6WPGrCD6Eh63qhotytqYIxltppb4MOUJcz/Zf0ZwhB5bUfwNB//Ih
|
||||
5aZT86FpXVuyMnwUTWPcISJqpZiBv95yzZFMpniHFvecvV445ly4TFW5y6VURh40
|
||||
Tg4tMgjPTE7ADw+dX4FvnTWY3blxT1GzGxGvqWW4HgP8dOETnjmAwCzN0nUVmH9s
|
||||
7ybHORcSljcpe0XH6L/K7mbI+r8mVLsAoIzUeDwUdKKJZ2uGEtdhQDmJBp4EjOXE
|
||||
3qIn3wEQQ6ax4NIwkZihdLI=
|
||||
-----END CERTIFICATE-----
|
||||
@@ -0,0 +1,4 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOTiHqANC9pFHbs8VAeqZ52cwKi0jPTSM5GjsKW4vbgG6
|
||||
BMFSdURqGj2FD02H7xsyrR20pIXI1GbE+A==
|
||||
-----END PRIVATE KEY-----
|
||||
Executable → Regular
+11
-4
@@ -111,12 +111,19 @@ static int test_client_hello(int currtest)
|
||||
* F5_WORKAROUND_MIN_MSG_LEN bytes long - meaning padding will be
|
||||
* needed.
|
||||
*/
|
||||
if (currtest == TEST_ADD_PADDING
|
||||
&& (!TEST_false(SSL_CTX_set_alpn_protos(ctx,
|
||||
if (currtest == TEST_ADD_PADDING) {
|
||||
if (!TEST_false(SSL_CTX_set_alpn_protos(ctx,
|
||||
(unsigned char *)alpn_prots,
|
||||
sizeof(alpn_prots) - 1))))
|
||||
sizeof(alpn_prots) - 1)))
|
||||
goto end;
|
||||
/*
|
||||
* Otherwise we need to make sure we have a small enough message to
|
||||
* not need padding.
|
||||
*/
|
||||
} else if (!TEST_true(SSL_CTX_set_cipher_list(ctx,
|
||||
"AES128-SHA:TLS13-AES-128-GCM-SHA256"))) {
|
||||
goto end;
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
|
||||
@@ -0,0 +1,161 @@
|
||||
/*
|
||||
* Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the OpenSSL license (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <openssl/conf.h>
|
||||
#include <openssl/err.h>
|
||||
#include "testutil.h"
|
||||
|
||||
#ifdef _WIN32
|
||||
# include <direct.h>
|
||||
# define DIRSEP "/\\"
|
||||
# define chdir _chdir
|
||||
# define DIRSEP_PRESERVE 0
|
||||
#elif !defined(OPENSSL_NO_POSIX_IO)
|
||||
# include <unistd.h>
|
||||
# ifndef OPENSSL_SYS_VMS
|
||||
# define DIRSEP "/"
|
||||
# define DIRSEP_PRESERVE 0
|
||||
# else
|
||||
# define DIRSEP "/]:"
|
||||
# define DIRSEP_PRESERVE 1
|
||||
# endif
|
||||
#else
|
||||
/* the test does not work without chdir() */
|
||||
# define chdir(x) (-1);
|
||||
# define DIRSEP ""
|
||||
# define DIRSEP_PRESERVE 0
|
||||
#endif
|
||||
|
||||
/* changes path to that of the filename */
|
||||
static int change_path(const char *file)
|
||||
{
|
||||
char *s = OPENSSL_strdup(file);
|
||||
char *p = s;
|
||||
char *last = NULL;
|
||||
int ret;
|
||||
|
||||
if (s == NULL)
|
||||
return -1;
|
||||
|
||||
while ((p = strpbrk(p, DIRSEP)) != NULL) {
|
||||
last = p++;
|
||||
}
|
||||
if (last == NULL)
|
||||
return 0;
|
||||
last[DIRSEP_PRESERVE] = 0;
|
||||
|
||||
TEST_note("changing path to %s", s);
|
||||
ret = chdir(s);
|
||||
OPENSSL_free(s);
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
* This test program checks the operation of the .include directive.
|
||||
*/
|
||||
|
||||
static CONF *conf;
|
||||
static BIO *in;
|
||||
static int expect_failure = 0;
|
||||
|
||||
static int test_load_config(void)
|
||||
{
|
||||
long errline;
|
||||
long val;
|
||||
char *str;
|
||||
long err;
|
||||
|
||||
if (!TEST_int_gt(NCONF_load_bio(conf, in, &errline), 0)
|
||||
|| !TEST_int_eq(err = ERR_peek_error(), 0)) {
|
||||
if (expect_failure)
|
||||
return 1;
|
||||
TEST_note("Failure loading the configuration at line %ld", errline);
|
||||
return 0;
|
||||
}
|
||||
if (expect_failure) {
|
||||
TEST_note("Failure expected but did not happen");
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (!TEST_int_gt(CONF_modules_load(conf, NULL, 0), 0)) {
|
||||
TEST_note("Failed in CONF_modules_load");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* verify whether RANDFILE is set correctly */
|
||||
str = NCONF_get_string(conf, "", "RANDFILE");
|
||||
if (!TEST_ptr(str) || !TEST_str_eq(str, "./.rnd")) {
|
||||
TEST_note("RANDFILE incorrect");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* verify whether CA_default/default_days is set */
|
||||
val = 0;
|
||||
if (!TEST_int_eq(NCONF_get_number(conf, "CA_default", "default_days", &val), 1)
|
||||
|| !TEST_int_eq(val, 365)) {
|
||||
TEST_note("default_days incorrect");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* verify whether req/default_bits is set */
|
||||
val = 0;
|
||||
if (!TEST_int_eq(NCONF_get_number(conf, "req", "default_bits", &val), 1)
|
||||
|| !TEST_int_eq(val, 2048)) {
|
||||
TEST_note("default_bits incorrect");
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* verify whether countryName_default is set correctly */
|
||||
str = NCONF_get_string(conf, "req_distinguished_name", "countryName_default");
|
||||
if (!TEST_ptr(str) || !TEST_str_eq(str, "AU")) {
|
||||
TEST_note("countryName_default incorrect");
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
int setup_tests(void)
|
||||
{
|
||||
const char *conf_file;
|
||||
const char *arg2;
|
||||
|
||||
if (!TEST_ptr(conf = NCONF_new(NULL)))
|
||||
return 0;
|
||||
|
||||
conf_file = test_get_argument(0);
|
||||
|
||||
if (!TEST_ptr(conf_file)
|
||||
|| !TEST_ptr(in = BIO_new_file(conf_file, "r"))) {
|
||||
TEST_note("Unable to open the file argument");
|
||||
return 0;
|
||||
}
|
||||
|
||||
if ((arg2 = test_get_argument(1)) != NULL && *arg2 == 'f') {
|
||||
expect_failure = 1;
|
||||
}
|
||||
|
||||
/*
|
||||
* For this test we need to chdir as we use relative
|
||||
* path names in the config files.
|
||||
*/
|
||||
change_path(conf_file);
|
||||
|
||||
ADD_TEST(test_load_config);
|
||||
return 1;
|
||||
}
|
||||
|
||||
void cleanup_tests(void)
|
||||
{
|
||||
BIO_vfree(in);
|
||||
NCONF_free(conf);
|
||||
CONF_modules_unload(1);
|
||||
}
|
||||
@@ -15,10 +15,10 @@
|
||||
|
||||
/*
|
||||
* Even though the VMS C RTL claims to be C99 compatible, it's not entirely
|
||||
* so far (C RTL version 8.4). For the sake of these tests, we therefore
|
||||
* define our own.
|
||||
* so far (C RTL version 8.4). Same applies to OSF. For the sake of these
|
||||
* tests, we therefore define our own.
|
||||
*/
|
||||
#if defined(__VMS) && __CRTL_VER <= 80400000
|
||||
#if (defined(__VMS) && __CRTL_VER <= 80400000) || defined(__osf__)
|
||||
static int isblank(int c)
|
||||
{
|
||||
return c == ' ' || c == '\t';
|
||||
@@ -35,7 +35,9 @@ static int test_ctype_chars(int n)
|
||||
|
||||
return TEST_int_eq(isalpha(n) != 0, ossl_isalpha(n) != 0)
|
||||
&& TEST_int_eq(isalnum(n) != 0, ossl_isalnum(n) != 0)
|
||||
#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
|
||||
&& TEST_int_eq(isblank(n) != 0, ossl_isblank(n) != 0)
|
||||
#endif
|
||||
&& TEST_int_eq(iscntrl(n) != 0, ossl_iscntrl(n) != 0)
|
||||
&& TEST_int_eq(isdigit(n) != 0, ossl_isdigit(n) != 0)
|
||||
&& TEST_int_eq(isgraph(n) != 0, ossl_isgraph(n) != 0)
|
||||
|
||||
+1
-1
@@ -239,7 +239,7 @@ static int test_builtin(void)
|
||||
unsigned char dirt, offset;
|
||||
|
||||
nid = curves[n].nid;
|
||||
if (nid == NID_ipsec4 || nid == NID_X25519)
|
||||
if (nid == NID_ipsec4)
|
||||
continue;
|
||||
/* create new ecdsa key (== EC_KEY) */
|
||||
if (!TEST_ptr(eckey = EC_KEY_new())
|
||||
|
||||
@@ -1152,12 +1152,6 @@ static int internal_curve_test_method(int n)
|
||||
int r, nid = curves[n].nid;
|
||||
EC_GROUP *group;
|
||||
|
||||
/*
|
||||
* Skip for X25519 because low level operations such as EC_POINT_mul()
|
||||
* are not supported for this curve
|
||||
*/
|
||||
if (nid == NID_X25519)
|
||||
return 1;
|
||||
if (!TEST_ptr(group = EC_GROUP_new_by_curve_name(nid))) {
|
||||
TEST_info("Curve %s failed\n", OBJ_nid2sn(nid));
|
||||
return 0;
|
||||
|
||||
@@ -38,6 +38,7 @@ void HANDSHAKE_RESULT_free(HANDSHAKE_RESULT *result)
|
||||
OPENSSL_free(result->server_npn_negotiated);
|
||||
OPENSSL_free(result->client_alpn_negotiated);
|
||||
OPENSSL_free(result->server_alpn_negotiated);
|
||||
OPENSSL_free(result->result_session_ticket_app_data);
|
||||
sk_X509_NAME_pop_free(result->server_ca_names, X509_NAME_free);
|
||||
sk_X509_NAME_pop_free(result->client_ca_names, X509_NAME_free);
|
||||
OPENSSL_free(result->cipher);
|
||||
@@ -64,6 +65,7 @@ typedef struct ctx_data_st {
|
||||
size_t alpn_protocols_len;
|
||||
char *srp_user;
|
||||
char *srp_password;
|
||||
char *session_ticket_app_data;
|
||||
} CTX_DATA;
|
||||
|
||||
/* |ctx_data| itself is stack-allocated. */
|
||||
@@ -77,6 +79,8 @@ static void ctx_data_free_data(CTX_DATA *ctx_data)
|
||||
ctx_data->srp_user = NULL;
|
||||
OPENSSL_free(ctx_data->srp_password);
|
||||
ctx_data->srp_password = NULL;
|
||||
OPENSSL_free(ctx_data->session_ticket_app_data);
|
||||
ctx_data->session_ticket_app_data = NULL;
|
||||
}
|
||||
|
||||
static int ex_data_idx;
|
||||
@@ -453,6 +457,26 @@ static int server_srp_cb(SSL *s, int *ad, void *arg)
|
||||
}
|
||||
#endif /* !OPENSSL_NO_SRP */
|
||||
|
||||
static int generate_session_ticket_cb(SSL *s, void *arg)
|
||||
{
|
||||
CTX_DATA *server_ctx_data = arg;
|
||||
SSL_SESSION *ss = SSL_get_session(s);
|
||||
char *app_data = server_ctx_data->session_ticket_app_data;
|
||||
|
||||
if (ss == NULL || app_data == NULL)
|
||||
return 0;
|
||||
|
||||
return SSL_SESSION_set1_ticket_appdata(ss, app_data, strlen(app_data));
|
||||
}
|
||||
|
||||
static SSL_TICKET_RETURN decrypt_session_ticket_cb(SSL *s, SSL_SESSION *ss,
|
||||
const unsigned char *keyname,
|
||||
size_t keyname_len,
|
||||
SSL_TICKET_RETURN retv, void *arg)
|
||||
{
|
||||
return retv;
|
||||
}
|
||||
|
||||
/*
|
||||
* Configure callbacks and other properties that can't be set directly
|
||||
* in the server/client CONF.
|
||||
@@ -607,6 +631,21 @@ static int configure_handshake_ctx(SSL_CTX *server_ctx, SSL_CTX *server2_ctx,
|
||||
OPENSSL_free(alpn_protos);
|
||||
}
|
||||
|
||||
if (extra->server.session_ticket_app_data != NULL) {
|
||||
server_ctx_data->session_ticket_app_data =
|
||||
OPENSSL_strdup(extra->server.session_ticket_app_data);
|
||||
SSL_CTX_set_session_ticket_cb(server_ctx, generate_session_ticket_cb,
|
||||
decrypt_session_ticket_cb, server_ctx_data);
|
||||
}
|
||||
if (extra->server2.session_ticket_app_data != NULL) {
|
||||
if (!TEST_ptr(server2_ctx))
|
||||
goto err;
|
||||
server2_ctx_data->session_ticket_app_data =
|
||||
OPENSSL_strdup(extra->server2.session_ticket_app_data);
|
||||
SSL_CTX_set_session_ticket_cb(server2_ctx, NULL,
|
||||
decrypt_session_ticket_cb, server2_ctx_data);
|
||||
}
|
||||
|
||||
/*
|
||||
* Use fixed session ticket keys so that we can decrypt a ticket created with
|
||||
* one CTX in another CTX. Don't address server2 for the moment.
|
||||
@@ -1583,6 +1622,11 @@ static HANDSHAKE_RESULT *do_handshake_internal(
|
||||
SSL_get0_alpn_selected(server.ssl, &proto, &proto_len);
|
||||
ret->server_alpn_negotiated = dup_str(proto, proto_len);
|
||||
|
||||
if ((sess = SSL_get0_session(server.ssl)) != NULL) {
|
||||
SSL_SESSION_get0_ticket_appdata(sess, (void**)&tick, &tick_len);
|
||||
ret->result_session_ticket_app_data = OPENSSL_strndup((const char*)tick, tick_len);
|
||||
}
|
||||
|
||||
ret->client_resumed = SSL_session_reused(client.ssl);
|
||||
ret->server_resumed = SSL_session_reused(server.ssl);
|
||||
|
||||
|
||||
@@ -65,6 +65,8 @@ typedef struct handshake_result {
|
||||
/* Session id status */
|
||||
ssl_session_id_t session_id;
|
||||
char *cipher;
|
||||
/* session ticket application data */
|
||||
char *result_session_ticket_app_data;
|
||||
} HANDSHAKE_RESULT;
|
||||
|
||||
HANDSHAKE_RESULT *HANDSHAKE_RESULT_new(void);
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
IF[{- defined $target{cxx} && !$disabled{"external-tests"}-}]
|
||||
IF[{- defined $target{CXX} && !$disabled{"external-tests"} -}]
|
||||
PROGRAMS_NO_INST=ossl_shim
|
||||
SOURCE[ossl_shim]=ossl_shim.cc async_bio.cc packeted_bio.cc test_config.cc
|
||||
INCLUDE[ossl_shim]=. include ../../include
|
||||
|
||||
@@ -533,6 +533,12 @@ static bssl::UniquePtr<SSL_CTX> SetupCtx(const TestConfig *config) {
|
||||
!SSL_CTX_set_max_proto_version(ssl_ctx.get(), TLS1_3_VERSION)) {
|
||||
return nullptr;
|
||||
}
|
||||
#else
|
||||
/* Ensure we don't negotiate TLSv1.3 until we can handle it */
|
||||
if (!config->is_dtls &&
|
||||
!SSL_CTX_set_max_proto_version(ssl_ctx.get(), TLS1_2_VERSION)) {
|
||||
return nullptr;
|
||||
}
|
||||
#endif
|
||||
|
||||
std::string cipher_list = "ALL";
|
||||
@@ -968,7 +974,7 @@ static bool DoExchange(bssl::UniquePtr<SSL_SESSION> *out_session,
|
||||
}
|
||||
if (config->enable_all_curves) {
|
||||
static const int kAllCurves[] = {
|
||||
NID_X9_62_prime256v1, NID_secp384r1, NID_secp521r1, NID_X25519,
|
||||
NID_X25519, NID_X9_62_prime256v1, NID_X448, NID_secp521r1, NID_secp384r1
|
||||
};
|
||||
if (!SSL_set1_curves(ssl.get(), kAllCurves,
|
||||
OPENSSL_ARRAY_SIZE(kAllCurves))) {
|
||||
|
||||
+8
-8
@@ -47,7 +47,7 @@ static int test_PACKET_end(void)
|
||||
|
||||
static int test_PACKET_get_1(void)
|
||||
{
|
||||
unsigned int i;
|
||||
unsigned int i = 0;
|
||||
PACKET pkt;
|
||||
|
||||
if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN))
|
||||
@@ -64,7 +64,7 @@ static int test_PACKET_get_1(void)
|
||||
|
||||
static int test_PACKET_get_4(void)
|
||||
{
|
||||
unsigned long i;
|
||||
unsigned long i = 0;
|
||||
PACKET pkt;
|
||||
|
||||
if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN))
|
||||
@@ -81,7 +81,7 @@ static int test_PACKET_get_4(void)
|
||||
|
||||
static int test_PACKET_get_net_2(void)
|
||||
{
|
||||
unsigned int i;
|
||||
unsigned int i = 0;
|
||||
PACKET pkt;
|
||||
|
||||
if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN))
|
||||
@@ -98,7 +98,7 @@ static int test_PACKET_get_net_2(void)
|
||||
|
||||
static int test_PACKET_get_net_3(void)
|
||||
{
|
||||
unsigned long i;
|
||||
unsigned long i = 0;
|
||||
PACKET pkt;
|
||||
|
||||
if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN))
|
||||
@@ -115,7 +115,7 @@ static int test_PACKET_get_net_3(void)
|
||||
|
||||
static int test_PACKET_get_net_4(void)
|
||||
{
|
||||
unsigned long i;
|
||||
unsigned long i = 0;
|
||||
PACKET pkt;
|
||||
|
||||
if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN))
|
||||
@@ -133,7 +133,7 @@ static int test_PACKET_get_net_4(void)
|
||||
static int test_PACKET_get_sub_packet(void)
|
||||
{
|
||||
PACKET pkt, subpkt;
|
||||
unsigned long i;
|
||||
unsigned long i = 0;
|
||||
|
||||
if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN))
|
||||
|| !TEST_true(PACKET_get_sub_packet(&pkt, &subpkt, 4))
|
||||
@@ -153,7 +153,7 @@ static int test_PACKET_get_sub_packet(void)
|
||||
|
||||
static int test_PACKET_get_bytes(void)
|
||||
{
|
||||
const unsigned char *bytes;
|
||||
const unsigned char *bytes = NULL;
|
||||
PACKET pkt;
|
||||
|
||||
if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN))
|
||||
@@ -285,7 +285,7 @@ static int test_PACKET_contains_zero_byte(void)
|
||||
|
||||
static int test_PACKET_forward(void)
|
||||
{
|
||||
const unsigned char *byte;
|
||||
const unsigned char *byte = NULL;
|
||||
PACKET pkt;
|
||||
|
||||
if (!TEST_true(PACKET_buf_init(&pkt, smbuf, BUF_LEN))
|
||||
|
||||
@@ -0,0 +1,125 @@
|
||||
/*
|
||||
* Copyright 2018-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
*
|
||||
* Licensed under the OpenSSL license (the "License"). You may not use
|
||||
* this file except in compliance with the License. You can obtain a copy
|
||||
* in the file LICENSE in the source distribution or at
|
||||
* https://www.openssl.org/source/license.html
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include "testutil.h"
|
||||
#include <openssl/opensslconf.h>
|
||||
|
||||
#if (defined(__i386) || defined(__i386__) || defined(_M_IX86) || \
|
||||
defined(__x86_64) || defined(__x86_64__) || \
|
||||
defined(_M_AMD64) || defined (_M_X64)) && defined(OPENSSL_CPUID_OBJ)
|
||||
|
||||
size_t OPENSSL_ia32_rdrand_bytes(unsigned char *buf, size_t len);
|
||||
size_t OPENSSL_ia32_rdseed_bytes(unsigned char *buf, size_t len);
|
||||
|
||||
void OPENSSL_cpuid_setup();
|
||||
|
||||
extern unsigned int OPENSSL_ia32cap_P[4];
|
||||
|
||||
static int sanity_check_bytes(size_t (*rng)(unsigned char *, size_t),
|
||||
int rounds, int min_failures, int max_retries, int max_zero_words)
|
||||
{
|
||||
int testresult = 0;
|
||||
unsigned char prior[31] = {0}, buf[31] = {0}, check[7];
|
||||
int failures = 0, zero_words = 0;
|
||||
|
||||
int i;
|
||||
for (i = 0; i < rounds; i++) {
|
||||
size_t generated = 0;
|
||||
|
||||
int retry;
|
||||
for (retry = 0; retry < max_retries; retry++) {
|
||||
generated = rng(buf, sizeof(buf));
|
||||
if (generated == sizeof(buf))
|
||||
break;
|
||||
failures++;
|
||||
}
|
||||
|
||||
/*-
|
||||
* Verify that we don't have too many unexpected runs of zeroes,
|
||||
* implying that we might be accidentally using the 32-bit RDRAND
|
||||
* instead of the 64-bit one on 64-bit systems.
|
||||
*/
|
||||
size_t j;
|
||||
for (j = 0; j < sizeof(buf) - 1; j++) {
|
||||
if (buf[j] == 0 && buf[j+1] == 0) {
|
||||
zero_words++;
|
||||
}
|
||||
}
|
||||
|
||||
if (!TEST_int_eq(generated, sizeof(buf)))
|
||||
goto end;
|
||||
if (!TEST_false(!memcmp(prior, buf, sizeof(buf))))
|
||||
goto end;
|
||||
|
||||
/* Verify that the last 7 bytes of buf aren't all the same value */
|
||||
unsigned char *tail = &buf[sizeof(buf) - sizeof(check)];
|
||||
memset(check, tail[0], 7);
|
||||
if (!TEST_false(!memcmp(check, tail, sizeof(check))))
|
||||
goto end;
|
||||
|
||||
/* Save the result and make sure it's different next time */
|
||||
memcpy(prior, buf, sizeof(buf));
|
||||
}
|
||||
|
||||
if (!TEST_int_le(zero_words, max_zero_words))
|
||||
goto end;
|
||||
|
||||
if (!TEST_int_ge(failures, min_failures))
|
||||
goto end;
|
||||
|
||||
testresult = 1;
|
||||
end:
|
||||
return testresult;
|
||||
}
|
||||
|
||||
static int sanity_check_rdrand_bytes()
|
||||
{
|
||||
return sanity_check_bytes(OPENSSL_ia32_rdrand_bytes, 1000, 0, 10, 10);
|
||||
}
|
||||
|
||||
static int sanity_check_rdseed_bytes()
|
||||
{
|
||||
/*-
|
||||
* RDSEED may take many retries to succeed; note that this is effectively
|
||||
* multiplied by the 8x retry loop in asm, and failure probabilities are
|
||||
* increased by the fact that we need either 4 or 8 samples depending on
|
||||
* the platform.
|
||||
*/
|
||||
return sanity_check_bytes(OPENSSL_ia32_rdseed_bytes, 1000, 1, 10000, 10);
|
||||
}
|
||||
|
||||
int setup_tests() {
|
||||
OPENSSL_cpuid_setup();
|
||||
|
||||
int have_rdseed = (OPENSSL_ia32cap_P[2] & (1 << 18)) != 0;
|
||||
int have_rdrand = (OPENSSL_ia32cap_P[1] & (1 << (62 - 32))) != 0;
|
||||
|
||||
if (have_rdrand) {
|
||||
ADD_TEST(sanity_check_rdrand_bytes);
|
||||
}
|
||||
|
||||
if (have_rdseed) {
|
||||
ADD_TEST(sanity_check_rdseed_bytes);
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
||||
#else
|
||||
|
||||
int setup_tests()
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,25 @@
|
||||
#! /usr/bin/perl
|
||||
|
||||
# Copyright 2018-2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
#
|
||||
# Licensed under the OpenSSL license (the "License"). You may not use
|
||||
# this file except in compliance with the License. You can obtain a copy
|
||||
# in the file LICENSE in the source distribution or at
|
||||
# https://www.openssl.org/source/license.html
|
||||
|
||||
use strict;
|
||||
|
||||
use OpenSSL::Test; # get 'plan'
|
||||
use OpenSSL::Test::Simple;
|
||||
use OpenSSL::Test::Utils;
|
||||
|
||||
setup("test_rdrand_sanity");
|
||||
|
||||
plan skip_all => "This test is unsupported in a shared library build on Windows"
|
||||
if $^O eq 'MSWin32' && !disabled("shared");
|
||||
|
||||
# We also need static builds to be enabled even on linux
|
||||
plan skip_all => "This test is unsupported if static builds are not enabled"
|
||||
if disabled("static");
|
||||
|
||||
simple_test("test_rdrand_sanity", "rdrand_sanitytest");
|
||||
@@ -0,0 +1,60 @@
|
||||
#! /usr/bin/env perl
|
||||
# Copyright 2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
#
|
||||
# Licensed under the OpenSSL license (the "License"). You may not use
|
||||
# this file except in compliance with the License. You can obtain a copy
|
||||
# in the file LICENSE in the source distribution or at
|
||||
# https://www.openssl.org/source/license.html
|
||||
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
use File::Spec;
|
||||
use OpenSSL::Test qw/:DEFAULT srctop_file/;
|
||||
use OpenSSL::Test::Utils;
|
||||
|
||||
setup("test_out_option");
|
||||
|
||||
plan skip_all => "'-out' option tests are not available on Windows"
|
||||
if $^O eq 'MSWin32';
|
||||
|
||||
plan tests => 11;
|
||||
|
||||
# The following patterns should be tested:
|
||||
#
|
||||
# path dirname
|
||||
# /usr/ /
|
||||
# / /
|
||||
# . .
|
||||
# .. .
|
||||
|
||||
test_illegal_path('/usr/');
|
||||
test_illegal_path('/');
|
||||
test_illegal_path('./');
|
||||
test_illegal_path('../');
|
||||
|
||||
# Test for trying to create a file in a non-exist directory
|
||||
my @chars = ("A".."Z", "a".."z", "0".."9");
|
||||
my $rand_path = $chars[rand @chars] for 1..32;
|
||||
$rand_path .= "/test.pem";
|
||||
|
||||
test_illegal_path($rand_path);
|
||||
test_legal_path('test.pem');
|
||||
unlink 'test.pem';
|
||||
|
||||
sub test_illegal_path {
|
||||
my $path = File::Spec->canonpath($_[0]);
|
||||
|
||||
my $start = time();
|
||||
ok(!run(app([ 'openssl', 'genrsa', '-out', $path, '16384'])), "invalid output path: $path");
|
||||
my $end = time();
|
||||
# The above process should exit in 2 seconds if the path is not valid
|
||||
ok($end - $start < 2, "check time consumed");
|
||||
}
|
||||
|
||||
sub test_legal_path {
|
||||
my $path = File::Spec->canonpath($_[0]);
|
||||
|
||||
ok(run(app([ 'openssl', 'genrsa', '-out', $path, '2048'])), "valid output path: $path");
|
||||
}
|
||||
@@ -748,6 +748,56 @@ Result = KEYOP_INIT_ERROR
|
||||
Function = EVP_PKEY_verify_init
|
||||
Reason = operation not supported for this keytype
|
||||
|
||||
Title = X448 test vectors (from RFC7748 6.2)
|
||||
|
||||
PrivateKey=Alice-448
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEYCAQAwBQYDK2VvBDoEOJqPSSXRUZ9Xdc9GsEtYANTunui66LxVZdSYwo3Zybr1
|
||||
dKlBl0SJc5EAY4Km8SerHZrC2MClmHJr
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PublicKey=Alice-448-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEIwBQYDK2VvAzkAmwj3zDG34+Z9ItWuoSEHSic70rg94Jxj+qc9LCLF2bvINmRy
|
||||
QdlT1AxbEtqIEg1TF3+A5TLEH6A=
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PrivPubKeyPair = Alice-448:Alice-448-PUBLIC
|
||||
|
||||
PrivateKey=Bob-448
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEYCAQAwBQYDK2VvBDoEOBwwanrCoOLgmQspRHDLoznmRTdysHWBHY+tDR1pJ8Eg
|
||||
u17olysNPiE3TJySGwnRsDZvELZRc5kt
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PublicKey=Bob-448-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEIwBQYDK2VvAzkAPreoKbDNIPW8/AtZm2/sz22kYnEHvbDU80W0MCfYuXL8PjT7
|
||||
QjKhPKcG3LV67D2uB73BxnvzNgk=
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PrivPubKeyPair = Bob-448:Bob-448-PUBLIC
|
||||
|
||||
Derive=Alice-448
|
||||
PeerKey=Bob-448-PUBLIC
|
||||
SharedSecret=07fff4181ac6cc95ec1c16a94a0f74d12da232ce40a77552281d282bb60c0b56fd2464c335543936521c24403085d59a449a5037514a879d
|
||||
|
||||
Derive=Bob-448
|
||||
PeerKey=Alice-448-PUBLIC
|
||||
SharedSecret=07fff4181ac6cc95ec1c16a94a0f74d12da232ce40a77552281d282bb60c0b56fd2464c335543936521c24403085d59a449a5037514a879d
|
||||
|
||||
# Illegal sign/verify operations with X448 key
|
||||
|
||||
Sign=Alice-448
|
||||
Result = KEYOP_INIT_ERROR
|
||||
Function = EVP_PKEY_sign_init
|
||||
Reason = operation not supported for this keytype
|
||||
|
||||
Verify=Alice-448
|
||||
Result = KEYOP_INIT_ERROR
|
||||
Function = EVP_PKEY_verify_init
|
||||
Reason = operation not supported for this keytype
|
||||
|
||||
|
||||
# Additional RSA-PSS and RSA-OAEP tests converted from
|
||||
# ftp://ftp.rsasecurity.com/pub/pkcs/pkcs-1/pkcs-1v2-1-vec.zip
|
||||
@@ -17172,9 +17222,18 @@ Result = KEYPAIR_MISMATCH
|
||||
PrivPubKeyPair = Bob-25519:Alice-25519-PUBLIC
|
||||
Result = KEYPAIR_MISMATCH
|
||||
|
||||
PrivPubKeyPair = Alice-448:Bob-448-PUBLIC
|
||||
Result = KEYPAIR_MISMATCH
|
||||
|
||||
PrivPubKeyPair = Bob-448:Alice-448-PUBLIC
|
||||
Result = KEYPAIR_MISMATCH
|
||||
|
||||
PrivPubKeyPair = Alice-25519:P-256-PUBLIC
|
||||
Result = KEYPAIR_TYPE_MISMATCH
|
||||
|
||||
PrivPubKeyPair = Alice-448:P-256-PUBLIC
|
||||
Result = KEYPAIR_TYPE_MISMATCH
|
||||
|
||||
PrivPubKeyPair = RSA-2048:P-256-PUBLIC
|
||||
Result = KEYPAIR_TYPE_MISMATCH
|
||||
|
||||
@@ -17448,6 +17507,198 @@ DigestSign = SHA256
|
||||
Key = ED25519-1
|
||||
Result = DIGESTSIGNINIT_ERROR
|
||||
|
||||
|
||||
Title = ED448 tests from RFC8032
|
||||
|
||||
PrivateKey=ED448-1
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOWyCpWLLgI0Q1jK+ichRPr9skp803fqMn2PJlg7240ij
|
||||
UoyKP8wvBE45o/xblEkvjwMudUmiAJj5Ww==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PrivateKey=ED448-2
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOcTqsF01cAfGMvPbtISJkk1VKwj+DDU6DUofAKzaLEY6
|
||||
++pnxejSh3xeO8OXplmUnvgCHpVOChInTg==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PrivateKey=ED448-3
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOc0j0k9xQnTnRDQyN7kykPUR9kJfmOZEWf8gPomFCD/9
|
||||
9gUAVTq8DgXNAhhL24nEzNZ+GHlRJn6zKA==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PrivateKey=ED448-4
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOSWM3UraMu2cn/VOY3Vq5YL7j6sqxyHyyOZ2pydoUT2T
|
||||
n2Pd21VgkTPymt+G7Jkp3MtSwcX9L/fiGw==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PrivateKey=ED448-5
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOX706EVEI2dS+7VrjzGiOhDkKBT19VygN83MEcZMmjsp
|
||||
ScG7YHADFGEXMqbC/qmO68AmahGpOXAQDg==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PrivateKey=ED448-6
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOdZd80GtE+AIVnaIuu3ajp3NwX3AJJdOpbQie2Uw4zm/
|
||||
8h+Z5oymlo88ym3+D7n0+rT6E11VQuo/AQ==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PrivateKey=ED448-7
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOS7F/jwXBFq9sTal5qkT4yq3WuaLU9L8FJt35QQTLTdW
|
||||
m352a6dKGb1hYjQ6IchZCqnOvKkBTGNt9Q==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PrivateKey=ED448-8
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MEcCAQAwBQYDK2VxBDsEOYctCTeA9dNzDffCEmZLN7ig8k9WgQ2qg4LNT6P3djTs
|
||||
RNxU8cLtm+qG+vt2Mti+GZ6hZfWtVd2c6A==
|
||||
-----END PRIVATE KEY-----
|
||||
|
||||
PublicKey=ED448-1-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEMwBQYDK2VxAzoAX9dEm1m0Yf0s54fsYWrUah2hNCSFpw4fig6nXYDpZ3jt8SR2
|
||||
m0bHBhvWeD3x5Q9s0foavq/oJWGA
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PublicKey=ED448-2-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEMwBQYDK2VxAzoAQ7oo9DDN/0Vq5TFUX37NCsg0pV2TWMA3K/oMbGeYwIZq6gHr
|
||||
AHQoArhDjqTLghacI1FgYntMOpSA
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PublicKey=ED448-3-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEMwBQYDK2VxAzoA3OqeePNaG/NJmoMbELhskKrAHNhLZ6AQm1WjbpMoseNl/OFh
|
||||
1xznExpUPqTLX36fHYsAaWRHABQA
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PublicKey=ED448-4-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEMwBQYDK2VxAzoAO6FtoMbyzB8wGHdAdW9eeY1rxfwBXXxjzJUQ7j/UStwk2Olo
|
||||
tuRub5TRm5RTYXJr114UnvCYF/WA
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PublicKey=ED448-5-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEMwBQYDK2VxAzoAs9oHmwqkk6V3ICnwRnuuvuWoES2dOiJTI2HaKU97s4FcXcWe
|
||||
F2tNnzgcoJOOE8bAexdL5l36V46A
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PublicKey=ED448-6-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEMwBQYDK2VxAzoA35cF9Y7bq4Asf4Njz+VWCrHGEywgqfHdFjSDom+KxTo51oCL
|
||||
9KHfvSYbCZuwOz+1CQbLKL2KCB8A
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PublicKey=ED448-7-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEMwBQYDK2VxAzoAeXVvAU3P4gefXdnnGL5BceLvJIagjyUYb2v/Q6mTa5v+EkAr
|
||||
CK5leYo9geIunsgOdpCGLvPU7ToA
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PublicKey=ED448-8-PUBLIC
|
||||
-----BEGIN PUBLIC KEY-----
|
||||
MEMwBQYDK2VxAzoAqBsuinClrJT/28ybrfw/6wgB8lhXi7EUrUTs4ewOeZ2gjv+4
|
||||
HF1oXAxW9k7srvjN8RzDhzeDjPQA
|
||||
-----END PUBLIC KEY-----
|
||||
|
||||
PrivPubKeyPair = ED448-1:ED448-1-PUBLIC
|
||||
|
||||
PrivPubKeyPair = ED448-2:ED448-2-PUBLIC
|
||||
|
||||
PrivPubKeyPair = ED448-3:ED448-3-PUBLIC
|
||||
|
||||
PrivPubKeyPair = ED448-4:ED448-4-PUBLIC
|
||||
|
||||
PrivPubKeyPair = ED448-5:ED448-5-PUBLIC
|
||||
|
||||
PrivPubKeyPair = ED448-6:ED448-6-PUBLIC
|
||||
|
||||
PrivPubKeyPair = ED448-7:ED448-7-PUBLIC
|
||||
|
||||
PrivPubKeyPair = ED448-8:ED448-8-PUBLIC
|
||||
|
||||
OneShotDigestSign = NULL
|
||||
Key = ED448-1
|
||||
Input = ""
|
||||
Output = 533a37f6bbe457251f023c0d88f976ae2dfb504a843e34d2074fd823d41a591f2b233f034f628281f2fd7a22ddd47d7828c59bd0a21bfd3980ff0d2028d4b18a9df63e006c5d1c2d345b925d8dc00b4104852db99ac5c7cdda8530a113a0f4dbb61149f05a7363268c71d95808ff2e652600
|
||||
|
||||
OneShotDigestSign = NULL
|
||||
Key = ED448-2
|
||||
Input = 03
|
||||
Output = 26b8f91727bd62897af15e41eb43c377efb9c610d48f2335cb0bd0087810f4352541b143c4b981b7e18f62de8ccdf633fc1bf037ab7cd779805e0dbcc0aae1cbcee1afb2e027df36bc04dcecbf154336c19f0af7e0a6472905e799f1953d2a0ff3348ab21aa4adafd1d234441cf807c03a00
|
||||
|
||||
OneShotDigestSign = NULL
|
||||
Key = ED448-3
|
||||
Input = 0c3e544074ec63b0265e0c
|
||||
Output = 1f0a8888ce25e8d458a21130879b840a9089d999aaba039eaf3e3afa090a09d389dba82c4ff2ae8ac5cdfb7c55e94d5d961a29fe0109941e00b8dbdeea6d3b051068df7254c0cdc129cbe62db2dc957dbb47b51fd3f213fb8698f064774250a5028961c9bf8ffd973fe5d5c206492b140e00
|
||||
|
||||
OneShotDigestSign = NULL
|
||||
Key = ED448-4
|
||||
Input = 64a65f3cdedcdd66811e2915
|
||||
Output = 7eeeab7c4e50fb799b418ee5e3197ff6bf15d43a14c34389b59dd1a7b1b85b4ae90438aca634bea45e3a2695f1270f07fdcdf7c62b8efeaf00b45c2c96ba457eb1a8bf075a3db28e5c24f6b923ed4ad747c3c9e03c7079efb87cb110d3a99861e72003cbae6d6b8b827e4e6c143064ff3c00
|
||||
|
||||
OneShotDigestSign = NULL
|
||||
Key = ED448-5
|
||||
Input = 64a65f3cdedcdd66811e2915e7
|
||||
Output = 6a12066f55331b6c22acd5d5bfc5d71228fbda80ae8dec26bdd306743c5027cb4890810c162c027468675ecf645a83176c0d7323a2ccde2d80efe5a1268e8aca1d6fbc194d3f77c44986eb4ab4177919ad8bec33eb47bbb5fc6e28196fd1caf56b4e7e0ba5519234d047155ac727a1053100
|
||||
|
||||
OneShotDigestSign = NULL
|
||||
Key = ED448-6
|
||||
Input = bd0f6a3747cd561bdddf4640a332461a4a30a12a434cd0bf40d766d9c6d458e5512204a30c17d1f50b5079631f64eb3112182da3005835461113718d1a5ef944
|
||||
Output = 554bc2480860b49eab8532d2a533b7d578ef473eeb58c98bb2d0e1ce488a98b18dfde9b9b90775e67f47d4a1c3482058efc9f40d2ca033a0801b63d45b3b722ef552bad3b4ccb667da350192b61c508cf7b6b5adadc2c8d9a446ef003fb05cba5f30e88e36ec2703b349ca229c2670833900
|
||||
|
||||
OneShotDigestSign = NULL
|
||||
Key = ED448-7
|
||||
Input = 15777532b0bdd0d1389f636c5f6b9ba734c90af572877e2d272dd078aa1e567cfa80e12928bb542330e8409f3174504107ecd5efac61ae7504dabe2a602ede89e5cca6257a7c77e27a702b3ae39fc769fc54f2395ae6a1178cab4738e543072fc1c177fe71e92e25bf03e4ecb72f47b64d0465aaea4c7fad372536c8ba516a6039c3c2a39f0e4d832be432dfa9a706a6e5c7e19f397964ca4258002f7c0541b590316dbc5622b6b2a6fe7a4abffd96105eca76ea7b98816af0748c10df048ce012d901015a51f189f3888145c03650aa23ce894c3bd889e030d565071c59f409a9981b51878fd6fc110624dcbcde0bf7a69ccce38fabdf86f3bef6044819de11
|
||||
Output = c650ddbb0601c19ca11439e1640dd931f43c518ea5bea70d3dcde5f4191fe53f00cf966546b72bcc7d58be2b9badef28743954e3a44a23f880e8d4f1cfce2d7a61452d26da05896f0a50da66a239a8a188b6d825b3305ad77b73fbac0836ecc60987fd08527c1a8e80d5823e65cafe2a3d00
|
||||
|
||||
OneShotDigestSign = NULL
|
||||
Key = ED448-8
|
||||
Input = 6ddf802e1aae4986935f7f981ba3f0351d6273c0a0c22c9c0e8339168e675412a3debfaf435ed651558007db4384b650fcc07e3b586a27a4f7a00ac8a6fec2cd86ae4bf1570c41e6a40c931db27b2faa15a8cedd52cff7362c4e6e23daec0fbc3a79b6806e316efcc7b68119bf46bc76a26067a53f296dafdbdc11c77f7777e972660cf4b6a9b369a6665f02e0cc9b6edfad136b4fabe723d2813db3136cfde9b6d044322fee2947952e031b73ab5c603349b307bdc27bc6cb8b8bbd7bd323219b8033a581b59eadebb09b3c4f3d2277d4f0343624acc817804728b25ab797172b4c5c21a22f9c7839d64300232eb66e53f31c723fa37fe387c7d3e50bdf9813a30e5bb12cf4cd930c40cfb4e1fc622592a49588794494d56d24ea4b40c89fc0596cc9ebb961c8cb10adde976a5d602b1c3f85b9b9a001ed3c6a4d3b1437f52096cd1956d042a597d561a596ecd3d1735a8d570ea0ec27225a2c4aaff26306d1526c1af3ca6d9cf5a2c98f47e1c46db9a33234cfd4d81f2c98538a09ebe76998d0d8fd25997c7d255c6d66ece6fa56f11144950f027795e653008f4bd7ca2dee85d8e90f3dc315130ce2a00375a318c7c3d97be2c8ce5b6db41a6254ff264fa6155baee3b0773c0f497c573f19bb4f4240281f0b1f4f7be857a4e59d416c06b4c50fa09e1810ddc6b1467baeac5a3668d11b6ecaa901440016f389f80acc4db977025e7f5924388c7e340a732e554440e76570f8dd71b7d640b3450d1fd5f0410a18f9a3494f707c717b79b4bf75c98400b096b21653b5d217cf3565c9597456f70703497a078763829bc01bb1cbc8fa04eadc9a6e3f6699587a9e75c94e5bab0036e0b2e711392cff0047d0d6b05bd2a588bc109718954259f1d86678a579a3120f19cfb2963f177aeb70f2d4844826262e51b80271272068ef5b3856fa8535aa2a88b2d41f2a0e2fda7624c2850272ac4a2f561f8f2f7a318bfd5caf9696149e4ac824ad3460538fdc25421beec2cc6818162d06bbed0c40a387192349db67a118bada6cd5ab0140ee273204f628aad1c135f770279a651e24d8c14d75a6059d76b96a6fd857def5e0b354b27ab937a5815d16b5fae407ff18222c6d1ed263be68c95f32d908bd895cd76207ae726487567f9a67dad79abec316f683b17f2d02bf07e0ac8b5bc6162cf94697b3c27cd1fea49b27f23ba2901871962506520c392da8b6ad0d99f7013fbc06c2c17a569500c8a7696481c1cd33e9b14e40b82e79a5f5db82571ba97bae3ad3e0479515bb0e2b0f3bfcd1fd33034efc6245eddd7ee2086ddae2600d8ca73e214e8c2b0bdb2b047c6a464a562ed77b73d2d841c4b34973551257713b753632efba348169abc90a68f42611a40126d7cb21b58695568186f7e569d2ff0f9e745d0487dd2eb997cafc5abf9dd102e62ff66cba87
|
||||
Output = e301345a41a39a4d72fff8df69c98075a0cc082b802fc9b2b6bc503f926b65bddf7f4c8f1cb49f6396afc8a70abe6d8aef0db478d4c6b2970076c6a0484fe76d76b3a97625d79f1ce240e7c576750d295528286f719b413de9ada3e8eb78ed573603ce30d8bb761785dc30dbc320869e1a00
|
||||
|
||||
# Verify test
|
||||
OneShotDigestVerify = NULL
|
||||
Key = ED448-1-PUBLIC
|
||||
Input = ""
|
||||
Output = 533a37f6bbe457251f023c0d88f976ae2dfb504a843e34d2074fd823d41a591f2b233f034f628281f2fd7a22ddd47d7828c59bd0a21bfd3980ff0d2028d4b18a9df63e006c5d1c2d345b925d8dc00b4104852db99ac5c7cdda8530a113a0f4dbb61149f05a7363268c71d95808ff2e652600
|
||||
|
||||
# Corrupted input
|
||||
OneShotDigestVerify = NULL
|
||||
Key = ED448-1-PUBLIC
|
||||
Input = "bad"
|
||||
Output = 533a37f6bbe457251f023c0d88f976ae2dfb504a843e34d2074fd823d41a591f2b233f034f628281f2fd7a22ddd47d7828c59bd0a21bfd3980ff0d2028d4b18a9df63e006c5d1c2d345b925d8dc00b4104852db99ac5c7cdda8530a113a0f4dbb61149f05a7363268c71d95808ff2e652600
|
||||
Result = VERIFY_ERROR
|
||||
|
||||
# Corrupted signature
|
||||
OneShotDigestVerify = NULL
|
||||
Key = ED448-1-PUBLIC
|
||||
Input = ""
|
||||
Output = 533a37f6bbe457251f023c0d88f976ae2dfb504a843e34d2074fd823d41a591f2b233f034f628281f2fd7a22ddd47d7828c59bd0a21bfd3980ff0d2028d4b18a9df63e006c5d1c2d345b925d8dc00b4104852db99ac5c7cdda8530a113a0f4dbb61149f05a7363268c71d95808ff2e652601
|
||||
Result = VERIFY_ERROR
|
||||
|
||||
# Make sure update calls return an error
|
||||
DigestSign = NULL
|
||||
Key = ED448-1
|
||||
Input = "Test"
|
||||
Result = DIGESTUPDATE_ERROR
|
||||
|
||||
DigestVerify = NULL
|
||||
Key = ED448-1-PUBLIC
|
||||
Input = "Test"
|
||||
Result = DIGESTUPDATE_ERROR
|
||||
|
||||
# Attempt to set invalid digest
|
||||
DigestSign = SHA256
|
||||
Key = ED448-1
|
||||
Result = DIGESTSIGNINIT_ERROR
|
||||
|
||||
|
||||
# Key generation tests
|
||||
KeyGen = rsaEncryption
|
||||
Ctrl = rsa_keygen_bits:128
|
||||
|
||||
@@ -28,7 +28,7 @@ map { s/\^// } @conf_files if $^O eq "VMS";
|
||||
|
||||
# We hard-code the number of tests to double-check that the globbing above
|
||||
# finds all files as expected.
|
||||
plan tests => 26; # = scalar @conf_srcs
|
||||
plan tests => 27; # = scalar @conf_srcs
|
||||
|
||||
# Some test results depend on the configuration of enabled protocols. We only
|
||||
# verify generated sources in the default configuration.
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
#! /usr/bin/perl
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
use OpenSSL::Test qw/:DEFAULT data_file/;
|
||||
use OpenSSL::Test::Utils;
|
||||
|
||||
setup("test_includes");
|
||||
|
||||
plan skip_all => "test_includes doesn't work without posix-io"
|
||||
if disabled("posix-io");
|
||||
|
||||
plan tests => # The number of tests being performed
|
||||
3
|
||||
+ ($^O eq "VMS" ? 2 : 0);
|
||||
|
||||
ok(run(test(["conf_include_test", data_file("includes.cnf")])), "test directory includes");
|
||||
ok(run(test(["conf_include_test", data_file("includes-file.cnf")])), "test file includes");
|
||||
if ($^O eq "VMS") {
|
||||
ok(run(test(["conf_include_test", data_file("vms-includes.cnf")])),
|
||||
"test directory includes, VMS syntax");
|
||||
ok(run(test(["conf_include_test", data_file("vms-includes-file.cnf")])),
|
||||
"test file includes, VMS syntax");
|
||||
}
|
||||
ok(run(test(["conf_include_test", data_file("includes-broken.cnf"), "f"])), "test broken includes");
|
||||
@@ -0,0 +1,36 @@
|
||||
[ default ]
|
||||
#
|
||||
# SSLeay example configuration file.
|
||||
# This is mostly being used for generation of certificate requests.
|
||||
#
|
||||
|
||||
RANDFILE = ./.rnd
|
||||
|
||||
####################################################################
|
||||
[ ca ]
|
||||
default_ca = CA_default # The default ca section
|
||||
|
||||
####################################################################
|
||||
[ CA_default ]
|
||||
|
||||
dir = ./demoCA # Where everything is kept
|
||||
certs = $dir/certs # Where the issued certs are kept
|
||||
crl_dir = $dir/crl # Where the issued crl are kept
|
||||
database = $dir/index.txt # database index file.
|
||||
new_certs_dir = $dir/new_certs # default place for new certs.
|
||||
|
||||
certificate = $dir/CAcert.pem # The CA certificate
|
||||
serial = $dir/serial # The current serial number
|
||||
crl = $dir/crl.pem # The current CRL
|
||||
private_key = $dir/private/CAkey.pem# The private key
|
||||
RANDFILE = $dir/private/.rand # private random number file
|
||||
|
||||
default_days = 365 # how long to certify for
|
||||
default_crl_days= 30 # how long before next CRL
|
||||
default_md = md5 # which md to use.
|
||||
|
||||
# A few difference way of specifying how similar the request should look
|
||||
# For type CA, the listed attributes must be the same, and the optional
|
||||
# and supplied fields are just that :-)
|
||||
policy = policy_match
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
# For the CA policy
|
||||
[ policy_match ]
|
||||
countryName = match
|
||||
stateOrProvinceName = match
|
||||
organizationName = match
|
||||
organizationalUnitName = optional
|
||||
commonName = supplied
|
||||
emailAddress = optional
|
||||
|
||||
# For the 'anything' policy
|
||||
# At this point in time, you must list all acceptable 'object'
|
||||
# types.
|
||||
[ policy_anything ]
|
||||
countryName = optional
|
||||
stateOrProvinceName = optional
|
||||
localityName = optional
|
||||
organizationName = optional
|
||||
organizationalUnitName = optional
|
||||
commonName = supplied
|
||||
emailAddress = optional
|
||||
|
||||
####################################################################
|
||||
[ req ]
|
||||
default_bits = 2048
|
||||
default_keyfile = testkey.pem
|
||||
distinguished_name = req_distinguished_name
|
||||
encrypt_rsa_key = no
|
||||
|
||||
[ req_distinguished_name ]
|
||||
countryName = Country Name (2 letter code)
|
||||
countryName_default = AU
|
||||
countryName_value = AU
|
||||
|
||||
stateOrProvinceName = State or Province Name (full name)
|
||||
stateOrProvinceName_default = Queensland
|
||||
stateOrProvinceName_value =
|
||||
|
||||
localityName = Locality Name (eg, city)
|
||||
localityName_value = Brisbane
|
||||
|
||||
organizationName = Organization Name (eg, company)
|
||||
organizationName_default =
|
||||
organizationName_value = CryptSoft Pty Ltd
|
||||
|
||||
organizationalUnitName = Organizational Unit Name (eg, section)
|
||||
organizationalUnitName_default =
|
||||
organizationalUnitName_value = .
|
||||
|
||||
commonName = Common Name (eg, YOUR name)
|
||||
commonName_value = Eric Young
|
||||
|
||||
emailAddress = Email Address
|
||||
emailAddress_value = eay@mincom.oz.au
|
||||
@@ -0,0 +1,5 @@
|
||||
#
|
||||
# Example configuration file using includes.
|
||||
#
|
||||
|
||||
.include includes-broken3.cnf
|
||||
@@ -0,0 +1,5 @@
|
||||
#
|
||||
# Example configuration file using includes.
|
||||
#
|
||||
|
||||
.include includes.cnf
|
||||
@@ -0,0 +1,5 @@
|
||||
#
|
||||
# Example configuration file using includes.
|
||||
#
|
||||
|
||||
.include conf-includes
|
||||
@@ -0,0 +1,5 @@
|
||||
#
|
||||
# Example configuration file using includes.
|
||||
#
|
||||
|
||||
.include vms-includes.cnf
|
||||
@@ -0,0 +1,5 @@
|
||||
#
|
||||
# Example configuration file using includes.
|
||||
#
|
||||
|
||||
.include [.conf-includes]
|
||||
Executable → Regular
Executable → Regular
@@ -52,12 +52,10 @@ static int shlib_sym(SHLIB lib, const char *symname, SHLIB_SYM *sym)
|
||||
return *sym != NULL;
|
||||
}
|
||||
|
||||
# ifdef OPENSSL_USE_NODELETE
|
||||
static int shlib_close(SHLIB lib)
|
||||
{
|
||||
return dlclose(lib) != 0 ? 0 : 1;
|
||||
}
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef DSO_WIN32
|
||||
@@ -81,12 +79,10 @@ static int shlib_sym(SHLIB lib, const char *symname, SHLIB_SYM *sym)
|
||||
return *sym != NULL;
|
||||
}
|
||||
|
||||
# ifdef OPENSSL_USE_NODELETE
|
||||
static int shlib_close(SHLIB lib)
|
||||
{
|
||||
return FreeLibrary(lib) == 0 ? 0 : 1;
|
||||
}
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
||||
@@ -149,7 +145,6 @@ static int test_lib(void)
|
||||
if (!TEST_int_eq(myOpenSSL_version_num(), OPENSSL_VERSION_NUMBER))
|
||||
goto end;
|
||||
|
||||
#ifdef OPENSSL_USE_NODELETE
|
||||
switch (test_type) {
|
||||
case JUST_CRYPTO:
|
||||
if (!TEST_true(shlib_close(cryptolib)))
|
||||
@@ -166,7 +161,6 @@ static int test_lib(void)
|
||||
goto end;
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
|
||||
result = 1;
|
||||
end:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# Generated with generate_ssl_tests.pl
|
||||
|
||||
num_tests = 29
|
||||
num_tests = 30
|
||||
|
||||
test-0 = 0-curve-sect163k1
|
||||
test-1 = 1-curve-sect163r1
|
||||
@@ -31,6 +31,7 @@ test-25 = 25-curve-brainpoolP256r1
|
||||
test-26 = 26-curve-brainpoolP384r1
|
||||
test-27 = 27-curve-brainpoolP512r1
|
||||
test-28 = 28-curve-X25519
|
||||
test-29 = 29-curve-X448
|
||||
# ===========================================================
|
||||
|
||||
[0-curve-sect163k1]
|
||||
@@ -843,3 +844,31 @@ ExpectedResult = Success
|
||||
ExpectedTmpKeyType = X25519
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[29-curve-X448]
|
||||
ssl_conf = 29-curve-X448-ssl
|
||||
|
||||
[29-curve-X448-ssl]
|
||||
server = 29-curve-X448-server
|
||||
client = 29-curve-X448-client
|
||||
|
||||
[29-curve-X448-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
Curves = X448
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[29-curve-X448-client]
|
||||
CipherString = ECDHE
|
||||
Curves = X448
|
||||
MaxProtocol = TLSv1.2
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-29]
|
||||
ExpectedResult = Success
|
||||
ExpectedTmpKeyType = X448
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ my @curves = ("sect163k1", "sect163r1", "sect163r2", "sect193r1",
|
||||
"secp160r2", "secp192k1", "prime192v1", "secp224k1",
|
||||
"secp224r1", "secp256k1", "prime256v1", "secp384r1",
|
||||
"secp521r1", "brainpoolP256r1", "brainpoolP384r1",
|
||||
"brainpoolP512r1", "X25519");
|
||||
"brainpoolP512r1", "X25519", "X448");
|
||||
|
||||
our @tests = ();
|
||||
|
||||
|
||||
+762
-512
@@ -1,46 +1,52 @@
|
||||
# Generated with generate_ssl_tests.pl
|
||||
|
||||
num_tests = 39
|
||||
num_tests = 45
|
||||
|
||||
test-0 = 0-ECDSA CipherString Selection
|
||||
test-1 = 1-Ed25519 CipherString and Signature Algorithm Selection
|
||||
test-2 = 2-RSA CipherString Selection
|
||||
test-3 = 3-RSA-PSS Certificate CipherString Selection
|
||||
test-4 = 4-P-256 CipherString and Signature Algorithm Selection
|
||||
test-5 = 5-Ed25519 CipherString and Curves Selection
|
||||
test-6 = 6-ECDSA CipherString Selection, no ECDSA certificate
|
||||
test-7 = 7-ECDSA Signature Algorithm Selection
|
||||
test-8 = 8-ECDSA Signature Algorithm Selection SHA384
|
||||
test-9 = 9-ECDSA Signature Algorithm Selection SHA1
|
||||
test-10 = 10-ECDSA Signature Algorithm Selection compressed point
|
||||
test-11 = 11-ECDSA Signature Algorithm Selection, no ECDSA certificate
|
||||
test-12 = 12-RSA Signature Algorithm Selection
|
||||
test-13 = 13-RSA-PSS Signature Algorithm Selection
|
||||
test-14 = 14-RSA-PSS Certificate Legacy Signature Algorithm Selection
|
||||
test-15 = 15-RSA-PSS Certificate Unified Signature Algorithm Selection
|
||||
test-16 = 16-Only RSA-PSS Certificate
|
||||
test-17 = 17-RSA-PSS Certificate, no PSS signature algorithms
|
||||
test-18 = 18-Suite B P-256 Hash Algorithm Selection
|
||||
test-19 = 19-Suite B P-384 Hash Algorithm Selection
|
||||
test-20 = 20-TLS 1.2 Ed25519 Client Auth
|
||||
test-21 = 21-Only RSA-PSS Certificate, TLS v1.1
|
||||
test-22 = 22-TLS 1.3 ECDSA Signature Algorithm Selection
|
||||
test-23 = 23-TLS 1.3 ECDSA Signature Algorithm Selection compressed point
|
||||
test-24 = 24-TLS 1.3 ECDSA Signature Algorithm Selection SHA1
|
||||
test-25 = 25-TLS 1.3 ECDSA Signature Algorithm Selection with PSS
|
||||
test-26 = 26-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS
|
||||
test-27 = 27-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate
|
||||
test-28 = 28-TLS 1.3 RSA Signature Algorithm Selection, no PSS
|
||||
test-29 = 29-TLS 1.3 RSA-PSS Signature Algorithm Selection
|
||||
test-30 = 30-TLS 1.3 Ed25519 Signature Algorithm Selection
|
||||
test-31 = 31-TLS 1.3 Ed25519 CipherString and Groups Selection
|
||||
test-32 = 32-TLS 1.3 RSA Client Auth Signature Algorithm Selection
|
||||
test-33 = 33-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names
|
||||
test-34 = 34-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection
|
||||
test-35 = 35-TLS 1.3 Ed25519 Client Auth
|
||||
test-36 = 36-TLS 1.2 DSA Certificate Test
|
||||
test-37 = 37-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms
|
||||
test-38 = 38-TLS 1.3 DSA Certificate Test
|
||||
test-2 = 2-Ed448 CipherString and Signature Algorithm Selection
|
||||
test-3 = 3-RSA CipherString Selection
|
||||
test-4 = 4-RSA-PSS Certificate CipherString Selection
|
||||
test-5 = 5-P-256 CipherString and Signature Algorithm Selection
|
||||
test-6 = 6-Ed25519 CipherString and Curves Selection
|
||||
test-7 = 7-Ed448 CipherString and Curves Selection
|
||||
test-8 = 8-ECDSA CipherString Selection, no ECDSA certificate
|
||||
test-9 = 9-ECDSA Signature Algorithm Selection
|
||||
test-10 = 10-ECDSA Signature Algorithm Selection SHA384
|
||||
test-11 = 11-ECDSA Signature Algorithm Selection SHA1
|
||||
test-12 = 12-ECDSA Signature Algorithm Selection compressed point
|
||||
test-13 = 13-ECDSA Signature Algorithm Selection, no ECDSA certificate
|
||||
test-14 = 14-RSA Signature Algorithm Selection
|
||||
test-15 = 15-RSA-PSS Signature Algorithm Selection
|
||||
test-16 = 16-RSA-PSS Certificate Legacy Signature Algorithm Selection
|
||||
test-17 = 17-RSA-PSS Certificate Unified Signature Algorithm Selection
|
||||
test-18 = 18-Only RSA-PSS Certificate
|
||||
test-19 = 19-RSA-PSS Certificate, no PSS signature algorithms
|
||||
test-20 = 20-Suite B P-256 Hash Algorithm Selection
|
||||
test-21 = 21-Suite B P-384 Hash Algorithm Selection
|
||||
test-22 = 22-TLS 1.2 Ed25519 Client Auth
|
||||
test-23 = 23-TLS 1.2 Ed448 Client Auth
|
||||
test-24 = 24-Only RSA-PSS Certificate, TLS v1.1
|
||||
test-25 = 25-TLS 1.3 ECDSA Signature Algorithm Selection
|
||||
test-26 = 26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point
|
||||
test-27 = 27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1
|
||||
test-28 = 28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS
|
||||
test-29 = 29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS
|
||||
test-30 = 30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate
|
||||
test-31 = 31-TLS 1.3 RSA Signature Algorithm Selection, no PSS
|
||||
test-32 = 32-TLS 1.3 RSA-PSS Signature Algorithm Selection
|
||||
test-33 = 33-TLS 1.3 Ed25519 Signature Algorithm Selection
|
||||
test-34 = 34-TLS 1.3 Ed448 Signature Algorithm Selection
|
||||
test-35 = 35-TLS 1.3 Ed25519 CipherString and Groups Selection
|
||||
test-36 = 36-TLS 1.3 Ed448 CipherString and Groups Selection
|
||||
test-37 = 37-TLS 1.3 RSA Client Auth Signature Algorithm Selection
|
||||
test-38 = 38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names
|
||||
test-39 = 39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection
|
||||
test-40 = 40-TLS 1.3 Ed25519 Client Auth
|
||||
test-41 = 41-TLS 1.3 Ed448 Client Auth
|
||||
test-42 = 42-TLS 1.2 DSA Certificate Test
|
||||
test-43 = 43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms
|
||||
test-44 = 44-TLS 1.3 DSA Certificate Test
|
||||
# ===========================================================
|
||||
|
||||
[0-ECDSA CipherString Selection]
|
||||
@@ -55,8 +61,10 @@ Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
@@ -88,8 +96,10 @@ Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
@@ -110,57 +120,62 @@ ExpectedServerSignType = Ed25519
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[2-RSA CipherString Selection]
|
||||
ssl_conf = 2-RSA CipherString Selection-ssl
|
||||
[2-Ed448 CipherString and Signature Algorithm Selection]
|
||||
ssl_conf = 2-Ed448 CipherString and Signature Algorithm Selection-ssl
|
||||
|
||||
[2-RSA CipherString Selection-ssl]
|
||||
server = 2-RSA CipherString Selection-server
|
||||
client = 2-RSA CipherString Selection-client
|
||||
[2-Ed448 CipherString and Signature Algorithm Selection-ssl]
|
||||
server = 2-Ed448 CipherString and Signature Algorithm Selection-server
|
||||
client = 2-Ed448 CipherString and Signature Algorithm Selection-client
|
||||
|
||||
[2-RSA CipherString Selection-server]
|
||||
[2-Ed448 CipherString and Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[2-RSA CipherString Selection-client]
|
||||
CipherString = aRSA
|
||||
[2-Ed448 CipherString and Signature Algorithm Selection-client]
|
||||
CipherString = aECDSA
|
||||
MaxProtocol = TLSv1.2
|
||||
RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
SignatureAlgorithms = ed448:ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-2]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
ExpectedServerCANames = empty
|
||||
ExpectedServerCertType = Ed448
|
||||
ExpectedServerSignType = Ed448
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[3-RSA-PSS Certificate CipherString Selection]
|
||||
ssl_conf = 3-RSA-PSS Certificate CipherString Selection-ssl
|
||||
[3-RSA CipherString Selection]
|
||||
ssl_conf = 3-RSA CipherString Selection-ssl
|
||||
|
||||
[3-RSA-PSS Certificate CipherString Selection-ssl]
|
||||
server = 3-RSA-PSS Certificate CipherString Selection-server
|
||||
client = 3-RSA-PSS Certificate CipherString Selection-client
|
||||
[3-RSA CipherString Selection-ssl]
|
||||
server = 3-RSA CipherString Selection-server
|
||||
client = 3-RSA CipherString Selection-client
|
||||
|
||||
[3-RSA-PSS Certificate CipherString Selection-server]
|
||||
[3-RSA CipherString Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[3-RSA-PSS Certificate CipherString Selection-client]
|
||||
[3-RSA CipherString Selection-client]
|
||||
CipherString = aRSA
|
||||
MaxProtocol = TLSv1.2
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
@@ -168,127 +183,203 @@ VerifyMode = Peer
|
||||
|
||||
[test-3]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[4-RSA-PSS Certificate CipherString Selection]
|
||||
ssl_conf = 4-RSA-PSS Certificate CipherString Selection-ssl
|
||||
|
||||
[4-RSA-PSS Certificate CipherString Selection-ssl]
|
||||
server = 4-RSA-PSS Certificate CipherString Selection-server
|
||||
client = 4-RSA-PSS Certificate CipherString Selection-client
|
||||
|
||||
[4-RSA-PSS Certificate CipherString Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[4-RSA-PSS Certificate CipherString Selection-client]
|
||||
CipherString = aRSA
|
||||
MaxProtocol = TLSv1.2
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-4]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA-PSS
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[4-P-256 CipherString and Signature Algorithm Selection]
|
||||
ssl_conf = 4-P-256 CipherString and Signature Algorithm Selection-ssl
|
||||
[5-P-256 CipherString and Signature Algorithm Selection]
|
||||
ssl_conf = 5-P-256 CipherString and Signature Algorithm Selection-ssl
|
||||
|
||||
[4-P-256 CipherString and Signature Algorithm Selection-ssl]
|
||||
server = 4-P-256 CipherString and Signature Algorithm Selection-server
|
||||
client = 4-P-256 CipherString and Signature Algorithm Selection-client
|
||||
[5-P-256 CipherString and Signature Algorithm Selection-ssl]
|
||||
server = 5-P-256 CipherString and Signature Algorithm Selection-server
|
||||
client = 5-P-256 CipherString and Signature Algorithm Selection-client
|
||||
|
||||
[4-P-256 CipherString and Signature Algorithm Selection-server]
|
||||
[5-P-256 CipherString and Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[4-P-256 CipherString and Signature Algorithm Selection-client]
|
||||
[5-P-256 CipherString and Signature Algorithm Selection-client]
|
||||
CipherString = aECDSA
|
||||
MaxProtocol = TLSv1.2
|
||||
SignatureAlgorithms = ECDSA+SHA256:ed25519
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-4]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = EC
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[5-Ed25519 CipherString and Curves Selection]
|
||||
ssl_conf = 5-Ed25519 CipherString and Curves Selection-ssl
|
||||
|
||||
[5-Ed25519 CipherString and Curves Selection-ssl]
|
||||
server = 5-Ed25519 CipherString and Curves Selection-server
|
||||
client = 5-Ed25519 CipherString and Curves Selection-client
|
||||
|
||||
[5-Ed25519 CipherString and Curves Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[5-Ed25519 CipherString and Curves Selection-client]
|
||||
CipherString = aECDSA
|
||||
Curves = X25519
|
||||
MaxProtocol = TLSv1.2
|
||||
SignatureAlgorithms = ECDSA+SHA256:ed25519
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-5]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = EC
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[6-Ed25519 CipherString and Curves Selection]
|
||||
ssl_conf = 6-Ed25519 CipherString and Curves Selection-ssl
|
||||
|
||||
[6-Ed25519 CipherString and Curves Selection-ssl]
|
||||
server = 6-Ed25519 CipherString and Curves Selection-server
|
||||
client = 6-Ed25519 CipherString and Curves Selection-client
|
||||
|
||||
[6-Ed25519 CipherString and Curves Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[6-Ed25519 CipherString and Curves Selection-client]
|
||||
CipherString = aECDSA
|
||||
Curves = X25519
|
||||
MaxProtocol = TLSv1.2
|
||||
SignatureAlgorithms = ECDSA+SHA256:ed25519
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-6]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = Ed25519
|
||||
ExpectedServerSignType = Ed25519
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[6-ECDSA CipherString Selection, no ECDSA certificate]
|
||||
ssl_conf = 6-ECDSA CipherString Selection, no ECDSA certificate-ssl
|
||||
[7-Ed448 CipherString and Curves Selection]
|
||||
ssl_conf = 7-Ed448 CipherString and Curves Selection-ssl
|
||||
|
||||
[6-ECDSA CipherString Selection, no ECDSA certificate-ssl]
|
||||
server = 6-ECDSA CipherString Selection, no ECDSA certificate-server
|
||||
client = 6-ECDSA CipherString Selection, no ECDSA certificate-client
|
||||
[7-Ed448 CipherString and Curves Selection-ssl]
|
||||
server = 7-Ed448 CipherString and Curves Selection-server
|
||||
client = 7-Ed448 CipherString and Curves Selection-client
|
||||
|
||||
[6-ECDSA CipherString Selection, no ECDSA certificate-server]
|
||||
[7-Ed448 CipherString and Curves Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[7-Ed448 CipherString and Curves Selection-client]
|
||||
CipherString = aECDSA
|
||||
Curves = X448
|
||||
MaxProtocol = TLSv1.2
|
||||
SignatureAlgorithms = ECDSA+SHA256:ed448
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-7]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = Ed448
|
||||
ExpectedServerSignType = Ed448
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[8-ECDSA CipherString Selection, no ECDSA certificate]
|
||||
ssl_conf = 8-ECDSA CipherString Selection, no ECDSA certificate-ssl
|
||||
|
||||
[8-ECDSA CipherString Selection, no ECDSA certificate-ssl]
|
||||
server = 8-ECDSA CipherString Selection, no ECDSA certificate-server
|
||||
client = 8-ECDSA CipherString Selection, no ECDSA certificate-client
|
||||
|
||||
[8-ECDSA CipherString Selection, no ECDSA certificate-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[6-ECDSA CipherString Selection, no ECDSA certificate-client]
|
||||
[8-ECDSA CipherString Selection, no ECDSA certificate-client]
|
||||
CipherString = aECDSA
|
||||
MaxProtocol = TLSv1.2
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-6]
|
||||
[test-8]
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[7-ECDSA Signature Algorithm Selection]
|
||||
ssl_conf = 7-ECDSA Signature Algorithm Selection-ssl
|
||||
[9-ECDSA Signature Algorithm Selection]
|
||||
ssl_conf = 9-ECDSA Signature Algorithm Selection-ssl
|
||||
|
||||
[7-ECDSA Signature Algorithm Selection-ssl]
|
||||
server = 7-ECDSA Signature Algorithm Selection-server
|
||||
client = 7-ECDSA Signature Algorithm Selection-client
|
||||
[9-ECDSA Signature Algorithm Selection-ssl]
|
||||
server = 9-ECDSA Signature Algorithm Selection-server
|
||||
client = 9-ECDSA Signature Algorithm Selection-client
|
||||
|
||||
[7-ECDSA Signature Algorithm Selection-server]
|
||||
[9-ECDSA Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[7-ECDSA Signature Algorithm Selection-client]
|
||||
[9-ECDSA Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-7]
|
||||
[test-9]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA256
|
||||
@@ -297,30 +388,32 @@ ExpectedServerSignType = EC
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[8-ECDSA Signature Algorithm Selection SHA384]
|
||||
ssl_conf = 8-ECDSA Signature Algorithm Selection SHA384-ssl
|
||||
[10-ECDSA Signature Algorithm Selection SHA384]
|
||||
ssl_conf = 10-ECDSA Signature Algorithm Selection SHA384-ssl
|
||||
|
||||
[8-ECDSA Signature Algorithm Selection SHA384-ssl]
|
||||
server = 8-ECDSA Signature Algorithm Selection SHA384-server
|
||||
client = 8-ECDSA Signature Algorithm Selection SHA384-client
|
||||
[10-ECDSA Signature Algorithm Selection SHA384-ssl]
|
||||
server = 10-ECDSA Signature Algorithm Selection SHA384-server
|
||||
client = 10-ECDSA Signature Algorithm Selection SHA384-client
|
||||
|
||||
[8-ECDSA Signature Algorithm Selection SHA384-server]
|
||||
[10-ECDSA Signature Algorithm Selection SHA384-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[8-ECDSA Signature Algorithm Selection SHA384-client]
|
||||
[10-ECDSA Signature Algorithm Selection SHA384-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA384
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-8]
|
||||
[test-10]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA384
|
||||
@@ -329,30 +422,32 @@ ExpectedServerSignType = EC
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[9-ECDSA Signature Algorithm Selection SHA1]
|
||||
ssl_conf = 9-ECDSA Signature Algorithm Selection SHA1-ssl
|
||||
[11-ECDSA Signature Algorithm Selection SHA1]
|
||||
ssl_conf = 11-ECDSA Signature Algorithm Selection SHA1-ssl
|
||||
|
||||
[9-ECDSA Signature Algorithm Selection SHA1-ssl]
|
||||
server = 9-ECDSA Signature Algorithm Selection SHA1-server
|
||||
client = 9-ECDSA Signature Algorithm Selection SHA1-client
|
||||
[11-ECDSA Signature Algorithm Selection SHA1-ssl]
|
||||
server = 11-ECDSA Signature Algorithm Selection SHA1-server
|
||||
client = 11-ECDSA Signature Algorithm Selection SHA1-client
|
||||
|
||||
[9-ECDSA Signature Algorithm Selection SHA1-server]
|
||||
[11-ECDSA Signature Algorithm Selection SHA1-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[9-ECDSA Signature Algorithm Selection SHA1-client]
|
||||
[11-ECDSA Signature Algorithm Selection SHA1-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA1
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-9]
|
||||
[test-11]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA1
|
||||
@@ -361,14 +456,14 @@ ExpectedServerSignType = EC
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[10-ECDSA Signature Algorithm Selection compressed point]
|
||||
ssl_conf = 10-ECDSA Signature Algorithm Selection compressed point-ssl
|
||||
[12-ECDSA Signature Algorithm Selection compressed point]
|
||||
ssl_conf = 12-ECDSA Signature Algorithm Selection compressed point-ssl
|
||||
|
||||
[10-ECDSA Signature Algorithm Selection compressed point-ssl]
|
||||
server = 10-ECDSA Signature Algorithm Selection compressed point-server
|
||||
client = 10-ECDSA Signature Algorithm Selection compressed point-client
|
||||
[12-ECDSA Signature Algorithm Selection compressed point-ssl]
|
||||
server = 12-ECDSA Signature Algorithm Selection compressed point-server
|
||||
client = 12-ECDSA Signature Algorithm Selection compressed point-client
|
||||
|
||||
[10-ECDSA Signature Algorithm Selection compressed point-server]
|
||||
[12-ECDSA Signature Algorithm Selection compressed point-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-cecdsa-cert.pem
|
||||
@@ -376,13 +471,13 @@ ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-cecdsa-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[10-ECDSA Signature Algorithm Selection compressed point-client]
|
||||
[12-ECDSA Signature Algorithm Selection compressed point-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-10]
|
||||
[test-12]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA256
|
||||
@@ -391,55 +486,57 @@ ExpectedServerSignType = EC
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[11-ECDSA Signature Algorithm Selection, no ECDSA certificate]
|
||||
ssl_conf = 11-ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl
|
||||
[13-ECDSA Signature Algorithm Selection, no ECDSA certificate]
|
||||
ssl_conf = 13-ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl
|
||||
|
||||
[11-ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl]
|
||||
server = 11-ECDSA Signature Algorithm Selection, no ECDSA certificate-server
|
||||
client = 11-ECDSA Signature Algorithm Selection, no ECDSA certificate-client
|
||||
[13-ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl]
|
||||
server = 13-ECDSA Signature Algorithm Selection, no ECDSA certificate-server
|
||||
client = 13-ECDSA Signature Algorithm Selection, no ECDSA certificate-client
|
||||
|
||||
[11-ECDSA Signature Algorithm Selection, no ECDSA certificate-server]
|
||||
[13-ECDSA Signature Algorithm Selection, no ECDSA certificate-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[11-ECDSA Signature Algorithm Selection, no ECDSA certificate-client]
|
||||
[13-ECDSA Signature Algorithm Selection, no ECDSA certificate-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-11]
|
||||
[test-13]
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[12-RSA Signature Algorithm Selection]
|
||||
ssl_conf = 12-RSA Signature Algorithm Selection-ssl
|
||||
[14-RSA Signature Algorithm Selection]
|
||||
ssl_conf = 14-RSA Signature Algorithm Selection-ssl
|
||||
|
||||
[12-RSA Signature Algorithm Selection-ssl]
|
||||
server = 12-RSA Signature Algorithm Selection-server
|
||||
client = 12-RSA Signature Algorithm Selection-client
|
||||
[14-RSA Signature Algorithm Selection-ssl]
|
||||
server = 14-RSA Signature Algorithm Selection-server
|
||||
client = 14-RSA Signature Algorithm Selection-client
|
||||
|
||||
[12-RSA Signature Algorithm Selection-server]
|
||||
[14-RSA Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[12-RSA Signature Algorithm Selection-client]
|
||||
[14-RSA Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = RSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-12]
|
||||
[test-14]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignHash = SHA256
|
||||
@@ -448,125 +545,105 @@ ExpectedServerSignType = RSA
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[13-RSA-PSS Signature Algorithm Selection]
|
||||
ssl_conf = 13-RSA-PSS Signature Algorithm Selection-ssl
|
||||
[15-RSA-PSS Signature Algorithm Selection]
|
||||
ssl_conf = 15-RSA-PSS Signature Algorithm Selection-ssl
|
||||
|
||||
[13-RSA-PSS Signature Algorithm Selection-ssl]
|
||||
server = 13-RSA-PSS Signature Algorithm Selection-server
|
||||
client = 13-RSA-PSS Signature Algorithm Selection-client
|
||||
[15-RSA-PSS Signature Algorithm Selection-ssl]
|
||||
server = 15-RSA-PSS Signature Algorithm Selection-server
|
||||
client = 15-RSA-PSS Signature Algorithm Selection-client
|
||||
|
||||
[13-RSA-PSS Signature Algorithm Selection-server]
|
||||
[15-RSA-PSS Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[13-RSA-PSS Signature Algorithm Selection-client]
|
||||
[15-RSA-PSS Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = RSA-PSS+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-13]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[14-RSA-PSS Certificate Legacy Signature Algorithm Selection]
|
||||
ssl_conf = 14-RSA-PSS Certificate Legacy Signature Algorithm Selection-ssl
|
||||
|
||||
[14-RSA-PSS Certificate Legacy Signature Algorithm Selection-ssl]
|
||||
server = 14-RSA-PSS Certificate Legacy Signature Algorithm Selection-server
|
||||
client = 14-RSA-PSS Certificate Legacy Signature Algorithm Selection-client
|
||||
|
||||
[14-RSA-PSS Certificate Legacy Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[14-RSA-PSS Certificate Legacy Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = RSA-PSS+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-14]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[15-RSA-PSS Certificate Unified Signature Algorithm Selection]
|
||||
ssl_conf = 15-RSA-PSS Certificate Unified Signature Algorithm Selection-ssl
|
||||
|
||||
[15-RSA-PSS Certificate Unified Signature Algorithm Selection-ssl]
|
||||
server = 15-RSA-PSS Certificate Unified Signature Algorithm Selection-server
|
||||
client = 15-RSA-PSS Certificate Unified Signature Algorithm Selection-client
|
||||
|
||||
[15-RSA-PSS Certificate Unified Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[15-RSA-PSS Certificate Unified Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = rsa_pss_pss_sha256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-15]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA-PSS
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[16-Only RSA-PSS Certificate]
|
||||
ssl_conf = 16-Only RSA-PSS Certificate-ssl
|
||||
[16-RSA-PSS Certificate Legacy Signature Algorithm Selection]
|
||||
ssl_conf = 16-RSA-PSS Certificate Legacy Signature Algorithm Selection-ssl
|
||||
|
||||
[16-Only RSA-PSS Certificate-ssl]
|
||||
server = 16-Only RSA-PSS Certificate-server
|
||||
client = 16-Only RSA-PSS Certificate-client
|
||||
[16-RSA-PSS Certificate Legacy Signature Algorithm Selection-ssl]
|
||||
server = 16-RSA-PSS Certificate Legacy Signature Algorithm Selection-server
|
||||
client = 16-RSA-PSS Certificate Legacy Signature Algorithm Selection-client
|
||||
|
||||
[16-Only RSA-PSS Certificate-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
[16-RSA-PSS Certificate Legacy Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[16-Only RSA-PSS Certificate-client]
|
||||
[16-RSA-PSS Certificate Legacy Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = RSA-PSS+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-16]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[17-RSA-PSS Certificate Unified Signature Algorithm Selection]
|
||||
ssl_conf = 17-RSA-PSS Certificate Unified Signature Algorithm Selection-ssl
|
||||
|
||||
[17-RSA-PSS Certificate Unified Signature Algorithm Selection-ssl]
|
||||
server = 17-RSA-PSS Certificate Unified Signature Algorithm Selection-server
|
||||
client = 17-RSA-PSS Certificate Unified Signature Algorithm Selection-client
|
||||
|
||||
[17-RSA-PSS Certificate Unified Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PSS.Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
PSS.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[17-RSA-PSS Certificate Unified Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = rsa_pss_pss_sha256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-17]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA-PSS
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
@@ -574,38 +651,64 @@ ExpectedServerSignType = RSA-PSS
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[17-RSA-PSS Certificate, no PSS signature algorithms]
|
||||
ssl_conf = 17-RSA-PSS Certificate, no PSS signature algorithms-ssl
|
||||
[18-Only RSA-PSS Certificate]
|
||||
ssl_conf = 18-Only RSA-PSS Certificate-ssl
|
||||
|
||||
[17-RSA-PSS Certificate, no PSS signature algorithms-ssl]
|
||||
server = 17-RSA-PSS Certificate, no PSS signature algorithms-server
|
||||
client = 17-RSA-PSS Certificate, no PSS signature algorithms-client
|
||||
[18-Only RSA-PSS Certificate-ssl]
|
||||
server = 18-Only RSA-PSS Certificate-server
|
||||
client = 18-Only RSA-PSS Certificate-client
|
||||
|
||||
[17-RSA-PSS Certificate, no PSS signature algorithms-server]
|
||||
[18-Only RSA-PSS Certificate-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
CipherString = DEFAULT
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
|
||||
[17-RSA-PSS Certificate, no PSS signature algorithms-client]
|
||||
[18-Only RSA-PSS Certificate-client]
|
||||
CipherString = DEFAULT
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-18]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA-PSS
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[19-RSA-PSS Certificate, no PSS signature algorithms]
|
||||
ssl_conf = 19-RSA-PSS Certificate, no PSS signature algorithms-ssl
|
||||
|
||||
[19-RSA-PSS Certificate, no PSS signature algorithms-ssl]
|
||||
server = 19-RSA-PSS Certificate, no PSS signature algorithms-server
|
||||
client = 19-RSA-PSS Certificate, no PSS signature algorithms-client
|
||||
|
||||
[19-RSA-PSS Certificate, no PSS signature algorithms-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
CipherString = DEFAULT
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
|
||||
[19-RSA-PSS Certificate, no PSS signature algorithms-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = RSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-17]
|
||||
[test-19]
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[18-Suite B P-256 Hash Algorithm Selection]
|
||||
ssl_conf = 18-Suite B P-256 Hash Algorithm Selection-ssl
|
||||
[20-Suite B P-256 Hash Algorithm Selection]
|
||||
ssl_conf = 20-Suite B P-256 Hash Algorithm Selection-ssl
|
||||
|
||||
[18-Suite B P-256 Hash Algorithm Selection-ssl]
|
||||
server = 18-Suite B P-256 Hash Algorithm Selection-server
|
||||
client = 18-Suite B P-256 Hash Algorithm Selection-client
|
||||
[20-Suite B P-256 Hash Algorithm Selection-ssl]
|
||||
server = 20-Suite B P-256 Hash Algorithm Selection-server
|
||||
client = 20-Suite B P-256 Hash Algorithm Selection-client
|
||||
|
||||
[18-Suite B P-256 Hash Algorithm Selection-server]
|
||||
[20-Suite B P-256 Hash Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = SUITEB128
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/p256-server-cert.pem
|
||||
@@ -613,13 +716,13 @@ ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/p256-server-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[18-Suite B P-256 Hash Algorithm Selection-client]
|
||||
[20-Suite B P-256 Hash Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA384:ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/p384-root.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-18]
|
||||
[test-20]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA256
|
||||
@@ -628,14 +731,14 @@ ExpectedServerSignType = EC
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[19-Suite B P-384 Hash Algorithm Selection]
|
||||
ssl_conf = 19-Suite B P-384 Hash Algorithm Selection-ssl
|
||||
[21-Suite B P-384 Hash Algorithm Selection]
|
||||
ssl_conf = 21-Suite B P-384 Hash Algorithm Selection-ssl
|
||||
|
||||
[19-Suite B P-384 Hash Algorithm Selection-ssl]
|
||||
server = 19-Suite B P-384 Hash Algorithm Selection-server
|
||||
client = 19-Suite B P-384 Hash Algorithm Selection-client
|
||||
[21-Suite B P-384 Hash Algorithm Selection-ssl]
|
||||
server = 21-Suite B P-384 Hash Algorithm Selection-server
|
||||
client = 21-Suite B P-384 Hash Algorithm Selection-client
|
||||
|
||||
[19-Suite B P-384 Hash Algorithm Selection-server]
|
||||
[21-Suite B P-384 Hash Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = SUITEB128
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/p384-server-cert.pem
|
||||
@@ -643,13 +746,13 @@ ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/p384-server-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[19-Suite B P-384 Hash Algorithm Selection-client]
|
||||
[21-Suite B P-384 Hash Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA256:ECDSA+SHA384
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/p384-root.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-19]
|
||||
[test-21]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-384
|
||||
ExpectedServerSignHash = SHA384
|
||||
@@ -658,30 +761,30 @@ ExpectedServerSignType = EC
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[20-TLS 1.2 Ed25519 Client Auth]
|
||||
ssl_conf = 20-TLS 1.2 Ed25519 Client Auth-ssl
|
||||
[22-TLS 1.2 Ed25519 Client Auth]
|
||||
ssl_conf = 22-TLS 1.2 Ed25519 Client Auth-ssl
|
||||
|
||||
[20-TLS 1.2 Ed25519 Client Auth-ssl]
|
||||
server = 20-TLS 1.2 Ed25519 Client Auth-server
|
||||
client = 20-TLS 1.2 Ed25519 Client Auth-client
|
||||
[22-TLS 1.2 Ed25519 Client Auth-ssl]
|
||||
server = 22-TLS 1.2 Ed25519 Client Auth-server
|
||||
client = 22-TLS 1.2 Ed25519 Client Auth-client
|
||||
|
||||
[20-TLS 1.2 Ed25519 Client Auth-server]
|
||||
[22-TLS 1.2 Ed25519 Client Auth-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyMode = Require
|
||||
|
||||
[20-TLS 1.2 Ed25519 Client Auth-client]
|
||||
[22-TLS 1.2 Ed25519 Client Auth-client]
|
||||
CipherString = DEFAULT
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed25519-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
MinProtocol = TLSv1.2
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-20]
|
||||
[test-22]
|
||||
ExpectedClientCertType = Ed25519
|
||||
ExpectedClientSignType = Ed25519
|
||||
ExpectedResult = Success
|
||||
@@ -689,113 +792,52 @@ ExpectedResult = Success
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[21-Only RSA-PSS Certificate, TLS v1.1]
|
||||
ssl_conf = 21-Only RSA-PSS Certificate, TLS v1.1-ssl
|
||||
[23-TLS 1.2 Ed448 Client Auth]
|
||||
ssl_conf = 23-TLS 1.2 Ed448 Client Auth-ssl
|
||||
|
||||
[21-Only RSA-PSS Certificate, TLS v1.1-ssl]
|
||||
server = 21-Only RSA-PSS Certificate, TLS v1.1-server
|
||||
client = 21-Only RSA-PSS Certificate, TLS v1.1-client
|
||||
[23-TLS 1.2 Ed448 Client Auth-ssl]
|
||||
server = 23-TLS 1.2 Ed448 Client Auth-server
|
||||
client = 23-TLS 1.2 Ed448 Client Auth-client
|
||||
|
||||
[21-Only RSA-PSS Certificate, TLS v1.1-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
CipherString = DEFAULT
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
|
||||
[21-Only RSA-PSS Certificate, TLS v1.1-client]
|
||||
CipherString = DEFAULT
|
||||
MaxProtocol = TLSv1.1
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-21]
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[22-TLS 1.3 ECDSA Signature Algorithm Selection]
|
||||
ssl_conf = 22-TLS 1.3 ECDSA Signature Algorithm Selection-ssl
|
||||
|
||||
[22-TLS 1.3 ECDSA Signature Algorithm Selection-ssl]
|
||||
server = 22-TLS 1.3 ECDSA Signature Algorithm Selection-server
|
||||
client = 22-TLS 1.3 ECDSA Signature Algorithm Selection-client
|
||||
|
||||
[22-TLS 1.3 ECDSA Signature Algorithm Selection-server]
|
||||
[23-TLS 1.2 Ed448 Client Auth-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyMode = Require
|
||||
|
||||
[22-TLS 1.3 ECDSA Signature Algorithm Selection-client]
|
||||
[23-TLS 1.2 Ed448 Client Auth-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-22]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCANames = empty
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = EC
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[23-TLS 1.3 ECDSA Signature Algorithm Selection compressed point]
|
||||
ssl_conf = 23-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-ssl
|
||||
|
||||
[23-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-ssl]
|
||||
server = 23-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-server
|
||||
client = 23-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-client
|
||||
|
||||
[23-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-cecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-cecdsa-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[23-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed448-key.pem
|
||||
MaxProtocol = TLSv1.2
|
||||
MinProtocol = TLSv1.2
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-23]
|
||||
ExpectedResult = ServerFail
|
||||
ExpectedClientCertType = Ed448
|
||||
ExpectedClientSignType = Ed448
|
||||
ExpectedResult = Success
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[24-TLS 1.3 ECDSA Signature Algorithm Selection SHA1]
|
||||
ssl_conf = 24-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-ssl
|
||||
[24-Only RSA-PSS Certificate, TLS v1.1]
|
||||
ssl_conf = 24-Only RSA-PSS Certificate, TLS v1.1-ssl
|
||||
|
||||
[24-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-ssl]
|
||||
server = 24-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-server
|
||||
client = 24-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-client
|
||||
[24-Only RSA-PSS Certificate, TLS v1.1-ssl]
|
||||
server = 24-Only RSA-PSS Certificate, TLS v1.1-server
|
||||
client = 24-Only RSA-PSS Certificate, TLS v1.1-client
|
||||
|
||||
[24-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
[24-Only RSA-PSS Certificate, TLS v1.1-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/server-pss-cert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/server-pss-key.pem
|
||||
|
||||
[24-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-client]
|
||||
[24-Only RSA-PSS Certificate, TLS v1.1-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA1
|
||||
MaxProtocol = TLSv1.1
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
@@ -805,34 +847,35 @@ ExpectedResult = ServerFail
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[25-TLS 1.3 ECDSA Signature Algorithm Selection with PSS]
|
||||
ssl_conf = 25-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-ssl
|
||||
[25-TLS 1.3 ECDSA Signature Algorithm Selection]
|
||||
ssl_conf = 25-TLS 1.3 ECDSA Signature Algorithm Selection-ssl
|
||||
|
||||
[25-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-ssl]
|
||||
server = 25-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-server
|
||||
client = 25-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-client
|
||||
[25-TLS 1.3 ECDSA Signature Algorithm Selection-ssl]
|
||||
server = 25-TLS 1.3 ECDSA Signature Algorithm Selection-server
|
||||
client = 25-TLS 1.3 ECDSA Signature Algorithm Selection-client
|
||||
|
||||
[25-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-server]
|
||||
[25-TLS 1.3 ECDSA Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[25-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-client]
|
||||
[25-TLS 1.3 ECDSA Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
SignatureAlgorithms = ECDSA+SHA256:RSA-PSS+SHA256
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-25]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCANames = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
ExpectedServerCANames = empty
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = EC
|
||||
@@ -840,56 +883,57 @@ ExpectedServerSignType = EC
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[26-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS]
|
||||
ssl_conf = 26-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-ssl
|
||||
[26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point]
|
||||
ssl_conf = 26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-ssl
|
||||
|
||||
[26-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-ssl]
|
||||
server = 26-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-server
|
||||
client = 26-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-client
|
||||
[26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-ssl]
|
||||
server = 26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-server
|
||||
client = 26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-client
|
||||
|
||||
[26-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-server]
|
||||
[26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-cecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-cecdsa-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[26-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-client]
|
||||
[26-TLS 1.3 ECDSA Signature Algorithm Selection compressed point-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA384:RSA-PSS+SHA384
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-26]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignHash = SHA384
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[27-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate]
|
||||
ssl_conf = 27-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl
|
||||
[27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1]
|
||||
ssl_conf = 27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-ssl
|
||||
|
||||
[27-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl]
|
||||
server = 27-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-server
|
||||
client = 27-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-client
|
||||
[27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-ssl]
|
||||
server = 27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-server
|
||||
client = 27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-client
|
||||
|
||||
[27-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-server]
|
||||
[27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[27-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-client]
|
||||
[27-TLS 1.3 ECDSA Signature Algorithm Selection SHA1-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
SignatureAlgorithms = ECDSA+SHA1
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
@@ -899,61 +943,163 @@ ExpectedResult = ServerFail
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[28-TLS 1.3 RSA Signature Algorithm Selection, no PSS]
|
||||
ssl_conf = 28-TLS 1.3 RSA Signature Algorithm Selection, no PSS-ssl
|
||||
[28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS]
|
||||
ssl_conf = 28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-ssl
|
||||
|
||||
[28-TLS 1.3 RSA Signature Algorithm Selection, no PSS-ssl]
|
||||
server = 28-TLS 1.3 RSA Signature Algorithm Selection, no PSS-server
|
||||
client = 28-TLS 1.3 RSA Signature Algorithm Selection, no PSS-client
|
||||
[28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-ssl]
|
||||
server = 28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-server
|
||||
client = 28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-client
|
||||
|
||||
[28-TLS 1.3 RSA Signature Algorithm Selection, no PSS-server]
|
||||
[28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[28-TLS 1.3 RSA Signature Algorithm Selection, no PSS-client]
|
||||
[28-TLS 1.3 ECDSA Signature Algorithm Selection with PSS-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = RSA+SHA256
|
||||
RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
SignatureAlgorithms = ECDSA+SHA256:RSA-PSS+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-28]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCANames = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignHash = SHA256
|
||||
ExpectedServerSignType = EC
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS]
|
||||
ssl_conf = 29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-ssl
|
||||
|
||||
[29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-ssl]
|
||||
server = 29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-server
|
||||
client = 29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-client
|
||||
|
||||
[29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[29-TLS 1.3 RSA Signature Algorithm Selection SHA384 with PSS-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA384:RSA-PSS+SHA384
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-29]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignHash = SHA384
|
||||
ExpectedServerSignType = RSA-PSS
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate]
|
||||
ssl_conf = 30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl
|
||||
|
||||
[30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-ssl]
|
||||
server = 30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-server
|
||||
client = 30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-client
|
||||
|
||||
[30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[30-TLS 1.3 ECDSA Signature Algorithm Selection, no ECDSA certificate-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-30]
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[29-TLS 1.3 RSA-PSS Signature Algorithm Selection]
|
||||
ssl_conf = 29-TLS 1.3 RSA-PSS Signature Algorithm Selection-ssl
|
||||
[31-TLS 1.3 RSA Signature Algorithm Selection, no PSS]
|
||||
ssl_conf = 31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-ssl
|
||||
|
||||
[29-TLS 1.3 RSA-PSS Signature Algorithm Selection-ssl]
|
||||
server = 29-TLS 1.3 RSA-PSS Signature Algorithm Selection-server
|
||||
client = 29-TLS 1.3 RSA-PSS Signature Algorithm Selection-client
|
||||
[31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-ssl]
|
||||
server = 31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-server
|
||||
client = 31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-client
|
||||
|
||||
[29-TLS 1.3 RSA-PSS Signature Algorithm Selection-server]
|
||||
[31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[29-TLS 1.3 RSA-PSS Signature Algorithm Selection-client]
|
||||
[31-TLS 1.3 RSA Signature Algorithm Selection, no PSS-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = RSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-31]
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[32-TLS 1.3 RSA-PSS Signature Algorithm Selection]
|
||||
ssl_conf = 32-TLS 1.3 RSA-PSS Signature Algorithm Selection-ssl
|
||||
|
||||
[32-TLS 1.3 RSA-PSS Signature Algorithm Selection-ssl]
|
||||
server = 32-TLS 1.3 RSA-PSS Signature Algorithm Selection-server
|
||||
client = 32-TLS 1.3 RSA-PSS Signature Algorithm Selection-client
|
||||
|
||||
[32-TLS 1.3 RSA-PSS Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[32-TLS 1.3 RSA-PSS Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = RSA-PSS+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-29]
|
||||
[test-32]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = RSA
|
||||
ExpectedServerSignHash = SHA256
|
||||
@@ -962,31 +1108,33 @@ ExpectedServerSignType = RSA-PSS
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[30-TLS 1.3 Ed25519 Signature Algorithm Selection]
|
||||
ssl_conf = 30-TLS 1.3 Ed25519 Signature Algorithm Selection-ssl
|
||||
[33-TLS 1.3 Ed25519 Signature Algorithm Selection]
|
||||
ssl_conf = 33-TLS 1.3 Ed25519 Signature Algorithm Selection-ssl
|
||||
|
||||
[30-TLS 1.3 Ed25519 Signature Algorithm Selection-ssl]
|
||||
server = 30-TLS 1.3 Ed25519 Signature Algorithm Selection-server
|
||||
client = 30-TLS 1.3 Ed25519 Signature Algorithm Selection-client
|
||||
[33-TLS 1.3 Ed25519 Signature Algorithm Selection-ssl]
|
||||
server = 33-TLS 1.3 Ed25519 Signature Algorithm Selection-server
|
||||
client = 33-TLS 1.3 Ed25519 Signature Algorithm Selection-client
|
||||
|
||||
[30-TLS 1.3 Ed25519 Signature Algorithm Selection-server]
|
||||
[33-TLS 1.3 Ed25519 Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[30-TLS 1.3 Ed25519 Signature Algorithm Selection-client]
|
||||
[33-TLS 1.3 Ed25519 Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ed25519
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-30]
|
||||
[test-33]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = Ed25519
|
||||
ExpectedServerSignType = Ed25519
|
||||
@@ -994,32 +1142,68 @@ ExpectedServerSignType = Ed25519
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[31-TLS 1.3 Ed25519 CipherString and Groups Selection]
|
||||
ssl_conf = 31-TLS 1.3 Ed25519 CipherString and Groups Selection-ssl
|
||||
[34-TLS 1.3 Ed448 Signature Algorithm Selection]
|
||||
ssl_conf = 34-TLS 1.3 Ed448 Signature Algorithm Selection-ssl
|
||||
|
||||
[31-TLS 1.3 Ed25519 CipherString and Groups Selection-ssl]
|
||||
server = 31-TLS 1.3 Ed25519 CipherString and Groups Selection-server
|
||||
client = 31-TLS 1.3 Ed25519 CipherString and Groups Selection-client
|
||||
[34-TLS 1.3 Ed448 Signature Algorithm Selection-ssl]
|
||||
server = 34-TLS 1.3 Ed448 Signature Algorithm Selection-server
|
||||
client = 34-TLS 1.3 Ed448 Signature Algorithm Selection-client
|
||||
|
||||
[31-TLS 1.3 Ed25519 CipherString and Groups Selection-server]
|
||||
[34-TLS 1.3 Ed448 Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[31-TLS 1.3 Ed25519 CipherString and Groups Selection-client]
|
||||
[34-TLS 1.3 Ed448 Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
SignatureAlgorithms = ed448
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-34]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = Ed448
|
||||
ExpectedServerSignType = Ed448
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[35-TLS 1.3 Ed25519 CipherString and Groups Selection]
|
||||
ssl_conf = 35-TLS 1.3 Ed25519 CipherString and Groups Selection-ssl
|
||||
|
||||
[35-TLS 1.3 Ed25519 CipherString and Groups Selection-ssl]
|
||||
server = 35-TLS 1.3 Ed25519 CipherString and Groups Selection-server
|
||||
client = 35-TLS 1.3 Ed25519 CipherString and Groups Selection-client
|
||||
|
||||
[35-TLS 1.3 Ed25519 CipherString and Groups Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[35-TLS 1.3 Ed25519 CipherString and Groups Selection-client]
|
||||
CipherString = DEFAULT
|
||||
Groups = X25519
|
||||
SignatureAlgorithms = ECDSA+SHA256:ed25519
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-31]
|
||||
[test-35]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignType = EC
|
||||
@@ -1027,14 +1211,49 @@ ExpectedServerSignType = EC
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[32-TLS 1.3 RSA Client Auth Signature Algorithm Selection]
|
||||
ssl_conf = 32-TLS 1.3 RSA Client Auth Signature Algorithm Selection-ssl
|
||||
[36-TLS 1.3 Ed448 CipherString and Groups Selection]
|
||||
ssl_conf = 36-TLS 1.3 Ed448 CipherString and Groups Selection-ssl
|
||||
|
||||
[32-TLS 1.3 RSA Client Auth Signature Algorithm Selection-ssl]
|
||||
server = 32-TLS 1.3 RSA Client Auth Signature Algorithm Selection-server
|
||||
client = 32-TLS 1.3 RSA Client Auth Signature Algorithm Selection-client
|
||||
[36-TLS 1.3 Ed448 CipherString and Groups Selection-ssl]
|
||||
server = 36-TLS 1.3 Ed448 CipherString and Groups Selection-server
|
||||
client = 36-TLS 1.3 Ed448 CipherString and Groups Selection-client
|
||||
|
||||
[32-TLS 1.3 RSA Client Auth Signature Algorithm Selection-server]
|
||||
[36-TLS 1.3 Ed448 CipherString and Groups Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-ecdsa-cert.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ecdsa-key.pem
|
||||
Ed25519.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed25519-cert.pem
|
||||
Ed25519.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed25519-key.pem
|
||||
Ed448.Certificate = ${ENV::TEST_CERTS_DIR}/server-ed448-cert.pem
|
||||
Ed448.PrivateKey = ${ENV::TEST_CERTS_DIR}/server-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[36-TLS 1.3 Ed448 CipherString and Groups Selection-client]
|
||||
CipherString = DEFAULT
|
||||
Groups = X448
|
||||
SignatureAlgorithms = ECDSA+SHA256:ed448
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-36]
|
||||
ExpectedResult = Success
|
||||
ExpectedServerCertType = P-256
|
||||
ExpectedServerSignType = EC
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[37-TLS 1.3 RSA Client Auth Signature Algorithm Selection]
|
||||
ssl_conf = 37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-ssl
|
||||
|
||||
[37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-ssl]
|
||||
server = 37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-server
|
||||
client = 37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-client
|
||||
|
||||
[37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ClientSignatureAlgorithms = PSS+SHA256
|
||||
@@ -1042,7 +1261,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyMode = Require
|
||||
|
||||
[32-TLS 1.3 RSA Client Auth Signature Algorithm Selection-client]
|
||||
[37-TLS 1.3 RSA Client Auth Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-client-chain.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-key.pem
|
||||
@@ -1053,7 +1272,7 @@ RSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-key.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-32]
|
||||
[test-37]
|
||||
ExpectedClientCANames = empty
|
||||
ExpectedClientCertType = RSA
|
||||
ExpectedClientSignHash = SHA256
|
||||
@@ -1063,14 +1282,14 @@ ExpectedResult = Success
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[33-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names]
|
||||
ssl_conf = 33-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-ssl
|
||||
[38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names]
|
||||
ssl_conf = 38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-ssl
|
||||
|
||||
[33-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-ssl]
|
||||
server = 33-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-server
|
||||
client = 33-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-client
|
||||
[38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-ssl]
|
||||
server = 38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-server
|
||||
client = 38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-client
|
||||
|
||||
[33-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-server]
|
||||
[38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ClientSignatureAlgorithms = PSS+SHA256
|
||||
@@ -1079,7 +1298,7 @@ RequestCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyMode = Require
|
||||
|
||||
[33-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-client]
|
||||
[38-TLS 1.3 RSA Client Auth Signature Algorithm Selection non-empty CA Names-client]
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-client-chain.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-key.pem
|
||||
@@ -1090,7 +1309,7 @@ RSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-key.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-33]
|
||||
[test-38]
|
||||
ExpectedClientCANames = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
ExpectedClientCertType = RSA
|
||||
ExpectedClientSignHash = SHA256
|
||||
@@ -1100,14 +1319,14 @@ ExpectedResult = Success
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[34-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection]
|
||||
ssl_conf = 34-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-ssl
|
||||
[39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection]
|
||||
ssl_conf = 39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-ssl
|
||||
|
||||
[34-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-ssl]
|
||||
server = 34-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-server
|
||||
client = 34-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-client
|
||||
[39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-ssl]
|
||||
server = 39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-server
|
||||
client = 39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-client
|
||||
|
||||
[34-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-server]
|
||||
[39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ClientSignatureAlgorithms = ECDSA+SHA256
|
||||
@@ -1115,7 +1334,7 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyMode = Require
|
||||
|
||||
[34-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-client]
|
||||
[39-TLS 1.3 ECDSA Client Auth Signature Algorithm Selection-client]
|
||||
CipherString = DEFAULT
|
||||
ECDSA.Certificate = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-client-chain.pem
|
||||
ECDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-ecdsa-key.pem
|
||||
@@ -1126,7 +1345,7 @@ RSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/ee-key.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-34]
|
||||
[test-39]
|
||||
ExpectedClientCertType = P-256
|
||||
ExpectedClientSignHash = SHA256
|
||||
ExpectedClientSignType = EC
|
||||
@@ -1135,21 +1354,21 @@ ExpectedResult = Success
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[35-TLS 1.3 Ed25519 Client Auth]
|
||||
ssl_conf = 35-TLS 1.3 Ed25519 Client Auth-ssl
|
||||
[40-TLS 1.3 Ed25519 Client Auth]
|
||||
ssl_conf = 40-TLS 1.3 Ed25519 Client Auth-ssl
|
||||
|
||||
[35-TLS 1.3 Ed25519 Client Auth-ssl]
|
||||
server = 35-TLS 1.3 Ed25519 Client Auth-server
|
||||
client = 35-TLS 1.3 Ed25519 Client Auth-client
|
||||
[40-TLS 1.3 Ed25519 Client Auth-ssl]
|
||||
server = 40-TLS 1.3 Ed25519 Client Auth-server
|
||||
client = 40-TLS 1.3 Ed25519 Client Auth-client
|
||||
|
||||
[35-TLS 1.3 Ed25519 Client Auth-server]
|
||||
[40-TLS 1.3 Ed25519 Client Auth-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyMode = Require
|
||||
|
||||
[35-TLS 1.3 Ed25519 Client Auth-client]
|
||||
[40-TLS 1.3 Ed25519 Client Auth-client]
|
||||
CipherString = DEFAULT
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed25519-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed25519-key.pem
|
||||
@@ -1158,7 +1377,7 @@ MinProtocol = TLSv1.3
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-35]
|
||||
[test-40]
|
||||
ExpectedClientCertType = Ed25519
|
||||
ExpectedClientSignType = Ed25519
|
||||
ExpectedResult = Success
|
||||
@@ -1166,14 +1385,45 @@ ExpectedResult = Success
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[36-TLS 1.2 DSA Certificate Test]
|
||||
ssl_conf = 36-TLS 1.2 DSA Certificate Test-ssl
|
||||
[41-TLS 1.3 Ed448 Client Auth]
|
||||
ssl_conf = 41-TLS 1.3 Ed448 Client Auth-ssl
|
||||
|
||||
[36-TLS 1.2 DSA Certificate Test-ssl]
|
||||
server = 36-TLS 1.2 DSA Certificate Test-server
|
||||
client = 36-TLS 1.2 DSA Certificate Test-client
|
||||
[41-TLS 1.3 Ed448 Client Auth-ssl]
|
||||
server = 41-TLS 1.3 Ed448 Client Auth-server
|
||||
client = 41-TLS 1.3 Ed448 Client Auth-client
|
||||
|
||||
[36-TLS 1.2 DSA Certificate Test-server]
|
||||
[41-TLS 1.3 Ed448 Client Auth-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyMode = Require
|
||||
|
||||
[41-TLS 1.3 Ed448 Client Auth-client]
|
||||
CipherString = DEFAULT
|
||||
EdDSA.Certificate = ${ENV::TEST_CERTS_DIR}/client-ed448-cert.pem
|
||||
EdDSA.PrivateKey = ${ENV::TEST_CERTS_DIR}/client-ed448-key.pem
|
||||
MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-41]
|
||||
ExpectedClientCertType = Ed448
|
||||
ExpectedClientSignType = Ed448
|
||||
ExpectedResult = Success
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[42-TLS 1.2 DSA Certificate Test]
|
||||
ssl_conf = 42-TLS 1.2 DSA Certificate Test-ssl
|
||||
|
||||
[42-TLS 1.2 DSA Certificate Test-ssl]
|
||||
server = 42-TLS 1.2 DSA Certificate Test-server
|
||||
client = 42-TLS 1.2 DSA Certificate Test-client
|
||||
|
||||
[42-TLS 1.2 DSA Certificate Test-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = ALL
|
||||
DHParameters = ${ENV::TEST_CERTS_DIR}/dhp2048.pem
|
||||
@@ -1183,26 +1433,26 @@ MaxProtocol = TLSv1.2
|
||||
MinProtocol = TLSv1.2
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[36-TLS 1.2 DSA Certificate Test-client]
|
||||
[42-TLS 1.2 DSA Certificate Test-client]
|
||||
CipherString = ALL
|
||||
SignatureAlgorithms = DSA+SHA256:DSA+SHA1
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-36]
|
||||
[test-42]
|
||||
ExpectedResult = Success
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[37-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms]
|
||||
ssl_conf = 37-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-ssl
|
||||
[43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms]
|
||||
ssl_conf = 43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-ssl
|
||||
|
||||
[37-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-ssl]
|
||||
server = 37-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-server
|
||||
client = 37-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-client
|
||||
[43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-ssl]
|
||||
server = 43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-server
|
||||
client = 43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-client
|
||||
|
||||
[37-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-server]
|
||||
[43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
ClientSignatureAlgorithms = ECDSA+SHA1:DSA+SHA256:RSA+SHA256
|
||||
@@ -1210,25 +1460,25 @@ PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/root-cert.pem
|
||||
VerifyMode = Request
|
||||
|
||||
[37-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-client]
|
||||
[43-TLS 1.3 Client Auth No TLS 1.3 Signature Algorithms-client]
|
||||
CipherString = DEFAULT
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-37]
|
||||
[test-43]
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[38-TLS 1.3 DSA Certificate Test]
|
||||
ssl_conf = 38-TLS 1.3 DSA Certificate Test-ssl
|
||||
[44-TLS 1.3 DSA Certificate Test]
|
||||
ssl_conf = 44-TLS 1.3 DSA Certificate Test-ssl
|
||||
|
||||
[38-TLS 1.3 DSA Certificate Test-ssl]
|
||||
server = 38-TLS 1.3 DSA Certificate Test-server
|
||||
client = 38-TLS 1.3 DSA Certificate Test-client
|
||||
[44-TLS 1.3 DSA Certificate Test-ssl]
|
||||
server = 44-TLS 1.3 DSA Certificate Test-server
|
||||
client = 44-TLS 1.3 DSA Certificate Test-client
|
||||
|
||||
[38-TLS 1.3 DSA Certificate Test-server]
|
||||
[44-TLS 1.3 DSA Certificate Test-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = ALL
|
||||
DSA.Certificate = ${ENV::TEST_CERTS_DIR}/server-dsa-cert.pem
|
||||
@@ -1237,13 +1487,13 @@ MaxProtocol = TLSv1.3
|
||||
MinProtocol = TLSv1.3
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[38-TLS 1.3 DSA Certificate Test-client]
|
||||
[44-TLS 1.3 DSA Certificate Test-client]
|
||||
CipherString = ALL
|
||||
SignatureAlgorithms = DSA+SHA1:DSA+SHA256:ECDSA+SHA256
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-38]
|
||||
[test-44]
|
||||
ExpectedResult = ServerFail
|
||||
|
||||
|
||||
@@ -12,8 +12,10 @@ use OpenSSL::Test::Utils;
|
||||
my $server = {
|
||||
"ECDSA.Certificate" => test_pem("server-ecdsa-cert.pem"),
|
||||
"ECDSA.PrivateKey" => test_pem("server-ecdsa-key.pem"),
|
||||
"EdDSA.Certificate" => test_pem("server-ed25519-cert.pem"),
|
||||
"EdDSA.PrivateKey" => test_pem("server-ed25519-key.pem"),
|
||||
"Ed25519.Certificate" => test_pem("server-ed25519-cert.pem"),
|
||||
"Ed25519.PrivateKey" => test_pem("server-ed25519-key.pem"),
|
||||
"Ed448.Certificate" => test_pem("server-ed448-cert.pem"),
|
||||
"Ed448.PrivateKey" => test_pem("server-ed448-key.pem"),
|
||||
"MaxProtocol" => "TLSv1.2"
|
||||
};
|
||||
|
||||
@@ -22,8 +24,10 @@ my $server_pss = {
|
||||
"PSS.PrivateKey" => test_pem("server-pss-key.pem"),
|
||||
"ECDSA.Certificate" => test_pem("server-ecdsa-cert.pem"),
|
||||
"ECDSA.PrivateKey" => test_pem("server-ecdsa-key.pem"),
|
||||
"EdDSA.Certificate" => test_pem("server-ed25519-cert.pem"),
|
||||
"EdDSA.PrivateKey" => test_pem("server-ed25519-key.pem"),
|
||||
"Ed25519.Certificate" => test_pem("server-ed25519-cert.pem"),
|
||||
"Ed25519.PrivateKey" => test_pem("server-ed25519-key.pem"),
|
||||
"Ed448.Certificate" => test_pem("server-ed448-cert.pem"),
|
||||
"Ed448.PrivateKey" => test_pem("server-ed448-key.pem"),
|
||||
"MaxProtocol" => "TLSv1.2"
|
||||
};
|
||||
|
||||
@@ -66,6 +70,23 @@ our @tests = (
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "Ed448 CipherString and Signature Algorithm Selection",
|
||||
server => $server,
|
||||
client => {
|
||||
"CipherString" => "aECDSA",
|
||||
"MaxProtocol" => "TLSv1.2",
|
||||
"SignatureAlgorithms" => "ed448:ECDSA+SHA256",
|
||||
"RequestCAFile" => test_pem("root-cert.pem"),
|
||||
},
|
||||
test => {
|
||||
"ExpectedServerCertType" =>, "Ed448",
|
||||
"ExpectedServerSignType" =>, "Ed448",
|
||||
# Note: certificate_authorities not sent for TLS < 1.3
|
||||
"ExpectedServerCANames" =>, "empty",
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "RSA CipherString Selection",
|
||||
server => $server,
|
||||
@@ -124,6 +145,23 @@ our @tests = (
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "Ed448 CipherString and Curves Selection",
|
||||
server => $server,
|
||||
client => {
|
||||
"CipherString" => "aECDSA",
|
||||
"MaxProtocol" => "TLSv1.2",
|
||||
"SignatureAlgorithms" => "ECDSA+SHA256:ed448",
|
||||
# Excluding P-256 from the supported curves list means server
|
||||
# certificate should be Ed25519 and not P-256
|
||||
"Curves" => "X448"
|
||||
},
|
||||
test => {
|
||||
"ExpectedServerCertType" =>, "Ed448",
|
||||
"ExpectedServerSignType" =>, "Ed448",
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "ECDSA CipherString Selection, no ECDSA certificate",
|
||||
server => {
|
||||
@@ -323,8 +361,8 @@ our @tests = (
|
||||
"VerifyMode" => "Require"
|
||||
},
|
||||
client => {
|
||||
"EdDSA.Certificate" => test_pem("client-ed25519-cert.pem"),
|
||||
"EdDSA.PrivateKey" => test_pem("client-ed25519-key.pem"),
|
||||
"Ed25519.Certificate" => test_pem("client-ed25519-cert.pem"),
|
||||
"Ed25519.PrivateKey" => test_pem("client-ed25519-key.pem"),
|
||||
"MinProtocol" => "TLSv1.2",
|
||||
"MaxProtocol" => "TLSv1.2"
|
||||
},
|
||||
@@ -334,6 +372,24 @@ our @tests = (
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "TLS 1.2 Ed448 Client Auth",
|
||||
server => {
|
||||
"VerifyCAFile" => test_pem("root-cert.pem"),
|
||||
"VerifyMode" => "Require"
|
||||
},
|
||||
client => {
|
||||
"Ed448.Certificate" => test_pem("client-ed448-cert.pem"),
|
||||
"Ed448.PrivateKey" => test_pem("client-ed448-key.pem"),
|
||||
"MinProtocol" => "TLSv1.2",
|
||||
"MaxProtocol" => "TLSv1.2"
|
||||
},
|
||||
test => {
|
||||
"ExpectedClientCertType" => "Ed448",
|
||||
"ExpectedClientSignType" => "Ed448",
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
my @tests_tls_1_1 = (
|
||||
@@ -354,8 +410,10 @@ push @tests, @tests_tls_1_1 unless disabled("tls1_1");
|
||||
my $server_tls_1_3 = {
|
||||
"ECDSA.Certificate" => test_pem("server-ecdsa-cert.pem"),
|
||||
"ECDSA.PrivateKey" => test_pem("server-ecdsa-key.pem"),
|
||||
"EdDSA.Certificate" => test_pem("server-ed25519-cert.pem"),
|
||||
"EdDSA.PrivateKey" => test_pem("server-ed25519-key.pem"),
|
||||
"Ed25519.Certificate" => test_pem("server-ed25519-cert.pem"),
|
||||
"Ed25519.PrivateKey" => test_pem("server-ed25519-key.pem"),
|
||||
"Ed448.Certificate" => test_pem("server-ed448-cert.pem"),
|
||||
"Ed448.PrivateKey" => test_pem("server-ed448-key.pem"),
|
||||
"MinProtocol" => "TLSv1.3",
|
||||
"MaxProtocol" => "TLSv1.3"
|
||||
};
|
||||
@@ -365,8 +423,10 @@ my $server_tls_1_3_pss = {
|
||||
"PSS.PrivateKey" => test_pem("server-pss-key.pem"),
|
||||
"ECDSA.Certificate" => test_pem("server-ecdsa-cert.pem"),
|
||||
"ECDSA.PrivateKey" => test_pem("server-ecdsa-key.pem"),
|
||||
"EdDSA.Certificate" => test_pem("server-ed25519-cert.pem"),
|
||||
"EdDSA.PrivateKey" => test_pem("server-ed25519-key.pem"),
|
||||
"Ed25519.Certificate" => test_pem("server-ed25519-cert.pem"),
|
||||
"Ed25519.PrivateKey" => test_pem("server-ed25519-key.pem"),
|
||||
"Ed448.Certificate" => test_pem("server-ed448-cert.pem"),
|
||||
"Ed448.PrivateKey" => test_pem("server-ed449-key.pem"),
|
||||
"MinProtocol" => "TLSv1.3",
|
||||
"MaxProtocol" => "TLSv1.3"
|
||||
};
|
||||
@@ -496,6 +556,18 @@ my @tests_tls_1_3 = (
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "TLS 1.3 Ed448 Signature Algorithm Selection",
|
||||
server => $server_tls_1_3,
|
||||
client => {
|
||||
"SignatureAlgorithms" => "ed448",
|
||||
},
|
||||
test => {
|
||||
"ExpectedServerCertType" => "Ed448",
|
||||
"ExpectedServerSignType" => "Ed448",
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "TLS 1.3 Ed25519 CipherString and Groups Selection",
|
||||
server => $server_tls_1_3,
|
||||
@@ -512,6 +584,22 @@ my @tests_tls_1_3 = (
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "TLS 1.3 Ed448 CipherString and Groups Selection",
|
||||
server => $server_tls_1_3,
|
||||
client => {
|
||||
"SignatureAlgorithms" => "ECDSA+SHA256:ed448",
|
||||
# Excluding P-256 from the supported groups list should
|
||||
# mean server still uses a P-256 certificate because supported
|
||||
# groups is not used in signature selection for TLS 1.3
|
||||
"Groups" => "X448"
|
||||
},
|
||||
test => {
|
||||
"ExpectedServerCertType" =>, "P-256",
|
||||
"ExpectedServerSignType" =>, "EC",
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "TLS 1.3 RSA Client Auth Signature Algorithm Selection",
|
||||
server => {
|
||||
@@ -578,6 +666,24 @@ my @tests_tls_1_3 = (
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
{
|
||||
name => "TLS 1.3 Ed448 Client Auth",
|
||||
server => {
|
||||
"VerifyCAFile" => test_pem("root-cert.pem"),
|
||||
"VerifyMode" => "Require"
|
||||
},
|
||||
client => {
|
||||
"EdDSA.Certificate" => test_pem("client-ed448-cert.pem"),
|
||||
"EdDSA.PrivateKey" => test_pem("client-ed448-key.pem"),
|
||||
"MinProtocol" => "TLSv1.3",
|
||||
"MaxProtocol" => "TLSv1.3"
|
||||
},
|
||||
test => {
|
||||
"ExpectedClientCertType" => "Ed448",
|
||||
"ExpectedClientSignType" => "Ed448",
|
||||
"ExpectedResult" => "Success"
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
push @tests, @tests_tls_1_3 unless disabled("tls1_3");
|
||||
|
||||
@@ -0,0 +1,146 @@
|
||||
# Generated with generate_ssl_tests.pl
|
||||
|
||||
num_tests = 4
|
||||
|
||||
test-0 = 0-session-ticket-app-data12
|
||||
test-1 = 1-session-ticket-app-data12
|
||||
test-2 = 2-session-ticket-app-data13
|
||||
test-3 = 3-session-ticket-app-data13
|
||||
# ===========================================================
|
||||
|
||||
[0-session-ticket-app-data12]
|
||||
ssl_conf = 0-session-ticket-app-data12-ssl
|
||||
|
||||
[0-session-ticket-app-data12-ssl]
|
||||
server = 0-session-ticket-app-data12-server
|
||||
client = 0-session-ticket-app-data12-client
|
||||
resume-server = 0-session-ticket-app-data12-server
|
||||
resume-client = 0-session-ticket-app-data12-client
|
||||
|
||||
[0-session-ticket-app-data12-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
Options = SessionTicket
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[0-session-ticket-app-data12-client]
|
||||
CipherString = DEFAULT
|
||||
MaxProtocol = TLSv1.2
|
||||
Options = SessionTicket
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-0]
|
||||
ExpectedResult = Success
|
||||
ExpectedSessionTicketAppData = HelloWorld
|
||||
HandshakeMode = Resume
|
||||
ResumptionExpected = Yes
|
||||
SessionTicketExpected = Yes
|
||||
server = 0-session-ticket-app-data12-server-extra
|
||||
resume-server = 0-session-ticket-app-data12-server-extra
|
||||
|
||||
[0-session-ticket-app-data12-server-extra]
|
||||
SessionTicketAppData = HelloWorld
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[1-session-ticket-app-data12]
|
||||
ssl_conf = 1-session-ticket-app-data12-ssl
|
||||
|
||||
[1-session-ticket-app-data12-ssl]
|
||||
server = 1-session-ticket-app-data12-server
|
||||
client = 1-session-ticket-app-data12-client
|
||||
resume-server = 1-session-ticket-app-data12-server
|
||||
resume-client = 1-session-ticket-app-data12-client
|
||||
|
||||
[1-session-ticket-app-data12-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
Options = SessionTicket
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[1-session-ticket-app-data12-client]
|
||||
CipherString = DEFAULT
|
||||
MaxProtocol = TLSv1.2
|
||||
Options = SessionTicket
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-1]
|
||||
ExpectedResult = Success
|
||||
ExpectedSessionTicketAppData =
|
||||
HandshakeMode = Resume
|
||||
ResumptionExpected = Yes
|
||||
SessionTicketExpected = Yes
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[2-session-ticket-app-data13]
|
||||
ssl_conf = 2-session-ticket-app-data13-ssl
|
||||
|
||||
[2-session-ticket-app-data13-ssl]
|
||||
server = 2-session-ticket-app-data13-server
|
||||
client = 2-session-ticket-app-data13-client
|
||||
resume-server = 2-session-ticket-app-data13-server
|
||||
resume-client = 2-session-ticket-app-data13-client
|
||||
|
||||
[2-session-ticket-app-data13-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
Options = SessionTicket
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[2-session-ticket-app-data13-client]
|
||||
CipherString = DEFAULT
|
||||
MaxProtocol = TLSv1.3
|
||||
Options = SessionTicket
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-2]
|
||||
ExpectedResult = Success
|
||||
ExpectedSessionTicketAppData = HelloWorld
|
||||
HandshakeMode = Resume
|
||||
ResumptionExpected = Yes
|
||||
SessionTicketExpected = Yes
|
||||
server = 2-session-ticket-app-data13-server-extra
|
||||
resume-server = 2-session-ticket-app-data13-server-extra
|
||||
|
||||
[2-session-ticket-app-data13-server-extra]
|
||||
SessionTicketAppData = HelloWorld
|
||||
|
||||
|
||||
# ===========================================================
|
||||
|
||||
[3-session-ticket-app-data13]
|
||||
ssl_conf = 3-session-ticket-app-data13-ssl
|
||||
|
||||
[3-session-ticket-app-data13-ssl]
|
||||
server = 3-session-ticket-app-data13-server
|
||||
client = 3-session-ticket-app-data13-client
|
||||
resume-server = 3-session-ticket-app-data13-server
|
||||
resume-client = 3-session-ticket-app-data13-client
|
||||
|
||||
[3-session-ticket-app-data13-server]
|
||||
Certificate = ${ENV::TEST_CERTS_DIR}/servercert.pem
|
||||
CipherString = DEFAULT
|
||||
Options = SessionTicket
|
||||
PrivateKey = ${ENV::TEST_CERTS_DIR}/serverkey.pem
|
||||
|
||||
[3-session-ticket-app-data13-client]
|
||||
CipherString = DEFAULT
|
||||
MaxProtocol = TLSv1.3
|
||||
Options = SessionTicket
|
||||
VerifyCAFile = ${ENV::TEST_CERTS_DIR}/rootcert.pem
|
||||
VerifyMode = Peer
|
||||
|
||||
[test-3]
|
||||
ExpectedResult = Success
|
||||
ExpectedSessionTicketAppData =
|
||||
HandshakeMode = Resume
|
||||
ResumptionExpected = Yes
|
||||
SessionTicketExpected = Yes
|
||||
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
# -*- mode: perl; -*-
|
||||
# Copyright 2018 The OpenSSL Project Authors. All Rights Reserved.
|
||||
#
|
||||
# Licensed under the OpenSSL license (the "License"). You may not use
|
||||
# this file except in compliance with the License. You can obtain a copy
|
||||
# in the file LICENSE in the source distribution or at
|
||||
# https://www.openssl.org/source/license.html
|
||||
|
||||
|
||||
## Test session ticket app data
|
||||
|
||||
use strict;
|
||||
use warnings;
|
||||
|
||||
package ssltests;
|
||||
use OpenSSL::Test::Utils;
|
||||
|
||||
our @tests12 = (
|
||||
{
|
||||
"name" => "session-ticket-app-data12",
|
||||
"client" => {
|
||||
"MaxProtocol" => "TLSv1.2",
|
||||
"Options" => "SessionTicket",
|
||||
},
|
||||
"server" => {
|
||||
"Options" => "SessionTicket",
|
||||
"extra" => {
|
||||
"SessionTicketAppData" => "HelloWorld",
|
||||
},
|
||||
},
|
||||
"test" => {
|
||||
"HandshakeMode" => "Resume",
|
||||
"ExpectedResult" => "Success",
|
||||
"SessionTicketExpected" => "Yes",
|
||||
"ResumptionExpected" => "Yes",
|
||||
"ExpectedSessionTicketAppData" => "HelloWorld",
|
||||
}
|
||||
},
|
||||
{
|
||||
"name" => "session-ticket-app-data12",
|
||||
"client" => {
|
||||
"MaxProtocol" => "TLSv1.2",
|
||||
"Options" => "SessionTicket",
|
||||
},
|
||||
"server" => {
|
||||
"Options" => "SessionTicket",
|
||||
},
|
||||
"test" => {
|
||||
"HandshakeMode" => "Resume",
|
||||
"ExpectedResult" => "Success",
|
||||
"SessionTicketExpected" => "Yes",
|
||||
"ResumptionExpected" => "Yes",
|
||||
"ExpectedSessionTicketAppData" => "",
|
||||
}
|
||||
}
|
||||
);
|
||||
our @tests13 = (
|
||||
{
|
||||
"name" => "session-ticket-app-data13",
|
||||
"client" => {
|
||||
"MaxProtocol" => "TLSv1.3",
|
||||
"Options" => "SessionTicket",
|
||||
},
|
||||
"server" => {
|
||||
"Options" => "SessionTicket",
|
||||
"extra" => {
|
||||
"SessionTicketAppData" => "HelloWorld",
|
||||
},
|
||||
},
|
||||
"test" => {
|
||||
"HandshakeMode" => "Resume",
|
||||
"ExpectedResult" => "Success",
|
||||
"SessionTicketExpected" => "Yes",
|
||||
"ResumptionExpected" => "Yes",
|
||||
"ExpectedSessionTicketAppData" => "HelloWorld",
|
||||
}
|
||||
},
|
||||
{
|
||||
"name" => "session-ticket-app-data13",
|
||||
"client" => {
|
||||
"MaxProtocol" => "TLSv1.3",
|
||||
"Options" => "SessionTicket",
|
||||
},
|
||||
"server" => {
|
||||
"Options" => "SessionTicket",
|
||||
},
|
||||
"test" => {
|
||||
"HandshakeMode" => "Resume",
|
||||
"ExpectedResult" => "Success",
|
||||
"SessionTicketExpected" => "Yes",
|
||||
"ResumptionExpected" => "Yes",
|
||||
"ExpectedSessionTicketAppData" => "",
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
our @tests = ();
|
||||
push @tests, @tests12 unless disabled("tls1_2");
|
||||
push @tests, @tests13 unless disabled("tls1_3");
|
||||
@@ -70,6 +70,8 @@ static int test_ssl_cert_table(void)
|
||||
return 0;
|
||||
if (!test_cert_table(EVP_PKEY_ED25519, SSL_aECDSA, SSL_PKEY_ED25519))
|
||||
return 0;
|
||||
if (!test_cert_table(EVP_PKEY_ED448, SSL_aECDSA, SSL_PKEY_ED448))
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
@@ -188,6 +188,27 @@ static int check_alpn(HANDSHAKE_RESULT *result, SSL_TEST_CTX *test_ctx)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int check_session_ticket_app_data(HANDSHAKE_RESULT *result,
|
||||
SSL_TEST_CTX *test_ctx)
|
||||
{
|
||||
size_t result_len = 0;
|
||||
size_t expected_len = 0;
|
||||
|
||||
/* consider empty and NULL strings to be the same */
|
||||
if (result->result_session_ticket_app_data != NULL)
|
||||
result_len = strlen(result->result_session_ticket_app_data);
|
||||
if (test_ctx->expected_session_ticket_app_data != NULL)
|
||||
expected_len = strlen(test_ctx->expected_session_ticket_app_data);
|
||||
if (result_len == 0 && expected_len == 0)
|
||||
return 1;
|
||||
|
||||
if (!TEST_str_eq(result->result_session_ticket_app_data,
|
||||
test_ctx->expected_session_ticket_app_data))
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int check_resumption(HANDSHAKE_RESULT *result, SSL_TEST_CTX *test_ctx)
|
||||
{
|
||||
if (!TEST_int_eq(result->client_resumed, result->server_resumed))
|
||||
@@ -352,6 +373,7 @@ static int check_test(HANDSHAKE_RESULT *result, SSL_TEST_CTX *test_ctx)
|
||||
#endif
|
||||
ret &= check_cipher(result, test_ctx);
|
||||
ret &= check_alpn(result, test_ctx);
|
||||
ret &= check_session_ticket_app_data(result, test_ctx);
|
||||
ret &= check_resumption(result, test_ctx);
|
||||
ret &= check_tmp_key(result, test_ctx);
|
||||
ret &= check_server_cert_type(result, test_ctx);
|
||||
|
||||
@@ -99,6 +99,7 @@ static const test_enum ssl_test_results[] = {
|
||||
{"ServerFail", SSL_TEST_SERVER_FAIL},
|
||||
{"ClientFail", SSL_TEST_CLIENT_FAIL},
|
||||
{"InternalError", SSL_TEST_INTERNAL_ERROR},
|
||||
{"FirstHandshakeFailed", SSL_TEST_FIRST_HANDSHAKE_FAILED},
|
||||
};
|
||||
|
||||
__owur static int parse_expected_result(SSL_TEST_CTX *test_ctx, const char *value)
|
||||
@@ -360,6 +361,10 @@ IMPLEMENT_SSL_TEST_STRING_OPTION(SSL_TEST_SERVER_CONF, server, srp_user)
|
||||
IMPLEMENT_SSL_TEST_STRING_OPTION(SSL_TEST_CLIENT_CONF, client, srp_password)
|
||||
IMPLEMENT_SSL_TEST_STRING_OPTION(SSL_TEST_SERVER_CONF, server, srp_password)
|
||||
|
||||
/* Session Ticket App Data options */
|
||||
IMPLEMENT_SSL_TEST_STRING_OPTION(SSL_TEST_CTX, test, expected_session_ticket_app_data)
|
||||
IMPLEMENT_SSL_TEST_STRING_OPTION(SSL_TEST_SERVER_CONF, server, session_ticket_app_data)
|
||||
|
||||
/* Handshake mode */
|
||||
|
||||
static const test_enum ssl_handshake_modes[] = {
|
||||
@@ -664,6 +669,7 @@ static const ssl_test_ctx_option ssl_test_ctx_options[] = {
|
||||
{ "ExpectedClientCANames", &parse_expected_client_ca_names },
|
||||
{ "UseSCTP", &parse_test_use_sctp },
|
||||
{ "ExpectedCipher", &parse_test_expected_cipher },
|
||||
{ "ExpectedSessionTicketAppData", &parse_test_expected_session_ticket_app_data },
|
||||
};
|
||||
|
||||
/* Nested client options. */
|
||||
@@ -700,6 +706,7 @@ static const ssl_test_server_option ssl_test_server_options[] = {
|
||||
{ "SRPUser", &parse_server_srp_user },
|
||||
{ "SRPPassword", &parse_server_srp_password },
|
||||
{ "ForcePHA", &parse_server_force_pha },
|
||||
{ "SessionTicketAppData", &parse_server_session_ticket_app_data },
|
||||
};
|
||||
|
||||
SSL_TEST_CTX *SSL_TEST_CTX_new()
|
||||
@@ -729,6 +736,8 @@ static void ssl_test_extra_conf_free_data(SSL_TEST_EXTRA_CONF *conf)
|
||||
OPENSSL_free(conf->server2.srp_password);
|
||||
OPENSSL_free(conf->client.srp_user);
|
||||
OPENSSL_free(conf->client.srp_password);
|
||||
OPENSSL_free(conf->server.session_ticket_app_data);
|
||||
OPENSSL_free(conf->server2.session_ticket_app_data);
|
||||
}
|
||||
|
||||
static void ssl_test_ctx_free_extra_data(SSL_TEST_CTX *ctx)
|
||||
@@ -742,6 +751,7 @@ void SSL_TEST_CTX_free(SSL_TEST_CTX *ctx)
|
||||
ssl_test_ctx_free_extra_data(ctx);
|
||||
OPENSSL_free(ctx->expected_npn_protocol);
|
||||
OPENSSL_free(ctx->expected_alpn_protocol);
|
||||
OPENSSL_free(ctx->expected_session_ticket_app_data);
|
||||
sk_X509_NAME_pop_free(ctx->expected_server_ca_names, X509_NAME_free);
|
||||
sk_X509_NAME_pop_free(ctx->expected_client_ca_names, X509_NAME_free);
|
||||
OPENSSL_free(ctx->expected_cipher);
|
||||
|
||||
@@ -127,6 +127,7 @@ typedef struct {
|
||||
char *srp_password;
|
||||
/* Forced PHA */
|
||||
int force_pha;
|
||||
char *session_ticket_app_data;
|
||||
} SSL_TEST_SERVER_CONF;
|
||||
|
||||
typedef struct {
|
||||
@@ -216,6 +217,8 @@ typedef struct {
|
||||
/* Whether to expect a session id from the server */
|
||||
ssl_session_id_t session_id_expected;
|
||||
char *expected_cipher;
|
||||
/* Expected Session Ticket Application Data */
|
||||
char *expected_session_ticket_app_data;
|
||||
} SSL_TEST_CTX;
|
||||
|
||||
const char *ssl_test_result_name(ssl_test_result_t result);
|
||||
|
||||
@@ -55,6 +55,8 @@ static int serverconf_eq(SSL_TEST_SERVER_CONF *serv,
|
||||
|| !TEST_str_eq(serv->alpn_protocols, serv2->alpn_protocols)
|
||||
|| !TEST_int_eq(serv->broken_session_ticket,
|
||||
serv2->broken_session_ticket)
|
||||
|| !TEST_str_eq(serv->session_ticket_app_data,
|
||||
serv2->session_ticket_app_data)
|
||||
|| !TEST_int_eq(serv->cert_status, serv2->cert_status))
|
||||
return 0;
|
||||
return 1;
|
||||
@@ -95,6 +97,8 @@ static int testctx_eq(SSL_TEST_CTX *ctx, SSL_TEST_CTX *ctx2)
|
||||
ctx2->expected_alpn_protocol)
|
||||
|| !TEST_str_eq(ctx->expected_cipher,
|
||||
ctx2->expected_cipher)
|
||||
|| !TEST_str_eq(ctx->expected_session_ticket_app_data,
|
||||
ctx2->expected_session_ticket_app_data)
|
||||
|| !TEST_int_eq(ctx->resumption_expected,
|
||||
ctx2->resumption_expected)
|
||||
|| !TEST_int_eq(ctx->session_id_expected,
|
||||
|
||||
+201
-26
@@ -1415,6 +1415,8 @@ static const char *srvid;
|
||||
|
||||
static int use_session_cb_cnt = 0;
|
||||
static int find_session_cb_cnt = 0;
|
||||
static int psk_client_cb_cnt = 0;
|
||||
static int psk_server_cb_cnt = 0;
|
||||
|
||||
static int use_session_cb(SSL *ssl, const EVP_MD *md, const unsigned char **id,
|
||||
size_t *idlen, SSL_SESSION **sess)
|
||||
@@ -1447,6 +1449,34 @@ static int use_session_cb(SSL *ssl, const EVP_MD *md, const unsigned char **id,
|
||||
return 1;
|
||||
}
|
||||
|
||||
static unsigned int psk_client_cb(SSL *ssl, const char *hint, char *id,
|
||||
unsigned int max_id_len,
|
||||
unsigned char *psk,
|
||||
unsigned int max_psk_len)
|
||||
{
|
||||
unsigned int psklen = 0;
|
||||
|
||||
psk_client_cb_cnt++;
|
||||
|
||||
if (strlen(pskid) + 1 > max_id_len)
|
||||
return 0;
|
||||
|
||||
/* We should only ever be called a maximum of twice per connection */
|
||||
if (psk_client_cb_cnt > 2)
|
||||
return 0;
|
||||
|
||||
if (clientpsk == NULL)
|
||||
return 0;
|
||||
|
||||
/* We'll reuse the PSK we set up for TLSv1.3 */
|
||||
if (SSL_SESSION_get_master_key(clientpsk, NULL, 0) > max_psk_len)
|
||||
return 0;
|
||||
psklen = SSL_SESSION_get_master_key(clientpsk, psk, max_psk_len);
|
||||
strncpy(id, pskid, max_id_len);
|
||||
|
||||
return psklen;
|
||||
}
|
||||
|
||||
static int find_session_cb(SSL *ssl, const unsigned char *identity,
|
||||
size_t identity_len, SSL_SESSION **sess)
|
||||
{
|
||||
@@ -1473,6 +1503,33 @@ static int find_session_cb(SSL *ssl, const unsigned char *identity,
|
||||
return 1;
|
||||
}
|
||||
|
||||
static unsigned int psk_server_cb(SSL *ssl, const char *identity,
|
||||
unsigned char *psk, unsigned int max_psk_len)
|
||||
{
|
||||
unsigned int psklen = 0;
|
||||
|
||||
psk_server_cb_cnt++;
|
||||
|
||||
/* We should only ever be called a maximum of twice per connection */
|
||||
if (find_session_cb_cnt > 2)
|
||||
return 0;
|
||||
|
||||
if (serverpsk == NULL)
|
||||
return 0;
|
||||
|
||||
/* Identity should match that set by the client */
|
||||
if (strcmp(srvid, identity) != 0) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* We'll reuse the PSK we set up for TLSv1.3 */
|
||||
if (SSL_SESSION_get_master_key(serverpsk, NULL, 0) > max_psk_len)
|
||||
return 0;
|
||||
psklen = SSL_SESSION_get_master_key(serverpsk, psk, max_psk_len);
|
||||
|
||||
return psklen;
|
||||
}
|
||||
|
||||
#define MSG1 "Hello"
|
||||
#define MSG2 "World."
|
||||
#define MSG3 "This"
|
||||
@@ -1482,6 +1539,7 @@ static int find_session_cb(SSL *ssl, const unsigned char *identity,
|
||||
#define MSG7 "message."
|
||||
|
||||
#define TLS13_AES_256_GCM_SHA384_BYTES ((const unsigned char *)"\x13\x02")
|
||||
#define TLS13_AES_128_GCM_SHA256_BYTES ((const unsigned char *)"\x13\x01")
|
||||
|
||||
/*
|
||||
* Helper method to setup objects for early data test. Caller frees objects on
|
||||
@@ -1492,7 +1550,11 @@ static int setupearly_data_test(SSL_CTX **cctx, SSL_CTX **sctx, SSL **clientssl,
|
||||
{
|
||||
if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(),
|
||||
TLS_client_method(), sctx,
|
||||
cctx, cert, privkey)))
|
||||
cctx, cert, privkey))
|
||||
|| !TEST_true(SSL_CTX_set_max_early_data(*sctx,
|
||||
SSL3_RT_MAX_PLAIN_LENGTH))
|
||||
|| !TEST_true(SSL_CTX_set_max_early_data(*cctx,
|
||||
SSL3_RT_MAX_PLAIN_LENGTH)))
|
||||
return 0;
|
||||
|
||||
if (idx == 1) {
|
||||
@@ -2436,7 +2498,7 @@ static int test_ciphersuite_change(void)
|
||||
return testresult;
|
||||
}
|
||||
|
||||
static int test_tls13_psk(void)
|
||||
static int test_tls13_psk(int idx)
|
||||
{
|
||||
SSL_CTX *sctx = NULL, *cctx = NULL;
|
||||
SSL *serverssl = NULL, *clientssl = NULL;
|
||||
@@ -2454,11 +2516,31 @@ static int test_tls13_psk(void)
|
||||
&cctx, cert, privkey)))
|
||||
goto end;
|
||||
|
||||
SSL_CTX_set_psk_use_session_callback(cctx, use_session_cb);
|
||||
SSL_CTX_set_psk_find_session_callback(sctx, find_session_cb);
|
||||
/*
|
||||
* We use a ciphersuite with SHA256 to ease testing old style PSK callbacks
|
||||
* which will always default to SHA256
|
||||
*/
|
||||
if (!TEST_true(SSL_CTX_set_cipher_list(cctx, "TLS13-AES-128-GCM-SHA256")))
|
||||
goto end;
|
||||
|
||||
/*
|
||||
* Test 0: New style callbacks only
|
||||
* Test 1: New and old style callbacks (only the new ones should be used)
|
||||
* Test 2: Old style callbacks only
|
||||
*/
|
||||
if (idx == 0 || idx == 1) {
|
||||
SSL_CTX_set_psk_use_session_callback(cctx, use_session_cb);
|
||||
SSL_CTX_set_psk_find_session_callback(sctx, find_session_cb);
|
||||
}
|
||||
if (idx == 1 || idx == 2) {
|
||||
SSL_CTX_set_psk_client_callback(cctx, psk_client_cb);
|
||||
SSL_CTX_set_psk_server_callback(sctx, psk_server_cb);
|
||||
}
|
||||
srvid = pskid;
|
||||
use_session_cb_cnt = 0;
|
||||
find_session_cb_cnt = 0;
|
||||
psk_client_cb_cnt = 0;
|
||||
psk_server_cb_cnt = 0;
|
||||
|
||||
/* Check we can create a connection if callback decides not to send a PSK */
|
||||
if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl,
|
||||
@@ -2466,21 +2548,37 @@ static int test_tls13_psk(void)
|
||||
|| !TEST_true(create_ssl_connection(serverssl, clientssl,
|
||||
SSL_ERROR_NONE))
|
||||
|| !TEST_false(SSL_session_reused(clientssl))
|
||||
|| !TEST_false(SSL_session_reused(serverssl))
|
||||
|| !TEST_true(use_session_cb_cnt == 1)
|
||||
|| !TEST_true(find_session_cb_cnt == 0))
|
||||
|| !TEST_false(SSL_session_reused(serverssl)))
|
||||
goto end;
|
||||
|
||||
if (idx == 0 || idx == 1) {
|
||||
if (!TEST_true(use_session_cb_cnt == 1)
|
||||
|| !TEST_true(find_session_cb_cnt == 0)
|
||||
/*
|
||||
* If no old style callback then below should be 0
|
||||
* otherwise 1
|
||||
*/
|
||||
|| !TEST_true(psk_client_cb_cnt == idx)
|
||||
|| !TEST_true(psk_server_cb_cnt == 0))
|
||||
goto end;
|
||||
} else {
|
||||
if (!TEST_true(use_session_cb_cnt == 0)
|
||||
|| !TEST_true(find_session_cb_cnt == 0)
|
||||
|| !TEST_true(psk_client_cb_cnt == 1)
|
||||
|| !TEST_true(psk_server_cb_cnt == 0))
|
||||
goto end;
|
||||
}
|
||||
|
||||
shutdown_ssl_connection(serverssl, clientssl);
|
||||
serverssl = clientssl = NULL;
|
||||
use_session_cb_cnt = 0;
|
||||
use_session_cb_cnt = psk_client_cb_cnt = 0;
|
||||
|
||||
if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl,
|
||||
NULL, NULL)))
|
||||
goto end;
|
||||
|
||||
/* Create the PSK */
|
||||
cipher = SSL_CIPHER_find(clientssl, TLS13_AES_256_GCM_SHA384_BYTES);
|
||||
cipher = SSL_CIPHER_find(clientssl, TLS13_AES_128_GCM_SHA256_BYTES);
|
||||
clientpsk = SSL_SESSION_new();
|
||||
if (!TEST_ptr(clientpsk)
|
||||
|| !TEST_ptr(cipher)
|
||||
@@ -2496,14 +2594,27 @@ static int test_tls13_psk(void)
|
||||
/* Check we can create a connection and the PSK is used */
|
||||
if (!TEST_true(create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE))
|
||||
|| !TEST_true(SSL_session_reused(clientssl))
|
||||
|| !TEST_true(SSL_session_reused(serverssl))
|
||||
|| !TEST_true(use_session_cb_cnt == 1)
|
||||
|| !TEST_true(find_session_cb_cnt == 1))
|
||||
|| !TEST_true(SSL_session_reused(serverssl)))
|
||||
goto end;
|
||||
|
||||
if (idx == 0 || idx == 1) {
|
||||
if (!TEST_true(use_session_cb_cnt == 1)
|
||||
|| !TEST_true(find_session_cb_cnt == 1)
|
||||
|| !TEST_true(psk_client_cb_cnt == 0)
|
||||
|| !TEST_true(psk_server_cb_cnt == 0))
|
||||
goto end;
|
||||
} else {
|
||||
if (!TEST_true(use_session_cb_cnt == 0)
|
||||
|| !TEST_true(find_session_cb_cnt == 0)
|
||||
|| !TEST_true(psk_client_cb_cnt == 1)
|
||||
|| !TEST_true(psk_server_cb_cnt == 1))
|
||||
goto end;
|
||||
}
|
||||
|
||||
shutdown_ssl_connection(serverssl, clientssl);
|
||||
serverssl = clientssl = NULL;
|
||||
use_session_cb_cnt = find_session_cb_cnt = 0;
|
||||
psk_client_cb_cnt = psk_server_cb_cnt = 0;
|
||||
|
||||
if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl,
|
||||
NULL, NULL)))
|
||||
@@ -2519,14 +2630,27 @@ static int test_tls13_psk(void)
|
||||
*/
|
||||
if (!TEST_true(create_ssl_connection(serverssl, clientssl, SSL_ERROR_NONE))
|
||||
|| !TEST_true(SSL_session_reused(clientssl))
|
||||
|| !TEST_true(SSL_session_reused(serverssl))
|
||||
|| !TEST_true(use_session_cb_cnt == 2)
|
||||
|| !TEST_true(find_session_cb_cnt == 2))
|
||||
|| !TEST_true(SSL_session_reused(serverssl)))
|
||||
goto end;
|
||||
|
||||
if (idx == 0 || idx == 1) {
|
||||
if (!TEST_true(use_session_cb_cnt == 2)
|
||||
|| !TEST_true(find_session_cb_cnt == 2)
|
||||
|| !TEST_true(psk_client_cb_cnt == 0)
|
||||
|| !TEST_true(psk_server_cb_cnt == 0))
|
||||
goto end;
|
||||
} else {
|
||||
if (!TEST_true(use_session_cb_cnt == 0)
|
||||
|| !TEST_true(find_session_cb_cnt == 0)
|
||||
|| !TEST_true(psk_client_cb_cnt == 2)
|
||||
|| !TEST_true(psk_server_cb_cnt == 2))
|
||||
goto end;
|
||||
}
|
||||
|
||||
shutdown_ssl_connection(serverssl, clientssl);
|
||||
serverssl = clientssl = NULL;
|
||||
use_session_cb_cnt = find_session_cb_cnt = 0;
|
||||
psk_client_cb_cnt = psk_server_cb_cnt = 0;
|
||||
|
||||
/*
|
||||
* Check that if the server rejects the PSK we can still connect, but with
|
||||
@@ -2538,11 +2662,27 @@ static int test_tls13_psk(void)
|
||||
|| !TEST_true(create_ssl_connection(serverssl, clientssl,
|
||||
SSL_ERROR_NONE))
|
||||
|| !TEST_false(SSL_session_reused(clientssl))
|
||||
|| !TEST_false(SSL_session_reused(serverssl))
|
||||
|| !TEST_true(use_session_cb_cnt == 1)
|
||||
|| !TEST_true(find_session_cb_cnt == 1))
|
||||
|| !TEST_false(SSL_session_reused(serverssl)))
|
||||
goto end;
|
||||
|
||||
if (idx == 0 || idx == 1) {
|
||||
if (!TEST_true(use_session_cb_cnt == 1)
|
||||
|| !TEST_true(find_session_cb_cnt == 1)
|
||||
|| !TEST_true(psk_client_cb_cnt == 0)
|
||||
/*
|
||||
* If no old style callback then below should be 0
|
||||
* otherwise 1
|
||||
*/
|
||||
|| !TEST_true(psk_server_cb_cnt == idx))
|
||||
goto end;
|
||||
} else {
|
||||
if (!TEST_true(use_session_cb_cnt == 0)
|
||||
|| !TEST_true(find_session_cb_cnt == 0)
|
||||
|| !TEST_true(psk_client_cb_cnt == 1)
|
||||
|| !TEST_true(psk_server_cb_cnt == 1))
|
||||
goto end;
|
||||
}
|
||||
|
||||
shutdown_ssl_connection(serverssl, clientssl);
|
||||
serverssl = clientssl = NULL;
|
||||
testresult = 1;
|
||||
@@ -2583,6 +2723,21 @@ static int verify_cookie_callback(SSL *ssl, const unsigned char *cookie,
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int generate_stateless_cookie_callback(SSL *ssl, unsigned char *cookie,
|
||||
size_t *cookie_len)
|
||||
{
|
||||
unsigned int temp;
|
||||
int res = generate_cookie_callback(ssl, cookie, &temp);
|
||||
*cookie_len = temp;
|
||||
return res;
|
||||
}
|
||||
|
||||
static int verify_stateless_cookie_callback(SSL *ssl, const unsigned char *cookie,
|
||||
size_t cookie_len)
|
||||
{
|
||||
return verify_cookie_callback(ssl, cookie, cookie_len);
|
||||
}
|
||||
|
||||
static int test_stateless(void)
|
||||
{
|
||||
SSL_CTX *sctx = NULL, *cctx = NULL;
|
||||
@@ -2594,20 +2749,40 @@ static int test_stateless(void)
|
||||
&cctx, cert, privkey)))
|
||||
goto end;
|
||||
|
||||
/* Set up the cookie generation and verification callbacks */
|
||||
SSL_CTX_set_cookie_generate_cb(sctx, generate_cookie_callback);
|
||||
SSL_CTX_set_cookie_verify_cb(sctx, verify_cookie_callback);
|
||||
|
||||
/* The arrival of CCS messages can confuse the test */
|
||||
SSL_CTX_clear_options(cctx, SSL_OP_ENABLE_MIDDLEBOX_COMPAT);
|
||||
|
||||
if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl,
|
||||
NULL, NULL))
|
||||
/* Send the first ClientHello */
|
||||
|| !TEST_false(create_ssl_connection(serverssl, clientssl,
|
||||
SSL_ERROR_WANT_READ))
|
||||
/*
|
||||
* This should fail with a -1 return because we have no callbacks
|
||||
* set up
|
||||
*/
|
||||
|| !TEST_int_eq(SSL_stateless(serverssl), -1))
|
||||
goto end;
|
||||
|
||||
/* Fatal error so abandon the connection from this client */
|
||||
SSL_free(clientssl);
|
||||
clientssl = NULL;
|
||||
|
||||
/* Set up the cookie generation and verification callbacks */
|
||||
SSL_CTX_set_stateless_cookie_generate_cb(sctx, generate_stateless_cookie_callback);
|
||||
SSL_CTX_set_stateless_cookie_verify_cb(sctx, verify_stateless_cookie_callback);
|
||||
|
||||
/*
|
||||
* Create a new connection from the client (we can reuse the server SSL
|
||||
* object).
|
||||
*/
|
||||
if (!TEST_true(create_ssl_objects(sctx, cctx, &serverssl, &clientssl,
|
||||
NULL, NULL))
|
||||
/* Send the first ClientHello */
|
||||
|| !TEST_false(create_ssl_connection(serverssl, clientssl,
|
||||
SSL_ERROR_WANT_READ))
|
||||
/* This should fail because there is no cookie */
|
||||
|| !TEST_false(SSL_stateless(serverssl)))
|
||||
|| !TEST_int_eq(SSL_stateless(serverssl), 0))
|
||||
goto end;
|
||||
|
||||
/* Abandon the connection from this client */
|
||||
@@ -2624,12 +2799,12 @@ static int test_stateless(void)
|
||||
|| !TEST_false(create_ssl_connection(serverssl, clientssl,
|
||||
SSL_ERROR_WANT_READ))
|
||||
/* This should fail because there is no cookie */
|
||||
|| !TEST_false(SSL_stateless(serverssl))
|
||||
|| !TEST_int_eq(SSL_stateless(serverssl), 0)
|
||||
/* Send the second ClientHello */
|
||||
|| !TEST_false(create_ssl_connection(serverssl, clientssl,
|
||||
SSL_ERROR_WANT_READ))
|
||||
/* This should succeed because a cookie is now present */
|
||||
|| !TEST_true(SSL_stateless(serverssl))
|
||||
|| !TEST_int_eq(SSL_stateless(serverssl), 1)
|
||||
/* Complete the connection */
|
||||
|| !TEST_true(create_ssl_connection(serverssl, clientssl,
|
||||
SSL_ERROR_NONE)))
|
||||
@@ -3502,7 +3677,7 @@ int setup_tests(void)
|
||||
#endif
|
||||
#ifndef OPENSSL_NO_TLS1_3
|
||||
ADD_TEST(test_ciphersuite_change);
|
||||
ADD_TEST(test_tls13_psk);
|
||||
ADD_ALL_TESTS(test_tls13_psk, 3);
|
||||
ADD_ALL_TESTS(test_custom_exts, 5);
|
||||
ADD_TEST(test_stateless);
|
||||
ADD_TEST(test_pha_key_update);
|
||||
|
||||
+5
-1
@@ -255,7 +255,11 @@ static int test_tls13ccs(int tst)
|
||||
chsessidlen = 0;
|
||||
|
||||
if (!TEST_true(create_ssl_ctx_pair(TLS_server_method(), TLS_client_method(),
|
||||
&sctx, &cctx, cert, privkey)))
|
||||
&sctx, &cctx, cert, privkey))
|
||||
|| !TEST_true(SSL_CTX_set_max_early_data(sctx,
|
||||
SSL3_RT_MAX_PLAIN_LENGTH))
|
||||
|| !TEST_true(SSL_CTX_set_max_early_data(cctx,
|
||||
SSL3_RT_MAX_PLAIN_LENGTH)))
|
||||
goto err;
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user