boringssl/ssl
Jesse Selover d7266ecc9b Enforce key usage for RSA keys in TLS 1.2.
For now, this is off by default and controlled by SSL_set_enforce_rsa_key_usage.
This may be set as late as certificate verification so we may start by enforcing
it for known roots.

Generalizes ssl_cert_check_digital_signature_key_usage to check any part of the
key_usage, and adds a new error KEY_USAGE_BIT_INCORRECT for the generalized
method.

Bug: chromium:795089
Change-Id: Ifa504c321bec3263a4e74f2dc48513e3b895d3ee
Reviewed-on: https://boringssl-review.googlesource.com/c/34604
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
2019-01-30 21:28:34 +00:00
..
test Enforce key usage for RSA keys in TLS 1.2. 2019-01-30 21:28:34 +00:00
bio_ssl.cc Switch a number of files to C++. 2017-07-12 20:54:02 +00:00
CMakeLists.txt Add a CFI tester to CHECK_ABI. 2019-01-03 22:01:55 +00:00
d1_both.cc Remove the add_alert hook. 2018-09-15 00:55:02 +00:00
d1_lib.cc Support symbol prefixes 2018-09-06 20:07:52 +00:00
d1_pkt.cc Support symbol prefixes 2018-09-06 20:07:52 +00:00
d1_srtp.cc A bunch more scopers. 2018-07-06 19:43:08 +00:00
dtls_method.cc Remove the add_alert hook. 2018-09-15 00:55:02 +00:00
dtls_record.cc Another batch of bools. 2018-09-07 15:06:55 +00:00
handoff.cc Add initial HRSS support. 2018-12-12 17:35:02 +00:00
handshake_client.cc Enforce key usage for RSA keys in TLS 1.2. 2019-01-30 21:28:34 +00:00
handshake_server.cc Update comments around JDK11 workaround. 2019-01-23 20:00:38 +00:00
handshake.cc Implement server support for delegated credentials. 2019-01-24 20:06:58 +00:00
internal.h Enforce key usage for RSA keys in TLS 1.2. 2019-01-30 21:28:34 +00:00
s3_both.cc Allow configuring QUIC method per-connection 2019-01-14 19:54:59 +00:00
s3_lib.cc Support symbol prefixes 2018-09-06 20:07:52 +00:00
s3_pkt.cc Allow configuring QUIC method per-connection 2019-01-14 19:54:59 +00:00
span_test.cc Support symbol prefixes 2018-09-06 20:07:52 +00:00
ssl_aead_ctx.cc Delete the variants/draft code. 2019-01-08 17:38:41 +00:00
ssl_asn1.cc Fix thread-safety bug in SSL_get_peer_cert_chain. 2018-12-13 19:30:49 +00:00
ssl_buffer.cc Support symbol prefixes 2018-09-06 20:07:52 +00:00
ssl_cert.cc Enforce key usage for RSA keys in TLS 1.2. 2019-01-30 21:28:34 +00:00
ssl_cipher.cc Serialize SSL configuration in handoff and check it on application. 2018-11-02 19:45:42 +00:00
ssl_file.cc Avoid modifying stack in sk_find. 2018-04-12 21:02:12 +00:00
ssl_key_share.cc HRSS: omit reconstruction of ciphertext. 2018-12-19 20:09:34 +00:00
ssl_lib.cc Enforce key usage for RSA keys in TLS 1.2. 2019-01-30 21:28:34 +00:00
ssl_privkey.cc Implement server support for delegated credentials. 2019-01-24 20:06:58 +00:00
ssl_session.cc Support symbol prefixes 2018-09-06 20:07:52 +00:00
ssl_stat.cc Remove trailing whitespace from ssl/. 2018-02-26 22:05:13 +00:00
ssl_test.cc Delete the variants/draft code. 2019-01-08 17:38:41 +00:00
ssl_transcript.cc Support symbol prefixes 2018-09-06 20:07:52 +00:00
ssl_versions.cc Allow configuring QUIC method per-connection 2019-01-14 19:54:59 +00:00
ssl_x509.cc Use handshake parameters to decide if cert/key are available 2019-01-04 19:29:33 +00:00
t1_enc.cc Support symbol prefixes 2018-09-06 20:07:52 +00:00
t1_lib.cc Implement server support for delegated credentials. 2019-01-24 20:06:58 +00:00
tls13_both.cc Enforce key usage for RSA keys in TLS 1.2. 2019-01-30 21:28:34 +00:00
tls13_client.cc Delete the variants/draft code. 2019-01-08 17:38:41 +00:00
tls13_enc.cc Allow configuring QUIC method per-connection 2019-01-14 19:54:59 +00:00
tls13_server.cc Make 256-bit ciphers a preference for CECPQ2, not a requirement. 2019-01-23 22:38:56 +00:00
tls_method.cc Remove the add_alert hook. 2018-09-15 00:55:02 +00:00
tls_record.cc Another batch of bools. 2018-09-07 15:06:55 +00:00