Skip to content

Commit b03fee6

Browse files
committed
Use proper secrets for handshake
1 parent 2ab1aa0 commit b03fee6

File tree

3 files changed

+8
-2
lines changed

3 files changed

+8
-2
lines changed

ssl/ssl_locl.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1357,6 +1357,8 @@ struct ssl_st {
13571357
unsigned char handshake_traffic_hash[EVP_MAX_MD_SIZE];
13581358
unsigned char client_app_traffic_secret[EVP_MAX_MD_SIZE];
13591359
unsigned char server_app_traffic_secret[EVP_MAX_MD_SIZE];
1360+
unsigned char client_hand_traffic_secret[EVP_MAX_MD_SIZE];
1361+
unsigned char server_hand_traffic_secret[EVP_MAX_MD_SIZE];
13601362
unsigned char exporter_master_secret[EVP_MAX_MD_SIZE];
13611363
unsigned char early_exporter_master_secret[EVP_MAX_MD_SIZE];
13621364
EVP_CIPHER_CTX *enc_read_ctx; /* cryptographic state */

ssl/ssl_quic.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -194,8 +194,8 @@ int quic_set_encryption_secrets(SSL *ssl, OSSL_ENCRYPTION_LEVEL level)
194194
s2c_secret = ssl->early_secret;
195195
break;
196196
case ssl_encryption_handshake:
197-
c2s_secret = ssl->client_finished_secret;
198-
s2c_secret = ssl->server_finished_secret;
197+
c2s_secret = ssl->client_hand_traffic_secret;
198+
s2c_secret = ssl->server_hand_traffic_secret;
199199
break;
200200
case ssl_encryption_application:
201201
c2s_secret = ssl->client_app_traffic_secret;

ssl/tls13_enc.c

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -739,6 +739,10 @@ int tls13_change_cipher_state(SSL *s, int which)
739739
}
740740
} else if (label == client_application_traffic)
741741
memcpy(s->client_app_traffic_secret, secret, hashlen);
742+
else if (label == client_handshake_traffic)
743+
memcpy(s->client_hand_traffic_secret, secret, hashlen);
744+
else if (label == server_handshake_traffic)
745+
memcpy(s->server_hand_traffic_secret, secret, hashlen);
742746

743747
if (!ssl_log_secret(s, log_label, secret, hashlen)) {
744748
/* SSLfatal() already called */

0 commit comments

Comments
 (0)