diff options
author | jsing <> | 2017-08-28 16:37:04 +0000 |
---|---|---|
committer | jsing <> | 2017-08-28 16:37:04 +0000 |
commit | 06777404d5d3c9d777364d633ff082f434d357d5 (patch) | |
tree | 7a497786c0d665cfdd18ae5f1a51814d2866dc5d /src/lib | |
parent | 25258122ceacc0befc2dd3c6150cc89fd6c00a7a (diff) | |
download | openbsd-06777404d5d3c9d777364d633ff082f434d357d5.tar.gz openbsd-06777404d5d3c9d777364d633ff082f434d357d5.tar.bz2 openbsd-06777404d5d3c9d777364d633ff082f434d357d5.zip |
Remove the original (pre-IETF) chacha20-poly1305 cipher suites.
Support for the IETF standardised chacha20-poly1305 cipher suites was
added 16 months ago, which means they exist in both of the currently
supported OpenBSD releases.
Also prompted by Andreas Bartelt <obsd at bartula dot de>.
ok beck@ doug@
Diffstat (limited to 'src/lib')
-rw-r--r-- | src/lib/libssl/s3_lib.c | 53 | ||||
-rw-r--r-- | src/lib/libssl/ssl_ciph.c | 14 | ||||
-rw-r--r-- | src/lib/libssl/ssl_locl.h | 3 | ||||
-rw-r--r-- | src/lib/libssl/tls1.h | 8 |
4 files changed, 5 insertions, 73 deletions
diff --git a/src/lib/libssl/s3_lib.c b/src/lib/libssl/s3_lib.c index acbe30d804..bbf0444c21 100644 --- a/src/lib/libssl/s3_lib.c +++ b/src/lib/libssl/s3_lib.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: s3_lib.c,v 1.158 2017/08/12 21:03:08 jsing Exp $ */ | 1 | /* $OpenBSD: s3_lib.c,v 1.159 2017/08/28 16:37:04 jsing Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -1299,57 +1299,6 @@ SSL_CIPHER ssl3_ciphers[] = { | |||
1299 | .alg_bits = 256, | 1299 | .alg_bits = 256, |
1300 | }, | 1300 | }, |
1301 | 1301 | ||
1302 | /* Cipher CC13 */ | ||
1303 | { | ||
1304 | .valid = 1, | ||
1305 | .name = TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305_OLD, | ||
1306 | .id = TLS1_CK_ECDHE_RSA_CHACHA20_POLY1305_OLD, | ||
1307 | .algorithm_mkey = SSL_kECDHE, | ||
1308 | .algorithm_auth = SSL_aRSA, | ||
1309 | .algorithm_enc = SSL_CHACHA20POLY1305_OLD, | ||
1310 | .algorithm_mac = SSL_AEAD, | ||
1311 | .algorithm_ssl = SSL_TLSV1_2, | ||
1312 | .algo_strength = SSL_HIGH, | ||
1313 | .algorithm2 = SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256| | ||
1314 | SSL_CIPHER_ALGORITHM2_AEAD|FIXED_NONCE_LEN(0), | ||
1315 | .strength_bits = 256, | ||
1316 | .alg_bits = 256, | ||
1317 | }, | ||
1318 | |||
1319 | /* Cipher CC14 */ | ||
1320 | { | ||
1321 | .valid = 1, | ||
1322 | .name = TLS1_TXT_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_OLD, | ||
1323 | .id = TLS1_CK_ECDHE_ECDSA_CHACHA20_POLY1305_OLD, | ||
1324 | .algorithm_mkey = SSL_kECDHE, | ||
1325 | .algorithm_auth = SSL_aECDSA, | ||
1326 | .algorithm_enc = SSL_CHACHA20POLY1305_OLD, | ||
1327 | .algorithm_mac = SSL_AEAD, | ||
1328 | .algorithm_ssl = SSL_TLSV1_2, | ||
1329 | .algo_strength = SSL_HIGH, | ||
1330 | .algorithm2 = SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256| | ||
1331 | SSL_CIPHER_ALGORITHM2_AEAD|FIXED_NONCE_LEN(0), | ||
1332 | .strength_bits = 256, | ||
1333 | .alg_bits = 256, | ||
1334 | }, | ||
1335 | |||
1336 | /* Cipher CC15 */ | ||
1337 | { | ||
1338 | .valid = 1, | ||
1339 | .name = TLS1_TXT_DHE_RSA_WITH_CHACHA20_POLY1305_OLD, | ||
1340 | .id = TLS1_CK_DHE_RSA_CHACHA20_POLY1305_OLD, | ||
1341 | .algorithm_mkey = SSL_kDHE, | ||
1342 | .algorithm_auth = SSL_aRSA, | ||
1343 | .algorithm_enc = SSL_CHACHA20POLY1305_OLD, | ||
1344 | .algorithm_mac = SSL_AEAD, | ||
1345 | .algorithm_ssl = SSL_TLSV1_2, | ||
1346 | .algo_strength = SSL_HIGH, | ||
1347 | .algorithm2 = SSL_HANDSHAKE_MAC_SHA256|TLS1_PRF_SHA256| | ||
1348 | SSL_CIPHER_ALGORITHM2_AEAD|FIXED_NONCE_LEN(0), | ||
1349 | .strength_bits = 256, | ||
1350 | .alg_bits = 256, | ||
1351 | }, | ||
1352 | |||
1353 | /* Cipher CCA8 */ | 1302 | /* Cipher CCA8 */ |
1354 | { | 1303 | { |
1355 | .valid = 1, | 1304 | .valid = 1, |
diff --git a/src/lib/libssl/ssl_ciph.c b/src/lib/libssl/ssl_ciph.c index 49af292d6c..f30ffeaf2c 100644 --- a/src/lib/libssl/ssl_ciph.c +++ b/src/lib/libssl/ssl_ciph.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_ciph.c,v 1.96 2017/03/10 16:03:27 jsing Exp $ */ | 1 | /* $OpenBSD: ssl_ciph.c,v 1.97 2017/08/28 16:37:04 jsing Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -388,7 +388,7 @@ static const SSL_CIPHER cipher_aliases[] = { | |||
388 | }, | 388 | }, |
389 | { | 389 | { |
390 | .name = SSL_TXT_CHACHA20, | 390 | .name = SSL_TXT_CHACHA20, |
391 | .algorithm_enc = SSL_CHACHA20POLY1305|SSL_CHACHA20POLY1305_OLD, | 391 | .algorithm_enc = SSL_CHACHA20POLY1305, |
392 | }, | 392 | }, |
393 | 393 | ||
394 | /* MAC aliases */ | 394 | /* MAC aliases */ |
@@ -690,9 +690,6 @@ ssl_cipher_get_evp_aead(const SSL_SESSION *s, const EVP_AEAD **aead) | |||
690 | case SSL_CHACHA20POLY1305: | 690 | case SSL_CHACHA20POLY1305: |
691 | *aead = EVP_aead_chacha20_poly1305(); | 691 | *aead = EVP_aead_chacha20_poly1305(); |
692 | return 1; | 692 | return 1; |
693 | case SSL_CHACHA20POLY1305_OLD: | ||
694 | *aead = EVP_aead_chacha20_poly1305_old(); | ||
695 | return 1; | ||
696 | default: | 693 | default: |
697 | break; | 694 | break; |
698 | } | 695 | } |
@@ -1394,8 +1391,6 @@ ssl_create_cipher_list(const SSL_METHOD *ssl_method, | |||
1394 | CIPHER_ADD, -1, &head, &tail); | 1391 | CIPHER_ADD, -1, &head, &tail); |
1395 | ssl_cipher_apply_rule(0, 0, 0, SSL_CHACHA20POLY1305, | 1392 | ssl_cipher_apply_rule(0, 0, 0, SSL_CHACHA20POLY1305, |
1396 | 0, 0, 0, CIPHER_ADD, -1, &head, &tail); | 1393 | 0, 0, 0, CIPHER_ADD, -1, &head, &tail); |
1397 | ssl_cipher_apply_rule(0, 0, 0, SSL_CHACHA20POLY1305_OLD, | ||
1398 | 0, 0, 0, CIPHER_ADD, -1, &head, &tail); | ||
1399 | } else { | 1394 | } else { |
1400 | /* | 1395 | /* |
1401 | * CHACHA20 is fast and safe on all hardware and is thus our | 1396 | * CHACHA20 is fast and safe on all hardware and is thus our |
@@ -1403,8 +1398,6 @@ ssl_create_cipher_list(const SSL_METHOD *ssl_method, | |||
1403 | */ | 1398 | */ |
1404 | ssl_cipher_apply_rule(0, 0, 0, SSL_CHACHA20POLY1305, | 1399 | ssl_cipher_apply_rule(0, 0, 0, SSL_CHACHA20POLY1305, |
1405 | 0, 0, 0, CIPHER_ADD, -1, &head, &tail); | 1400 | 0, 0, 0, CIPHER_ADD, -1, &head, &tail); |
1406 | ssl_cipher_apply_rule(0, 0, 0, SSL_CHACHA20POLY1305_OLD, | ||
1407 | 0, 0, 0, CIPHER_ADD, -1, &head, &tail); | ||
1408 | ssl_cipher_apply_rule(0, 0, 0, SSL_AES, 0, 0, 0, | 1401 | ssl_cipher_apply_rule(0, 0, 0, SSL_AES, 0, 0, 0, |
1409 | CIPHER_ADD, -1, &head, &tail); | 1402 | CIPHER_ADD, -1, &head, &tail); |
1410 | } | 1403 | } |
@@ -1628,9 +1621,6 @@ SSL_CIPHER_description(const SSL_CIPHER *cipher, char *buf, int len) | |||
1628 | case SSL_CHACHA20POLY1305: | 1621 | case SSL_CHACHA20POLY1305: |
1629 | enc = "ChaCha20-Poly1305"; | 1622 | enc = "ChaCha20-Poly1305"; |
1630 | break; | 1623 | break; |
1631 | case SSL_CHACHA20POLY1305_OLD: | ||
1632 | enc = "ChaCha20-Poly1305-Old"; | ||
1633 | break; | ||
1634 | case SSL_eGOST2814789CNT: | 1624 | case SSL_eGOST2814789CNT: |
1635 | enc = "GOST-28178-89-CNT"; | 1625 | enc = "GOST-28178-89-CNT"; |
1636 | break; | 1626 | break; |
diff --git a/src/lib/libssl/ssl_locl.h b/src/lib/libssl/ssl_locl.h index e789a4ae27..17a4a0d4f6 100644 --- a/src/lib/libssl/ssl_locl.h +++ b/src/lib/libssl/ssl_locl.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: ssl_locl.h,v 1.192 2017/08/27 02:58:04 doug Exp $ */ | 1 | /* $OpenBSD: ssl_locl.h,v 1.193 2017/08/28 16:37:04 jsing Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -233,7 +233,6 @@ __BEGIN_HIDDEN_DECLS | |||
233 | #define SSL_AES128GCM 0x00000400L | 233 | #define SSL_AES128GCM 0x00000400L |
234 | #define SSL_AES256GCM 0x00000800L | 234 | #define SSL_AES256GCM 0x00000800L |
235 | #define SSL_CHACHA20POLY1305 0x00001000L | 235 | #define SSL_CHACHA20POLY1305 0x00001000L |
236 | #define SSL_CHACHA20POLY1305_OLD 0x00002000L | ||
237 | 236 | ||
238 | #define SSL_AES (SSL_AES128|SSL_AES256|SSL_AES128GCM|SSL_AES256GCM) | 237 | #define SSL_AES (SSL_AES128|SSL_AES256|SSL_AES128GCM|SSL_AES256GCM) |
239 | #define SSL_CAMELLIA (SSL_CAMELLIA128|SSL_CAMELLIA256) | 238 | #define SSL_CAMELLIA (SSL_CAMELLIA128|SSL_CAMELLIA256) |
diff --git a/src/lib/libssl/tls1.h b/src/lib/libssl/tls1.h index d06a1969b1..3cf778020b 100644 --- a/src/lib/libssl/tls1.h +++ b/src/lib/libssl/tls1.h | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: tls1.h,v 1.29 2017/03/25 14:15:11 jsing Exp $ */ | 1 | /* $OpenBSD: tls1.h,v 1.30 2017/08/28 16:37:04 jsing Exp $ */ |
2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) | 2 | /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) |
3 | * All rights reserved. | 3 | * All rights reserved. |
4 | * | 4 | * |
@@ -534,9 +534,6 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb) | |||
534 | #define TLS1_CK_ECDH_RSA_WITH_AES_256_GCM_SHA384 0x0300C032 | 534 | #define TLS1_CK_ECDH_RSA_WITH_AES_256_GCM_SHA384 0x0300C032 |
535 | 535 | ||
536 | /* ChaCha20-Poly1305 based ciphersuites. */ | 536 | /* ChaCha20-Poly1305 based ciphersuites. */ |
537 | #define TLS1_CK_ECDHE_RSA_CHACHA20_POLY1305_OLD 0x0300CC13 | ||
538 | #define TLS1_CK_ECDHE_ECDSA_CHACHA20_POLY1305_OLD 0x0300CC14 | ||
539 | #define TLS1_CK_DHE_RSA_CHACHA20_POLY1305_OLD 0x0300CC15 | ||
540 | #define TLS1_CK_ECDHE_RSA_CHACHA20_POLY1305 0x0300CCA8 | 537 | #define TLS1_CK_ECDHE_RSA_CHACHA20_POLY1305 0x0300CCA8 |
541 | #define TLS1_CK_ECDHE_ECDSA_CHACHA20_POLY1305 0x0300CCA9 | 538 | #define TLS1_CK_ECDHE_ECDSA_CHACHA20_POLY1305 0x0300CCA9 |
542 | #define TLS1_CK_DHE_RSA_CHACHA20_POLY1305 0x0300CCAA | 539 | #define TLS1_CK_DHE_RSA_CHACHA20_POLY1305 0x0300CCAA |
@@ -701,9 +698,6 @@ SSL_CTX_callback_ctrl(ssl,SSL_CTRL_SET_TLSEXT_TICKET_KEY_CB,(void (*)(void))cb) | |||
701 | #define TLS1_TXT_ECDH_RSA_WITH_AES_256_GCM_SHA384 "ECDH-RSA-AES256-GCM-SHA384" | 698 | #define TLS1_TXT_ECDH_RSA_WITH_AES_256_GCM_SHA384 "ECDH-RSA-AES256-GCM-SHA384" |
702 | 699 | ||
703 | /* ChaCha20-Poly1305 based ciphersuites. */ | 700 | /* ChaCha20-Poly1305 based ciphersuites. */ |
704 | #define TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305_OLD "ECDHE-RSA-CHACHA20-POLY1305-OLD" | ||
705 | #define TLS1_TXT_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_OLD "ECDHE-ECDSA-CHACHA20-POLY1305-OLD" | ||
706 | #define TLS1_TXT_DHE_RSA_WITH_CHACHA20_POLY1305_OLD "DHE-RSA-CHACHA20-POLY1305-OLD" | ||
707 | #define TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305 "ECDHE-RSA-CHACHA20-POLY1305" | 701 | #define TLS1_TXT_ECDHE_RSA_WITH_CHACHA20_POLY1305 "ECDHE-RSA-CHACHA20-POLY1305" |
708 | #define TLS1_TXT_ECDHE_ECDSA_WITH_CHACHA20_POLY1305 "ECDHE-ECDSA-CHACHA20-POLY1305" | 702 | #define TLS1_TXT_ECDHE_ECDSA_WITH_CHACHA20_POLY1305 "ECDHE-ECDSA-CHACHA20-POLY1305" |
709 | #define TLS1_TXT_DHE_RSA_WITH_CHACHA20_POLY1305 "DHE-RSA-CHACHA20-POLY1305" | 703 | #define TLS1_TXT_DHE_RSA_WITH_CHACHA20_POLY1305 "DHE-RSA-CHACHA20-POLY1305" |