summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--jstests/libs/badSAN.pem96
-rw-r--r--jstests/libs/badSAN.pem.digest.sha11
-rw-r--r--jstests/libs/badSAN.pem.digest.sha2561
-rw-r--r--jstests/libs/ca.pem92
-rw-r--r--jstests/libs/ca.pem.digest.sha11
-rw-r--r--jstests/libs/ca.pem.digest.sha2561
-rw-r--r--jstests/libs/client-all-the-oids.pem126
-rw-r--r--jstests/libs/client-all-the-oids.pem.digest.sha11
-rw-r--r--jstests/libs/client-all-the-oids.pem.digest.sha2561
-rw-r--r--jstests/libs/client-custom-oids.pem90
-rw-r--r--jstests/libs/client-custom-oids.pem.digest.sha11
-rw-r--r--jstests/libs/client-custom-oids.pem.digest.sha2561
-rw-r--r--jstests/libs/client-multivalue-rdn.pem79
-rw-r--r--jstests/libs/client-multivalue-rdn.pem.digest.sha11
-rw-r--r--jstests/libs/client-multivalue-rdn.pem.digest.sha2561
-rw-r--r--jstests/libs/client-self-signed.pem95
-rw-r--r--jstests/libs/client-self-signed.pem.digest.sha11
-rw-r--r--jstests/libs/client-self-signed.pem.digest.sha2561
-rw-r--r--jstests/libs/client.pem92
-rw-r--r--jstests/libs/client.pem.digest.sha11
-rw-r--r--jstests/libs/client.pem.digest.sha2561
-rw-r--r--jstests/libs/client_email.pem94
-rw-r--r--jstests/libs/client_email.pem.digest.sha11
-rw-r--r--jstests/libs/client_email.pem.digest.sha2561
-rw-r--r--jstests/libs/client_escape.pem90
-rw-r--r--jstests/libs/client_escape.pem.digest.sha11
-rw-r--r--jstests/libs/client_escape.pem.digest.sha2561
-rw-r--r--jstests/libs/client_privatekey.pem94
-rw-r--r--jstests/libs/client_privatekey.pem.digest.sha11
-rw-r--r--jstests/libs/client_privatekey.pem.digest.sha2561
-rw-r--r--jstests/libs/client_revoked.pem92
-rw-r--r--jstests/libs/client_revoked.pem.digest.sha11
-rw-r--r--jstests/libs/client_revoked.pem.digest.sha2561
-rw-r--r--jstests/libs/client_roles.pem92
-rw-r--r--jstests/libs/client_roles.pem.digest.sha11
-rw-r--r--jstests/libs/client_roles.pem.digest.sha2561
-rw-r--r--jstests/libs/client_title.pem94
-rw-r--r--jstests/libs/client_title.pem.digest.sha11
-rw-r--r--jstests/libs/client_title.pem.digest.sha2561
-rw-r--r--jstests/libs/client_utf8.pem92
-rw-r--r--jstests/libs/client_utf8.pem.digest.sha11
-rw-r--r--jstests/libs/client_utf8.pem.digest.sha2561
-rw-r--r--jstests/libs/cluster_cert.pem89
-rw-r--r--jstests/libs/cluster_cert.pem.digest.sha11
-rw-r--r--jstests/libs/cluster_cert.pem.digest.sha2561
-rw-r--r--jstests/libs/crl.pem16
-rw-r--r--jstests/libs/crl.pem.digest.sha11
-rw-r--r--jstests/libs/crl.pem.digest.sha2561
-rw-r--r--jstests/libs/crl_client_revoked.pem16
-rw-r--r--jstests/libs/crl_client_revoked.pem.digest.sha11
-rw-r--r--jstests/libs/crl_client_revoked.pem.digest.sha2561
-rw-r--r--jstests/libs/crl_expired.pem16
-rw-r--r--jstests/libs/crl_expired.pem.digest.sha11
-rw-r--r--jstests/libs/crl_expired.pem.digest.sha2561
-rw-r--r--jstests/libs/ecdsa-ca-ocsp.crt12
-rw-r--r--jstests/libs/ecdsa-ca-ocsp.key6
-rw-r--r--jstests/libs/ecdsa-ca-ocsp.pem18
-rw-r--r--jstests/libs/ecdsa-ca-ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ecdsa-ca-ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/ecdsa-ca.pem29
-rw-r--r--jstests/libs/ecdsa-ca.pem.digest.sha11
-rw-r--r--jstests/libs/ecdsa-ca.pem.digest.sha2561
-rw-r--r--jstests/libs/ecdsa-client.pem19
-rw-r--r--jstests/libs/ecdsa-client.pem.digest.sha11
-rw-r--r--jstests/libs/ecdsa-client.pem.digest.sha2561
-rw-r--r--jstests/libs/ecdsa-ocsp-responder.crt16
-rw-r--r--jstests/libs/ecdsa-ocsp-responder.crt.digest.sha11
-rw-r--r--jstests/libs/ecdsa-ocsp-responder.crt.digest.sha2561
-rw-r--r--jstests/libs/ecdsa-ocsp-responder.key6
-rw-r--r--jstests/libs/ecdsa-server-ocsp-mustStaple.pem22
-rw-r--r--jstests/libs/ecdsa-server-ocsp-mustStaple.pem.digest.sha11
-rw-r--r--jstests/libs/ecdsa-server-ocsp-mustStaple.pem.digest.sha2561
-rw-r--r--jstests/libs/ecdsa-server-ocsp.pem22
-rw-r--r--jstests/libs/ecdsa-server-ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ecdsa-server-ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/ecdsa-server.pem23
-rw-r--r--jstests/libs/ecdsa-server.pem.digest.sha11
-rw-r--r--jstests/libs/ecdsa-server.pem.digest.sha2561
-rw-r--r--jstests/libs/expired.pem91
-rw-r--r--jstests/libs/expired.pem.digest.sha11
-rw-r--r--jstests/libs/expired.pem.digest.sha2561
-rw-r--r--jstests/libs/intermediate-ca-chain.pem76
-rw-r--r--jstests/libs/intermediate-ca-chain.pem.digest.sha11
-rw-r--r--jstests/libs/intermediate-ca-chain.pem.digest.sha2561
-rw-r--r--jstests/libs/intermediate-ca.pem90
-rw-r--r--jstests/libs/intermediate-ca.pem.digest.sha11
-rw-r--r--jstests/libs/intermediate-ca.pem.digest.sha2561
-rw-r--r--jstests/libs/localhostnameCN.pem94
-rw-r--r--jstests/libs/localhostnameCN.pem.digest.sha11
-rw-r--r--jstests/libs/localhostnameCN.pem.digest.sha2561
-rw-r--r--jstests/libs/localhostnameSAN.pem96
-rw-r--r--jstests/libs/localhostnameSAN.pem.digest.sha11
-rw-r--r--jstests/libs/localhostnameSAN.pem.digest.sha2561
-rw-r--r--jstests/libs/not_yet_valid.pem93
-rw-r--r--jstests/libs/not_yet_valid.pem.digest.sha11
-rw-r--r--jstests/libs/not_yet_valid.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/ca_ocsp.crt30
-rw-r--r--jstests/libs/ocsp/ca_ocsp.key52
-rw-r--r--jstests/libs/ocsp/ca_ocsp.pem82
-rw-r--r--jstests/libs/ocsp/ca_ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/ca_ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/client_ocsp.pem84
-rw-r--r--jstests/libs/ocsp/client_ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/client_ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/intermediate_ca_only_ocsp.crt40
-rw-r--r--jstests/libs/ocsp/intermediate_ca_only_ocsp.key52
-rw-r--r--jstests/libs/ocsp/intermediate_ca_only_ocsp.pem92
-rw-r--r--jstests/libs/ocsp/intermediate_ca_only_ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/intermediate_ca_only_ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem70
-rw-r--r--jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/ocsp_responder.crt28
-rw-r--r--jstests/libs/ocsp/ocsp_responder.key52
-rw-r--r--jstests/libs/ocsp/ocsp_responder.pem80
-rw-r--r--jstests/libs/ocsp/ocsp_responder.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/ocsp_responder.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem124
-rw-r--r--jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/server_ocsp.pem82
-rw-r--r--jstests/libs/ocsp/server_ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/server_ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/server_ocsp_mustStaple.pem82
-rw-r--r--jstests/libs/ocsp/server_ocsp_mustStaple.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/server_ocsp_mustStaple.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/server_ocsp_revoked.pem82
-rw-r--r--jstests/libs/ocsp/server_ocsp_revoked.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/server_ocsp_revoked.pem.digest.sha2561
-rw-r--r--jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem84
-rw-r--r--jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem.digest.sha11
-rw-r--r--jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem.digest.sha2561
-rw-r--r--jstests/libs/password_protected.pem101
-rw-r--r--jstests/libs/password_protected.pem.digest.sha11
-rw-r--r--jstests/libs/password_protected.pem.digest.sha2561
-rw-r--r--jstests/libs/rollover_ca.pem94
-rw-r--r--jstests/libs/rollover_ca.pem.digest.sha11
-rw-r--r--jstests/libs/rollover_ca.pem.digest.sha2561
-rw-r--r--jstests/libs/rollover_ca_merged.pem85
-rw-r--r--jstests/libs/rollover_ca_merged.pem.digest.sha11
-rw-r--r--jstests/libs/rollover_ca_merged.pem.digest.sha2561
-rw-r--r--jstests/libs/rollover_server.pem92
-rw-r--r--jstests/libs/rollover_server.pem.digest.sha11
-rw-r--r--jstests/libs/rollover_server.pem.digest.sha2561
-rw-r--r--jstests/libs/rs0.pem84
-rw-r--r--jstests/libs/rs0.pem.digest.sha11
-rw-r--r--jstests/libs/rs0.pem.digest.sha2561
-rw-r--r--jstests/libs/rs1.pem84
-rw-r--r--jstests/libs/rs1.pem.digest.sha11
-rw-r--r--jstests/libs/rs1.pem.digest.sha2561
-rw-r--r--jstests/libs/rs2.pem84
-rw-r--r--jstests/libs/rs2.pem.digest.sha11
-rw-r--r--jstests/libs/rs2.pem.digest.sha2561
-rw-r--r--jstests/libs/server-intermediate-ca.pem131
-rw-r--r--jstests/libs/server-intermediate-ca.pem.digest.sha11
-rw-r--r--jstests/libs/server-intermediate-ca.pem.digest.sha2561
-rw-r--r--jstests/libs/server-intermediate-leaf.pem82
-rw-r--r--jstests/libs/server-intermediate-leaf.pem.digest.sha11
-rw-r--r--jstests/libs/server-intermediate-leaf.pem.digest.sha2561
-rw-r--r--jstests/libs/server.pem100
-rw-r--r--jstests/libs/server.pem.digest.sha11
-rw-r--r--jstests/libs/server.pem.digest.sha2561
-rw-r--r--jstests/libs/server_SAN.pem93
-rw-r--r--jstests/libs/server_SAN.pem.digest.sha11
-rw-r--r--jstests/libs/server_SAN.pem.digest.sha2561
-rw-r--r--jstests/libs/server_SAN2.pem92
-rw-r--r--jstests/libs/server_SAN2.pem.digest.sha11
-rw-r--r--jstests/libs/server_SAN2.pem.digest.sha2561
-rw-r--r--jstests/libs/server_no_SAN.pem81
-rw-r--r--jstests/libs/server_no_SAN.pem.digest.sha11
-rw-r--r--jstests/libs/server_no_SAN.pem.digest.sha2561
-rw-r--r--jstests/libs/server_no_subject.pem84
-rw-r--r--jstests/libs/server_no_subject.pem.digest.sha11
-rw-r--r--jstests/libs/server_no_subject.pem.digest.sha2561
-rw-r--r--jstests/libs/server_no_subject_no_SAN.pem84
-rw-r--r--jstests/libs/server_no_subject_no_SAN.pem.digest.sha11
-rw-r--r--jstests/libs/server_no_subject_no_SAN.pem.digest.sha2561
-rw-r--r--jstests/libs/smoke.pem90
-rw-r--r--jstests/libs/smoke.pem.digest.sha11
-rw-r--r--jstests/libs/smoke.pem.digest.sha2561
-rw-r--r--jstests/libs/splithorizon-ca.pem94
-rw-r--r--jstests/libs/splithorizon-ca.pem.digest.sha11
-rw-r--r--jstests/libs/splithorizon-ca.pem.digest.sha2561
-rw-r--r--jstests/libs/splithorizon-server.pem94
-rw-r--r--jstests/libs/splithorizon-server.pem.digest.sha11
-rw-r--r--jstests/libs/splithorizon-server.pem.digest.sha2561
-rw-r--r--jstests/libs/tenant_migration_donor.pem84
-rw-r--r--jstests/libs/tenant_migration_donor.pem.digest.sha11
-rw-r--r--jstests/libs/tenant_migration_donor.pem.digest.sha2561
-rw-r--r--jstests/libs/tenant_migration_donor_expired.pem84
-rw-r--r--jstests/libs/tenant_migration_donor_expired.pem.digest.sha11
-rw-r--r--jstests/libs/tenant_migration_donor_expired.pem.digest.sha2561
-rw-r--r--jstests/libs/tenant_migration_donor_insufficient_privileges.pem84
-rw-r--r--jstests/libs/tenant_migration_donor_insufficient_privileges.pem.digest.sha11
-rw-r--r--jstests/libs/tenant_migration_donor_insufficient_privileges.pem.digest.sha2561
-rw-r--r--jstests/libs/tenant_migration_recipient.pem86
-rw-r--r--jstests/libs/tenant_migration_recipient.pem.digest.sha11
-rw-r--r--jstests/libs/tenant_migration_recipient.pem.digest.sha2561
-rw-r--r--jstests/libs/tenant_migration_recipient_expired.pem86
-rw-r--r--jstests/libs/tenant_migration_recipient_expired.pem.digest.sha11
-rw-r--r--jstests/libs/tenant_migration_recipient_expired.pem.digest.sha2561
-rw-r--r--jstests/libs/tenant_migration_recipient_insufficient_privileges.pem84
-rw-r--r--jstests/libs/tenant_migration_recipient_insufficient_privileges.pem.digest.sha11
-rw-r--r--jstests/libs/tenant_migration_recipient_insufficient_privileges.pem.digest.sha2561
-rw-r--r--jstests/libs/trusted-ca.pem116
-rw-r--r--jstests/libs/trusted-ca.pem.digest.sha11
-rw-r--r--jstests/libs/trusted-ca.pem.digest.sha2561
-rw-r--r--jstests/libs/trusted-client.pem92
-rw-r--r--jstests/libs/trusted-client.pem.digest.sha11
-rw-r--r--jstests/libs/trusted-client.pem.digest.sha2561
-rw-r--r--jstests/libs/trusted-client.pfxbin3509 -> 3525 bytes
-rw-r--r--jstests/libs/trusted-server.pem92
-rw-r--r--jstests/libs/trusted-server.pem.digest.sha11
-rw-r--r--jstests/libs/trusted-server.pem.digest.sha2561
-rw-r--r--jstests/libs/trusted-server.pfxbin3509 -> 3525 bytes
-rw-r--r--jstests/ssl/libs/localhost-cn-with-san.pem91
-rw-r--r--jstests/ssl/libs/localhost-cn-with-san.pem.digest.sha11
-rw-r--r--jstests/ssl/libs/localhost-cn-with-san.pem.digest.sha2561
-rw-r--r--jstests/ssl/ssl_cert_selector.js10
-rw-r--r--jstests/ssl/ssl_cert_selector_apple.js48
-rw-r--r--jstests/ssl/tlsCATrusts.js4
-rw-r--r--jstests/ssl/x509/README6
-rw-r--r--jstests/ssl/x509/certs.yml67
-rwxr-xr-xjstests/ssl/x509/mkcert.py17
-rwxr-xr-xjstests/ssl/x509/mkcrl.sh13
-rwxr-xr-xjstests/ssl/x509/mkdigest.py42
-rw-r--r--jstests/ssl/x509/root-and-trusted-ca.pem79
-rw-r--r--jstests/ssl/x509/root-and-trusted-ca.pem.digest.sha11
-rw-r--r--jstests/ssl/x509/root-and-trusted-ca.pem.digest.sha2561
-rw-r--r--jstests/ssl/x509/trusted-client-testdb-roles.pem84
-rw-r--r--jstests/ssl/x509/trusted-client-testdb-roles.pem.digest.sha11
-rw-r--r--jstests/ssl/x509/trusted-client-testdb-roles.pem.digest.sha2561
-rw-r--r--jstests/ssl/x509_expiring.js5
-rw-r--r--jstests/ssl/x509_startup_certificate_info.js6
234 files changed, 3314 insertions, 3041 deletions
diff --git a/jstests/libs/badSAN.pem b/jstests/libs/badSAN.pem
index b2e5155f1e9..b36e5a4c720 100644
--- a/jstests/libs/badSAN.pem
+++ b/jstests/libs/badSAN.pem
@@ -1,55 +1,55 @@
# Autogenerated file, do not edit.
# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml badSAN.pem
#
-# Certificaet with an otherwise permissible CommonName, but with an unmatchable SubjectAlternateName.
+# Certificate with an otherwise permissible CommonName, but with an unmatchable SubjectAlternateName.
-----BEGIN CERTIFICATE-----
-MIIDvTCCAqUCBExModUwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowbzELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxEjAQBgNVBAMMCTEyNy4w
-LjAuMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALtW4ubBls/rzaOR
-F/4KYiPRQp3srKrrAvSSI/pSVrVdeliLyldFPsMGLAPut4vVTv9NhHpkDtdnb9XY
-RAqHytlODCCGW3Sd+rawS4P8mjp4UgOH5hLhO/Ovh3NuoAc937as7p1ZePagNCF5
-hBWF8nORevPr83m+miW0gTg92iYotv4Xb+OreRNIGiwduKGW87jaAQLsoxMz5epA
-ttxlQfZRZOhZeb0obDg7shLtW97Rd+Ah/ptceDzM6YLJmoEbk9HieryLT4GcQc1w
-6BzpTJrLxVfvmf2GcfA0mMjxkxYICewQpDRftbUMViVmk2dKtibqO2UEQOuJLeMh
-GEkkaKcCAwEAAaNhMF8wCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwEwYDVR0lBAww
-CgYIKwYBBQUHAwEwHQYDVR0OBBYEFHUVsk4PHccGPFFK+71UR9FWWp0xMBEGA1Ud
-EQQKMAiCBmJhZFNBTjANBgkqhkiG9w0BAQsFAAOCAQEAriJ4/IxAQjXsTdzPqzI4
-Zk+z4LJ2W3NNXOGRTOqDrbA3PXpTHSt/3UBLWaILwFP7IaoKk1J7Z5+dznKjahiu
-JA/omaJyj24RWk8HSrwdhAcqi0R3nppp6VbSiEJsg/Xgwucvvu5FsrW/k5avRdk/
-tK2iKVCd6PsgEN4iaxwClSAPHTVRktwjdC+wjp1A5dLow0u9g97vdJkQuuertMlU
-fT5cgeBw0/UrAVYCZwwkHlljje3iIG7jqYX/2eohbWTZvG5doNEMuScXUTQIqEew
-0rXY+AQhSCOsiiRZcF+/1wVzAzVu6sSlC6xFYmnNR1WcQAwskK3Qt8m3ZTpokX3O
-mw==
+MIIDwjCCAqqgAwIBAgIEbr2RhTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQzWhcNMjQwNDMwMjE1OTQzWjBvMQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDESMBAGA1UEAwwJ
+MTI3LjAuMC4xMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3q91q4t8
+/v442v1IaL20H8mcxaNh2jE1X1+mPz9La1tKsjDN3BwIOt2PamMDUdJhT9YL0MDF
+h+gUaPcAvJA8KMMGwnzrzbCSI2SkWyQ4+QKyDeKnNZ1sn/EmZNruHZ+meiXu4EtE
+t0HrFRIgEYFZGj6iMhkQUfDan6Aed1eBgTrjHr61pTywCw5SJaDlI78uuZQvs7KB
+UpsEHJDdvyZvK8TxmllL+mLqcP1D6aLmlNwC6Pnzc8wWrSuqI9v+YP1YsGBEyi/l
+a/+q7QOOWcaruRXqH/nj4KkRixGBpRQy80OQse68pmtLA4FAJateFKtXYD6Vh/g4
+jI9FE1PmAni/vQIDAQABo2EwXzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIFoDATBgNV
+HSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQUBcxltaZPDRkxtSGwZvfNtbMfOMsw
+EQYDVR0RBAowCIIGYmFkU0FOMA0GCSqGSIb3DQEBCwUAA4IBAQATShkmAdj1+FkA
+BdACAz23f+V/ihcBHtCFpfi4SgS+vzmzS/BbP6pXD+DS78cpLfCtS0c4xJFMgyPo
+82/Ii0CsK7Jm5jT/ZWg02CW6ecaSVmAhzlVybQpjQ6qrXP1zoqJeyyOhTl1Sfcbu
+WFOkDh3d0SEuCctDne5pUGIHjZ3YDKiOmLPYNDUDKB3DX5P6t5PnqtPHpYPE3zG2
+6X96xs3OqpER0vUWHKSe1ofnVr9YmDt7mOYbOaa6MU1WUPedZ5BR0mOVwsxx7z5i
+QdVARPyZqSd0BCIub9cwTo9cqPPBzSt/MBd5brMR7NwdWhIAHIhYGvT+437ZXjBq
+RMvCdM5m
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC7VuLmwZbP682j
-kRf+CmIj0UKd7Kyq6wL0kiP6Ula1XXpYi8pXRT7DBiwD7reL1U7/TYR6ZA7XZ2/V
-2EQKh8rZTgwghlt0nfq2sEuD/Jo6eFIDh+YS4Tvzr4dzbqAHPd+2rO6dWXj2oDQh
-eYQVhfJzkXrz6/N5vpoltIE4PdomKLb+F2/jq3kTSBosHbihlvO42gEC7KMTM+Xq
-QLbcZUH2UWToWXm9KGw4O7IS7Vve0XfgIf6bXHg8zOmCyZqBG5PR4nq8i0+BnEHN
-cOgc6Uyay8VX75n9hnHwNJjI8ZMWCAnsEKQ0X7W1DFYlZpNnSrYm6jtlBEDriS3j
-IRhJJGinAgMBAAECggEAIlNBL9a4s1AZVab4Jmvwn29wLU94M7jrybQdM3hyurht
-+ltir6rYXRN8bRwINW7YEp85btN2hLFHJH+DuAo5eKd8QVlc2Hk5vs9+hqh5+cyh
-+lOkLEFoorW+s7/JQopruyTkc6A5MbcY1ilVsjvguJwnUxogemYaCF6SbqOmnOb4
-myBgUhxo5ka7rt8q0ULSAOGbbrR1tBWTRx6VJhRv/qoUyGiA9jPpYN4kpSK2MHsE
-1U4NnJSVLQ9TCNt6fcsvfCjIM7j7VnppTIMGdi3Wqrsgg2nhWT0178MD4mIsDzyd
-6IX64F3dwaGZb1TQbdFLJkk2XLiHdhOBJ4WOwi+MAQKBgQDf1iYnBFWSpkRIDC2j
-ArKL8u0Qf7lVUvtNXXJ+WGKdynlm1fSKH3I+7dB5X7YSI7BiFbSls1DuCRcK5r3v
-X2cR5JmVIX0JRd/RHqDWE3OYdE5cnNWjHVACDnvSxVjPmd7PCTLr7if5jsQs52Gr
-zfUBIfIarRVwX21fDl3xQdoxQQKBgQDWQi/N2cbpm+zBHtqPC5W1+mD+fb642LX3
-RwJ9UdV8XcV/z0EXNkCswy43b7DSRp2lY7FV82zjXb22hpZtXUcSDuDEQHeGixdZ
-grfJ3gwy2+uEZD0q0/aq9ST/NGqTszw45okNlgVKkm0bEQfPJ15iexHIPt0olRWv
-NtuUBG035wKBgAVgOU5alkuNXrp0QGxX1j3yOatZxfO8qHh1NBjAuq2bfUrw/IyM
-sMu+HnGr0M2iucvBRbNtGRZ+dWU3oXwsSGdvnBiu0zfzy6pUF/zMPsx8jp0+zwq5
-24ARJPws7TMfOPC0AdsUvzUJLsD9VaUwrx+11wC5A3jNce0EhVEUCc+BAoGAYs0A
-mE89b4pMgb2FkYMJFXKQ+anoofqk5pNjLYDoDkJ7iXV8EYUeC8yxajTh+AVCOvse
-0oC/DJW0nw+vHF1wIX6k3TrRI0TOjqM9tyPiwi0xjMpgfnhh/fGvjtOP9e4n7iE4
-wAAXDo05LMsMq9T+rDEOQSXj/AvLhRGp7bag2q8CgYADThguR//WzETbnxx27XG3
-EengMMdlx9GlZfw8hPS7Xd3/esB4BCdeCjUgEuKFqGazchwIyuR6zIT2zFWhjHxq
-VYAv/mCn/IKOGk/RXP1vL49K/4C4al2fL3tbLoSw9UIkz4BsBOH2Ui3E8dBGv07m
-viGISdodreo8VxAKGBpEEA==
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDer3Wri3z+/jja
+/UhovbQfyZzFo2HaMTVfX6Y/P0trW0qyMM3cHAg63Y9qYwNR0mFP1gvQwMWH6BRo
+9wC8kDwowwbCfOvNsJIjZKRbJDj5ArIN4qc1nWyf8SZk2u4dn6Z6Je7gS0S3QesV
+EiARgVkaPqIyGRBR8NqfoB53V4GBOuMevrWlPLALDlIloOUjvy65lC+zsoFSmwQc
+kN2/Jm8rxPGaWUv6Yupw/UPpouaU3ALo+fNzzBatK6oj2/5g/ViwYETKL+Vr/6rt
+A45Zxqu5Feof+ePgqRGLEYGlFDLzQ5Cx7ryma0sDgUAlq14Uq1dgPpWH+DiMj0UT
+U+YCeL+9AgMBAAECggEAKt0tUkr0UYUP3p9Ye8jgTioZwjVT1ZMZSfV4Y75EPzMA
+atJYHeFLeEFDpN/QOMS9NIfoGFOy8hkrLJU3EBTXb6UyvOcc4Kf3SVbLCDwtt0jc
+iy2wr/JQgW0CzfESWqNrgSGiHIyAeqH2pUSq5ZO3WgTqZahLaupouscwdhpi9EPM
+fhPmuiFnJ+W8NA9DWRBiEZh+DyYFBad4+Dyk/R0OAAh0m5kgkFEVyOmE0t4APwiw
+55ePv7bAR1QDbL+Q5bKV3vwr+gsylNjwZexYxAJQJZD2PyLjsftUH7E1W9RYM0Om
+duSVEoXJZFCWtosx07B4pQHb6ryqGUS76ax0J9ZXIQKBgQD7t1fuJtKgj9Nagcij
+J2Hz9ws7NZx/PLew1Br8a8j96jYHNfJvEG6gDVYoVW/qKO/UJIvdj557WSnVPDEJ
+4h9Bdc3MV0IhiLpi4m63pHUKwEdiCooUcJm2OtQSVd3FXnNSJpjQrN5jg4VXe1kg
+Bjok0G5YqEMOfd0uZcWrW9uApQKBgQDieaMdfwU8z32G/v4oSa/m2PfN11BjdZn5
+AQkvRvHTIP+hwunAX1uu0iTE6y4IO0fjrSTmpJbOsFslwiAYXmikUQk1F1I+s7FM
+NEoQb3zueXbOs9K+WnepgMuMOgMbDm8qqoaGYmikU7mHZZb34nC0JSRA66DaoXsC
+RmCDAsa/OQKBgQD2JKVRdplE9R/CQ2NFV/+LJ6rN7XDpYyBlRCRXbbcPxPWsO26k
+eLcUv7Xenx1fJ0TOeCZlNEnPaLNllwSFG59gzae/CBzc2e0ZQT7vSVxCdR/YmWHI
+9wr4jbJPc7P3ipLOZHvOoxycx0Ge+DmA/VXiJgehnnhkNWQSOOcA2ERfGQKBgQC9
+W46yvt2WNrZyBQpkjRfyID8xcHHadx3CQMd5LAxNxy12Bw6CtjhmN3Ze33ShlU9K
+Yh6UadFeB75uF53WQjmkCc11AobVvlDjsmSq0UzX598afOgcGHAs3W9TU739BViV
+h/bqraVooEhjmOFdaYtqVBO35EueAZ5kDIvtfojGoQKBgED/n9nPsVLjuDvgNyux
+8fYlfGnIeQSoOnasOvsWh+hsw5MIAaFknUZ27rYB6BblJLrLAbUCVEeOZsyWtJWm
+Kp3IlXPUz7cYt0aCFLcDhCSQevfCDzJ+8dexAMzCkbrdcD5Wl3xWjRmsgw67YtzS
+dy3/1MEdNReJZZoJv80le9Ty
-----END PRIVATE KEY-----
diff --git a/jstests/libs/badSAN.pem.digest.sha1 b/jstests/libs/badSAN.pem.digest.sha1
new file mode 100644
index 00000000000..98251b6edc6
--- /dev/null
+++ b/jstests/libs/badSAN.pem.digest.sha1
@@ -0,0 +1 @@
+ABC6CD0E2DBFF1D8CCF4F67BE7EA74049CA4219A \ No newline at end of file
diff --git a/jstests/libs/badSAN.pem.digest.sha256 b/jstests/libs/badSAN.pem.digest.sha256
new file mode 100644
index 00000000000..d2b1d0bfa9c
--- /dev/null
+++ b/jstests/libs/badSAN.pem.digest.sha256
@@ -0,0 +1 @@
+16C50CECD049C952B5BA9E2CDFCFCD9D999E7D5344BA85501BCEA05CCEE5529B \ No newline at end of file
diff --git a/jstests/libs/ca.pem b/jstests/libs/ca.pem
index b2bc1ee2aee..dfc69f54203 100644
--- a/jstests/libs/ca.pem
+++ b/jstests/libs/ca.pem
@@ -3,55 +3,55 @@
#
# Primary Root Certificate Authority Most Certificates are issued by this CA.
-----BEGIN CERTIFICATE-----
-MIIDdDCCAlwCBBmRIxIwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowdDELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5l
-bCBUZXN0IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAupVkx8+n
-AqzsANKwNPeCYlf2q0WgF4kSUMNJdpmMelrr7hh7EOnAU0hTAQx9BKTEbExeCzH6
-OArFNGjewjWVXwaOpCjK8FMvK6/lGVEpmoHNF9XuiQVmaQ4bJD6rC73YjpgNIPeL
-5PyoFLEZv+X2cRBPpTcSRcf87tk8HL7v0eyk1JBhkeKK68SYdWwZlHaa1jqwmliW
-WvVMkHVH3lx0VOgQwWtOgs0K1zpcZ0sH5MGpYRQOiidIRZj3PkKeTPQe2D6VQQtv
-2yDs9dWfCxJJP9QiWclL2rF/xqlFSNEIfNZpZhk6I1DHQpA2uyJfzRH62pFasJuB
-CVh5Tr0EDoVreQIDAQABoxMwETAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEB
-CwUAA4IBAQARdNCYYWxi2fyhJwzGHwIT261d/pTlOSYLlm84c72aEneFUnfp8/H5
-JjuFbnhiX+5+h3M7eDQhra9s+H3vKr7o38EIVf5OKXvpNLwv1UUmomBvKqccioYh
-bxrfwCzfBRuUmW05kcAVn8iKovqyxL7npEZbckwtT+BqZ4kOL4Uzre+S1HMx0zOu
-xulSYA/sBoJ2BB93ZIAqB+f/+InS9yggzyhhaQqS7QEl1L4nZE4Oy0jKcxdCzysm
-TqiyH+OI5SVRTfXh4XvHmdWBBaQyaTmQzXYUxUi7jg1jEAiebCGrEJv9plwq4KfC
-cze9NLBjaXR3GzonT8kICyVT/0UvhuJg
+MIIDeTCCAmGgAwIBAgIEe9SskzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQyWhcNMjQwNDMwMjE1OTQyWjB0MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwO
+S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDf
+vZIt82obTHnc3iHgUYSc+yVkCHyERF3kdcTTFszDbN9mVPL5ZkH9lIAC3A2rj24T
+pItMW1N+zOaLHU5tJB9VnCnKSFz5CHd/KEcLA3Ql2K70z7n1FvINnBmqAQdgPcPu
+Et2rFgGg3atR3T3bV7ZRlla0CcoAFl/YoDI16oHRXboxAtoAzaIwvS6HUrOYQPYq
+BLGt00Wws4bpILk3b04lDLEHmzDe6N3/v3FgBurPzR2tL97/sJGePE94I833hYG4
+vBdU0Kdt9FbTDEFOgrfRCisHyZY6Vw6rIiWBSLUBCjtm2vipgoD0H3DvyZLbMQRr
+qmctCX4KQtOZ8dV3JQkNAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
+hvcNAQELBQADggEBAJnz4lK9GiCWhCXIPzghYRRheYWL8nhkZ+3+oC1B3/mGEf71
+2VOdND6fMPdHinD8jONH75mOpa7TanriVYX3KbrQ4WABFNJMX9uz09F+0A2D5tyc
+iDkldnei+fiX4eSx80oCPgvaxdJWauiTsEi+fo2Do47PYkch9+BDXT9F/m3S3RRW
+cia7URBAV8Itq6jj2BHcpS/dEqZcmN9kGWujVagcCorc0wBKSmkO/PZIjISid+TO
+Db2g+AvqSBDU0lbdP7NXRSIxvZejDz4qMjcpSbhW9OS2BCYZcq5wgH2lwYkdPtmX
+JkhxWKwsW11WJWDcmaXcffO3a6lDizxyjnTedoU=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC6lWTHz6cCrOwA
-0rA094JiV/arRaAXiRJQw0l2mYx6WuvuGHsQ6cBTSFMBDH0EpMRsTF4LMfo4CsU0
-aN7CNZVfBo6kKMrwUy8rr+UZUSmagc0X1e6JBWZpDhskPqsLvdiOmA0g94vk/KgU
-sRm/5fZxEE+lNxJFx/zu2Twcvu/R7KTUkGGR4orrxJh1bBmUdprWOrCaWJZa9UyQ
-dUfeXHRU6BDBa06CzQrXOlxnSwfkwalhFA6KJ0hFmPc+Qp5M9B7YPpVBC2/bIOz1
-1Z8LEkk/1CJZyUvasX/GqUVI0Qh81mlmGTojUMdCkDa7Il/NEfrakVqwm4EJWHlO
-vQQOhWt5AgMBAAECggEATMiSEtBXsHgtHyGVNhbtZz8/2bfrbAQSr33OS6pg7zFf
-ijo02v73EM7gqbvT7wdHdjHvObg1er6j7S+DDHU0pUhzhwbqjQAOl3HpXAPUlSr5
-leeKJIU+YdlWPhI0Hb7g0b2tGXYF8hQvr2Q6bohaZKkLvbfuIx1r73cij8nbs411
-MU892GBVZRcMGITLT7W1BFWYGmjqIH7FabSpFpIxeEX2ONooHHOYBlj3dJs8WdGr
-/gGJSYq1YGUbVQLIn5m9JmYuFShEhcSrGVAdKto2qRqUpTaePXLU8dozInejFMVb
-yul5fwPuUGgDz+x6wKWRSA8138uaEHQl7r5DqOv6oQKBgQDkYg37TdSC0cCWxL/J
-vFzMPQ/p9iT8ZgOA1lvUUkpwhGOdAqAiR35vZPwFtu3sSl/BUER7ZDf+ILfdPzW5
-wFiWWAkrS8jWl9RaFwkjeTq5fwv3kJGwPwVvCzjLjX7tUDCJv8azOuIxoindCnnC
-y5HXm6hOQZS26lZqNDzsBFzWdQKBgQDRJV9+7gRyZhl8PIBO91Hl5C+wTBFjFFrH
-TJRnT0pNX5FRkPZoyPgJD44S0zFg4oWKl1r2YvfwCQZtQl3h2ZDDGnEE7mJ0++hi
-+UUfLyF9dXq27aK4mJsDkdp5Hi6vqfBETPPPyHffwY/UFLOsseqU+5aVG/7Hk6Th
-r2jQzNzIdQKBgQCx1SRb9YuvXdKf044fcNu1cSquHCtKmcjKjp+soXMzT/Mc9Elq
-x87MwI55iKqU3ojXR0A78Jqk+CcTUT/tZrfUQbLKEtXNOyZwDBXimGhAvou79sdq
-vHfnso5D+ebGtTVGXZ1EPGqbCVGdu6V6J/dlMuCIJwq8r5YgVpLFmNQNbQKBgQCD
-PNRjra+UqYSsdLp+0qrNexaBpfnzFj6weNlWymZxjtp9OF2m+xTJer1ICsYdaYcq
-pDcsDIZQVRl3TgHjSsaP5vOsiHm3tqroEErTepulQiayywMkmn4LC2bwQYRCLnza
-Hv+PDthJzAgYqLTmVO5CdmzTPDHvwjHgfFVlUGfqUQKBgE16f0Euzx3qySIJmMrR
-dNI/y8FSSLgoxWPX7WQIpnXhbNeqqlwGNOi8beSkiRsaL6zJcR3tTPkOfsSeIiCf
-yG73jB3F1L8A5dX2YrKOJOzSxrByzVDnfrukCuxkcW0N31OJ0sFiq9Kjcb/9zyiI
-BQTIxkN91Squn4Y+I3ikyoc3
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDfvZIt82obTHnc
+3iHgUYSc+yVkCHyERF3kdcTTFszDbN9mVPL5ZkH9lIAC3A2rj24TpItMW1N+zOaL
+HU5tJB9VnCnKSFz5CHd/KEcLA3Ql2K70z7n1FvINnBmqAQdgPcPuEt2rFgGg3atR
+3T3bV7ZRlla0CcoAFl/YoDI16oHRXboxAtoAzaIwvS6HUrOYQPYqBLGt00Wws4bp
+ILk3b04lDLEHmzDe6N3/v3FgBurPzR2tL97/sJGePE94I833hYG4vBdU0Kdt9FbT
+DEFOgrfRCisHyZY6Vw6rIiWBSLUBCjtm2vipgoD0H3DvyZLbMQRrqmctCX4KQtOZ
+8dV3JQkNAgMBAAECggEBAImudWrzdGMSH5eL1hrc7xdO8QZqtn0KOSEiW5luWVkV
+ATBOrCpPA+LQ5CleUsc0/w71XYcCWBIacvA+e4lsBiA/dfP1rcjNrgNAvN8JJAs6
+GQerYIpysUcwvRZBhdFykMRLNb9XTm84mXlKBQuaISZ5ticaMwT0v8xlYCCPi41S
+0gfhW9fIKA45NYmTKUhS2l5M0kNqJ6JmONOHv0RaSgn4qxAVNrkAJCbb2npEKZiP
+qIR7XL1MbE7b1lNnL3PpbA6LCQpLBhNOHXrAfquagvm209d6zx8fAcIfFXMwdIZj
+S80DG9pYyXxCm9wfdEJHrpFwf/ueoXpr9p6JhVvenkECgYEA/MwD3zQ+8dF4X/z5
+UEbfXsmZ5olqH8bKithou5zDXkwkLi7VcOWK7TkNUpJ70ex37/Jf4CdRPYarzK8Y
+QCWadiUfthCkQxZAGK6vy/MGL3ha+rzuZmpERiq275kmUK+qQ79rKh10j7b08PYE
+Q9XZqDsWh3AyniZcjuf0KDH2J3ECgYEA4pNOmG0s7Xx6yJgLE4EKIIhHswnF01Tw
+6v3HlQRymecl8D8DuX974dB9ihlM1scNPRcqz9kr0ZRn0gRUirI+VBMuilp8SGxF
+CyUNoP9vnhYPJqeOIIv61XGno02HNzLjOC1oTFndYgAx5PH/wbbjqPCq64zVXpke
+pi5zfhJrhV0CgYB3X1NYvBAZGoQQN6H3EXB7DxHYdf0iAjo0dFqIdU8gIS5YjI8H
+n60Jtg4fdsJ3b4V3TemOLKLFPem0Xt5BtEALGB6wV41pjIE55otm8Fx0YA3+Jucg
+f3+77oGyBIy+PyVUlnhhS8V187wYaOO8sKf2M+jAje+pFI5SgR+fN3B4UQKBgQDL
+BJlBJVpDde2C/hG2qUJMwjAUseYLpam1ti32TaTuWFr7OUt6FEwJm8pRSrg6HuOy
+4KZg1URZJ3Qbj/u8x1fn98QU/l0se68l/E6I+zilWzi6Nxq3+RWJ2awPPHGzOSq1
+9KHnAALJRElwzpKPnfPCNdvA8lFh0SvQVgDwb0relQKBgGCGh51jqQieVVowiYc5
+/1mPI4I3MLg4k1v/iAUQzINEX7xkCG+xx7tz5LzUM//nNeI/UiO/rVG6/dnLNhUP
+ixVZG7LiRihtrPkUr+ecULCX+6RNDAi88X5z5EA8DSzZY41jpKrneowy2Wy16ZOq
+LKaGtbH/tHj8UT/l8OYicgI1
-----END PRIVATE KEY-----
-# Certificate from ca-2019.pem
+# Certificate from jstests/libs/ca-2019.pem
-----BEGIN CERTIFICATE-----
MIIDczCCAlugAwIBAgIBATANBgkqhkiG9w0BAQUFADB0MRcwFQYDVQQDEw5LZXJu
ZWwgVGVzdCBDQTEPMA0GA1UECxMGS2VybmVsMRAwDgYDVQQKEwdNb25nb0RCMRYw
diff --git a/jstests/libs/ca.pem.digest.sha1 b/jstests/libs/ca.pem.digest.sha1
new file mode 100644
index 00000000000..dbe9e3898af
--- /dev/null
+++ b/jstests/libs/ca.pem.digest.sha1
@@ -0,0 +1 @@
+F42B9419C2EF9D431D7C0E5061A82902D385203A \ No newline at end of file
diff --git a/jstests/libs/ca.pem.digest.sha256 b/jstests/libs/ca.pem.digest.sha256
new file mode 100644
index 00000000000..2cffe1b5da9
--- /dev/null
+++ b/jstests/libs/ca.pem.digest.sha256
@@ -0,0 +1 @@
+21A1C6A87B31AF590F5074EE716F193522B8F540081A5D571B25AE5DF72863E3 \ No newline at end of file
diff --git a/jstests/libs/client-all-the-oids.pem b/jstests/libs/client-all-the-oids.pem
index 3fc062a207d..0ae372303c8 100644
--- a/jstests/libs/client-all-the-oids.pem
+++ b/jstests/libs/client-all-the-oids.pem
@@ -3,69 +3,69 @@
#
# Client certificate with a long list of OIDs. Ensures the server functions well in unexpected circumstances.
-----BEGIN CERTIFICATE-----
-MIIG3jCCBcYCBFXqfY4wDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowggPxMRAwDgYDVQQD
-DAdEYXR1bS0zMRAwDgYDVQQEDAdEYXR1bS00MRAwDgYDVQQFEwdEYXR1bS01MQsw
-CQYDVQQGEwJVUzEQMA4GA1UEBwwHRGF0dW0tNzELMAkGA1UECAwCTlkxEDAOBgNV
-BAkMB0RhdHVtLTkxETAPBgNVBAoMCERhdHVtLTEwMREwDwYDVQQLDAhEYXR1bS0x
-MTERMA8GA1UEDAwIRGF0dW0tMTIxETAPBgNVBA0MCERhdHVtLTEzMREwDwYDVQQO
-DAhEYXR1bS0xNDERMA8GA1UEDwwIRGF0dW0tMTUxETAPBgNVBBAMCERhdHVtLTE2
-MREwDwYDVQQRDAhEYXR1bS0xNzERMA8GA1UEEgwIRGF0dW0tMTgxETAPBgNVBBMM
-CERhdHVtLTE5MREwDwYDVQQUDAhEYXR1bS0yMDERMA8GA1UEFQwIRGF0dW0tMjEx
-ETAPBgNVBBYMCERhdHVtLTIyMREwDwYDVQQXDAhEYXR1bS0yMzERMA8GA1UEGAwI
-RGF0dW0tMjQxETAPBgNVBBkMCERhdHVtLTI1MREwDwYDVQQaDAhEYXR1bS0yNjER
-MA8GA1UEGwwIRGF0dW0tMjcxETAPBgNVBBwMCERhdHVtLTI4MREwDwYDVQQdDAhE
-YXR1bS0yOTERMA8GA1UEHgwIRGF0dW0tMzAxETAPBgNVBB8MCERhdHVtLTMxMREw
-DwYDVQQgDAhEYXR1bS0zMjERMA8GA1UEIQwIRGF0dW0tMzMxETAPBgNVBCIMCERh
-dHVtLTM0MREwDwYDVQQjDAhEYXR1bS0zNTERMA8GA1UEJAwIRGF0dW0tMzYxETAP
-BgNVBCUMCERhdHVtLTM3MREwDwYDVQQmDAhEYXR1bS0zODERMA8GA1UEJwwIRGF0
-dW0tMzkxETAPBgNVBCgMCERhdHVtLTQwMREwDwYDVQQpDAhEYXR1bS00MTERMA8G
-A1UEKgwIRGF0dW0tNDIxETAPBgNVBCsMCERhdHVtLTQzMREwDwYDVQQsDAhEYXR1
-bS00NDERMA8GA1UELQwIRGF0dW0tNDUxETAPBgNVBC4TCERhdHVtLTQ2MREwDwYD
-VQQvDAhEYXR1bS00NzERMA8GA1UEMAwIRGF0dW0tNDgxETAPBgNVBDEMCERhdHVt
-LTQ5MREwDwYDVQQyDAhEYXR1bS01MDERMA8GA1UEMwwIRGF0dW0tNTExETAPBgNV
-BDQMCERhdHVtLTUyMREwDwYDVQQ1DAhEYXR1bS01MzERMA8GA1UENgwIRGF0dW0t
-NTQxETAPBgNVBEEMCERhdHVtLTY1MREwDwYDVQRIDAhEYXR1bS03MjCCASIwDQYJ
-KoZIhvcNAQEBBQADggEPADCCAQoCggEBAJYnLewiGCscZPEK+pGM/Aq4sb110jJm
-/HZ9r6DYNKOxTKsQubwFUf7Pv7JD1z8WBpfRJRVfxXuaUvgw2/rWB6I2yXjaV8CY
-7R4jZ2mZLFiw0nPjc2QNgOPW/sr+18VSZ9pzwL9FaOgnS78tmv7xzXUeVRfYARAf
-g4PQJDUOnU0Nhj7Q9QzVF82MGHixB7P8/kMjo5G8KHsW3lWCXNJP3M7aIR1MSDVu
-48BAzZ/9d7pUi5tAmroZaEZPg/0IrIg5YIDXXV4ALJROeL0BFDq9I7C9WB1MA2qH
-D0Z6lC9Hvz2FwZ60dIqwHzbXS/tlrmaPkxWsjDYmptVoEuvfsLtVlDsCAwEAATAN
-BgkqhkiG9w0BAQsFAAOCAQEAiujUu6TqhommQRetopMhd2Wq3qbbseWOc3YwT0rj
-NQMgp2eYjiGzQQaN7Atg/B0hrf3+0x0jtvPCRp8sHmHWsQjZuoLxYW++GLtbQDMj
-16VGNAAzKeceNTgBofri2jBDBFGVDuRIke9/6fkcB9peu1tpODYHcXRnpjkojzr/
-1P4XbhsogUxh3ph1VhEa9JBvFt6Rj9Nn3nIXRWN3UQH8W8LjgOYLo8AOVGPQaK7Y
-wnc/nafV5XDGV1TqdW4poAdyNSA2bRfi4Or1BaNcZg2dzBsyI5z8YrfP4ALGsmWH
-+QLQtWcOY2SBgW3gcPLWwNshzU/148/sz10DnM49y5P92Q==
+MIIG4zCCBcugAwIBAgIEUZgH9zANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQzWhcNMjQwNDMwMjE1OTQzWjCCA/ExEDAO
+BgNVBAMMB0RhdHVtLTMxEDAOBgNVBAQMB0RhdHVtLTQxEDAOBgNVBAUTB0RhdHVt
+LTUxCzAJBgNVBAYTAlVTMRAwDgYDVQQHDAdEYXR1bS03MQswCQYDVQQIDAJOWTEQ
+MA4GA1UECQwHRGF0dW0tOTERMA8GA1UECgwIRGF0dW0tMTAxETAPBgNVBAsMCERh
+dHVtLTExMREwDwYDVQQMDAhEYXR1bS0xMjERMA8GA1UEDQwIRGF0dW0tMTMxETAP
+BgNVBA4MCERhdHVtLTE0MREwDwYDVQQPDAhEYXR1bS0xNTERMA8GA1UEEAwIRGF0
+dW0tMTYxETAPBgNVBBEMCERhdHVtLTE3MREwDwYDVQQSDAhEYXR1bS0xODERMA8G
+A1UEEwwIRGF0dW0tMTkxETAPBgNVBBQMCERhdHVtLTIwMREwDwYDVQQVDAhEYXR1
+bS0yMTERMA8GA1UEFgwIRGF0dW0tMjIxETAPBgNVBBcMCERhdHVtLTIzMREwDwYD
+VQQYDAhEYXR1bS0yNDERMA8GA1UEGQwIRGF0dW0tMjUxETAPBgNVBBoMCERhdHVt
+LTI2MREwDwYDVQQbDAhEYXR1bS0yNzERMA8GA1UEHAwIRGF0dW0tMjgxETAPBgNV
+BB0MCERhdHVtLTI5MREwDwYDVQQeDAhEYXR1bS0zMDERMA8GA1UEHwwIRGF0dW0t
+MzExETAPBgNVBCAMCERhdHVtLTMyMREwDwYDVQQhDAhEYXR1bS0zMzERMA8GA1UE
+IgwIRGF0dW0tMzQxETAPBgNVBCMMCERhdHVtLTM1MREwDwYDVQQkDAhEYXR1bS0z
+NjERMA8GA1UEJQwIRGF0dW0tMzcxETAPBgNVBCYMCERhdHVtLTM4MREwDwYDVQQn
+DAhEYXR1bS0zOTERMA8GA1UEKAwIRGF0dW0tNDAxETAPBgNVBCkMCERhdHVtLTQx
+MREwDwYDVQQqDAhEYXR1bS00MjERMA8GA1UEKwwIRGF0dW0tNDMxETAPBgNVBCwM
+CERhdHVtLTQ0MREwDwYDVQQtDAhEYXR1bS00NTERMA8GA1UELhMIRGF0dW0tNDYx
+ETAPBgNVBC8MCERhdHVtLTQ3MREwDwYDVQQwDAhEYXR1bS00ODERMA8GA1UEMQwI
+RGF0dW0tNDkxETAPBgNVBDIMCERhdHVtLTUwMREwDwYDVQQzDAhEYXR1bS01MTER
+MA8GA1UENAwIRGF0dW0tNTIxETAPBgNVBDUMCERhdHVtLTUzMREwDwYDVQQ2DAhE
+YXR1bS01NDERMA8GA1UEQQwIRGF0dW0tNjUxETAPBgNVBEgMCERhdHVtLTcyMIIB
+IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvuPee340G2hE/gE8HHnzqJkH
+Q4FqJv4TuzYcH1b4XyozDGAUTXaJo+/vJOcuh3WUJbSKfFRipq6JC85QZutRkfZX
+v/+VzJz95KJwwMTfg6yTx36Hn0+MlTps1tuwsvOClqRsAZ+KMqbyO3gQy3LzykOE
+BBHvYweC+qVa9oZdIO1/OqHySdHSPZKsKrJRny0f604wYFtB+zWHtO7nbNG4QCzr
+vjyox4IidDX6KPJ1f4CsjeIxSn0qtldEKADGHmEfpzGILaLHo2G1xEj0jhdahfve
++BIpoJOTWbho0iDfAqE7P058ssM6XjX4y4dQ3tWhguRXI4pI5LsH5cubYJjA4wID
+AQABMA0GCSqGSIb3DQEBCwUAA4IBAQA4NnTRTEWrEYHQQ4AL9x6m1iT2zr3k3N67
+uwDQRiXqggr2Vtqz75N6DekU4KvsTpUFvl74HWTAZUKjjtryS/1sQIs9nSld/oEv
+iRYNoaXYTwI4Osng2LVC6uOZd5fAnqkbN3RdhbpqzwVBq/UPJgYC28mD2Wbn2axa
+wBOxR+RfJ7e53jwiTBBVHv9cO+3MqFvLeu4yMswUenN6dywL5VtkmjUWtzvrvWMr
+DL0eCmrdacYhbT/oRYRvgD6A72gI5SOBQ4sU+5t1fcYMkaRDr7woqh3/mY4LfthM
+Ya0joUdTxUqxSbPg4DjQNvawAFeI/KtCjDxjQulMtl7gs7Kqgmsb
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCWJy3sIhgrHGTx
-CvqRjPwKuLG9ddIyZvx2fa+g2DSjsUyrELm8BVH+z7+yQ9c/FgaX0SUVX8V7mlL4
-MNv61geiNsl42lfAmO0eI2dpmSxYsNJz43NkDYDj1v7K/tfFUmfac8C/RWjoJ0u/
-LZr+8c11HlUX2AEQH4OD0CQ1Dp1NDYY+0PUM1RfNjBh4sQez/P5DI6ORvCh7Ft5V
-glzST9zO2iEdTEg1buPAQM2f/Xe6VIubQJq6GWhGT4P9CKyIOWCA111eACyUTni9
-ARQ6vSOwvVgdTANqhw9GepQvR789hcGetHSKsB8210v7Za5mj5MVrIw2JqbVaBLr
-37C7VZQ7AgMBAAECggEAVo3LKP0WVXOOtGwRuGk+uKdyvbX3Ltqy2VLmNJ+s6FdB
-zLJdfobKl0oGRKpan6EAt+71o3aLjg6NmUgA5n0N9XIDfUjPoNQGi4L5D6QeLhnv
-lqIcWCZ4j93VDgsNMk+oUgK7rwZBzOEqBtAxMpkMSGDtyErZggPIeek3leYQwuMQ
-39/j91lGPHtL9R8VDBoQroToTsvY9vty3Amnq4LDJ7y11Ii522fDwg71kasVIkam
-/h8LeTqI5Za3t2Ps8XPTxG9Uigq6H59GpYbQ5dMzub2Q/s6+p7aw8Jv+jlyhi4Fu
-IBz493BKBTiImdzvqVBD2BThb18tNVjPS/DABDifkQKBgQDFAwEm8QMTp4SNoH+2
-yXUHlGAmYSn0YGo2Joc5lsxLNY1zkDeWRcv/J1AjLjWqPxDMKGd2viFu0RvnqPcO
-eaCtwCgCd9TX74qSTODHeJCBeySnKCpnw0bXmeQrXbbx5uZe84enyc8cdryIqAVk
-Hk6Ha1vvSZu87MKWQG2A6feYbQKBgQDDHHH6z6iPkYivQhnovaZpXO8qDvj2g63g
-t0rNptz8a0nZK1juWpWhYF2XuUR02aJ5R7x+GGqCQnLhT81V+Ttg57ksns4LkHCk
-oidG1OBqVoxaaAw5qbxGpCo1hMRfEkTXXKRscariYD3MYFX3Us/waHvWGhADLmqb
-52rJhx7GRwKBgQCSEGkxQu0CDGf1TPKDRZdzuCkVK2KcoUL9xNDq/IeYlyq5bEoa
-KsNU+AOtIZx+DWXZx3b2DX7iFzz2I0qQO9LKHzZKpidytVFqqH7axON2bCM/n0LZ
-TWlffeQx1rhFXuibqzh/SNs6AjpDozbkBKg6NHmjzlId3vdhyICnXE/KfQKBgQCT
-NBHWffeZod5zA7cSfotf8OrMW5GAQ2bbJM6+C8esdbG4tFibNCKyJ0dVokTAuDY5
-tGLE69znvAR6cz/jPm+LNCjkPkgMN4SU4XYqnY9XC0dHKjsXAjV3QoJJ8IpLhDgG
-F/JBkxyvQJc/a+tP9t3Fbr8HkJBGJi3uxBEwTM5uHwKBgGA/B1numoxH43GSnkJr
-NCsP2Q8IolpOaKSVYGegATkTsmgr6+OeMGG2tx30y0g4XWrng7jAYzn/iNlbyWLj
-NVS0G1yxKDprQ5yOD/wRse1iyu2EKcrjrt4t8kOLlfnak3e4PNEmxN1Vpb8w4ilw
-a3vKhW5e9vARQAHPTUFVgqei
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC+4957fjQbaET+
+ATwcefOomQdDgWom/hO7NhwfVvhfKjMMYBRNdomj7+8k5y6HdZQltIp8VGKmrokL
+zlBm61GR9le//5XMnP3konDAxN+DrJPHfoefT4yVOmzW27Cy84KWpGwBn4oypvI7
+eBDLcvPKQ4QEEe9jB4L6pVr2hl0g7X86ofJJ0dI9kqwqslGfLR/rTjBgW0H7NYe0
+7uds0bhALOu+PKjHgiJ0Nfoo8nV/gKyN4jFKfSq2V0QoAMYeYR+nMYgtosejYbXE
+SPSOF1qF+974Eimgk5NZuGjSIN8CoTs/TnyywzpeNfjLh1De1aGC5Fcjikjkuwfl
+y5tgmMDjAgMBAAECggEAeHU7FBrTrufhgZgt4ppiU+YdW0/zOJ/ku6KtpGkxWnw6
+snh+11MSEE18T4FDL1/XGOQQ79wgVKaW/Mg4nHmqg708KoCSewgmf3yyQjL6CRGC
+P8Vst+9u+0xfGkaP/p0DryQas/uFLemDultN3dSwWta4HAllUsyOrrRh7mdjpT6h
+YyRqVN9eo8pLApsQ4Ahow4Ut00bdSi32eOEy1VRhLCMnNa/Z7Fb4evczN3AOH+qv
+3CINABoMG0MJcluYN3W9qutSCz7vhG20r8Nxf3zlPg1CC0eJCP2vArlmgPHDNVN4
+F8QbNUCVdnNOfvtd35Y04Ud3jHtpxO0RDBgTlc2goQKBgQDzJ7ek394psAhw9ytp
+3XFAm0zkjr/3voF9MmCKxCSS1p8WSfjYZ9pJ2GOdiY648oF42kwS9kaUTIKONeCr
+m3pNz1ndZtMbzkmMBXUKEf0Kl78igyEY+4D0gsfY1lBkzVIiypppS3M0CUKudkFL
+czYIkCRHYds//oodGC2K4CxDFQKBgQDI+VnjrZZWsxI/rWkfGjITFmAFnp7HGTOB
+Md0A4WIOdL5rDXbycW2g+/5ya56h4j4evJALjA3nkhJ77Eza1Tf0CJCyfGyclXO4
+jjjOwm7Q0O4SMxGS4eSKe94bsXs5wxJZVVrxpXzfyRj+szQp2YkJoxGE0zh95Bf4
+lnGfAxpSFwKBgDQd/DfDoBuxVm3YHJ8JTr/5SYbnre/NDnYmORklJ22twNWHL2Y7
+BEe1sMxQcp3jpKqhp5Kc5M3ehFE07R37KkDJQ8q3wmIAWjU/6jEpX+JIWjhsgMiZ
+B6/g5DLu5LZmZ8d7Q5N0D5JEtd0tDZu9awR02MHQEK1rwnCwAPr2R6ZtAoGBAKu/
+5KDdLRiEyjie8rJAycBkI8VJrDlMAScMvOjOs+TUwhJsnFVOuDiWgfm4nQWNejb8
+QEGN/CgFPkSnSXrOMpYbZ8UQ7iTW1+FFsaiIovlTQ9FL0V3sLEpo1wRlpYBUg+7S
+MflGyrPYgMLR1Oda33Db6dHQTHvRnOa1cv5IQYsbAoGBANbD8okVET/Ct6FjO7xd
+LCB/SLYQP6yZ2ASuOSCznxuCIUIpIehklTYolBvcaov36dFwJ4h2tvfOBWwUfkc3
+IDKdsxO8O6r6605EkbqPLRQwXJn4F9WXl7rgsFTRdP2Vx9KvZ/gfsNzaREuy73cQ
+RE+ZlgSlISIgYJeBScwFU9UA
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client-all-the-oids.pem.digest.sha1 b/jstests/libs/client-all-the-oids.pem.digest.sha1
new file mode 100644
index 00000000000..f26c9661cee
--- /dev/null
+++ b/jstests/libs/client-all-the-oids.pem.digest.sha1
@@ -0,0 +1 @@
+71FD2BBCC95D54BCD6BCA7AEB1E82A0605944A64 \ No newline at end of file
diff --git a/jstests/libs/client-all-the-oids.pem.digest.sha256 b/jstests/libs/client-all-the-oids.pem.digest.sha256
new file mode 100644
index 00000000000..daf94063c5e
--- /dev/null
+++ b/jstests/libs/client-all-the-oids.pem.digest.sha256
@@ -0,0 +1 @@
+D4A432248459C54976437EAD1F2C970FE9448A687492BBE9989C13FAF3510065 \ No newline at end of file
diff --git a/jstests/libs/client-custom-oids.pem b/jstests/libs/client-custom-oids.pem
index 09e293c8316..bd32651276b 100644
--- a/jstests/libs/client-custom-oids.pem
+++ b/jstests/libs/client-custom-oids.pem
@@ -3,51 +3,51 @@
#
# Client certificate using non-standard OIDs.
-----BEGIN CERTIFICATE-----
-MIIDhzCCAm8CBAmmabowDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowgZsxCzAJBgNVBAYT
-AlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQ
-MA4GA1UECgwHTW9uZ29EQjETMBEGA1UECwwKS2VybmVsVXNlcjEPMA0GA1UEAwwG
-Y2xpZW50MRMwEQYDKgM4DApSYW5kb1ZhbHVlMRQwEgYDKgMtDAtWYWx1ZSxSYW5k
-bzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ+u0sFBYyAaUMulZe38
-Vbch5s6Etq/F/bIG3ic/XRVPWaOEwpT22t20EU4sfO7UW2FwSHk08xgDJbn1648N
-elJKzJsBulCdufkxK1POeWPdCnz3EKGO1TryEmw2RX+tXAS/dM+G5h6HMtSyrPqx
-Kdrosh9LA+NvpVFPhLutmapq18kLXU7I2RWBHqYCnK0D/iW2RRMHD3aUTiQAHRM2
-Kf+nU2R1lNVw4SIPrwr4o+H8HKeB6oxGQjtiIIGy0Fm1yCRhmx54t0fM9Jv07S+2
-3JCnu6U+EqLYqcj82qUuI7Wj0CZh51qrIAGt55yfV60mxFjXwR6wCAc9RWuYsFVP
-WAMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEARi92y/uGOWUDYSuocbdGYMMBk+8d
-tU2O+F8ZPjKHKjkzOAg6CThFqTdyV8NKLPv2d1uEre4SvnQImAgJ3p8iy6VfjR8W
-F4FhBox4lvLfCH0XFAf2lDWJVep2PY4h2sg4Vsr1yGWCgx+1Uf+TcP3RyJYjXHrJ
-qA7kZrpxiy38KChyrfBXUDjhbrJu7jEe8d68Fc0MaLeEyT7qqMOsQ2TBwJttIK49
-isZ0JXFuLKIzDZGFSJY0Iz8HRLE85Bt+bJMtDO4P0ZSrHU0P3UGT9Jdh+BKcggtv
-w7cvVsjsxWh1AyeqWTzoUkEAFh6fNVksjLIH8OKwJRaDFPmtxeW+TPdDzg==
+MIIDjDCCAnSgAwIBAgIEcLf2wDANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQzWhcNMjQwNDMwMjE1OTQzWjCBmzELMAkG
+A1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBD
+aXR5MRAwDgYDVQQKDAdNb25nb0RCMRMwEQYDVQQLDApLZXJuZWxVc2VyMQ8wDQYD
+VQQDDAZjbGllbnQxEzARBgMqAzgMClJhbmRvVmFsdWUxFDASBgMqAy0MC1ZhbHVl
+LFJhbmRvMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp+L/ayb/DnKq
+X5wjq2N9gbw+XhJAOKw2LJiCkHhcYbC+4ARO0DqKU+ptBLncKZ0BpBYVCSFIm//u
+gapPHEtXNLztBj81UV2aHOwF/XgotCIGwkJxVPKALO+87xYQ0zPMKBqP890XPidC
+d0KY/ItV36JOAzKa8ZmNZR/ChZvDMClT4iHwpEQ6FCMGaXJTqBA+vNiIn+tIc7Y1
+ZHgA3iTww+ruKC0u2pQdla+O/ImL/EWxCDtYcwKC4V64MWJ3RliUPoP88EB9i34g
+e1EH1r37QB9GRP4iX27TVZ07+cplHyNoOiVvZ+tVEzfQPDCZfxHYSsCOIEXxQqCJ
+Bq2txdnl/wIDAQABMA0GCSqGSIb3DQEBCwUAA4IBAQA0+Wuquxc1ajfPWwTquuL7
+J7pHP25542R7IdBKHTluWbVFVuxaGJ6IiE3uwfYNhWOkixRglkVZKfWXQT5e5hco
+DY2QE+pagJ50eTlG5g6BwH3O96q/HgeHegWwgB34IXh4n4m/B9+w+GDvtW1cdRzN
+rVphbwko68EwMZ1gSdRxei9zbCafKLbaUC5/obGZDkGipyMjD4abHBXfKH3VMM1o
+Kf6EdfXHJlrK8NhMrbgbLhu195bWwLKqOztsbvUsmP1u4lqeEX78miIVK+SgifWX
+TVT5DDOOSH9Xr68v1GRRRml15E4252qhQtDdowxD4vihKN1DsgzESvXDEpQwUYtt
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCfrtLBQWMgGlDL
-pWXt/FW3IebOhLavxf2yBt4nP10VT1mjhMKU9trdtBFOLHzu1FthcEh5NPMYAyW5
-9euPDXpSSsybAbpQnbn5MStTznlj3Qp89xChjtU68hJsNkV/rVwEv3TPhuYehzLU
-sqz6sSna6LIfSwPjb6VRT4S7rZmqatfJC11OyNkVgR6mApytA/4ltkUTBw92lE4k
-AB0TNin/p1NkdZTVcOEiD68K+KPh/ByngeqMRkI7YiCBstBZtcgkYZseeLdHzPSb
-9O0vttyQp7ulPhKi2KnI/NqlLiO1o9AmYedaqyABreecn1etJsRY18EesAgHPUVr
-mLBVT1gDAgMBAAECggEAFUfZMoQiT77yEZHDWcoNKlDMT62EIzzBqJ4dsSFSqGpg
-ydgBjpSvamh6/e4T4EhQvVWXcv/JfeO9fWD2uaPUL29kgSvjxqaeiEUzPwH/T32/
-zhOnFcDRTf/A0McS0Acsgj15tcaGmH7wGUSOpQJDT7c/Nchrhj30zDdKuzBRkFJi
-5XmYtAv/81++/XY2VumbznqjZhrR0ATMG94ciSjQi/3PKO0uFHOiux28MW2PMEN/
-FMlCFcw5NLpuwcAoCCM+61KyJBoc/YvKp/dZGpTsrWkuLtCWTD9DlzTiKCjo+EHx
-VJRrrXOFweiVRQuDrSo9gbK2a1Xt0I+zCAvuAOZRAQKBgQDU04NhnMka2Aq1bhje
-Fu3gCCRukbDod8D6Yv9e1gjFEX2gJWDkLTfQO1KFoDM9pzTuyFuKFax5PRW9RLKG
-ZrnRs7gaVcp6i2uVI2tz/UbRrgvZ9jq8Gbo0setuVYoD0Y0ZUOX+rqfVak5+e3Wj
-f9ukTkjX9DIgldNxzMgDQIF/wQKBgQDAE3jpiHlw/s4ZGyc+hiSTeR+WlgYE6Wko
-8NTh5vbThoJ6XKy5hQ7w7jqSyM6kuaxoiyKoembuTq3U5mPzplQZL5qC/PapUBVk
-wP43TvxJbKqqhV6FO4RYpRgQ478Orj9Z2E4eMnSSPlESjngPQTop8zhw0I5m0Cjx
-0WCXIe0IwwKBgCBQqW9F3idMTHv15qK6Oo48zkNXrdPucwfRxlLBDv3VRQzvAAJF
-d2cPytztUTp4TApBs9yIo/KYutdNOgo8SNS1hCvDgQYQa1pu0V8AQyONWNFUmOB8
-y5A6v7O2G0mvJMyGQxXjsSovhRGhb2BPBquxE1BvDLlz5nIuFOShg8hBAoGAAYqm
-d8leoCeLY+wx3nCZLo3UURMXLUbqTyfPrZh69quntG+1+y80NX7T/YWbEvtihNxJ
-BO0mklcTUhgfST9WgXU+WjrJiAZahZp+79a0c6ppnEDBx3P41fVNQiVxzR5c582y
-os9o3Buf7vQxxn2Rh/CpzU3/NpgJHBfAHLZq/p0CgYEAljC+PG43NftVpfb+mweO
-5H0oaKD/gFEugmDndoV6yVAksPrqULGkt9XtLMomUNx1KM38DdL3jX+EaUf4RnO8
-dPdO2VBsjR1JJeckvBoOZFXo+EXWs7n0jldSQTiLYZh1/ZuvsOaGNoyvceM/YAkX
-nv2FExB8H79WBJ6xTFhC6h0=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCn4v9rJv8Ocqpf
+nCOrY32BvD5eEkA4rDYsmIKQeFxhsL7gBE7QOopT6m0EudwpnQGkFhUJIUib/+6B
+qk8cS1c0vO0GPzVRXZoc7AX9eCi0IgbCQnFU8oAs77zvFhDTM8woGo/z3Rc+J0J3
+Qpj8i1Xfok4DMprxmY1lH8KFm8MwKVPiIfCkRDoUIwZpclOoED682Iif60hztjVk
+eADeJPDD6u4oLS7alB2Vr478iYv8RbEIO1hzAoLhXrgxYndGWJQ+g/zwQH2LfiB7
+UQfWvftAH0ZE/iJfbtNVnTv5ymUfI2g6JW9n61UTN9A8MJl/EdhKwI4gRfFCoIkG
+ra3F2eX/AgMBAAECggEATKgVP/PaWdp5eJZuov8We3pcb8+di0L2qX4pf5W1eNWf
+EeJlqiZQquhLRvEmWcnayfVbPYP5B2HgoUwGO0EbXHU3NLb/vVsj1zjds1J+I2G1
+/FUiMktXwyzj87b7j7QC7/zQ5eR5jGOYsaOy/v0QBMCzJjqhDNez/Ax4YVEx2ncG
+qFXQiVBwVtbmNFa6y4G/3SYbLjTmnkRUvjgUrWO+3Y8cHGbzugGMKhmfQKElMnRS
+Tflrg4WhtHHaI2gaIpmVHuIw5MRoIs9rMUV9IVfLrcmG/KjxVha+LlRAJFi0tMCC
+kKSb9YLS4E/uFAAWaW5qmDfGEU3gPT1oYwsAob/wAQKBgQDcwrxj3caDgnFWPh2z
+vy9e08Pvh71V7kJDVDoqrZCRlduLg/9qOP0sPHSRzWARr8ND8eqZtBv0lDvhAtfW
+w/flt0Hon0M1QTIMpAr9WMWrCz1g7RPvpgNwOVPmOi89Jgh4W6zICyRHm75NOSbT
+zO9HhEzEiKWu9MUorbTly4DyAQKBgQDCr5iHwKGPxRCbBx4nXhyPTCowI5L1MpS8
+n8mZx2Iz+6vb9JqWL7qMGDJ05py3E7m4HK7E3O+dGc9SVDLW5WDsdm2BqINZRSI+
+VhZRVmdZOiRYM4ogHexKqxDZzGWpRy9WhOywT1bpB56euw4QNsyJQivwqY7LKFZz
+rZGlESrX/wKBgQC1ErmphE/+sHC8F4kPVULKmhH9l64SHLKXPS/Ur7aD45JHlkZa
+31GyBghrSzSAbVVRls0hs5y2eRvATS+yxdzAvBbAclmTBd3Cho9JDJZd3INEzFDs
+4ZOyaiNKFPGIS3jpF/DZyGHCpplqB/W0BkVBuN+q2JZlsflBi3F0hv5GAQKBgFWR
+omQAacJsJjlNbpZ1Ce591okkCaKV4cPqI0zg0qvwcQATSaK7Ra3vsLWq6rSZCeb/
+TF2gkfyl7HbOJS5I0Un9X3I+o8Sn2z40zkhfxrr0ECdoN8yX+lRzTcu8x+4YKJlJ
+gVKY/KUdwT0ZEDxWKZ4mpHN5wxZOG3lqj3pSylb3AoGAVMf7yegFepBN0+4njyq/
+2XETNhk2MN/oplWy3XIQh8tL+KaFeFZCEmjPS1impLzg725CPwuL7/T+WOvx9zvx
+aJUY2no2nqsEF5p/ov9r2/Yy9uJGHS/b7dgPwHcwf4/uPcrq5qlStRQNGI/yqR88
+kebD0hJpUTbpKfsb0j/WI0w=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client-custom-oids.pem.digest.sha1 b/jstests/libs/client-custom-oids.pem.digest.sha1
new file mode 100644
index 00000000000..fb28c8fb823
--- /dev/null
+++ b/jstests/libs/client-custom-oids.pem.digest.sha1
@@ -0,0 +1 @@
+FF12C0191181574BBD7C455E746D32A427D746C0 \ No newline at end of file
diff --git a/jstests/libs/client-custom-oids.pem.digest.sha256 b/jstests/libs/client-custom-oids.pem.digest.sha256
new file mode 100644
index 00000000000..6dc0e47eb01
--- /dev/null
+++ b/jstests/libs/client-custom-oids.pem.digest.sha256
@@ -0,0 +1 @@
+95A5EF3F2960CACE68851F62DD1B991758A5858288A688278B72DFD7C1DD0DC9 \ No newline at end of file
diff --git a/jstests/libs/client-multivalue-rdn.pem b/jstests/libs/client-multivalue-rdn.pem
index 64992a1dbd0..a97355e002f 100644
--- a/jstests/libs/client-multivalue-rdn.pem
+++ b/jstests/libs/client-multivalue-rdn.pem
@@ -2,50 +2,51 @@
# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml client-multivalue-rdn.pem
#
# Client certificate containing multivalue RDNs
+
-----BEGIN CERTIFICATE-----
-MIIDUzCCAjsCBDRCy2AwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
+MIIDUzCCAjsCBES9zCwwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MTAwMjIzMjc0MFoXDTI5MDkyOTIzMjc0MFowaDEyMA0GA1UEAwwG
+IENBMB4XDTIyMDIwMzIxNTk0M1oXDTI0MDUwNzIxNTk0M1owaDEyMA0GA1UEAwwG
Y2xpZW50MA4GA1UECgwHTW9uZ29EQjARBgNVBAsMCktlcm5lbFVzZXIxMjAJBgNV
BAYTAlVTMA8GA1UECAwITmV3IFlvcmswFAYDVQQHDA1OZXcgWW9yayBDaXR5MIIB
-IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwBXOGiYrGd5t5FP8Dw1dhRxP
-DkPzcfknXZY4gcKKsQPeZQagS1j4hRhjZeA2/c8Xmh6QFB/PrRvk+tkUajZmQS3N
-rkP8KDEskYgOpdGYeEyzFLNjwvxg1jJRj4PDt1jL2EbdmzkSX/NYLR1JeYE1O55p
-FwIMxuXNjCASlJ6Zan/VP0bYNPH3j7VXlf+o4875y5OauUtPEexG7G+ouuD4VTgg
-amZtSO6ZkpTPUpwSl8K9HbuLgZq8ZMJlp34ob2OYU9zzJZfDqcHVtLKHn1or6ZiT
-VnDNjnWS4U2dIaEw8u8ExnfmWrm6cUxWV3yypqffJR5JBtAgrg9VRgRrwUu3wQID
-AQABMA0GCSqGSIb3DQEBCwUAA4IBAQC5zTFZKQ6B5fieoM6O/XZyYsh9eRcdH/0c
-lTQgkMRGOnX3xRSHtJsy4HnhY4zfCG8R+9x9mbHJrPwkMJTtXqlDaskea4eAEX/s
-9F0ql7wjFlDyE5sDL/mGKwRXlDIoLXPQ82z8NMepFmGUN4mNpQJA2ya7yDuKg92t
-HVD828ZN9MrCzi9Oepb4BHVc6w9CawmbDsjxsIvO6Ssaza2hLOrTbdcxlfLjv9tp
-jn3mbyaWdUKMxiab9cTo7ejiGQp/vnlLuiNf5F3jMaHSVuggmvUYKNlCQnD1YB37
-8uHV+lEzGNjSiVOSwadyjJXb5ZVrSX8bTMLCoZShs1MTej1abEru
+IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6Osw6+wVACn7qj/48i7+V+zm
+h0c5IxH4ba8a640fHOnScUlpWz4UyNiBIyF36ITTH9KJoXdcQWH51S5iHUrgZUbq
+GaSUuS+LO5PRDu+55W67L6+5Y1Qq3swCLeYi5rxOoMiHALY8ert6agAeoTSPv/AD
+3Us9P9n/H83qneFBHdb8yjMeZj8hiCIt8mC62w79pJCLQyDHiKKeSFtEqBCAhD3h
+yGkb45pjIAKUevbEDZvCIhpzT5FuwUgbhWVBuoEoX5apwA+49u0Ots+jbxcJSTkn
+y1gFJmu9PF6lvqwNq30jATvarFxHYB2BZjLRbSKH4TE0ITBiIbVL9H7tKqhP5QID
+AQABMA0GCSqGSIb3DQEBCwUAA4IBAQCPxLvlCIZLq7uW8ok74AC2MG+2TmmIyZTQ
+m/FRA7xRfDtueMcN6Zq49DrbuTtOoLC6tNt4X3o+wU+RTGoiRwR4LBltOF6dUz24
+4KbludShxMo2AsWELfRJCKGnZOi3WP8sA+nenSNPoWRzZkw4Tn4QWSFyzGOGIS77
+eTCkJX4BnQwMoknINUkxWiE4/AITe06hafA+YBW1keJUd7ouOjdCP89EVriR+p28
+OyoQyqvFwW6+gL6/iL2V+o9seP6b4vn7Rn25sDRoHeJVzUP/SyZVka5wTh80Pk3x
+OOZYWg8+enNza9SVAK2ReNNjaSlt+nByoZNjLOwnJQ6O7sDviINI
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
-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
+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
-----END RSA PRIVATE KEY-----
diff --git a/jstests/libs/client-multivalue-rdn.pem.digest.sha1 b/jstests/libs/client-multivalue-rdn.pem.digest.sha1
new file mode 100644
index 00000000000..6e49497ab02
--- /dev/null
+++ b/jstests/libs/client-multivalue-rdn.pem.digest.sha1
@@ -0,0 +1 @@
+C544D25C0899ADC557BE6D274D47F49BD1686886 \ No newline at end of file
diff --git a/jstests/libs/client-multivalue-rdn.pem.digest.sha256 b/jstests/libs/client-multivalue-rdn.pem.digest.sha256
new file mode 100644
index 00000000000..30404cb1f29
--- /dev/null
+++ b/jstests/libs/client-multivalue-rdn.pem.digest.sha256
@@ -0,0 +1 @@
+85548F4F4C885AEDC9B4C12C10EA3C80F1F2B3F77BD8DED940868C6B3F5573F9 \ No newline at end of file
diff --git a/jstests/libs/client-self-signed.pem b/jstests/libs/client-self-signed.pem
index fa111ae0082..6ce670e4d2e 100644
--- a/jstests/libs/client-self-signed.pem
+++ b/jstests/libs/client-self-signed.pem
@@ -3,53 +3,54 @@
#
# A basic self-signed certificate.
-----BEGIN CERTIFICATE-----
-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
+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
+7TyUtA==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDcfOlAU7kUMXx8
-VRzcb4qRPvi2NwF/7vZTxHjj1npbSUFEu8lx3DqTluwUGEZxDFrL8zLDbfdTN7dt
-GIfuR3KATxIK/eHkx0/wWnXk8T2bpwTxIZbIsAnI6axH46B9CoDCaJ0/IiYE/Jxv
-EoAuRbkhReT5+iA+1LYE8vPcPG4r+Ra0BzSg9pYiLENhGqgadWqaRMOUDSk3+Nde
-DJemdVj6IFUzT2APk2L99by/ka8ap+52rfnoMIfx3YDhcr7rnERE3d67Q7woCP/O
-cx7cjF0+ezKhIUkgEPwfgKlxR75rvFgnF03ISLOo4mROqeg2HN0P55YhvFIqgirb
-2oPSLyGjAgMBAAECggEAZa08qytwt/0yGOvvCUBuuBg//VdUW7jI40xBK2AmwJ4B
-eT7X4KfcY18/suyW318BJ/gYusKlQTz6W1bqqFlOVhkgiu0VFLlNBdvRbihJbtQQ
-lVoV/KoheQM5LVWtFryXMA+qJAkNW1NamGYBslT40H044IYWBKN25MVc63z6mU/D
-esOigG4hGNwS2AsWAmvCFNa93z9Ql2KSp8jygHiYYcEx1QuQS3YVV5SyQ1GicgWs
-waVUPM5W6Ud5jZZqmvIs6ILocbY4JrgM39QCKRs2eLMwUPr8rhQG9lME7Rq3DsDv
-UABc/XYOHMryQghQzMM9HH57r89PTa4Wn4O9+QyeMQKBgQD3PFDG56I+ASUDKyOE
-2YOuzybXZOUC/DJ94iSQguw5neURyyHGDuu9w4s9CW8tRWy58PWyA1xySYlSwiqw
-uRqFQ18gwjkIC5ssepLMLCTyUtMHbBhsfxgXNv2k/sHnHLQVJesUP0tj0K8o0QxP
-vVyZGaVsl/kZ4VSRcTKaMWd4jQKBgQDkTduwUdRoVV31e1Lbgu6/ZZj+wIDN9qCj
-S1JzYbfFiNduhUEoTQGQI5zZiLukPl4zBTPRWrwqdvVnSkMFsrqaNBmt2zyHciIi
-nSx9vpJ8a/B3NFQ4OKz0VrtnhN+PkRp5G288c1Rkz4i+QJaTKPCzpCoR+GXUeexj
-v/x0PC1u7wKBgBOqc45uzGP8OVJ4MvoVRzk3dxJ5DxJetzF2NIxeLaYjnh39N3GG
-rE/K5x9yyaojNJPRy+leBRN+L/MqSLUH9EkXY9C6QkkWi0BNe7HL7SBtYCXd/k9b
-CLKICEMAlLHqgZSREJLqufd1mQk5H66UFHKFLLhnmkPpvY1YILtNJLrdAoGAc2FJ
-0s04PNZP2v1NfbSpNj+BV9YwAmdO/dfWPou3FXS385oSuOxaCt+EqIeq1THT55MM
-ghSKHifqlB36y0ltdvs3sx6mc4lh6P5n+tCyNYFTkNr4aUVzWzTuFz4WwfbCW0xb
-JkDe+OfNouD/eDXrl84ymMxhokVQC4V+b7vt9i8CgYBIm1g8Y9Z+ClhfLJqlkA0s
-Sszi42y7TQSShUy5SlKo2ppFcM+i+vj38msNPI2QnFwNmjf5tkIqMRTOif8XOT5p
-NR0pv/t/m1GPMOSQPPqxbgXSXWprd8lgztZLImANRYDU8Y+3hXa1zk5mT6BZ0fxN
-YF6hOXXbbMh9MAmkhZXkZw==
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDWf/RWQ3bKJv6M
+ZpKSKloSfaMngqGY9eLEtXMuP5jFdQ3XyZk1wDUg3UuC5yL+ybZRCePdSWF9598g
+aBTsLZopdvnU5V34IdJ9jAv1j5Ji2iOYMVCD0bJkdY4L2Gg2FuifOIwZFF6o4SCw
+jqidvzxDBWjScjcAN4hqJlc9WjFEF2Y2DvmwqNHcXmwWmV9zH8A0Zgqb9uMtmCPX
+zWbyF05kt1eUTXryj/JSVOHjJRztOh1N/oRGOOJCTvKfnZc5BBbtojipQamK/TdC
+prw/s+QzNbHWJPQeDVN/J7GW0QpzB8U/o4E+vbbsmGX1lRoCmU3fkjWYS51EifFT
+2qVYrFBpAgMBAAECggEAV9fI4Xb5c+oqPqdXCSLtBjuLkIev1CuGddZ1WBBVaS/5
+vlBiPR/84fuei/pKW5uR3Xg2aA5ALcbCmsvlHZ/DTY3a3HQeWprHUAEFeMgWRANf
+plkzxvgenYOC65jxfI0/MM2Amli8N18S+xtBNHD3pd7WQbDik2UqqYYQHiEMofxP
+PvE51/kuPY3F1nzQot87N+EINSRrkvzT2S+4qC8+QJ8Kocn8i+ETuESoWiyXAAFT
+4e5AsF7QiXcTaM9T/SjysRrzLkyXuGimNxhlygc1goaRVSwSdgwM81OckMYmBjcd
+FhZGCDOn5LKSl5DAi//zwaKqZ54v7dgPbHx8YakkDQKBgQDsyy7BGwZgCNrsEaUH
+JLVF8bG1jQPmXfmBGJrERfkxUwMcPzhBqXsKaJDIBv2yh/82XW4fytjfajxhT4ej
+XZshOXmOKWd63sh4MFYWmbVpoWW5pll4PGcE0kpyGugzGM6Y15pZkf+x+GZvECKQ
+KPn23TJBS2Kaf9wjUMgvYPbgvwKBgQDn5dvkhWP3YoWrzEV1PTgzNVHZDt3rhgvm
+MUVojlb/A9xu+/NZkIcOJi2qZ+aodLK7y5Ugjae//x3hnguWFyFY4hIE67HzB4Dx
+PukZiRBxpOq+uHdUmfHmGkX9XrchFJn+lQs5QkwSvjQge3HBWLxAwp3M9ic2+x+8
+5Rzs935w1wKBgCdchwMWiPLBxhJjxHjxgyiDSrURIcrTaDwraN6jew7V67hwUduo
+XomWZCq77sQUkznoQfwK7g4FTNAoNjXTw4u8UBZvj4H/Mne4ITdUibFrYMuBeXHh
+KIbGphVdn6eOwhjqDgBBoq1kyzI/Dl/ET/jXQBlWfKeOBXvhW8V0atVlAoGAZnyr
+5h8dwyODuB2bROk9gUQ7XBa59XFUqPN1nXPq9uGZ9mLbdeXuCk7NN9abli+dHmon
+CjAQx0XUyvWyYS7vyfx/wjT4fFQApJ4NHv/4iIE+TfPwqS8wPWW3MPc/MBuOw3jT
+cQbf4Bi3qPNlnvG8oVJhs0fGpQHvUOhhFEl9VBkCgYEA2Ush5K/bG4b2DDnzDFxT
+whAzUYrJO7/6u1N9cTvXmwqVkBFtnjA//sPJesPiYiz0nYFHtxco/H26hdY6vP8A
+xrlZiUZu5rxF1BgMdjl13NQUWdyTB3VHxKsNFytUijRbpZsj1vBZgh2IiQNVuzf3
+4m6vQeGHRETrgkJuX2sCWSU=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client-self-signed.pem.digest.sha1 b/jstests/libs/client-self-signed.pem.digest.sha1
new file mode 100644
index 00000000000..e4911a6c710
--- /dev/null
+++ b/jstests/libs/client-self-signed.pem.digest.sha1
@@ -0,0 +1 @@
+F65F9DD67A60BFB5AA7CE23A0E39869EBD23694D \ No newline at end of file
diff --git a/jstests/libs/client-self-signed.pem.digest.sha256 b/jstests/libs/client-self-signed.pem.digest.sha256
new file mode 100644
index 00000000000..d979ba81508
--- /dev/null
+++ b/jstests/libs/client-self-signed.pem.digest.sha256
@@ -0,0 +1 @@
+902810474F735BF234C986943328A7248C3EB2E83EF7D5528F4A051306129CF1 \ No newline at end of file
diff --git a/jstests/libs/client.pem b/jstests/libs/client.pem
index 2f2c6e71843..251cef82ff5 100644
--- a/jstests/libs/client.pem
+++ b/jstests/libs/client.pem
@@ -3,52 +3,52 @@
#
# General purpose client certificate.
-----BEGIN CERTIFICATE-----
-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
+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
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQChwxZmhXIUlErr
-Na+gpnBjMigZPXakQLvpWZ02PBbXCfwLAPfEw5B2QH7Y01pxnFiGKY60CiMr1lpA
-IcY60Po4MjzJEVOn1xaVrcaXrD8nCxk8WgndRsd6L7O36etA+zlrndTZLyB1RZza
-xrcuKJ8fELAEFfDdrZOJz1IZ82S81N3U8CX4t8HSKtMBhRTskGxDFGGKrpm9i4ly
-WPcKLxHW5N0C7gBpyFsB6cOs87VFOtL2/iQBaOsF5aRuvNMvuyxtwXy8prJXzh7d
-8N5WaXa8qnR0WW5Kwgs+Snuzi6LD88hGRUv99ZPNFrRYfUPR9nerc+DcsBXklUAD
-1CgKXq+/AgMBAAECggEBAJNaNeaP+tp6N0DJd8G8u7Xws4xCa/e1rDcl1crYs+mR
-A9I2QH0xtD+0Apia9tF1HUKhSogAkAdXzICNA5kCUlysjqiOKwlCKiWQ1c3GLwTu
-3D8YudGirwVDvM90u0NHVggNDx4ECuoozniP+b+Ha2ON/PjLz8zvV+16OIzBJWvI
-fUkeuyHWsYrh5wNdjW9pT0+N85q9pzuGGthoshR4d5z2bKhm9MKA8mz1p3DMS7a3
-F2AiJPWkvzUksZ/h/WXOk19DhmG7lHkNEzfm/RsUjfswx0Eoz3gmNkH7oS3yYNJD
-yDHt6553zaP0UA+mJzaHqaw+JN1Vxdva+IYNLs+ekLkCgYEA1kjar3m7RiGXu8ZL
-lew3Hhwp0W4PjhfohdLAhyLAbL+8fQl7Blz21wz9/E77JpFQUmpfWhD9V39gvpk9
-X3/dhAX2dbZFphWEPNReF5oWDDiQzZLnfv3UqKQ3/Q58hKhujINIIvPbqyhDz4AW
-zhLKN/JLmNo5mquWOGRvvAcoweMCgYEAwUC0xrZqf8G6y6JGk24u3coY9dmkohNZ
-L/GfKK059b/Px0k05WaIXRxKWlRhIHQjhqVoctjd061WDgHoa8jkS5ARbqoxJeZI
-izx11MDfbdykv/rIm+mpXl1B/WjQ+oV8wg5J8Sz5o8bXlcr7SlWoj/bOFDgfUsG2
-cTBdLx8KEXUCgYEAw8CILfcZkmaLs1jhodLJQzNdLFnL0fWbT+0IPisL+AxsBxmL
-DnQMdsYCm+QW4NOsua088A1HMhBF87gPbddkKAA+dqgNFjzfsaYbUppLe9yMw49o
-9QSyqWBjWURLkfBAFRK06mE1EjVVRRBxRM27d8JbNwZbyyTmtRtjSzSLEhsCgYEA
-qMTrm0afh2cWzNOxMvvcrhDa74nc/zZKg1ZOGuX9YiLbQD0sltKOcFJOlMhv8jm6
-9NHrf7DpOP1908nSwp600VDGCJFVTrXn0MFCXkT6WyWAM7C+FXtgUGq9QKOTLdX5
-+DcmWBthAKicidK01lwsU13E51+D63AE9qC4IHjJACkCgYBlUwyanKuhhmKMJo6b
-PBhpUAruP9LRIzoYYlGZcZhaJXKyfrzc0pMM0Xmxk0avG6yfvttu4jndeK/dPjwY
-Fbp6+x+iWUykgPbDMMij1WlC7p/RijenN+vQlHzhB+Zyl8jMjpANHnF2PunaaNa2
-K0ZXGPQcmZrvdOPG7+q9wMMVxg==
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDL3JfCFldvfFVe
+p9VcMcfr61uVAYBLE7nHNs0/bKOEAsQFrwVgyRAYEaBl4xMdABbsIGmqhmoXwRXE
+22E38oP6sFG3UJN3AW7ibvpM7ws8VFc9BpCCfqMtDztc95WPQt10auQ+3Owvu4Nf
+CfdY+cQX9MCn+rI79AqfihvVI08B3N8btdrST0VNdsKOAqheROJ8qk78+hbNy/Sa
+up+Z8EnAIxExO48FeFulk3XlJa68YBx0dMnIsnxCxmFkpy77w/7iyBNjxCNn8JcK
+SnmcfnRYIcf8U78PneqXUw+3ZLP6EswImk+d0lSZLryackOOUWnLNcsZtgShQTTz
+dhkFUsx5AgMBAAECggEAPJH+RRx+PhGjC8yyCAKCdAYp38viYmwp9pbBxOZybvaj
+Z0zpPCiBL6WNEri1JRixttaqjpABVa142lSUPhtAO2vH27+FEQbL+1sd413i6Lnm
+catRpHQb53dvG+Az/6zOP5jC2CqrwkLkdYhwhW8wZC3EUCSccFPCFETkoB8tik+d
+L7Ri+mnKuYeAo0gNzOkXs9jl4ztCeFovobulIf8y1kwHdcPme5TYK7LdS/32A+et
+ZqglgzLGNglucAXbdknuUKXMA/khHpM3xQeI6oC4H57i6Iq9tIZm3fTwtCrJ/GRG
+ocFkjeEc3KRVASfgkmihEYtxLegm0U7B0IIpNPlYAQKBgQD+dEYb7gdVTsHPPPxW
+w1PgqnkwmGlGLItLrXXazHWlISAUJw0yeeLAXJ3INL5RIIis/EfifxFXohC+UUvK
+LHBmOZo7CSVfobzJL838pm9UajONd771jMCib2tIBMtOvir3vfCraoISTCHgsxI9
+52t5Cuxv3QuDS3LJHzV6HXluyQKBgQDNGaM/ORiKWcKzOjE3dMbgNGtCNCtZhb2B
+OUStsd2n6h9qZmB5lLDnNyUZnYjJEyRoVt3caRLSDa1f2T42ywxvtpZvQlyll6hB
+plPqvSMS4g8CrTXV7oLj+GuwcGWsPTDIOOMx/PfE9bznMNRTIxiXAcCXRm4SWsgR
+zrshBUPYMQKBgQDfxB7Xdvap9Y2IksgSAMnle+UBcDa8CHYjAhLva/hVVBEix8ja
+R8e5hHkY1BE9xM+M2Hra2wXEO/hfdZyh2Xyq2SMhoYRlWhVsE4chFLg40wAs+05K
+IBJThoogll64C5I7taRNCmgCcUMlmDSFjdq8YnfUU95JAvOZnMFpdzwPyQKBgFAj
+T1TZs0wDjH7JIwffGgHqmWoxxiphhk0imkIf+FKuuP2y6Mk4nvKI6ncaxaKDVztp
+jaCccZ0fePm1gYiZR8+ykQ8B5/9PxY95NNrIchbjuye5lAp1+jCnFTTIhgGJmzDw
+gV070Xfk6J2Qx7WARhBiv+SbwVBspjXHB/j7/KlRAoGAPANseZ33ViApVcNM/Y/K
+RzUeTP+sqLtZ/CUrSLFxmE+++BMU1fZ10Xn+al/4Unc7dMZxh5+mgKEmnBjYo1ey
+NfvoxL+aNtccVkueNu1A/UsmGZwMW2ThQfUvwbrJHIT0XJcjdlSnvnqzNwLiejo3
+/G+YoOXeyZHGkIQfo560RK4=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client.pem.digest.sha1 b/jstests/libs/client.pem.digest.sha1
new file mode 100644
index 00000000000..bdc762f36c7
--- /dev/null
+++ b/jstests/libs/client.pem.digest.sha1
@@ -0,0 +1 @@
+5894EAB5181D5411D4916F70B2CDFEEBA7445EE5 \ No newline at end of file
diff --git a/jstests/libs/client.pem.digest.sha256 b/jstests/libs/client.pem.digest.sha256
new file mode 100644
index 00000000000..9de62d73900
--- /dev/null
+++ b/jstests/libs/client.pem.digest.sha256
@@ -0,0 +1 @@
+67A67B32FC253E12412FFC7D6A3C410F3BECDC10A45ACBC8BF422F790D4E818F \ No newline at end of file
diff --git a/jstests/libs/client_email.pem b/jstests/libs/client_email.pem
index a629017836d..069a8a3b757 100644
--- a/jstests/libs/client_email.pem
+++ b/jstests/libs/client_email.pem
@@ -3,53 +3,53 @@
#
# Client certificate containing an email address. Includes authorizations for queryable backup.
-----BEGIN CERTIFICATE-----
-MIIDwjCCAqoCBDvsc9cwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowgZQxCzAJBgNVBAYT
-AlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQ
-MA4GA1UECgwHTW9uZ29EQjETMBEGA1UECwwKS2VybmVsVXNlcjEPMA0GA1UEAwwG
-Y2xpZW50MSIwIAYJKoZIhvcNAQkBFhNleGFtcGxlQG1vbmdvZGIuY29tMIIBIjAN
-BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1OJRskc2foLNijwL6gJmIZ9KK/lJ
-mTUlAAQZxECbtxFHeonBfH/p9wu/ylBtby3z0nR1o34dQu305a3r1n8PblhUpAtp
-DBt68SbxpTC+0p5LETyPOii/BoDXnTYmjFhUerh9VvWPdQAH/DBs4URYNslpzh1g
-kEeFxtSfX0vqFVi51ge7WNeJe/CJSva5AUun5jJxrHPLvvGk6X+z4EdEYCblU+H6
-JgpP7r9PwCq22d2kVnboJvBPV3FcHK7tcjXC5NfhY5doDUZKIUTdlQmCn2FDpXRN
-36+h2Mq0b6qKLK0ISkaJ8uWkZqld52zcNyxZmnr/4R5XR5OBvTg0L2tiuwIDAQAB
-o0AwPjA8BgsrBgEEAYKOKQIBAQQtMSswDwwGYmFja3VwDAVhZG1pbjAYDA9yZWFk
-QW55RGF0YWJhc2UMBWFkbWluMA0GCSqGSIb3DQEBCwUAA4IBAQCftCbs4rVnDVZH
-EN/OkdfZMAZyZA0G4uCIy9ef2+cUsuvfwy5n7Ga7kgpzETq/t4gUzfhsJ21RlQFW
-t777gIS6qhKw0Rd1uQOi+iXRofaqFxOBw+7Md/cYIfAc784foxDvvmYeQUt1HZBS
-sy35sThZqOd1+AwEeS88+jWyyDFYqjFFKZcWk9KsS8BvlJrXnfA1gK1WWUcp57Ha
-1yCJpx05KoA7Nj77195fDSDVd2w1+fR1U417TgxfJl19vQlXpMFD2c6vtiuEvfES
-N35wMmxohA8VkQUd6DiExIBbhH1LqIE++M2EBjs3Q2Yevy4PLKy1lc9mKz2KzA8f
-m05tjE7I
+MIIDxzCCAq+gAwIBAgIEVcV3GzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQzWhcNMjQwNDMwMjE1OTQzWjCBlDELMAkG
+A1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBD
+aXR5MRAwDgYDVQQKDAdNb25nb0RCMRMwEQYDVQQLDApLZXJuZWxVc2VyMQ8wDQYD
+VQQDDAZjbGllbnQxIjAgBgkqhkiG9w0BCQEWE2V4YW1wbGVAbW9uZ29kYi5jb20w
+ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCh1x2IV4tVqxh2X/2FDKHE
+ub6bTLnqj0kSVDty/c0egluLcwGxoN8x5Yb+aoRscwh+hHsn00rIPLMEqu/MbKAO
+smKIdDnQXrQ5gbfvqcJbQyIYoFn8RafQXvDdzhTtEt9Pq4sgVGpEFytrQdjzV8eL
+nKAc7B4PubAC++byH67T+BR5iRXcjw1aDIDpIS82/8r3R/lEVdQSvQi5vUy7xhH+
+ANpYJvreNdzG9MKHAYH3pxak//eZyDbUL1xheXaSyNnCbCnnxBnHqdiuSHzmXXgn
+mjC++8gMlu2Bor+7FxGRBjqihACdcbnx7PF1fwiyBNaUJ3JWkve94kozn6TQV0d5
+AgMBAAGjQDA+MDwGCysGAQQBgo4pAgEBBC0xKzAPDAZiYWNrdXAMBWFkbWluMBgM
+D3JlYWRBbnlEYXRhYmFzZQwFYWRtaW4wDQYJKoZIhvcNAQELBQADggEBABEAJ6ns
+/6f3uILOMtPkrBxR84TFrei1NTFiPhEg1b2fo5JFaOh08WasrA+fmiCoIqbXakS7
+T1one0Ww0IGwUv7A6twKQ6NJW7Edi+T8qisubNeG1YXNCCyETrI3B712P/gkayjf
+/gu6pyTJqkFxQ0g85mg8leWN9TRKaIXYK1n3cnnY1L4Cndyp0JSFNg1gLTvj6yUb
+xYJ/msQH50C3xgLgURGYBlY40JO6Q5N0gKXfmSBWewq3JhQ9BIyMy0HdAcs6mqwP
++WGKoUrYVo1h5GTB354AMHDkasu+6Rs92ovz3tjtiPsD2L+fFgfmThGSKEJrkZOW
+fsLvGYWqU0PuSlE=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDU4lGyRzZ+gs2K
-PAvqAmYhn0or+UmZNSUABBnEQJu3EUd6icF8f+n3C7/KUG1vLfPSdHWjfh1C7fTl
-revWfw9uWFSkC2kMG3rxJvGlML7SnksRPI86KL8GgNedNiaMWFR6uH1W9Y91AAf8
-MGzhRFg2yWnOHWCQR4XG1J9fS+oVWLnWB7tY14l78IlK9rkBS6fmMnGsc8u+8aTp
-f7PgR0RgJuVT4fomCk/uv0/AKrbZ3aRWdugm8E9XcVwcru1yNcLk1+Fjl2gNRkoh
-RN2VCYKfYUOldE3fr6HYyrRvqoosrQhKRony5aRmqV3nbNw3LFmaev/hHldHk4G9
-ODQva2K7AgMBAAECggEAdwi5T6s8EE9JaKMcslN3EhPEYIQ6n/00XCbu1Wqe5yU1
-R5JhayEHDMk4C4MfPcx/Ck1uPeXVrMfraMXwGfbgBP5FDZkHuupeuxrggVKZUKGM
-Le4j1AxWi+ddKJ3PvifhzOD9zLLv7ScAUAYvy2HwxWmnzMVmaiZj6gKXvqxvDlGR
-o21CLOLYtnkk7j57R0/wZXLMwXgY1+4DNSooCCG8xk/EpKtVp6DiLca234DpbKLK
-zn7uLS4ga5SGzsR/BIjyLxOjL9St+zpIw3VOOmlkA6CYV7opEX0cAW7894rlqZ6G
-K0dZud/t1QZnn9vzRYsOAQoOA6a1ZowOZAKesDPfwQKBgQD54Fb3/+6UMoNU9cQu
-VmmCViDMHEQH7BJ4EkdR7JaaHnyJCqH2TDwTy18g7quiHuY6ezZmaR5lh9gVsYpz
-EYuo74f76s1Y1k38JF4Tph+dDBArn58r6Mof8KKqmVSO3zfAJSiVDYi4PZSspD1u
-+jgPEEhiR8FSjEltHI1IMrUr4QKBgQDaGeY8fVWl91XyBP0ojSSHe2j9l1y3og/d
-wjCkDQlmtYRAofjDW1edabJuThsySLd++ROqktVVDeLDt2YiKnQqNRhUDJIowYjJ
-vR6NhVEXF3rJQs8yMDGqLxzZ45UJDeYQfUTgE4WDTT7TvkRCBQP4hi/3sumze7bN
-pJf8KvgCGwKBgQDGlF4pWzDMf9RVibduJ+hT14TbET+TmC4ZVFVvqvkI5F+OPW/3
-oCBCjuY78tFd1vaa1V6nRrUMdUfp/Z2M0w3NpQbJ0pF9H1r8nh5RuTz4fyS+tm01
-5Rv1BDUSJSbJIGZbAmzc/9N+sBnelevorVwtxH/x8xqVMr4Lw5wYG4xVoQKBgFNp
-/mV6JgywuP00LUKaILN0XqZGgp507A6LW6ESn1rZ53f0uri0saCxsR2A3+Pubcex
-KXVebRr3kZf7B6PfisgtwF085ZWS12cY3puPtoDXaQ2acLYoOoZ1OFqZMQHif/Ak
-iPgOX0zleTbwmRiK5Ibjg2r/0WPk1/h0j/BQ2sOrAoGBAPjelTSpu3spBo89Xrk3
-KyJbqO91OsY1CmqBpR8gMG+d9eQSWeO0L0eaZY2/zOiCRQ+HAqwKHO+l47TuhfWL
-giNTciRf7lAmyODDUIkryQya8PFoMCAOgJe3ISWUQJpokGO+z68k0feiTRNTQSnu
-hawcgCLivWtw0xBRGsyS6jh4
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCh1x2IV4tVqxh2
+X/2FDKHEub6bTLnqj0kSVDty/c0egluLcwGxoN8x5Yb+aoRscwh+hHsn00rIPLME
+qu/MbKAOsmKIdDnQXrQ5gbfvqcJbQyIYoFn8RafQXvDdzhTtEt9Pq4sgVGpEFytr
+QdjzV8eLnKAc7B4PubAC++byH67T+BR5iRXcjw1aDIDpIS82/8r3R/lEVdQSvQi5
+vUy7xhH+ANpYJvreNdzG9MKHAYH3pxak//eZyDbUL1xheXaSyNnCbCnnxBnHqdiu
+SHzmXXgnmjC++8gMlu2Bor+7FxGRBjqihACdcbnx7PF1fwiyBNaUJ3JWkve94koz
+n6TQV0d5AgMBAAECggEAQQw6JYOyUBN9uI5qUmC6YFybvMXA8AL5RrGuV1Clcf7J
+Fqp54tAbBW4QrQ9Y/FHb9yX+bgphw0uKVHTz/wEl7+JI8jlsx1BZNcfqixx7Lr0z
+5hwFLv08LucJ/syG4qa0NMxpFex37bg2Tlzf+yar4HRqclWA26cxlHF06JpNZYpr
+3iDbnqCMzMIPs9boKnM+O3nRo1PCl7KrXOgeCTMg5tdCsMR9U2mNOZQAGRPrOwiZ
+/cqh3rC0+Tkwpp6BWUM3Ftxsa3q3AX6WI5pQ6l7+2q1rysZpKmNCshO503mp4Lc+
++jpaLcgzlgAsVqA5qJ8LBbnajDVeNDkCwmmrR4C4gQKBgQDQLCar3tQnmjZ1UeNk
+STIhGYW/BG5mYxKj5shZqi4zFjH+KiymC2JfyOSHqZYqzYcbssGReWh0CJInskK4
+y1yiImeDWc05pHGsIJAfijeUfPSCwr3ulbr+1pE/+isyhX+fYg/rz3X7lm0HeLxT
+1fGOrjWIvuOJif18T6MeIJ24EQKBgQDHBeV7k8Z34Gegc/JnnrBzxlYOsuHIXejQ
+/0dztkFiFDYOw94RiEP50+bK56Soh6ZF2qaCQklkSqBEtl//Wm6OWpoweTG3rTgU
+leEjp0Y7HlhzStCzDth2QBmxXZT2m/G/jmJoowDuBo+HVbrNa5gXF9yCXqWowIfk
+zZmhuN7A6QKBgBzyVrpFdOjA19u+dEkoqHDT1LY4DoXsNtZVq/xT3rK53l/CS40X
+PimljKmUmk3/YE8oryPkZvLjkjc04XRCyvG8qPopzZC7XhcaPBA2rv3V1kYsgC6h
+4Wu4OGBWEBWpXJK0FxSqN3SxeR212zIpKLq3XLhUGt2wM3BKvprc3DGRAoGAdsEU
+8kz18teq3bnxnVS6Ewr4lKK2SHmIjxSTzP6mOuC2dM74tdtqPCrtnorj3E+8rhfO
+nRDye+5vfTCZTWPnbfev41adjOzF9rqL8VtBc8simgC9UOp9zOloq0Wcuh3I/TT3
+kVoaFu1BPU6xPRuDT9xEDmJtVKk1LRhlIHOQLukCgYEAtzYL+ZFrFrsbvgDUj17W
+DcZXJA5f6XpPb4biMVAS7SuE3H9w9BaTLIIo7p10hOIKuiB7sG3yZ0oJKy+i9QWV
+AvHGeFy4jUGIho4/TEhBclmgPQ0+vCEA+dy6c0oGz5rfQuBdZnQ1qyU28XhLR6/+
+mHIvte5PXur+ki4euVWLino=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client_email.pem.digest.sha1 b/jstests/libs/client_email.pem.digest.sha1
new file mode 100644
index 00000000000..da13d5bcbf5
--- /dev/null
+++ b/jstests/libs/client_email.pem.digest.sha1
@@ -0,0 +1 @@
+DE8636084C85D07B6DE32227BF5797F2B078AB10 \ No newline at end of file
diff --git a/jstests/libs/client_email.pem.digest.sha256 b/jstests/libs/client_email.pem.digest.sha256
new file mode 100644
index 00000000000..33a6d18c102
--- /dev/null
+++ b/jstests/libs/client_email.pem.digest.sha256
@@ -0,0 +1 @@
+449F68F4701C634CF90C2E1ACABB550499B31471EEF89F5439D67FA5F4F2BC80 \ No newline at end of file
diff --git a/jstests/libs/client_escape.pem b/jstests/libs/client_escape.pem
index 265c8fd02e7..b262f09b075 100644
--- a/jstests/libs/client_escape.pem
+++ b/jstests/libs/client_escape.pem
@@ -3,51 +3,51 @@
#
# Client certificate with reserved characters in subject name. Includes authorizations for queryable backup.
-----BEGIN CERTIFICATE-----
-MIIDgjCCAmoCBBkNtHMwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowVTELMAkGA1UEBhMC
-LCsxDDAKBgNVBAgMAyJcPDELMAkGA1UEBwwCID4xCzAJBgNVBAoMAjsgMQ8wDQYD
-VQQLDAZFc2NhcGUxDTALBgNVBAMMBFRlc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IB
-DwAwggEKAoIBAQCstDngeE+4YS9MNaTbiZ9WF8wudbDcaCnxaDY4yKNb3npETHhX
-DmLDdBYqyusv8HqiKjCb4+yrFIffyzKgiN9to9o8Z9QJmWSVsMWVyQmYO7MxewKp
-Ou1iQ/mi9EU6VpKwZFFwXStsu4ybSBrxJbHe4AAFp44/NbBiTNijgCvUGXv7RM5Q
-8fiSyiowIwbZHeuJ7krt0wdWgZ+N7C2503qcr1EfMLNvfzNpiyIc8qTz268wD+bF
-sAryinRw8e9AeiGcbqG6aJtsKbSk5B1sbU7wNByQwMiX/3zxv8WG8VKgdzwnrszR
-ypcaF6EKVDkMtoQu+GEKaCl9EsOXcyzKBoCVAgMBAAGjQDA+MDwGCysGAQQBgo4p
-AgEBBC0xKzAPDAZiYWNrdXAMBWFkbWluMBgMD3JlYWRBbnlEYXRhYmFzZQwFYWRt
-aW4wDQYJKoZIhvcNAQELBQADggEBAIqP9c6qTabY+b7wk83pgeosas8J6BP6R2Cl
-vYFxaWy6/MobBlbnPcXKFlHLxOJF5Tz6Ucfp8PTmCfThULW5FsWCT+h1N7V3zJTs
-KwbSSMf9VdFcXzAu1JX0s2YVEoHfWvQgJH7SPbjbEZWV406aDVD2v0i4C2g2WVlq
-7Y8YTRcq113/5CtFrUgSBjfWyalrpwbIUx6z7dlsDOZkOoRgFvXWQOLetOkD0+kZ
-ZBRESxVXlRyO/6yVkCArE9eG444ejG0/4bTnv+DV47BnGbG2Wcr73V5TGzW+QBcC
-MQxaH8Ry3drgN/qsA1Q1t/021EqJ9DwiYSKbbudeWJZY7opTqnA=
+MIIDhzCCAm+gAwIBAgIEDUtBFTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQzWhcNMjQwNDMwMjE1OTQzWjBVMQswCQYD
+VQQGEwIsKzEMMAoGA1UECAwDIlw8MQswCQYDVQQHDAIgPjELMAkGA1UECgwCOyAx
+DzANBgNVBAsMBkVzY2FwZTENMAsGA1UEAwwEVGVzdDCCASIwDQYJKoZIhvcNAQEB
+BQADggEPADCCAQoCggEBALG3OMek73tAvuG8yZEtzu+rg47Y1Y0NQazAnJ1eQdsy
+txLh1+CPgg2PrbDVjGdtcLrBbaOh8ETu9D8QMZFE4ypUSBuwwvCK0avcyVIjGs9P
+A3BRp/aAVTEHyKw+rhhBUsEShUTNMU9xT6X3JzJXf0GhvDXuIRYkDC45/XK9Avvr
+5tUj/9wEBy9dv7dAnbcja2YFhIATJPZuC7hyixs73DzAsth+lHOhSVl1VXfDV4tX
+DZxgMfQhbX7Lgrv845WinSFaKCyeqBm3bOjVNpEc0lg5J3PbttnlYCR8exchvZzG
+waZZoYCaWmcwqWJ9/kBp0liNEzf07Rwcj1vPoOA1FAkCAwEAAaNAMD4wPAYLKwYB
+BAGCjikCAQEELTErMA8MBmJhY2t1cAwFYWRtaW4wGAwPcmVhZEFueURhdGFiYXNl
+DAVhZG1pbjANBgkqhkiG9w0BAQsFAAOCAQEAJ8tGkfZwIR2yp+nmLXJHp/lJorC3
+DH61UhWtnmq7IB7hEx4ufUNB9KOshEO9nsbKBeuZXNbRQ8DTlvrboyv11xZmbFre
+GMquaomxNZ4w3xax9Kkuv7vlFeBQ0WAfup+p09DY/kUxKy65w3eYhe99AzbCQBpd
+nnlk2AkYZz5uwfQQffDkEknG6p1aifVzqRiY5GxaTeXmXRe37VuNfO39vAOGmKXk
++MVb4uQXwGq6ht2oY7sLS5yplVEmISbHAa1ljnX+X0A2MxhhIIzrJv/TG17sbczc
+wwGQsPSDnqpxg1Kljtq/VFSAubEykZXHmwbsq385oYrXSA+zP4+9QconNg==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCstDngeE+4YS9M
-NaTbiZ9WF8wudbDcaCnxaDY4yKNb3npETHhXDmLDdBYqyusv8HqiKjCb4+yrFIff
-yzKgiN9to9o8Z9QJmWSVsMWVyQmYO7MxewKpOu1iQ/mi9EU6VpKwZFFwXStsu4yb
-SBrxJbHe4AAFp44/NbBiTNijgCvUGXv7RM5Q8fiSyiowIwbZHeuJ7krt0wdWgZ+N
-7C2503qcr1EfMLNvfzNpiyIc8qTz268wD+bFsAryinRw8e9AeiGcbqG6aJtsKbSk
-5B1sbU7wNByQwMiX/3zxv8WG8VKgdzwnrszRypcaF6EKVDkMtoQu+GEKaCl9EsOX
-cyzKBoCVAgMBAAECggEAJ6DbPvScZlR2g+gzQeTcWObxBSAgSxLjvO8KshDn2ya7
-q3xYiLFWXD8A7yTMvp1RpnBD4yFzpvX5D5MStN9zVTcp1n6EmwdFm0uKqwoMV5Ar
-WAk/3REWc1vhplCiqfY/hpYeUcgvNK38X402EWty2w9PMfz2mO564LN9alb4t5wY
-29H8HaM/BAhrTV3Py/rDt2LQkSRSXuEGyhOviX8+hR38WvefMyhv2rSdIlMWr0zU
-2sUPLHZ/pPcjgHMTUBU3MFsTYN9rnzcmCzOhhhhYk3fo0ZxT2aq5EiZIV2k4Wsaf
-ho6kqfHtVUUqPq8zFawXrg5fzs21pFEa5aeFA89dKQKBgQDYUPT+ePJqURNHKhcl
-hC+LckhCIjJyxOsDyWeimyFQ+33j5EBqZG91/9piI10jnpe9h74PjWz+WRM0pq1r
-7GCHm0j+vVx9NbV5yn9PB1O2xOh4Sl1BNqQ1G8Apd/ym/MxhDtL6Q64yedL6iswp
-oFG+SYwahkk0DOza0EYAwtYLLwKBgQDMYxInWeYTzTcEbW2te0rrphevLypx/Y/W
-t+mInUUKm0tYcf495YOES+Qp6dm352dZrZk0UAhIOZwl9JQNEDN9YNCXcoe8C02i
-E/BaVUUygfiYkih3YNYKtOG1OXQ2/n0F+fDpL7jrd1XIyUC8TLW2xtkGLl1TTjC/
-6JqFEpavewKBgEfJThSpJKG9uC0Uvcu4e2LGkU5JNP67dNaz3w2qd7r9SwD2/Z2R
-KSA6wUlyPPWWKvs98ggNQg+ClgoSCllXf41hLi9Dvk7bJRd+6RLb9p8f55oL67i5
-nnL1e6cHZ7QvDtBi8AcXsNaVcTuuFiT2TEpe8/zVdbOtWmkfVyvnfMsHAoGBAK9F
-ckbusABhJoIUeU6hAXGtwHfJocOZJyWCF7HA9HkRDX7uWpGn5a2pCyPqV3t+5MEh
-vtT+oOuXA9IEuIWvVAh74sVNQRtAMjYAlUhSAYI7tPzZsfwVvdf2n+wyNfgHKx3Z
-5f+CnjjG4HjMJUiVG+t/AJNtZTjQP7wC86eUdkZLAoGBAJPYZ397bNt72CT28zap
-W3z0fYfcJWBwJ8nwOxNyPOTXGQB0dPPkO7uUHaQXLILT4Z9u7OhNMDsY6De2MN46
-jtUIc3Yq1wX4Vv1AIJJNOfnCpT/UwLtOP/3PDrRCIDQCuKvvB2pvMcP12imlVQ8X
-4Oi/LM3BKGi9kMcO4BWvIKDQ
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCxtzjHpO97QL7h
+vMmRLc7vq4OO2NWNDUGswJydXkHbMrcS4dfgj4INj62w1YxnbXC6wW2jofBE7vQ/
+EDGRROMqVEgbsMLwitGr3MlSIxrPTwNwUaf2gFUxB8isPq4YQVLBEoVEzTFPcU+l
+9ycyV39Bobw17iEWJAwuOf1yvQL76+bVI//cBAcvXb+3QJ23I2tmBYSAEyT2bgu4
+cosbO9w8wLLYfpRzoUlZdVV3w1eLVw2cYDH0IW1+y4K7/OOVop0hWigsnqgZt2zo
+1TaRHNJYOSdz27bZ5WAkfHsXIb2cxsGmWaGAmlpnMKliff5AadJYjRM39O0cHI9b
+z6DgNRQJAgMBAAECggEABc71PiE36pFdK8ed1u7mWpMCg8K2iBusz9ajx8jy4hUw
+Qp+7DI3kNElD5gm0wxSioJf922FJlxcwSHdhB1x3CEUk7jLCzFXdMH7Q3axkDe6J
+MDya/sWHA0k719Vcn1JTQBg43tzOBciwT75aO5z8fcqpeiHEVxLqiwA+NmfTFyS6
+vHMm1CbFsYwdunyv6x+jSOaRd1oXKtsfH/KGELAO38v5mbzJSmLu9mwvgIaZ7WMB
+Dv/XQgZJn8yFjXrQhOWPVs7262Q8yx+0gY37fhJbPAYu6lCHi8h9XdoaNKnP/rEL
+BPeVB3CgDKFqSteZncbeWvzk9q8UY9JPD43WIt2mAQKBgQDeAz7/jDsJRaWgVqwA
+mE7YSN8VCXnCJWX8+T/LrRYhE/bYSexIkbWq7FCYpRncm/1fPUbocJsjNIx2mEZG
+4GLkye6d2uGz+vWM27mLNMSztB+c9yVlUKJpDfpPWnM9/GgEDKmj8eNbDVljMO/5
+EyRBauNbaobDG/ojYxMeI/dO6QKBgQDM6/ZMKsiIRcSjfPmsrg/OFvP02dliObEN
+qbpGk2vRpTiYnopJHO8LBb7rlmoVWV4rYhlBpFNrRAObUVLv7LG1bdo+Q/mlE/EC
+FPAKfN7GogSiF24l/twLmoQTgOwW3xxTOzL6kSV9aHxVOL0N2zoTscGgbZMV0Hvz
+wacI/FOoIQKBgQDKDLI86GaiHZyKu9Z2BCddd5RvFNyW8GpNPJnux2uoVv8EAOLl
+eJaZI9CF21waBm0lTCNIT5MhCyX6mML8piHajlx3lUhsAC2RMDdAlZme4oMS22pR
+Nn1YlrwDlBHli90uMkgBSJbdutxrBZKgX+dTEfAwtlZHIyMXKYewmpLsYQKBgQDM
+0Yv71UdZ7WH9hoyG6/MgKhDsSlHcu40b+ukUYYUCpgFLiirtqN3ERpntHwopDInz
+ErnrwjMeo3x3YXFkHVAB5yqb0ZVUSfo5+nNyCB0irA21dXXCxFlrv6UDWXif46CM
+ED+D8k9maWjcRTmw/82soZ7Gmr7Irvk1SfmKIan8AQKBgBB68OsyhPFY2rpI+f5L
+G3aF4S6EJpYtbJvq/UDLCLiXh8mgE1UMTephqD/ZxfM3fN64Ux2Ezh+hKSDUfZEw
+xZU8PnhzFwicaZnGOCt267qO9fcylHIqJ3WMCCQyno9pWcMZDvKrTnZslfGeRWB1
+wKYreYBUywU7jSZVpFm2AQDJ
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client_escape.pem.digest.sha1 b/jstests/libs/client_escape.pem.digest.sha1
new file mode 100644
index 00000000000..dbcee0140dd
--- /dev/null
+++ b/jstests/libs/client_escape.pem.digest.sha1
@@ -0,0 +1 @@
+F591F020AA95C50F153085D577CE8571F30D8FAC \ No newline at end of file
diff --git a/jstests/libs/client_escape.pem.digest.sha256 b/jstests/libs/client_escape.pem.digest.sha256
new file mode 100644
index 00000000000..2bdb65f770a
--- /dev/null
+++ b/jstests/libs/client_escape.pem.digest.sha256
@@ -0,0 +1 @@
+EA837C5070EEAB2FF64789387D7FA660D5639AE6AF262F43CC873A76F189176B \ No newline at end of file
diff --git a/jstests/libs/client_privatekey.pem b/jstests/libs/client_privatekey.pem
index bda2fdf6d65..b883de2843b 100644
--- a/jstests/libs/client_privatekey.pem
+++ b/jstests/libs/client_privatekey.pem
@@ -3,53 +3,53 @@
#
# General purpose client certificate with roles.
-----BEGIN CERTIFICATE-----
-MIID2zCCAsMCBB8UBe0wDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MFoXDTM5MDkyNzIzMjc0MFowga0xCzAJBgNVBAYT
-AlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQ
-MA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMQ8wDQYDVQQDDAZjbGll
-bnQxIjAgBgkqhkiG9w0BCQEWE2V4YW1wbGVAbW9uZ29kYi5jb20xGzAZBgNVBAwM
-EkEgVGVzdCBDZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
-ggEBANJSsT4ZOVKo3yh1YTGVTNLohyOKCgraH45hXMMQ61Gme1I9pmHRzhs4XR70
-bfL3vTUnAz6MOSkUU3MqkzJ7bMR0Cogfc7QRxlrrEqmCW40VthoMj2OPVJruVoZX
-JnJYHp4uOcDUKXJ9pWLFsBFTiFhiYn0OYOnEdmWNY23SDLWSDmmGmEnW/ymSlpHy
-FeuGb5qAQE4iwOAPMUj3BDHRqkiLa8+uAP+rtn1oHmP3r0Vc4hbDelYDYUSSgvyx
-c1bkwgJU0uWA+kfXgJRvjnF01cN9DshfvbUWx0+Wcp2oZST9txjDAO/h+Ek5Meq3
-jLe4jGs0RYk6UHo4YWdLjNNKb/MCAwEAAaNAMD4wPAYLKwYBBAGCjikCAQEELTEr
-MA8MBmJhY2t1cAwFYWRtaW4wGAwPcmVhZEFueURhdGFiYXNlDAVhZG1pbjANBgkq
-hkiG9w0BAQsFAAOCAQEAXSCxjRuEhmMFI4JirMo2ez+CKva/93CFdRSh7gDe1qTl
-j60g1y7tXTCfoYjI0kExdo+eAEezq06HTT9rJppYGVJWjjzBZRq7Ez6hREpk8/rP
-UkqpXfpdilG/EXTMg75deHbeaEPRJSXnjnQgdEWlTU5FU6mzYzvB7BOhDEzY1r/q
-SnqaGex3p+argQStCbw8V7+aEGrwJVFqhhVfwS0QM1wQqfJZ3+6Z/sqjL6npAOh+
-8aOxKapUz5YhUEUGq7VKOqvHqv7NTy2z6rAoUcOP/3ITNlRoPBT+my6JcLbBQPX3
-gQKh4iEKGMLFQrvSrh1MDt5tghHZnfFIVmWtPeQgSg==
+MIID4DCCAsigAwIBAgIEL2OwKzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQzWhcNMjQwNDMwMjE1OTQzWjCBrTELMAkG
+A1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBD
+aXR5MRAwDgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxDzANBgNVBAMM
+BmNsaWVudDEiMCAGCSqGSIb3DQEJARYTZXhhbXBsZUBtb25nb2RiLmNvbTEbMBkG
+A1UEDAwSQSBUZXN0IENlcnRpZmljYXRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEAv6/hbwlJjz8L3KWV/UkhoUTPg37fRp78Wt8xQDNWTn5SfgJRYxwQ
+Qz3zXwZBgqon7tYM5H+CE9SXtmzeQjW8ulgXSjFZNo7Q4C4owps6v7RVcMXgV+7d
+vQvesZsD7m00z9oEpPTs9HbiVHuq7Acv3CjJefGvX74CaDM123soVhCZ3kGr+Nyf
+zW/rkVtcMBjcg/d6g5umy0CQd606a/0QTkKt3bj3KK8hfp8m5R4VTtzW+gXNe1Y7
++Jo6Owtu8S1m7KK08yXXeYyRHwo7Hy7x1JGh4nNwjtn4AJvnYpijsEBz/k3Lr+4n
+GNSx8lMYAm7RSr3Jx96bXMeaZ6lyqJgiRQIDAQABo0AwPjA8BgsrBgEEAYKOKQIB
+AQQtMSswDwwGYmFja3VwDAVhZG1pbjAYDA9yZWFkQW55RGF0YWJhc2UMBWFkbWlu
+MA0GCSqGSIb3DQEBCwUAA4IBAQAEUbXUsfXgXsRtqLEz5h+JUEfn5i5Ac+PrK+zV
+lamEOKTjDnLggkXwK0KktRJAxBxJBI/Flf92LiHgHeGVCb7KNP/EnSkzh0zJkbeE
+W+j9uXhTZt0MjVAVEOkgblp90CJOqfMoXPZ7EU9roz+8VwdZvriYYoiElA/cb/SK
+v+ezjc3oc2kX0ODCOhIoFRsy7TXdq9qQGjUHl0qKv9/9PTiItKkrbS8r3jwlyHUU
+OmuDUu+lOW6nOLkBmolEOtPARp/FuKNssS54IyFscbndGDteqSRZ2LpUeO6bodms
+h8VJvNInhCQBgHB/0+IyRiOR2CNhgMAbg1vTyckhtEAvqwls
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDSUrE+GTlSqN8o
-dWExlUzS6IcjigoK2h+OYVzDEOtRpntSPaZh0c4bOF0e9G3y9701JwM+jDkpFFNz
-KpMye2zEdAqIH3O0EcZa6xKpgluNFbYaDI9jj1Sa7laGVyZyWB6eLjnA1ClyfaVi
-xbARU4hYYmJ9DmDpxHZljWNt0gy1kg5phphJ1v8pkpaR8hXrhm+agEBOIsDgDzFI
-9wQx0apIi2vPrgD/q7Z9aB5j969FXOIWw3pWA2FEkoL8sXNW5MICVNLlgPpH14CU
-b45xdNXDfQ7IX721FsdPlnKdqGUk/bcYwwDv4fhJOTHqt4y3uIxrNEWJOlB6OGFn
-S4zTSm/zAgMBAAECggEBAJtrafiWkSqJCecO3lTSnCOamwpjHkqopvsC7ZZkMVBz
-8ttyHTpZ3LF2tDGEtJ7//TyC6L3WxwKZN5V6F64NUPHXQlUW0Nx26hoTbgX/A4I9
-UgTr1SXgK8gVabD6Q7npbi67wAfDgCFPweA8b4BONwoBIgCBmJIGkOs4UQo9VxDw
-V2W+Xr1u01TwGm6uEXi7aZh/aBfINSS8nnoCC+iNgUVbfObaJyyoX6jXqJDM6hbd
-Wpp6V/SSwISNtJBF5oNeRlnoudXXpk4QIK2lsSrQzQQG2Oa92Z1weLAxBzAkqTER
-odAcCr/O6eDTO2CTpIdTuGBLJUL8EZcAFuScn8PpR2ECgYEA630bXMFf2Cof6Glu
-bNqxvFqkMPJP37mXNJQm/F3yTWqF+t8q1POk5bhMV8PgZwoQjokv/t59n1Sj12RQ
-xiSY57RU6dCltJ+cUfSXvHmTc6+BrEIvImdg9LkQ1eqgF+2VK1rJGXIclhBZgseb
-Im97rQVotYVi8gvF5hy+zgLmNXECgYEA5KRx2SIxRtpiiN21TSA4IpSK8RxWE0ip
-DohwPIxD1MMEEhmYeDW/L/SWItgSyMZN2KcAoehjJ4Na2B1iPgthmI4qxXy7HFpp
-kaUEI8XqnQ+nRIh4MGFbsbHF8Rn2xWxsankKg47+sRucAVjwayImc1xIYUpjPw7h
-tkkZQhi0eaMCgYBVahRxqWY1Rto593vpGc3b7tidNFbKZEu284HMidroP5oHK8ki
-YplOBXITZ2XOmfT1bkctX9Aa6Z1f8+/kXsPjTyJ5iIeCI16Uz232G/biwCb9ryff
-h7XALhwwKyEUbMVta0mD5EMAH0AIUpQvglZOpKadKJuCBckrNQP0P1L20QKBgHIx
-n5ru9OWKVQQ+lzp6CQ9cWTirCmJ/O9BCXKwg8g/lhrbzia8gSOjOo92rRVZ5lI/M
-eQhkZIFrnYeqxVJvpMLo3nvcHCfBEFDptfOX+eGP297iugSP25gYTeBpM1LPICbd
-ZV7noFUckQIrRYh8ee/L+2p8GK155UmBoNfeNuU5AoGBALmn/GSUhd2wnLrbkFSq
-giHvn10ZJbHGQ+TXl9U/tk60Cuc0wVT9TNQqnc8rKSzK1GdY5wa76PC0up3Cz6gv
-KQi4u3B6HFGRIrLq7JfEV3zdoP6G45NtbRcdM43f5g594CNaieLZG+bc4EsO1Q2X
-qKhPNhNlIparFx87XPaBX1SS
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC/r+FvCUmPPwvc
+pZX9SSGhRM+Dft9Gnvxa3zFAM1ZOflJ+AlFjHBBDPfNfBkGCqifu1gzkf4IT1Je2
+bN5CNby6WBdKMVk2jtDgLijCmzq/tFVwxeBX7t29C96xmwPubTTP2gSk9Oz0duJU
+e6rsBy/cKMl58a9fvgJoMzXbeyhWEJneQav43J/Nb+uRW1wwGNyD93qDm6bLQJB3
+rTpr/RBOQq3duPcoryF+nyblHhVO3Nb6Bc17Vjv4mjo7C27xLWbsorTzJdd5jJEf
+CjsfLvHUkaHic3CO2fgAm+dimKOwQHP+Tcuv7icY1LHyUxgCbtFKvcnH3ptcx5pn
+qXKomCJFAgMBAAECggEBAJgKW1cFGNGEAlabCGMEdKZDvAzivxp21FcHnTr8/UH5
+NFk6YW+pPMT5CGagwalwaYgpQ8Sh1n0ALO3HYGtH0FBFuwNgLRD3KnoGYtIo6epQ
+kUyHxzA4CK0AEzzwZafh+ve6R+DHXINzIIY+KQ5ZjP6lY1lT9/SK88HOjLNv9kh8
+NAEUoBtcMW9kDryDt92PAlXoguXNiGzd4JYnFg6iFLKn7tdgczz6dsrTPTIzmOtq
+KrN6G/yFv8dG0MnizcmlLRKY+Zkvt7YcWatvWnpDwZle0ABjIemkpWV0hFjKPnhk
+qOM4j9gw4y+Qga3agj8ZWXtJGX/8cOvbszejQlesPoECgYEA/IM39oU0y+NZOkUA
+0qujGbRk1FgRiOGvZf+xK51fiSGUBjomUp6aLBGx4tPUAfOgoXIA0Vy2x7YRSK32
+ZlgNH9XKSitzsPvZHGvXgCm2hU/NxPXHhsJvNuzGqCri3TP3xUzcH/hTDO2y4Y+O
+NYzIN3PjEQS8ba7t3hTEJBjgW/ECgYEAwlWbkzHwFIyeaLlOqqUi9Mr4C+AH2Gv2
+xE8SNV6Yd/kY02TkyPnJiChuzCHVLOu+HUsWCX4B4Ry6uRH7/N13q1lb94ePFNx0
+GD5CVRs+CU7qXja8Ey67i4jlPl0224VhHOQBKe+HMIFMLkKegp2LIzK6blVmWkbF
+lADCBBgXj5UCgYEAtF6Ssf/Sh7Uc/ldd0B4UAf9uapOB6vGylTxAdLQUEuMuVghh
+aXCrFcGJ/EltTfuViNzjIqmEUkGGNRE2SUKqFUxkE/jXydsL6ZZKt9yT6MPpasBZ
+RrRKNsSI3oTLylAdswxEzH1X7Ys41I/zd+LY/WtFDdoBMqPae2D//fza/jECgYBP
+SD+1OI1axNenn9ohMkflmJzDs31f5QQCqMOj9Fi9sWlYbPQNriJzIxO4wiDHN9IS
+/1wZOUgo/+CJunWUfwHgbQ9hF/PereXLMjM7p2aSw5hIIYpvRQSMc6ga3kqQGoU5
+FSgIZMlBl65tvQ4P+ZgXHw4CD2M3d2IJ9JkytGWAVQKBgQD5F+eiPzXWwmUbBxXH
+leIQ14QMfIkL+2XgqXYRndeZuoIiwEHjjIF9FDLas/gFWlu0lBi2v3oOVIZxQyG6
+jfwbneFu2xNZlD6mQhWPpTU2xqno7T1NEsop6Q8Vt6pPW6SgJ8gaqAlK3/LyX6Ej
+Y7eFhnHjLCwgq3B0lBkcVeg4lQ==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client_privatekey.pem.digest.sha1 b/jstests/libs/client_privatekey.pem.digest.sha1
new file mode 100644
index 00000000000..1402e835376
--- /dev/null
+++ b/jstests/libs/client_privatekey.pem.digest.sha1
@@ -0,0 +1 @@
+C678FD6B6A52D0180CE518B4B74C9C92BA941869 \ No newline at end of file
diff --git a/jstests/libs/client_privatekey.pem.digest.sha256 b/jstests/libs/client_privatekey.pem.digest.sha256
new file mode 100644
index 00000000000..85a1cfdfcf8
--- /dev/null
+++ b/jstests/libs/client_privatekey.pem.digest.sha256
@@ -0,0 +1 @@
+4F5C946F3C702A7675005C921D438A43D66DA45F540AF6945971001273604544 \ No newline at end of file
diff --git a/jstests/libs/client_revoked.pem b/jstests/libs/client_revoked.pem
index 0c5dbc8ba58..7397be71838 100644
--- a/jstests/libs/client_revoked.pem
+++ b/jstests/libs/client_revoked.pem
@@ -3,52 +3,52 @@
#
# Client certificate which has been explicitly revoked.
-----BEGIN CERTIFICATE-----
-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
+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
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC7NzrPLwmPx2e9
-99JKRX1gaVEyCzCxqcSaBvOv7bgphsvP1qioA5MlHyXGc5JnQTR+CT9kZR8/2hui
-IXVi3eR0ZZApdqCcJa/UthnNOWsKI7BWBAMR7ImTuqlOeDcTtcpb2tYsclLShkGI
-zRQCUDw24WqJ4fQbVGLOPXqbnEv2UWyuA66KMpdZDgqoGpFq5vUP0ktt7JEdfd5z
-cpnzjw8ADY7s7/NomNW7+btbhjMP4KwJvMwO4DV101IXzTwbG32XQjsenk1wnjbc
-svdAMc0tlSH6vwcr/Jltge2N2EY0Y4H7jM7qGJUPkiwnBgiFVY8JzKwwRtKBlMgC
-kHRPK0pfAgMBAAECggEBALTHnC48SYthDjhOee3mNC9JA3LDg33LZWEmnWGgt1jC
-JUTJD4tOCGSsMxnyt8ilGj8qRuB3FTnfLxfcHzIc+mG7QP4I4wZlDejk/v1BGK9t
-zvUAYsaIFkFk2eBADU8nGASiyHWa34cSxW2IOm4RdFO6T9pdKg7J6a8lhqOExYVP
-bB2hUy5gWeA3fx0Q2v5ynLM2Hl+/bVE0d4+L0q7RyKvLHN6qOCGwaLzdp8kAYH8H
-y9YmuNjGWEC46o9q8JpnptS7PqrEMdgpDg3VEgrLGAmI/aNQp/7lPMENuPtuNFDx
-EsUtqcwufORlkd++rL04GmqR8LsY5WcPeoNnivmpWoECgYEA4UKr5JsH0qCnOSdc
-XfmSCcBGkGUj7Ef1/bf1j9Nh3Z1tP+TsZhwqcl5Ri4DV2AyUaFA/PDhuII1E99yY
-OJtEugKQ1kVPPcVbSkqp5+8KC7jv3FuF7coBccxE5ClqHhc8jR1db1yBdgrpif1l
-7Arhdi/t0SoTM8dgbA35+eiA/PECgYEA1MN9x1BquyOL/SgzVcw/FAfu8jyF/Wwz
-heiBrKtpkP4YKKzSQNPQzrjHYZ3IaSAIwwuRA/iO+hFgRZU7dCFKywnqg/DO69Oa
-7HpVb02r+b80HxPYuk4KgxNisqhH108to/QkFUIvgnzK+gEKjE5Kxa+asA81OE04
-xS9lw3xg/E8CgYAFvJHuF3iih47aqML0bbenYesqIDlC+i4skPPC/uoeH7U5jFXs
-38jA8t/2wogvoVpiMbD6kqFTWOWpvkduIZ4lco1Ht6ol85G4maAsFO1XkRUisn39
-qUhSIpaajOdz7rmPCnFntZ5iaDK8XeSrlzdYsC3JRt4IUoqFFfIIyEAIsQKBgCnR
-VppjKucnQG98hEJ7x3YXbRZ9YNSDfMj3/uzCMBiIaJUuCpElUKgg10dPbMGEw1Qa
-pOED7I4n9iUXBL15garQgyB1pyXgzFVoYfxjZsbKluL40qMjjZtfpwl4W85syIqu
-BJ2NCat6/aYPqFQVW0rpjdzG0G4Fd4ACJd07SBCvAoGBAJ+GpQURdCINUHVYFvC4
-/0PHimYppJw49jcg5Ll3KNceCa+LzKrXPLh+N8Ohw+3qmEnW6YnHhfrz1PCuh3X8
-uS3QVY63hKNFvEsoj2vAN8GydE40wz8vF2gBLi78xEnI1UxoFRRJfmOzl9MrcBjh
-P2hQX4tNtFcUx/KB5cDd6c2j
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDXLYp+lWykS2LL
+UxAp48lEHXPYpE6rlyJqr2Sk2lji8Tneo3AHPtpx+8pPWJP+sqtM4ZIu42ag7AgO
+Ru9+J4xyWZ7mDAMS5NHOpVfbg3xDuTAC6dHDQq4YosjjFR4x8Ma67PKMdCDuMXlb
+p51EwNVnBnOPKXFdIbVF7yITHju4jv1f6y4bhO5TyhRqgtovtEOR93oJv1m/wGAx
+4pmvr95alwKtRAZiti6nXE/CFLMjkCATljrLu8RDc3BndHSuCP57X5nnFpYoMRwe
+7r09vTKYuelYs1uLiDbzqC/fktfvzprme/rBY+f8IiVyl0bRTF9zhQzTctPm1+hr
+ljvd+8vbAgMBAAECggEBAKZBtMmbkKbc7IenNUz4iFEN5K2WPobMLrZ5sGzDnHw0
+4H7Kj0u537TEVIu8KBVaXYr4myeJYomh9ZN6cZ9q1VShNGoRC+r0S7u7+0dLr57w
+Hk2R9hZFlhjI5ii2726s2BAj9kBZlfwU0+zidFxkFj8VOAJ8he/slJBldVGKQaCV
+yAYykH+XAYlUnaG8TYOLsqJjB2yROLjDKX/55D6aHMWeYOihEgh/51O1sYcw5iiP
+Fv/BWuZu0K3wP1FyzRjPm7rZfZs7Jgx/8CbBR2jPetvm2OibuyvHQr2guT2uYbcl
+e5PRj8CcfiqwJSlvPoXfi3YKItU+rTnUfycYENBY/iECgYEA8kaqJWK0kb1TSnrl
+vOdUUELZr9LYhH3yp/+/dJC587hA0PNlhH/q6RtKWy4Q51qc0VjYO8gXmlaFyR9i
+Gl0Yw5rq4yuW6S/47S4jYs3hdWSztzg3jTOvbXoN9D8sBgR96YuEigbHFkKVOMzX
+ESj8HS1lOjmnq3S0sS/UpfmFKysCgYEA413qhjnpNEce7D3QXyxKOHgX+Mx5IVqY
+x/VfRSFlRi/sPyDd6ZqCbnv2geM6jnK9wDaOj6+k4ERLXNMGJqE3tpwt1QROOG9Y
+LUn6VYR0lNZi0fzJtCXGKNq30aOb2eTt0m1wYePRyGGTmTouUhMJZeSF6S6h97uP
+suAC4k48yhECgYBNlKdDVXow+QlE3lnWxdTP5rhCfyfqNVKQzWqHbxi8nJHU1zv4
+0+VrQ9vpmrS7AN8agnKrogU83Nv2bWBCxPD7Ig55NCoc/cmeWZnnN7osl1SdJRlU
+0+onCmCRh/EW9DVFpfGJKWZzEFssVxu/WPpydWjm3jN8yeBapNBZXa9xBQKBgQCT
+hWoXcReofcTIj0rVlY0KmpEjMrgdNgUPKFuKJSLqqUllpFOXsFKUkQXePKrPpg8L
+2dohzFrz0Bv9vEWvZscZSrhKECMYZtYVfHxaZDioIXm4uYW9xwyNkWvXL4p9lBXi
+hHN4cDK7CuSTdLZ9NjDQ1bc1FrasYBvaeZIld5HloQKBgQCmb5LTVXvcjHRKFDsC
+9dmkaQl6ttOnbhvn+CjdfwgfiPdOLvHAp2Q3bad0xbMc8Cc7PYxbfEPuYIeLHxB5
+fc7WeRvwVLeS9F3ClkYVSq/D9ZU/U5tG/VsrxylUHcVAA1hK2aHaWN1zcJd7Azaf
+hhu9hM1a/hdaN2MKcOBSYFob1A==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client_revoked.pem.digest.sha1 b/jstests/libs/client_revoked.pem.digest.sha1
new file mode 100644
index 00000000000..954c1318855
--- /dev/null
+++ b/jstests/libs/client_revoked.pem.digest.sha1
@@ -0,0 +1 @@
+B0AD6EF051052F1F5E25AD400848CAAEC237AC02 \ No newline at end of file
diff --git a/jstests/libs/client_revoked.pem.digest.sha256 b/jstests/libs/client_revoked.pem.digest.sha256
new file mode 100644
index 00000000000..4503fa28a36
--- /dev/null
+++ b/jstests/libs/client_revoked.pem.digest.sha256
@@ -0,0 +1 @@
+619462638B204A36B830C672AD7596B15DE6653B731292C81F927A88A9AA6C99 \ No newline at end of file
diff --git a/jstests/libs/client_roles.pem b/jstests/libs/client_roles.pem
index b0ab47283d1..085e7ae2da7 100644
--- a/jstests/libs/client_roles.pem
+++ b/jstests/libs/client_roles.pem
@@ -3,52 +3,52 @@
#
# General purpose client certificate with roles.
-----BEGIN CERTIFICATE-----
-MIIDsTCCApkCBD/sHwgwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MFoXDTM5MDkyNzIzMjc0MFowgYMxCzAJBgNVBAYT
-AlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQ
-MA4GA1UECgwHTW9uZ29EQjEVMBMGA1UECwwMS2VybmVsIFVzZXJzMSAwHgYDVQQD
-DBdLZXJuZWwgQ2xpZW50IFBlZXIgUm9sZTCCASIwDQYJKoZIhvcNAQEBBQADggEP
-ADCCAQoCggEBAOUvxhWWvoP0GgTpOL0c/dj/WSm/uYQdSsgZQUuGr9OJ19iCX6mQ
-1njZ4sO25MdBnSviw9/UMI80REA4nNvRxWQFRe90CDyBpqxuekpUWzhZ/sYNxKNe
-WFr1Oh3DpipNnFVzS3L2pdMkY2T3RnMxJ9aHWXDY4pb1823Lp9OnTZM6ERTDlfZ0
-XJLoO9Xx3VWEemNdiw8B9gw55508XnbNTA/iqt1z/32WgvlgLplpvTnAnCf8kkpE
-Qt+03yZAqSQCWtfzrwiO99hIGwglCfHQI31+Bvr88Iji85MlYvDmpQc0L3jPz5Xu
-dbCo8DfHVttAbTDqlJrGyF3WPC0xKlN3e40CAwEAAaNAMD4wPAYLKwYBBAGCjikC
-AQEELTErMA8MBmJhY2t1cAwFYWRtaW4wGAwPcmVhZEFueURhdGFiYXNlDAVhZG1p
-bjANBgkqhkiG9w0BAQsFAAOCAQEALhDSFBz3WBTYmrLU8I8pIlRCgcRTtJWwnzZo
-QsC8nilyN5MVDS+RyR6qCUoGhyQqYBFdQ8xML+m9JGUnZK7Xi+ibZ9EiDX7Q7XnZ
-ROps+LzKqIipafWd9BsJk4UV1hpeAhRZSA3HnZGqBSzTbd5uS0tR+dARCEduT9JX
-qz0+PziACM7xetV5uEaWcWn4df4g4Hzx8k8QXvRymktB/vIeHq+ixGe5SUzTDu59
-Sx7GLdG0MzLVrfBiYHjmoCTAOvi+FE/s1LK4txvi6j5ZNbD6hYzN5vzHWfftd6+3
-ozPqSM7WIltsShB0JujiUVY24RVafiRgfdUixmiegly1tHLDww==
+MIIDtjCCAp6gAwIBAgIENm8bejANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjCBgzELMAkG
+A1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBD
+aXR5MRAwDgYDVQQKDAdNb25nb0RCMRUwEwYDVQQLDAxLZXJuZWwgVXNlcnMxIDAe
+BgNVBAMMF0tlcm5lbCBDbGllbnQgUGVlciBSb2xlMIIBIjANBgkqhkiG9w0BAQEF
+AAOCAQ8AMIIBCgKCAQEAyPzl0H1+eLYJ92HXheslqxl9Ph+uI6VL+4fb0ES6ss8W
+v5zUO0s5jXIbFzFnGffSfzvy2OAAm02dOVyU1pVRaPLzj1sOg3gWuwaNyHooBug2
+Cn1QhIglc9+tsik7KWFkSS9LkKT8W9U0Q2bJXeux/UdqtPbggxHpyW5Z9PGGht4/
+PLVtWCNgPpIcH98hh/MXOtWY9yB6cFHqWfRza1p5DPUju5FqL9HLBPCWDUrM9s0I
+5p2+Sr1/jMrmSQ8TYAczQiniDzXFJUozSKsNQbICp+Qkmg7rQgkrOrKU8E/7KMlE
+CmdzuW8r0XCCmRcurQcSOVMqy4NWmjlGzg7wQi3iQwIDAQABo0AwPjA8BgsrBgEE
+AYKOKQIBAQQtMSswDwwGYmFja3VwDAVhZG1pbjAYDA9yZWFkQW55RGF0YWJhc2UM
+BWFkbWluMA0GCSqGSIb3DQEBCwUAA4IBAQC/a2dpkqo0jHBb1roMaVzw2f65cPHr
+I7MMC78+080GFqdLhc2h1o9UvvTS703NLVd/eu6VmSdrsLpbuun7/vXcONvMK38U
+N38RhkC0tZCbm5BNBf/8QMuHbW1ZjdPbbpMaIGZP5k4W5YYsRUnk9tfZ9y3EkPaf
+7poApuxDyzci0oPiPl1TK5KS6H4X3z9/l+9Mpv+UdG+/ckJGEoBf7B+s7CNv1nc4
+meLqea0iTA7+bdQLDpbQ1f6HSx64Bqb0w32hc/Y8541eaf/Z/wMjJ40iX+0MSKcW
+cobRQr9pJ4tBvW8p0iqhZjN1EYXnxaAulBw7B/6hsY/eDmavg49qh3g0
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDlL8YVlr6D9BoE
-6Ti9HP3Y/1kpv7mEHUrIGUFLhq/TidfYgl+pkNZ42eLDtuTHQZ0r4sPf1DCPNERA
-OJzb0cVkBUXvdAg8gaasbnpKVFs4Wf7GDcSjXlha9Todw6YqTZxVc0ty9qXTJGNk
-90ZzMSfWh1lw2OKW9fNty6fTp02TOhEUw5X2dFyS6DvV8d1VhHpjXYsPAfYMOeed
-PF52zUwP4qrdc/99loL5YC6Zab05wJwn/JJKRELftN8mQKkkAlrX868IjvfYSBsI
-JQnx0CN9fgb6/PCI4vOTJWLw5qUHNC94z8+V7nWwqPA3x1bbQG0w6pSaxshd1jwt
-MSpTd3uNAgMBAAECggEBANXNlYr6T8ylYciHEYlKjH1s6O8LjrNy6Bp3hPRCN7Ct
-/RBbv4ZeOdYP3X4bFp3T1h3ktDoQpyRQ7ALFTX+719sRGEbkBfL8OFLP1YGV5GtT
-eVul6HVHREHGV2sA4/i+4kLNBeu/sL6iSZ8dFznK95EoPwYJLokJ9QfOX0gR4Uqf
-suRG3frdWsj5KbNOsG+0A9b/vWfhzCxyUjZCiPlKju03QvuYaoZTekrJDOEddXVo
-YO5WhB0AV2rd9zApEd7triX/OPrlqZafLiQzaqQCGSAHb4Ufqt8AHThh++KJesCU
-vSmeNQXr/NQeHtteikg6y2c325yxVeWmEbXMzOvFGHkCgYEA9kjdJ9ZnhnsdQihB
-SvofGXsK+6WsEuR3E/UZGGxFNwoDCG1mCbFZDZGAueHiXWCXY9iBFQQVZ0Zk+ZMM
-Pva5+pc0vBNJ7Y9a01yrKk84/SiO+iyLXzcF98kXcHzs+Yr7+y79zIpBgE8xeTFJ
-PEtfZix7CKTEEm5IxBzTgm3ixY8CgYEA7jo+VhD+3n2+hQUPKahMEHl/BMo9ebYE
-PLqq3CNScUtJ+z7j77kjSSU7O8LiGe8x62356tCJRGJHCUzTC1o7A5+7aTJ1nlyN
-sLSSl3DkoDazEuJLadkVBDH39Fw4MD7yCzW/1AOOdr27nvLfqORKGGti8rBJ94EC
-Z6AWOgvPdyMCgYBAY4BeX/Gk+R8HItsfLRFgagjPDdtU/SIct6Gd/wCBiT6Nv3xD
-4Hf10iqjbmjuHMi3s+zbf7vQyliv3z/+Xib1Wv7QhQJ491e5lqqxXxD5LtdilK7D
-b/FBfPOB10dlXm7OltSH20WQtCOtGbOZ7eK9Jbfs5JbWcrrXeunZWb1GBQKBgHoI
-1A36vtTyzToPEWlhkTWPR4YIo91JZHpHlWcXoQ/wZYGTAei3il/Z9rHybyih44ya
-1b93/BlPztvwwtu56Sk+Fh8Zfi8Vcm/m0IFLj5KS8sDls4QRdDal8kL3SsFMPWmI
-qy/McppZL1eJSxGVgG9p81InBH0JVVYIJ9qsWibJAoGACbAjCkDEFi9K4yU5Y28H
-sVsy8fFpugU/dxI3lzxEKEEUyHHQN/MrNzsdLLq3U6vroO5NwCWlNGqiz+MF32D/
-XjTwuc+iwK6s9Xzchz5+5biUBuIbgCP9GED0P4GGZNLElxLNce9gzTp7MTrYA8Tm
-IZ0p2RYAcbEtUXlezAP94ak=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDI/OXQfX54tgn3
+YdeF6yWrGX0+H64jpUv7h9vQRLqyzxa/nNQ7SzmNchsXMWcZ99J/O/LY4ACbTZ05
+XJTWlVFo8vOPWw6DeBa7Bo3IeigG6DYKfVCEiCVz362yKTspYWRJL0uQpPxb1TRD
+Zsld67H9R2q09uCDEenJbln08YaG3j88tW1YI2A+khwf3yGH8xc61Zj3IHpwUepZ
+9HNrWnkM9SO7kWov0csE8JYNSsz2zQjmnb5KvX+MyuZJDxNgBzNCKeIPNcUlSjNI
+qw1BsgKn5CSaDutCCSs6spTwT/soyUQKZ3O5byvRcIKZFy6tBxI5UyrLg1aaOUbO
+DvBCLeJDAgMBAAECggEALAIkGAjCfo/tkrtbw7j/YH2OTOIG8UsqXgMbgHjsIGbz
+5jTiy7DnAy+u+t8YYjk/YBiyTgaOW3MdMAgzluDPGJnJ9uPLQ8Ixx/XhabpFtW13
+F8jkroBZIwwhLleU2rS2jsfKVfuqPjlq3i9NfEE1ke3nUYSVGF39wNtm2xlfiXwR
+IAA7y9fEegEA26sRErlNWZF6Lya1muK5LqqxbKcknpM9em7pW96GBToGqxy5DEGr
+oOnQ0+FEkYVTIu3Lzb13k3KjeVh7CllbBa8O1sYgnZxwdqkjilrTm2miUqGKyT3Z
+zuHNWF4UwGgA0tt2M0mjHegMfBJrobP1lPDjLJLsQQKBgQDpfXzlRw/yVXTYCxYF
+IhZvt0uemW5ZeiYIwtWPlB8F7eleXS+rldk6G9ZQaVxzTEN8rTGk9pOV/TQdGBuh
+Wvwj4z5rBnE7NUc4JioE0/9TwR/iJ97nxIZBw7ugYVF6nT+CEjWxD5EK2CRjCHtH
+DmSs6+8i2nIJcfFRuUNhSeMT8QKBgQDcXUGrR+xIhcrCe0IfU80rDGP72nNtLhxl
+JruOivmiVIgvKf9YJt8Fg/NY/nXt5ZLu+X6fBmqgea8JRFgMYJLwhwUH233Hk6qK
++crYKD+gvcmudrnW+KuWU8xb2Igp7+SdUEs7Qc0N10gIrdNLy07TxiUV4+K+uQo1
+gJMKSaO9cwKBgH+ezF5ReiDdnrDbVlzV5eeICzgT6uHTRuiw/aOttUs7X7vpOT4S
++JmvT3PCMvr+K0EBNUpSUBbCP/LLE4cdQQWolpxO+CMBmvzQt1TOPxebTn8Bhe+u
+VieqAWrG5o8bVfQVWe1+cau4uiK7Jw6Oim6NwraNKZmKAvnFRlPt28UxAoGAHh/F
+fWOsolFf4Ww2ItAy6OKdvG0lgFRgX1eHJjpLW+yQXVoxZNyTek6Kcqz+dBIBHxgO
+PjEDXIKl8e9c1fxRuf3LK0LPE/xUwQDawOfnotKvAmGKkB+YXUmBU0DrhEgeCX9T
+eXtKS80VNNKGYwMc+IhKw45OjeH/ykaUU0Cz2I8CgYEAwCLQxklGrlsTPehgC/CE
+0ZKYRGACqF3T+jWIsUP8BUABHxQsIik3mXAu7tcqRcD+E8D0Ctlqc70xFanSEmYa
+NN4gxX8rFBwKTmgQb7+25r4G7koGNqIIx2cGJVVF3RVokPTdbX7NEER81wQlZ4uK
+RbnNju9uqfxBtl7itm+pGmM=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client_roles.pem.digest.sha1 b/jstests/libs/client_roles.pem.digest.sha1
new file mode 100644
index 00000000000..8a0cfa649e4
--- /dev/null
+++ b/jstests/libs/client_roles.pem.digest.sha1
@@ -0,0 +1 @@
+065A489D101C23DFA6C30BD1956D743DEDA4A422 \ No newline at end of file
diff --git a/jstests/libs/client_roles.pem.digest.sha256 b/jstests/libs/client_roles.pem.digest.sha256
new file mode 100644
index 00000000000..e751586dd00
--- /dev/null
+++ b/jstests/libs/client_roles.pem.digest.sha256
@@ -0,0 +1 @@
+AD26FEAF7FFA89165CEE4CCCEB4C2049B7DA4B8A39C65316A798B2DB5BCCB016 \ No newline at end of file
diff --git a/jstests/libs/client_title.pem b/jstests/libs/client_title.pem
index 0ff000a619a..6ea6036c4b8 100644
--- a/jstests/libs/client_title.pem
+++ b/jstests/libs/client_title.pem
@@ -3,53 +3,53 @@
#
# General purpose client certificate with roles.
-----BEGIN CERTIFICATE-----
-MIID3zCCAscCBFx1USswDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MFoXDTM5MDkyNzIzMjc0MFowgbExCzAJBgNVBAYT
-AlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQ
-MA4GA1UECgwHTW9uZ29EQjETMBEGA1UECwwKS2VybmVsVXNlcjEPMA0GA1UEAwwG
-Y2xpZW50MSIwIAYJKoZIhvcNAQkBFhNleGFtcGxlQG1vbmdvZGIuY29tMRswGQYD
-VQQMDBJBIFRlc3QgQ2VydGlmaWNhdGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
-ggEKAoIBAQDgrE23Y0x6sx1F5Wk8r913t+sh8PucoEvQnRX6+Yh58WiLtJFoF1RA
-bF0DUBCOi1RjD9cdXRonHjo7PpXPI45dMtfnWYNlmo5pzmZOdu4Rg/8cC+jayv9o
-YaPF9nxixpLekHCcTbZQ5Fr0nrnEZT2SXQ64EDQheI5e6ux5QxckBCiBvKouhls1
-7NnxM/sOgFQwBL+esCdmrzPT2Jhcf0HZvCAGQ3o1ljiWt5dSRZHnE5Io+kHUfpS8
-oWxv2Yrb02twfLAf4+R/URQX58Wxhmx9BmPmvxzZ22CstqWsBGW24+tJzyKziyoA
-DsFwgZZNMoMt6kbx7HvrV6r+oWOk8oyzAgMBAAGjQDA+MDwGCysGAQQBgo4pAgEB
-BC0xKzAPDAZiYWNrdXAMBWFkbWluMBgMD3JlYWRBbnlEYXRhYmFzZQwFYWRtaW4w
-DQYJKoZIhvcNAQELBQADggEBAEsVGabdUkuLveeotyIPEUtAglF3ME4begqa7WZi
-U/bbvZdApPmm7P/GR5bukde+oln+obOJ0r0RWkpNCoHEp4N4pQrvQ3BJbrOIpmiU
-M+vx496PPkJ9+ULkHPDsoJIlghA6aqgq1TwEguy1hLDTLUs1nPHW9H4RexUTllCZ
-1pZp6Sfv/3fCPuC/Jwx5V0+WBcCG2GX6XJc+l5hee0RVXywCsae+JUU0LkYqxMRj
-ZWKah/WtN/ENX0wSuQAYxw2rG96eOjFLVYHHlapfvGECNjPiJMYBzlmQtsNFKJFK
-uJISGHhydTMzUmUeF3EyQMNJAn6rnTHK0PDYbw5RdEjaMUw=
+MIID5DCCAsygAwIBAgIEbhN+OTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjCBsTELMAkG
+A1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBD
+aXR5MRAwDgYDVQQKDAdNb25nb0RCMRMwEQYDVQQLDApLZXJuZWxVc2VyMQ8wDQYD
+VQQDDAZjbGllbnQxIjAgBgkqhkiG9w0BCQEWE2V4YW1wbGVAbW9uZ29kYi5jb20x
+GzAZBgNVBAwMEkEgVGVzdCBDZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAM63JWBNHspk/W4Zkebwc4VXcnmqN6stOuwQfjEBjnixL+D9
+osIoE/FU6x/2TwHEOOYVW1FhP+rN/OQRcqY0T8z5Dk4zQACMZZQdNNMbBNmk1XIH
+6pFThn+olAsq7KbeNsQEtlF9EWIRxrpc+C7Oj69o+3dCJbhRNdj64pw7BrPfOo95
+nM8G0nkCJyKQkpWouDinSssNaeYFujtQWHQ6aTn/Sj+6ta0iwzm8Js/QD9rG6SOd
+2owC62yuK0eUrfkf6xADWe11decK9Y4oEZdbtFVZfHm494ovPpaEe++5kUSRp008
+rDvJBqmIZX9dnd5IGP7DU6PtSEB897Xmk/oiBEUCAwEAAaNAMD4wPAYLKwYBBAGC
+jikCAQEELTErMA8MBmJhY2t1cAwFYWRtaW4wGAwPcmVhZEFueURhdGFiYXNlDAVh
+ZG1pbjANBgkqhkiG9w0BAQsFAAOCAQEAcd974FGDy5YioMZGZMV0N1D5Nrima43E
+uX0NhhYWuThs4NnKcklp5bH4Q6FvqkbARlALDUIf46AWGET2Zg98fSRUeFNf0QEu
+OnoxPCjlm3f/YYbCsuEzcNpN0a26dEWAVU6jPc9Vz8zJOwmGOiH+x6WLhDPFzgn+
+5Btzo9672tGb+a8ZInKxaZNvpCZ+6zggWX9SxiI1ZG0MZTtHdiXopneKlB/8s+sh
+K7qOOx98pXICEB3VFd41chlU22UkfAuVe4ql/iLr84lyF4njbbp7NLAJuAoC4Scg
+L7jq3qaDOu7khniW+9TRLumpH98EDBO817G1y5BdcNuWs3iIxZiLKQ==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDgrE23Y0x6sx1F
-5Wk8r913t+sh8PucoEvQnRX6+Yh58WiLtJFoF1RAbF0DUBCOi1RjD9cdXRonHjo7
-PpXPI45dMtfnWYNlmo5pzmZOdu4Rg/8cC+jayv9oYaPF9nxixpLekHCcTbZQ5Fr0
-nrnEZT2SXQ64EDQheI5e6ux5QxckBCiBvKouhls17NnxM/sOgFQwBL+esCdmrzPT
-2Jhcf0HZvCAGQ3o1ljiWt5dSRZHnE5Io+kHUfpS8oWxv2Yrb02twfLAf4+R/URQX
-58Wxhmx9BmPmvxzZ22CstqWsBGW24+tJzyKziyoADsFwgZZNMoMt6kbx7HvrV6r+
-oWOk8oyzAgMBAAECggEALVS2jYTcfnk7M8oY1KTLM4eJSpzbt3tkMKAxOiU00x3R
-MTbqi60BU8pJbgyueoREL4SXq5YIW9Iuf5ueEGAlLkq+4y/dYhewGksJu1UlraUL
-SPZiMhr5M29X4u5bpHZaVcug3PiVC3c3ntmTs7uVk71w5dRnIEW5vA78TW8q8RoA
-5xE04WjKniZOkMbmmSnqYvII3kWBmej5JPE3HvF0ZBkVnDW2EILBekLk4gObMfAQ
-Dv5nqAYVowpoqrhtnNk5/aJjmdiqj8IKv0iM5YayHFegq09ncIjh5tR2RdqPJC8o
-GFLu0DzxZ1IjY7X8yvc2x21I9xJj91xcNseGq43IwQKBgQDwfN1qtUdvO0AA2XN3
-fiyNMd/v31iG1MXRx5b5aoQWazA1pYHn67LnFilagYjGkbFPNSAyBPD3virpMl4S
-KODJoQIcERz7INDd+lmjavHSz7buBCRoic/R0kJMQnQdvumSLNcFzTHGvFCqwwGf
-2YIsbuFE/W6QTi7+DHc45cXn0wKBgQDvKksQ4YuqRZTO42mPWldPQKhFWtEdb2uF
-cKHNGM561jEfL9iV3a/vxYJsz6TSgXFS532zdEtPpcXgNJMkfwHpDwfxKAlx2bKO
-uIckMN3ADFXZYOO3bkyFvYECRBXi0QntewBMsmQeyE+MI5b92TG6YXxFTWMWHUdF
-3pi5cwWboQKBgBci3CZk9E9mMt0iDnLDh8O5taKdKSYnmDR7cDHkpnqFq2it2JaY
-XWjQAAB+D8uSvq0xHjzRruEWwYgX2WcD2cRsIgjTOKeMW6vPZwpKwqMWarHxYhNQ
-ltbH1KsDhapK8KuodrNPL2fAPD6BbkmTomtl63Q4sYdejjTQvDOUH3sTAoGBAKdt
-TSWhL3vgwB7hVsmTLeH+Wo5K2G+py3Sb97kzr4CQp8y0WwP3MK5C714rMrBnC6VF
-B1t0gzBb1Z1yULvQ6c50xlONeqcoBnchOQId7279c6/8ww1resh5dHHYphWlzzRf
-0kLe83YVNpLda1uEC+r1SeDeHwqhLn78KKBSpE9hAoGAPWODI94wPsB7ICFQtTqH
-eNwBOcXRvwPckQZ1DiOkaY3HB9uN9oG7tiG9KVO6cLq/03VeeWVFPozQ9uPouGIp
-rAIRGw2mZgCq1tyOwa/wqEXVXUsapD6cTRN4+S45kJTjD+F9bV+MM0cfx0LJ7PXZ
-83RQg/B38bhwCm+yK7SKyUo=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOtyVgTR7KZP1u
+GZHm8HOFV3J5qjerLTrsEH4xAY54sS/g/aLCKBPxVOsf9k8BxDjmFVtRYT/qzfzk
+EXKmNE/M+Q5OM0AAjGWUHTTTGwTZpNVyB+qRU4Z/qJQLKuym3jbEBLZRfRFiEca6
+XPguzo+vaPt3QiW4UTXY+uKcOwaz3zqPeZzPBtJ5AicikJKVqLg4p0rLDWnmBbo7
+UFh0Omk5/0o/urWtIsM5vCbP0A/axukjndqMAutsritHlK35H+sQA1ntdXXnCvWO
+KBGXW7RVWXx5uPeKLz6WhHvvuZFEkadNPKw7yQapiGV/XZ3eSBj+w1Oj7UhAfPe1
+5pP6IgRFAgMBAAECggEAIVlguUmX1xU14aZUaIqQSInUGRbCBma0o9MBWMykfIox
+bD3fHS20EfIeQLjPBDzw5QW7BsUGt83lp7G86l10JmBj02/nOm9sD9oqZIhuXuJ9
+4Piv+iQchcnfoHGbXkxpT3RnKXxg6o5tnjFThNGkUqtALnxIc5T+d/P5zTSkny3x
+BnR/cHHOo+FPA9X4wUjdpKKH6WuRTmb+rPUTlrY7n5D9OF0JtcTMhPyAYGbe3H1I
+iRVFie3+GIilMmFnUaN6kuL2iLMNRNR+OIKjabQuLrLS2x7B/1SaBya7qGnnU/d1
+P+akrGJeX5QBhXBupgzQGF5Ef0QbDoxrIq9D9bluHQKBgQDxvpq8IrwScFuzZ5Kt
+MdIBC2yED1Fz7czOO40r4HrUAFhqwHz1aHzXGXBE834hqaRE8rp/n7Cfedf990Ku
+HRA81nQRIdhgv3vDHj4GaQBcfsU1DDtnz5GQ7AJka2zjK/jF10Bz3a3G0e9bp0xp
+XVdEB4ecldWgd56VD9NEaoML/wKBgQDa570m6ktm3cVZk8q4cfbAJb5iApGYaazl
+/tkrkLnihEjWHkNwcZ9zW9vj32OZajNxv0mEcWGS//dUomknbAjMje18R5FptTV8
+8HZhwdJNbgE47PqwfItjoT2TJJLOWbXJC74sbhwmr8JFJ3YlNr37XNIUI7+Df5DK
+o7FhHYu/uwKBgHP26SdCylFWEMc48gWfFoxlvIKFDp+7/TkZHBlmL8Wu/LsI52iZ
+3PkaPN72pxTi2egxQAGkywdVXaV4jUYUrwtgHIFzaObQNEBfK4XLrN6x+Uv/OCgO
+TFfmvycI2U0IdOgC3+o09v2fC2E+GcuZeRkrO4SD49x8RVhgJQp2xbJlAoGAMFDP
+1gQGinjOczwElXtJ7BUolTdd7Vb9u3Hpew0hihaKgQADAJGDkRGoUf5fXGAtZKDE
+2D+yOqDWdU63iOT2eDenQDQHq148pQvqBR+jjEWIbYkYt9V1apMPJSgAYx03210F
+J4dSHVPTvDG+iO4xNobBM4LEZYDFc4R3xSihTLsCgYEAgt0K8VoBbsbzWT5AbtUt
+Nj3K1SYNOekYo0tylmoxEMWU8XPVzzrALNUALet/0fW4RKG1g0/19ZaJdXCofVaX
+WalZagr49BT3QMBnGQJSOJGFX3Zje5QbmBRZgHVrkADXuNgDMac3sBTcthR39b4E
++xCGpMK6P4VV1Bj10fyK3Mw=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client_title.pem.digest.sha1 b/jstests/libs/client_title.pem.digest.sha1
new file mode 100644
index 00000000000..9314837da5e
--- /dev/null
+++ b/jstests/libs/client_title.pem.digest.sha1
@@ -0,0 +1 @@
+689F782F2CE3483FDE3CFB70E9E22800C604FF14 \ No newline at end of file
diff --git a/jstests/libs/client_title.pem.digest.sha256 b/jstests/libs/client_title.pem.digest.sha256
new file mode 100644
index 00000000000..f465f2a44ed
--- /dev/null
+++ b/jstests/libs/client_title.pem.digest.sha256
@@ -0,0 +1 @@
+183BD149346634BE397BACE2B8231CCDF8A435104CAC12C6E9C1814BFACFA8BB \ No newline at end of file
diff --git a/jstests/libs/client_utf8.pem b/jstests/libs/client_utf8.pem
index 6c32562d7c2..eb34840b076 100644
--- a/jstests/libs/client_utf8.pem
+++ b/jstests/libs/client_utf8.pem
@@ -3,52 +3,52 @@
#
# Client certificate with non latin-1 unicode characters.
-----BEGIN CERTIFICATE-----
-MIIDpTCCAo0CBCAI60kwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MFoXDTM5MDkyNzIzMjc0MFoweDELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMRUwEwYDVQQLDAxLZXJuZWwgVXNlcnMxFTATBgNVBAMM
-DNCa0LDQu9C+0Y/QvTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMNY
-tgYIKfmX0XsbLINNB45IQfTs6PxBP7p0u/tYzXvZPqjoHafpVckhldu38zdY6512
-YyQcUKPPPiUeKi9pa3UCWRfwB+PgjlmJspSoqizmoiiFUtq9IUZkmuN/FkGeEd4h
-u5DdVX32y2xKoi/ZWI9u2bT9mCM7Ovprlq4LWpeOA/Kw/UTUtgaO+H+FO7NzDhcv
-40mETKOiNrKqT2lIgqryNqglWWwL6jnFpZqeSnrbqTJV8bzWzJ28Iv9hgTtMiJM3
-pTYDu2WUb9wlLG4dHMDBS2AuaN0mzl8Mejbq3jQYNHGInta5wQGiPtQxEu6i71HS
-PSM/AlRlxsCOsL5dVmMCAwEAAaNAMD4wPAYLKwYBBAGCjikCAQEELTErMA8MBmJh
-Y2t1cAwFYWRtaW4wGAwPcmVhZEFueURhdGFiYXNlDAVhZG1pbjANBgkqhkiG9w0B
-AQsFAAOCAQEAVnKddrdyqkJllWUOPzgvPw8ZjJBF6XjgEt2jpr3tI+eskaBApY1M
-jGqezMJ6VnbSz+sB2azBjtz4SOomuLJF+6TtVLjoPhEj1jGTvEqMUR4LImQ+H5ak
-7GQf/9yicQlP3eRw6oRfO1xYDvsaIeDz7dmAjom8+34jaf+aznLGbYlOT5XgruVs
-rh8KDfQy0BxUZ+O/9MtarerGMNafb2ottVX5KA0y+pFwCOIWuJ1PnAAJIiLvSVvi
-RDnD/qzdC5U3afXVN0peuHRiu6fE+DPbIamAB7QSsNMjmBfPp3OO29yu0LX+b6jg
-9zYO1cNcbS3k6HK7g0xOMZZ3vVaKSTywMw==
+MIIDqjCCApKgAwIBAgIEd+OXqjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjB4MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxFTATBgNVBAsMDEtlcm5lbCBVc2VyczEVMBMG
+A1UEAwwM0JrQsNC70L7Rj9C9MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
+AQEAvMqJXShCsc4p+P7CQ0KMOb4h/tkAovPsv/5tWNZGaa1aCtHrkH31vTCdz5mQ
+nRMm8tYCkn7ODHYbE7c6YMYshboPnVIdLSwGhGAmblF0N/IpGhrgHJcmnlLPVjW2
+5R/I1HLe7NtCZbO+rMG5zPJIyLqdSJiDLWX7vygsLx7PjgVFqymQKSrvtVi1v2Zx
+siyfzrT31hT7mEvWhW11JXYNZLZxLHgNSnZL9FDe/RXnAHbF2gYhmzoOxSDceefD
+vPylZXy9lqgT5puGvpE7nqXf1tcmoIsyPRTFf499E7g6Q3TcOTJQPWRytPvR8h0J
+pvUQk5b7EvrPFCNbQHfOeQgVjwIDAQABo0AwPjA8BgsrBgEEAYKOKQIBAQQtMSsw
+DwwGYmFja3VwDAVhZG1pbjAYDA9yZWFkQW55RGF0YWJhc2UMBWFkbWluMA0GCSqG
+SIb3DQEBCwUAA4IBAQBu+46q9zu+N0/XeVZftDwhizAg8eSvouryfixTXjXR5FuX
+GHt+FGlEs6ZNDUIsK/wYnpocJl+YhdACP8sWRMDKXOVwnyNWuMR1wBJ5bEUYrrDW
+HIXnJa/mtPq/oZd9bVA9W/aGfEpZN5tyfmCvlIN4n0fwVtnEeMoXGR8PWTs4s35g
+NJ+SzE8JY7JIKKR8+dPeVv7qv1OlbQF6yXVx8CvPv9FuPIcboFOpWIpliLU8ROVR
+N/Aq2Zf7MCXpK+8nZnA4O6mTNaeQZDlLpu017q5XGXqhgOqyFIKWOOJbWEVN14JZ
+nkYA6KgzV9IczoBimE7Sc002KoPkFjX0UlbmX/MS
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDDWLYGCCn5l9F7
-GyyDTQeOSEH07Oj8QT+6dLv7WM172T6o6B2n6VXJIZXbt/M3WOuddmMkHFCjzz4l
-HiovaWt1AlkX8Afj4I5ZibKUqKos5qIohVLavSFGZJrjfxZBnhHeIbuQ3VV99sts
-SqIv2ViPbtm0/ZgjOzr6a5auC1qXjgPysP1E1LYGjvh/hTuzcw4XL+NJhEyjojay
-qk9pSIKq8jaoJVlsC+o5xaWankp626kyVfG81sydvCL/YYE7TIiTN6U2A7tllG/c
-JSxuHRzAwUtgLmjdJs5fDHo26t40GDRxiJ7WucEBoj7UMRLuou9R0j0jPwJUZcbA
-jrC+XVZjAgMBAAECggEAOLeFAfNU3Jbrx2Z4Yhb3XqQ0Ijy22KbJLgW+npeF8bN9
-seTS13Gz6pXJwOWDxEoY/rrkxhNCho0haf18Gg/tlyd7XqveXpdQPUbxhqAB6M99
-vW4YRFItWxbSscKwX5TZczkwEDtzGwOQxHxW4rWkNODmbNpEVdZYpWSfdyDsyJt8
-0g+EMHj6A5OIEM11yrnrWzM29aB/Xie3MPbSYdMjg/BPU8Y4r/Ny5qUL90NzCdDg
-rOavcu/z3P5rJhWLwMzxro+JmveznptkcHZE4T9YfsIneOPQHta4KLc5fVJvVodp
-MybIVIDDpHyOTH+jvWWC79oMA+oGj08F0bsu6eux4QKBgQDzJPaiRWyG/hfzKtxE
-XaS2+Ran2Gjtg6S+qn/bhEps6By0P13SP40N/TjckQSXrUcljC+aGddjIUZPRgCY
-UMz+qxVInYLj+TJDFkHUq8B8UYMlk35yq7bymYvpJZR7zFYqgpVjogL4YlDRR8mN
-lHOTScpDis1AXOFSjqzMfRobBwKBgQDNrMnS89IqqqTSlAi5A7ADooD1k/yTZdrY
-8cBkK/RhVJGM5vSsRviNbC1jpSKFJonFfsP2iCbf+ZqwTourGrUa//VDG3jzG3VY
-lKoQrPC0DIJ2luGsbigHQw/Y9TFngTrAHjNHUvGMVQzUYCRbJaTxFO8BpDPWLvrV
-KP1GZkCmxQKBgFbDR+cb0uBQ54b0MmmK6O4J8JWwWbD3muAWw0035b77DNMdEYOm
-/dSSGapLbVIamRrC7XGV6xAKnaZIGoo/uwbdUdj5q+1hzRe3Z4JWT3eNNrk/6o1M
-zRnAxPZLXLLYdZ7xvhExjNHJc4FaloeZA6z5Vd3IN/nRqu3kz7Cgq6IdAoGAdp8f
-T+F750vAAAuM9FgiHhaNVhXh6IkoLVNQ6PVI3xHNWHyjxPCxza8EhqHpRO4zK4qv
-LvLbqPXmt6S1fRvMNCRHqkqf+WZuyYYEh9WWheFpJUhkI/TsdTPCYhkYQ2APKFrC
-rHI0CgHLgnlovoD5nmm6ZzHzC6bQ2Dvpx76VrxkCgYBLz48d7P4gc/pCZaRqlTHa
-vus0BgegTorPFLuI4pjt2KU83Lds+nu+mAM+0hzt2sDxyQHF9dDWGRIW59Q7UH7t
-YmFTMD89l2K9o9YjGuOukYhW877V3M2Fid9FTmDKeoEm2+QGK+dpLk4wbnR3Eiy8
-aS8C0HDcUmBVg+FKvMCnBQ==
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC8yoldKEKxzin4
+/sJDQow5viH+2QCi8+y//m1Y1kZprVoK0euQffW9MJ3PmZCdEyby1gKSfs4MdhsT
+tzpgxiyFug+dUh0tLAaEYCZuUXQ38ikaGuAclyaeUs9WNbblH8jUct7s20Jls76s
+wbnM8kjIup1ImIMtZfu/KCwvHs+OBUWrKZApKu+1WLW/ZnGyLJ/OtPfWFPuYS9aF
+bXUldg1ktnEseA1Kdkv0UN79FecAdsXaBiGbOg7FINx558O8/KVlfL2WqBPmm4a+
+kTuepd/W1yagizI9FMV/j30TuDpDdNw5MlA9ZHK0+9HyHQmm9RCTlvsS+s8UI1tA
+d855CBWPAgMBAAECggEAVOHTZPknE36YTIVunoMbPRMJgeXbbWiyt5gTXe/pdLYm
+V9sOSMb5Z/il26M17AmiZ2hle6xbxCqN/g1RyBUSC4YeYyN6TscOnxID9XHWCRlt
+9XjD7tbe3CxrYF2CP/5Mc4i6RlBGyCdKwa3Qdh8xLl8JPIyl3hGOYOIVC5KUy0s5
+W4aQhgh9AlqI+wv7QugKrC3ZAdcRT/FwakcpmC+C5sUN5RxkldhGuYwaBaC1z0Vh
+8xk1EvvDf7oqoJRyUHbZW8hAXY3Ei/RrQnwTCU58Y24NBCJNxF7rV9ww1SwJ6HtC
+ApKBwM6iVtJjzi1GkgAXIS96RJB73f2YNLy45C/iYQKBgQDr546tqBL7G8lIEa2r
+nl+wsDjmpQPdeRxSgaSRgmHvFMVtuSKivVTD8w/xVjzi44D6fHf7hnt9sUPR72M9
+XKUTf3rjg45jQIfbwkRJQ1hpznLu5QMZWhD2VwUJAbCnzNw+yISpBOuU4W66FA1r
+TPYhZdb1k95pJnQlWa6XU0BlNwKBgQDM35BI9xFKmoCls8uFDH3F2Wkiafj0f2PH
+ikuyT/Wzdw4cyIITN7h9GCXgsQ70t9tALgoSlWODMtkBwn5iKCxA0RcIKEfOEZLQ
+i2W6nrVEh4cNePzUa211IHKbiWmHRMTm7K+hmMQua7k0kU1QaMbr+G90MsoISQjV
+g6F2Y17+aQKBgQDXSjIaJcN8y7T8QrX+Y8DsnUawp3RJkRfZ7FrmONlrucccBdOo
+NaXAVnj8RTm3zuyMrT9Km0bkRPyiARjOjVhR3Qunyw4NYn0af8aWHhH4LeMSRop3
+fozwZCZCO/qeiQWPfqwjHExrSPkmdNpyTIBrpmdxI4vc5q0k0R3XGLEyLQKBgQCs
+DK+B5yK5USjqfyRSNpxFFACrqu0sfvLPdv983pOLRFcwqt45v1iKjUX5/Rd/Qgu5
+STCiTJyGaKQ/SxOR4QTQ5gb+jb1HfBCcXARxhajaxSoQkWNaDGGetEIrBmn99C2b
+dHdGMSHHjiW51LBl76fmMPuATMrHzHXDwUhOQMNcyQKBgBwawHWxGAGm9Yzpjg86
+p+eK+KZX/INuLOtkFBNiaGhRbycvI05B0uWe1VGmhNaO5V5lrWniMuKuMQpNXIkZ
+73kMEssOlCf/z4Q7TB/LXoLdCtFjb06ZB55if9uTglewy+260TaQHxtKlpiazI3G
+JwDm0XRKm0TavwjfFinDJ0II
-----END PRIVATE KEY-----
diff --git a/jstests/libs/client_utf8.pem.digest.sha1 b/jstests/libs/client_utf8.pem.digest.sha1
new file mode 100644
index 00000000000..41b06c70d10
--- /dev/null
+++ b/jstests/libs/client_utf8.pem.digest.sha1
@@ -0,0 +1 @@
+A70A1D8408B98911E5C98B8986581ED8CB630EDA \ No newline at end of file
diff --git a/jstests/libs/client_utf8.pem.digest.sha256 b/jstests/libs/client_utf8.pem.digest.sha256
new file mode 100644
index 00000000000..1665d1eaecc
--- /dev/null
+++ b/jstests/libs/client_utf8.pem.digest.sha256
@@ -0,0 +1 @@
+DD74B0EA2C4AE0AF8E0F57E2F095B4E7236FEA6959D82F5965956725C402BBC7 \ No newline at end of file
diff --git a/jstests/libs/cluster_cert.pem b/jstests/libs/cluster_cert.pem
index c3c2f7b2972..d6cef5a0733 100644
--- a/jstests/libs/cluster_cert.pem
+++ b/jstests/libs/cluster_cert.pem
@@ -3,50 +3,51 @@
#
# Alternate cert for use in intra-cluster communication.
-----BEGIN CERTIFICATE-----
-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
+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
+c1qrwPs=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDJjD5hj7jmy+9H
-LPlbsI+D2+eP9kvoBBqyK8MHcAw5SKmrnzN+0gEQqPYn6XT7heemxYQfNGkoJpkE
-bYtwXfLVETO96mESTSu39JXZyfp3uno1PQkj54qBcAqPLWWjmlPNuo/Bci2PX7ho
-mdLomQ7n0Cg7LIgENuDg6MtVMEfIMUJRfcGnPit2zf8JcsMMQ6seggr1a34R+tSk
-PEZCUeBHM2zWcKjNFbSRxhmDUYtg3q8y+YA4iov4om6134MF6xMkQP3EOXYgShYW
-ufe4SobJwKsj/DmzvXbQ0FfrUq0doDAgoSzmeEdPzw+z8IBL0n6XVDj/BZlZxBer
-wCjjcPxTAgMBAAECggEAc3ziDeNd7xnyXRV/OTPduI/ci1h1PFiFt4xt76gbyQNC
-/e12g3fwVkyK6GnUt3+OMrjBMWRF0VT0n13p5ZRf3glCXdOclfEUWQ9UgnxDAjIf
-brwvrZwyeGLsGgjIUcvPs3Xwg8daJeqSb5WdDd0OdnSHaQjmU4vipd2fDYxhxWq3
-fJ+ATcf7Duok1B0xddRIHUkOCu6cQCq1w0epl3QI9riR0Il//0dVlgHTm9u+6Ujm
-+Vp52+iAqZ2vayPgjQMFDoDYp4k47N0mGlXdnxq9GIAO0Am5ZIG4d40fN2XrtrW5
-wwzkoWqGvjw1v1/OQ20TfO3MDIxc02/+V27ASlAQ+QKBgQDz5K74e4vhRCqyWqvY
-Hz4ADERRVw1/tZNXqbhY9tNjdwdf6S4VyDpsRaKOY51NJCFxmryCTMNdfkoSLUgC
-DCYf6V+QJPraAdNtWsaNd5f7fDz0Y5sivXUXLxeSxl1PmO9mEaCc/rUVWRVGq6Jc
-def44Im1cLhwm53El9kTI3/kRwKBgQDTjXKiORqF+iFQaqy6w20ms3n1SAglPXEK
-Ehzt5N3AsuclqIPUgUBjARScJes13aEXYGyUg3DfwQdSAl6Hd1sKTVW/A8oxNrYQ
-huofrLJ8/gGkjKJjGZLeybhXmtEzP5jS/0xQrpt/nkLscyNTHfFKztpuix1zdXRA
-Y6zJn6BplQKBgC1IYFQyXB5PEb5bp1xRMKnBnU2c5By6EclM8bVS3pyxFOVx3eSd
-cHt50lytkh8ofi0hla57oipRsF7/mUcICmwSYHPa6dhgTmkXWZYahlVjE84sUDl7
-A6pyS+YsflaxBoHk8/UyNVzpVVHxvAt+uLs0tVzCuPvvaLN/ngY3qR8xAoGABdlf
-VgTmKtYjnamVZQSKPAuyT4nST9VHDtQ5YIp3ZyCLK4thObrpINOi0j5qJm8eSRst
-ZV3M/SLFJQtTucMfDUXeHQ3pxTqSBhr01jNcLACJ4xbQVpUabnZ9Vk69ggE8JHlS
-jtiFDB5AE3GLhHzLcxoNCAloowyYTj9zQ4/aS5ECgYBjYFVARwicOKwj+EoWOZky
-oqWGnDsjOTFtC6Egn8RU5PNhNR7RNM/D81wG1lJXEatER0spS5+UoQkEQuPr0TW0
-HZlpeWAufpLZi1sCLG7kmTVyxJGBm5Vzgmr70qJtHMtLbb6aSdhLJ2heCP6mhaRh
-aB4L79U5tevhHS+Ozpx5EQ==
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDheRo728ofWqHT
+uHpzsunBG5MYcup2TsxxqbOeNSblGsHbKaP1sQqN+ZF2eVqYeRkDPWy8yA9iLbr8
+lz2dLSHdsZJUjsjggJjIKYHwPFV42Hu0yO6MYhElO0FHUBMPpw1k0ovLzW6VpaFi
+E45qJdpFEppCoqBk2QvEGkQ5mCl+BcQ2Y8oIlz40SHIrqmvbmXd8UXdWEV+9axIi
+fb4oUWhpQ+ATJEGj0LL9c/PAtDw4c+fQjQ71HSB1s6EQNDlBqJIrgImZpQOqsd5v
+MqQRpQ1ZQBAStmDtvHnqidrvsJMB5drCsF6ru4yAuQeCNqdOKipItPvJ3Ivf3C+n
+CSpkX1kVAgMBAAECggEAJwjiQ86vVXJJZfAgMvucgHQXqTnr4YOO3Xa1xAQLscpK
+GXlCC30VCLNWPZ6Q0qjUbb0qoBw6nZKxNp2waw+vN0RQwxbdLBDXYn/dIQww9/Ty
+pb/LnL41na5+hKwWQLV5GiVhUm1EYeAE6ofcNgBLo32u+y5QemUhJlgty5LOTCS8
+NRdoSdr+TUPRO9qCkBNuxQfzU4Y4S56sp5eJsZ6rqME7Mjb03ZxBsZxDEeXBWoQH
+ABVFGoeEWOC5Xb1VAHNRy6Dcu5tT3sg0XgKLJr/OnWb+x7guyYcATAcVNA1dw6Mu
+SbCLIKBLhpg1/SlIYSo1umx6kguAbb5MyG3CSL2nwQKBgQD3CovK40JnnSCE79/r
+VVWiQGQPnFU2LOLQVPe4AppJdF+f1HGLpZ36gm5/x/5i2u8aD2zt+83y3CrZEPOe
+Zpyrk+zF8WBLuTfdgevcXk5iQtKj8EhSMoUJr75Nklmpe1IbJdhe5gH/cc1rqLLL
+1LM7qPy/B9qxm0CHrPYbi3WqTQKBgQDpplMRwR9nzNpvHRxxCHQk03HAdIWb6uXX
+nYFNSPNV18PljdiAjQq1o/8qRvC12FIXzcEztKiZIE01mQaxBHcGP8rPVZieoAW7
+p0+CIdShIfGAj3pSBVF65r1DvQn5+VtAm73xZVk/paWyBU3C9f/HfD72FCKO7K+i
+lyVc8v896QKBgA38HNnJb7Lp5DNiWOy7kfNzbbashO5iMBzXEobqLs3FtrwXjK35
+HC5YP+Uf7zitaCezg9kdDhWXfR14pjHrYScdYqP5/BeNTqpNdoqtFAbf/YimS5HL
+plhcCIvfow/DGWzMAamtn6NUT+quTCDZ06Om91fhG/I99bM4iV4Z0PlpAoGAYDhT
+q1MZyNhu+CVH6jCuC+BbzwLtZulUX/gIILizJR3nGajRiRcMWwM/eLygMnL0U8Mz
+FkUGzZCk2za6r7mD/rnUno/Ee0axNbdQIeoms3jUCLqNiCuSg4d0V+oIqr4K20+H
+6FpxZ6mi0+4lOO2vuQosr5BZLvy/07hk9aNIg8kCgYEAp0hCTHC6HTnF0/r2Gjev
+OttVaF015nKE0h25xi24JpUXrjddU40QPiIYgTHt80daYz01TPwz3CPnN7Wxh8yE
+z631hB9hBLr6ZY3cH7XcPPWx/ClAp9oyY+lceTRVhKJbWZcboEUO1k7HsD2Sgd+p
+C9lp6d7zepnwPkiFv0BBjyI=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/cluster_cert.pem.digest.sha1 b/jstests/libs/cluster_cert.pem.digest.sha1
new file mode 100644
index 00000000000..611b67d97c2
--- /dev/null
+++ b/jstests/libs/cluster_cert.pem.digest.sha1
@@ -0,0 +1 @@
+DCC5666EE339AB3F62BEFBA3D0DB7D94121B951C \ No newline at end of file
diff --git a/jstests/libs/cluster_cert.pem.digest.sha256 b/jstests/libs/cluster_cert.pem.digest.sha256
new file mode 100644
index 00000000000..84449a1793f
--- /dev/null
+++ b/jstests/libs/cluster_cert.pem.digest.sha256
@@ -0,0 +1 @@
+18CD5ACA178A2A7D8275976FA81341106BBC0F775F6DBF47035D846A50101CE6 \ No newline at end of file
diff --git a/jstests/libs/crl.pem b/jstests/libs/crl.pem
index 8758de9fd0b..c835a93e2ab 100644
--- a/jstests/libs/crl.pem
+++ b/jstests/libs/crl.pem
@@ -1,12 +1,12 @@
-----BEGIN X509 CRL-----
MIIBujCBozANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJVUzERMA8GA1UECAwI
TmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNVBAoMB01vbmdv
-REIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVsIFRlc3QgQ0EXDTE5
-MTAwMjIzMjc1MVoXDTI5MDkyOTIzMjc1MVowDQYJKoZIhvcNAQELBQADggEBALRq
-fmx+I5myBNSYxPFurb+/T38/Z1u0xruW94KnGF4iQ0ibEil3/dcs058+4nZDIuWT
-ASeLcJLBOX+Ru8yUdCWAqORyi5VgP3W0LmkF9oMiHITfssRB0E2USU8IiKEYXNhW
-weeojaI9aUyTSARk2qqgmtv5NXuf8PUe4fJ5hPmNlWSExi2j1midICfgDEuBD8lh
-2R+ARsaaMg4rFezVgWY9AKE1HHG0ZmCFnC3BaDMWGyLiPbNas515oBARkI+eqZtJ
-8+ky8gjmWiYnR5wpL45L16KE8/Hq2H8O2Slk0oxXQyBtXFxEMoczcblEVv3M4a/0
-kOVaWygwj/C+S6bxsVU=
+REIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVsIFRlc3QgQ0EXDTIy
+MDIwMzIyMDAyMVoXDTI0MDUwNjIyMDAyMVowDQYJKoZIhvcNAQELBQADggEBAHuY
+cW87HAG5icgtgJ6X/z/uYf9oVQCCRU589Vr5HCETIobfkAWOqTM5yxO5Oa+o5G7C
+ZgrEPT2JkDx/Us4kYwY3J3rQSpCSJhMqIAHQIKIojzkyQI6PguyS2x7JU9uEp/Z2
+qeM72ogBsFFX6Ior4YczeC+KAmD2OJS0B2Zed6nSqfmbk2WZf1q4i9a6BgU+46Hb
+HBnfHQv8/utrmVQs2ibCnapBH4ihPz7ZZNRd+0cmv3C/P0rqJF7wGlcaseIZULyo
+7GcA494HcpN+nj1U6Cjh5nscXzn/2hvt3miZ+P32Y7SVzezqoIacKinf26V5qxq7
+fpW0No+7nMxkW0zdRKg=
-----END X509 CRL-----
diff --git a/jstests/libs/crl.pem.digest.sha1 b/jstests/libs/crl.pem.digest.sha1
new file mode 100644
index 00000000000..69b575b83e1
--- /dev/null
+++ b/jstests/libs/crl.pem.digest.sha1
@@ -0,0 +1 @@
+2231880F51FB2A6A2E9B97AA5D7CE4FAD5DD3FC2 \ No newline at end of file
diff --git a/jstests/libs/crl.pem.digest.sha256 b/jstests/libs/crl.pem.digest.sha256
new file mode 100644
index 00000000000..91a9465bb2e
--- /dev/null
+++ b/jstests/libs/crl.pem.digest.sha256
@@ -0,0 +1 @@
+2A185DD7786D83315C2CE2493BF1FB308686FC5C80D575D930C36AF2A0A6741F \ No newline at end of file
diff --git a/jstests/libs/crl_client_revoked.pem b/jstests/libs/crl_client_revoked.pem
index 5a3c3f4d0f5..17e3d19f57a 100644
--- a/jstests/libs/crl_client_revoked.pem
+++ b/jstests/libs/crl_client_revoked.pem
@@ -1,12 +1,12 @@
-----BEGIN X509 CRL-----
MIIB0DCBuTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJVUzERMA8GA1UECAwI
TmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNVBAoMB01vbmdv
-REIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVsIFRlc3QgQ0EXDTE5
-MTAwMjIzMjc1MVoXDTI5MDkyOTIzMjc1MVowFDASAgEEFw0xOTEwMDIyMzI3NTFa
-MA0GCSqGSIb3DQEBCwUAA4IBAQCnJ2tET1YUOYvZJTKBtvN/qAkoRQCBpTDOcXJZ
-9gDwl6rmC1UaoYIkajTVtOGQbHD7Sx2ZpWhyjW7UhMJjkncMXhFBhWnIrz2GI0da
-H5Z8lTHgp4maWa/9DG0DwIpowUyMtIT9LSEeGKGZrejldCp1TerSfl92KtcRe3pe
-iO0QJfYM1H/cwgoP48M66Tqwe/64b+CjsJPqwSspAfsjvWa87rxAP03EUYzvMhhH
-xtrZCMA7v+9xcm+7rtJlI6xOsuSWIMmUVDWUIc5tNeVWcr0uG/lWSz3ALi2X8cQ1
-qkVPy0PrcKB8U6DrOLXXr3qV5X3ZstvjnXugbpTsj6y4isMY
+REIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVsIFRlc3QgQ0EXDTIy
+MDIwMzIyMDAyMVoXDTI0MDUwNjIyMDAyMVowFDASAgEEFw0yMjAyMDMyMjAwMjFa
+MA0GCSqGSIb3DQEBCwUAA4IBAQCOZeTs2vJh5Eg0u+0Dpebx6tzJXShp3+p8AbDr
+vrxkyDhKP4GuIHmBgJ12KaJUmBWtm4MucDxinWtNiTp3CeL7nuwmX7TGR8YQNL8/
+pDy0SfkT4AKe9V32OtySIFtMFhzcqNNFDu9H2p+Um3lywxoSyw+H64M3NL93IyeZ
+3Dy0q25fPxpiP1tz9y0Q1TVIIX/SWxHpaCdPfANRYVSTwD+gRM27u3dezJ4K3w7w
+wYGYXK019wIln4QouAm5mvKb3TxRlCn4ggM0npHmX9e/dr3acmlQ1QnoD8+Q8eER
++9mbf/yyH2rw2XZN/V67Xgri3ctoT0tUpdh91xP63KLitu/v
-----END X509 CRL-----
diff --git a/jstests/libs/crl_client_revoked.pem.digest.sha1 b/jstests/libs/crl_client_revoked.pem.digest.sha1
new file mode 100644
index 00000000000..31500641823
--- /dev/null
+++ b/jstests/libs/crl_client_revoked.pem.digest.sha1
@@ -0,0 +1 @@
+38C199A9F96DBBD3FE16E14BAC0C31D27F25AD3C \ No newline at end of file
diff --git a/jstests/libs/crl_client_revoked.pem.digest.sha256 b/jstests/libs/crl_client_revoked.pem.digest.sha256
new file mode 100644
index 00000000000..d5121c25a8b
--- /dev/null
+++ b/jstests/libs/crl_client_revoked.pem.digest.sha256
@@ -0,0 +1 @@
+BE4CD9973F7EAD168485E79475BC615FA2D3156D1CFC87AA918C09372E714BFB \ No newline at end of file
diff --git a/jstests/libs/crl_expired.pem b/jstests/libs/crl_expired.pem
index 4d65a512574..fc72792780b 100644
--- a/jstests/libs/crl_expired.pem
+++ b/jstests/libs/crl_expired.pem
@@ -1,12 +1,12 @@
-----BEGIN X509 CRL-----
MIIBujCBozANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJVUzERMA8GA1UECAwI
TmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNVBAoMB01vbmdv
-REIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVsIFRlc3QgQ0EXDTE5
-MTAwMjIzMjc1MVoXDTE5MTAwMzIzMjc1MVowDQYJKoZIhvcNAQELBQADggEBACGH
-wTkrBNfqoJAVqKP9yNP7ykxtrg0Z3uwZSRc2+AW+5FMxNrJsAJIzLh8B9by75TfX
-y8XzMkQl1BFqB6y0cjJVhaJbq0kMcLD0iGsa2pZ9ke5lOcb5BLgf4grnvjz4y/gs
-A8xqxwpAfenP7NsNQtvEVh3Oes75qhVBM13PkR4XyrLuw79W9aIcpvknmz8/XX01
-D4KGk4inafThDcSHOTftlnM775l0hkUAK5TJPf59thsqvR8ODmWE6rBrQ6zb3BzL
-BDlgAYwgdliKgnuiTFseljbZsVHuqsrTyRkZMT3p32zu5nnr5SLVkB5oiAFU3CAa
-fGPgQ+B6RMt9WTUdEwY=
+REIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVsIFRlc3QgQ0EXDTIy
+MDIwMzIyMDAyMVoXDTIyMDIwMzIyMDAyMlowDQYJKoZIhvcNAQELBQADggEBAKhw
+Ph7SF8TwsEk4K9L8WrEooJCMqm52SuSjqg23HdpnMxnGw8QyrYd8zXPBOOj+K4Oi
+QoVYUjH1tsEZsWdpP8ixFPPzKZUx2e/40XbMWKyUMeebCUHe3VPkchCzKIdrP26Z
+1ZcLPfr3qhJyr3Jy2Cs4z4ysNm0wRO5P0bgE8FhBhOXvyhLTvomvKpMSlaU4Wy8/
+O3GGUlPOwtZ3xgW6kzJibd+CqCKxCgPxB8dlY3/Bbx/ECGh/n/k9u2AE/rIwsx2G
+mO94LD/phdfN7gvJoDhwEtGKrQDC8NynNzF0NPPTMcO7lNP4ydcMmhyhXTUxsTaU
+/K6+UalKCs2thRGPCXg=
-----END X509 CRL-----
diff --git a/jstests/libs/crl_expired.pem.digest.sha1 b/jstests/libs/crl_expired.pem.digest.sha1
new file mode 100644
index 00000000000..e73095bcc0b
--- /dev/null
+++ b/jstests/libs/crl_expired.pem.digest.sha1
@@ -0,0 +1 @@
+DC31CEE7C62EFA0FBCB8C1FA0947C5F4A1DD0006 \ No newline at end of file
diff --git a/jstests/libs/crl_expired.pem.digest.sha256 b/jstests/libs/crl_expired.pem.digest.sha256
new file mode 100644
index 00000000000..08d3c8f417e
--- /dev/null
+++ b/jstests/libs/crl_expired.pem.digest.sha256
@@ -0,0 +1 @@
+FDCDEE458365A80D4B422A2350F5CE37223197A07C6905D44B40895D5921551C \ No newline at end of file
diff --git a/jstests/libs/ecdsa-ca-ocsp.crt b/jstests/libs/ecdsa-ca-ocsp.crt
index 2c3798881eb..cb1ba34d060 100644
--- a/jstests/libs/ecdsa-ca-ocsp.crt
+++ b/jstests/libs/ecdsa-ca-ocsp.crt
@@ -1,13 +1,13 @@
-----BEGIN CERTIFICATE-----
-MIIB9jCCAZygAwIBAgIEbEqt5zAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
+MIIB9TCCAZygAwIBAgIEZKr7xjAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
MA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNV
BAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UEAwwUS2VybmVsIFRl
-c3QgRVNDREEgQ0EwHhcNMjAwMzI2MTU1MDMxWhcNNDAwMzIxMTU1MDMxWjB6MQsw
+c3QgRVNDREEgQ0EwHhcNMjIwMjAzMjE1OTQ4WhcNMjQwNTA3MjE1OTQ4WjB6MQsw
CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UE
AwwUS2VybmVsIFRlc3QgRVNDREEgQ0EwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC
-AASKKYWffTONf/vYmzV4SpVDFIOh3TNWR2ueAmySKBNpU86+8cZNsWUEIwQbLKsw
-ebFoCmkWOMZJ2n+3gTRd9djNoxAwDjAMBgNVHRMEBTADAQH/MAoGCCqGSM49BAMC
-A0gAMEUCIB147uAmmc1WIppzIqnjNgb0QUSmgwchc24tAqnMlrzoAiEAqSYNXCJ3
-7pAk0FC1KrNifQNTEpDrvlD+pVJWtdVMW6Q=
+AAS1km6C590H9n4iIbd7X1BxsXzCcgSIksEGGXDiAWKskZH9VCAwO6wOB0wssrk0
+bzTzw2yFj60wQqMux1qm6CPXoxAwDjAMBgNVHRMEBTADAQH/MAoGCCqGSM49BAMC
+A0cAMEQCIFClJcZHoOYm/V5B63yLTTGToc1AsUgDA70OOPdH4V26AiArujh92W2L
+BIicxzY8674zDv4QbI+I7KO7ejyoh57ftg==
-----END CERTIFICATE-----
diff --git a/jstests/libs/ecdsa-ca-ocsp.key b/jstests/libs/ecdsa-ca-ocsp.key
index 70aa28dae90..3292d5b6889 100644
--- a/jstests/libs/ecdsa-ca-ocsp.key
+++ b/jstests/libs/ecdsa-ca-ocsp.key
@@ -1,5 +1,5 @@
-----BEGIN PRIVATE KEY-----
-MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgMVZUmEGtg+uW+Q8G
-/DBBGwUjQxy4Vx77RMmkV0QjL+2hRANCAASKKYWffTONf/vYmzV4SpVDFIOh3TNW
-R2ueAmySKBNpU86+8cZNsWUEIwQbLKswebFoCmkWOMZJ2n+3gTRd9djN
+MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgtKR7JQBHBc471ZOg
+vjKYMWrNnl4poaypv0J4HXtf0a6hRANCAAS1km6C590H9n4iIbd7X1BxsXzCcgSI
+ksEGGXDiAWKskZH9VCAwO6wOB0wssrk0bzTzw2yFj60wQqMux1qm6CPX
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ecdsa-ca-ocsp.pem b/jstests/libs/ecdsa-ca-ocsp.pem
index e16b71eabf9..53911568ca6 100644
--- a/jstests/libs/ecdsa-ca-ocsp.pem
+++ b/jstests/libs/ecdsa-ca-ocsp.pem
@@ -1,18 +1,18 @@
-----BEGIN CERTIFICATE-----
-MIIB9jCCAZygAwIBAgIEbEqt5zAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
+MIIB9TCCAZygAwIBAgIEZKr7xjAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
MA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNV
BAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UEAwwUS2VybmVsIFRl
-c3QgRVNDREEgQ0EwHhcNMjAwMzI2MTU1MDMxWhcNNDAwMzIxMTU1MDMxWjB6MQsw
+c3QgRVNDREEgQ0EwHhcNMjIwMjAzMjE1OTQ4WhcNMjQwNTA3MjE1OTQ4WjB6MQsw
CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UE
AwwUS2VybmVsIFRlc3QgRVNDREEgQ0EwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC
-AASKKYWffTONf/vYmzV4SpVDFIOh3TNWR2ueAmySKBNpU86+8cZNsWUEIwQbLKsw
-ebFoCmkWOMZJ2n+3gTRd9djNoxAwDjAMBgNVHRMEBTADAQH/MAoGCCqGSM49BAMC
-A0gAMEUCIB147uAmmc1WIppzIqnjNgb0QUSmgwchc24tAqnMlrzoAiEAqSYNXCJ3
-7pAk0FC1KrNifQNTEpDrvlD+pVJWtdVMW6Q=
+AAS1km6C590H9n4iIbd7X1BxsXzCcgSIksEGGXDiAWKskZH9VCAwO6wOB0wssrk0
+bzTzw2yFj60wQqMux1qm6CPXoxAwDjAMBgNVHRMEBTADAQH/MAoGCCqGSM49BAMC
+A0cAMEQCIFClJcZHoOYm/V5B63yLTTGToc1AsUgDA70OOPdH4V26AiArujh92W2L
+BIicxzY8674zDv4QbI+I7KO7ejyoh57ftg==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgMVZUmEGtg+uW+Q8G
-/DBBGwUjQxy4Vx77RMmkV0QjL+2hRANCAASKKYWffTONf/vYmzV4SpVDFIOh3TNW
-R2ueAmySKBNpU86+8cZNsWUEIwQbLKswebFoCmkWOMZJ2n+3gTRd9djN
+MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgtKR7JQBHBc471ZOg
+vjKYMWrNnl4poaypv0J4HXtf0a6hRANCAAS1km6C590H9n4iIbd7X1BxsXzCcgSI
+ksEGGXDiAWKskZH9VCAwO6wOB0wssrk0bzTzw2yFj60wQqMux1qm6CPX
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ecdsa-ca-ocsp.pem.digest.sha1 b/jstests/libs/ecdsa-ca-ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..25678664c4f
--- /dev/null
+++ b/jstests/libs/ecdsa-ca-ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+BD9FC892A958AE5A5753EBDA314675D528B05156 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-ca-ocsp.pem.digest.sha256 b/jstests/libs/ecdsa-ca-ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..98047d84bda
--- /dev/null
+++ b/jstests/libs/ecdsa-ca-ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+31ED10340FB5812D5720BF34902548EFB6ED81E5B5AA11CA3647CDF079E25124 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-ca.pem b/jstests/libs/ecdsa-ca.pem
index c8b83834e51..0fbe387263f 100644
--- a/jstests/libs/ecdsa-ca.pem
+++ b/jstests/libs/ecdsa-ca.pem
@@ -2,24 +2,25 @@
# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml ecdsa-ca.pem
#
# Root of ECDSA tree.
+
-----BEGIN CERTIFICATE-----
-MIIB3zCCAYUCBFzMtXUwCgYIKoZIzj0EAwIwejELMAkGA1UEBhMCVVMxETAPBgNV
-BAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQKDAdN
-b25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxHTAbBgNVBAMMFEtlcm5lbCBUZXN0IEVT
-Q0RBIENBMB4XDTE5MTAwMjIzMjc0MloXDTI5MDkyOTIzMjc0MlowejELMAkGA1UE
-BhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5
-MRAwDgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxHTAbBgNVBAMMFEtl
-cm5lbCBUZXN0IEVTQ0RBIENBMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJCv2
-kYWj4w4dBFx5erbUk0Bl7tvnY8AopbgvLLoebBBKt4lRnh12ToAozZjmeYa+LnuG
-ZxYzSs6TIvuasjas0TAKBggqhkjOPQQDAgNIADBFAiA7kBFYOytkVeMxvXej73g1
-FGjrNOPAABjR4MgQe0s41gIhAL0d7+JVZoVerWPDT/OFYScbmP82VYI7TUT7XoD9
-fPXc
+MIIB9jCCAZygAwIBAgIEKUUq3TAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
+MA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNV
+BAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UEAwwUS2VybmVsIFRl
+c3QgRVNDREEgQ0EwHhcNMjIwMjAzMjE1OTQ4WhcNMjQwNTA3MjE1OTQ4WjB6MQsw
+CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
+IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UE
+AwwUS2VybmVsIFRlc3QgRVNDREEgQ0EwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNC
+AAS6/8jcHeK3U6THarZbEWw7UJYKA45ahLNpOQxTni6CwpFjyaFKRqnv8OUK09v5
+58X4U4yGKpTJi6MB4U8c7+8zoxAwDjAMBgNVHRMEBTADAQH/MAoGCCqGSM49BAMC
+A0gAMEUCIQDe1DKE44zvfcc1PYUqTqtPNtVb513kSitIizNsRhkhRAIgHcbGd1j4
+cZ91P8FlKg8NizbShq7hrbpni7urkmNoFXQ=
-----END CERTIFICATE-----
-----BEGIN EC PARAMETERS-----
BggqhkjOPQMBBw==
-----END EC PARAMETERS-----
-----BEGIN EC PRIVATE KEY-----
-MHcCAQEEIKNaMvxGiuqM1gEcDRRjHA1JtsGxMEZdpV+dJe5NcIYboAoGCCqGSM49
-AwEHoUQDQgAEJCv2kYWj4w4dBFx5erbUk0Bl7tvnY8AopbgvLLoebBBKt4lRnh12
-ToAozZjmeYa+LnuGZxYzSs6TIvuasjas0Q==
+MHcCAQEEIIqvI0YJXBaQAGdgoSL6MLBR2LbmKGpZciebA61vPdiYoAoGCCqGSM49
+AwEHoUQDQgAEuv/I3B3it1Okx2q2WxFsO1CWCgOOWoSzaTkMU54ugsKRY8mhSkap
+7/DlCtPb+efF+FOMhiqUyYujAeFPHO/vMw==
-----END EC PRIVATE KEY-----
diff --git a/jstests/libs/ecdsa-ca.pem.digest.sha1 b/jstests/libs/ecdsa-ca.pem.digest.sha1
new file mode 100644
index 00000000000..0f43c9996e0
--- /dev/null
+++ b/jstests/libs/ecdsa-ca.pem.digest.sha1
@@ -0,0 +1 @@
+BEAD07ADF2EC1A7D46C2094B72B03510101425E1 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-ca.pem.digest.sha256 b/jstests/libs/ecdsa-ca.pem.digest.sha256
new file mode 100644
index 00000000000..06559f08adf
--- /dev/null
+++ b/jstests/libs/ecdsa-ca.pem.digest.sha256
@@ -0,0 +1 @@
+9965666BB50F095320BFEA5B57535FDEF82060F38155AE7287C2742A0A24E4A5 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-client.pem b/jstests/libs/ecdsa-client.pem
index c6f4f13b08f..bb071911900 100644
--- a/jstests/libs/ecdsa-client.pem
+++ b/jstests/libs/ecdsa-client.pem
@@ -2,23 +2,24 @@
# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml ecdsa-client.pem
#
# Client certificate for ECDSA tree.
+
-----BEGIN CERTIFICATE-----
-MIIB1TCCAXsCBFDM/pswCgYIKoZIzj0EAwIwejELMAkGA1UEBhMCVVMxETAPBgNV
+MIIB1jCCAXsCBGp/B5IwCgYIKoZIzj0EAwIwejELMAkGA1UEBhMCVVMxETAPBgNV
BAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQKDAdN
b25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxHTAbBgNVBAMMFEtlcm5lbCBUZXN0IEVT
-Q0RBIENBMB4XDTE5MTAwMjIzMjc0MloXDTI5MDkyOTIzMjc0MlowcDELMAkGA1UE
+Q0RBIENBMB4XDTIyMDIwMzIxNTk0OFoXDTI0MDUwNzIxNTk0OFowcDELMAkGA1UE
BhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5
MRAwDgYDVQQKDAdNb25nb0RCMRMwEQYDVQQLDApLZXJuZWxVc2VyMQ8wDQYDVQQD
-DAZjbGllbnQwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAASvLegqcuJqQGk9yr5u
-rWIqs18K7FGU8BbSYc9da7HZKbMlrxVHO1b/LCfdW8TLLupRM/6cNfIGhE0MPaRx
-dXlPMAoGCCqGSM49BAMCA0gAMEUCIBrqeN6YYZkTYysTv0UrNl6Wz/btL+vBNsiD
-6kxsIdOBAiEA+/tcei8FgUkM14DFBD/PCYXYEsKiplKJSUGTdSFwSlc=
+DAZjbGllbnQwWTATBgcqhkjOPQIBBggqhkjOPQMBBwNCAASTbCS0Taz+os56KvG/
+xJGEq4P8rPQ/QWJLjS0t/132O9/XamI90yoHscLOI8AY7RUvnzCGIYOeQyxMuBbZ
+4LtYMAoGCCqGSM49BAMCA0kAMEYCIQDZGbOXz1ewIJ3yyVmxYpf7b3oOvtoGR3Hm
+MPrcRAK36AIhAKASzLijFUTbtuQXI6+IIE9XdLUXDQSsjJ5TfvTmehX8
-----END CERTIFICATE-----
-----BEGIN EC PARAMETERS-----
BggqhkjOPQMBBw==
-----END EC PARAMETERS-----
-----BEGIN EC PRIVATE KEY-----
-MHcCAQEEILFW6TkrNwKp0nAVwjxragheBtmUkGu7X6CyqgmtTJxPoAoGCCqGSM49
-AwEHoUQDQgAEry3oKnLiakBpPcq+bq1iKrNfCuxRlPAW0mHPXWux2SmzJa8VRztW
-/ywn3VvEyy7qUTP+nDXyBoRNDD2kcXV5Tw==
+MHcCAQEEIDRLYogqXDUrJAEf4YxkZyDdcwdPev2538AArwQP/nfXoAoGCCqGSM49
+AwEHoUQDQgAEk2wktE2s/qLOeirxv8SRhKuD/Kz0P0FiS40tLf9d9jvf12piPdMq
+B7HCziPAGO0VL58whiGDnkMsTLgW2eC7WA==
-----END EC PRIVATE KEY-----
diff --git a/jstests/libs/ecdsa-client.pem.digest.sha1 b/jstests/libs/ecdsa-client.pem.digest.sha1
new file mode 100644
index 00000000000..d7d0154a697
--- /dev/null
+++ b/jstests/libs/ecdsa-client.pem.digest.sha1
@@ -0,0 +1 @@
+5C7CDA84DF0FAE87B0BF77C897DA1F70E6DCD84B \ No newline at end of file
diff --git a/jstests/libs/ecdsa-client.pem.digest.sha256 b/jstests/libs/ecdsa-client.pem.digest.sha256
new file mode 100644
index 00000000000..6dc88a01efb
--- /dev/null
+++ b/jstests/libs/ecdsa-client.pem.digest.sha256
@@ -0,0 +1 @@
+9523EFD9443380AAA6C9A618369E40E3C6D7E011D40C307749B89A0A332A2077 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-ocsp-responder.crt b/jstests/libs/ecdsa-ocsp-responder.crt
index b20afe49f49..1e2b0c87f93 100644
--- a/jstests/libs/ecdsa-ocsp-responder.crt
+++ b/jstests/libs/ecdsa-ocsp-responder.crt
@@ -1,15 +1,15 @@
-----BEGIN CERTIFICATE-----
-MIICVTCCAfygAwIBAgIEDrXQPTAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
+MIICVjCCAfygAwIBAgIEEsVJKDAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
MA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNV
BAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UEAwwUS2VybmVsIFRl
-c3QgRVNDREEgQ0EwHhcNMjAwMzI2MTU1MDMxWhcNNDAwMzIxMTU1MDMxWjBsMQsw
+c3QgRVNDREEgQ0EwHhcNMjIwMjAzMjE1OTQ4WhcNMjQwNTA3MjE1OTQ4WjBsMQsw
CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEPMA0GA1UE
-AwwGc2VydmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEoxYW4+Jq4DU05hE3
-TCQI84HdZUisr5vzmm47AWHvI4j2uemPrp43WCV/UPWvb3V0EDVKQwCq0xIilgNf
-cVAg5KN+MHwwCQYDVR0TBAIwADAaBgNVHREEEzARgglsb2NhbGhvc3SHBH8AAAEw
-HQYDVR0OBBYEFFp7JnxvFdy/YYB2ToHyyvHpvs/zMAsGA1UdDwQEAwIF4DAnBgNV
+AwwGc2VydmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEAbp6SVU9kZym6alv
+ePcUYyze4KtdvTSCqrlCvhPQMJXkraG3DQdaADBGHUAhp6V6qFF19j0uP/rmgYv4
+SV82l6N+MHwwCQYDVR0TBAIwADAaBgNVHREEEzARgglsb2NhbGhvc3SHBH8AAAEw
+HQYDVR0OBBYEFNZtZQGDw+WGi0SIQeORd5GjEQ25MAsGA1UdDwQEAwIF4DAnBgNV
HSUEIDAeBggrBgEFBQcDAQYIKwYBBQUHAwIGCCsGAQUFBwMJMAoGCCqGSM49BAMC
-A0cAMEQCIEkMu3fjXxx0+FibD5TdxrlFczMWxt3T0g8v6CoDfwDbAiAkynX9DUMv
-gVBjMtsQwwFa4wfsRvxrJvb7mXf47Ma9UQ==
+A0gAMEUCIQC4Uihq24KsC0qSx6OMaQyzVsbtuyL/sCvKtSAvfyG8wAIgEOdY/kVF
+7vfW+oZ5Rlo6i281FvIDJFCMOqViN8voUks=
-----END CERTIFICATE-----
diff --git a/jstests/libs/ecdsa-ocsp-responder.crt.digest.sha1 b/jstests/libs/ecdsa-ocsp-responder.crt.digest.sha1
new file mode 100644
index 00000000000..cd03ff2284b
--- /dev/null
+++ b/jstests/libs/ecdsa-ocsp-responder.crt.digest.sha1
@@ -0,0 +1 @@
+6B77279E773353A64975775754716390E0728404 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-ocsp-responder.crt.digest.sha256 b/jstests/libs/ecdsa-ocsp-responder.crt.digest.sha256
new file mode 100644
index 00000000000..bf65889e5aa
--- /dev/null
+++ b/jstests/libs/ecdsa-ocsp-responder.crt.digest.sha256
@@ -0,0 +1 @@
+4B61C7A3DE928F0D8F3E40B80856FD43762DB8285BB1434C5D6E167C145544E2 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-ocsp-responder.key b/jstests/libs/ecdsa-ocsp-responder.key
index 9511421efdd..fc07aeee8e6 100644
--- a/jstests/libs/ecdsa-ocsp-responder.key
+++ b/jstests/libs/ecdsa-ocsp-responder.key
@@ -1,5 +1,5 @@
-----BEGIN PRIVATE KEY-----
-MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgB0+yEZtJ3QUD1Arq
-vKahOTAYzBQpAl0u8JCbK9asx6WhRANCAASjFhbj4mrgNTTmETdMJAjzgd1lSKyv
-m/OabjsBYe8jiPa56Y+unjdYJX9Q9a9vdXQQNUpDAKrTEiKWA19xUCDk
+MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgX827/4CkJz/ML3eC
+NCGnNJ/3r3GMfIkDXP7bTF8AD32hRANCAAQBunpJVT2RnKbpqW949xRjLN7gq129
+NIKquUK+E9AwleStobcNB1oAMEYdQCGnpXqoUXX2PS4/+uaBi/hJXzaX
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ecdsa-server-ocsp-mustStaple.pem b/jstests/libs/ecdsa-server-ocsp-mustStaple.pem
index 07c41a062bd..e8c538081e0 100644
--- a/jstests/libs/ecdsa-server-ocsp-mustStaple.pem
+++ b/jstests/libs/ecdsa-server-ocsp-mustStaple.pem
@@ -1,22 +1,22 @@
-----BEGIN CERTIFICATE-----
-MIICyjCCAnCgAwIBAgIEA7/TbTAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
+MIICyjCCAnCgAwIBAgIEcvbiOTAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
MA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNV
BAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UEAwwUS2VybmVsIFRl
-c3QgRVNDREEgQ0EwHhcNMjAwMzI2MTU1MDMxWhcNNDAwMzIxMTU1MDMxWjBsMQsw
+c3QgRVNDREEgQ0EwHhcNMjIwMjAzMjE1OTQ4WhcNMjQwNTA3MjE1OTQ4WjBsMQsw
CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEPMA0GA1UE
-AwwGc2VydmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXC/8KeoikHh+emyM
-YWmytJcLGr5tqMqGBoXh0g9uaRRUwDr8FqH5SY0kN0bn/KOrwcyawFXa3Cx8YSCS
-tEpJW6OB8TCB7jAJBgNVHRMEAjAAMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAA
-ATAdBgNVHQ4EFgQUp7KOrAbILXAJScS4sDIwisdNgGcwCwYDVR0PBAQDAgWgMB0G
+AwwGc2VydmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEG1jvLcSrSPHYE2k9
+AYUo2AcBnxhQSlWjc6qGdskFPraSzpcAmgJe93mIeqoOkMhp5WTd2VKh1wNnJQ/z
+YMftz6OB8TCB7jAJBgNVHRMEAjAAMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAA
+ATAdBgNVHQ4EFgQUvihhabxAnZflf5IfG7fSRtq1JsowCwYDVR0PBAQDAgWgMB0G
A1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBnBggrBgEFBQcBAQRbMFkwLQYI
KwYBBQUHMAGGIWh0dHA6Ly9sb2NhbGhvc3Q6OTAwMS9wb3dlci9sZXZlbDAoBggr
BgEFBQcwAYYcaHR0cDovL2xvY2FsaG9zdDo4MTAwL3N0YXR1czARBggrBgEFBQcB
-GAQFMAMCAQUwCgYIKoZIzj0EAwIDSAAwRQIgO907n8hauj7ctyGrw42BW5gZpgHm
-kA0K33t1GFSYg8YCIQCSiKF4opow0i3XSQE7QH+IsYW1eXkD35X60tylTMUEXw==
+GAQFMAMCAQUwCgYIKoZIzj0EAwIDSAAwRQIhAPVGh3LTQEQnQTxd6Op1cxoK10GA
+Seev3F0madq2Upo0AiAib1IpBJbsUR6h9AAqQKqGUGKlMOvalRmb5fN9xjkl8A==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgTPa7CyIt0RmiT82q
-Em/oX2s+I2Wp2CIxMb3flAYgVT+hRANCAARcL/wp6iKQeH56bIxhabK0lwsavm2o
-yoYGheHSD25pFFTAOvwWoflJjSQ3Ruf8o6vBzJrAVdrcLHxhIJK0Sklb
+MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgh0QNI4XmNLg8gocs
+fl16geJLuecIxjpvW9MY2JZ3vmWhRANCAAQbWO8txKtI8dgTaT0BhSjYBwGfGFBK
+VaNzqoZ2yQU+tpLOlwCaAl73eYh6qg6QyGnlZN3ZUqHXA2clD/Ngx+3P
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ecdsa-server-ocsp-mustStaple.pem.digest.sha1 b/jstests/libs/ecdsa-server-ocsp-mustStaple.pem.digest.sha1
new file mode 100644
index 00000000000..a83437d1a90
--- /dev/null
+++ b/jstests/libs/ecdsa-server-ocsp-mustStaple.pem.digest.sha1
@@ -0,0 +1 @@
+8405431F55B0E4B422C0421B7FADC3160C72A494 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-server-ocsp-mustStaple.pem.digest.sha256 b/jstests/libs/ecdsa-server-ocsp-mustStaple.pem.digest.sha256
new file mode 100644
index 00000000000..574e330333d
--- /dev/null
+++ b/jstests/libs/ecdsa-server-ocsp-mustStaple.pem.digest.sha256
@@ -0,0 +1 @@
+27893987C39D98357BBC3758EDBB7157E78E000BD373128ED38346E7F176C90F \ No newline at end of file
diff --git a/jstests/libs/ecdsa-server-ocsp.pem b/jstests/libs/ecdsa-server-ocsp.pem
index c4057f64049..2fe18cc70f5 100644
--- a/jstests/libs/ecdsa-server-ocsp.pem
+++ b/jstests/libs/ecdsa-server-ocsp.pem
@@ -1,22 +1,22 @@
-----BEGIN CERTIFICATE-----
-MIICtzCCAl2gAwIBAgIEAi8gHDAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
+MIICtzCCAl2gAwIBAgIEQVAUIjAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
MA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNV
BAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UEAwwUS2VybmVsIFRl
-c3QgRVNDREEgQ0EwHhcNMjAwMzI2MTU1MDMxWhcNNDAwMzIxMTU1MDMxWjBsMQsw
+c3QgRVNDREEgQ0EwHhcNMjIwMjAzMjE1OTQ4WhcNMjQwNTA3MjE1OTQ4WjBsMQsw
CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEPMA0GA1UE
-AwwGc2VydmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE+KCwDx+B7Jlqwo8e
-sd9kQKKxH24QlEluXenP6LB/t8Ob3Tw5tIaV7Igf3fMgEw8tfDWuDN/y1w2rgGBA
-KEU/hqOB3jCB2zAJBgNVHRMEAjAAMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAA
-ATAdBgNVHQ4EFgQU2WLPkbO04U/XyImTFgKPS1WGBIAwCwYDVR0PBAQDAgWgMB0G
+AwwGc2VydmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEJJWlKXhZYhkGm7KD
+/4s5zG3FTZqxCkbF7LVTKUyEWU2oVE/X555ANKo7F4sNTh4kJYH9R9BNWm/ckr9F
+F4lGRKOB3jCB2zAJBgNVHRMEAjAAMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAA
+ATAdBgNVHQ4EFgQUBA+bPOsot328qMyJD1GNNsM5MpEwCwYDVR0PBAQDAgWgMB0G
A1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjBnBggrBgEFBQcBAQRbMFkwLQYI
KwYBBQUHMAGGIWh0dHA6Ly9sb2NhbGhvc3Q6OTAwMS9wb3dlci9sZXZlbDAoBggr
BgEFBQcwAYYcaHR0cDovL2xvY2FsaG9zdDo4MTAwL3N0YXR1czAKBggqhkjOPQQD
-AgNIADBFAiBnteZka5NY3p54wgdLGO3HSPmw6TYyjR0hH8sZhFfSDAIhAKGPJCVF
-4LKzpw8Z2N+oBl27wu1XtKjtz55JzrHLym5V
+AgNIADBFAiEA94hM6CSWcr65vB6E2+WaFe0MLzYm+tEWPlLedT4BQekCIDRk8Ww+
+jUPFWz7Pz2lOqmH/FZWxVn1GEbeDHZZljk3P
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgWWO6VErCt17Qpg9z
-oTdhyDgyMhEokXs0zYduW1/4vfmhRANCAAT4oLAPH4HsmWrCjx6x32RAorEfbhCU
-SW5d6c/osH+3w5vdPDm0hpXsiB/d8yATDy18Na4M3/LXDauAYEAoRT+G
+MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgOEISSH6wYpjSExnT
+fpQW8Dan60vNlFYIL1Q2xFPFzluhRANCAAQklaUpeFliGQabsoP/iznMbcVNmrEK
+RsXstVMpTIRZTahUT9fnnkA0qjsXiw1OHiQlgf1H0E1ab9ySv0UXiUZE
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ecdsa-server-ocsp.pem.digest.sha1 b/jstests/libs/ecdsa-server-ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..a2ce1449f80
--- /dev/null
+++ b/jstests/libs/ecdsa-server-ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+2D09B949B8BA53416B40B64C193F1962E5BE3A0D \ No newline at end of file
diff --git a/jstests/libs/ecdsa-server-ocsp.pem.digest.sha256 b/jstests/libs/ecdsa-server-ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..048ddee7588
--- /dev/null
+++ b/jstests/libs/ecdsa-server-ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+98BC40243CB5D19B7DEB912AF02598F668DE83B2CD77EFCAA69E3C5A07E26B01 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-server.pem b/jstests/libs/ecdsa-server.pem
index 611ac6a738f..9a5dfadfc7b 100644
--- a/jstests/libs/ecdsa-server.pem
+++ b/jstests/libs/ecdsa-server.pem
@@ -2,24 +2,27 @@
# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml ecdsa-server.pem
#
# Server certificate for ECDSA tree.
+
-----BEGIN CERTIFICATE-----
-MIIB+jCCAaGgAwIBAgIEUAjy0DAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
+MIICTTCCAfKgAwIBAgIEVfZqODAKBggqhkjOPQQDAjB6MQswCQYDVQQGEwJVUzER
MA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNV
BAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEdMBsGA1UEAwwUS2VybmVsIFRl
-c3QgRVNDREEgQ0EwHhcNMTkxMDAyMjMyNzQyWhcNMjkwOTI5MjMyNzQyWjBsMQsw
+c3QgRVNDREEgQ0EwHhcNMjIwMjAzMjE1OTQ4WhcNMjQwNTA3MjE1OTQ4WjBsMQsw
CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEPMA0GA1UE
-AwwGc2VydmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE9CLWC3NLm2Uu9qv8
-XQEzfA0s7Htx6whxgmlW5Yewe27+95vVYmdHF3xI4h0UVEVPmoE/zljOd1q8g3gH
-hjFGCaMjMCEwHwYDVR0RBBgwFoIJbG9jYWxob3N0ggkxMjcuMC4wLjEwCgYIKoZI
-zj0EAwIDRwAwRAIgIA3ONSsE6BitvHWZSbLQ860VDFosV8utCAxLXfM9KNoCIHcw
-n56Af5HVwYfK9pmwuMUdZBQl4AQth/pyPuIo8ewu
+AwwGc2VydmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEkIPr8LJPhlw1aQyN
+6ZTN5zvdOVMBhKR66DFcyLsSjZTwdaYgrTdoHuRg4cY/mDfOjykn93QaXXiYELWO
+FLGxFKN0MHIwCQYDVR0TBAIwADAaBgNVHREEEzARgglsb2NhbGhvc3SHBH8AAAEw
+HQYDVR0OBBYEFIQvX1T4/vSJNRIFuL1wFsP3e9SEMAsGA1UdDwQEAwIFoDAdBgNV
+HSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwCgYIKoZIzj0EAwIDSQAwRgIhAKWy
+vhMAorPe5oCXXM5bCHIyoq8lis9e8jU3ewBTnZ6+AiEA2hx0vQXogjX1T8zqn/2K
+XcOWOCaP5UWWsZU9F3tOtJg=
-----END CERTIFICATE-----
-----BEGIN EC PARAMETERS-----
BggqhkjOPQMBBw==
-----END EC PARAMETERS-----
-----BEGIN EC PRIVATE KEY-----
-MHcCAQEEINBHmT465yXRuGpmR9yaGTZaBk4p9IZMoWI45qYxWlKMoAoGCCqGSM49
-AwEHoUQDQgAE9CLWC3NLm2Uu9qv8XQEzfA0s7Htx6whxgmlW5Yewe27+95vVYmdH
-F3xI4h0UVEVPmoE/zljOd1q8g3gHhjFGCQ==
+MHcCAQEEIFpM+Xqp9Ga+tlNOh4qhoqooGCAI4dTgPn7bzOVjy/B3oAoGCCqGSM49
+AwEHoUQDQgAEkIPr8LJPhlw1aQyN6ZTN5zvdOVMBhKR66DFcyLsSjZTwdaYgrTdo
+HuRg4cY/mDfOjykn93QaXXiYELWOFLGxFA==
-----END EC PRIVATE KEY-----
diff --git a/jstests/libs/ecdsa-server.pem.digest.sha1 b/jstests/libs/ecdsa-server.pem.digest.sha1
new file mode 100644
index 00000000000..c67f3477ce1
--- /dev/null
+++ b/jstests/libs/ecdsa-server.pem.digest.sha1
@@ -0,0 +1 @@
+3124F81F8BE74AFE7FB3EEC1CFA17BDF48A97A68 \ No newline at end of file
diff --git a/jstests/libs/ecdsa-server.pem.digest.sha256 b/jstests/libs/ecdsa-server.pem.digest.sha256
new file mode 100644
index 00000000000..ea1854935ae
--- /dev/null
+++ b/jstests/libs/ecdsa-server.pem.digest.sha256
@@ -0,0 +1 @@
+6AE713FACA4950A79F38272F40B72DF973206468DD88B6F528C7C2C236AE03B4 \ No newline at end of file
diff --git a/jstests/libs/expired.pem b/jstests/libs/expired.pem
index 5b2028e14ed..4106ff57118 100644
--- a/jstests/libs/expired.pem
+++ b/jstests/libs/expired.pem
@@ -3,51 +3,52 @@
#
# A certificate which has passed its expiration date.
-----BEGIN CERTIFICATE-----
-MIIDeDCCAmACBAV+8EMwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDYwOTA1NDEwMFoXDTE5MDkyMTA5NDEwMFowbTELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxEDAOBgNVBAMMB2V4cGly
-ZWQwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrhDyB83N3F138VhlH
-4kHxfLgEFeTaw8iORGM3G333N0WT+wpt0pp8qyO8Er1mW27alPcuAJBs3s7OViOg
-GGhKH39Zhlwbvx4D403z/6TZiAhqF+drOvP8FbEjUzb3/Qcim96O2jaikZQHTeIT
-YARKpU4GYZyC9In1C52Kpu8rtrTc1T3Je960AjnQ6XoAv7J6PmE6WM/WgSCU0Sj1
-bMo4rujtmS4awZ8mBK3uwSbld6iPasylroc0xtk/icFcy3IFj9jkOQfBAIUH4c2I
-WrVFxofP7HO6osCc3uxydBIwjBjQIw8yibcb+I5fhhYWXDBDOg0Cn5bT8Uw1d6vi
-1Q6HAgMBAAGjHjAcMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAAATANBgkqhkiG
-9w0BAQsFAAOCAQEAWP//bzS3H6S9kDJUrvh+y0iA4de7mX9ixbQYf/AUrWc4MFz7
-KQpF4Xb1XisqotLj/M42rUL3cfCk7sz08tQSVaDAtOdqLgoeimBVDvqbgI9l3K0x
-IROzANytsMq3v3BS2BlauTa2ibp2gQdpvhkbgaQ1kDOcKhHYUZkgfdecXfh930Oe
-riLQHAxwXXYU17Di1HqgTbABQeJzBm+13X0AtaCdL4bvgVuQcf2mea/bdLChaU5L
-Y8XzlFXfQ8PUbLstpbb6GR8vjzXoPfP8kNdmHtUsFDRmIRC4vOvDOheV0slo51vP
-hxBspSf4s1DuTYHzNJC72lhB5geRE5RDEw7PMQ==
+MIIDkjCCAnqgAwIBAgIES0ioJDANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjExMDExMDQxMzA0WhcNMjIwMTIzMDgxMzA0WjBtMQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEQMA4GA1UEAwwH
+ZXhwaXJlZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMOX7aXgIpMi
+1lLqNmsqmjg6N+hg0Mf63N7ZCPqwOSaGUo4lqfgR27RdQR9SI5JIDpFu0XUWpDQi
++w+eH7i45VQJ3DE62bB1dW1WGnZOWOTH6uEfEX/kGjJBYjUInliERyvqINiyeAA+
+deqKIjzlny8APqzSgr2vnffKRxLzjN2JV4CLWPmXzQ0p8E6DmXgNHO3gcEviwqDg
+OP6PEdWAAbPQlutk4P34LYdnvDoQMtaTd8s7wQYxoU7nXy+iRh1ZOQB6Dj1nMCdX
+9sblA0cO1zVNRAJmlQBVlVmB0pfntRvs5OWywoXN7uVy9WI3dC4qU8k2APsnnWur
+Y1PYAGalCjUCAwEAAaMzMDEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwGgYDVR0RBBMw
+EYIJbG9jYWxob3N0hwR/AAABMA0GCSqGSIb3DQEBCwUAA4IBAQDetGkeZ2NsmsRm
+y64CYd9bq1QRi72Px0lnL/uVwX6v/LQBX/2TnkFIXJ/ICW0FyjZppsd4inLoXEH3
+guOfTrWlkD8OPNZmdNzMZf7i1JBtzKQVSyoX3J8zllPiYdfmWwUuqd2GnBwebzo7
+Sz5zVPhb0eQR+kdWT0tA3yzs9Ox+6MyDeWsHN4aBEDfezi170t2Ax/HVU86HA58I
+V8wPeXtRtN97bQYcOlGYElRA0VKygyAC2nVkxl1PjSKU7SEYTeHVp0qYCy2NhSA6
+n1DI3fz+ZccmAfKAxqy9ggvHmgnhRFoAtFeMQmAWB74/do2ZHCx3LE/EAv7sDXTk
+2SqCkSng
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCrhDyB83N3F138
-VhlH4kHxfLgEFeTaw8iORGM3G333N0WT+wpt0pp8qyO8Er1mW27alPcuAJBs3s7O
-ViOgGGhKH39Zhlwbvx4D403z/6TZiAhqF+drOvP8FbEjUzb3/Qcim96O2jaikZQH
-TeITYARKpU4GYZyC9In1C52Kpu8rtrTc1T3Je960AjnQ6XoAv7J6PmE6WM/WgSCU
-0Sj1bMo4rujtmS4awZ8mBK3uwSbld6iPasylroc0xtk/icFcy3IFj9jkOQfBAIUH
-4c2IWrVFxofP7HO6osCc3uxydBIwjBjQIw8yibcb+I5fhhYWXDBDOg0Cn5bT8Uw1
-d6vi1Q6HAgMBAAECggEBAI+EKPU79qPyA4y/povFwRQGHhwdDdAX/ts8UiCsemy/
-7RJz/zgB/47NzSr0K1NYsptoBqSRiEfw7+8rmMe/ZJSRYohQqwX0l3L9Yh8HDLOQ
-5imQMu5A+CM5K225lcdQDAZjkojKAulpEwpBmyhHMZAcXfts9f+GC2HmBD8ejAZw
-jj4th5BFuMq+7z7a22mcSWv2Ejw1CsscFAenRJL3OE7NrhsDLxv4G2F79QSkfMR8
-v5GyUxvGOt+VF2hhm1JKyClm+gRWU3ZpzdEIAL6JT5NCjUbz55M1hZGNb8Th31gP
-E4Etd+xdLyxGRPbr4f82cqyBVf8UoPxTwsPAnGF3DgECgYEA22ue1/882MBP+XQC
-tAaY9s8cZnGRrzNIiwgT2QayyP/mnpw8KBDnkDh7YaCw0e+3DFsvzZ9D5VDxnKGH
-wpQzKgTaAX7ZEegKJvfEYR8E35MenCqvDnlBkMzou0jnAzG+S8F4mpm9BcAXGuWv
-ULzmHqZTlxdiW7ECMtcwBkSva4ECgYEAyBwvakD7oteCqbChrAdROnoXCUX8Is/y
-1aMrVWSyBBtQ77i9zl5Lq0L85sHi8w+urwPi1hoxzCq8NckJEH7dAXuOTbstMFtC
-B7R1Xaqd0cFSuLnb3O+ayjdEMW58F8psdbGQ7vQkxFyEph8S8OGAqpanbUyd7gVm
-G4b9hetwHgcCgYEAysD8y90nzaaPgBPKN65tBIvHU4aYN0vtOcPiC0ZcSM3mviPi
-lqdgQu1eXY1ONwAKpplQZ/JGnA0a5kCBIbUuPiKzjHQ5g4lmcDG9Pn2aVDovK+Fp
-V7eGdZZTbFRmW5ZIoNoLZtivSTQCZbFeOf4DqsjJLzHFirLbND2SPAiWDIECgYAA
-hBoXMw2zEM00dNEl6WrrNK9khbqtuE2PAXm2IalX214tEBPlOVcGnQib67oTGGJB
-70ehd7XTKfUMSnVshnc5bsEiMC5gpouYC34V/L+lb9MvyMLpYfDLPrM9UWSehxYa
-g5e1FgoWO4rYBtJ8rogvaG4MGRt7JqZpwcJbmwzR9wKBgC5Hdz6+go3dddab1g9O
-nkpKewtrOuKnSLI1lOABTck/areLcw2UCHui7qc/KZc9J3eu9xhBCnacs0krEHNz
-I0hlCYsubAJBfQ6NDkaGf6UJCJA+c5vhJhbDVp/QdY8Vk/p6JVn3j/kkHfAiqkWU
-uVAQdjZtjUkjH3SssIlGJQze
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDDl+2l4CKTItZS
+6jZrKpo4OjfoYNDH+tze2Qj6sDkmhlKOJan4Edu0XUEfUiOSSA6RbtF1FqQ0IvsP
+nh+4uOVUCdwxOtmwdXVtVhp2Tljkx+rhHxF/5BoyQWI1CJ5YhEcr6iDYsngAPnXq
+iiI85Z8vAD6s0oK9r533ykcS84zdiVeAi1j5l80NKfBOg5l4DRzt4HBL4sKg4Dj+
+jxHVgAGz0JbrZOD9+C2HZ7w6EDLWk3fLO8EGMaFO518vokYdWTkAeg49ZzAnV/bG
+5QNHDtc1TUQCZpUAVZVZgdKX57Ub7OTlssKFze7lcvViN3QuKlPJNgD7J51rq2NT
+2ABmpQo1AgMBAAECggEAa1SkoUCkWG9mgutpX1dqd25jHY57IzIjH9qjVcV8JwrQ
+pJZAdhN+p7QAt2pAgNYvwFi6cfExvDZx5LkVmS1FEt+ySAWOTYm3HX+BV+hYWXrn
+BhAhbzfBtFAyzv1ivxofYBbDXYZZ2XBtDn4smZQ7zPPqcLW37tU+7ym95MVnSG1O
+c383X+hnsLyMo10lQdnD+0GLGVoVtOEQkX3vDM4ckejwsn3GUsnsasXl4pwESG/l
+e/lSqaAE5zv0jJ4Vd+pvmFA/QxnnbRzWFr5YAfZTq84VG7Ila9pAxQKsx+5hVzKH
+eMS+BrjkG3ZjJihRAP1BYl8+uZLoa9fAEb/K5aGkBQKBgQDshRWLe1OVr4GrwGmA
+M828l+ASvQgZr8iZfFC5sbB8CeDz5/6IFLXSLc3oAcUAdJzEq7jMLaqwvyNy4aeT
+vOYS0K94njk3l+mGtY+H1NYdzK9D306zSjIeUqA9efUCEm/4v323IpMVCF4s5MMU
+gLVQZ8hNIJKjjx+Nm1AMTWl0AwKBgQDTs+3w+kraf3JfG4EBYI6w5vNCBlJHDni+
+ZEOmmd5cgxR/sEZJiAbfsNs4pnHqKboQxFU+lgH2tcktkcN4rpFvN2bt865l2XCX
+3NqR8gJbN3kroAi7m0ah9p6ZfZGYT3S3nsjjeKZaz7dkZNtrP/zxrC6IbsamAEeO
+NnFa4rkfZwKBgQCN3UFP+TfoR23io7VkBS542Su4cZODPLF4hl0xFEhEDfTUtykv
+XCS2nWyspSsRm+BQAqQEK7v+6ZaMmJbYAWyKiotFMLonA0I533rowRtwok3Zyv48
+gdtP3sVoOldf18k7jTgNeXp5GhzKlqgACzc1tBorUMdDvVvypt67kk8XGwKBgGw8
+qyOwpEKwNGaB5mQw3ON/QNH572ka8grNsnTkaHa+IeXi1xzTKkiF4J9HIijJqrLV
+3ouAIILlkHT2+IykHAFTvxFbrEewc0uBhFJn/GJsq0vtp2lbyzIVqCLru1u3DAKx
+cR4z2kHFv4rZsgFUltts3+GrWW8X533DQhNopaNzAoGAbekygXWWCXX6WeGhvshe
+JTWf96Blmy7ZLDlOy7D7Ns3536ALcl/tPtL2wOqmz/9rBTHKX/v7k+yaaysI3vn4
++79/ig8mSqEA1nHgA3JIILvV3C3r8RKoGsrw/6LZDynANrcHiiR+aHlrdaHsh2o1
+0FQr/GIVnWR/Z6gaB39T4xM=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/expired.pem.digest.sha1 b/jstests/libs/expired.pem.digest.sha1
new file mode 100644
index 00000000000..4b8f78e141f
--- /dev/null
+++ b/jstests/libs/expired.pem.digest.sha1
@@ -0,0 +1 @@
+5325BDD0B9A3417A1C07B947C83168A1C189D1E4 \ No newline at end of file
diff --git a/jstests/libs/expired.pem.digest.sha256 b/jstests/libs/expired.pem.digest.sha256
new file mode 100644
index 00000000000..e38411a855f
--- /dev/null
+++ b/jstests/libs/expired.pem.digest.sha256
@@ -0,0 +1 @@
+7B1A1353749D953FB0A2A2FA036B2C44BAFB3AE1EFCFA9D3A9DB50ADDCA337C7 \ No newline at end of file
diff --git a/jstests/libs/intermediate-ca-chain.pem b/jstests/libs/intermediate-ca-chain.pem
index 0feef1d7390..4d94be279ee 100644
--- a/jstests/libs/intermediate-ca-chain.pem
+++ b/jstests/libs/intermediate-ca-chain.pem
@@ -5,45 +5,45 @@
# Certificate from ca.pem
-----BEGIN CERTIFICATE-----
-MIIDdDCCAlwCBBmRIxIwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowdDELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5l
-bCBUZXN0IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAupVkx8+n
-AqzsANKwNPeCYlf2q0WgF4kSUMNJdpmMelrr7hh7EOnAU0hTAQx9BKTEbExeCzH6
-OArFNGjewjWVXwaOpCjK8FMvK6/lGVEpmoHNF9XuiQVmaQ4bJD6rC73YjpgNIPeL
-5PyoFLEZv+X2cRBPpTcSRcf87tk8HL7v0eyk1JBhkeKK68SYdWwZlHaa1jqwmliW
-WvVMkHVH3lx0VOgQwWtOgs0K1zpcZ0sH5MGpYRQOiidIRZj3PkKeTPQe2D6VQQtv
-2yDs9dWfCxJJP9QiWclL2rF/xqlFSNEIfNZpZhk6I1DHQpA2uyJfzRH62pFasJuB
-CVh5Tr0EDoVreQIDAQABoxMwETAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEB
-CwUAA4IBAQARdNCYYWxi2fyhJwzGHwIT261d/pTlOSYLlm84c72aEneFUnfp8/H5
-JjuFbnhiX+5+h3M7eDQhra9s+H3vKr7o38EIVf5OKXvpNLwv1UUmomBvKqccioYh
-bxrfwCzfBRuUmW05kcAVn8iKovqyxL7npEZbckwtT+BqZ4kOL4Uzre+S1HMx0zOu
-xulSYA/sBoJ2BB93ZIAqB+f/+InS9yggzyhhaQqS7QEl1L4nZE4Oy0jKcxdCzysm
-TqiyH+OI5SVRTfXh4XvHmdWBBaQyaTmQzXYUxUi7jg1jEAiebCGrEJv9plwq4KfC
-cze9NLBjaXR3GzonT8kICyVT/0UvhuJg
+MIIDeTCCAmGgAwIBAgIEe9SskzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQyWhcNMjQwNDMwMjE1OTQyWjB0MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwO
+S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDf
+vZIt82obTHnc3iHgUYSc+yVkCHyERF3kdcTTFszDbN9mVPL5ZkH9lIAC3A2rj24T
+pItMW1N+zOaLHU5tJB9VnCnKSFz5CHd/KEcLA3Ql2K70z7n1FvINnBmqAQdgPcPu
+Et2rFgGg3atR3T3bV7ZRlla0CcoAFl/YoDI16oHRXboxAtoAzaIwvS6HUrOYQPYq
+BLGt00Wws4bpILk3b04lDLEHmzDe6N3/v3FgBurPzR2tL97/sJGePE94I833hYG4
+vBdU0Kdt9FbTDEFOgrfRCisHyZY6Vw6rIiWBSLUBCjtm2vipgoD0H3DvyZLbMQRr
+qmctCX4KQtOZ8dV3JQkNAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
+hvcNAQELBQADggEBAJnz4lK9GiCWhCXIPzghYRRheYWL8nhkZ+3+oC1B3/mGEf71
+2VOdND6fMPdHinD8jONH75mOpa7TanriVYX3KbrQ4WABFNJMX9uz09F+0A2D5tyc
+iDkldnei+fiX4eSx80oCPgvaxdJWauiTsEi+fo2Do47PYkch9+BDXT9F/m3S3RRW
+cia7URBAV8Itq6jj2BHcpS/dEqZcmN9kGWujVagcCorc0wBKSmkO/PZIjISid+TO
+Db2g+AvqSBDU0lbdP7NXRSIxvZejDz4qMjcpSbhW9OS2BCYZcq5wgH2lwYkdPtmX
+JkhxWKwsW11WJWDcmaXcffO3a6lDizxyjnTedoU=
-----END CERTIFICATE-----
# Certificate from intermediate-ca.pem
-----BEGIN CERTIFICATE-----
-MIIDcjCCAloCBFNvXv0wDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MTAxNjE3NTc0OVoXDTM5MTAxODE3NTc0OVowdTELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxGDAWBgNVBAMMD0ludGVy
-bWVkaWF0ZSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOcrt0K/
-K8ueq9lQ9wVtA+rka82FPaHXpZkH7ii/ZJlNcDXLaJPdRb7XgAabAS3gru+Hpm/g
-kAofoL7cDmGZRAbiW0I6X5Nlmjh4/0E6RxSs0urhU34m8sM3OPmAgbq7oLlFINZ6
-GbVR2RzMWhK5HPld8WApDkIVpBFbRGV7dt/LVKY34Nab9hu15WRSH3wzSHJvt8e1
-alYxaRUoE27Fk3zdHPw9Z91/XvfIThTsNXEQVOeaieyQLwoKx8tpMa/ck/mFmSkD
-nH4h37ev0ZABB04iTBfLGCpUCKd5LerYIqEu4UPp9r9czbco7twp+k8875pJ3bpV
-wMH0/jF68GTC8HsCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsF
-AAOCAQEAaL61HT6JD19Ok2LY6b5KkZ4oRhiV73l2/82X88GcV63Bl0rN6AF+W0ut
-GuHzSqcHV4qZkt9ezNoDYq41BsV4I8Cxvyaz8is956uyrzQAsVCzidZSGeq2GIfV
-9y+IRISBRdzXQHrB0ni93b16MJO1KoJxZbXcb8W9ll2URp+YEnHIrhWpDcMcHN3O
-mjoy1+WpHDXpNK2D3Xk5tT5pwxJZWRPB9wvPfTux5Vp07+Rkef9YjXL2ZZxt4vKu
-WU0HJWfK905HpbHjwFNRlbT39WWaF8VeJ2nT6OrXTpE8tDdPoeZt5u76eaWEmsf5
-gX2ClrsSmegOKT52V+2NAlKDjQkaDg==
+MIIDdzCCAl+gAwIBAgIERt21mjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ3WhcNMjQwNDMwMjE1OTQ3WjB1MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEYMBYGA1UEAwwP
+SW50ZXJtZWRpYXRlIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
+uLEuQhQ7IQImAIKUMANKaR+4/WLf0F03p5RDlv/TCNdEXTLws03x7bppdv4Y8r6+
+oChy+8rtyA2ckblb0z0OeMlsJY5a04eUhrZYeG4OXn1QuvUqfXl++oBlHnWUD3xG
+3v9oPKMxGf9nr6JJXBCeG3owLR9Lbr3QS6Pvz9WwNZGpUVDm/QQcKvbGHmB9fE7/
+RM6IgxtagZlug5WUCTT08tsLfb89UQchCAjO9eZvDcENofXcnsJWImJdTYDlquMM
+DB54R9cqoLtDV9NiPVYsjCQ1BgXYMxeG0K/T1rWQY4uB132Y3oFy3RxaDT1BqdAO
+O6BOo1AZNyIYIPbt0+Rp3QIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3
+DQEBCwUAA4IBAQCSOAjf6Qh0JnAOK4TqPYt2VG8HEmumxKk/HvIKrk9gbBc6RoVi
+Z1M/gxRz82lnmJvIPbsJk4AmTsw8Pnech8Ujeahw0ybRJbLs7FA0YrHg1B7517Tr
+eZl6TZn7o5+3HKKcCPpoh+P1XrNWP21NsY75T8sTN0BQ3im3aZDApgO4v0YFqWl0
+20YOdrLk81cJ8Znjdh+/ieR4uPH06CbXjAGPAbB+mnEWMNLlV2WGsJtDCHYM+wU0
+zd0wy2KvqMBbr014v/c4jmyeCBcmgxQ9Q8ATWbys7S5p0CFB6+zeV/2Mb32lwSCM
++Xeg/ms5ZGQJY5fIznwIg+Osg1zGvMF2Rsq9
-----END CERTIFICATE-----
diff --git a/jstests/libs/intermediate-ca-chain.pem.digest.sha1 b/jstests/libs/intermediate-ca-chain.pem.digest.sha1
new file mode 100644
index 00000000000..dbe9e3898af
--- /dev/null
+++ b/jstests/libs/intermediate-ca-chain.pem.digest.sha1
@@ -0,0 +1 @@
+F42B9419C2EF9D431D7C0E5061A82902D385203A \ No newline at end of file
diff --git a/jstests/libs/intermediate-ca-chain.pem.digest.sha256 b/jstests/libs/intermediate-ca-chain.pem.digest.sha256
new file mode 100644
index 00000000000..2cffe1b5da9
--- /dev/null
+++ b/jstests/libs/intermediate-ca-chain.pem.digest.sha256
@@ -0,0 +1 @@
+21A1C6A87B31AF590F5074EE716F193522B8F540081A5D571B25AE5DF72863E3 \ No newline at end of file
diff --git a/jstests/libs/intermediate-ca.pem b/jstests/libs/intermediate-ca.pem
index 62ee30e9106..97dcda1bda1 100644
--- a/jstests/libs/intermediate-ca.pem
+++ b/jstests/libs/intermediate-ca.pem
@@ -3,51 +3,51 @@
#
# CA issues by the primary root CA, which then issues its own server cert.
-----BEGIN CERTIFICATE-----
-MIIDcjCCAloCBFNvXv0wDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MTAxNjE3NTc0OVoXDTM5MTAxODE3NTc0OVowdTELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxGDAWBgNVBAMMD0ludGVy
-bWVkaWF0ZSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOcrt0K/
-K8ueq9lQ9wVtA+rka82FPaHXpZkH7ii/ZJlNcDXLaJPdRb7XgAabAS3gru+Hpm/g
-kAofoL7cDmGZRAbiW0I6X5Nlmjh4/0E6RxSs0urhU34m8sM3OPmAgbq7oLlFINZ6
-GbVR2RzMWhK5HPld8WApDkIVpBFbRGV7dt/LVKY34Nab9hu15WRSH3wzSHJvt8e1
-alYxaRUoE27Fk3zdHPw9Z91/XvfIThTsNXEQVOeaieyQLwoKx8tpMa/ck/mFmSkD
-nH4h37ev0ZABB04iTBfLGCpUCKd5LerYIqEu4UPp9r9czbco7twp+k8875pJ3bpV
-wMH0/jF68GTC8HsCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsF
-AAOCAQEAaL61HT6JD19Ok2LY6b5KkZ4oRhiV73l2/82X88GcV63Bl0rN6AF+W0ut
-GuHzSqcHV4qZkt9ezNoDYq41BsV4I8Cxvyaz8is956uyrzQAsVCzidZSGeq2GIfV
-9y+IRISBRdzXQHrB0ni93b16MJO1KoJxZbXcb8W9ll2URp+YEnHIrhWpDcMcHN3O
-mjoy1+WpHDXpNK2D3Xk5tT5pwxJZWRPB9wvPfTux5Vp07+Rkef9YjXL2ZZxt4vKu
-WU0HJWfK905HpbHjwFNRlbT39WWaF8VeJ2nT6OrXTpE8tDdPoeZt5u76eaWEmsf5
-gX2ClrsSmegOKT52V+2NAlKDjQkaDg==
+MIIDdzCCAl+gAwIBAgIERt21mjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ3WhcNMjQwNDMwMjE1OTQ3WjB1MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEYMBYGA1UEAwwP
+SW50ZXJtZWRpYXRlIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
+uLEuQhQ7IQImAIKUMANKaR+4/WLf0F03p5RDlv/TCNdEXTLws03x7bppdv4Y8r6+
+oChy+8rtyA2ckblb0z0OeMlsJY5a04eUhrZYeG4OXn1QuvUqfXl++oBlHnWUD3xG
+3v9oPKMxGf9nr6JJXBCeG3owLR9Lbr3QS6Pvz9WwNZGpUVDm/QQcKvbGHmB9fE7/
+RM6IgxtagZlug5WUCTT08tsLfb89UQchCAjO9eZvDcENofXcnsJWImJdTYDlquMM
+DB54R9cqoLtDV9NiPVYsjCQ1BgXYMxeG0K/T1rWQY4uB132Y3oFy3RxaDT1BqdAO
+O6BOo1AZNyIYIPbt0+Rp3QIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3
+DQEBCwUAA4IBAQCSOAjf6Qh0JnAOK4TqPYt2VG8HEmumxKk/HvIKrk9gbBc6RoVi
+Z1M/gxRz82lnmJvIPbsJk4AmTsw8Pnech8Ujeahw0ybRJbLs7FA0YrHg1B7517Tr
+eZl6TZn7o5+3HKKcCPpoh+P1XrNWP21NsY75T8sTN0BQ3im3aZDApgO4v0YFqWl0
+20YOdrLk81cJ8Znjdh+/ieR4uPH06CbXjAGPAbB+mnEWMNLlV2WGsJtDCHYM+wU0
+zd0wy2KvqMBbr014v/c4jmyeCBcmgxQ9Q8ATWbys7S5p0CFB6+zeV/2Mb32lwSCM
++Xeg/ms5ZGQJY5fIznwIg+Osg1zGvMF2Rsq9
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDnK7dCvyvLnqvZ
-UPcFbQPq5GvNhT2h16WZB+4ov2SZTXA1y2iT3UW+14AGmwEt4K7vh6Zv4JAKH6C+
-3A5hmUQG4ltCOl+TZZo4eP9BOkcUrNLq4VN+JvLDNzj5gIG6u6C5RSDWehm1Udkc
-zFoSuRz5XfFgKQ5CFaQRW0Rle3bfy1SmN+DWm/YbteVkUh98M0hyb7fHtWpWMWkV
-KBNuxZN83Rz8PWfdf173yE4U7DVxEFTnmonskC8KCsfLaTGv3JP5hZkpA5x+Id+3
-r9GQAQdOIkwXyxgqVAineS3q2CKhLuFD6fa/XM23KO7cKfpPPO+aSd26VcDB9P4x
-evBkwvB7AgMBAAECggEAaEOwYXuGDk3fpqG8+IaF6NDjyouZE8EG4LHR+jDw97AU
-tz6qSV7Y0U2zYcdRzdZ0MHcXW4iGjvpa7xqjpeOR6iT4EjPv3bRKzcPNJSda3flh
-HC1LEjAQ+HmUyfvrB0UPJeEHAZWKuNxUt4d37M/vQI3di4iY9Ld8C5QFklwQbrkU
-PLRJkpZTPkrE5S+pG80NA8eTz1OjeYFOsiD9INVmD59hgsN92DmzdKqH1QIDOvvF
-SW/C+tX9+ou40lf4RZNvjBsfN87Bwdg342YuzOD3vtXjbAkfnofJiHOlayKeLrvw
-ZyA1mW3+PfscPJ6SXea/y0sbBFYm5eihb5p+g0LwUQKBgQD8CimfkYex0uBOhFwF
-7jlTSKc3dWfs/4dXEk9q8yUloo6v03YmnxkS1cF7KSWIWYCEKe++XP/lKxgRaVrL
-Hm+Y5MrrQnVEgnmy7hphyEWuSsoDcTP60ATLXIycsgxsxi46410dVoiUyHRy/Vdj
-zswQA4+j6crdszeT5+b2K63j2QKBgQDqzZt7UIeIYLhkh+mS8C2V2rKejn+7Uk9W
-9qD+czQ3G8/H1/l5AODZKOCZpLvxi7oclJJt3WE4NQmZbg/MYLzzvZ+RlLaRRtKo
-YM5/+Z6AmkKAAp9LFX9Hi3hnNgG3JJLblDSkmZnB2Ur4JyqoeiTEKzcOxHNn6U3U
-FXV5QDKGcwKBgQCPHro6GWrDqKqlC3YyC+/TgjsqO+oy43uYDxa39bBPabq6z0qV
-bdzQHD/NTzU38xMOeb3hDHBnUwxMvtXG59aZLLqp00hCChFPcPPcONyQt3l1cPAC
-aeN/E2PpixWRIwyXdgqnIT9XtWii74eTbpfkNBF6E8WWFTHnNFWrzmvlKQKBgQCO
-ynDmgieaES+xu1GZUUR3oGMFt6UIFts3CI8JjqfPZ7NpVfdZ1eXnSkukRCEjmJSa
-8uNFut53nxFyZBNpd98Q311d3DFWkdpkGVMbUoNItAcC8BVNRQp9SNz070wFw1Eo
-Ba4p91shHvLPjIoNoRIg1iMKcP+5zpDNDCu/jAHt7wKBgBmHFAbNwjBByIMBR3fh
-VAGf/3Wow5YGXUkaYPxiiSd8pmotJWFE/47NLxvIHf6zNccuDoQA4VU9GpoLZk6p
-1K+ClyU1ksSVtDKbHtzW74xnqnZZ19L404tn7FqyHW+n7YG8sqBC6IROnPnpELh0
-fxSuEbyRVRjNO6ZO3p48E0AS
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC4sS5CFDshAiYA
+gpQwA0ppH7j9Yt/QXTenlEOW/9MI10RdMvCzTfHtuml2/hjyvr6gKHL7yu3IDZyR
+uVvTPQ54yWwljlrTh5SGtlh4bg5efVC69Sp9eX76gGUedZQPfEbe/2g8ozEZ/2ev
+oklcEJ4bejAtH0tuvdBLo+/P1bA1kalRUOb9BBwq9sYeYH18Tv9EzoiDG1qBmW6D
+lZQJNPTy2wt9vz1RByEICM715m8NwQ2h9dyewlYiYl1NgOWq4wwMHnhH1yqgu0NX
+02I9ViyMJDUGBdgzF4bQr9PWtZBji4HXfZjegXLdHFoNPUGp0A47oE6jUBk3Ihgg
+9u3T5GndAgMBAAECggEBALPMwaTQvzOGPOq4NH19Zp5qpJQBArR9W2YIH7jLum3b
+65Dzu4JDOmfd1zhhbHY9HaUbW70mtE/SeH8hPXSq9wC9zkvNhzxwvDZdJEmxksmI
+I+SuMjxO4EAMaOS7QHXG3dPQP3DwyiduDkncqqA3CUTksivrUGsx3KsWoKrrdAzg
+5tMfgcw+nRuOonJbIiUvTZT9CkpfTmOaNaAAS+60EDjBWGEHS1X6OUIcInQqlQ+o
+zbtSsIT5Xna7f/XYHzwtEc0oQdlc1+nnfMsBKZ2xFsTZqzWldnMPIBekhP3293hc
+EW9fLIUDKYtwyQ9zVk3AxFGtjRz3LknDGQywh9NkdJ0CgYEA3KceK5ZeRTlLsmhz
+fGZXfoSWIdYluhYi2+0rQ5I175BJoKxY5UQHt56bRtORkpVucbslj5w9uUffAzjV
+L38W/CqFBE1AMTd6fwxdU0MkWWMBTTNVJCoMCV2q95SN8gvJk18JK6e4VuteVE9U
+eF6uLWFGYzki/gM4Y31e9Mkzmk8CgYEA1kdUVTRGBjfkQ0ZK2JUk+zTaPDOwIaqA
+M56Srhqe93drKWnBO6xnMpFmCMHARCnY45Jr7ONn3ZYg7E1RjQrAzqAcj4i4jbaZ
+knY7/dEJLC+M8GNs88R1Et/1kwZXR+7NESUDTaWo29CCdpZ4Fr/9zUc+Cq+YSViz
+pnnRQsmRKhMCgYEAn7PtaErbTGsd2LE09RL1vMKmDzN59ufSry9How6OLyhVwg88
+ACRvGX2YkXjL4jZ5y6NSmlDRc+sLBL/7vPbVYgo8YFKxZW3sIUyHt53fDztTU9cV
+hqlQMO80sSE6Y7gYW6vrbUdlarPMgGUylDSjCIFheqt+Ii+efpPdSHrf+I0CgYB9
+Crrnzc1fK5aEu6xJnx8piLohj3gk7T5K4SpvdxF1D7b1P8WHcR/3nmmQiqAMJu9u
+Pa/FWR7vbABiZOxGBhRlf4GrMPmhmQEdOunfP/C+XDE+xoZ56hb3oMHJvlWIoI4C
+hzraQOW9AHxhf4UsoXUWKZDG45lWk/CiIUxAUSfpCQKBgQCe4idGKMxYLTH760Ay
+XTy7PkAGmOkz2uzkZ2mXFu7s4jVWkkIcemsyiTlESPMisjQ4cfi3rAucXzEoLxxc
+ecuCCEd3gixzl/j/4U5iGl3twU6eBpWK1KF7RG/EQ9hhuRLZXUoZbACd1uG5k+oV
+QcMXqarq2H87hd9vrxlB99Fx/A==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/intermediate-ca.pem.digest.sha1 b/jstests/libs/intermediate-ca.pem.digest.sha1
new file mode 100644
index 00000000000..b18b3372629
--- /dev/null
+++ b/jstests/libs/intermediate-ca.pem.digest.sha1
@@ -0,0 +1 @@
+70F69F1CF9ECA2515CF1F7A6A53C5CE749D4E59C \ No newline at end of file
diff --git a/jstests/libs/intermediate-ca.pem.digest.sha256 b/jstests/libs/intermediate-ca.pem.digest.sha256
new file mode 100644
index 00000000000..2abba6584e3
--- /dev/null
+++ b/jstests/libs/intermediate-ca.pem.digest.sha256
@@ -0,0 +1 @@
+D56DD3A2C10AF3589B668FEB3F9A014C876BD912D701BF2B7332BA42ABC8BC43 \ No newline at end of file
diff --git a/jstests/libs/localhostnameCN.pem b/jstests/libs/localhostnameCN.pem
index 23f598908ce..7b8530d39ac 100644
--- a/jstests/libs/localhostnameCN.pem
+++ b/jstests/libs/localhostnameCN.pem
@@ -3,53 +3,53 @@
#
# Server certificate with IP localhost in CN, includes a SAN.
-----BEGIN CERTIFICATE-----
-MIIDyzCCArMCBHL4LiswDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MFoXDTM5MDkyNzIzMjc0MFowbzELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxEjAQBgNVBAMMCTEyNy4w
-LjAuMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANqKgSfLGsE/7KzD
-1c2WSMfAXohom0te39Y8QVWf7ETvwxYUACVZ9GrCr6/S/x4xwPB8TpwFPCM4lI0M
-CpOJOhIjdty34nukyhfa7KpzAQjcc2fH3c7LP2jrPE9Pu+uUYiVxGrJpOJr3EAl8
-rvxFNmem8HsTbTt8iH/en9FcWH1zEGMyHph+i/1uRk107REcyKvmTWBS1zeryJXJ
-WYoCz+bvmK8VVNYZBwGtQVfrIIUAJPmzQnIz2fTi+Dt4M3cR7WbWXPJQ9cl7IrhR
-hug4B71CUQA6K/8Ec5wgvxBXCM2Calhsg2H9KNpiL+DXmjDydtfSq2fIl9JWa//4
-1KhDzgMCAwEAAaNvMG0wCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwEwYDVR0lBAww
-CgYIKwYBBQUHAwEwHQYDVR0OBBYEFPZHeWSxXi0G3mHNdigfHwMZio06MB8GA1Ud
-EQQYMBaCCWxvY2FsaG9zdIIJMTI3LjAuMC4xMA0GCSqGSIb3DQEBCwUAA4IBAQBB
-2e5vYSZvEL6EkQOEBsDM9e5P2PIQRZ+4ztpVEm469GYqCSa9kLst06wIUr3ln+JE
-ARVUyVT/I7kTaBJ4TLLnhXlZNNLTUfFkHENBxBjdTYa67AglvnteDiPFah8TIdYc
-AFh4UgqXmKtGc6TWbc+iPyDCfo/tIUpLmkyAXNuijiKlSeoRvvDISIqJyF3si3jr
-tgVlvKwM5ZWzNUVSNCo1movEk0kXfA9op273FNi2qKhUuD0Vc4DJjqjnJNrgLn+t
-DewdSdhX+VyFKatge98A9vTl7U29WvlsO/Z8Wl02LZdEM2xOKkRPwYl9kmG2X6P9
-rEjadizolcpveFpsTHiR
+MIIDyzCCArOgAwIBAgIER67qozANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjBvMQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDESMBAGA1UEAwwJ
+MTI3LjAuMC4xMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuBhhUIRS
+AzneprgtUZER24xU5jSbtGRXwRc+2MC3G7WgIKl3OvIFLn3BcYuUnWIIXD0Wa1Ry
+vToIeqHj6Sb8IMlm9lNMtKOmjcFfLvaia8q+SnsXc/FZMQT3qvNorhoI574+mUBL
+msFbNeYthLijvpvd2aL0uYqebtcqc73skL0USDbl0djGijo5StzCvQCK9J44Htzl
+A3oitRYkWiBZZW7SFinPLKsUueFdhGFZK8SUq1ZNjowUbx8jzMGzZu9JquGdhIEq
+3V8p/5WixFI3s5u21WFaAKljjh5HKj2HSI+MC/Hiuqy9sgoPZOjbGuDLaAgrC97Z
+WjW5qbvpX3RUMQIDAQABo2owaDAJBgNVHRMEAjAAMAsGA1UdDwQEAwIFoDATBgNV
+HSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQUSrTOui2RoGQl8kBB/Aj6r+waT3cw
+GgYDVR0RBBMwEYIJbG9jYWxob3N0hwR/AAABMA0GCSqGSIb3DQEBCwUAA4IBAQCX
+pXs6Lnste/dxYim7N+xet4UmMLrSCDLOHAECef57hbH9uVeH+Pjl/TMGbx098Yl2
+ibcVT4Z7ieQWGmEyGWJw44RsMcpQpiMGXnaWZe2k+Hn9xfSQrVoyOFhxgUTnFu7u
+nzxqh2Mod/MayFajtLFdYPjHuykxeL5+kBEPJuwTPBN2uaKKyJrmKwnq2mxUMAFj
++i2B9bZ67hSCaLAY4D76QCvEiAeTwEzhijovW077jOrqRdrHViRa9MI0CZkTy+cI
+h23LR3WPjlHlihag/EIdOjXlLYoONmEMKiDvTsI0f6hynXUNyYa6gT82NQwbxz1u
+JZn5x2nCr6m0PdUCa40f
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDaioEnyxrBP+ys
-w9XNlkjHwF6IaJtLXt/WPEFVn+xE78MWFAAlWfRqwq+v0v8eMcDwfE6cBTwjOJSN
-DAqTiToSI3bct+J7pMoX2uyqcwEI3HNnx93Oyz9o6zxPT7vrlGIlcRqyaTia9xAJ
-fK78RTZnpvB7E207fIh/3p/RXFh9cxBjMh6Yfov9bkZNdO0RHMir5k1gUtc3q8iV
-yVmKAs/m75ivFVTWGQcBrUFX6yCFACT5s0JyM9n04vg7eDN3Ee1m1lzyUPXJeyK4
-UYboOAe9QlEAOiv/BHOcIL8QVwjNgmpYbINh/SjaYi/g15ow8nbX0qtnyJfSVmv/
-+NSoQ84DAgMBAAECggEBANIARhv3D76jrspVZR4pS8anFDAAVToX8P/s5ttg0als
-vAp7Lai2yCfO7QQHvR9GsCBnUyKZ5S/zLsxaxc8ADs1fRtjR2tD1iT1jIgioelYJ
-gNw5MuuEY2puoYWVGP9Hlwhjp0PJ2JsQzlhPd9byq1TvFicug8il4oT9aJXGJ0Jj
-h/zhGxzyirU7TRpwLhI8ade893SyZA13+d5qQbUdOX7YNCeJ8PrTHq2tXHcTxRj9
-JLIZZTv8B0RU5fKp+5uypEp/acdMxQtYWSF+l8jlam0yjepzHVzYMinMDC5rLQaN
-/BRzr5gzZBW8IIdnDZ+JigU9nX/LIYPZEkMxDKgoYAECgYEA+uLhrTCSYAw8R6vV
-xe/6FYex5e1EGMJOU74BrgetuxnRKQmAROFJOa89YQ2ncsJkJIsIVQsIU9WTxKIW
-UFmFuX3BmQaxfrtpFTAEzkFC65IVHaIDao9+5FSIYfolLA0u6Z6VkE2O8RRK5A9v
-5BJzhDfTA0eS53E91yT5DhSEH+kCgYEA3v7Yq7C2ar1mBIbWAzeY1Fw99+XhHWsa
-0zDebwYb6opyAExar61AFq9EIKmMR5gxmsbe3XI4x2vxXwP7+bn6QGjvnBaWkcDx
-Yl7WX+gCbgtRpK5W++hHlHmNvNlaE3GEZxcLOcuz9N/57/dbqJBaWyZ4wFTbiY3d
-seD4KqMklwsCgYBVLTYFQJpRdZX5l0NKokC7kog5UaZu6XkCQV38oaq//PHgBtO/
-juT3aqFiE+qnsYuiRHmdtdMr8zTp60W8Hciiwyk5NOaJ6kKw6M6Y39tCcyQsHVcf
-lHw2NOTgrrZ0ED2/HxIUHeDLxGHwr7UDL6h8WR+Q23nqja27H1hXCWwaEQKBgD2b
-dszoQ111+gtiHRpCb+yrl0s3rVvtTTnvlGRj8a54lUpTzfIfEUezIEVN0j2tZHb4
-XnYbqmgeAE9Z0HGL2gGVfC1JaEvYXFfrD5rrhFBWvDWdHNb3s17nvirgeaxJfmTk
-zusmxg7vGiQb2KzXRL9N/6pTR1vXX9pW5vkQnXlFAoGBAOtaSA4WWLRgqCaHqoWK
-93UMMCk/pAx56Di3ehsXIWzPrPR429hy/T98sdKs3zTK/fkwBHC619j2AdIVyxOd
-dw0L1hFp8aHkk7H+SZK7cXpDHpkD3/UeKwAMBVP9YskrCj5YLcqf0bk5AYvjLrLX
-/TEwRboziKNKgnFV4ZcjDYed
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC4GGFQhFIDOd6m
+uC1RkRHbjFTmNJu0ZFfBFz7YwLcbtaAgqXc68gUufcFxi5SdYghcPRZrVHK9Ogh6
+oePpJvwgyWb2U0y0o6aNwV8u9qJryr5Kexdz8VkxBPeq82iuGgjnvj6ZQEuawVs1
+5i2EuKO+m93ZovS5ip5u1ypzveyQvRRINuXR2MaKOjlK3MK9AIr0njge3OUDeiK1
+FiRaIFllbtIWKc8sqxS54V2EYVkrxJSrVk2OjBRvHyPMwbNm70mq4Z2EgSrdXyn/
+laLEUjezm7bVYVoAqWOOHkcqPYdIj4wL8eK6rL2yCg9k6Nsa4MtoCCsL3tlaNbmp
+u+lfdFQxAgMBAAECggEAMn4FWucf82CQ79s+GswWQMhJlOZC+oQ3CW/NvfeFgWUc
+aTjxycoNn8XAI9trxIrZziq3FnMQEVR0dOYoM4+MwZVb1x3bwQPNr72k1KWywKvX
+62e9dABzPR2mrE2cnXvoi19DnhbjZau4z5y1SVy3FJV9kK7APo+FitMbAqnJ05yA
+2zH0O6tk4vyoUo5Bj/8GFam194uCpAhm0NfBy9Cyk1ZenDMRmyUefahmeBGFqeaF
+f6E/Bazb6l4drhu4yhuaEA4e/VXkopixbzQHMctGoU5EUQLUlJkbtAkYx61c7x61
+addr4OgPWv9Um3eIu/0FOziqVMTuobSrf63vStOSbQKBgQDwTU6/fAkcEHNpOb9y
+oWnS2L6JhNMhzZyhyj+nUz2qp6trurnXwewE9ZtZuSniaQxT4I5Qpl7CaGBmhGPs
+E8qEX/lKK9DY58vMUx6JDBtwdAQLBC42LQmneLj71gfwWZ8VVy7AZ96sNL7GC+YL
+2WvhDG4f08ZfyRtMSYgSgeliUwKBgQDEHxk1FL6q04lExutvjO64J/QyH3qZaqjl
+UenOQVA5/B2UuJWq9n4m14e9ZzWdw3GFiT4+hV4iMs8z1HWMyuYpEA6UNla1u1Xe
+VmFGq306OuTh54PP/fvu4fwiSWXKQTEkrbb9WLdc4sIy2STuOX+41b4cZy0I3FqK
+tZdkLY5m6wKBgQCQwoGF6Pqz5VUhNqCWNZbCZb+iqFloK60H6gaejg7AF3G03C/I
+QhIkirCjRGBu/Elo3gXdn9vF0YsBNw/az7FYPVi3zd1qTXkABbKHbLu66qjk2gfc
+qxT9xkPpse3mZJbpDDQlxGzn4H5sYA6dZMUQNaTBl5oRadz//+vw+kHV8QKBgQCY
+R+ljvOrba4svWyFeKVkGpwdGkAi67QWdof/gRfiMPYWef8C+0cxcTog4edY43JPd
+8xXgp9/SwA8BGJv5qWYTRkN7s8GaNI7VJ886d1eyCh7EheZkbrra3p/O45zk8b+9
+0iC/EM63kd7mapLxYrYYh+ao2TgvpCGtiJi3kWP75wKBgQDcJ0+POm5QQYlHDecF
+MZOpfI1FDfummX5yY/+8RuG/LVyB5nfilbz/EdMlNc2rVenI2IOl2MHqEuRNv2sh
+5/w0/Dgmk02TWz9HO5G0TstE1t5K3Evd8Ti6IF/N8SoJlJAqI+aqFXW5r1U9+KH4
+h9BY45YpwEgi05lHTdQzk413bg==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/localhostnameCN.pem.digest.sha1 b/jstests/libs/localhostnameCN.pem.digest.sha1
new file mode 100644
index 00000000000..9df0f445e09
--- /dev/null
+++ b/jstests/libs/localhostnameCN.pem.digest.sha1
@@ -0,0 +1 @@
+C848512676CE8B7F1DC1E4EAF0733329F9129356 \ No newline at end of file
diff --git a/jstests/libs/localhostnameCN.pem.digest.sha256 b/jstests/libs/localhostnameCN.pem.digest.sha256
new file mode 100644
index 00000000000..7fbb9c42d0b
--- /dev/null
+++ b/jstests/libs/localhostnameCN.pem.digest.sha256
@@ -0,0 +1 @@
+D57B1241325C2C3DD08B7B7B2D095026C48DCF8390841E00C000EEA7F5DF3F87 \ No newline at end of file
diff --git a/jstests/libs/localhostnameSAN.pem b/jstests/libs/localhostnameSAN.pem
index 5ed98f2a98f..0194976edc8 100644
--- a/jstests/libs/localhostnameSAN.pem
+++ b/jstests/libs/localhostnameSAN.pem
@@ -3,54 +3,54 @@
#
# Server certificate with a selection of SANs
-----BEGIN CERTIFICATE-----
-MIID8DCCAtgCBHpsfcQwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MFoXDTM5MDkyNzIzMjc0MFoweTELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxHDAaBgNVBAMME3NhbnRl
-c3Rob3N0bmFtZS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCy
-kdwwX/wq5O1yHY6kYri8HHX1EPxVK5/a9iLmzHkUus5rTbINb3rJEa8KVArG6BN7
-Vf2yNHBR324L597QRXAsCOIn0rTk0nGlDtw69fhf21kDFoKk9MBDmdXVXdchP6ZG
-8lk5//e5o65J3VkBsoIJe3WD+60oVwVdv3htCLBAFODGpNAZGcEEZf9NEf0nWFZ7
-dyuUVHZFM9g+FonN16kVImG67vZKum0EyBCTvOVCneUPvcVy1Zc2hQdMj024L1LN
-VMWYEGZSNACvTPMFDWffmtVn99VsQaQgSOeUn4oyD5KG9ywvHgGtsg1JeGKwqdBY
-kbqA/hyqoMtPD+4/Bw2DAgMBAAGjgYkwgYYwCQYDVR0TBAIwADALBgNVHQ8EBAMC
-BaAwEwYDVR0lBAwwCgYIKwYBBQUHAwEwHQYDVR0OBBYEFAAhi+uUG6aniLqqysTy
-SS8X0e7MMDgGA1UdEQQxMC+CDSouZXhhbXBsZS5jb22CCWxvY2FsaG9zdIIJMTI3
-LjAuMC4xgghtb3JlZnVuITANBgkqhkiG9w0BAQsFAAOCAQEAU8Ymp6QGn1OT6xOR
-ujlmuVujoyogR3Qu2SxZ5trvqNxIRzjknxIRyxelbInnlil71/2BYmFJ1axd6ShG
-YXKlRkukXnuW++MifOkr1/FBCrJ2rZA3/GhhKbLOpblN2JBgH99DmmhsWjNQ8AeA
-CDlCT/tVszb+3VftJuWgkEh0t8RTQ/jUNxE7iMf2oInRUeEY2s5JG803kLJ2Vph5
-9ye4Ka6K6t4I/redQVXRE/H4HQsBR7ToNlMee0HjW7XBqEOpRDHnasUL+MClboGj
-BBcwvQs9uzMGP/g1P1LL8SahKAzBsKDK7+kECQ4Y98siVemvcMKM4xSyspI8jWFA
-1h1sng==
+MIID8DCCAtigAwIBAgIEA8/VOjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjB5MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEcMBoGA1UEAwwT
+c2FudGVzdGhvc3RuYW1lLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
+ggEBANdWi2k6E12hbrZ7x9ypiFvPXvYBeQpQn/LndWDhbhr7gdzd1CYDov02sB2x
+v+ZHAbw4M+mlCSubpi71/TriZ+F+QOsNqfRNPB1x+KqFQOQqlA/5bq4Jflz9GMkg
+wvtb7tMVAbk3Hv4nHDJJ1TBEFkpR7zQl9hAFQxm1fokb5nEkDQk54BMcDf0bHT99
+nP2uSB8/5gAIGMRS4d0YSVyCEezkNjY5w1DEIpyMx3oQ4DfcE3eyh6RcXvz/5lEr
+YTcnRrN4f3mZySPR3rRolEWwioBppz8bnDr6a64C1wOGOsybNY0J+7BQV3totXwE
+P7UE1ikD42QD3bwLvWLqNGQ+wysCAwEAAaOBhDCBgTAJBgNVHRMEAjAAMAsGA1Ud
+DwQEAwIFoDATBgNVHSUEDDAKBggrBgEFBQcDATAdBgNVHQ4EFgQUvdKLieNLHvQI
+2LepEk9sdqm08sAwMwYDVR0RBCwwKoINKi5leGFtcGxlLmNvbYIJbG9jYWxob3N0
+gghtb3JlZnVuIYcEfwAAATANBgkqhkiG9w0BAQsFAAOCAQEARKd2X8OKkSJ06z0G
+kZ9KjHSUL5MSvdZ65+gPxpH+ZPVa08jnopy81e8FtKNXPA6oE8YoXUdHbsp9C81H
+qb496yK5mAIKsYFmxyp6hC63/si8hnfVCTuKCGu7clX6kKVUReQmj00KgpsIPCf9
+CGC5X42ahiqLvuzrs6lKEKN57xBeEtY0qguhunwOakgstk9i60ELQFoShxM4tS6m
+5VIu5bp1Ryji+WXvIKFZOkzi3TwFiTllw0EdGdcVL8XymMeINzATocJs75ht6eq6
+Vh1R+O2Oq6BS+gnEJS4dugvwUSo5VinKn1QzBT559Ebj4BOSMH5G+l0MZzm02yTi
+YyV/oA==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCykdwwX/wq5O1y
-HY6kYri8HHX1EPxVK5/a9iLmzHkUus5rTbINb3rJEa8KVArG6BN7Vf2yNHBR324L
-597QRXAsCOIn0rTk0nGlDtw69fhf21kDFoKk9MBDmdXVXdchP6ZG8lk5//e5o65J
-3VkBsoIJe3WD+60oVwVdv3htCLBAFODGpNAZGcEEZf9NEf0nWFZ7dyuUVHZFM9g+
-FonN16kVImG67vZKum0EyBCTvOVCneUPvcVy1Zc2hQdMj024L1LNVMWYEGZSNACv
-TPMFDWffmtVn99VsQaQgSOeUn4oyD5KG9ywvHgGtsg1JeGKwqdBYkbqA/hyqoMtP
-D+4/Bw2DAgMBAAECggEAYpzqXEyllYqXFk38WAusuTV+brfSobZVsTX8UDjbJPeE
-xv1BNuo5hJCfebSvvuiq2ZHDaIZNAOnCfBCwm5O9PpQpUJSsETGmUODD/kuXvlgD
-8BCeVTpUcwChdhM8mr/rs4JihAU3aO1bcq8qWCWcamAjpZ93IK/t5re2aYBC1R/F
-A1G5dAePyl/F+g7T50SFh7dS/Bp//EeWI3zK/LH4SjC6Y+QQepMDWo2Cr8VTIOyn
-rGf4qSjM8ntnGfWiE12Ku/KxXxxe4DDe5WS2xfWHpPTYV3pAqCK+0U4+q8mONOcx
-avhySXVUTZHym+J/l9e7YTbgxhWb2UmVBKg3/K+UAQKBgQDt4XWIUipShrAaOWsA
-CcBkx+qLXca/E1Kpja00AZH+hqUMgpn0BGeLS1BUdzjoJlGSBY2qvbeuNwCYLvu1
-Q6CKox2fXiuBUPCSUuOdNkIswHw2kVr1TKdhMlCVQo+muJ1szY+hskhWKSvh173+
-XR/4lGLaTJCPy3wrzD6eaxMPMwKBgQDAK97zFQSua7gK66r22RBFXRtDRdmR6Z71
-WDpg72Ct+p7Mz/8UKnVNJN0ojS4uovoZXrtF0aBbVmBDgWtVZH1d08S/ym77Nh4X
-DzN9y8OqTDARgoGK/+PGhcHii/L1XegHt8AQBQrgsGQ3V8ZrnAgCXqZfqRC72MRS
-54/rv01IcQKBgQCS7HQJdKZLPoE6UUhzR5KbLJcC6TK+BZNCwgy+WFHx4PvEFE4+
-VxIVCLle0hxF1pT/GYr8cB0o7zPgyvQQauqXdlPvgNxiDLnpxmRrT33j4idWFMUX
-SPcAo3D+H5RWJySkdPpHprPi85706Kmil6YNhKjhp/SJu+a/rnDmq7+j3QKBgQC+
-czwTgIMRMWRGPmVDGsBLXgjE1RbYysVktTm2E8am5bg3lvNfUuzJtX0Q0Uoxogdm
-2UGT4jqgCqyAemSbTmoIcPWOddsjT/DmPYR0aVrTDYqd787eqNdeSfVqxfPVRGnO
-LEdGGRk8sNPBHVZiE1LEtnUAXRdec2euGhvCMecvoQKBgAucgLoN6It81v6i6doe
-Gz68QsaOObmUWbe7iluzdYnPt+lEZihSUPggRLTMnmrh9fdD6l2fAMZE2fC8L2gq
-QtGSiKOuowZfZBS4DlKL+fn+XNJqZqamz0V08VGa5Sayzb6/Ud79iFVMUGVQr/lF
-MKPT0dnsj0RYgraZ7ax8+pbR
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDXVotpOhNdoW62
+e8fcqYhbz172AXkKUJ/y53Vg4W4a+4Hc3dQmA6L9NrAdsb/mRwG8ODPppQkrm6Yu
+9f064mfhfkDrDan0TTwdcfiqhUDkKpQP+W6uCX5c/RjJIML7W+7TFQG5Nx7+Jxwy
+SdUwRBZKUe80JfYQBUMZtX6JG+ZxJA0JOeATHA39Gx0/fZz9rkgfP+YACBjEUuHd
+GElcghHs5DY2OcNQxCKcjMd6EOA33BN3soekXF78/+ZRK2E3J0azeH95mckj0d60
+aJRFsIqAaac/G5w6+muuAtcDhjrMmzWNCfuwUFd7aLV8BD+1BNYpA+NkA928C71i
+6jRkPsMrAgMBAAECggEACr6QujFhofxaD9ThRgtXeG1CabftGCyprm8KFklpOwNt
+mV2gJj1sNoIyC2lBD/ZfCcssG+5WJMzhX9p6RiPh1wh7qL7Hyh7IbxeutqNrd3cA
+aEOj2B81JOKkB/UQhYYyxml36ovrifbdm0y/zGa5TgAElW+HdYktrey2YZT4zJBO
+fpkkfaj1EjcWvTnBfsfsyX0M81Nvnvc8ViejhwbUf1WGMK0VCgxPAMVuqYQAr3OO
+HWN2fOvU9tyeKC305viIqE2x5zOYbhY5U/mPht5CXVhI4xHZEeXlGeK8ic7wiWqt
+yY834uGhzEEvr4FQcUVgujhgkQfGrd3+qXjiZ+/+sQKBgQDwAeXjy+0Z7gUtEwQk
+fX5FDv5CqwVgWWwMVAg7ogchZuFstuO2qlbeg0BrHXUdiZAnCLvay2vCYApKzcs8
+hZBoV10mZUGjZVkC06LWa6EvtSTtYPIe5NWoHcMQiYHY0zj2h5Hyh5JEii/a8PsN
+7v1JmwrTg4xoAfm5FZH37wMEdwKBgQDlr9TC6KfFnvcsvl0S/4dCDXNk/Fvk2nj5
+ICjRPQkllutWjkSJCecn1K80NFEO+b8yWTuT7ARZY19fU3Rp08RN7qIkjoMT61ug
+DQN4nLMJF8hjLQSu/ZpuFzq7UTEi2LiUzkaZ+6/FwnxXl6PlAYrCSo8n4RDtEJqC
+OueDAkan7QKBgEhQKhXigYPIhWK5Ugw0i3D/PXiU0r/e8YEdaIWfIgrcVptM13tY
+A2hzn1smuvy1T+uS5BbeJ4+fJDq5mryXeZUWjYheBdLXXGRPo8Z7E0uuhnvHM+w/
+Amju3rEC3U6ZBZax7jVmx5lDEXwkE2B1W3dr8W0dO5ay0a0EZMCRERWtAoGBAInW
+5ZY6zUR5y9hcPbsDAocPT2sRT4yd1++Z7yTyviSC16TQKC0ddk2fA64On36fPrDW
+gDybbVi/nCK3EKvZ3HrwdPn/VIaFvizk4mplj8QrM6ThBWiG5UCgTCzR4u0Ipm0X
+BaOvOaMyvjBK3p62ODG1UQgbt26tgiwZcYpbuU9ZAoGAE66/9onziZ6mpyjlZdW1
+78bECsRPvC3dckAMcDME8Wr2QGgYfrMRzdoJn2jE1mAF5K9MsV4UJnpx1WwkJcSe
+jcZUZkRzJgpag6BiSuFwOVcx2oY68dor4dBCBf8NDQYycie0H55UuN9UNOTLjYUy
+dEIFFmIgZcexEsmgD4r0ync=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/localhostnameSAN.pem.digest.sha1 b/jstests/libs/localhostnameSAN.pem.digest.sha1
new file mode 100644
index 00000000000..1852be474da
--- /dev/null
+++ b/jstests/libs/localhostnameSAN.pem.digest.sha1
@@ -0,0 +1 @@
+378683F7C8F790D575291116028F47E9A6001AAC \ No newline at end of file
diff --git a/jstests/libs/localhostnameSAN.pem.digest.sha256 b/jstests/libs/localhostnameSAN.pem.digest.sha256
new file mode 100644
index 00000000000..63817335da5
--- /dev/null
+++ b/jstests/libs/localhostnameSAN.pem.digest.sha256
@@ -0,0 +1 @@
+39A96BCD7FBB5D653D2AAC46F1FDDDE0C8FDD2B62E43F220F2A0627E3EEA8C30 \ No newline at end of file
diff --git a/jstests/libs/not_yet_valid.pem b/jstests/libs/not_yet_valid.pem
index 5beb2e2c88e..eb22af451b6 100644
--- a/jstests/libs/not_yet_valid.pem
+++ b/jstests/libs/not_yet_valid.pem
@@ -3,52 +3,53 @@
#
# A certificate which has yet to reach its validity date.
-----BEGIN CERTIFICATE-----
-MIIDojCCAooCBB9hUwIwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMCAXDTM5MDkyNzIzMjc0MFoYDzIwNTkwOTIyMjMyNzQwWjBzMQswCQYDVQQG
-EwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkx
-EDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEWMBQGA1UEAwwNbm90
-X3lldF92YWxpZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMPshv9h
-uHL6Cm5d0tIGhxooYD5B/PZuPLjcvuCuHSc5VvxdL0BwLU8LzarFT/sAtojIbFy6
-CcR7pzW6WuzDXHG6wcQQvwRapJ30wu3oeUiOPOIrN9aLrc8D1dRRQGa6NLnCxQSN
-Yh/gExKxBD4eArI89WN5XjmnNrDhI7L/m2dLUL7tWYZJWxXMq4Um6h8oRzagLAt9
-yj9AYFogPlBLBwBqBQUnYJj0MSAwPZe90RZzHiv0iohrZb+xLjL6Z14iOYT4XZEN
-3MKqmA66QeOYxVcBXFpdeUMr5LA2DjNiVRnqj385HwRxMnlDftQrWkGlZYv+zqQy
-sQvUr3rRvxJaQeMCAwEAAaNAMD4wPAYLKwYBBAGCjikCAQEELTErMA8MBmJhY2t1
-cAwFYWRtaW4wGAwPcmVhZEFueURhdGFiYXNlDAVhZG1pbjANBgkqhkiG9w0BAQsF
-AAOCAQEAR/3jE0+hOkiUyqQdjeB6v5Jf4DRLh3qleWIfVPjKTU6FpKY7Dww5VkJf
-Z32MoqA56yW852/TNMM4XBWuX3KpCqrwe3CMBG4a3WSZ5nTv1N+FhDVE7NcHfl5T
-vosD5tI+3LWL06lHvdlgiACBTy+SJDVzDuBqsfwJrb3oO5G6ADsTfhTKmuA7eMdX
-qMsvZ2ru2OjeLqqjp16drWne7LZUb2ZgqEO/F+j/H43lzpxVe6typph7v2FFLWt1
-+qYI7Z2douhG2MKWGhUR5MJDBeozqref6KSW2J4REwQAmZGgoCjFyA9NPm0TNR69
-dOnvLCX72/S6G/VQvcxI3m08YjypFw==
+MIID1jCCAr6gAwIBAgIEJLBcqzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNNDIwMTI5MjE1OTQ0WhcNNDQwNTAyMjE1OTQ0WjBzMQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEWMBQGA1UEAwwN
+bm90X3lldF92YWxpZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL29
+rHDLieL9YgGh1QmOKxB0MWXKqDAZ3/ZBdVWyV3ALLmqRO3sJTNiVeTdLG5LN87bW
+8XfZrim37qpS+mh/NXJHq6MhTq7KBQuHm8/NjpRwKTQAI7gXvd7ItFUCPUn72fs6
+S3Yj1KMyG6oUuG/H8UTsH1XNZqCDbUMM27puAG5L4gg0ggu0PSXS3zR8R0Ljafkx
+N1OGqaQ2hY9p10e8ka/YP0kBR/B+VSSngk1xUx+z9P1+DOW9sTJ3egj08mH5hszc
+SXJmQqmbj6ybRxQifMCvHKvOaB/C26ifV1cfn9CS8JP6dhJrX5Y42d+ufZJ2KXHZ
+YJTkILQJlD7dHv184LMCAwEAAaNxMG8wEwYDVR0lBAwwCgYIKwYBBQUHAwEwGgYD
+VR0RBBMwEYIJbG9jYWxob3N0hwR/AAABMDwGCysGAQQBgo4pAgEBBC0xKzAPDAZi
+YWNrdXAMBWFkbWluMBgMD3JlYWRBbnlEYXRhYmFzZQwFYWRtaW4wDQYJKoZIhvcN
+AQELBQADggEBALBm9gBCGg6cM/aCjypxlIrRqUVuNAK1jZvZyRFIZhLtLw5FN/+o
+JKzYjqs9gQhlNoFG+/41c59Afu06/Yy3DPi/VKPJ2TZDr4DPCBchSKdjDUEXm50B
+0fHymT/hjhMPsF1tclgwINPCwBeReSKOfXxjSAQyjC7pSQEF3Qr5hYXQEP38+NSW
+eDg+5S0Y1+QDpATYanJCUzBRD4ZRvoy7VsueszMNtygPEQYorE6GnM7CJ5z1b4j4
+az7/LqVAZEOW6sxFT3bPuPtsiMEjbWxXcqbfbeb6WRntGG+YfvSq9Al1SRBAUjcI
+w5xxu9jynyHZyHc1BC1lKP8XY/GFWFG+/nM=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDD7Ib/Ybhy+gpu
-XdLSBocaKGA+Qfz2bjy43L7grh0nOVb8XS9AcC1PC82qxU/7ALaIyGxcugnEe6c1
-ulrsw1xxusHEEL8EWqSd9MLt6HlIjjziKzfWi63PA9XUUUBmujS5wsUEjWIf4BMS
-sQQ+HgKyPPVjeV45pzaw4SOy/5tnS1C+7VmGSVsVzKuFJuofKEc2oCwLfco/QGBa
-ID5QSwcAagUFJ2CY9DEgMD2XvdEWcx4r9IqIa2W/sS4y+mdeIjmE+F2RDdzCqpgO
-ukHjmMVXAVxaXXlDK+SwNg4zYlUZ6o9/OR8EcTJ5Q37UK1pBpWWL/s6kMrEL1K96
-0b8SWkHjAgMBAAECggEBAL6Ciipd7Srv86Cp3suWyVwoEp23MLC3NJhVHc3/wB1Z
-5jlyqvWvnn8UbSI2xrS9VsDekm///mtuCYN2997tgECeZretyPAE67kkPT91JCnn
-FVCe0abvH00C37OaZlL9kTNoLodkqxtvmVw9gHCeYeTK3ZmidHr/G3EXGs19OrFO
-mR2+tW4oILrm78GZELPgEbFmQdTV9oHCOKBQcl4rZwPyhJY6lo0wJnm0TOl79v2c
-0kDG5La92ON358ufuAdz1+ugwr/jYEdw91vDD310b3uKKyq3HWSLK38fCiL+tTS7
-KhVTVAQkF0WAhEFPQ5gb3xN20GzjoTGGr/r0KZa3+LECgYEA6BUrDFI0t0BNJmqy
-1BAlYGFSy/hcjxCQqBu6dKbg2UNDcT5wyf9/eTS8cHClJm4ODINAkhLPS5pvByp5
-j8EnJDVUz4Iqa89JTFv2lPinhSw6nEpX9o2U1xolCK260VXPNgMG6uWE4+33KrON
-PzAO++bm7AuB7Dt/JpaBsNlkHa0CgYEA2B1qMx7Mnbc1tI1l9eKYFgujmoEnVwfc
-fF6H6DbQI3D+mI/NK3pLtEXP5a6+308TwN3gydhmAg2aGZXlAiqtCiU4+iRtm6qT
-TG892Xl08lyyCvKZMszzqlgaYna/RYiquFhlrsB+jy63+XW+dOVR9n+jK35kyYRv
-A4fDkFwxr88CgYBtPnGaBiQcUl8+gyEUY1lEqeswagMfsLt29j5pZJgYjOn1J2Au
-JV9arXE6ODv0//8K8sl1OPds7g/vPpYkDdaf257FYs8XGma1U+CZNQad0Djykqgf
-PXvfWMYv9J8opIy6LuiVr15DcCNVbVlCchvLhWATokMQ8NykTFpV5a6TrQKBgQDJ
-FMVlfzi/XmJX9mByIj2D9Zxp+9XQwn3CMmqeA7Ix58bbyKEL3SRnPbWsbaUnPfqR
-L2EiLXjsXB+Pwspr861BjVSwWgiqGFIpgi+4E6xefSUjzooAnHXzfzo9d2OMnRbL
-o2Qo7u5S5xNCxu1I8r4KbsQxic7ZOaHZVQ7/WOjaPQKBgEyHOIp2sVfzM53SWK9u
-Yrs73aHhVUISxRGKNOdUBKgxTv/6AtLDnH6CTkT56vHoLNM3tpKae/7nzKHokAUK
-WJ9dK1ymxsfRFwZ3rSxikLvMC5eI7xZYA37Cv7juHrU+rtgyvkBTpVTqXNq4arXT
-tH7fy0W+MG3OC1eHoWcJu514
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC9vaxwy4ni/WIB
+odUJjisQdDFlyqgwGd/2QXVVsldwCy5qkTt7CUzYlXk3SxuSzfO21vF32a4pt+6q
+UvpofzVyR6ujIU6uygULh5vPzY6UcCk0ACO4F73eyLRVAj1J+9n7Okt2I9SjMhuq
+FLhvx/FE7B9VzWagg21DDNu6bgBuS+IINIILtD0l0t80fEdC42n5MTdThqmkNoWP
+addHvJGv2D9JAUfwflUkp4JNcVMfs/T9fgzlvbEyd3oI9PJh+YbM3ElyZkKpm4+s
+m0cUInzArxyrzmgfwtuon1dXH5/QkvCT+nYSa1+WONnfrn2Sdilx2WCU5CC0CZQ+
+3R79fOCzAgMBAAECggEABF5qqwo0uZJGAG2efyLT4QQb4xEggEMIQh5NulRp6P2I
+6xE/Al07dL00Vk6XavDtDKe0VaMgfHtstmVEuMU9EM2PqSjqK+Ig7ZwIvWcpQke2
+2yipqeJ6D7glVtO/X4W6BivYcvbuPXe45VimyoQbDRA2xH3/P/DmwiV4pblEr0Vr
+2AdQ9ZsV0t6MekKnQidw27U/UnA3zE8i8PqAfSCIzBHKKntjdRVWJVAs1eVInEDk
+erHzvu6zkMairlIY2YDUmRH+XKpqj1cOWDyrBLKLA8GkY8fbKn42f7MgbuiQBbOS
+1xH6w1U943+LptUm2VP3iczCLucy6letfNtJcn5yUQKBgQDt+vs2ObQ9GP98msYx
+4Ut9nTmv0RzFyGMfeua0GUYtryqmUDBHsy6YbhnXAtazIEPQ0hWF0f4l3EGeJ+kB
+dXvrcSn5YIRKlo6xNOM8yDGOsRLwVjOcEeXHKmopWX0I/5FdIkiMo392Knrw09BM
+WHDtd9bFokbNRZyecVdaSB50qQKBgQDMG53mYjGiaWQJZcbKbdvzSiLI4KWQ+w1g
+SuTyC9ml5MGTf0D6uw5iLhnxg5X1aN/QxbcrfIPpwAmAyP6CjNzurC3p1FZ6vszL
+lkDnSXiHM/kdrEDkbKILLVlK0zk/veeHHsRujfdpCnWdUaB+gU3d3HDhPV1mK6ct
+sj9QBvzn+wKBgDQpqDipi009FnscfcbfKCnfdY6JGnJryvZSfREK3SwUUhfkScDd
+kKAOuhE76Q2YS+UQt3D+p2NrFOLywor0UnY39shXlIe42owTGJ/xDZPGUm1lp6hU
+7/Wo4V4w5Ew9oII2iopxJ/Yht5LkCqtBU3dppiTpvfUuhfbgxxHd7vcJAoGBAJdr
+9ZyxRHllDp4aL3yGPCMl4OB+KNaCKc5CQc+AExwLtcCjK6XXmDgmU4DlSh8iisjr
+pZRRb9u+aE5uzsIzlsRKYFWU/gNaAb0X31a3Hv/PAwWMgSf1n9IC9reYNGShkl6f
+6MLL97yp0c/AevzfGNF7dRLk36GoyQIRtv678Gx5AoGAQsKJ8fvOSgXiRUI31Ers
+99st2+viPOpAgsTLQICJMCkj+Sp//KmRo1YrieYpb3zmIWxhAqQ3HwNcTRq+OKSH
+ix/ABTytekH/56+uvzUcNIzuwbk/GKwoXI6E6TA58mnsh4dd59ZlPTtDicK/Glsf
+Dx0G3fNCJsrG6CrH1EM9n/I=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/not_yet_valid.pem.digest.sha1 b/jstests/libs/not_yet_valid.pem.digest.sha1
new file mode 100644
index 00000000000..c2b282c0ebd
--- /dev/null
+++ b/jstests/libs/not_yet_valid.pem.digest.sha1
@@ -0,0 +1 @@
+385D8CBF6B41B08FAE5C0361A9F3E08FB278B991 \ No newline at end of file
diff --git a/jstests/libs/not_yet_valid.pem.digest.sha256 b/jstests/libs/not_yet_valid.pem.digest.sha256
new file mode 100644
index 00000000000..4c735b56a10
--- /dev/null
+++ b/jstests/libs/not_yet_valid.pem.digest.sha256
@@ -0,0 +1 @@
+6F8A24651A0D6EA91FD82AE20C96270138E88C0E2D9B7B1C831EF571EC8EFF52 \ No newline at end of file
diff --git a/jstests/libs/ocsp/ca_ocsp.crt b/jstests/libs/ocsp/ca_ocsp.crt
index 1e662e24511..67ba4dac386 100644
--- a/jstests/libs/ocsp/ca_ocsp.crt
+++ b/jstests/libs/ocsp/ca_ocsp.crt
@@ -1,21 +1,21 @@
-----BEGIN CERTIFICATE-----
-MIIDeTCCAmGgAwIBAgIEBdhiWzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIIDeTCCAmGgAwIBAgIEaP5C8TANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjAwMzIzMjIxMzA5WhcNNDAwMzI1MjIxMzA5WjB0MQswCQYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjB0MQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwO
-S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCg
-H42hLFFnWFETIDs4Q3rjzJLB4mxqn7BiFDbhzivKGN8SMrIaoyg8CkNJWpJVYEBN
-BjaQHMzivBiQEjDbx2bWz7+rMjont9zJbNmMMuEZcqQw42SBlQ/xXBnIbvICGoXy
-7EkEH/kYzX7NjUhAHOJUdfyTW0okChPxOQr8CI07HVYmeelBZh6FPnzdQ5mgsbmk
-vsdesE1gvcfFtm/7Q6+GXp+1GDVGRUmPmHTYPIkjouJWQM++WU2KofSe5k9Rn1Oz
-ZE3jJAaB9gGA83/xcLkVLBe4dyE5foVbbXL7t37yB8R06/7ffV62B7sn0M5X/rfA
-UY5sJ6WOWdQz8k+WjXlXAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
-hvcNAQELBQADggEBAAsY/vktUSwXC1MCC8cYtcrlI0EgGcvkcRxEjRv7t5YVZii6
-eqKSfaX5HDxKl8dH7Z95Z3sDqr7iwPFtzmzQHEwvSSKbiqeS9Be0yf6mJv10LC5d
-M9qoMvbp90ob3Jhib5IGzeijcQFfzbZa+MGnWiCGX04U/hUrayMdmna83exKbeNW
-S0LT1F82rG2QklFOFSZSInXsBiR4olRWqXrYpNjP4B5gueQ2+XUlMZdphvkOksCo
-/UBdqKotBFgyYXdMygl4hscxo+O4FRpX6RKVyobJXKax+mzbc9YUKTFtKu6KlZls
-jvqjtuXgmZvXOgduG5D8Sqoqp/q1nYzYpcgEss4=
+S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDS
+ASa6t/0P3MHRRhLP2W25y2NJ9eBl6YMJj3oY058ixhHOhPLvdnWPcLHOh36BiNu8
+5+lX8w27vAz84qzloYQ44YJO+uvU9WBEoMa707IWTre3PSoYfe4y49fm9AwYkG2R
+qn7674TGn5eNZnSuBVzab7Fy5+zBDAhgCcB+z0MYP3COEyrmzkKY2rPTPu7K7o3r
+5FFGfxgceDzN6lukG12h75F+R64o8lvVBkHV5+1mwlx8SlthPH1HJB6/ZjX1m4gw
+yRlU9JfR00iphro4FYI1SgGKeSP7Fn1E0VRB/YwRAoZFguq62vlMImzh+2folFF4
+1XzEO+BKjUiRfYbRTpWRAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
+hvcNAQELBQADggEBAKRiAji29p93B9cA/9gjE5Zlb39LRtYA5+RBC0WTn8u5ku//
+XGpz3P8aDpO0BFAd/gNiyGRWQ7blHj0Mn02QHqW7T/yyyE0m/fASdXIoJApFDEtK
+n1mUcmVdiiIlQvXo/oi1RTwxckQNqFYm2M/XSrg0HLFVHsTQrdDskbs0SRQZK3qv
+5EluYHu7UvKAAmzepZhtyC1VNrZbP97cJ03ZupUyMo6NHLk0WxFHvYM3U7K/W7ui
+YuFWenPWmESFGHR923lF6HjzvkhHYXKPaYhTnKZJ1kjwhYfcdfSmbizJBBlryzEL
++0KtahO1J5NBwYyVgo+Pkv5OEWwunzrpsY+TLR4=
-----END CERTIFICATE-----
diff --git a/jstests/libs/ocsp/ca_ocsp.key b/jstests/libs/ocsp/ca_ocsp.key
index 8429188868b..8f2faea5c09 100644
--- a/jstests/libs/ocsp/ca_ocsp.key
+++ b/jstests/libs/ocsp/ca_ocsp.key
@@ -1,28 +1,28 @@
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCgH42hLFFnWFET
-IDs4Q3rjzJLB4mxqn7BiFDbhzivKGN8SMrIaoyg8CkNJWpJVYEBNBjaQHMzivBiQ
-EjDbx2bWz7+rMjont9zJbNmMMuEZcqQw42SBlQ/xXBnIbvICGoXy7EkEH/kYzX7N
-jUhAHOJUdfyTW0okChPxOQr8CI07HVYmeelBZh6FPnzdQ5mgsbmkvsdesE1gvcfF
-tm/7Q6+GXp+1GDVGRUmPmHTYPIkjouJWQM++WU2KofSe5k9Rn1OzZE3jJAaB9gGA
-83/xcLkVLBe4dyE5foVbbXL7t37yB8R06/7ffV62B7sn0M5X/rfAUY5sJ6WOWdQz
-8k+WjXlXAgMBAAECggEAV8GzT5gIbUlb9c1+Z1GkcmDWNeiwXqdyde56PbtPCI4l
-A8ZBEpRFItLFGdjHxn7f/tbe5JDEQaexFpTBrlJUrHpjo6H9eXMtUD+V416nO9k2
-34xgsxxNBozhnJYhkMGUlBSn19jmHo/RZTp/VJP//yZC7UflFGdpkpUezg6pyLFn
-N/TO0KtRCvBjGTXZhD56D3bf5HRxo9clktXx1fczAzKTCyGn2bWZl4lEBZI2KRWQ
-wjV44kP01OoE41hr1nlhqH04Uya0uUdj/bYz1LhHM+IpEVnzsc10b6sJQN6qcN/y
-VagvH0ZCcquVzjntky7jaWRREjbwrQrgdfACqqZg4QKBgQDTi/BYBnXGzeN4ZxtP
-VlxO63JziIMQhYsaWvtY6G6YodLB8rxkA7lFNZv71PQcAUUqNKugjZFBjTOA79n6
-Aj9RBe0N0/PoeLLuq/H7Pl0yk06lxu7gZI5T1VZCWCSOsx1tbf3p+u6wIMy3C7ya
-K4C7hQ4mCH7nommKeo78HGAyuQKBgQDBxVDFZ/ftneLvhjc1rWsGW2Gvg2ldA0bL
-gjnaMUI+sGQxl9if3zljNVh2HPfcVxFQs2RwlCUX+NI1JynCwE5nrEpp1lGS8GMC
-X9EVjJLVqZVH8+CCxpcACapHD/BPxQydJhKjq/EvEW5xjvzmF8qADpACWbWUOg65
-rLn53hhEjwKBgQDQFu1aiTA9WLWS8Elq51ZxwySYBQZ3sAU+7ZQkxq5TsYqxgWZT
-M16Bd9RyCe39xjoU5C6XBeqGgrDQ+h5+0Msbliqy2XUpjeDk6XpkW9otL73DUEYV
-sJRYXpg1NqLvQ72EsRd9m3pDAmCdBgyF0pkU3DMosl6y143dy+TulbMC8QKBgAgP
-UwrDBlcF6DiaVpWO/xKmnmuUhb9usXUpl4px3hWJdMFzVXlg6Zwszd8r2Ut6+6dl
-rtnX76sNmIDJfj0xjpFVY0r/tSjtgtDId4Pz8u+cPC9f/4ixBfrkbAbErPREd//Z
-Y5EXR9LzYKqsjexsNOoasPbIEHt35sDmZF32VQAVAoGBANDrKzBqlD4EtTRdJi5O
-x42orwmk2vx1WwWTIs3QmkdFVrfcY+K8sBGByJ0EwyNCUt4HQxqAP6kIIsoA0WH0
-/dO6bPPjTOcZq89RTP4XDVcikwWpclin4PIlY7xC5RNx2sRrtexfwbBoP/Zcwje5
-8UCDml84kMEUd5F6QA/sOB2o
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDSASa6t/0P3MHR
+RhLP2W25y2NJ9eBl6YMJj3oY058ixhHOhPLvdnWPcLHOh36BiNu85+lX8w27vAz8
+4qzloYQ44YJO+uvU9WBEoMa707IWTre3PSoYfe4y49fm9AwYkG2Rqn7674TGn5eN
+ZnSuBVzab7Fy5+zBDAhgCcB+z0MYP3COEyrmzkKY2rPTPu7K7o3r5FFGfxgceDzN
+6lukG12h75F+R64o8lvVBkHV5+1mwlx8SlthPH1HJB6/ZjX1m4gwyRlU9JfR00ip
+hro4FYI1SgGKeSP7Fn1E0VRB/YwRAoZFguq62vlMImzh+2folFF41XzEO+BKjUiR
+fYbRTpWRAgMBAAECggEBAM2sFPs/oNe9NBE6mMf5wU36lPZlmW0WQqDFZSYVdECB
+TgU+DhNaqA5gp7OG3e4NVG/xjYX2ZBfeN7YgZobLJgzzR0UE2J2L58mu0JQ546uX
+UrRicezkwLoUjWoC0CnqoXTNT2mB1T8WJD52/oVEeUjxpQ/NdwEmQLmWM3G+mY6P
+JQgxk8CIFVu1P0qajjmT/AjVEwaH/ftQN0rLFomr2UVSJ7XcPD4KzqXTOu5BahIp
+uoIEtc84dzPQIvh43Prjwea313zFKiGVWWoS514PpySi9CPk+Z8N7kY3r6ENHnXP
+MLptUEUAQ9IQsKBdQemF4e4U1YY2o43rxU02K4nwgcUCgYEA6HPo1H4fN6Ox22VZ
+KwzdVLJNojVYvV51C6dLSh9r7TQiomKwbMrfoIN0TUVb38mlhSQrlBCgpgJW+HOf
+U6cO3SdWvaprCcKLpSPWfy30nAW7LfzExNLF6+kLXIhUse1T9nNC3iHnjDP/ZCo+
+/QEJXu0+tkAwv46k/EYYfBzzkycCgYEA50cZ3o4QekPGHWT/9ioGwFjbl94c/9wW
+t5YS3ELeuQS16ZVsQlwH530Jd4Md1JqtL2024a/aMu5BEkV94ZgIu/xq2t0xOgUG
+CEwW8abfEIzXArfCMJBlSV63ir/Rm7ZNrwZNtf+fu5gTtSShNAIOEQ2gQvjLGAlz
+MQ+xgXsRpIcCgYBub6MOUV1DceHt+hiC+3mr44o+plminl29S53ZeVQtPbe2rmxj
+Q387Izj9/RXJHGQm/Sg3EC9Cr5niMAxiEdxd9XKgaXaxDFyL+JrPkWXFOnPTRWO2
+nuypR+6954dVgQuC6v+5ySHY2ltbmzaRvQxWrSA+NgDzATIhKKw5SwftwQKBgQDP
+r8XHWYPqh5oNI3nHsQ3HBQSNaGRaT2YHDrl5GoOvWk+RpyFEpihi9KHftNrA5PXI
+tSannKcxPUsqAUV9pG2TgqTiTee61nAIW2vvLY766b7bLfEwczrBnFDuRDsSva8d
+EWgPm7HxYCuya2ZnscC4B6h2+7xFpZbP4+ve/ollWQKBgQCf+2qZHTIhaJGZwpyh
+hROhQCJimw7ECTkuP1vEu2guhu1QKMCp8yD/Li7S+SdzZp1L4NPbMswJfy1wXkfj
+uyWP2mRmQuWg+RUPFUmvSp3eP6LKBHlmrBEfVI2lBLTaB+5MG84a6r8OaIbJXd6s
+bbDRynzmmyQ7u3wKCA8DfMpHBQ==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/ca_ocsp.pem b/jstests/libs/ocsp/ca_ocsp.pem
index 8a9ff3759e0..9f57d6aa4cc 100644
--- a/jstests/libs/ocsp/ca_ocsp.pem
+++ b/jstests/libs/ocsp/ca_ocsp.pem
@@ -1,49 +1,49 @@
-----BEGIN CERTIFICATE-----
-MIIDeTCCAmGgAwIBAgIEBdhiWzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIIDeTCCAmGgAwIBAgIEaP5C8TANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjAwMzIzMjIxMzA5WhcNNDAwMzI1MjIxMzA5WjB0MQswCQYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjB0MQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwO
-S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCg
-H42hLFFnWFETIDs4Q3rjzJLB4mxqn7BiFDbhzivKGN8SMrIaoyg8CkNJWpJVYEBN
-BjaQHMzivBiQEjDbx2bWz7+rMjont9zJbNmMMuEZcqQw42SBlQ/xXBnIbvICGoXy
-7EkEH/kYzX7NjUhAHOJUdfyTW0okChPxOQr8CI07HVYmeelBZh6FPnzdQ5mgsbmk
-vsdesE1gvcfFtm/7Q6+GXp+1GDVGRUmPmHTYPIkjouJWQM++WU2KofSe5k9Rn1Oz
-ZE3jJAaB9gGA83/xcLkVLBe4dyE5foVbbXL7t37yB8R06/7ffV62B7sn0M5X/rfA
-UY5sJ6WOWdQz8k+WjXlXAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
-hvcNAQELBQADggEBAAsY/vktUSwXC1MCC8cYtcrlI0EgGcvkcRxEjRv7t5YVZii6
-eqKSfaX5HDxKl8dH7Z95Z3sDqr7iwPFtzmzQHEwvSSKbiqeS9Be0yf6mJv10LC5d
-M9qoMvbp90ob3Jhib5IGzeijcQFfzbZa+MGnWiCGX04U/hUrayMdmna83exKbeNW
-S0LT1F82rG2QklFOFSZSInXsBiR4olRWqXrYpNjP4B5gueQ2+XUlMZdphvkOksCo
-/UBdqKotBFgyYXdMygl4hscxo+O4FRpX6RKVyobJXKax+mzbc9YUKTFtKu6KlZls
-jvqjtuXgmZvXOgduG5D8Sqoqp/q1nYzYpcgEss4=
+S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDS
+ASa6t/0P3MHRRhLP2W25y2NJ9eBl6YMJj3oY058ixhHOhPLvdnWPcLHOh36BiNu8
+5+lX8w27vAz84qzloYQ44YJO+uvU9WBEoMa707IWTre3PSoYfe4y49fm9AwYkG2R
+qn7674TGn5eNZnSuBVzab7Fy5+zBDAhgCcB+z0MYP3COEyrmzkKY2rPTPu7K7o3r
+5FFGfxgceDzN6lukG12h75F+R64o8lvVBkHV5+1mwlx8SlthPH1HJB6/ZjX1m4gw
+yRlU9JfR00iphro4FYI1SgGKeSP7Fn1E0VRB/YwRAoZFguq62vlMImzh+2folFF4
+1XzEO+BKjUiRfYbRTpWRAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
+hvcNAQELBQADggEBAKRiAji29p93B9cA/9gjE5Zlb39LRtYA5+RBC0WTn8u5ku//
+XGpz3P8aDpO0BFAd/gNiyGRWQ7blHj0Mn02QHqW7T/yyyE0m/fASdXIoJApFDEtK
+n1mUcmVdiiIlQvXo/oi1RTwxckQNqFYm2M/XSrg0HLFVHsTQrdDskbs0SRQZK3qv
+5EluYHu7UvKAAmzepZhtyC1VNrZbP97cJ03ZupUyMo6NHLk0WxFHvYM3U7K/W7ui
+YuFWenPWmESFGHR923lF6HjzvkhHYXKPaYhTnKZJ1kjwhYfcdfSmbizJBBlryzEL
++0KtahO1J5NBwYyVgo+Pkv5OEWwunzrpsY+TLR4=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCgH42hLFFnWFET
-IDs4Q3rjzJLB4mxqn7BiFDbhzivKGN8SMrIaoyg8CkNJWpJVYEBNBjaQHMzivBiQ
-EjDbx2bWz7+rMjont9zJbNmMMuEZcqQw42SBlQ/xXBnIbvICGoXy7EkEH/kYzX7N
-jUhAHOJUdfyTW0okChPxOQr8CI07HVYmeelBZh6FPnzdQ5mgsbmkvsdesE1gvcfF
-tm/7Q6+GXp+1GDVGRUmPmHTYPIkjouJWQM++WU2KofSe5k9Rn1OzZE3jJAaB9gGA
-83/xcLkVLBe4dyE5foVbbXL7t37yB8R06/7ffV62B7sn0M5X/rfAUY5sJ6WOWdQz
-8k+WjXlXAgMBAAECggEAV8GzT5gIbUlb9c1+Z1GkcmDWNeiwXqdyde56PbtPCI4l
-A8ZBEpRFItLFGdjHxn7f/tbe5JDEQaexFpTBrlJUrHpjo6H9eXMtUD+V416nO9k2
-34xgsxxNBozhnJYhkMGUlBSn19jmHo/RZTp/VJP//yZC7UflFGdpkpUezg6pyLFn
-N/TO0KtRCvBjGTXZhD56D3bf5HRxo9clktXx1fczAzKTCyGn2bWZl4lEBZI2KRWQ
-wjV44kP01OoE41hr1nlhqH04Uya0uUdj/bYz1LhHM+IpEVnzsc10b6sJQN6qcN/y
-VagvH0ZCcquVzjntky7jaWRREjbwrQrgdfACqqZg4QKBgQDTi/BYBnXGzeN4ZxtP
-VlxO63JziIMQhYsaWvtY6G6YodLB8rxkA7lFNZv71PQcAUUqNKugjZFBjTOA79n6
-Aj9RBe0N0/PoeLLuq/H7Pl0yk06lxu7gZI5T1VZCWCSOsx1tbf3p+u6wIMy3C7ya
-K4C7hQ4mCH7nommKeo78HGAyuQKBgQDBxVDFZ/ftneLvhjc1rWsGW2Gvg2ldA0bL
-gjnaMUI+sGQxl9if3zljNVh2HPfcVxFQs2RwlCUX+NI1JynCwE5nrEpp1lGS8GMC
-X9EVjJLVqZVH8+CCxpcACapHD/BPxQydJhKjq/EvEW5xjvzmF8qADpACWbWUOg65
-rLn53hhEjwKBgQDQFu1aiTA9WLWS8Elq51ZxwySYBQZ3sAU+7ZQkxq5TsYqxgWZT
-M16Bd9RyCe39xjoU5C6XBeqGgrDQ+h5+0Msbliqy2XUpjeDk6XpkW9otL73DUEYV
-sJRYXpg1NqLvQ72EsRd9m3pDAmCdBgyF0pkU3DMosl6y143dy+TulbMC8QKBgAgP
-UwrDBlcF6DiaVpWO/xKmnmuUhb9usXUpl4px3hWJdMFzVXlg6Zwszd8r2Ut6+6dl
-rtnX76sNmIDJfj0xjpFVY0r/tSjtgtDId4Pz8u+cPC9f/4ixBfrkbAbErPREd//Z
-Y5EXR9LzYKqsjexsNOoasPbIEHt35sDmZF32VQAVAoGBANDrKzBqlD4EtTRdJi5O
-x42orwmk2vx1WwWTIs3QmkdFVrfcY+K8sBGByJ0EwyNCUt4HQxqAP6kIIsoA0WH0
-/dO6bPPjTOcZq89RTP4XDVcikwWpclin4PIlY7xC5RNx2sRrtexfwbBoP/Zcwje5
-8UCDml84kMEUd5F6QA/sOB2o
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDSASa6t/0P3MHR
+RhLP2W25y2NJ9eBl6YMJj3oY058ixhHOhPLvdnWPcLHOh36BiNu85+lX8w27vAz8
+4qzloYQ44YJO+uvU9WBEoMa707IWTre3PSoYfe4y49fm9AwYkG2Rqn7674TGn5eN
+ZnSuBVzab7Fy5+zBDAhgCcB+z0MYP3COEyrmzkKY2rPTPu7K7o3r5FFGfxgceDzN
+6lukG12h75F+R64o8lvVBkHV5+1mwlx8SlthPH1HJB6/ZjX1m4gwyRlU9JfR00ip
+hro4FYI1SgGKeSP7Fn1E0VRB/YwRAoZFguq62vlMImzh+2folFF41XzEO+BKjUiR
+fYbRTpWRAgMBAAECggEBAM2sFPs/oNe9NBE6mMf5wU36lPZlmW0WQqDFZSYVdECB
+TgU+DhNaqA5gp7OG3e4NVG/xjYX2ZBfeN7YgZobLJgzzR0UE2J2L58mu0JQ546uX
+UrRicezkwLoUjWoC0CnqoXTNT2mB1T8WJD52/oVEeUjxpQ/NdwEmQLmWM3G+mY6P
+JQgxk8CIFVu1P0qajjmT/AjVEwaH/ftQN0rLFomr2UVSJ7XcPD4KzqXTOu5BahIp
+uoIEtc84dzPQIvh43Prjwea313zFKiGVWWoS514PpySi9CPk+Z8N7kY3r6ENHnXP
+MLptUEUAQ9IQsKBdQemF4e4U1YY2o43rxU02K4nwgcUCgYEA6HPo1H4fN6Ox22VZ
+KwzdVLJNojVYvV51C6dLSh9r7TQiomKwbMrfoIN0TUVb38mlhSQrlBCgpgJW+HOf
+U6cO3SdWvaprCcKLpSPWfy30nAW7LfzExNLF6+kLXIhUse1T9nNC3iHnjDP/ZCo+
+/QEJXu0+tkAwv46k/EYYfBzzkycCgYEA50cZ3o4QekPGHWT/9ioGwFjbl94c/9wW
+t5YS3ELeuQS16ZVsQlwH530Jd4Md1JqtL2024a/aMu5BEkV94ZgIu/xq2t0xOgUG
+CEwW8abfEIzXArfCMJBlSV63ir/Rm7ZNrwZNtf+fu5gTtSShNAIOEQ2gQvjLGAlz
+MQ+xgXsRpIcCgYBub6MOUV1DceHt+hiC+3mr44o+plminl29S53ZeVQtPbe2rmxj
+Q387Izj9/RXJHGQm/Sg3EC9Cr5niMAxiEdxd9XKgaXaxDFyL+JrPkWXFOnPTRWO2
+nuypR+6954dVgQuC6v+5ySHY2ltbmzaRvQxWrSA+NgDzATIhKKw5SwftwQKBgQDP
+r8XHWYPqh5oNI3nHsQ3HBQSNaGRaT2YHDrl5GoOvWk+RpyFEpihi9KHftNrA5PXI
+tSannKcxPUsqAUV9pG2TgqTiTee61nAIW2vvLY766b7bLfEwczrBnFDuRDsSva8d
+EWgPm7HxYCuya2ZnscC4B6h2+7xFpZbP4+ve/ollWQKBgQCf+2qZHTIhaJGZwpyh
+hROhQCJimw7ECTkuP1vEu2guhu1QKMCp8yD/Li7S+SdzZp1L4NPbMswJfy1wXkfj
+uyWP2mRmQuWg+RUPFUmvSp3eP6LKBHlmrBEfVI2lBLTaB+5MG84a6r8OaIbJXd6s
+bbDRynzmmyQ7u3wKCA8DfMpHBQ==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/ca_ocsp.pem.digest.sha1 b/jstests/libs/ocsp/ca_ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..112d057d8a9
--- /dev/null
+++ b/jstests/libs/ocsp/ca_ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+BF8C557A0367B29F817643DB7F1786C8F9E0EB29 \ No newline at end of file
diff --git a/jstests/libs/ocsp/ca_ocsp.pem.digest.sha256 b/jstests/libs/ocsp/ca_ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..508eb3bfa2d
--- /dev/null
+++ b/jstests/libs/ocsp/ca_ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+D783E2DACE3BEA1AD49CDAE84E1F1CB54ED79C97A76DCA8C19FCC4B60A6C3CD4 \ No newline at end of file
diff --git a/jstests/libs/ocsp/client_ocsp.pem b/jstests/libs/ocsp/client_ocsp.pem
index 3640a231c1b..e7ffb1b5126 100644
--- a/jstests/libs/ocsp/client_ocsp.pem
+++ b/jstests/libs/ocsp/client_ocsp.pem
@@ -1,52 +1,52 @@
-----BEGIN CERTIFICATE-----
-MIID+jCCAuKgAwIBAgIEOLVgbTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIID+jCCAuKgAwIBAgIENMutCTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjAwMzIzMjIxMzA5WhcNNDAwMzI1MjIxMzA5WjBiMRAwDgYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjBiMRAwDgYD
VQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxEjAQBgNVBAMMCWxvY2FsaG9z
dDELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAk5ZMQ8wDQYDVQQHDAZPQ1NQLTIwggEi
-MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC2tyliJxuteG414D5JycF3DPwC
-RkMsnOEmSFzmhfmLjQaerHw4G+FvK45pHQzl7ae8HWu9iwi0SMsyp3CelXHJDod3
-nR63q4jvuhgU/sY2iycPUZohKqKBmhmIzlvzIUGbs+UgQA/dLVWcDKIduNd7hYbx
-0egOVAgbA7WiWWxrgQ08B3i6ZQ9RJf8SmDljwNgfBxlOJujUrHV5R3RZgVhlug80
-MjrIxzBPaMu3Dnb1qqTovXQTulMmHcsDiArgXD/wDzxaFvYUFl/Yt0liFf6VZ4yN
-ie9kHW5YKYFSdUvE4++Zvj3fpi+vgoR+ljSY/gk6adIqpBdrNmM9BBa0/tclAgMB
+MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDLCW7KuORvLi/8ZPwbAE3/skF9
+JqAMfShWEPVpDmlyabiR9B+DkKps0e+tF/T82ZPzKyLzCQJoZCtxFLxlvEx2OnOW
+5v89ZMDackJf5UmGP/oeZYWsCAHmu86x6sXjrmTfXtO6e7pf+GIyeujVrxb0fTZs
+6TYKVLlpr5GFWslsaLaEUV8cDTQQj0WvlYX3rgKeQ1jd3B6qn9X1CU3W5Grjg/D8
+oRjygSiTEJE22tJ/IlVDulGTgAZBXewmO5TZsHC7+EJfG2HdmQJsgjNJm81W5GAq
+PEmsHlcZ/jlKa4fMLw71a1UEFvFaTA1QWr+4StVTU1sk7qdzjoCTkkvVjXohAgMB
AAGjgaUwgaIwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwEwYDVR0lBAwwCgYIKwYB
-BQUHAwIwHQYDVR0OBBYEFOpCnkxAZjTauzQHHdtvraRNqzG7MDgGCCsGAQUFBwEB
+BQUHAwIwHQYDVR0OBBYEFAzQKqv6kSKcIz85diU9ncsO9yzRMDgGCCsGAQUFBwEB
BCwwKjAoBggrBgEFBQcwAYYcaHR0cDovL2xvY2FsaG9zdDo4MTAwL3N0YXR1czAa
-BgNVHREEEzARgglsb2NhbGhvc3SHBH8AAAEwDQYJKoZIhvcNAQELBQADggEBAEKs
-BwpU72cNtRSfnWHXfZAMT0KQ3lKoUmn32J2v0aPJwqIiFKFcqZamk5H0hflgdHG3
-PDzliSrDnoDNTif0M/f1PTXhi8/lRkpQhBdINExW45L/735qBrngLxyZABcqcDyq
-IYNV/LXySRGRW5ui/BdZLYkjl8UgF5nXtP2/hTyruw1mI2rRKgvmSPKxj2ItOeeU
-WZlmnR4eQTqW4AViuqLjshLwnl8+l0zIxEF/d+lGZoyby+tzbBWbTcFZdVKRzSPS
-U674+MI/DuyNJnnEWYg3LZrno/1/cQ+UJvzZahbVaVSxvMGgLHtNilkrFxHa5R+q
-1bepfbktB+c5a6p8TlU=
+BgNVHREEEzARgglsb2NhbGhvc3SHBH8AAAEwDQYJKoZIhvcNAQELBQADggEBAAbl
+SGWOBNAd7R3aGyPQiqqOnIUkYO/ugcleM9DZMoyuL9v/ourpSwY1CkRFHhXO2iDp
+wjIKNJVVdWs88Iju/tQrn1Y8oTMUvzVCFLL91Iaa4odHhx34HlvFBjQ4EPmq0v41
+Cd+hYe42UDPm+fG3t9o7UZ51G8bkgjzKFSfofSR0TYpEhwIOGya/ccjTPpy4gGAn
+A0uWQxdAniu/lJ16bVapQD2WZGVhfOQpMTg+40uM87IY8dz9+eXq6/s9lvw0imt3
+3G4bgFv7VlCTMX+Zwa6Y8a729/mfORpEfB9DETgvrypvFVGLJmddG67tuFCmEFzx
+pOtpcwwSe3LjQyPx880=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC2tyliJxuteG41
-4D5JycF3DPwCRkMsnOEmSFzmhfmLjQaerHw4G+FvK45pHQzl7ae8HWu9iwi0SMsy
-p3CelXHJDod3nR63q4jvuhgU/sY2iycPUZohKqKBmhmIzlvzIUGbs+UgQA/dLVWc
-DKIduNd7hYbx0egOVAgbA7WiWWxrgQ08B3i6ZQ9RJf8SmDljwNgfBxlOJujUrHV5
-R3RZgVhlug80MjrIxzBPaMu3Dnb1qqTovXQTulMmHcsDiArgXD/wDzxaFvYUFl/Y
-t0liFf6VZ4yNie9kHW5YKYFSdUvE4++Zvj3fpi+vgoR+ljSY/gk6adIqpBdrNmM9
-BBa0/tclAgMBAAECggEAMnqj6kQXt3NAL45GZyhgVL23mgFDab3lzifL0rxM1ysd
-GxVYNEAvpgEIlS27dIKWBriyHWmd/ADocpQj3ww2pW9oKbm01NWFPYXSRWql5EfJ
-gMfwpx0aTGgAifVJHgCgGZ43vRM1zstJjZVH7KI2lh+ryn9NdzfsDVqXAcVm2MQU
-yVTbva/z2rfn9QXjt18HCS0N0eJPbjeQKuoj419CSlKmMzodGwP8L5+rzf98b4s7
-OztI3ugXadxky6/JCtZ9VdMocyq5KTp69AfMTRwD00hsXa6n3qC0u2xgyMHn164o
-MYC/OM6bw70hdhp4uVI2nrXU14TJkN+kWxtH7IZZQQKBgQDo4bgqF3dcyDghBYJU
-nO/dL2V0wk1pczx1Tws1Pqm+o6SzqTL8jIIN6PImJ1CNvScJHT0k14KhVIMiNQ12
-ueFdeNA8DpthAwxFsHDyljuYWGy/109HMLHFCCv2mbyH3ee8POn95MgVWRyPd93I
-mCs4J4ujqWihTTvmNKXPnXWW2QKBgQDI2o4gI8uZyD8vZL/OIu9uBjllceq6gJXx
-tU1CKm91M2E4SDp7C5adRfliNUpyNnRbFqgYWFcp1Lepy47X+vBKx1J7Eq8g2FGr
-yAjNNh34aqxclqDU3KCijV22T2Bx37e92CoBsKP0lOE7XUB0i8vVN63q5siUxnD0
-nAMuEZgLLQKBgA/uGM3wSv7yxzwjB1ZIYfQMYPFKtUboVhNkM80Rm0TqJsMPaOhz
-qBXRgHbxq4X2kWwDLwKNJ2dnw4ycem5LqsndEMl66lAJiFZgCmndsvfp3I6G6Opi
-v1ZOB8vXmljk6gwrUopGkxU6wkRiG660EgjGU7v/Q6P9B4LoyQrZp4iJAoGAO3yP
-b3Fqkac/H3hFXnX2V628PhFZJdeDkUzTDu+mhx2qg5LQzzSFbRsWW0HRRLZgC8JQ
-ErXHSvpXUxCYw9rsZBlYkl7cQ2wN9ESQZsbKZZKibeGmzKRzZvFbee1UcSWDM9Tb
-zBhW1s9pTb22o03sFsAg4FttuLJ1Ld0vC+vmDhkCgYEAvjX30SLWOYR9urCmlxQL
-FS53A6mfIc/Yh90Ihcrd9GlvrXcB8ROs9v2sN1reGikd9mIPBruPgmo0PYjXy+jr
-gv67hUCO4ZSXfylsRrbKDsLazbvQiTwO8+HXUivWg797sAWyKZiw6y388ivQ0Mxd
-YXRWT7gVqMxQGylZice+ZD0=
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDLCW7KuORvLi/8
+ZPwbAE3/skF9JqAMfShWEPVpDmlyabiR9B+DkKps0e+tF/T82ZPzKyLzCQJoZCtx
+FLxlvEx2OnOW5v89ZMDackJf5UmGP/oeZYWsCAHmu86x6sXjrmTfXtO6e7pf+GIy
+eujVrxb0fTZs6TYKVLlpr5GFWslsaLaEUV8cDTQQj0WvlYX3rgKeQ1jd3B6qn9X1
+CU3W5Grjg/D8oRjygSiTEJE22tJ/IlVDulGTgAZBXewmO5TZsHC7+EJfG2HdmQJs
+gjNJm81W5GAqPEmsHlcZ/jlKa4fMLw71a1UEFvFaTA1QWr+4StVTU1sk7qdzjoCT
+kkvVjXohAgMBAAECggEBAKWy/A1L2Xn2+siD7c9nb0CHTLUDicjHd9zNmEr1rQ7n
+wu6yiemIbd3Dc1QTYifctcbVZH9t0d46Kc3uu1ZX1xsB1wXHXXTQPifI6exzJo7+
+tXSLLA1at5qDmUtQK9IFqGM3c5oUkeTyw8koz85cR2KesYUuyqChxnO/CgcIMaxb
+UKD+4OUoqoaWHv4XIKg5mjuchHuQRXqWhNihSNBte8UV5AR+earQRUtRlo2VLYrW
+5Ra0GPRZD/561gvNCEPKAZO0OFU7UDGbH5hFPaKe9l/5nlQiZ9yX/aovkNPcBkOI
++EuwvvmQQWxkPFj27SZqpJADqR1vL4/blCBJ0lQMwPECgYEA6fmLewEBkYV4B1Zn
+ubdpliVHwfLM0zCuzBHNrnHpRaTHXHF+3BWfhT+etOQJu4tviOERIX8/rhW6lti+
+DGttAIV+PG2Z/h58qdRYyps96HTwwGFZD7eUA71zdOaTdcOug5+IZ3yyio5ep7SB
+e6uwSaCIQWdf3vbrrvFDC1fdF00CgYEA3iZUBfvIaV+c6QZyEnX9DAG2QhuYS6FS
+7/WEKvUVWtSsASZL6XzBs+OKINSMXvGl095SNhCTSATCTazIPkzLs0WAiY1z0+gH
+LgDSW/vGMIM9FsfCYJ6jxNJuAXPl9b9tXbQlA97JJ7RALcKfNg6WFIEubo4IQcYT
+40g1+hHHjCUCgYEAkMaAsBPnTIwxwRiOBjSfePCIflImu2ccQdmiU5bYqOdVFLaF
+sNkQY/sB0RxpiUq2MRRS7U83sBhx5HUo47Z1NCVl/y4yYzOqH8vtRTDaFcSGVAPo
+f/kv9UB8+JDUHcJ/caJ9XMukDmgZ2duvYz7RTj2vEglNIUHYg991hMdRXuECgYEA
+2RbDjYVbd/4DrISr/PZobs9NeJTW4zGnhu96VTBjyfuCiy0NigJsmIqHdUXAVxf2
+YXElDchs5TghWR68IIWTmoEU91bQFgjs2zvaViFYsBfQHu7fOOROTg0Fi03jL5/+
+FE/yzDFuiepPvWgvhfgDGc6TvV33G6+hx73NYa72PjECgYAzNDqiUGcKkbPi9iCi
+FcfoPlu9QrSYFo/+/1towWg+xD/AydzR9yFDtlh0D7XhU5hvM38BuNH3oWRXLCSj
+Ul4gUBPQ9aLXUbP0qxPvaIGYofqLqFbzFgUNmYK5J8o3g394DDgwBwEr3HyUh5n5
+rriGBbcgH2n6JyCIogymNPowMA==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/client_ocsp.pem.digest.sha1 b/jstests/libs/ocsp/client_ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..0a34e970c45
--- /dev/null
+++ b/jstests/libs/ocsp/client_ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+22CB52597C604163DEC4C7CA6075857B65BC0A38 \ No newline at end of file
diff --git a/jstests/libs/ocsp/client_ocsp.pem.digest.sha256 b/jstests/libs/ocsp/client_ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..2647408b974
--- /dev/null
+++ b/jstests/libs/ocsp/client_ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+BF7E7B303E250F8043BCE5DF152A9CE69EA3C654DC2A3F6C6A08358EB62C37ED \ No newline at end of file
diff --git a/jstests/libs/ocsp/intermediate_ca_only_ocsp.crt b/jstests/libs/ocsp/intermediate_ca_only_ocsp.crt
index 618a550c2b4..dd618b0452b 100644
--- a/jstests/libs/ocsp/intermediate_ca_only_ocsp.crt
+++ b/jstests/libs/ocsp/intermediate_ca_only_ocsp.crt
@@ -1,22 +1,22 @@
-----BEGIN CERTIFICATE-----
-MIIDoTCCAomgAwIBAgIDJSA5MA0GCSqGSIb3DQEBCwUAMHQxCzAJBgNVBAYTAlVT
-MREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQMA4G
-A1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMRcwFQYDVQQDDA5LZXJuZWwg
-VGVzdCBDQTAeFw0yMTAzMDkxODAxNDVaFw00MTAzMTExODAxNDVaMH4xCzAJBgNV
-BAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0
-eTEQMA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMSEwHwYDVQQDDBhJ
-bnRlcm1lZGlhdGUgQ0EgZm9yIE9DU1AwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
-ggEKAoIBAQDejgY18iv98kFHs+qDEpUEYmzlgKaH6Z9XiURRLihURcjkwaQsVQmN
-9tUbSzr2rsKjjXhKMlFFxxb3dhiHKy/RvFwy0Jv2gHcUGWZmboTvAPpm8K2aMNep
-Tm570UyXWMGCxhw8vtO/fkT/UzJGqk4UVnv+uBepl3Lx+7Qrc4XvgLPkcx6NTNIu
-8+ex950c54fUrwHHuE8ZmqGYSZhozH8+lK0RiiC0VvbLfQhLZwSi2JeilsutBmNv
-9vUtnqz7Ij64risEqDTK9mdieEX1QwooZwDb7KZC26kh4AsnLR9U13a929K+O5R0
-5hUrWFR45EOgTWOkS4Pwi1he433fRDnvAgMBAAGjMjAwMA8GA1UdEwEB/wQFMAMB
-Af8wHQYDVR0OBBYEFG4AQc6znEV5v5AOokM27F+YNpEPMA0GCSqGSIb3DQEBCwUA
-A4IBAQA6fK8F68vqZ8WjX+G3lubpui/k1ke9ueozYnjxmwdwbWgJ9kH02h9f4uND
-4i8ZElpzaraRXHqrWf1PQvwAXwscDkQic2QaEgumei2j63UkwWd9DRWmrlVXKSzW
-LCwUtHU9NHZRKjMR3FjSWih5w1l3TWf24422awVkW3pVKiC3xchMCsUrK+mqzivj
-hZZ3sgdmCLO2/WYpiBPPsAupniRj5zZk3Kqrw4GmPb8IfFA7HYUEYuhmID9BcnSM
-J8Rfx7ZUvQREih92lALmQbN81x27WvxULhgOVoMMU1UlPqDZzL+eLoo+EuC5k38q
-cLpYeqs+gWeNrh1kzk0GeHmzvE+g
+MIIDojCCAoqgAwIBAgIEJWcflTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ3WhcNMjQwNDMwMjE1OTQ3WjB+MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEhMB8GA1UEAwwY
+SW50ZXJtZWRpYXRlIENBIGZvciBPQ1NQMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEA1GZlPg548GQidASCrRZDXfJm3Li+vIazhm4MGhv6bJ2o+SYHfu5j
+PO51T5l0TGvuoJPnzwq+RlW5RW3/+fCMl0gt+awDDzjKCekn00w8KSk3rqGDYQk7
+cSVuoPJVyJJ/vo86bwVMB9TYyxPi1lEBeeyVaa2FvbzS+SZq2c9c087WVYRmj/81
+yGztUAwj2Zoru1ECuhHE8YMeyDqmi52XByUmI7Ywrzs4xc3pQ+AI62IsiUFbCNqw
+EPHhEcCgEwaUlWihvUfO5lJSKeUyn0WlQ8MmnUTnCCMYDDJKPublsuu7Ngl6xmEM
+H3u9iSbV6qWQwsC4PJcw5PO30yT5QkFe1wIDAQABozIwMDAPBgNVHRMBAf8EBTAD
+AQH/MB0GA1UdDgQWBBRuXVvr6fP/Pyp2uqsHQ7KTvYGuNTANBgkqhkiG9w0BAQsF
+AAOCAQEAaO2/QF2KG9LM1yKWe9ZbrvZa2dWgFHebY6HckDgE5rc5+nYug9zSEUi+
+QYKZfEAYbMZ2a3ymybsNsGpVPBYv6p2kaa6V9hrJb/awMI9dFg+o/U4v3dLQZmci
+6cSI/c2T9mqJ4tVUPZE5tyVXZBZrQEUOJwcrcH19qWtS2n5Zk4BjkFAysC/eICMw
+yD4kGI/djEkaABkCC7Xb75ySh5BJgC8ZZ/5gmKYiFZnV8d6ktXh7nPcqfsyuTuei
+NBTSZpdTJ5WWNpybnK7/QUeedk1imNkTqK1TOJ4yjxIlhpGOX0f9q9InCrdYZb6P
+SaRjfoPnX4zSLP5nv3QSDMcJjD/IrA==
-----END CERTIFICATE-----
diff --git a/jstests/libs/ocsp/intermediate_ca_only_ocsp.key b/jstests/libs/ocsp/intermediate_ca_only_ocsp.key
index d92a0c06b3c..31d77afb2d2 100644
--- a/jstests/libs/ocsp/intermediate_ca_only_ocsp.key
+++ b/jstests/libs/ocsp/intermediate_ca_only_ocsp.key
@@ -1,28 +1,28 @@
-----BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDejgY18iv98kFH
-s+qDEpUEYmzlgKaH6Z9XiURRLihURcjkwaQsVQmN9tUbSzr2rsKjjXhKMlFFxxb3
-dhiHKy/RvFwy0Jv2gHcUGWZmboTvAPpm8K2aMNepTm570UyXWMGCxhw8vtO/fkT/
-UzJGqk4UVnv+uBepl3Lx+7Qrc4XvgLPkcx6NTNIu8+ex950c54fUrwHHuE8ZmqGY
-SZhozH8+lK0RiiC0VvbLfQhLZwSi2JeilsutBmNv9vUtnqz7Ij64risEqDTK9mdi
-eEX1QwooZwDb7KZC26kh4AsnLR9U13a929K+O5R05hUrWFR45EOgTWOkS4Pwi1he
-433fRDnvAgMBAAECggEAeWwrX0tdTRPbIe+7Rv/gZZ/9oclrEkQYN34g09nHDxNz
-47ryg21x5Q6Cfn2xEd2PPAR3WKPTS6qvkRvRjg217UxDUUYXkYnNbh3djI1H4c46
-z+cIEFQNlcXA6bTrgLdf/KVxyoKirJuLsXIGwB8ysk3tIK/32QNUJ0oYpoxEysH8
-5QUukx5U/hkJt+RIuiFMqy5H/Ty7W9/5ShSI6wQswx0PSmOeHAIhx0Es99x6XN2n
-cKJ9ACxTfG9HzTy+PvNBoa+zWWFQVAKH7qT5nqGC2j8NRiBNydeIBTD2xYjayz51
-G2gWrCBsfqGWPLxFjvim+jO7fkhPQfIuG2U9OvlyYQKBgQDyy+i1JjjC/6ygyEeW
-jCH8CdcenCw21i+VRx6AssOJdLKCD7FUih6CBHDx/OY9RamXLow5jjK/Wz450EkW
-cJX52haJ0SasDpxWsteVczZ4lcPD8mwpm1zL/+v0SK36hXnPDQNi8kCupITPvrY9
-oJPXuy4AqsNtn33r3kVKihWRwwKBgQDqqFHpKDXSyGxALRaiFY3aSYTmGD1c9n/y
-J8XGz3VNJCrzMdMCS2HazoeEh20WkZA6OsAZTdAmRC88jKQtCfqNSiYvWu/AbaHy
-x2t6J6S28qYpme7GTBm6TZAcx4f9obxU4icI3klc5lwGLH5U96hT7sh03AG0PfgH
-zEkjuSPoZQKBgQDGot5avc94cVZZICG5YCI5og9V4q0lm+vH9CxXXGkvHsMgNxh8
-MpetBVcmEyKGhGSv5Awi1lxcQ5jQEcCJ1EhO5gbEb9F0uGtdXumTQnQRCW3k9INb
-MtkjqNfwvjlgGS1DoMDhhZI3jy99Cujr2GC8AU4si4hhOjf57ZnA1uG4owKBgQCj
-P1AkzZWMO2SbzQJW5nnWJ5luXeSqvM5MEAFWi1NGxGeg4sOyb/D2wQGkYHay4bed
-2utzbx/kz0CxdgJtVujYzIH+JdxvWZX2CWgrBlNf9zVD8dQcXirz4ivk6acg+xjD
-UMXpNIODPrs8jE2jHNwc8BzCt5/z3byk6Cjl0lI5xQKBgQDvpObhRYwho2J0H9pk
-L3c0GohnYcVZjdXMtPYE+ZzrJi3vHqmrAplGVTO8qZT/Vy8c09KocgwSjBGXMGJa
-6PVQULt2ox/c4XinKuB942Fl2YgA/nynh32BHFmAHUYaAMOE/2qbnVe506vBYqug
-bDx68eBArePbMhiDlOw8f2IRbQ==
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDUZmU+DnjwZCJ0
+BIKtFkNd8mbcuL68hrOGbgwaG/psnaj5Jgd+7mM87nVPmXRMa+6gk+fPCr5GVblF
+bf/58IyXSC35rAMPOMoJ6SfTTDwpKTeuoYNhCTtxJW6g8lXIkn++jzpvBUwH1NjL
+E+LWUQF57JVprYW9vNL5JmrZz1zTztZVhGaP/zXIbO1QDCPZmiu7UQK6EcTxgx7I
+OqaLnZcHJSYjtjCvOzjFzelD4AjrYiyJQVsI2rAQ8eERwKATBpSVaKG9R87mUlIp
+5TKfRaVDwyadROcIIxgMMko+5uWy67s2CXrGYQwfe72JJtXqpZDCwLg8lzDk87fT
+JPlCQV7XAgMBAAECggEAS9I9w/hgndfxIJ9XkrhG1iupIpPkquIfBhcUxOFF9S4W
+2tIDjQFGdcLeJ8ss4/cHmVUTRCqen/cMC0foP+3qEjsXBnCsKuvn27/akqg9Nahc
+Ez/e6W3lRU/KfTPlAZOifIEep/EpIgaOWXhA2qbSMxcMg0wJWSEl4wEe1aAbkBQ4
+lZ+i/sj/vhceaDDBHTrsC3TcCm41eREHBFnRbr/ga3REAmKah0s48aeVp6cgDbaB
+4VLoT2KGhXlHFTQsUysM6W7xm35RRarbtiJfqH83ZQTepWNsrJ6du/eY/UfKnsfH
+fP/ppGtrktENRsmAesEjz+EwQPpsZLayxFdGZ6O2AQKBgQDtrC9CsfznaWdPtLey
+H02JXS+roPJWXRL6ND1u9qA2rg+/12XsqgIofz7sFU7Xm3334wVqwNIaLqm7tIxM
+8R3LzwPz5SJnNTWbILmckolZ+98r1AHlfwM/6zhj9krWE2vYlu16vI4wpP6taxb8
+c2wscUcMcTjPhfQGbF78VlW7AQKBgQDkx1AIvHLKE0S6Apexjjj3sXgsroo+Kssp
+aRinANuNHDPyLhVoKiVJsTs1soZ44Ls1YmSVRPMVoHQxxIKDnW9oui7aOOwoChhg
+qqt5N7gVF0fxcD5gaut9zY7LdDT70mC6nj2TYCjMxObVDTDkl2kHg77Ct5aQ6i+/
+SX2jjhZR1wKBgQCCTiO/IkxxJ3XP2lnYW5csF54aL+yNcwwDh36jBq5CLF5QJK0p
++u+h+lmqH+iRBxwiOyJuK/dFCY5fbhZ53LwkUIRvRJH/GcohGekJscGCRzhNFDhR
+9bf3ZGQPUiongpBfOChNYXFntB45P/xjPnjxSM3WQYEPLfbjSqktGbx5AQKBgQCN
+wzvCzhNLSHlT0ftxmLGQOrY+6cDcGORfOrJ9+bgSTqGZthipvUPx0BLiiUdua8NV
+pyywmlMO2ahmlmBRciLxAD28F32uqeLFM7yhlndJCm4YG/drA5X9FH0hcVbLnGc3
+/IonYnSlvnVTG6NqYrBAadCxE9YG4jbID5/80zTdbQKBgB/30lNgWCXNKs/RVsMU
+npTVDESCwaU19wTlbOeVS3vCFDapJmuv7K7uhi1b67Pt5wnaw3drKNddIOS53XZp
+yfsYjZWml8z46qyA5kK4scQ1LkYPnj4Zf+q9dF9i1mYGT2b65v/dzfrLr7//hcBZ
+23zayhJpJWDJqbUWliaDmY98
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem b/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem
index daa003806ce..98632f07b8e 100644
--- a/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem
+++ b/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem
@@ -1,50 +1,50 @@
-----BEGIN CERTIFICATE-----
-MIIDoTCCAomgAwIBAgIDJSA5MA0GCSqGSIb3DQEBCwUAMHQxCzAJBgNVBAYTAlVT
-MREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQMA4G
-A1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMRcwFQYDVQQDDA5LZXJuZWwg
-VGVzdCBDQTAeFw0yMTAzMDkxODAxNDVaFw00MTAzMTExODAxNDVaMH4xCzAJBgNV
-BAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0
-eTEQMA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMSEwHwYDVQQDDBhJ
-bnRlcm1lZGlhdGUgQ0EgZm9yIE9DU1AwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
-ggEKAoIBAQDejgY18iv98kFHs+qDEpUEYmzlgKaH6Z9XiURRLihURcjkwaQsVQmN
-9tUbSzr2rsKjjXhKMlFFxxb3dhiHKy/RvFwy0Jv2gHcUGWZmboTvAPpm8K2aMNep
-Tm570UyXWMGCxhw8vtO/fkT/UzJGqk4UVnv+uBepl3Lx+7Qrc4XvgLPkcx6NTNIu
-8+ex950c54fUrwHHuE8ZmqGYSZhozH8+lK0RiiC0VvbLfQhLZwSi2JeilsutBmNv
-9vUtnqz7Ij64risEqDTK9mdieEX1QwooZwDb7KZC26kh4AsnLR9U13a929K+O5R0
-5hUrWFR45EOgTWOkS4Pwi1he433fRDnvAgMBAAGjMjAwMA8GA1UdEwEB/wQFMAMB
-Af8wHQYDVR0OBBYEFG4AQc6znEV5v5AOokM27F+YNpEPMA0GCSqGSIb3DQEBCwUA
-A4IBAQA6fK8F68vqZ8WjX+G3lubpui/k1ke9ueozYnjxmwdwbWgJ9kH02h9f4uND
-4i8ZElpzaraRXHqrWf1PQvwAXwscDkQic2QaEgumei2j63UkwWd9DRWmrlVXKSzW
-LCwUtHU9NHZRKjMR3FjSWih5w1l3TWf24422awVkW3pVKiC3xchMCsUrK+mqzivj
-hZZ3sgdmCLO2/WYpiBPPsAupniRj5zZk3Kqrw4GmPb8IfFA7HYUEYuhmID9BcnSM
-J8Rfx7ZUvQREih92lALmQbN81x27WvxULhgOVoMMU1UlPqDZzL+eLoo+EuC5k38q
-cLpYeqs+gWeNrh1kzk0GeHmzvE+g
+MIIDojCCAoqgAwIBAgIEJWcflTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ3WhcNMjQwNDMwMjE1OTQ3WjB+MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEhMB8GA1UEAwwY
+SW50ZXJtZWRpYXRlIENBIGZvciBPQ1NQMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEA1GZlPg548GQidASCrRZDXfJm3Li+vIazhm4MGhv6bJ2o+SYHfu5j
+PO51T5l0TGvuoJPnzwq+RlW5RW3/+fCMl0gt+awDDzjKCekn00w8KSk3rqGDYQk7
+cSVuoPJVyJJ/vo86bwVMB9TYyxPi1lEBeeyVaa2FvbzS+SZq2c9c087WVYRmj/81
+yGztUAwj2Zoru1ECuhHE8YMeyDqmi52XByUmI7Ywrzs4xc3pQ+AI62IsiUFbCNqw
+EPHhEcCgEwaUlWihvUfO5lJSKeUyn0WlQ8MmnUTnCCMYDDJKPublsuu7Ngl6xmEM
+H3u9iSbV6qWQwsC4PJcw5PO30yT5QkFe1wIDAQABozIwMDAPBgNVHRMBAf8EBTAD
+AQH/MB0GA1UdDgQWBBRuXVvr6fP/Pyp2uqsHQ7KTvYGuNTANBgkqhkiG9w0BAQsF
+AAOCAQEAaO2/QF2KG9LM1yKWe9ZbrvZa2dWgFHebY6HckDgE5rc5+nYug9zSEUi+
+QYKZfEAYbMZ2a3ymybsNsGpVPBYv6p2kaa6V9hrJb/awMI9dFg+o/U4v3dLQZmci
+6cSI/c2T9mqJ4tVUPZE5tyVXZBZrQEUOJwcrcH19qWtS2n5Zk4BjkFAysC/eICMw
+yD4kGI/djEkaABkCC7Xb75ySh5BJgC8ZZ/5gmKYiFZnV8d6ktXh7nPcqfsyuTuei
+NBTSZpdTJ5WWNpybnK7/QUeedk1imNkTqK1TOJ4yjxIlhpGOX0f9q9InCrdYZb6P
+SaRjfoPnX4zSLP5nv3QSDMcJjD/IrA==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDejgY18iv98kFH
-s+qDEpUEYmzlgKaH6Z9XiURRLihURcjkwaQsVQmN9tUbSzr2rsKjjXhKMlFFxxb3
-dhiHKy/RvFwy0Jv2gHcUGWZmboTvAPpm8K2aMNepTm570UyXWMGCxhw8vtO/fkT/
-UzJGqk4UVnv+uBepl3Lx+7Qrc4XvgLPkcx6NTNIu8+ex950c54fUrwHHuE8ZmqGY
-SZhozH8+lK0RiiC0VvbLfQhLZwSi2JeilsutBmNv9vUtnqz7Ij64risEqDTK9mdi
-eEX1QwooZwDb7KZC26kh4AsnLR9U13a929K+O5R05hUrWFR45EOgTWOkS4Pwi1he
-433fRDnvAgMBAAECggEAeWwrX0tdTRPbIe+7Rv/gZZ/9oclrEkQYN34g09nHDxNz
-47ryg21x5Q6Cfn2xEd2PPAR3WKPTS6qvkRvRjg217UxDUUYXkYnNbh3djI1H4c46
-z+cIEFQNlcXA6bTrgLdf/KVxyoKirJuLsXIGwB8ysk3tIK/32QNUJ0oYpoxEysH8
-5QUukx5U/hkJt+RIuiFMqy5H/Ty7W9/5ShSI6wQswx0PSmOeHAIhx0Es99x6XN2n
-cKJ9ACxTfG9HzTy+PvNBoa+zWWFQVAKH7qT5nqGC2j8NRiBNydeIBTD2xYjayz51
-G2gWrCBsfqGWPLxFjvim+jO7fkhPQfIuG2U9OvlyYQKBgQDyy+i1JjjC/6ygyEeW
-jCH8CdcenCw21i+VRx6AssOJdLKCD7FUih6CBHDx/OY9RamXLow5jjK/Wz450EkW
-cJX52haJ0SasDpxWsteVczZ4lcPD8mwpm1zL/+v0SK36hXnPDQNi8kCupITPvrY9
-oJPXuy4AqsNtn33r3kVKihWRwwKBgQDqqFHpKDXSyGxALRaiFY3aSYTmGD1c9n/y
-J8XGz3VNJCrzMdMCS2HazoeEh20WkZA6OsAZTdAmRC88jKQtCfqNSiYvWu/AbaHy
-x2t6J6S28qYpme7GTBm6TZAcx4f9obxU4icI3klc5lwGLH5U96hT7sh03AG0PfgH
-zEkjuSPoZQKBgQDGot5avc94cVZZICG5YCI5og9V4q0lm+vH9CxXXGkvHsMgNxh8
-MpetBVcmEyKGhGSv5Awi1lxcQ5jQEcCJ1EhO5gbEb9F0uGtdXumTQnQRCW3k9INb
-MtkjqNfwvjlgGS1DoMDhhZI3jy99Cujr2GC8AU4si4hhOjf57ZnA1uG4owKBgQCj
-P1AkzZWMO2SbzQJW5nnWJ5luXeSqvM5MEAFWi1NGxGeg4sOyb/D2wQGkYHay4bed
-2utzbx/kz0CxdgJtVujYzIH+JdxvWZX2CWgrBlNf9zVD8dQcXirz4ivk6acg+xjD
-UMXpNIODPrs8jE2jHNwc8BzCt5/z3byk6Cjl0lI5xQKBgQDvpObhRYwho2J0H9pk
-L3c0GohnYcVZjdXMtPYE+ZzrJi3vHqmrAplGVTO8qZT/Vy8c09KocgwSjBGXMGJa
-6PVQULt2ox/c4XinKuB942Fl2YgA/nynh32BHFmAHUYaAMOE/2qbnVe506vBYqug
-bDx68eBArePbMhiDlOw8f2IRbQ==
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDUZmU+DnjwZCJ0
+BIKtFkNd8mbcuL68hrOGbgwaG/psnaj5Jgd+7mM87nVPmXRMa+6gk+fPCr5GVblF
+bf/58IyXSC35rAMPOMoJ6SfTTDwpKTeuoYNhCTtxJW6g8lXIkn++jzpvBUwH1NjL
+E+LWUQF57JVprYW9vNL5JmrZz1zTztZVhGaP/zXIbO1QDCPZmiu7UQK6EcTxgx7I
+OqaLnZcHJSYjtjCvOzjFzelD4AjrYiyJQVsI2rAQ8eERwKATBpSVaKG9R87mUlIp
+5TKfRaVDwyadROcIIxgMMko+5uWy67s2CXrGYQwfe72JJtXqpZDCwLg8lzDk87fT
+JPlCQV7XAgMBAAECggEAS9I9w/hgndfxIJ9XkrhG1iupIpPkquIfBhcUxOFF9S4W
+2tIDjQFGdcLeJ8ss4/cHmVUTRCqen/cMC0foP+3qEjsXBnCsKuvn27/akqg9Nahc
+Ez/e6W3lRU/KfTPlAZOifIEep/EpIgaOWXhA2qbSMxcMg0wJWSEl4wEe1aAbkBQ4
+lZ+i/sj/vhceaDDBHTrsC3TcCm41eREHBFnRbr/ga3REAmKah0s48aeVp6cgDbaB
+4VLoT2KGhXlHFTQsUysM6W7xm35RRarbtiJfqH83ZQTepWNsrJ6du/eY/UfKnsfH
+fP/ppGtrktENRsmAesEjz+EwQPpsZLayxFdGZ6O2AQKBgQDtrC9CsfznaWdPtLey
+H02JXS+roPJWXRL6ND1u9qA2rg+/12XsqgIofz7sFU7Xm3334wVqwNIaLqm7tIxM
+8R3LzwPz5SJnNTWbILmckolZ+98r1AHlfwM/6zhj9krWE2vYlu16vI4wpP6taxb8
+c2wscUcMcTjPhfQGbF78VlW7AQKBgQDkx1AIvHLKE0S6Apexjjj3sXgsroo+Kssp
+aRinANuNHDPyLhVoKiVJsTs1soZ44Ls1YmSVRPMVoHQxxIKDnW9oui7aOOwoChhg
+qqt5N7gVF0fxcD5gaut9zY7LdDT70mC6nj2TYCjMxObVDTDkl2kHg77Ct5aQ6i+/
+SX2jjhZR1wKBgQCCTiO/IkxxJ3XP2lnYW5csF54aL+yNcwwDh36jBq5CLF5QJK0p
++u+h+lmqH+iRBxwiOyJuK/dFCY5fbhZ53LwkUIRvRJH/GcohGekJscGCRzhNFDhR
+9bf3ZGQPUiongpBfOChNYXFntB45P/xjPnjxSM3WQYEPLfbjSqktGbx5AQKBgQCN
+wzvCzhNLSHlT0ftxmLGQOrY+6cDcGORfOrJ9+bgSTqGZthipvUPx0BLiiUdua8NV
+pyywmlMO2ahmlmBRciLxAD28F32uqeLFM7yhlndJCm4YG/drA5X9FH0hcVbLnGc3
+/IonYnSlvnVTG6NqYrBAadCxE9YG4jbID5/80zTdbQKBgB/30lNgWCXNKs/RVsMU
+npTVDESCwaU19wTlbOeVS3vCFDapJmuv7K7uhi1b67Pt5wnaw3drKNddIOS53XZp
+yfsYjZWml8z46qyA5kK4scQ1LkYPnj4Zf+q9dF9i1mYGT2b65v/dzfrLr7//hcBZ
+23zayhJpJWDJqbUWliaDmY98
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem.digest.sha1 b/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..7f99d4fec95
--- /dev/null
+++ b/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+D8A8CAD72FF7EC2620AD14DC5E405AAD8D590A33 \ No newline at end of file
diff --git a/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem.digest.sha256 b/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..58154edba3f
--- /dev/null
+++ b/jstests/libs/ocsp/intermediate_ca_only_ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+216F69DCDF851F2A2FB2FF02E6979B74BFA1A6BE1506B7F9510397CF69CE5CDB \ No newline at end of file
diff --git a/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem b/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem
index 6a5bb185080..676e23c7215 100644
--- a/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem
+++ b/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem
@@ -1,44 +1,44 @@
-----BEGIN CERTIFICATE-----
-MIIDoTCCAomgAwIBAgIDJSA5MA0GCSqGSIb3DQEBCwUAMHQxCzAJBgNVBAYTAlVT
-MREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQMA4G
-A1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMRcwFQYDVQQDDA5LZXJuZWwg
-VGVzdCBDQTAeFw0yMTAzMDkxODAxNDVaFw00MTAzMTExODAxNDVaMH4xCzAJBgNV
-BAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0
-eTEQMA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMSEwHwYDVQQDDBhJ
-bnRlcm1lZGlhdGUgQ0EgZm9yIE9DU1AwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
-ggEKAoIBAQDejgY18iv98kFHs+qDEpUEYmzlgKaH6Z9XiURRLihURcjkwaQsVQmN
-9tUbSzr2rsKjjXhKMlFFxxb3dhiHKy/RvFwy0Jv2gHcUGWZmboTvAPpm8K2aMNep
-Tm570UyXWMGCxhw8vtO/fkT/UzJGqk4UVnv+uBepl3Lx+7Qrc4XvgLPkcx6NTNIu
-8+ex950c54fUrwHHuE8ZmqGYSZhozH8+lK0RiiC0VvbLfQhLZwSi2JeilsutBmNv
-9vUtnqz7Ij64risEqDTK9mdieEX1QwooZwDb7KZC26kh4AsnLR9U13a929K+O5R0
-5hUrWFR45EOgTWOkS4Pwi1he433fRDnvAgMBAAGjMjAwMA8GA1UdEwEB/wQFMAMB
-Af8wHQYDVR0OBBYEFG4AQc6znEV5v5AOokM27F+YNpEPMA0GCSqGSIb3DQEBCwUA
-A4IBAQA6fK8F68vqZ8WjX+G3lubpui/k1ke9ueozYnjxmwdwbWgJ9kH02h9f4uND
-4i8ZElpzaraRXHqrWf1PQvwAXwscDkQic2QaEgumei2j63UkwWd9DRWmrlVXKSzW
-LCwUtHU9NHZRKjMR3FjSWih5w1l3TWf24422awVkW3pVKiC3xchMCsUrK+mqzivj
-hZZ3sgdmCLO2/WYpiBPPsAupniRj5zZk3Kqrw4GmPb8IfFA7HYUEYuhmID9BcnSM
-J8Rfx7ZUvQREih92lALmQbN81x27WvxULhgOVoMMU1UlPqDZzL+eLoo+EuC5k38q
-cLpYeqs+gWeNrh1kzk0GeHmzvE+g
+MIIDojCCAoqgAwIBAgIEJWcflTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ3WhcNMjQwNDMwMjE1OTQ3WjB+MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEhMB8GA1UEAwwY
+SW50ZXJtZWRpYXRlIENBIGZvciBPQ1NQMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEA1GZlPg548GQidASCrRZDXfJm3Li+vIazhm4MGhv6bJ2o+SYHfu5j
+PO51T5l0TGvuoJPnzwq+RlW5RW3/+fCMl0gt+awDDzjKCekn00w8KSk3rqGDYQk7
+cSVuoPJVyJJ/vo86bwVMB9TYyxPi1lEBeeyVaa2FvbzS+SZq2c9c087WVYRmj/81
+yGztUAwj2Zoru1ECuhHE8YMeyDqmi52XByUmI7Ywrzs4xc3pQ+AI62IsiUFbCNqw
+EPHhEcCgEwaUlWihvUfO5lJSKeUyn0WlQ8MmnUTnCCMYDDJKPublsuu7Ngl6xmEM
+H3u9iSbV6qWQwsC4PJcw5PO30yT5QkFe1wIDAQABozIwMDAPBgNVHRMBAf8EBTAD
+AQH/MB0GA1UdDgQWBBRuXVvr6fP/Pyp2uqsHQ7KTvYGuNTANBgkqhkiG9w0BAQsF
+AAOCAQEAaO2/QF2KG9LM1yKWe9ZbrvZa2dWgFHebY6HckDgE5rc5+nYug9zSEUi+
+QYKZfEAYbMZ2a3ymybsNsGpVPBYv6p2kaa6V9hrJb/awMI9dFg+o/U4v3dLQZmci
+6cSI/c2T9mqJ4tVUPZE5tyVXZBZrQEUOJwcrcH19qWtS2n5Zk4BjkFAysC/eICMw
+yD4kGI/djEkaABkCC7Xb75ySh5BJgC8ZZ/5gmKYiFZnV8d6ktXh7nPcqfsyuTuei
+NBTSZpdTJ5WWNpybnK7/QUeedk1imNkTqK1TOJ4yjxIlhpGOX0f9q9InCrdYZb6P
+SaRjfoPnX4zSLP5nv3QSDMcJjD/IrA==
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
-MIIDeTCCAmGgAwIBAgIEBdhiWzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIIDeTCCAmGgAwIBAgIEaP5C8TANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjAwMzIzMjIxMzA5WhcNNDAwMzI1MjIxMzA5WjB0MQswCQYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjB0MQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwO
-S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCg
-H42hLFFnWFETIDs4Q3rjzJLB4mxqn7BiFDbhzivKGN8SMrIaoyg8CkNJWpJVYEBN
-BjaQHMzivBiQEjDbx2bWz7+rMjont9zJbNmMMuEZcqQw42SBlQ/xXBnIbvICGoXy
-7EkEH/kYzX7NjUhAHOJUdfyTW0okChPxOQr8CI07HVYmeelBZh6FPnzdQ5mgsbmk
-vsdesE1gvcfFtm/7Q6+GXp+1GDVGRUmPmHTYPIkjouJWQM++WU2KofSe5k9Rn1Oz
-ZE3jJAaB9gGA83/xcLkVLBe4dyE5foVbbXL7t37yB8R06/7ffV62B7sn0M5X/rfA
-UY5sJ6WOWdQz8k+WjXlXAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
-hvcNAQELBQADggEBAAsY/vktUSwXC1MCC8cYtcrlI0EgGcvkcRxEjRv7t5YVZii6
-eqKSfaX5HDxKl8dH7Z95Z3sDqr7iwPFtzmzQHEwvSSKbiqeS9Be0yf6mJv10LC5d
-M9qoMvbp90ob3Jhib5IGzeijcQFfzbZa+MGnWiCGX04U/hUrayMdmna83exKbeNW
-S0LT1F82rG2QklFOFSZSInXsBiR4olRWqXrYpNjP4B5gueQ2+XUlMZdphvkOksCo
-/UBdqKotBFgyYXdMygl4hscxo+O4FRpX6RKVyobJXKax+mzbc9YUKTFtKu6KlZls
-jvqjtuXgmZvXOgduG5D8Sqoqp/q1nYzYpcgEss4=
+S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDS
+ASa6t/0P3MHRRhLP2W25y2NJ9eBl6YMJj3oY058ixhHOhPLvdnWPcLHOh36BiNu8
+5+lX8w27vAz84qzloYQ44YJO+uvU9WBEoMa707IWTre3PSoYfe4y49fm9AwYkG2R
+qn7674TGn5eNZnSuBVzab7Fy5+zBDAhgCcB+z0MYP3COEyrmzkKY2rPTPu7K7o3r
+5FFGfxgceDzN6lukG12h75F+R64o8lvVBkHV5+1mwlx8SlthPH1HJB6/ZjX1m4gw
+yRlU9JfR00iphro4FYI1SgGKeSP7Fn1E0VRB/YwRAoZFguq62vlMImzh+2folFF4
+1XzEO+BKjUiRfYbRTpWRAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
+hvcNAQELBQADggEBAKRiAji29p93B9cA/9gjE5Zlb39LRtYA5+RBC0WTn8u5ku//
+XGpz3P8aDpO0BFAd/gNiyGRWQ7blHj0Mn02QHqW7T/yyyE0m/fASdXIoJApFDEtK
+n1mUcmVdiiIlQvXo/oi1RTwxckQNqFYm2M/XSrg0HLFVHsTQrdDskbs0SRQZK3qv
+5EluYHu7UvKAAmzepZhtyC1VNrZbP97cJ03ZupUyMo6NHLk0WxFHvYM3U7K/W7ui
+YuFWenPWmESFGHR923lF6HjzvkhHYXKPaYhTnKZJ1kjwhYfcdfSmbizJBBlryzEL
++0KtahO1J5NBwYyVgo+Pkv5OEWwunzrpsY+TLR4=
-----END CERTIFICATE-----
diff --git a/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem.digest.sha1 b/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..7f99d4fec95
--- /dev/null
+++ b/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+D8A8CAD72FF7EC2620AD14DC5E405AAD8D590A33 \ No newline at end of file
diff --git a/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem.digest.sha256 b/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..58154edba3f
--- /dev/null
+++ b/jstests/libs/ocsp/intermediate_ca_with_root_ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+216F69DCDF851F2A2FB2FF02E6979B74BFA1A6BE1506B7F9510397CF69CE5CDB \ No newline at end of file
diff --git a/jstests/libs/ocsp/ocsp_responder.crt b/jstests/libs/ocsp/ocsp_responder.crt
index 96b95e5ec1f..cdc1d6414ee 100644
--- a/jstests/libs/ocsp/ocsp_responder.crt
+++ b/jstests/libs/ocsp/ocsp_responder.crt
@@ -1,21 +1,21 @@
-----BEGIN CERTIFICATE-----
-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
+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
-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
+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
-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
+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
-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
+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
-----END CERTIFICATE-----
diff --git a/jstests/libs/ocsp/ocsp_responder.key b/jstests/libs/ocsp/ocsp_responder.key
index 5070994bb76..07a72b35e82 100644
--- a/jstests/libs/ocsp/ocsp_responder.key
+++ b/jstests/libs/ocsp/ocsp_responder.key
@@ -1,28 +1,28 @@
-----BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDbiJdoDByUfS0u
-mJF8hwsJvV3uxcG6UQ1gL4JR+yP/Frw7emIkKaSagCQTjwvhmiera1QVa5HxofSi
-kQr7gm1qzpjOKlDK3J8CBlAncPYbThde9E6dWZS+GQeTFh+NDo6NNwopBgYIpWkw
-q9cgAJYgYxcVHoY4AXWeoshcd6dSgqY3lr8la+qDgqCbxA02dEPQWW+LDZq2fdiN
-RwbqvVJd1TGgb6lfZB/0pv4LRHqBvRcKjlvieX/ntfsNgja4rqUtbsZnspXnoZeD
-2A5dADsDhBc9oSTxn6ofp2QIeJHyLqkhZH+pITrTH0kfPrrYNSBCe/488EWwppJA
-se/D2u3TAgMBAAECggEBAKa1L/yUDfP4pqHWu8wrpIct5THXvIhm2lhrW3Qz2R7x
-vdkQ04wQj22/1yV/IA+eh3dV1pE5kadDTElTCVr6rWpJHqKYYafbJ2hbMOzyjAEq
-KPczYKt+hkRhL25Tg3wTTM8Rt8Z1S4mvSpTqOT+VEmvfs3yXJGdNPGtNxAbr2gT9
-xzfHtvcJsx40ZG9UNv419SAw0n/zcCRiP4sK4+aI4vfjpA8RHUjsYSxDuwLUVh8I
-XCbXOAbgxFUIgNL2ldftZmwBpCPxpE3rgpu7aOjTMJXuunNU2QAi8oI+8OsWP6zK
-O0gBwiCAULCGhjo8OZN7pa8H9G/jMZg67lXY8mkemaECgYEA9mgU5kS7wral6uu1
-yQY4Pm6hL+JKysC90Z4NTPM8LT0Pi9CKNJhuUJ/po5V17p5wMp6E2SZU9YnqqnIb
-tBK0hkOTnXEZYopfXAqM1fCnJUOnJ7OpTgVC7+7aaAh7oIQNogRZ2V96PZ2r6RpC
-S8HykiF0bTCRAv0JoRE9IS/mV8MCgYEA5BSrEoBw5OSijHciZJ/FfJzxSV9I6kmo
-E78h3STtRMpRwRo0iaqqOVBnXtcH/ptZYtLjkcaA9g0h53D4idOiOAJDj7DFKOS3
-QpTe3U/gJzphaVuvsEGShlfy/LhPpNi3vEhqVPXO9j/0HVBOkZV8Ev/bonoW+upS
-VhHwT/bCwLECgYAxHj5MSJdFETOxyJrMH7lGeLcY3HscP5+XEXKFTFdKjUl0DXX/
-VgNnfvkL6tc/YcXr0T2aK9HzwDJPF7/9/VyPBxl94PW2du7bYh8A5p/rBblkaKPv
-MY1OVsaixk4eiTROf5+JfUbY0X1bUii1AUxhZNnYij3d4qLwwIb2/p1kEQKBgQCy
-d52493nfESxD/0CRPheYv3FqOT3j3ci/0tIbqbZjGnDIScoMYteZy1lnc5jU2Bgk
-ZOIfAhWM8o+x+srvhgMsElFtUSOlMPpZBgYxZDwAVgU9HLonj9eoeY8vwsTHN7Dl
-ikBxxHmyZC6O9XTVJAQXFc91nlT2931/zb+dwnd3sQKBgQCzZiAtoRjeZn3wc4C6
-RaDaSMG5n8xRYU963ZCPTDfK8Qgx3NfdsDy/Hgkj4R8MdrQIfyY5CRLNyaPi/lIE
-yhL0Sn5R729pQOaVG8qPOJtNzH7DYJCIY8Kx2QzPOxQAb+SSrMPQkngOcSIwX4QK
-pyjqsXQo2XBTKIgErbtybZhzhw==
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDNTTbCpwZg6MAR
+Slau3FXBzmM4+6SqXPf3xQ9L2hpulCFWWDIfvWpK3zVKbSVIU6L9lo8Cdrne4ZRE
+486BXo1iIvdYkpekvrS/m6BG91wN0/AI+NNaK/7Azdz4aScAs8cxbqigqeYqFLH/
+KAvP0XebzfZ6kfsqjPYRvvaur9QWIvgKdjBz6VEY01uIoZVWR7rSPAj+K3kYhfEU
+K3vsdQ30LdDhF7T81NO+w4ecuy1/aqMxc3oM1L3H7yh62a2tyBwv223KCoxH4WGv
+pmmTPZ/EGEgd07pGMFcii99GJ/yFqoqJo3akjXqms4WqeL0W7vlFOFV2SQw8+dPF
+SOOqV6iNAgMBAAECggEAKe1C6a3Cl7fwwZc07LECsnm7ub9qeYBTA76yyQLZswt9
+Y2zPj7vXIUNEVtbDbmnmN3Ov8QjeHK5k4UzEt5bfuNL7QJNvdK2drCPUL6oEmq5V
+rv9h6mBhvm5MWk7fMD2GyImY1nbcEmv3jexXvTFCBAej9pQpfx8agbVGG5a88WgF
+EXVt8emrAVBtIOS+lql7Swi+jjDvtKZS3HQDZoBqHhqguS/BT8EG7uwqM4unUeIU
+IgmWzmFYWiylUtGZwqkD5qtymXokxJHdOyUewz0US4sHP1Pnk5He2Iz3EJlb6uG9
+ffCL1DobPmh5Ptk6RdMQ1HHgfcQzni3uIgHqYalB4QKBgQDwaZCe5+OUpIFI3yL3
+SQDHqTtumxdFrWKeK1+coXJKXl0jM6OlbqDizYbsHGOlNeA0QLpP+IbO70s7naSA
+99k4djmBu5c/I8rkKBkxHLEXk05VvPLUYlyPbfMmIEZt3V6J9vMdvg2JcbHNY1mJ
+3hzKJpGdLsl/PupZO6dYyFsjwwKBgQDanN7Y3b3gW1AdCsdPpCbue7VJnRUowN21
+tMqmoMf+ODrlTaeUibh690xYynGky7uXGv/+7b2pJ87u3RNFHLVh0YQPKBEY1U85
+zKvJq7nVmyZRDUUlZxbotg3KLfujFK3GIES9zSNgSeYu4VE3N/QuDtasWcVM/DHT
+SiCd8RDNbwKBgDWAuM+0eaBl7+PAzO5Nj9/fWLunxkkaah0bN/8Kqv3D/GROJLg3
+Y5S1+rXnJ4Hn+IqIcS5E9/Nrq8mLrsWI4w2+udOWZPWHSKr4BYs5gGvnu4I3N69u
+aHz/EiLFAgeHQXfgvoA7AJY6+D/mQVH+XVfbt4JMnEk2Pj83mGmYxTezAoGAOo74
+tpi3Kujqzcy8VN4Au7MRfZWBPHhlKy4xdm7tA3DmfdPORuCZNP8XSVV5GY6lQjWu
+Swg93JjYOm2nosSs5XXs7O5rnf5NiYsEnTHNxqUXn3BxjDJQFafmi7jDhgyc+8xa
+/Yh8qGdDLF2YlrT7SHcbE/G8AwIvCoz5rbUMLisCgYEAg/du2NWZj1d9VjkZOuP3
+ZMnc04SJfB2oD1Xd/zoq/cEDFpHCAMzFm2BVPK3OAvPqNHppH1u0oeu17a+OCfeB
++t/3bsNDd5Ovm8HNfAvhevQhG69tL9bfQblqSoBg6Fd00iILiT9WKK86zcV4kVMa
+2LXdfgZvnpV5oroqetzqASA=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/ocsp_responder.pem b/jstests/libs/ocsp/ocsp_responder.pem
index fffb4c003dd..ec54da767d2 100644
--- a/jstests/libs/ocsp/ocsp_responder.pem
+++ b/jstests/libs/ocsp/ocsp_responder.pem
@@ -1,49 +1,49 @@
-----BEGIN CERTIFICATE-----
-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
+MIIDgzCCAmugAwIBAgIEG9rCUjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-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
+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
-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
+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
-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
+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
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDbiJdoDByUfS0u
-mJF8hwsJvV3uxcG6UQ1gL4JR+yP/Frw7emIkKaSagCQTjwvhmiera1QVa5HxofSi
-kQr7gm1qzpjOKlDK3J8CBlAncPYbThde9E6dWZS+GQeTFh+NDo6NNwopBgYIpWkw
-q9cgAJYgYxcVHoY4AXWeoshcd6dSgqY3lr8la+qDgqCbxA02dEPQWW+LDZq2fdiN
-RwbqvVJd1TGgb6lfZB/0pv4LRHqBvRcKjlvieX/ntfsNgja4rqUtbsZnspXnoZeD
-2A5dADsDhBc9oSTxn6ofp2QIeJHyLqkhZH+pITrTH0kfPrrYNSBCe/488EWwppJA
-se/D2u3TAgMBAAECggEBAKa1L/yUDfP4pqHWu8wrpIct5THXvIhm2lhrW3Qz2R7x
-vdkQ04wQj22/1yV/IA+eh3dV1pE5kadDTElTCVr6rWpJHqKYYafbJ2hbMOzyjAEq
-KPczYKt+hkRhL25Tg3wTTM8Rt8Z1S4mvSpTqOT+VEmvfs3yXJGdNPGtNxAbr2gT9
-xzfHtvcJsx40ZG9UNv419SAw0n/zcCRiP4sK4+aI4vfjpA8RHUjsYSxDuwLUVh8I
-XCbXOAbgxFUIgNL2ldftZmwBpCPxpE3rgpu7aOjTMJXuunNU2QAi8oI+8OsWP6zK
-O0gBwiCAULCGhjo8OZN7pa8H9G/jMZg67lXY8mkemaECgYEA9mgU5kS7wral6uu1
-yQY4Pm6hL+JKysC90Z4NTPM8LT0Pi9CKNJhuUJ/po5V17p5wMp6E2SZU9YnqqnIb
-tBK0hkOTnXEZYopfXAqM1fCnJUOnJ7OpTgVC7+7aaAh7oIQNogRZ2V96PZ2r6RpC
-S8HykiF0bTCRAv0JoRE9IS/mV8MCgYEA5BSrEoBw5OSijHciZJ/FfJzxSV9I6kmo
-E78h3STtRMpRwRo0iaqqOVBnXtcH/ptZYtLjkcaA9g0h53D4idOiOAJDj7DFKOS3
-QpTe3U/gJzphaVuvsEGShlfy/LhPpNi3vEhqVPXO9j/0HVBOkZV8Ev/bonoW+upS
-VhHwT/bCwLECgYAxHj5MSJdFETOxyJrMH7lGeLcY3HscP5+XEXKFTFdKjUl0DXX/
-VgNnfvkL6tc/YcXr0T2aK9HzwDJPF7/9/VyPBxl94PW2du7bYh8A5p/rBblkaKPv
-MY1OVsaixk4eiTROf5+JfUbY0X1bUii1AUxhZNnYij3d4qLwwIb2/p1kEQKBgQCy
-d52493nfESxD/0CRPheYv3FqOT3j3ci/0tIbqbZjGnDIScoMYteZy1lnc5jU2Bgk
-ZOIfAhWM8o+x+srvhgMsElFtUSOlMPpZBgYxZDwAVgU9HLonj9eoeY8vwsTHN7Dl
-ikBxxHmyZC6O9XTVJAQXFc91nlT2931/zb+dwnd3sQKBgQCzZiAtoRjeZn3wc4C6
-RaDaSMG5n8xRYU963ZCPTDfK8Qgx3NfdsDy/Hgkj4R8MdrQIfyY5CRLNyaPi/lIE
-yhL0Sn5R729pQOaVG8qPOJtNzH7DYJCIY8Kx2QzPOxQAb+SSrMPQkngOcSIwX4QK
-pyjqsXQo2XBTKIgErbtybZhzhw==
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDNTTbCpwZg6MAR
+Slau3FXBzmM4+6SqXPf3xQ9L2hpulCFWWDIfvWpK3zVKbSVIU6L9lo8Cdrne4ZRE
+486BXo1iIvdYkpekvrS/m6BG91wN0/AI+NNaK/7Azdz4aScAs8cxbqigqeYqFLH/
+KAvP0XebzfZ6kfsqjPYRvvaur9QWIvgKdjBz6VEY01uIoZVWR7rSPAj+K3kYhfEU
+K3vsdQ30LdDhF7T81NO+w4ecuy1/aqMxc3oM1L3H7yh62a2tyBwv223KCoxH4WGv
+pmmTPZ/EGEgd07pGMFcii99GJ/yFqoqJo3akjXqms4WqeL0W7vlFOFV2SQw8+dPF
+SOOqV6iNAgMBAAECggEAKe1C6a3Cl7fwwZc07LECsnm7ub9qeYBTA76yyQLZswt9
+Y2zPj7vXIUNEVtbDbmnmN3Ov8QjeHK5k4UzEt5bfuNL7QJNvdK2drCPUL6oEmq5V
+rv9h6mBhvm5MWk7fMD2GyImY1nbcEmv3jexXvTFCBAej9pQpfx8agbVGG5a88WgF
+EXVt8emrAVBtIOS+lql7Swi+jjDvtKZS3HQDZoBqHhqguS/BT8EG7uwqM4unUeIU
+IgmWzmFYWiylUtGZwqkD5qtymXokxJHdOyUewz0US4sHP1Pnk5He2Iz3EJlb6uG9
+ffCL1DobPmh5Ptk6RdMQ1HHgfcQzni3uIgHqYalB4QKBgQDwaZCe5+OUpIFI3yL3
+SQDHqTtumxdFrWKeK1+coXJKXl0jM6OlbqDizYbsHGOlNeA0QLpP+IbO70s7naSA
+99k4djmBu5c/I8rkKBkxHLEXk05VvPLUYlyPbfMmIEZt3V6J9vMdvg2JcbHNY1mJ
+3hzKJpGdLsl/PupZO6dYyFsjwwKBgQDanN7Y3b3gW1AdCsdPpCbue7VJnRUowN21
+tMqmoMf+ODrlTaeUibh690xYynGky7uXGv/+7b2pJ87u3RNFHLVh0YQPKBEY1U85
+zKvJq7nVmyZRDUUlZxbotg3KLfujFK3GIES9zSNgSeYu4VE3N/QuDtasWcVM/DHT
+SiCd8RDNbwKBgDWAuM+0eaBl7+PAzO5Nj9/fWLunxkkaah0bN/8Kqv3D/GROJLg3
+Y5S1+rXnJ4Hn+IqIcS5E9/Nrq8mLrsWI4w2+udOWZPWHSKr4BYs5gGvnu4I3N69u
+aHz/EiLFAgeHQXfgvoA7AJY6+D/mQVH+XVfbt4JMnEk2Pj83mGmYxTezAoGAOo74
+tpi3Kujqzcy8VN4Au7MRfZWBPHhlKy4xdm7tA3DmfdPORuCZNP8XSVV5GY6lQjWu
+Swg93JjYOm2nosSs5XXs7O5rnf5NiYsEnTHNxqUXn3BxjDJQFafmi7jDhgyc+8xa
+/Yh8qGdDLF2YlrT7SHcbE/G8AwIvCoz5rbUMLisCgYEAg/du2NWZj1d9VjkZOuP3
+ZMnc04SJfB2oD1Xd/zoq/cEDFpHCAMzFm2BVPK3OAvPqNHppH1u0oeu17a+OCfeB
++t/3bsNDd5Ovm8HNfAvhevQhG69tL9bfQblqSoBg6Fd00iILiT9WKK86zcV4kVMa
+2LXdfgZvnpV5oroqetzqASA=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/ocsp_responder.pem.digest.sha1 b/jstests/libs/ocsp/ocsp_responder.pem.digest.sha1
new file mode 100644
index 00000000000..9bff82f75c9
--- /dev/null
+++ b/jstests/libs/ocsp/ocsp_responder.pem.digest.sha1
@@ -0,0 +1 @@
+8D7FAD707F23480F7BE38FC06F46794DEDB18CEA \ No newline at end of file
diff --git a/jstests/libs/ocsp/ocsp_responder.pem.digest.sha256 b/jstests/libs/ocsp/ocsp_responder.pem.digest.sha256
new file mode 100644
index 00000000000..8251d950e2f
--- /dev/null
+++ b/jstests/libs/ocsp/ocsp_responder.pem.digest.sha256
@@ -0,0 +1 @@
+CE89D643467D21E63407A1C64C793FA72D5C5FCF32A97C1E317EFC5A367B9F4D \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem b/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem
index 40e51eabb81..93ac0f42be1 100644
--- a/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem
+++ b/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem
@@ -1,75 +1,75 @@
-----BEGIN CERTIFICATE-----
-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
+MIIELzCCAxegAwIBAgIEUOothTANBgkqhkiG9w0BAQsFADB+MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEhMB8GA1UEAwwYSW50ZXJt
-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
+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
-hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArHG+UhzjMVQ7ldegRTCPzNi+1L2U4BnC
-oYVd9ygLDYO9m6Kj+znX6qOLcMuPtHv6AUcUgpf+h311kxeERx/kzxHMm1DPqG74
-nimcqnTI2wPZJOshVC3MMR3EKosUzqPtKAEiDsjrnyjZzlfrL08ditesI0jNxm2j
-8p8I26pfkkiUDiGpa890Ee2y7Iwwfykxe4dTwu2pPD/ilPeOL2hUi4POJQp67vJ9
-l3Qf41ArfsQoMdw3P8SEBxHvQXLCMZCSrW238cjC4ANPNppPoeCJYhLVUGb4JVhW
-jcJjNN78nPmxkdbmKtkzNdk+P2AgBFEKkw9PWd/qTMik5rzatYY8ZwIDAQABo4Gv
+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
-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
+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
-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
-Qc9+kwTSRF6cIYg4h7Xq/luNRw==
+AQEAIQc2TM7zkixdANoFswyN2Q32xlQPeXGOWOJneTepeuqBtVwQ0+aZ6wCE91b1
+okTQDizDPFWUROWdffpGk/EI4+Q+J/HONOiq3J0Rz9Dak/VhApZ50UJ9jwZttra9
+SGFw4xQz7AG6ftYKT/78GA5KTubQU/gKZBopwNx1VJi6aFnwSosbofMviJQOcVlX
+Ga+I2LgvB73PPtxUbk0LIHV8k+wY3DgseYyViqOxFlrbc4/stqYHE5y23I+539AX
+8x1Sc2WtO198gOAXobLiYkW6mUqSPVENMTOVa2hC5rsaigYMi1HbRQa57s4+5UGr
+3i8BejcVaI7mfbce3lCoUbAgGg==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCscb5SHOMxVDuV
-16BFMI/M2L7UvZTgGcKhhV33KAsNg72boqP7Odfqo4twy4+0e/oBRxSCl/6HfXWT
-F4RHH+TPEcybUM+obvieKZyqdMjbA9kk6yFULcwxHcQqixTOo+0oASIOyOufKNnO
-V+svTx2K16wjSM3GbaPynwjbql+SSJQOIalrz3QR7bLsjDB/KTF7h1PC7ak8P+KU
-944vaFSLg84lCnru8n2XdB/jUCt+xCgx3Dc/xIQHEe9BcsIxkJKtbbfxyMLgA082
-mk+h4IliEtVQZvglWFaNwmM03vyc+bGR1uYq2TM12T4/YCAEUQqTD09Z3+pMyKTm
-vNq1hjxnAgMBAAECggEAAMVdaXaRmXXb8laNc+G8stjBOahDUyEqWpiDDAjUy9Gr
-9lcqzoO6sGTcybtPQCpRutG7iL3vOGHaNbckM0E0P6y/sm4RD5q3Z9WdyrFM+JWy
-0dRvSLYPtKSCbQJELIxVEhm3MkO5sfN3zdFcztBWvHksXtgDe4Cf/AS0AG9pj/jb
-Ncd1AvrPJbh1IyOHBUdli/Dc8rNjAU3VwQgND4OJWzUSS0zyKOQjy/FE6LQo2jbf
-XRxUtSFnSSDRxg8UFhCsdySlnpcM88Ve18vx7YAUX5lQMxxHiNijkMeByASd9yCl
-+XuDEt0IT5FnNOfEHXmbuwAnyDZNyYpqubpfYramyQKBgQDlc0bxj8zz+ZluTChM
-n/dtp5JHZCWYSwPZbQY1Nj3btkjqNZk4F4LQ0qpA4goRJ2VoscfKcJOYR+/VsjTX
-UmDGuaHcVHNJS9j7vzOxfIJ+fUhWdpfZdL47O2mKNQT5lfeaeglrn+EyGrozuyRB
-+OR84/Ty/MdJAZAm9tI/Toey2wKBgQDAZdknUF8A8Vthz90yrQca57HecbX5nz6b
-LxpU/COYgroD8Bs7/n3tWiMez2lwg0vlFcC07Mz0BPBiL0MIc+3N3BuS44UORF/1
-1RL7PrLnWiSqKqV90McuLZZkVgB4VDuqoyw6buq/DWRDCe/V+HGdwK1V7S9Y6S+F
-rI3kuDfEZQKBgHCXW6WnmbvSrB56kn/fM0wEoXwUwXn0vYPQwu4TmtEYprj+6huj
-NdcAuPizspruSQ3RxycojNR54E9tbg6G5uQ9LRbv/c5mwKfwEA60+VfWZEvBUAwu
-BDcOlWBzWeibVW/hGIROZPPwN5Sw7T7OQliih41Ayw2hDbqA/XSBNYdnAoGBAKIY
-bOcJeLFDp3j19ufODXFmiV3fMbDYsJdwDOBS+e5xHSVaMqfOFuxVB8faeXwYsmWU
-eSI1a8ufKaOfK/vAKDdLXVPZKm3Fv49PcEmLHpF6Se+wNHOW5WkLcWyhZI38cbSm
-+wlUD6TdNH6irZT5V0fQYHlHdp+S/r3Bjl6HsjxdAoGBAIZZ/lOi4FReDDDoYddu
-j52Fs9eVon4ie7SpVhvR2HIc7jFJ8nHEuSwMJzXnAGFL/s90Xn2sgejE4upqRoAa
-VhYBi3W9dq3eiZxz/2tWDMipg1z75eyKGWZUZG0I2513GOIM9PXXjT4A/w2FeVgF
-taWKxpF9r6U/mvqKi2scJeuj
+MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDPjpS6PZBlRgd2
+mfUepy6zQGn4b4NcHjP47LSB+wNxWNvfMki5Ovg5rnSRmzVnHMACLQS5luGZrFvV
+QigXWlYp8asV8/rFGdpff26es/mJnzDszp/o6nouzKAox7hPHYh20Lr2s1/DGVp4
+WEKkjMbqDM1BYP/EVWmkulqqo8dogiCncpK/iosPAFPuAVwIdS6P87vVXnCSKl4S
+f7nXaXL3xsefzCGrd+TDu0pOa/LWQzFHEH8FzdluFEkmxdmRxG/gz6qt0OTPf/4g
+hQ2QxOz7p895WwNVUQXB80htAw/OdTJ+mmZ1qGCHBKm4eIDPMUBHVBkj/pIZz4Tp
+VmfycRqVAgMBAAECggEAaaLMqVkqA5E3vTIwYjB+gTa4eHvw5FJu6zM1z628m9S4
+2wkRoEyWB2114KGY9WjZhIH7FKXpHjht6MUp+HC+x8w64gpxyB0XWmFWIKnCyDtg
+QDYNhxLHqsf0f6zebk2+pZIoheTXSUm/FN7+1BbeKkLnuG2w3vEFupQqDw0aMWKV
+z0bX5oXeFqm1piCqj0ng5eFRDFD9JSXvcrGxJ2sxT8CHgEQM+uDIYRsU8K21Wq2W
+I+MuyMz9La1sfjHITGQ5MdunHSYvjNuHCXqM3YQWR0Bh3h1DNNCsMTh5HZeRWVsd
+Haof4VjRScwoW1q27T/2mnohf4sNu0cGhRYlfwtPJQKBgQD7QeE4pw4R0HjYlqb+
+FBLlbTdKdkm9eUg7heOV/KOwiungE9j6pwxuYosC0McVYWWG9SMKY0q8/UsPVZIm
+CzZ0Vs1gB9CG8UW999YkqvKM0YvetOpNmaW2gc0fY/TPgMqQZU8l7VdUudiXB8hv
+aDYPdYd27/B/1Lz+he12XfDUOwKBgQDTeYh8Zm93qrPPbg2ieESY6V8VpnFdOG9I
+EUtgiElXiSlyB0pqV8+DC1UWmFsRz/3i62rp8o58UcJPMe2SJz///W9C+ZZyNtW/
+Rbx/40I5pBkvK0bZEXgULUVnFlvgb3a3PsLyhxk8eL5dfp2NvtKTXvfGaKus9QYb
+vEoEPobvbwKBgFMDiDskjrR6EYNV+ySVU0z0EcGLZX+xk5j++puylg6dRvpe9GCU
+Uroh2tX6TtyUimvVkFc9SRM6CNOvLRNevwYfK8nfqxj6nFVQjjMdO/gkv7a8RXGQ
+Iz0yk6gcaWUpo0OkBUt9qE34/UOhMasFXl8rMK+uROKnUi4x56wlC43DAoGAf4RD
+NrAV+tSmBChadGONCZ9/RHDO3uVOxOgYyaakgvIkWavnxWQZru1Aa5WHJKCEeTZ3
+i4ZFQNWUE2kJ1h1wzA2n73zMqSZDkUidt4fzwQogXX79A5szCweZV+X1lMnhjfF8
+X/3yy7ILKBlXK8eq9k5Hng4zpuFAw6yv/QsvFmUCgYBPAceHxnjW9D/NWIstCQmf
+fxWiJyYpSfo3T5snWSKbUpZAFBu0RXLRiwBUteY7/1aZCPAsr5SM1tCSRKgiZbGp
+OJXlyTv5IJMDvCA233EzuUVxhc8xxXMYQCspOd9E7Wf1+PMAf211mijeOt4sXvHv
+4wQJwTDVo0ahgYMHJlHi0A==
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
-MIIDoTCCAomgAwIBAgIDJSA5MA0GCSqGSIb3DQEBCwUAMHQxCzAJBgNVBAYTAlVT
-MREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQMA4G
-A1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMRcwFQYDVQQDDA5LZXJuZWwg
-VGVzdCBDQTAeFw0yMTAzMDkxODAxNDVaFw00MTAzMTExODAxNDVaMH4xCzAJBgNV
-BAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0
-eTEQMA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMSEwHwYDVQQDDBhJ
-bnRlcm1lZGlhdGUgQ0EgZm9yIE9DU1AwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
-ggEKAoIBAQDejgY18iv98kFHs+qDEpUEYmzlgKaH6Z9XiURRLihURcjkwaQsVQmN
-9tUbSzr2rsKjjXhKMlFFxxb3dhiHKy/RvFwy0Jv2gHcUGWZmboTvAPpm8K2aMNep
-Tm570UyXWMGCxhw8vtO/fkT/UzJGqk4UVnv+uBepl3Lx+7Qrc4XvgLPkcx6NTNIu
-8+ex950c54fUrwHHuE8ZmqGYSZhozH8+lK0RiiC0VvbLfQhLZwSi2JeilsutBmNv
-9vUtnqz7Ij64risEqDTK9mdieEX1QwooZwDb7KZC26kh4AsnLR9U13a929K+O5R0
-5hUrWFR45EOgTWOkS4Pwi1he433fRDnvAgMBAAGjMjAwMA8GA1UdEwEB/wQFMAMB
-Af8wHQYDVR0OBBYEFG4AQc6znEV5v5AOokM27F+YNpEPMA0GCSqGSIb3DQEBCwUA
-A4IBAQA6fK8F68vqZ8WjX+G3lubpui/k1ke9ueozYnjxmwdwbWgJ9kH02h9f4uND
-4i8ZElpzaraRXHqrWf1PQvwAXwscDkQic2QaEgumei2j63UkwWd9DRWmrlVXKSzW
-LCwUtHU9NHZRKjMR3FjSWih5w1l3TWf24422awVkW3pVKiC3xchMCsUrK+mqzivj
-hZZ3sgdmCLO2/WYpiBPPsAupniRj5zZk3Kqrw4GmPb8IfFA7HYUEYuhmID9BcnSM
-J8Rfx7ZUvQREih92lALmQbN81x27WvxULhgOVoMMU1UlPqDZzL+eLoo+EuC5k38q
-cLpYeqs+gWeNrh1kzk0GeHmzvE+g
+MIIDojCCAoqgAwIBAgIEJWcflTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ3WhcNMjQwNDMwMjE1OTQ3WjB+MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEhMB8GA1UEAwwY
+SW50ZXJtZWRpYXRlIENBIGZvciBPQ1NQMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEA1GZlPg548GQidASCrRZDXfJm3Li+vIazhm4MGhv6bJ2o+SYHfu5j
+PO51T5l0TGvuoJPnzwq+RlW5RW3/+fCMl0gt+awDDzjKCekn00w8KSk3rqGDYQk7
+cSVuoPJVyJJ/vo86bwVMB9TYyxPi1lEBeeyVaa2FvbzS+SZq2c9c087WVYRmj/81
+yGztUAwj2Zoru1ECuhHE8YMeyDqmi52XByUmI7Ywrzs4xc3pQ+AI62IsiUFbCNqw
+EPHhEcCgEwaUlWihvUfO5lJSKeUyn0WlQ8MmnUTnCCMYDDJKPublsuu7Ngl6xmEM
+H3u9iSbV6qWQwsC4PJcw5PO30yT5QkFe1wIDAQABozIwMDAPBgNVHRMBAf8EBTAD
+AQH/MB0GA1UdDgQWBBRuXVvr6fP/Pyp2uqsHQ7KTvYGuNTANBgkqhkiG9w0BAQsF
+AAOCAQEAaO2/QF2KG9LM1yKWe9ZbrvZa2dWgFHebY6HckDgE5rc5+nYug9zSEUi+
+QYKZfEAYbMZ2a3ymybsNsGpVPBYv6p2kaa6V9hrJb/awMI9dFg+o/U4v3dLQZmci
+6cSI/c2T9mqJ4tVUPZE5tyVXZBZrQEUOJwcrcH19qWtS2n5Zk4BjkFAysC/eICMw
+yD4kGI/djEkaABkCC7Xb75ySh5BJgC8ZZ/5gmKYiFZnV8d6ktXh7nPcqfsyuTuei
+NBTSZpdTJ5WWNpybnK7/QUeedk1imNkTqK1TOJ4yjxIlhpGOX0f9q9InCrdYZb6P
+SaRjfoPnX4zSLP5nv3QSDMcJjD/IrA==
-----END CERTIFICATE-----
diff --git a/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem.digest.sha1 b/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..0ea8b53ffba
--- /dev/null
+++ b/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+A1F079E1453B9E8B79FBD4A7A7EE430851A0DF3A \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem.digest.sha256 b/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..1d29ebcc2e4
--- /dev/null
+++ b/jstests/libs/ocsp/server_and_intermediate_ca_appended_ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+C4A40BF1602DACA5BD94BEEC95996961422C70F749F709F3D5E776E2A6CA96E3 \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_ocsp.pem b/jstests/libs/ocsp/server_ocsp.pem
index 7879c32bf5e..86d73b9cb8e 100644
--- a/jstests/libs/ocsp/server_ocsp.pem
+++ b/jstests/libs/ocsp/server_ocsp.pem
@@ -1,52 +1,52 @@
-----BEGIN CERTIFICATE-----
-MIIEBDCCAuygAwIBAgIEAk9cADANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIIEBDCCAuygAwIBAgIEKx0QGjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjAwMzIzMjIxMzA5WhcNNDAwMzI1MjIxMzA5WjBiMRAwDgYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjBiMRAwDgYD
VQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxEjAQBgNVBAMMCWxvY2FsaG9z
dDELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAk5ZMQ8wDQYDVQQHDAZPQ1NQLTEwggEi
-MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDe9084Y8sIYDBCwqbVgX10eD/T
-cieCYVJZqA5IK5BfZNd7k6nxmHzwU5qTmz5Ez67ZCeAt12dngQRXp8wAYEDDz0oX
-3ngOOmFRPRCBcQ0acQO7lpxT8reGePXXxVyKCSxJhFUcWZeaj1nyuHSjpnXln4Cg
-rZcN2/OMR8yrWP/lFl5GYp7GW6nfIL/fnr1PieqmMNRvcd1T/pIz459Peu3akU/V
-O12+lYlmTP2lXfnSOb2BIxZa6D8djsyRjONnHI7jVU2XjWODgcdflkkjz1EHhjLo
-9EqlChrCKpEUremS4pNEGaR6VsOXc9fsiAm8gBtBplu58Wvs4mpt4fsfnb7XAgMB
+MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7kdmu54NATVQJ17vNVuL5M+t4
+iExQWHSVi8lp771E+4z1hJqnQHH1Voi2HuWS/nolxvap/O0V6GbDmWbdFRoBL6cP
+ASgrZPn263SLfgms31sIYMUthPmPK3UpxyQByFPpV+4oBDCnRRos1+XOKvAhCd+3
+GctudX/OiPRTU0iShURYyKytF0LCxNAhXqxDB8UNpSakM8OOwz5QOVP+0Px+HUT5
+0ULHueof6GHJXoACeQlXsMWdLcXsyj7Gl+ogpBAAbOZyNzVHSJzjGW5krTvwEsZ6
+9lb22kfYi03BsTxueQmC6uGFJWBxwnkfstQ+2u36hP+IKwJMjMG5u+edAUQ1AgMB
AAGjga8wgawwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
-BQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBQbYPpxUWvNYCV7l6pXcP91BS2DpzA4
+BQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBQqVWQYrG9+vpv1nnGGws3T6mqQqDA4
BggrBgEFBQcBAQQsMCowKAYIKwYBBQUHMAGGHGh0dHA6Ly9sb2NhbGhvc3Q6ODEw
MC9zdGF0dXMwGgYDVR0RBBMwEYIJbG9jYWxob3N0hwR/AAABMA0GCSqGSIb3DQEB
-CwUAA4IBAQBjokH0iKrwHUmzEfnB9ALDfgL3AUsC/q7AnC4DSvylM6bkUYmsS5Os
-TA0twsu9AQlwMHkMRA6M+4yaGAMpPCHnIeJRhrOK/8lUSm3TMa0VeIvj/Sr2wf/Z
-iOJTqgrI4ZA7oQixWBlA4L2EB3wIomv27rMSPB9wW9KHCRArKEW/XZJ8hbkTHq/F
-20eyEN9v+cfJ8GEKJ1eVqHxXFtug9XlDUnvvDwx7e1uoX2UgrnGp0xJk13ek0eCS
-BiZb2RBRG0fZ/eQzIhUWfvKbmhtAr1luPkEIb2o0bt1oEgDE2NHVbg2V5vdvwzx/
-ovURi6pEsdqNQVxztanr7UBiebBr3KI1
+CwUAA4IBAQB5+mPWOi1CCc9TT+TDb5A07U+QzkPqVfQc2xME4qVozj07B7BeD5ep
+i7g6uxAT4jLutve/k8M2cpq13oFyMC1C2e66Zw+8qKdPNXVbdyJhDnz6hGLZPE7W
+QwTB9FMmZOKB8012ZnB2gTcWqcsG2rcglex4iZtYiVxA7KzrCaYqgfX34clFfc9/
+qOIGqBiMp9ic/Z5C2irdY+t2vYs4gW12nrsIYJFbg6pjy2e7oQoKQ7b2cxzAYZvJ
+vISodMjrsxj68A9XlXQ2lLcXwiEd3czSAx3sDd2dieZ9JcNybPXpaC+RF2GpPd6F
+3Eu4OzInD6UWtHSJgvmriF2rpqV1LTXM
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDe9084Y8sIYDBC
-wqbVgX10eD/TcieCYVJZqA5IK5BfZNd7k6nxmHzwU5qTmz5Ez67ZCeAt12dngQRX
-p8wAYEDDz0oX3ngOOmFRPRCBcQ0acQO7lpxT8reGePXXxVyKCSxJhFUcWZeaj1ny
-uHSjpnXln4CgrZcN2/OMR8yrWP/lFl5GYp7GW6nfIL/fnr1PieqmMNRvcd1T/pIz
-459Peu3akU/VO12+lYlmTP2lXfnSOb2BIxZa6D8djsyRjONnHI7jVU2XjWODgcdf
-lkkjz1EHhjLo9EqlChrCKpEUremS4pNEGaR6VsOXc9fsiAm8gBtBplu58Wvs4mpt
-4fsfnb7XAgMBAAECggEBAMvjCK0/DBVvqBIUX20TyT3tDCh11c0y45QaylySgaXJ
-2AYoBJppX66ANPTPXESeSXwsvLQOqn8KiocBaNnbKr4j2tQy2kPgfMdF+Mb1Mw8/
-0zMByZg2dj5gdCbIUhPjyXy8pvuSrcBnX9BFflt7x4mfroa/1kaVIIPh0DXL38yC
-TvGkEQFHFTd7BB2aOjy10TK8XByIEZXGtJXM1tXTABxSA0/TGGH6ec2p0hCOEpGj
-Zrv5KOvWJVd2MSdTKk5ecUAgd/1Grqf1TLZ5gU2jYoVq6p6Aj4UTdDpB4J5hstAP
-iApNUlLJpl20hiDagef296NYImgJr99Mhxj3imht33kCgYEA/0iNQA5mW+auM//l
-sKo+OD1jyfCUMI5uVioeP45Z7r2DgSpTHSMs7bI2vsGgbJZVZ9bU8SGFeWw8RO2f
-Wy98ppazgVYGpdfYRXI8j394qO2wudg0RRFk7GpjVMEwt55aCbsK5CaLTMvlx80P
-w5r05IRLFu2Hd7PfNSiCWAWq2oMCgYEA35eIxEgU2ngjAjcNbe0FnY1uzraaQhGu
-E0IWahfp9Keqn68CuBUgrpEZTRU7ZWWpNDDA/bgj7QhaJvktX+K72bI4EoBRWVRQ
-bSv8Xh2MyG81/geOe4dw6BvEx6oQCxRM+NB/EKKd4CWnkNzKMIOcObuaEGnj97IX
-v8VaBKi4qh0CgYAVw0afZlrdjM3fCvq209yYCMvABG1tska/u7l2a5lJHAjg8w3A
-1yXWYbH/ExytBSfkwVDH+baaQlrk+WjzahnzTbeh2AabDsqWKQX2qcRMim7deQwD
-s1bqPKuZJxsTHEHKwJJOHucTNfKx1M56O3STIqAQJVG+J6xoqLpr7JfDJwKBgQC1
-A5gM2BJR4ErvYyRzJx2RtMvNfFWcQXX9T1aYI64bjJX82xHHeAtSaFPkbNj+OPRo
-NUQ45BfpsQZTYQ2UABp2nur4R3wUZscJ6z9P7npoVmiOtQ1sAnWs47ZGsu50GcZK
-9Xi5Pf20Vqe3BpiF+DbFIpUSzrdpc3v4nExJU1LVHQKBgQD35hNSA7SK05nYopcf
-yPf3dp82jgMW+EcyQoBphGXxBhmp28am4t1NB7Cco0SlJoOlQzYhor7EcONbck2S
-zQIB2wEBKPSme5k7XYPWE7nPsWN7tHuD+vdSR1e3I3HXHql4KcEDYb+rtEKj2zPc
-aGlsE5CspKyK8BKyK5eiNSxl+w==
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC7kdmu54NATVQJ
+17vNVuL5M+t4iExQWHSVi8lp771E+4z1hJqnQHH1Voi2HuWS/nolxvap/O0V6GbD
+mWbdFRoBL6cPASgrZPn263SLfgms31sIYMUthPmPK3UpxyQByFPpV+4oBDCnRRos
+1+XOKvAhCd+3GctudX/OiPRTU0iShURYyKytF0LCxNAhXqxDB8UNpSakM8OOwz5Q
+OVP+0Px+HUT50ULHueof6GHJXoACeQlXsMWdLcXsyj7Gl+ogpBAAbOZyNzVHSJzj
+GW5krTvwEsZ69lb22kfYi03BsTxueQmC6uGFJWBxwnkfstQ+2u36hP+IKwJMjMG5
+u+edAUQ1AgMBAAECggEBALf2q26s6ADoFtV0fmA9qG1L69WSsG5Y4zdNG6VIGfUP
+VsfyX5BMV7iNP5aHpRhPeFOW2ZQNWiaTgj6zNLz/Fjs1ln7T3qb46WSwt+ScIDcp
+9Wm5J4qmkfFGaSopg3owFYSV1iHvQhy8XJjAw0Y6vLtaqM03glt66HgTwLX8x//T
+AKNCd0Jj47SKmlZlBD1te4SSrzylJiRL4hYn0Gs0VE8y5hF5c0GCS/+rbQwPTUlC
+jVlxiBvPCVwzYyjeRNQQuOE9MFv4MvLJ/R4W7rUyf+G3wuOZySwZnHWJRwQOnwdc
+dILgdrYMWo8WDuCSbTez0iBoHxgVSgb7D4x+gjROx2ECgYEA52+tBZhoqpiNQQNT
+REH8ngSz5bVAwp9mvUQQb/rp4J+X3VptCrcg8krXOAFICHybKuZq0KFG/qZW7Aaz
+eeHyXfaNnobm6RNIMOPF/u6vFbjF+LK4+bV37tniZdTlqap5xV0iRWlFvTouERRe
+vhhx5qeUv1IVO11U4kqqSqzqk20CgYEAz3pIhDNI8y9r2GFaETjOrKkNd+HbOjeg
+4vewUHMpiATey/uWHLUYaRUPdKrjhJytNYaMtmfNSLnZGOkwGaZ9nPQ3tz2hkwAx
+smya0LUeZLZwbV65xlQ/VTwE7vYQhcUaN9LXu+a3JHS7iYZa0nyDcWZjqUuum3AI
+SeML7kthrukCgYAEpM4A9bzr52G2Mz3heb164jdF3awt+4rRM2NtC8jTlAA1FdJo
+S6JimjPVUNlEKlPmuXbdNs843teRptTFFk6Jqh/PVX+en59sM7XOVrW2pt16DwP9
+JrIAXejYCDyPefc1iZfdcq5OjLNN7m20PMNUUHqAmEIKzeWdIMhn9S5DxQKBgAyg
+EFGbHVFPDWz5X5W0sz7mep9U6xY71Fp7YAtFNr3ELhqTkKrmijm6wloDHB0xu4iK
+S32+C0vlo0RUzEyDSRmH8uv/oBll5aBJ45HXs6XFREojfYKIFeKF6HbyGkdJmzLS
+bbZNb8+UGuVfe59bXFRGOsJOjK2Av8BfRJaXl7YhAoGAbGO2av1IdTHz9eQPVX18
+muU/i6UvsIl4Rb9poJTuwO/I74pJHctwggnLVaj8I/xLzbO3D87CHV49NOLLtn1D
+VZUoodANrh7qfQAIbB5csSg2rQaID6kAQl1w4Os/3jwiRAmYkQ890wL+q0S68xG+
+V9n4HmUO0QV1gsutC1zq+D0=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/server_ocsp.pem.digest.sha1 b/jstests/libs/ocsp/server_ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..1afca61e9e0
--- /dev/null
+++ b/jstests/libs/ocsp/server_ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+08FBF18FA233B42A1591279E979CFDD9DFB4977F \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_ocsp.pem.digest.sha256 b/jstests/libs/ocsp/server_ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..219b2357116
--- /dev/null
+++ b/jstests/libs/ocsp/server_ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+5A5D30BEEF694D55BD4BD0FA5E699382C2B6DFBEF1EAF186146698EF2E1359D6 \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_ocsp_mustStaple.pem b/jstests/libs/ocsp/server_ocsp_mustStaple.pem
index 0be077f7853..e277b30c9e0 100644
--- a/jstests/libs/ocsp/server_ocsp_mustStaple.pem
+++ b/jstests/libs/ocsp/server_ocsp_mustStaple.pem
@@ -1,52 +1,52 @@
-----BEGIN CERTIFICATE-----
-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
+MIIEFzCCAv+gAwIBAgIEL05J0DANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-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
+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
-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
+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
-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
+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
-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
+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
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC496gVaJeZ9IL8
-1B7BBJbkDXfsg8dc6Vhq7ESv2U3B458Zoc8CM2AhZVm0c4JZKKGJxlZGvuAVIb7P
-o/Lu+4yt84QpAkV4kLicXCddH+7WhYPhcCXPYX94kFl4/+fBmaDM3SwHO3tUprkD
-OCYUyEkbS0iKBJSIfVcxte9BOPFxbpj038YRvbmhOr2z8ws2vv/g/AGd2H1fEdhF
-JAgMMgIpG+yaWN54RNNN7ZXSSqqGO+TX771pfcwi0eaJ1dTIOJlmhQB5aDGuKQSJ
-KrDqABaLo6HrhXqrHAePiUDeDRNm8KA4qh1dJSJCVwTIVRADrIJbFpT5w7n892P9
-iSsaUslBAgMBAAECggEAchqtQQ+1vg69o5SDqFTZdLPuUCR3HxUAK223bbejJUHz
-Cw/rsRLacZ+hOBWtyqyrAmAtJxVnDQI1QMiF+/GINmMsG1RAYQD+Mc8TpXomj4Xr
-9m2FlaoyxcBewas0YBUSwm6KU6fZDD6Rka/YpidsGf9WL3Zl3tFbsdnnT5f+MheY
-eFPayE7NeNzK/ey07MUAVscFvDfqOeKzYR4ml1WXTSND1D9IN0jEh9Am04ji8XX2
-zX98rEtD9JkJatGz6SusUTVmUsKN7S+QNHlE8DZW1FfcV/l3eMVzEURTWcXjqY/0
-JyBxz+jeeEPykHknd+18r/P9uZSE7BEzlYgQqSNawQKBgQDhE7vdtO7Ec9eWIs3P
-Jez47aAFCh/BLs85heKmcVxkqz40PZVplzc3HNhAcZre3CuSMcT0+jXwRtRQ0+sG
-YOZoeubNEi56QUcKdUen9MywGTsuSJI58nTElYUjxH3f6jlE3MXpJZ4msdyDamaP
-WwJdqvXIihFqnbjGRVL5jcP/qQKBgQDSYTYF6DMGbZLzOKzoKznHGWgT4kk7BYGl
-5azWsdm1Qfk+93ZI0ryFx18Cd6Eyc25b6PZlgOc+A49RVm9VDmb1DrzOhpUt3mHe
-so9Fgi7XP61igl9wp1koBdEMPKM7q/S/jrJBwK6tFwbEvNhY0rqdkjRnnpjFAYDq
-TtD5UZ5b2QKBgCXdHQCaHIS9/CmMp1TOy4PA7eeLIXZtOn0x0cQwU9u3lxpQtd7y
-il5iItsMgYI2RbotVzXjFcnbEIKcc/A5wukWq9cZ1OnKK3pN6oUNwJVrWTJbEQZg
-jFY51REEUCyoCYRVI5IqOuXFjBQrhR9erxI03W4kE/P8noX0SZYjzDIpAoGBAKN2
-2S0Z0JvMBARsIx16iLhE63OXveLYUnZ+0R84rbqC+pGMYiIPbGBeG1qlbWDwA+3y
-Q5F26TZsOa2vhW4HdMQwoU+vjrZHNrB8+Ym+r3qchbInLtUvkrzgWCAz9XlmERPO
-Yn9oodDoNWAkg83wXwQUGBfzSSy6EFr+xq0SWANxAoGBAN/H+u2KCaj+kmRsHe02
-XOrOJbJIwB01YLN09MiEPmzGZYSs048bRZWIfHlafrekMQlWDIwFWdGLwQZLX9F/
-+BOzfqZWAwxFloTMtQeSMuhQetC5XKnIaxX+QEN8aodUExPQHNmQcgub3Hfhaabd
-6G7HRtb1pM+U8NQABd9MSLvj
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDKUbaM1TrAvHpI
+Vi/qLnAgMelQlWu1sLh2kPnaXyIyfLij3KcEH2xeAdDlUfR3fVX10AawYOQix5hk
+OgD4Th8bBy4zm9q61e8aeBLHbMjXFcI4yXn7S+sBrUZzOfeKTHkAtjfmXn7zS9NM
+MYYQG9KEzwSlXdvktQyI2EzitrM+2gRY2f9abMndScE/1Y4EuNSWvAz0ln8NSQoK
+sxB/qGkSkbtwmgXrmxP79NGs93x9zDp4UIP9goYkRsmoKxdYrrwbibyYog7tMTpj
+pUaEce1kDiYliZbyyKGX1M0LfDnEwlcwaDD7zMHgMwmKt4dDyi4yUey3LTFDxC4+
+0FQDrGMBAgMBAAECggEAMJNT6BZeB9544ZtH38sMgr5ZDU8C0FnAwD7orkR/Gm4V
+iso0k2nUA/IdrKFzt6ixFda/dGOfAra3YQEIMJXZJA0iS6PU7VzmDo3bvGPjCLkh
+q668CdjdcMagjpPRWjQoLUKSw03W3yVKcxXE4WM8tURbEjUp0YyimMyOETTabnFO
+LAkWun3UtQBYlvs8TdQkowYZsOXjEqVac2aynaOSWBhx1g63q6pwvs4AtLDfBGcN
+7QeL3xe0vvrEZh5hAV73NatZI5Xx8jzv8C47XgPlsLTzsFJYOgKAPyPNKzeV/lnL
+6rtQer8rbQwABOI1lMsM1eRmYm/FFZZB5d2srtvtnQKBgQD59/y3ZG7mDh44PUyJ
+OtFk7LV3m8vS07hv/6ofLycYiT2k8T6gJF9WdsccFUhUgmLP1MC6VFLWEGWBFY7J
+6FjEkyX50QKNVnq/p8j/kHSycJW1C3lMtUsukJAczCxhAKKG/tJkWNV4PSOLBiCD
++qd3aja5ECiMvucTVTbRLdX+pwKBgQDPM2c71KmtCF9kgx2aYqaYRSB021QVyeq3
+eoLIzEvizehebtF4MGW5oLoS73b/rZwsBDHRImq7eK1gs8FMF68ZDcYhD/jVSsj9
+v/lPKkas6Kg4AgAkS0ZS/+nqhjOyeATmMps63HfMHVGQPL1/sr8mopnvtrtfbtyg
+G8xDS1uuFwKBgBj/fdxxRM3o94i0SKUopqwrJ/KwN+/7kGRS8xZvRr+jafDG13Z4
+bLhe5Iagcj1RVMRoCGYZ7LbPqPcByufSPp5aAOA80L6FuXzVMLquHZ2CuNYEMbtE
+HiKn/mGC4aVJxPcvIKc8YwzFQHq0wCeyt3CvxI05WnTI2p8KVJMSvGXdAoGAKWAr
+akAyTdJRMkIYhD7U461SKOOva9ZxX4hAW5aoRLc3grwAak7H0YSuA5/8FFx3xjZk
+OE32IE+d16StoeNM3OTqPqnw167iagGO6GcZy+d9yAlmO9koRuTBskpwQmBDIjDS
+3LMv3Pux0OrAMKLiFvX7ZWoJCqqZtgM3C+0ddqsCgYEA6pSgc3sHam8lXftWq9zq
+7YBhHmjfeGcDslz6NTekW3IrDrEcMpwZLqFxkXOMlM/bbLSGsz46xW8Nt8uJLN7h
++q6RtUmgtlUUznTAsBD2aZNm7e5TUgWDK7VyTeDbd8ld7GLBInVEbplTfVAJ3fHC
+REyG1gCUF350GsgxXdsXmg0=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/server_ocsp_mustStaple.pem.digest.sha1 b/jstests/libs/ocsp/server_ocsp_mustStaple.pem.digest.sha1
new file mode 100644
index 00000000000..b366ff279f9
--- /dev/null
+++ b/jstests/libs/ocsp/server_ocsp_mustStaple.pem.digest.sha1
@@ -0,0 +1 @@
+4B0BF83D70980E620C8D195C6979D3D6BE8323E7 \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_ocsp_mustStaple.pem.digest.sha256 b/jstests/libs/ocsp/server_ocsp_mustStaple.pem.digest.sha256
new file mode 100644
index 00000000000..edb2eb6b5c0
--- /dev/null
+++ b/jstests/libs/ocsp/server_ocsp_mustStaple.pem.digest.sha256
@@ -0,0 +1 @@
+BC9FAEBBDE885879057893157EDDB79EA405369F3E1A98AD69EC20CAB996C764 \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_ocsp_revoked.pem b/jstests/libs/ocsp/server_ocsp_revoked.pem
index 1b41d953516..96c6e71db49 100644
--- a/jstests/libs/ocsp/server_ocsp_revoked.pem
+++ b/jstests/libs/ocsp/server_ocsp_revoked.pem
@@ -1,52 +1,52 @@
-----BEGIN CERTIFICATE-----
-MIIEBDCCAuygAwIBAgIEUS4NmTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIIEBDCCAuygAwIBAgIETZmtxDANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjAwMzIzMjIxMzA5WhcNNDAwMzI1MjIxMzA5WjBiMRAwDgYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjBiMRAwDgYD
VQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxEjAQBgNVBAMMCWxvY2FsaG9z
dDELMAkGA1UEBhMCVVMxCzAJBgNVBAgMAk5ZMQ8wDQYDVQQHDAZPQ1NQLTEwggEi
-MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCwQ162xzYf6pikHhxlREZAWZbz
-nG9TFAmx7OXz7vm2NNXbr0yANpQ5Z63JexfbXvh/yR/PgGWKgPpKFghNi9SFTy10
-fg4iNp4camb095+48syhCNFllOrjMT/AUW0y0sPkCkgtG7BL8fxk+k5+sbjQpj5R
-HYHOOtPml+oL2J7k4SdjsbrXtHFwEoniw1a+tkY95cEEYVFoGz2iBqWN4LdsF1Fv
-TVBklxFlouRy9GXu/m/AGNf6n/roXecO4TH3aMdmbacHaIIgcc+K/AR4FRpuqKMO
-DpTW177tRapp7wyoQnLn1O+X2YwA5AsMMW/ow2Pc21o7NeLAFuv7WDFCRSnnAgMB
+MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDxzlF6pDVDoDTxU9mhC1nYgC7y
+NkQ2gozEValQXwF0ck4F4qMQVkrz4vFSEG5HPAykK5Yv6MQ6RcyEB1w5F+FrI6oj
+PexL6Pr/iQ8kWkNAPqIPZRXBlddri1butlDCTLPHXsU7bqdjFCAnlBKCRJJ4WqYF
+kfvtPAfZkN6s+0C4SXHi5+xY5d7NzDGzzWnhhcCsfOZJu6jpFRqoAV5CFvSsMvJF
+r51W8e9kf6sG1zEU/iel5rz3CJNPhPcARcPQ2+pZnRAMOKwmloe90le6QxYA/3tP
+DbxFn3lDZ4lBXB/t5M72LXQXiJIcorUV5cxoQ2W1jClzg6HUSfxSbCXoZz5HAgMB
AAGjga8wgawwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
-BQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBQMiLcLIeDT5NBUOFbCPhyuymS0ODA4
+BQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBQnIxUeRtcliLQ8WYOTMPNUOfKVhzA4
BggrBgEFBQcBAQQsMCowKAYIKwYBBQUHMAGGHGh0dHA6Ly9sb2NhbGhvc3Q6ODEw
MC9zdGF0dXMwGgYDVR0RBBMwEYIJbG9jYWxob3N0hwR/AAABMA0GCSqGSIb3DQEB
-CwUAA4IBAQBUZ6Y5b3dJ5aePPjB0ukvr6OuubRcs5PtXnHtnUB2oboNr30q03OzG
-KX8kPzKMqn7NuEWPPvLXqHXW+mpcc0SVssSYKAQa/XSTq46hY+7S5J/2yezJYYDF
-RWMfPAteBhJjbJtkJU1A3u/WRmavytL6RH+tOiNOsHJwNrgh8igtepWZO6zDFVKw
-2rvWbTw5B34/sZEBgKDK0uWcg4hrbJ2WB9Z8JUx2+linsYtLSvOPoxVX62ffpWAy
-MkWh7utPn9NWGz66saisDGIEdjPoyewt1vXdmifb9pEcdhfuBSo1cWxk87GqW69T
-2lFdiHEMtjcyLOUJHSHVi9h+njE1OSdl
+CwUAA4IBAQC02XPR8svJ7M3F7pMrd2TWjdo5q6r6VuQ255k76hUWnyhFMO+rJAfE
+0qOwvTxSC3BTn7uopYgmtZ16IA2kXW99kM0khSOWS2rvrKwaXNH5N4m5vpJvvnYn
+4tRy+VN75HdUxIjGFPDv590yrc2rolGK/4BENErK+uQL1s64+6BGZHhxu67UQIni
+P2XtpNl7FOqqKTN1C36LNPz2WT+rNY6BArKeKNPrChkjjf05XDBazXHK0mWBL5Fb
+S4lw/5D+RuyC7IUxn3H8EKWXRhm8m2+PbtXjcTmXDf8MmGdmq5VcRPIKhMjrxX/T
+xZ7XdGSu/Q8KvsO3taacxoh4uqvX8kNu
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCwQ162xzYf6pik
-HhxlREZAWZbznG9TFAmx7OXz7vm2NNXbr0yANpQ5Z63JexfbXvh/yR/PgGWKgPpK
-FghNi9SFTy10fg4iNp4camb095+48syhCNFllOrjMT/AUW0y0sPkCkgtG7BL8fxk
-+k5+sbjQpj5RHYHOOtPml+oL2J7k4SdjsbrXtHFwEoniw1a+tkY95cEEYVFoGz2i
-BqWN4LdsF1FvTVBklxFlouRy9GXu/m/AGNf6n/roXecO4TH3aMdmbacHaIIgcc+K
-/AR4FRpuqKMODpTW177tRapp7wyoQnLn1O+X2YwA5AsMMW/ow2Pc21o7NeLAFuv7
-WDFCRSnnAgMBAAECggEAOxor7Q+5N1R7YDR0gwQ0pikkM4VV0r6aTZ3IsVWFR7JJ
-r0MFXMxwQRthq3hp1HXwzzBKSVKdOabrxeHDYPUtCpI1BKWr6Y70z0RiR2usk+Bd
-+vUw+WXIqOt/m+XxvqPraVCFSRLKt3xpjBZeMZ84AEZuCNbjCpqxKNXxdY1qIgZK
-U4RD9GWLlKHevJ6o+JohdvEtpw+3tXhpvyQVSMkwm+fXHMQP59Ckk/GBNCgSpv/x
-es7YTAQk+2WEFhy9pDPgyhGLxAMWZgi0cJ5LwtDe0ub30Tq/ZJL47U0XkOipXdnr
-8npRq+oFzaZgq7lR3gpzKkVXGR7aljBNWldCpfZvoQKBgQDkNTewvAx6TJ9okmZC
-GzwbhATZ0lqRnlzmuSfzxs91nh9AuaRt4X9Q6pvntYXS0JksRfrXMdnKrXfWSpJX
-8v3FIxtiA9zkpDi+l/GQVSRSNPUACIMX4zCQwys9FnuioM67O/XZ2hcUrnVR/w0j
-kJzCSORqdcR2uD9RP2WvKeDzEQKBgQDFuq825J4ZMyjn/f8Mv64BwOtGpkMD5q4B
-FKC2rwFluBvvJtVj3uWbf3b/GN3Oq6/HzshglKAbGmD8iSo9Y5bVsTVJjPo5LkYz
-kXeDR5gw7ErjCK8GFk5thgG4RJJXNYLdQo5RBfqkzkz1ZSSbGmSF6dbuTEylyfL8
-gHUQvfdddwKBgH10NBVYi5OAI/Ic6VJWHokR3ojQdzGuWWwNRcVh+hKyxoOSiq5N
-VOxqzSJoTBVEz6/jGK7MnOoqysJnZGQtFQ0W66rKbNjU3s0IQqgR5lG7AyTtiQPM
-xZoPcOm4Pmd896k+oT0OA7o+3gghqltu2H6GC+vqqgKJ72T+8SuGXj/BAoGASwyn
-spMluvTjIuMSaplah4ndA2zZ5OIqy3gz5AMa6avu1mAMAKM6zUGdPggHMImT56gC
-AD6JYqApjdDWOoTRXHyteCRNWWTJ+orNLQQArRkS94d1Pz86N3H0tyc30GgcKrU3
-ZWN6lhFDvqTMNx7WZsmx7bMCKK81TkfHpzojaNMCgYB/dk8/7W8MqrahvsV+xw/t
-D32xS19iTNtYfOmqQLG57suVrgP+ChFk2fyRcvdxw5hPZ76ku+R2JzTHZFRDBTpY
-/oTcB4McGElar/C/Ma5iOb6fueP5dLNX+b2Kn5ooYL5xR7l0+pc3RBNG6gK2NqtL
-VipKPVOfuFBH0hyXEUls7w==
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDxzlF6pDVDoDTx
+U9mhC1nYgC7yNkQ2gozEValQXwF0ck4F4qMQVkrz4vFSEG5HPAykK5Yv6MQ6RcyE
+B1w5F+FrI6ojPexL6Pr/iQ8kWkNAPqIPZRXBlddri1butlDCTLPHXsU7bqdjFCAn
+lBKCRJJ4WqYFkfvtPAfZkN6s+0C4SXHi5+xY5d7NzDGzzWnhhcCsfOZJu6jpFRqo
+AV5CFvSsMvJFr51W8e9kf6sG1zEU/iel5rz3CJNPhPcARcPQ2+pZnRAMOKwmloe9
+0le6QxYA/3tPDbxFn3lDZ4lBXB/t5M72LXQXiJIcorUV5cxoQ2W1jClzg6HUSfxS
+bCXoZz5HAgMBAAECggEBAK+gGq3o9obXpZxiOn8tr2QANhjWMVUmHPe8/+zQFE5v
+dxvvMGB9TJM3Ee9435/9jXDv93V0qpFogNKkRedx4NfgX4KZRzcbULKo6caNiKrw
+0uQ7l0Gzg3MpEUrwQFffPfRgcQBprknYJEKa2ZakF34y2MLS9RepsknjXthk5Ozz
+gcg6jqa7JBl/Cu+d1CUetUDcz/Xizt5CCW0yZ3Qt+UgmyNRNgIuSAUFkoJRFwiBf
+8/cZ5fkhatck/vsdxwGzvP/oTR9P0AuMXUEBSj+KNMbiuVfeAg84T5Q533scU300
+lZCfQGsNDmTTTiTNqgqdP0d/6XgbQFhh+gBdhm8bHoECgYEA+d8UnCaG967ixP1x
+IIexVjABzMY5fdXjqJxmhJstU+jKZ7gATq6Pl7Qh8RgOfdXdJnD+17UtqAip8bvF
+dKdVYpHZ10nwvChQ6BnALSDGAqsfU3p8U0UEh1XLtMmPPaNPsuRtENRlHlQcrp4N
+pr7u/kWrDsNNJpExrq48rMF1m00CgYEA97yYavOWWNq+NBkvbxx14Ha0UZqkIfKp
+RbvFw6x6CMPsn5OAjklI44CpnLa7J+XiKiD0IWPkMO57jsaKc6Z/vUi5QX6/dwgD
+1W/CmGU7ZVXr23JYTitnECaF9AWMRIJ4yL6Z1OEkAPtexTLEtLgBT+tzupzpgchJ
+2wJ0yxcaLeMCgYEAiGYFOyQw4v3dnkj3Oxm3bWPxZ5YBhjZ++ui9cb+/o6Fc8/dW
+e50Al4BmUtSd/IUFHtnp01h8ntBz7JhitkYt7wvNDZ+4QQ4E9F4yMLBGRuigxhID
+0fTH/xSPiZXJko0WkYHuI5S9yiuCKLPwochyb+0Z7oogEGCL7V4BkxBcIbUCgYEA
+ggJWVqJYv26kLMEe1IeyEMca4ExwYGRxkuf05Dhqnpj7X89PwtwQxVurJ1P6KfkJ
+VKSQmclLYqZ07zugQwsYtGQq3IVAw53QLT2GeOV/YzHRIgwC7Zr3blFZMPOMZhO2
+gVsNbdttQpqoZIK9Gj4Kaj+dL0zTekl7ANVsJ3yLP5MCgYAuES4K0f1Gob9yT2VN
+OvvwoMxYlkPKrziLmJFtDGp5vl4VzTsnFfbw/ykccG6UXt5EWpWW0pI7olRp7cWD
+2nfCek9OkkMRl5KoQMhG+UPk8i0JS7+wEW1NirLwXEEwL/VDdwoj/llA7MWkr5Ug
+yxWrUGrJoSqX/nlkiSrarBkH/w==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/server_ocsp_revoked.pem.digest.sha1 b/jstests/libs/ocsp/server_ocsp_revoked.pem.digest.sha1
new file mode 100644
index 00000000000..a16c01face3
--- /dev/null
+++ b/jstests/libs/ocsp/server_ocsp_revoked.pem.digest.sha1
@@ -0,0 +1 @@
+5DDD9151B27748CE669027BE752EBD7FEBF18392 \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_ocsp_revoked.pem.digest.sha256 b/jstests/libs/ocsp/server_ocsp_revoked.pem.digest.sha256
new file mode 100644
index 00000000000..7fcefa06e76
--- /dev/null
+++ b/jstests/libs/ocsp/server_ocsp_revoked.pem.digest.sha256
@@ -0,0 +1 @@
+FC98F8A109CC247A33B8194C6482D93DF966983C5F6269783F2D3EEEBDC3EFD7 \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem b/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem
index 2ddad25ca14..dbcd621d386 100644
--- a/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem
+++ b/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem
@@ -1,53 +1,53 @@
-----BEGIN CERTIFICATE-----
-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
+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
-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
+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
-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
+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
-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
+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
-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
-M+4fGvEtyzoRpDDbCuWrvZ1Xgg==
+AQEA0PM+cliksO+QdC6fY3kCWIPX+rcKO0aqkw0ib2Tt55uHZR1xAiX5Go1cR0Xj
+etgzLl9zKZhx1ybkLgnAo2psPx0PIZc0hoSRSJMm5v06jKl9zuQ1PU81HHAQmnbh
++Ut54tVXsl3e2Si/0YLVKQCVFXcn7cqZqUTu5mcaRSlLm5pqAj4n95C+STwYUEuc
+FZaZ5mYNqu2KBqZ3v5QVE7/qAPf3CVCmhi0bKJ8i1vssg8oIqqVXK3nrnhEo0dFU
+QaOYMPWfntVwX3EIvVY8gMyFvzkxSz8dfA3ep/OxQoRECSq41GDbfIQMty1pnA3B
+jOO8x5hcv2ibfukDCLIQkKeP6g==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDG1MtJvxtfMiDU
-ICDPOMbb+bkYiyifWHj8DVqMRONn12kA7HatlD/0oJVdIkMZOomzhwHQ2yJ/g1Sa
-ebLm98jik8W0iQNms8lkE/0YZIToMVsacD7/z9pklBsebMpULxdqI5sj+1rWjn3R
-gvSQSw5J8kY2W4Yk/eI7VkUKJlYZOKRBwel3/DURJXmrqCo7Ipzd4rfqTar4j0Qd
-fDW6kMj/H6nShrCy/PqglKqJBC2Xzw6IPE/mHCAXQQM4VJZvWesJfdWll3gcsBTr
-g0KSaX509zBxth2dL6GJ57JEPfNdMUphc0gNGHDgB6z2cL17d9LDZ9XHrUNJDNM/
-sFSzcr5hAgMBAAECggEBAJLo0ZeYu7m3ySfS4UsbMVuBhTDMSWSLM0FRAJFZqQil
-0bDcBsg0HJk8OYBJ+3fdl7btTvspnrDGsbE9sGEVvfkjpFXDUp8Ewg3O8xed1dHV
-/fFn9DSBOGVORUdSrKBM9yj2S//nDXQwbmhqMReYTWN3vkcVkuUsLYcYNATO1Jjm
-wnIMLo5Ks6YTXP1XFL68T4aYHB1Pw4TpEPt5EaHCp8NUb8jgVMIi82LZGMQFTsGw
-wiJ+47lkC1eG/rW9jC6LxRnVjQzZEMXMSxt0u1DewkrY0gjhCZ45zxAQs6y/pwkg
-1VugHsN1mZgtmDP+fwwRJoIOkcW6imvWirNd6QEqVNECgYEA6IGqlRojAIpggZ/b
-MzCjYnB3ovoLhPBZbRrZf9qKBRlHjohel64EGXGBRvO/oLoLGgV86dgxdjpam8g1
-x0a1a57mE8nepV/KsLuaBeXC0Xtmjj5mkLqcqpJePLvpvDpkhqi+Ma8vye1YRDJ3
-+D2h/OBEvDcVQUOR7TkOmhShpQUCgYEA2uwJWSSv036mHtTKrOaSwY6dnTEIP8D5
-P8OngqBV45+oAzJCi0C+4vYXuIu0I4RwGl4lu6Uv/sv0R88MOgpVe+GzHz8bWq/t
-ZV9pz9Pnnf/l3KA2RZN4uEROl7Qjc5tcBavU5Ulz1KcvJ/Z46meFLYpV07sLcBg+
-MCF0Fijycq0CgYAl0noSWTcabmg2je+VizL433zGuVBIZuTVN8nr33wWSj92sz5Y
-BEnMbcdu6FXi6oDF0eC5FZ8uMV3t+4qsCReYEzgwPeWHF2ccitgKX47qjt1nBEWh
-A4pawQatcJAcO4+AzFBsOqhWe9Kg/WjArB3+yejEiV1eyYQih+aVMAf/lQKBgFU0
-VrMWP0R+X2NSiItgti+VNSzv33kIvzmdCb4ibytHgVm1HwcZrPGivDq8TOEh84uf
-punwccymTq4AHI8eZITxpAh+REQ4gpnY19Lmc5gf97O1u0m7CtoU483Rc5bUGa2v
-Yg3XV7ilVQoluIvqvH+r/pmIi/wVw2ZyLr9NMoeFAoGAT1fUe5aUUsp7tDubEdLo
-CnI9VrMBMM5pgzXLt1nnLUNAvNF260XOTkDb/1H1Q5op7LM13EK0sTnh37hXPEhq
-dZmln20VKN5jzhAbJC6JTT8of3cOXIS3McAkf291rC4EMEuDSAev95GSdhHzGF5s
-e+wYduYG/HT4/5UyP3Cs8yA=
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCz3VEn9nCoe6Kb
+aAaSCwMVrxaRoQaPTvSDE/SxbXk34i+w1fIfHjcpPI3sHXXuGBENL+cpAdTJfyDT
+jh0G+YCaY6rJd+xcDqNNdRei9zH8gxKXHCDH0PWauE07FKuxQUTaxv7khun1/85E
+vltTp0TqIyokyV1RBytWuUTiiKrrLxP3KQCs/3NOlx10BE9NtSg4YO6GhVL9yO82
+AV1yxHQvgtfqvvAonTcfkv2TjcbFePKO2de1IWMbthUDBZT8WhemqeCfeiSo0iBI
+tmgIAzToT5MsJqkmM6nXXQeAYuhCaSu9+mMpOZ+GxVUZHhaq5A6rOvgEtlUH2o/0
+lOrC4r31AgMBAAECggEAKmIFZKhSpbD0gTBDFBjaMjre05QhKpXNUjHaoBCO1tdK
+q53OfvysvN/TBYdvqZosMnJOQ0B2NsDpKFC9kE4surSvoufKX2rnmjH0Tud29Oyh
+7c+n/c3Egh/ZuwlE5/DcW702hP0xllEf9tzwQkcRGycMIDz+60AIO1hO3h6cP+yj
+ko174JxUGb3DQpEjbkUQ8kWYSAA9adpepX9Qtk3u/e4OZdCj+YJ/rGmvCUqOHHFO
+ZvdYADVNNHvaZ1jlXufr9C2C/8eM6j7vkRZI4e0UznIqQGn8O45H27wgnMy4P6HZ
+zBzoTAla/f9QcUP1TuAy/yzmSFvhcn8Qic9hcfkmQQKBgQDoRSdQB/bf3p1cYNE6
+Yu0qSA+a8PFQKtmJX5lK5cn6N14a4zhSUBubiMkv632ygq2P7KtsALI/ehLr+lxE
+0N7a7X+ESuhtMry3JKAoEomZGupfbdi0OU6PgapWC21w6Y6cSfsQOtqWvJgfa2gW
+6KLnwFlWb3hhCmXm/namIJ0rBQKBgQDGPYj38O/DyqeQoZtRiGNQ0Y7mtnEgPyup
+8Dv5U6CoJ8TI5pYnHjz9/fmJtRljiFhThvuHlA3XZZxZVg4KTPqVsN6EfedCbi3I
+Og3URUcaRtsrcfrLmzYKvEb8b66McaKFzkwzom/1hXWgsM3gjAF/hA4uzIYdyo44
+p1hiFeMaMQKBgQDXozw4ROyiMt8NYKVe+3EMDBLQ2lhvARktPJ/otSWrM7Qeak1j
+vhOjdn6yCoOMM15HfIY5ovvZis/+XVVEXlZIEq6Md68Jkk06CrrV+T/d8Ose5bCG
+wZ16BfvKHpngdjV8TALWso013KmuodzlR93WIvHOGXc9QJYSurQUz7qasQKBgBrK
+jC0+AZlLVRQF0zDUpt9wQsjJVUaPYv5HekN62tZ+8WhZSWel/YYyAbxrni/GaHF5
+Z5ruFmTK1bN5HtKjjqYWTixHu65Np6BMwDu01SQm+U3IzKUhp88RnOJW0ZcncFh3
+BfNge5MJ41jBLEGxii5KkYQfnex+yHO9ogM3hAaxAoGBAM8tFeQID9C71X1Kh37+
+SPypUqfUUIsD5zdimOVmfrDxUmzJ8u6BRLIv+nQ1CYxaGbIvv9nTjo8zPmf4QBqF
+XA7L0jr/ahUGtDh9eH4HdzReAMcF3T+a0pi423OjW1l3jiDYZtcwznA2C/0DYKGv
+s2/1z/Pi3w7kVEJsWfMJgMUy
-----END PRIVATE KEY-----
diff --git a/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem.digest.sha1 b/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem.digest.sha1
new file mode 100644
index 00000000000..cacb2b7e849
--- /dev/null
+++ b/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem.digest.sha1
@@ -0,0 +1 @@
+0FD31772F5F6802195A98A4F06A4F347047BC7EA \ No newline at end of file
diff --git a/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem.digest.sha256 b/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem.digest.sha256
new file mode 100644
index 00000000000..f7c96ead394
--- /dev/null
+++ b/jstests/libs/ocsp/server_signed_by_intermediate_ca_ocsp.pem.digest.sha256
@@ -0,0 +1 @@
+342CA437B1471B4A8D4231604B4D42435E0C0E4E738B498F6FDDEE7F4151F7C4 \ No newline at end of file
diff --git a/jstests/libs/password_protected.pem b/jstests/libs/password_protected.pem
index 80983c8a142..1a308695237 100644
--- a/jstests/libs/password_protected.pem
+++ b/jstests/libs/password_protected.pem
@@ -2,59 +2,60 @@
# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml password_protected.pem
#
# Server cerificate using an encrypted private key.
+
-----BEGIN CERTIFICATE-----
-MIIEWDCCA0ACBH5uAOowDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MVoXDTM5MDkyNzIzMjc0MVowbDELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxDzANBgNVBAMMBnNlcnZl
-cjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK72bcmk7pgP3Ulv7bXe
-cIbZIMEwC3nrGxfPJLZ2VyfvK8Eg6ODPmE0XZMvn59YwGoFxNd1wapm62edeRI4F
-juCUK0mreBUeCY+ElUYeY4WQ9qqZZ3eQ6+Es7qUShoSAjP3rdQErK6F+pGJxGpIh
-bOfTeRSF43yB/xWrovrCvIhfO5ASKHouJOV4cdbcBhPsvqmVFTKmVnqs9Hal5Ynq
-gfSqmN9bbPqkkud8njvkdYfH7PbKKvzcV9WOJymv11/SCpBb/b1dz0rf9XAwCtUw
-FdXa4/xzskG4rLemLFYLYJgTihQi9++/cdIP1mvvJ/NoG6po88l6aNVBWUK7pzDR
-Q4MCAwEAAaOB/jCB+zAJBgNVHRMEAjAAMAsGA1UdDwQEAwIFoDATBgNVHSUEDDAK
-BggrBgEFBQcDATAdBgNVHQ4EFgQUO6ZcmtKwgQj2Fgtvjy/XC9aVBtEwgYsGA1Ud
-IwSBgzCBgKF4pHYwdDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYw
-FAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQL
-DAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0IENBggQZkSMSMB8GA1UdEQQY
-MBaCCWxvY2FsaG9zdIIJMTI3LjAuMC4xMA0GCSqGSIb3DQEBCwUAA4IBAQAI3dSL
-9iC+VtkI73hxxDPHG18pJ1hhxbQQ6Adyb+pCthjTlOklMXw1ioZJgIxpz83noa8p
-42ES/WFQcYn/GSiDVRR4Y88CndZb307rMCPWa0YlVk3WCQea+pzUBvtmG83lJ7hu
-oNJav6zbWjdPfeBdwBw0/pqik34l8ddAEbpAhZS4nAlEChpv2FYmvi/z0kXNXjXe
-6ha1FF1qtB1/ANTjUmiU1BaXRUpmmzRfPwvwJEhDMI6X6yxBDajddMPpUm91/kjs
-R24fqIyWH1e1W4ptHrIauXE91unFfBzrQdTAoSYjBmwjl8opzfTasHPQpZmVbkQc
-o3gjOl92+TCy4chV
+MIIEWDCCA0CgAwIBAgIEGQdcfTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjBsMQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEPMA0GA1UEAwwG
+c2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4Y2yTK4QaCf/
+zGj35W1sCoGoBYtyt7iJthVd86WQEQXK9Efra8phbxlpqEBaf/EvB/hwN8073eCL
+NQlhm5kupVfY1hIezlJzrAJp1u1A/m6znkqTs4cHp5+Ln/MkTq3CYTUwy4Z1mM0T
+sLmTKBlcdVqC3gvux/iL6RjRPmbPXuHgN3ORagk11oSKEsIy8ShGMFZMdtT1pnqr
+xESx3JGIRr+CPoctsDsiOkJmHauqJDqVliF5pjdr2N0T//JOtKzVCY0hf+A0pJ3z
+N0zIiP42XANZCo2aikwOmnnSRzIUJT52tp/FIRzFbuenRF5sJD++zUp15H/30FKA
+INAZiwWO0QIDAQABo4H5MIH2MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMBMGA1Ud
+JQQMMAoGCCsGAQUFBwMBMB0GA1UdDgQWBBSeFd//+k2VDH02TPQzJmfOqMv4sjCB
+iwYDVR0jBIGDMIGAoXikdjB0MQswCQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlv
+cmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzAN
+BgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVsIFRlc3QgQ0GCBHvUrJMwGgYD
+VR0RBBMwEYIJbG9jYWxob3N0hwR/AAABMA0GCSqGSIb3DQEBCwUAA4IBAQBOLNRO
+G1L6FxiqreB3MBafbW7Q2RsZdIQRqZilec5Kxf+znDH2C5NiRS6vR+5e7hDSPy6m
+F2/CXbZep9Jgu/6SYFSB7x5HvHCSn41zc12UINc5N2ol8e5aHvimoWXvJiT71Wz2
+iRUNUl/DRuUnq/UglCz7iM0NDB3Ti5SgsTka6OmYyAT72sh70pqUq8X+htaSj0/B
++NIrNjRYMCBKhVo2SsRXh7XvsyUraGYoVH3y9mEVLJkyuBf6W1odXLlokzB84bJT
+QBXv9IUdDQYBK3J7Q7iVOBW0Vkfp11WfVaAhrcAC/udL5LoxeJep/hJVNNuA0qqG
+BkrzIl/Evn3SZ++/
-----END CERTIFICATE-----
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
-DEK-Info: AES-256-CBC,1F35B5067DAD37B21726C501BE3212C1
+DEK-Info: AES-256-CBC,53A39D8D01CE003985BD7AB8429591B1
-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
+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
-----END RSA PRIVATE KEY-----
diff --git a/jstests/libs/password_protected.pem.digest.sha1 b/jstests/libs/password_protected.pem.digest.sha1
new file mode 100644
index 00000000000..98c4138fb99
--- /dev/null
+++ b/jstests/libs/password_protected.pem.digest.sha1
@@ -0,0 +1 @@
+470CE33FFA8FCA3CC61F3FD2266B6E3DAB4B77D2 \ No newline at end of file
diff --git a/jstests/libs/password_protected.pem.digest.sha256 b/jstests/libs/password_protected.pem.digest.sha256
new file mode 100644
index 00000000000..02d1a0b702b
--- /dev/null
+++ b/jstests/libs/password_protected.pem.digest.sha256
@@ -0,0 +1 @@
+7A24D74A8CC11A256EA0EE08EBBFA60D0274094F7A4B36EB7B8B0061AB58F375 \ No newline at end of file
diff --git a/jstests/libs/rollover_ca.pem b/jstests/libs/rollover_ca.pem
index e7d5f3f06e7..7cb94c33ec2 100644
--- a/jstests/libs/rollover_ca.pem
+++ b/jstests/libs/rollover_ca.pem
@@ -3,53 +3,53 @@
#
# Separate CA used during rollover tests.
-----BEGIN CERTIFICATE-----
-MIIDwjCCAqoCBCfZqc4wDQYJKoZIhvcNAQELBQAwfjELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhOZXcgWW9yazEWMBQGA1UECgwNTW9u
-Z29EQiwgSW5jLjEPMA0GA1UECwwGS2VybmVsMSAwHgYDVQQDDBdLZXJuZWwgUm9s
-bG92ZXIgVGVzdCBDQTAeFw0xOTA5MjUyMzQyMjJaFw0zOTA5MjcyMzQyMjJaMH4x
-CzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwITmV3IFlv
-cmsxFjAUBgNVBAoMDU1vbmdvREIsIEluYy4xDzANBgNVBAsMBktlcm5lbDEgMB4G
-A1UEAwwXS2VybmVsIFJvbGxvdmVyIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUA
-A4IBDwAwggEKAoIBAQCZ1TfUuIBLpWEQilCQAl7V1qhb9PVzlF/tFHBLa95zjJBM
-VbJyN0hqyT/OP8DKrssKLbizUwYNp8Pq5IDzI6L2Tq64SkvSlVWS/ix8f9l3AKRW
-5thtzAdJEw2NsRqC/2dDUqvRvdGEnEUcgbuuYH3tQL5DvYQof8ra//vc1BJSj9r4
-FeFxck1RkJdx122ZUMmpTRpI2a1qZlCo/JzUiM5Lcd66q4juNiD/jMQBb/+Fgh5f
-aI5bJXgNhWKI2WP7UvkReBCN8KF7OYe9DeZN8A0+REWeXw4y9A18ErWXumtlQau9
-RPtqzpKz+f/HKUeOSNJvpBR5Mssw56BRRX2IeyppAgMBAAGjTTBLMA8GA1UdEwEB
-/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBT2TUaI0V2Zodt/68sv
-D39RaaMiizAJBgNVHSMEAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQAr1eZ7DuWIe8UW
-/mS8Yh/8eQUrj/TjOP880LlpT16vA1TGXXxq9+bWaWgOHua9eMVDCweTgLLkhbJe
-MFWItpe4eALzU8y13MX09xcQRzFAoFoTzebH8+YuqMCtuzlziIA4UFC75ZV0PNtZ
-OHQls2RRpyACY3GLdJxewN4KiyU34C5HoQcch2XrY+8ttjHKJCZBmOHLifPEFnMR
-GBqUyV6uBsIT5lzZhWbyguH5m0Ljy98FeQ5NgAwXCJb5NSeE++6dzEVMCljdJ1T8
-g3TEBeJbY7Y+26Z9ZncjcgrWY6aXiIAAqTKhKvfA2o8hLA1dWmeLr4M4a5IkU9aH
-ce6K2j6q
+MIIDxzCCAq+gAwIBAgIEMEXJYDANBgkqhkiG9w0BAQsFADB+MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxETAPBgNVBAcMCE5ldyBZb3JrMRYwFAYDVQQK
+DA1Nb25nb0RCLCBJbmMuMQ8wDQYDVQQLDAZLZXJuZWwxIDAeBgNVBAMMF0tlcm5l
+bCBSb2xsb3ZlciBUZXN0IENBMB4XDTIyMDEyNzIxNTk0N1oXDTI0MDQzMDIxNTk0
+N1owfjELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhO
+ZXcgWW9yazEWMBQGA1UECgwNTW9uZ29EQiwgSW5jLjEPMA0GA1UECwwGS2VybmVs
+MSAwHgYDVQQDDBdLZXJuZWwgUm9sbG92ZXIgVGVzdCBDQTCCASIwDQYJKoZIhvcN
+AQEBBQADggEPADCCAQoCggEBALvUQ/c9NMdWMIPv0B5lP0oKUiwAL2WvTZyzmRX9
+imZm2fYpjbYJD6jrpvYk3BP1wV7iPaVqMyy5VmsBjcdJoZQ8kbUE+LnqFSpPwZvs
+qlBfVPSPKwf4ZQYESmfrtpn1xOhOW3q8OsJHpdmFQFVOzPm87kSslVuwkyUhwLtd
+ToSwe339K4OUJV1ZVrtTQ8bMT/gEV2Gh+fScUpK47W01+he8p3lr0WDwmioyCAYS
+v1FHd6YSHB17/M1n5xsDWFillDTxMYK2Y/He7Tvfmy/d5+wOoUNWzQDIkdKlndQ2
+oy5YF0XENmPdGBY6mWaPd03/zKkhVfU0tY650OvLEhIdqmMCAwEAAaNNMEswDwYD
+VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFKMXkxW7L94J
+wfc3SWBZrL6W5EzOMAkGA1UdIwQCMAAwDQYJKoZIhvcNAQELBQADggEBAA9eK1CR
+Xijo6jowUggkJgwietTVAJfoKBJS+OKpBEbd6lQMg1BpbK3AZe/mY0L5c/MdwDut
+7UL9TWtbPiMesPZ5PEO54fvddRIm+gUYRXyiuY2p7vVOt0a4136pMCn24YoFgzQS
+vEP8sDHnL/kBVNB9Khwt1Jt8PaTlkuB2B9TqJNcJUwtaAFN8UekaC9MEk0KbRdhy
+d37h1rvR+FO/BtaWvF8UxGCKK6TkvPHq3hk1gJ6wL7ME+U1op7EzKnKD4yro4oq1
+54KqKP3wjcfuZSLPlgIfJjkKrQmG3gZ6f6aNaMN/IoVdUubjRKEfDEkhEEUZnwt3
+Xb6r5w91Rbljk24=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCZ1TfUuIBLpWEQ
-ilCQAl7V1qhb9PVzlF/tFHBLa95zjJBMVbJyN0hqyT/OP8DKrssKLbizUwYNp8Pq
-5IDzI6L2Tq64SkvSlVWS/ix8f9l3AKRW5thtzAdJEw2NsRqC/2dDUqvRvdGEnEUc
-gbuuYH3tQL5DvYQof8ra//vc1BJSj9r4FeFxck1RkJdx122ZUMmpTRpI2a1qZlCo
-/JzUiM5Lcd66q4juNiD/jMQBb/+Fgh5faI5bJXgNhWKI2WP7UvkReBCN8KF7OYe9
-DeZN8A0+REWeXw4y9A18ErWXumtlQau9RPtqzpKz+f/HKUeOSNJvpBR5Mssw56BR
-RX2IeyppAgMBAAECggEAaCQnYtPwzsVL29W3SnbAWwWx/mbsD+3frvFKQFTrSNBd
-E8BkSNxSIzDRCECytMP2YpKnWocXLwFnKcq93Vw/w31q3Qo3IH3Ga/e0iChJQT3n
-A4nN9S7Ns9O5NjYyW4KqFrKN7TUS9TKRuwW82AUs2wQcimFvabdxzibEDDBpowgB
-pMfzUT7fz2dhYeP2QQ+FOxBdIrW+G2T1JxdUNJqvzuF00Hd6A+/Xs7NIzaTlLpRf
-c2oN0WfM8pC0hrO1bhbP7Og3M07lvkAJA53oVgNn/qYiWg2+Y9EA2BRpeC7h+TF/
-DVVUPo6j0PJunwsbrVKTHi1VqwevnjtIJQxNoto47QKBgQDHBi2mMSobrRHSD7RO
-73hwl6Nr6MsXTjNzhdSa/U5SLa9Pb8BhgmMQL4tLZDH0z8r/7pZi7/5roESvGqYu
-yM6y6hUaSwOiVH8J4rdxXEHCxihNtBsUvfejU+ejsnPn5G/Z3QOIkLYHMvOmshVu
-BPvT//CCvFUYb6RNF1XgiwCfZwKBgQDF3x9IcLhzM0elKWvcrU72FJFHR/8eLz7J
-kKVjhbogqdOYPhElosd/sUk6/BSo9l2VtX5FjGnP0l/8UMEL6HHywU7HFpUT/HDn
-kuYtdxAZWqn2s8o2UnG11iJHaNA3Epdv32NQxk+frDfOPBobKZXswiE8X5u8rg4Y
-HDY8GTdVrwKBgFo8cOITFHZr59KIEEZhyQezmQLKD5rHeAh+u0BybNpRoFSx5FXR
-mjyyccOC8CuBMxcLA+Bj08TUa4/A02wO27i+7UZ4kHM/QEIpKucY3zACTC++4zBq
-WScSWcoclPSk3Bm5XWrDweRNs672u0SgudULC+8amLJ1m9bgJ62hGG0tAoGAc1pV
-5GdCQHZ+p/xz0xx90du/rex8/93PHrbilBhbn7shjblxSZ2R7BEwfeCDMtUdTa+W
-w3jOHseoCXISeJy0AS9Me6fglNwv/fCXm52zlvRR7W52ziBWBgmlxjeGWvTNr/xs
-66QQuyctCV/kYD1oF7Q8p/Oc2Ownb0rTG0ogBiUCgYEAjcX0KTUdDn4ePufvewDA
-CI5c3XVdugjfB8F3gbho5cvZOLel3UibVixYrswJnaoBeHdU/YPkhZXNuS6dG7o7
-KYB4Npr5rghgo0BdxKCYDZLhUpLaSBvYbbJmCEjGN3KA4C7WGsN5A5x65tQOCoh0
-5CUjAY0bEfTnxT6JxiQj46s=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC71EP3PTTHVjCD
+79AeZT9KClIsAC9lr02cs5kV/YpmZtn2KY22CQ+o66b2JNwT9cFe4j2lajMsuVZr
+AY3HSaGUPJG1BPi56hUqT8Gb7KpQX1T0jysH+GUGBEpn67aZ9cToTlt6vDrCR6XZ
+hUBVTsz5vO5ErJVbsJMlIcC7XU6EsHt9/SuDlCVdWVa7U0PGzE/4BFdhofn0nFKS
+uO1tNfoXvKd5a9Fg8JoqMggGEr9RR3emEhwde/zNZ+cbA1hYpZQ08TGCtmPx3u07
+35sv3efsDqFDVs0AyJHSpZ3UNqMuWBdFxDZj3RgWOplmj3dN/8ypIVX1NLWOudDr
+yxISHapjAgMBAAECggEAIPhxtcSYryUB/ybpcWx0X5rQMckWiNLs3MTp6mJHGRKU
+0BEbPwj4Jr624B44Q4iwGOe9ynuJ4B/oe4AaUxEpu8umCBCHWJsue+7kHWq9ur4B
+O6yl8RA5K4U1Smil9QCfP+gBRtojtla9ViF92Xurn2r6qDNjRGUKb0oterY2QjQr
+fMI6i9oGRPyDYf4v08NjKKOtpjLM7PhY+52GPgEzPLULojqwU2Hwv2hmBf8Yni/l
+mMTrtiLuCtKx0CLDG6O0ZQ+1u7Gx4iuNANDYKHE4Bf0WiRcRHi9KRsN/ZVa8wZvl
+w4NUPo1UdUCKWjM+jTlr3Iv0AM8+BarydYrB3V6CAQKBgQDc/tgcDciVrbViUD0f
+w+jX32g8RcA8ffgfReH+Hw69OaFX6ePmOKggWkI95Wx+heBLiQqGDDadwCIHygD1
+sDKyeMKwRAU3BsYUI414m2zWnONXFQQdHbPzSQvQ3amtPbDwRDN8yzdBsQUFcVPT
+ikdGMvmADEiTQ5Ck1q4kjr5zcQKBgQDZlI8AMVTzC8ulaI8oPZC2IyOe+9PI3LXe
+0/5qPfcks+iQ6XiNM/t6I2eoVqe1SIsMlpCQ1jJoW/GQNdkC6oXAbWc7j7TKNNtF
+DxyHIqctRt2/ijy9p/eXSCMZUTT4PyW9/AWxXYIqXZ76QufF71Zoxs4ZRn3I0NYI
+HEvC9l4pEwKBgGC4nMbydWalByzHJ2leqerJGWq/sFoJW+37/OPmneHNdkLu19Kr
+21GFj1ZdsfVSDI+io9t1PvYd4Ab+rxrYiee4mKTisFGcAldQFBvEEod/VLSJOyqv
+FFIXFzfLu/ZZeLY/czVcD4wNuL/gEKsV6wnbR312YtEpEgZC+yZ+3vXRAoGAB/ii
+WI52H0ViW5f+Dqpav+F/r5ZoRuaXHyfDHV9Ry51vusdi7EFoSCw94vPxxvl2Zqqp
+dzTxudMMgY0He0zeQ5N+gbcdF39iPSB1mhnR6B29iAPnf8dEkd1Js+a+uw2NM22l
+Q786QpUVevOyjBTdpI8MA+8KMq47+SYYPHdMMdMCgYEAjf8TnMe6kB4MC/2urZqy
+pH3kh60EQ3m5d9Ief3wmUBlov9fvegqOrxBQunVeLERO6mXbFV7lVOm8oDvIC+/d
+g18pWN3QoLhfqFTNETwY67EreoMYvXKLu9U7HKs/qYP3RZQb3RB3aSFHlDMJgwIG
+mvnUi+VWUQ3c2GApHClq7gU=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/rollover_ca.pem.digest.sha1 b/jstests/libs/rollover_ca.pem.digest.sha1
new file mode 100644
index 00000000000..c028ae06ec9
--- /dev/null
+++ b/jstests/libs/rollover_ca.pem.digest.sha1
@@ -0,0 +1 @@
+BC0C54E29440F5B46456402B1D4E23F3C415897E \ No newline at end of file
diff --git a/jstests/libs/rollover_ca.pem.digest.sha256 b/jstests/libs/rollover_ca.pem.digest.sha256
new file mode 100644
index 00000000000..14c053cf5ae
--- /dev/null
+++ b/jstests/libs/rollover_ca.pem.digest.sha256
@@ -0,0 +1 @@
+2ED258565E79ED591A290D07D46A4AFA0C4071FE0744A7931D9B19177ACD27F6 \ No newline at end of file
diff --git a/jstests/libs/rollover_ca_merged.pem b/jstests/libs/rollover_ca_merged.pem
index 25551e0b58c..d89b03d088c 100644
--- a/jstests/libs/rollover_ca_merged.pem
+++ b/jstests/libs/rollover_ca_merged.pem
@@ -1,46 +1,51 @@
+# Autogenerated file, do not edit.
+# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml rollover_ca_merged.pem
+#
+# Combination of rollover_ca.pem and ca.pem
+
# Certificate from rollover_ca.pem
-----BEGIN CERTIFICATE-----
-MIIDwjCCAqoCBCfZqc4wDQYJKoZIhvcNAQELBQAwfjELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhOZXcgWW9yazEWMBQGA1UECgwNTW9u
-Z29EQiwgSW5jLjEPMA0GA1UECwwGS2VybmVsMSAwHgYDVQQDDBdLZXJuZWwgUm9s
-bG92ZXIgVGVzdCBDQTAeFw0xOTA5MjUyMzQyMjJaFw0zOTA5MjcyMzQyMjJaMH4x
-CzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwITmV3IFlv
-cmsxFjAUBgNVBAoMDU1vbmdvREIsIEluYy4xDzANBgNVBAsMBktlcm5lbDEgMB4G
-A1UEAwwXS2VybmVsIFJvbGxvdmVyIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUA
-A4IBDwAwggEKAoIBAQCZ1TfUuIBLpWEQilCQAl7V1qhb9PVzlF/tFHBLa95zjJBM
-VbJyN0hqyT/OP8DKrssKLbizUwYNp8Pq5IDzI6L2Tq64SkvSlVWS/ix8f9l3AKRW
-5thtzAdJEw2NsRqC/2dDUqvRvdGEnEUcgbuuYH3tQL5DvYQof8ra//vc1BJSj9r4
-FeFxck1RkJdx122ZUMmpTRpI2a1qZlCo/JzUiM5Lcd66q4juNiD/jMQBb/+Fgh5f
-aI5bJXgNhWKI2WP7UvkReBCN8KF7OYe9DeZN8A0+REWeXw4y9A18ErWXumtlQau9
-RPtqzpKz+f/HKUeOSNJvpBR5Mssw56BRRX2IeyppAgMBAAGjTTBLMA8GA1UdEwEB
-/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBT2TUaI0V2Zodt/68sv
-D39RaaMiizAJBgNVHSMEAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQAr1eZ7DuWIe8UW
-/mS8Yh/8eQUrj/TjOP880LlpT16vA1TGXXxq9+bWaWgOHua9eMVDCweTgLLkhbJe
-MFWItpe4eALzU8y13MX09xcQRzFAoFoTzebH8+YuqMCtuzlziIA4UFC75ZV0PNtZ
-OHQls2RRpyACY3GLdJxewN4KiyU34C5HoQcch2XrY+8ttjHKJCZBmOHLifPEFnMR
-GBqUyV6uBsIT5lzZhWbyguH5m0Ljy98FeQ5NgAwXCJb5NSeE++6dzEVMCljdJ1T8
-g3TEBeJbY7Y+26Z9ZncjcgrWY6aXiIAAqTKhKvfA2o8hLA1dWmeLr4M4a5IkU9aH
-ce6K2j6q
+MIIDxzCCAq+gAwIBAgIEMEXJYDANBgkqhkiG9w0BAQsFADB+MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxETAPBgNVBAcMCE5ldyBZb3JrMRYwFAYDVQQK
+DA1Nb25nb0RCLCBJbmMuMQ8wDQYDVQQLDAZLZXJuZWwxIDAeBgNVBAMMF0tlcm5l
+bCBSb2xsb3ZlciBUZXN0IENBMB4XDTIyMDEyNzIxNTk0N1oXDTI0MDQzMDIxNTk0
+N1owfjELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhO
+ZXcgWW9yazEWMBQGA1UECgwNTW9uZ29EQiwgSW5jLjEPMA0GA1UECwwGS2VybmVs
+MSAwHgYDVQQDDBdLZXJuZWwgUm9sbG92ZXIgVGVzdCBDQTCCASIwDQYJKoZIhvcN
+AQEBBQADggEPADCCAQoCggEBALvUQ/c9NMdWMIPv0B5lP0oKUiwAL2WvTZyzmRX9
+imZm2fYpjbYJD6jrpvYk3BP1wV7iPaVqMyy5VmsBjcdJoZQ8kbUE+LnqFSpPwZvs
+qlBfVPSPKwf4ZQYESmfrtpn1xOhOW3q8OsJHpdmFQFVOzPm87kSslVuwkyUhwLtd
+ToSwe339K4OUJV1ZVrtTQ8bMT/gEV2Gh+fScUpK47W01+he8p3lr0WDwmioyCAYS
+v1FHd6YSHB17/M1n5xsDWFillDTxMYK2Y/He7Tvfmy/d5+wOoUNWzQDIkdKlndQ2
+oy5YF0XENmPdGBY6mWaPd03/zKkhVfU0tY650OvLEhIdqmMCAwEAAaNNMEswDwYD
+VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFKMXkxW7L94J
+wfc3SWBZrL6W5EzOMAkGA1UdIwQCMAAwDQYJKoZIhvcNAQELBQADggEBAA9eK1CR
+Xijo6jowUggkJgwietTVAJfoKBJS+OKpBEbd6lQMg1BpbK3AZe/mY0L5c/MdwDut
+7UL9TWtbPiMesPZ5PEO54fvddRIm+gUYRXyiuY2p7vVOt0a4136pMCn24YoFgzQS
+vEP8sDHnL/kBVNB9Khwt1Jt8PaTlkuB2B9TqJNcJUwtaAFN8UekaC9MEk0KbRdhy
+d37h1rvR+FO/BtaWvF8UxGCKK6TkvPHq3hk1gJ6wL7ME+U1op7EzKnKD4yro4oq1
+54KqKP3wjcfuZSLPlgIfJjkKrQmG3gZ6f6aNaMN/IoVdUubjRKEfDEkhEEUZnwt3
+Xb6r5w91Rbljk24=
-----END CERTIFICATE-----
# Certificate from ca.pem
-----BEGIN CERTIFICATE-----
-MIIDdDCCAlwCBBmRIxIwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowdDELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5l
-bCBUZXN0IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAupVkx8+n
-AqzsANKwNPeCYlf2q0WgF4kSUMNJdpmMelrr7hh7EOnAU0hTAQx9BKTEbExeCzH6
-OArFNGjewjWVXwaOpCjK8FMvK6/lGVEpmoHNF9XuiQVmaQ4bJD6rC73YjpgNIPeL
-5PyoFLEZv+X2cRBPpTcSRcf87tk8HL7v0eyk1JBhkeKK68SYdWwZlHaa1jqwmliW
-WvVMkHVH3lx0VOgQwWtOgs0K1zpcZ0sH5MGpYRQOiidIRZj3PkKeTPQe2D6VQQtv
-2yDs9dWfCxJJP9QiWclL2rF/xqlFSNEIfNZpZhk6I1DHQpA2uyJfzRH62pFasJuB
-CVh5Tr0EDoVreQIDAQABoxMwETAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEB
-CwUAA4IBAQARdNCYYWxi2fyhJwzGHwIT261d/pTlOSYLlm84c72aEneFUnfp8/H5
-JjuFbnhiX+5+h3M7eDQhra9s+H3vKr7o38EIVf5OKXvpNLwv1UUmomBvKqccioYh
-bxrfwCzfBRuUmW05kcAVn8iKovqyxL7npEZbckwtT+BqZ4kOL4Uzre+S1HMx0zOu
-xulSYA/sBoJ2BB93ZIAqB+f/+InS9yggzyhhaQqS7QEl1L4nZE4Oy0jKcxdCzysm
-TqiyH+OI5SVRTfXh4XvHmdWBBaQyaTmQzXYUxUi7jg1jEAiebCGrEJv9plwq4KfC
-cze9NLBjaXR3GzonT8kICyVT/0UvhuJg
+MIIDeTCCAmGgAwIBAgIEe9SskzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQyWhcNMjQwNDMwMjE1OTQyWjB0MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwO
+S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDf
+vZIt82obTHnc3iHgUYSc+yVkCHyERF3kdcTTFszDbN9mVPL5ZkH9lIAC3A2rj24T
+pItMW1N+zOaLHU5tJB9VnCnKSFz5CHd/KEcLA3Ql2K70z7n1FvINnBmqAQdgPcPu
+Et2rFgGg3atR3T3bV7ZRlla0CcoAFl/YoDI16oHRXboxAtoAzaIwvS6HUrOYQPYq
+BLGt00Wws4bpILk3b04lDLEHmzDe6N3/v3FgBurPzR2tL97/sJGePE94I833hYG4
+vBdU0Kdt9FbTDEFOgrfRCisHyZY6Vw6rIiWBSLUBCjtm2vipgoD0H3DvyZLbMQRr
+qmctCX4KQtOZ8dV3JQkNAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
+hvcNAQELBQADggEBAJnz4lK9GiCWhCXIPzghYRRheYWL8nhkZ+3+oC1B3/mGEf71
+2VOdND6fMPdHinD8jONH75mOpa7TanriVYX3KbrQ4WABFNJMX9uz09F+0A2D5tyc
+iDkldnei+fiX4eSx80oCPgvaxdJWauiTsEi+fo2Do47PYkch9+BDXT9F/m3S3RRW
+cia7URBAV8Itq6jj2BHcpS/dEqZcmN9kGWujVagcCorc0wBKSmkO/PZIjISid+TO
+Db2g+AvqSBDU0lbdP7NXRSIxvZejDz4qMjcpSbhW9OS2BCYZcq5wgH2lwYkdPtmX
+JkhxWKwsW11WJWDcmaXcffO3a6lDizxyjnTedoU=
-----END CERTIFICATE-----
diff --git a/jstests/libs/rollover_ca_merged.pem.digest.sha1 b/jstests/libs/rollover_ca_merged.pem.digest.sha1
new file mode 100644
index 00000000000..c028ae06ec9
--- /dev/null
+++ b/jstests/libs/rollover_ca_merged.pem.digest.sha1
@@ -0,0 +1 @@
+BC0C54E29440F5B46456402B1D4E23F3C415897E \ No newline at end of file
diff --git a/jstests/libs/rollover_ca_merged.pem.digest.sha256 b/jstests/libs/rollover_ca_merged.pem.digest.sha256
new file mode 100644
index 00000000000..14c053cf5ae
--- /dev/null
+++ b/jstests/libs/rollover_ca_merged.pem.digest.sha256
@@ -0,0 +1 @@
+2ED258565E79ED591A290D07D46A4AFA0C4071FE0744A7931D9B19177ACD27F6 \ No newline at end of file
diff --git a/jstests/libs/rollover_server.pem b/jstests/libs/rollover_server.pem
index 7e4b4083a10..306ae1b8852 100644
--- a/jstests/libs/rollover_server.pem
+++ b/jstests/libs/rollover_server.pem
@@ -3,52 +3,52 @@
#
# Server rollover certificate.
-----BEGIN CERTIFICATE-----
-MIIDkjCCAnoCBHlrx0owDQYJKoZIhvcNAQELBQAwfjELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhOZXcgWW9yazEWMBQGA1UECgwNTW9u
-Z29EQiwgSW5jLjEPMA0GA1UECwwGS2VybmVsMSAwHgYDVQQDDBdLZXJuZWwgUm9s
-bG92ZXIgVGVzdCBDQTAeFw0xOTA5MjUyMzQyMjJaFw0zOTA5MjcyMzQyMjJaMHgx
-CzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazERMA8GA1UEBwwITmV3IFlv
-cmsxITAfBgNVBAoMGE1vbmdvREIsIEluYy4gKFJvbGxvdmVyKTEPMA0GA1UECwwG
-S2VybmVsMQ8wDQYDVQQDDAZzZXJ2ZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
-ggEKAoIBAQC6TC1AJpYty3gwDIjjDFOwdF8FlSDVZJ8hbU2pcoeUs5hZ4Vik/w+K
-I6NmCEZiUxy5gGCWpJ7cctAKcYF8ggcY+jB3UY5d5hv6jSc29w+xKgfZtUhli6Me
-vE8mUb6P1xkY6Ytc28Tdylofro5pIHoZ9eVjcnU1wgUzrmhvAlDIYE2/2Z7Oi/Eu
-QMqy+/b10TxytDfDDwlGqVIYUR0c57IFL1ljHxwqHfPWGSHRWrWXxX3RXCERuKok
-5lqid5GGrwltDgeJ9WS6cGtfqE3Z+AAz1Ns+7TgYWL6ERR4IGvz8qSbIlaT7e//m
-TgYkt74Goc5Y5INoIri1r1eNBCSSG7nhAgMBAAGjIzAhMB8GA1UdEQQYMBaCCWxv
-Y2FsaG9zdIIJMTI3LjAuMC4xMA0GCSqGSIb3DQEBCwUAA4IBAQA/et3aWH5VLvot
-fUXPOAKOJZsAYUMPQagtwNEUzXJvRrsrbQ2oBWpHFMssBacCHrAdpMgn1U8GMj1q
-6sb7FvioUbyzUZDdA2wJZqqOb7gKrDSl2Hn+ZPq1iA+eIf4jRiM2RsIAdmnJ/Dwz
-ZgTp8COKLnuzwfHgPhWpXQxrvcMFILnvQv06pr2fIo6aKqHxX0eFtfCfHSwgMIYk
-hLcPKqnL4v7W/v2LMWyMYwZClIjc+/ojIYvq4cgPNQxQahDzRJG9J44Owcp7gMHO
-6ORFb7dR0Sl2BXIGXZ3/zppt8LWYpZ+ErzweZwstj2VcheuqJMmw05Y9kfLo7evG
-J/WgtL2T
+MIIDsTCCApmgAwIBAgIEBBkPnzANBgkqhkiG9w0BAQsFADB+MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxETAPBgNVBAcMCE5ldyBZb3JrMRYwFAYDVQQK
+DA1Nb25nb0RCLCBJbmMuMQ8wDQYDVQQLDAZLZXJuZWwxIDAeBgNVBAMMF0tlcm5l
+bCBSb2xsb3ZlciBUZXN0IENBMB4XDTIyMDEyNzIxNTk0N1oXDTI0MDQzMDIxNTk0
+N1oweDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMREwDwYDVQQHDAhO
+ZXcgWW9yazEhMB8GA1UECgwYTW9uZ29EQiwgSW5jLiAoUm9sbG92ZXIpMQ8wDQYD
+VQQLDAZLZXJuZWwxDzANBgNVBAMMBnNlcnZlcjCCASIwDQYJKoZIhvcNAQEBBQAD
+ggEPADCCAQoCggEBAMXA2FrbYDKpEo2EKRNCsx1C4hvDloS5S+GEjOCSk2tqPeZA
+cAMrSMhLYH48Qoda4ojVJ+kbLsRABQyLQfIwc4+zcDO2P7cCVpHK2fsnjaPAMAxQ
+t8M7zHAeQxCRFMjNeU9+wymQ46ztCqvetEktmIjPZpfqIJo4DPeVlqwxj0kNm6w4
+hEtS+rFUDVgunnTMugbEBXcidkBpMGRiovC1U97YjKJlPtZCODZ3TrDSWpppMKXS
+4rIugM6VouUitqlJ85kKUaDYWzuoUPVYLwdf0lWUrlgrYruvYWVs42Yh9yB6GN8B
+3Re2xC1XEPLVR81VP21hIdcBdE+GtK02jxKgfvECAwEAAaM9MDswHQYDVR0lBBYw
+FAYIKwYBBQUHAwEGCCsGAQUFBwMCMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAA
+ATANBgkqhkiG9w0BAQsFAAOCAQEAsm3OxjXa3lO7rE1sjE6OoCAk9zad5gb5FUyZ
+yVEvg5GoOpna3ceOqWbHy/jYEI+ZRfzIEUENLXAfHe6IyPXCHuzhhxrxEikB5S5R
+yT+j+EZvBmFOexZ8dS26U2jMdB6R/NEcTFCWheKV2gVIGp/EFWppA93AcQbJuqQ3
++HppdEjNpouRTbkVw4/SIu8B4NWqW7+3IWbq6OetzZu8M0a1m+iYKSN/zAbkVyHU
+Wsg0xbXeF75+91/cKieyDmfntaIS6ZjdYDymvQTZ/Lf4sOD3z/ubrXACNrqe5iYi
+SaZ2wyryWQtd8R7l53HBNFVn72d1XxIv4ikMJaGnxo6hmHC/sQ==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC6TC1AJpYty3gw
-DIjjDFOwdF8FlSDVZJ8hbU2pcoeUs5hZ4Vik/w+KI6NmCEZiUxy5gGCWpJ7cctAK
-cYF8ggcY+jB3UY5d5hv6jSc29w+xKgfZtUhli6MevE8mUb6P1xkY6Ytc28Tdylof
-ro5pIHoZ9eVjcnU1wgUzrmhvAlDIYE2/2Z7Oi/EuQMqy+/b10TxytDfDDwlGqVIY
-UR0c57IFL1ljHxwqHfPWGSHRWrWXxX3RXCERuKok5lqid5GGrwltDgeJ9WS6cGtf
-qE3Z+AAz1Ns+7TgYWL6ERR4IGvz8qSbIlaT7e//mTgYkt74Goc5Y5INoIri1r1eN
-BCSSG7nhAgMBAAECggEAHIgQIhQGygqwZIN273by1kJsTxmQxr27VU49J6dftllv
-CszlW5eolJpyquy3gtWBv7M2l7usjMyUqhTKJPxxA9VFWPDHof/c5xl5GQTrhVGP
-lDscVFj3aXyjjpXUXokt0c/qxRTvaJxWAyYjr1wG9zTepcVgyBPn4gti+SVco+NA
-wl+1T0xp2tnLGDv5Ahldg2UFlElDcT4F/m9XbbIhl/VALNiZPqVC/kanIV+wMV4u
-Xm0qKYeV0jX24rb4KzIWB2iIckzA3Leli9pb3jJNLIFW3SFIldmqZqgPArMC7m8S
-4D3wx3ezPI+4+WsJ2uI4cXvVwlSsPWhgPUugvDlz1QKBgQDtz44gAE8nqQ1p1geR
-6lKwhoXbG21NeJtBZClUQYSXWiNWFwxEWfs2BmE9ebvibXJHiTYOe/sKloCVCBC0
-VGiUVCKPYmcELc5WS4dr7WY1VPBCcqRQHXi0PT3PbuuHe43yuadN//TCdsnAZ19G
-zQdzuKtyKmepmMb72/Db+U8f5wKBgQDIi/gmqHH2Z0qkEdoEBQgoyc+2Eddadmfd
-Ut5ObdOABnaL5yDK0w5SFmDBHknTXjGnQZsNSZzj/jg9697Ycriw/1lM4C+yNNRs
-eUK8UIwYYyBl7YPOUWJD9oVjzLtQ12RE4k0EIT0nV1AZiOfZ9ZPXe8St0OMdI5MN
-A+U+wWY+9wKBgQCamTzvBuRuhxMmQ7LGJEw/YCSy7WCgZZCg8SmBEdrNvhaMyAz8
-fna2h2091t7S843Afa37upPYLUFIIWcipGEcVJnnFvSbnd+u8AkIm9u/Pgm3WOoC
-/zXSDqIZMSXC/QqpyhG+vm/y3+CGyW0CDRYUH/CtFm4vrhdl8nThvHC47wKBgBrb
-rAM5YfHXCYcJoQISznHv/TJsF0RVQTnB5GXqjX3C39OCw8CGHY/e0VxruwVkww+c
-WLCh4DIklNGuKi0gyB1kRUhnadva+WwBnW9s9iY5+FfORG24NonVlS21eIyuHA6h
-pCDedrszFVYmIK7vFbqxJ7kDlbcMUaBXmjcaXaAnAoGBAINAREO2Wyb531UbIl7C
-H9rXPYop4lE6THepFXQUJNIGkWfdY+CIXQd1lDGx15dwm70Kt+J/6JjrloS3aH2X
-2jptVQPokZjWWvRAlhm6jFEb7Je5LMVADz+19pN017H31yEJWRWWS2mnQr9XaHjk
-QTVqVtF/01ohXnp3fHcK14KX
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDFwNha22AyqRKN
+hCkTQrMdQuIbw5aEuUvhhIzgkpNraj3mQHADK0jIS2B+PEKHWuKI1SfpGy7EQAUM
+i0HyMHOPs3Aztj+3AlaRytn7J42jwDAMULfDO8xwHkMQkRTIzXlPfsMpkOOs7Qqr
+3rRJLZiIz2aX6iCaOAz3lZasMY9JDZusOIRLUvqxVA1YLp50zLoGxAV3InZAaTBk
+YqLwtVPe2IyiZT7WQjg2d06w0lqaaTCl0uKyLoDOlaLlIrapSfOZClGg2Fs7qFD1
+WC8HX9JVlK5YK2K7r2FlbONmIfcgehjfAd0XtsQtVxDy1UfNVT9tYSHXAXRPhrSt
+No8SoH7xAgMBAAECggEBAIzrhcIJPp4bWbs7CMJO77DUbqh2Upa2LNrCSFnoWeFb
+zkx8ctXvTGhfPp32dzpZi8ESlORKmKMFNBPiUNYzrMYkirpvDyxtIB+4vGl7oDWm
+yRadlrYrsN3c0tHFcVg/BEmf/ZdrRrN+H/KmOzdCpMYpdeSf1SfQ9XyhPsPqdT8K
+kKM+Yn94qqjdlZzPc5ylBllg09oT+NDfBEUTa2gsSLb3VP17bh0/twUPMBA864ds
+5aT0MkaZYxNu/LYsc3PNhfZnG1qlyJwT6oIUCju/X0qm6iAXy9d7WZ7HN4tZ2G7H
+pjk0sVJzlquzhfxRYD8g9Hhu4fzMEnC0SvVIThkNGSECgYEA6FaXTBeKm2tzCqCr
+2SaxBRcMgybWLTgUg/Fnm+aQVC6f7emMHb1K6nlZxabTpz0tcIJFoquThTKYvvUB
+e712wtd8ujmCDfXK/7SHWn8EUW0vbwA4yLRcKX+J64f5VhSnvVTd/yvgEpj0hzCZ
+8jdfg3pyK2LZ74WxiT9vxl1Sf4UCgYEA2eSSh8YApSpcM155MpXFTQlgBDuUIfot
+o33j/ccsJyB47hGXphOYVCBA+RMLiix//Xp34x6xeFJFfMeSIWiaGIRZ3mQpm/eN
+UPUL63Usk16cGkhbyEOa0s5o8mTjT3dTYIuJ0jIFBIfR8nfqjg3YmKxHlhm9uowe
+ArExXCekv30CgYBZiFzfdsb0I5D+jHIMyWs4AezRcZrhbBYDznhVzKDbv+fjf7d+
+El8XQlJE54fyj5G+JIV/LU047AmOtM2wiI+GgBHRla23gXuL1F7AkefxFPlNdjFr
+ro1BdKOKfyincmg9fsHZvmen4weAPUtl2s7U1M/ARmSjd8q1kBubvoS3HQKBgFKR
+1qFS/D2avtPMkjsEHH9j9RnFhg4WIyNYeoRZ7LZrDMiSrBgIRupiSpzYhb/3uwzQ
+UwwjPndtHd36NrsoS3TM+s1WwZnUBp5OLhUtExZJfPhMwVMzo0ENbSGl76nWeycT
+2cdooxQjcADlRmJMhu7cIkiUOpytqlW01hKpBzp1AoGAGwf8hPmGVliXI3QxkE+0
+x4vMRU4TxdYxwI/NUq6lg2VKR8MtjwPRIZzSgE+WXuwEujyW5e7Xik+MWI+d25Wn
+640nsi8SdrffjaRTMvJ/cngPt5O6h/2p954+5w5w1JLwxRM9xuMYx1aUiNnvlWqQ
+aZP3iz7pFJ2fTDM8T3y9++Y=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/rollover_server.pem.digest.sha1 b/jstests/libs/rollover_server.pem.digest.sha1
new file mode 100644
index 00000000000..b3c5b556aba
--- /dev/null
+++ b/jstests/libs/rollover_server.pem.digest.sha1
@@ -0,0 +1 @@
+5C5314F8D08C97FDA9DA5B112F5FA30B37319197 \ No newline at end of file
diff --git a/jstests/libs/rollover_server.pem.digest.sha256 b/jstests/libs/rollover_server.pem.digest.sha256
new file mode 100644
index 00000000000..12ff9605c6c
--- /dev/null
+++ b/jstests/libs/rollover_server.pem.digest.sha256
@@ -0,0 +1 @@
+C6F4922E7BCEFAF6ECE24C01D812B7CC77E8C4599717DBE916A259FBBFD46779 \ No newline at end of file
diff --git a/jstests/libs/rs0.pem b/jstests/libs/rs0.pem
index 4bb116c73d8..14f0e2a9d1c 100644
--- a/jstests/libs/rs0.pem
+++ b/jstests/libs/rs0.pem
@@ -3,55 +3,55 @@
#
# General purpose server certificate file.
-----BEGIN CERTIFICATE-----
-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
+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
-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
+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
-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
+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
-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
+HQ4EFgQULj+elw+YJr0JKdiRLAtdeH40E4AwgYsGA1UdIwSBgzCBgKF4pHYwdDEL
MAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9y
ayBDaXR5MRAwDgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNV
-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
-ikh7HQRM0XhW1j6/
+BAMMDktlcm5lbCBUZXN0IENBggR71KyTMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcE
+fwAAATANBgkqhkiG9w0BAQsFAAOCAQEAnRwckjgQFPpAehcBqZVJOBQspjfQKDWF
+9iipxovXSQ5yPfqKu9Apywy+GryFhg881UFEcPgdVVxMEZ5SkUQNNhjv7+QAPz9D
+Jc0QqIUdZkgqAvJShlJ8y+7C27p7pUqbsflyx0Zd1NnllNW4xclhZ8pG4oqmhX5H
+fJxUtz2LEk3pttC8c56f/t3CaVSVFDAWDFfPXAj2ZOg0cKpjn6A6rxA7h5gAXFlB
+fjEjBVpyeMzgfS3OvHsSCZCe2mZK6vdRHFnniZMDPog1h7Z5tDWPAZH1UF9pGhVg
+Tbyg/Xbp159SjmleaLMsL39E0Nqj18kzMYHT5oxlq1LPyrzmUcVSgg==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDv8rQSkAMIqBKb
-q7skj30+f1rX3Lo88mJIVvBlV7ScNO/hJPrIn3AHQfF/1urZtoeG735VjcqCVzo5
-UFQvKZssNjx2HS5MNlzI+KYkSSyYMdtPRzcY49W2rAHCAazeNSKzWbCNdw8d/Haf
-/ZoKOfWK4YFkc3U67PJHDfX6mbrrO32YWo4NAfayqIiYS696fJrWsOHRQ0t90dsk
-hZK3KAvFAKfUmCkOFH/CDpmk86Sb85VuNd2RAvLrEfj1JsOlOhWJkmtN/o7GNQcE
-4/woznO3qjNfIFx0E+tOf8w1i/GhKdrjKnxPW2Q7ZmmwcuHssi3qTEG56dJm8JJE
-cvuJRFtXAgMBAAECggEALI3LY/r7pTrYIbG0kShXoCgzrQteRXzYRQhnoNm1PqAR
-vqOIMYJxYdebyRoWB5D9/08vDSHD7YnW1NeWmh9GoeH8Pg5TD3G0rtiEuQ4hSq1P
-RJw7ndKIV1/+/5AiEiyZoeXQg6QM2YuMV07WsHlsn3oZ9ZX+uY9PuWPdPcgXzh+k
-tKoq+yfXW4SgboMhIV+n5IOUt9xHhIv7uThxeK0FidUFtogmicXbfJRuzIJnAPME
-jnY/kAPIuNTm8Po5ujfJW7JEf/TptKGI5rk5hM2D7ZYO/K4rJLw+oL8/7UAShD7b
-A4f229hlXaXSck+pTRGhgejyD6amuqRX/0U21KUsoQKBgQD9n3kR/ei5J0CXK18H
-NKH3JqOVyKfJr5JT0gIXRA1IBNuaZxuCPORApv6CQ/H2200NubsnJXZYQt+qn7Ay
-xtLmS1f8G3TL33KBNU3aS9VkQedsjrWFTv6sdM9pct4/vs//R0lWgIVgM4r8OIc9
-QchXuzSU11A5ihVeojkGfGdBxwKBgQDyMmt5YWY5qoqM0sYqwVM33oNJ+9aHcn63
-3x8vGoc0yShoK38cispGP8YzgbcHR2R2jLkxL9a5JdZ2hGSwyy93XncEWHAv95We
-UEneKlNQptcxCSapulUwxtel1k5cHAF5x0eG4IB0HYAVLE+el/Xg9u9eckoG5sNf
-0dQthEUZ8QKBgQCbkxxILhF4qhxT3pXvLJkBq2EDO0+5RwqighsoPGVNPTWcNA1K
-yaFWC1npfFZLj+BnP/wOmktK/tKGrmf97bpm6+avzgPKH2n02kbEVmoykr6r96pf
-eMJ99TVZwM2WGq0qMYdKGZI3HcbuypoiuFx1fG9XsfATK6HKKAaE9QC99wKBgFUb
-7rSKy5d8HI/8CXNA2HOLl+tJukuCqpEGsTimQ9kCz1Y74sEu7IHfK1EyRhUiu2UF
-cpacTwJlD4Y6Y//UhuuVoJFAWrwgbs1hPXP6v6hZ2Mj8hD+koQcw+NroAkVP+hzH
-MJVvEvS64SWPmrMKh3b0j41K8ESYlxN28u7DylyhAoGAGlMA2j1J1HWVPz4sWEQq
-uE5cZKjf6gFT5YTwHtQ6tbBVpJl2gAmwU9SD02aV19ntSuKu4MO1z3DXVluXQ26e
-gcbg4Jpv0HdV37HF5gMfGWTOHfhtxtr5KzQTq0R6i0lnD8JIN9MoTQaFotAsKlhC
-pZLDJr57HePBO4mMHXRUjuw=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDHaOrRMC2+YOe5
+nPmo/IvLGRIXjydS0nBYnG2db8sbJnENU95tFXMvzFCgo2vL0OWg2GrzWZieq7B5
+pjIxdCBhuFIA5iRONJDF3y0QiQyfZGck6KvglUChxzRWwgheK2I+3K89Lfap/Bt/
+tS/dNTtiZF4VHXyENVyYgdpHw5m1AY5dpMYaG19CB+EChBaBb1XE9MRgQODhTEZN
+n0vTPv+smtM+cHI3qksPY7glqx+h7XMUQh1awBASZO5WzihxqUAz1HZtMy+f2so+
+dmPpMux9fqXq4I4Mf4pVzpkGKYjhyOn1LkVEdfeCf7fExvzxOmUKjdmMXi2OB+X3
+xYWt7+p3AgMBAAECggEAevMdlU13ZuKo/bDj3mWYa+lRVmVVgaNu0bPhgijjuiHB
+os4LXobTNq1rKSCZ3lk2vC20A8dCatLBRMBMQmGvdZEIPrWnvPB8MwSf7IoT1lM5
+pXAwSZC9AQKqKrQIJMfrE4dOJRKp+7UN33f/wwyHSOtJdwtvMrUUGpQ12fmoVAlC
+93LlK0g7ZrnIXsuZoMnJqNKra3nizTAeKzG0AvrKU9tR21SPkQZJvGRKDqIbYfGW
+5zJorVLm+yb8iS7XYS8uD/MKeUIo0uMFgm6YDGIBldyh/kTAEqsC/03RFAt3u5bZ
+4Veo1HMU0rb7XEe3rgjhZX0SS7NfaTLH4yQjRXNPgQKBgQDirpy39v4SrPVEZkVM
+Js78pSN7Mz0D8Z3NhBJDj+3LZIMeYA75LVrfrEdy/aNGrmwIBBOmKeIAZ3wt7K04
+Rl6ic3Ng+NADEoiDZnI0QLvrOfDtqsfQ5UggU1AvXbJgubmaqhkm1Fk3CKaSXqCM
+Wy3cGEr923VfMwyP4F0KEFlGWQKBgQDhM1PmAfv1QxXcd6CBMMqNNbxgp2GJQ7IM
+jtxbM4/3hW8ZOskz34weycGOrc63BMHHwesoyTKssitz1NiCL8+28kuHNfech5Hh
+pVumPM0T3Yo5OGaZOPyV/Onbu9knZvdnQ+AxKiUbQ2P6pw49KDccv5Z8jdn8ppZE
+d4dB7aA9TwKBgGve8h8tP3z9p33UOTfi4+8gWsEfAfMlgJWzOsnB7UQz4Z2L0rRL
+HAqCvkF/Z7qT+D7cSclx9uWAWXy1Oz0jZ5dg31APN1Wu9R2qm8A36fUnTnqbIZlL
+8sXHP8o6iU80MpniRjPPK2FgEXxn4XjJTwqE2PLzA2i5L0osV7oZS5KJAoGBAKlB
+UoVEaIHlccDJiDCQ4ytOf86E/qGT53XYyXUiQ8nc16s2q5H5Ke7Z5EfACeU0BhCE
+hqGY1iVFo7Li/faayJrPcESnIvraSaI2DbPbbqbHkuN+qF3wnqZ796fWf1dF5BwQ
+v6cz7b+X3sS8Wc9NMl7A//GNC5EAA2BiFZ5PYmexAoGASc45IMiE91ohTVKghuhP
+aPDxqMe+pW8v+RjMt8S8nACjVa86ArwfP7ay1o0pbGOWztxrarOrDvFTdB5np68W
+WcYZIusKepo/tacAYDv5/EoMobHAHp+/KlLeP6zCqBLK7LSp+g7w3LH7KRCPcfca
+hVBUJrdPssNoOVsesKTB6RU=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/rs0.pem.digest.sha1 b/jstests/libs/rs0.pem.digest.sha1
new file mode 100644
index 00000000000..aee2a51fa6c
--- /dev/null
+++ b/jstests/libs/rs0.pem.digest.sha1
@@ -0,0 +1 @@
+C89AE2171C6A7E7985285ECF05755953288B45E3 \ No newline at end of file
diff --git a/jstests/libs/rs0.pem.digest.sha256 b/jstests/libs/rs0.pem.digest.sha256
new file mode 100644
index 00000000000..c7bcbd60809
--- /dev/null
+++ b/jstests/libs/rs0.pem.digest.sha256
@@ -0,0 +1 @@
+BBAED3E7D623E89E015831F02FEE9B3D9BB55630B2D1F4B0463ABF96F1C36F34 \ No newline at end of file
diff --git a/jstests/libs/rs1.pem b/jstests/libs/rs1.pem
index 8a210279554..1ce5ad8af7d 100644
--- a/jstests/libs/rs1.pem
+++ b/jstests/libs/rs1.pem
@@ -3,55 +3,55 @@
#
# General purpose server certificate file.
-----BEGIN CERTIFICATE-----
-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
+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
-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
+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
-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
+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
-HQ4EFgQUP+BYmcvg1cT8XhgruFWZdN6FoEMwgYsGA1UdIwSBgzCBgKF4pHYwdDEL
+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
-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
-7ku30sR7ArR/R75c
+BAMMDktlcm5lbCBUZXN0IENBggR71KyTMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcE
+fwAAATANBgkqhkiG9w0BAQsFAAOCAQEAQxxTMUk5Lj0scrdkG5kIJcOmR8EYJjF0
+OZ7/K0Mt5J1naYvB9WIaoDkR9QVhPqTaFMBOOImFHzU5ElVCSmH0QNtvPEGKxIpY
++M9pPfPGOt4Rk+Jq3ha4fXrJmMXAxJf++zR8n8Lfb/aa7gULk4lw6StlEfT5nLpx
+VPS+F/VyPuSQfJcum38hwFl5Itm7jRTWqtwi4UXgcq+XnyIiJnr9k72wdzDD40Cm
+qTHKbR9zuG7O7N+VqceJgZyYwgHiuxflPY+FPT5uD1hPvsUjNIYBtmFEwUifGPF3
+/Oub8jzFSIzG/W85UAKCSW7Nd+e3n1/RObB75kpUZgJMNzaGt0JXcw==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCxWRWnOjW47FQX
-nH2PgcvSvHGc4+Ik2hqWU2afbvtHcx1SXf9Jy9yC4952HYK4o8CSTr/wlmZr9m93
-b5CKS7WHzAcEMNyumbVCdEQS4VbZGX+W3Y6FZUYMvTqG53Cbt9UOaW3jFqPmAs5Z
-N2va55B5kBx4jNsp6UD68PnpFJjNs0TRxAexhdqN2sdIxQb9urfiD/TskkjsqCol
-bcH0omx/Jzjeu9PbN/Zu0Pxiji8FwKCavmoq7MIZJr5TXSv/FnQuHwNhOdMaUWzp
-D/invHcBDd3sMb02RrzEXcpRIKe/vyVryjZ8IU+eeJAT9hq0j5dnTmJ8vFIxzS5q
-3kKP//+LAgMBAAECggEAETMmmnVWyHyDG1ceBlD8R4/nJOQlBpXwhivIhCXrUN6l
-NVvQaoPO+xLGfIYYK3gWMRpaGyc6/7WC0f6L8h2tmWH8PDfQ704Q+kT0ZTBdj+id
-KzCJpf5QcOPZTUQc8708eI1ZDvEfLCuRf62UVEKpDGEhob9ncgUhPDUqx6Qrvac/
-7M5oQ8CaA9Ss2XMVMEmfjvCvCVLVPQj7ESZXrPTQn8XCplrhViydj8o5jhCBNXyw
-ptEK/FwC+G4kZNeHaTNwnL3LQRe4wvOJUP7e652xW+CY+UaLjaIK4MHFoueQyZf9
-NWEHcZmrmOqNI31yN8XvVKbm3zfPxZYgk3OumeA1AQKBgQDV5/hhbSbcbyOS3pDF
-9jUrR9q96RD0ipfJpaae/NuzNaSy6kD4P4opiNiIZA0W5BBuERw7oDhDTVmUQCoi
-CnanQYxT5Gu/TmhQGzg0J/VMz18PM8vUyYV+pSBvY7NVdvgrMy+HWvSJqHN6LKCk
-yTJ+hbcNeMUpsi2yQ2OxbQePoQKBgQDUP2kraoTIIasYIqzRPv2UopNiHBRRU8wQ
-LoXa0eVugnInYVO4mvSyyFXXYsqWrpS5FRWflTep9IRPfi2NEVkAT2VqGFCpMlzw
-J+T7VjABsVzE+ni5X81OHrrsOCHveoc6IC/WLD8XYJYpJ4L8O+lMAl3/OIohCAEw
-sTckKkSvqwKBgF4KGXxbjFYk1jLffi5Jy543fMc5C6c2tvyDwvjqmXvz/XBa5C0/
-YfJYozlzIv4JTd/Vzd+41INiIhu3Cc7lYrytaJAJQAVe5yUwkkj7uDAIivYYA2iN
-IA9JcTUHU/Qi1X/IhQCw0Akk8X+o1wcbHQParVtS2Ps3xjc0wUNjd4uBAoGBAMd1
-X8whKe85VKQ10dpCK+PGdGK6qI1VBmwejEP7BHU5uTUwzZCqblKk2aazfFbmcXUN
-T2jMvabF1qEtnnj3WIBmHJP7jbGzVouJsjJP6IVuvBOQnmr2kOVdE6Rxi9KVfwcs
-wEexBQlfBz5dl0aatr9rahIye/xWnWe44mzmG+5JAoGAffY4PVDdtkbjs+acSSLA
-h8CfAJkUSxMzQ3n8YKrxaF6cTp659CYgFn0sjQB3Cm+1+1afIfPqIzYinQQHimgz
-UQ2NLNCnQWnxtOlr85AE9qub1+y6arep1z20V95jgRaIC5xGvu2MG9t2CitYYTI0
-Dela6zi1M2Nw2xtgzzmHJeg=
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDFINlogKZy98+l
+wWeZeViSZHjXzhNxTCQ2E50DcDles1o7ABtVrs4vUIh/B3ciAyJOtZdanAM33XnC
+NNqU45vFYC5d5RZacl83KWs1zm08V6npwgeL0iyFjSDGw/6iMwMbDF4yPtsR4O05
+xkuczTNnkT7fEYjb/k3wPfWykt050DwhDtJSmnykfRD5nVEjIBMByxF+uD/sGm3/
+E2KKUu3lMvZyNUL5GfbaYWxq0gCKykB/KVOTszm5MXgrjDY2ov+CUOl5RDr1DJdC
+zkyweKXwXNODyKJAnVJhUYSHjH8yeAijC67VdPNxDgA3DdR5UX+uVyRA91o42402
+LqUo9+X9AgMBAAECggEBAKJKeBLcD60JLg/12Vf2GiBzzTVGOKWHHSzUGulQxDqe
+CAQZA2gYQTGc6LNELyV2VRFd2RzE4rVkhjCIGQiJFp55n9K3nx6ZmKAuXlBvAWmz
+dnS3xEStpO/Sj5B0nbdlrgHfvdE6BFuExWlSQr/2BIMYhh1aL0WG6R2HtTbuSGml
+/QDjPN1x8mDunzt01QZDhw8XyyZhMSPfVNrgeS20OAU8tk1somxJi0TlFfe8sje1
+v4npn2ACrr5efbjP+k12w1edny+gFHZT4zSt1ocSj2SAzwSfadPgHDdp5kn42xau
+nc5/+ZcusBGVTsBKJGDxGrzE9to4ga2zaC1nVqiUrVUCgYEA+7XHlY7eAaabc23r
+TYwpLafaCFSyxPTDERz6LbuPeEZGE1xDNj6uN2wKLMJm3Btb5akbTHuKixM8GH6+
+Jg2b04aKOLZOPmOWTmezxHmDmC32t9zHg9cGglKeLwjj/WUN39h0cepBEni03CCU
+LdeFxR2qx0EmrYH9lz5h27Cm/kcCgYEAyHztaXdDHKry49tgoXgODGlVg1bWkmK8
+NTY5nyxjgQoDrZHVo6Np/VZ0T4GJj48e/ThebNnQN/MzdScerf/7OcA05+rfOwon
+6y702BBF+Okvj38s5CamuKPOhvfibhN+xwf4HCax70TzE4VvZPqx4sz9QKwtv0A4
+hfwNsbHYB5sCgYEAt6zjUihpqky4XNfV/8WKeu1kNfYQaZauDXvWt66JN9wX4KLP
+zPKaUIj/N8A4LN+uBH2NFReFdoz3qmw6NyxxDD69+DpYCEDFertDu9hsBY1s3qg1
+0ugCsPC2y12yeMLYCAM8na+yAlegqoz/dCA0Vi2a5EGPhsc3lLkJ0bUrdpsCgYBA
+lC0NCcNuWoo+Zw2rNTahPNS0p6YaJP+mzD6nTO8IQ6eHozADs8GSPuTcL0eWHG3I
+9v1DZq2xN/9dPyqctZXAtm7UPU2GgPD2yntHlYZUdRhCyp41J1YQp4MA6pvfBRyT
+E7gRqU0rWzRJF3QYPMBL4+e3iz55GkCat+PZVwXU/QKBgAPJIHNaKW1njaPwtseG
+2UTzpkctIMg3FWK1ArNiGZ4ZzJ/iFojZE5Ux6ll8DuSbbECxNPkVF+Sw2ljUXy1x
+UElqmJCPvPf/sNiX86VrxxxRBvXleaeIOqnWSiNwCyLT2Q3cEsbxOYQXwnhhuEOp
+1VKpb0ervdGaUFzMQ3SqyWWM
-----END PRIVATE KEY-----
diff --git a/jstests/libs/rs1.pem.digest.sha1 b/jstests/libs/rs1.pem.digest.sha1
new file mode 100644
index 00000000000..f92d4597b55
--- /dev/null
+++ b/jstests/libs/rs1.pem.digest.sha1
@@ -0,0 +1 @@
+30A30E41279453CAB7BB93E267138AD4BCAB4F03 \ No newline at end of file
diff --git a/jstests/libs/rs1.pem.digest.sha256 b/jstests/libs/rs1.pem.digest.sha256
new file mode 100644
index 00000000000..c2cd2b7a388
--- /dev/null
+++ b/jstests/libs/rs1.pem.digest.sha256
@@ -0,0 +1 @@
+2BDA71253E3ADEC8A74B7B1B8F4EFDBDFE4D89B7DBD23C64AFFAB318F28D99C0 \ No newline at end of file
diff --git a/jstests/libs/rs2.pem b/jstests/libs/rs2.pem
index 1282992f5be..fd0ab632cd8 100644
--- a/jstests/libs/rs2.pem
+++ b/jstests/libs/rs2.pem
@@ -3,55 +3,55 @@
#
# General purpose server certificate file.
-----BEGIN CERTIFICATE-----
-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
+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
-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
+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
-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
+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
-HQ4EFgQUW56jsPf2w4EUoaanyRimr/NcH/AwgYsGA1UdIwSBgzCBgKF4pHYwdDEL
+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
-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
-IGhFOAVjMIe3JiEL
+BAMMDktlcm5lbCBUZXN0IENBggR71KyTMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcE
+fwAAATANBgkqhkiG9w0BAQsFAAOCAQEAvZKEFmva83RGbjwJy+RwmOnW7UjxUPIV
+ztp595BznO/m07XzqeB/eR11YGF/O6UjW1tH6pIs/tBB/Pm7GUa8xzdxf49b+I2d
+moEOTNrplot4ssQdqwoX1TaGxcGvK2iIgK6fn6nZJh1nEeafISfMBc/AnR9wNZm2
+Aw4xiXuZp5kjBc4N+wPzgZKck6Gq5jSsFb6i4QYNzAfcFsED5BI3PIoqEUcIFOwI
+y2Aiei/35hCT4ZeBa3q8EF0xEEaWHF++aj2+3LdfcGoYvCLBYKuVwW9H2iDNVqQE
+F3kcB+40hMm/OYmVE1MPNG8BCjBBC8n9Q1SI1JDAIvVc79vcajVKtg==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDpJO+0ppJYyhle
-FO520Mi7ngHOXyVXtNAqe/2SlP3Q22p+wBtd0cDuruufBy8QJV66QurzkApRgOhS
-CcoBRssDs9o0dIy6IuQhuc3ecMX8PeQNEia3ooduH51htITvft3RBfvb6zqHRUIb
-OMgnGyurVk3JMKO7PDdyb3c5ZX9lfcr1jV62/NuRXVue20lfgMS8o76mHlzqS4wj
-JxNIhxUgyx9b0tIJX16X3lBVVC0ARBexz3ZETAPmXu0+R8UOe8kgNCg73lvCRBVK
-OqwqQFKOwwHl8Sw4++50Y5BNkfHxOxVt+/FQ5yuLoPXVJuOxr4o+23Tdlv0kD8M0
-nLohWeZRAgMBAAECggEAb0FrCf/7ElfO5zCB4z0arT1niz2oKkRkmgF1Lf/fZ01t
-cnLmHE0+Dih20/qvoLrUi3nneLch1Wb4dj2pohZQRsIKvMFpbmG8D8QE08NpF0fJ
-jds9kqAClLCNf9SPI2KdI2QBnh6QXYDVXPwpt0+l9StID1wgpfbEVt2OPVuMAbeu
-aieJYHJS9aifDrcSu+cYscRiuhzMnfZhaTE6TtB287NnMrYqjI+bWtod0MgeAca+
-+2VOBCYodzt9GUsHebATzq5yjG3DQ3l4cGlg1eyyJKS1XYkQ2co74SMQmpehji5e
-/IuqRN8AfOWPx8mc/YjWHAbkXRFl7UOSA80t8zXGYQKBgQD6Algbskjo2z56rPt3
-3qv0cnAZqpB0gDJMbJEctQh6Ym20XmBcF9B9ufuG9+zEpPhLPCPuNqUBy5n4Rlml
-7+noqzlG0OYeyKMKZYAHyN0HqVJSmHsk6t3SC9Goowh7wvtn6L8NkBhG1+NYFRoZ
-WMj6zl7lprV8a3ywLY0ykjQqpQKBgQDuuyLlmmfbyqMvy4gF3hFmPrufGeksL5hp
-L3/6/v/XqQvhgHkMTyb8aoVRD21o1Q+DS2m9UGWyk8EsIj/PBkc+W3Rx1uM4RDHl
-y/oamqzhrrhLF1E0vsbi/8CZLzFVQl6s/TPL/mt5la6uD7wSqrXGwFrD/wYE8pUk
-nZo/JSk5PQKBgQDcb96yJQPGVTIExqs/aRWjBpgy+UI/hp1S51MXxcOA7XKfW6uI
-5/KMOMU/nzCjvnWzGIbxzjq1l4jd8WGwPxa2cOqitySANhYT36UAuCmzTKdqbkn+
-JhyJzKQDFiUvwp8bYou6cLgHFum8y3ZkrPUgt3/S66gP2VJqoO9jjKf0hQKBgFVx
-ZOwId2OTAxT4I5b2BAQ0L7Kh83J9Fm+PMJ8E5UyqlDYBZVGigrGU7mI0w1Ph7ctw
-EkhPnhZsC5dgKrZN6PHIicS0xF4/ChzVBI7BDV84yX0Wu1nFbimQn74zxdReDMSd
-WwyH4q+BgyOJPibwMl8QOWwsulrK99ZDEhHHmxmBAoGBAMj8X7L8nL1hXa+e8KgG
-VTFZx2GVOohPOxJGzt95TkS8HzPpoy3QSPoZHFQxrsnAcbh+LYhDFgv4kZ51a5ym
-jMYiWQYtRTseYLLsSEadG9308zWBtz9KhPuEzyrDEFLSgEl29mv2Yg6wH7JClIKy
-wJkq/RP8O+Z0zd9HofeFPoIx
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCxSZEQGQd0fAFs
+N+HZtmy0qZ5cm0hemskZi/vJJyPNARRbB+bAfKD7obajrJYNLCc3pgbWVRL+aNc7
+4tKSdSmon4T80Z8BS3aYljJopNFo89x0oeIHqShdoreYqI5MJF6yii9vdUV38mzt
+8SlTDvgIg4P4WLXJAHSamXYzSd7X4KN5+BCrIGHPhBecnJhEYRnbwYbLhTJGpGk+
+CkLZXZk8cf0w+DWx9qZqdxuMqe9ChBAFjreU6MBP1Q9VhCScANAcWE3JBoASwl2y
+lEpPIJz15DOd1kjJU3ORvxjHNhjIxaMbnX1RzYqGy4fcv1/z75aUX0JbwqxwdJ55
+2s7QM9lJAgMBAAECggEAKengl9OzBYEDvRgBFz2fuZ6YSACWPXeOr7F+l3Hfbuog
+a90UWtGcJaF30n5NA1Q6+VcRKr72PJuAtzHK4sE8VhdQk4zjcKTspuprhH3i3FM6
+/YAANhtx5aFAkqDW831tvfwZdtpc0BzKT/7B7FcPoMOnAaHHaHvpFVvOrBV8z8Bx
+Y06fs7QJH+R9DRLK48hNQ7ezuzSdOyJM96UGdAH7qt73tFBUkRA4WHjMBuJAnVSd
+hc+Qh2a39i6SC1hAA6AtNwi8QD6C7NIvdZwisVv8cuSFyJc53kM4xbGzm1FopZ3m
+QmDyJFhSatCH8IVdbwErDixziQkVc2I5DGCXShf6mQKBgQDZ9NKGceu/pxcC7Qqy
+GFHWv22MVRiIaA0DEM4lFsbhpEtNA4cKVLpFjY/jzZvdIePPPj2OvHVxssrGJJhL
+eK/WP2yUaWQ44wIqNnsns76UnCTreBLNqItHNlggV5tIYFIn1uHUeCg7HhRsCwRq
+Fh3WMQ+z76C3GF5cu9VDwwd4mwKBgQDQO30xGHZYqrqnrWyw5NxjdiDmWzCMIhO+
++DsOpDaPuleeT9/bEyLHOZvVcUub5i6Y1itZtAOgFnBbuxPozakPa9/fbN9TdQ+a
+jj8hyggFZSG2PDexXQnAJwSbXT96aGi1/CVtnLP4N6kmtO0wjGLq3JggyZLl+G1K
+UvYux0MZ6wKBgQCqxykaDTNSlULzmPaTe3jMkmvs1FSHtTfU2hscdo9ZCBm0e3oZ
+PzBBBV3kehuRlldg8HzdVY+UiipWPSBTqnnknwed9kKATGdK2it/fVhsKzjGg+v/
+1vtizhMZLGvQtyBIdRe4GnozcCtCSROpaDDyvrh2HeHI9UAi206MbMly1wKBgDqK
+zwqTfwo0jZ+AkVM2NIO9/UfmEUMEfZqt/SSDpFdKI0H94Midm6R5HMeoP4KH90e+
+xpdEldRXGqWfddx4nXQZdupAmJTFD2r7XOJqA1FI+m5ahanWp1wfXBs13xfR7MZl
+Kjyj1rENLQAV061XeqPe+uIU6bi/3DIOGupR2RqbAoGBANc3mLU41tA3mFbWhifP
+30XdZTMffoc9iaQ8GdgceYwZc9WvOF1URFweNdUuRRRup/X3yPanYxjBs7hhpY13
++rIOClCvNJ53eZZwL/mXTMCtIpJ5B2p7dIHY/N1UOLiOMNC8wJMloqPL8OTYZUmv
+Rqmx8CbeoJMcMc21Wbls5RX3
-----END PRIVATE KEY-----
diff --git a/jstests/libs/rs2.pem.digest.sha1 b/jstests/libs/rs2.pem.digest.sha1
new file mode 100644
index 00000000000..04f9431cec5
--- /dev/null
+++ b/jstests/libs/rs2.pem.digest.sha1
@@ -0,0 +1 @@
+A78F67FACD85FC28B02AF28515C1A115058C2DC3 \ No newline at end of file
diff --git a/jstests/libs/rs2.pem.digest.sha256 b/jstests/libs/rs2.pem.digest.sha256
new file mode 100644
index 00000000000..6017cff8369
--- /dev/null
+++ b/jstests/libs/rs2.pem.digest.sha256
@@ -0,0 +1 @@
+F993BFD896A91AF8FFB082B7F13C20E1F7C693B436A9D257B9C236FC508734C6 \ No newline at end of file
diff --git a/jstests/libs/server-intermediate-ca.pem b/jstests/libs/server-intermediate-ca.pem
index 8f97a1e57a7..b9665630db8 100644
--- a/jstests/libs/server-intermediate-ca.pem
+++ b/jstests/libs/server-intermediate-ca.pem
@@ -1,75 +1,76 @@
# Autogenerated file, do not edit.
# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml server-intermediate-ca.pem
#
-# Server certificate signed by intermediate CA, including root CA in bundle.
+# Server certificate signed by intermediate CA, including intermediate CA in bundle.
-----BEGIN CERTIFICATE-----
-MIIDaTCCAlECBCLMKCQwDQYJKoZIhvcNAQELBQAwdTELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxGDAWBgNVBAMMD0ludGVybWVkaWF0
-ZSBDQTAeFw0xOTEwMTYxNzU3NDlaFw0zOTEwMTgxNzU3NDlaMH0xCzAJBgNVBAYT
-AlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEQ
-MA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMSAwHgYDVQQDDBdTZXJ2
-ZXIgVmlhIEludGVybWVkaWF0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
-ggEBAKCj95jJi63dCJDKyTWQAJwgLtvqwPmIvBMbYMcmrolP3tYolwkkh6c0RJdP
-UTy4gJaLZ9b9B8GuiGFatG+ZzEqCUh6AlG1lGJwdyqyP2eotpzkZJhwLGFc81DUt
-7WKhZjHikgXcAd3VMCXsjv7/axvBnc459SpsCW5heOiJ3Ap8OJIrTuD4GAWW5cfW
-GYa1v07hqXZ7SEloRE5Hm5bItnZA9+A5QNCj2a2PqK3TlrtCnDP125iYHc4W/+NO
-1V9LPKpDffdJ7slhrX69k9oV8HTQBgu7lRHKQlprW64pg6EMsw/5hpGjpZkyG9J9
-L1FYrXqsagA1E5j87JQH+SJDOEUCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAPRu7
-YtgaGPx4O2IfvYoK+BsiD/55WylDp/0zxf/xipvuoPRcMgX1ORoNuQTPfeIMxlZS
-UAIRHQSjOZQkH0WL2dglqaoBhTXO6c0PUuWOUsDDwnZE8lj26Jkka6PC8d8t7gjt
-w/k2IRnhcklKOu6pNlcYi+/WGcWphmkjMRWeka0vqXab/bxF1sdeHD9bMY59QOwI
-FT0JCG8Wn0LSi6V/Ip35JV3CryBP1Jual2aCXIXEKm3m+P4NboRQTZ7zqIcJoA8S
-i2GkuHCPOhhQP2isiRRBILujcJxnRYrR7qNIqvMrmPx3va8fMrHKtWAx+bfo/EIJ
-hlU1Eyls7Xv83x3vaA==
+MIIDrTCCApWgAwIBAgIEUjJhqTANBgkqhkiG9w0BAQsFADB1MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEYMBYGA1UEAwwPSW50ZXJt
+ZWRpYXRlIENBMB4XDTIyMDEyNzIxNTk0OFoXDTI0MDQzMDIxNTk0OFowfTELMAkG
+A1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBD
+aXR5MRAwDgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxIDAeBgNVBAMM
+F1NlcnZlciBWaWEgSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
+MIIBCgKCAQEAszRjtWB25WU9jQus2tifRDECbm0S2dr/+JNDN+af1gyTlun3gHVw
+tWTwtln1CnKoifoiAnN69RW43Z7Y3/s6OC8bH71QWUpwPAEoIkQqj4eTBTCu0vbR
+lHD5asmr3zrtcyS4Lp26CD1zFl+oOOW3rRZpPh6qy4/OsYUUiNEnSm1rIRRLiMMz
+LJLRDBQTU+TJW2HSM4UzwlqGIblWGmHwtu7l0bv+n3cyKr+xbm5z9jTsi7Siox3P
+mwanUR+f9EjWcmRG7wCRqeZ9q5EX4nLr6AGo/1WWrn7kH9BXcY4GFjISbZsYJvGQ
+4w37AHboxmIeQlkGsr+GKYAi3zhuNFB/7wIDAQABoz0wOzAdBgNVHSUEFjAUBggr
+BgEFBQcDAQYIKwYBBQUHAwIwGgYDVR0RBBMwEYIJbG9jYWxob3N0hwR/AAABMA0G
+CSqGSIb3DQEBCwUAA4IBAQA0u5Ryv/jMBbnsab4pCwVkY/r+NhY9Cev+IQbOP/op
+ig72quZP16DLP0NwbSo/nUPlF9UFO1q1qVTLukOqANmbmYhfkbJJyQl8MBiaV3vg
+kz89dwBYTgiQuiKm2oU9vGDV6uEOCSeG6e+vs/pdcqaKXif2Zt4Vxv2vbxKWOQRI
+hMBvgCJz5I8JAcH4fTHdrj0cwvNPphnZ0gzDIBL5E2wiluna/fh4M6lnLiztDraf
+s0ddchZ2lRHsoz1JbvCsAg9xUC0+RqQA+yMhfNqf8CxiMtBAIaEc8hNOvuSCbER4
+jZ0vAcXWXtANizGV5XKczpPZCQvNetnDGcC3+6dPauAD
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCgo/eYyYut3QiQ
-ysk1kACcIC7b6sD5iLwTG2DHJq6JT97WKJcJJIenNESXT1E8uICWi2fW/QfBrohh
-WrRvmcxKglIegJRtZRicHcqsj9nqLac5GSYcCxhXPNQ1Le1ioWYx4pIF3AHd1TAl
-7I7+/2sbwZ3OOfUqbAluYXjoidwKfDiSK07g+BgFluXH1hmGtb9O4al2e0hJaERO
-R5uWyLZ2QPfgOUDQo9mtj6it05a7Qpwz9duYmB3OFv/jTtVfSzyqQ333Se7JYa1+
-vZPaFfB00AYLu5URykJaa1uuKYOhDLMP+YaRo6WZMhvSfS9RWK16rGoANROY/OyU
-B/kiQzhFAgMBAAECggEAYNydpj4ZADwgNxZfnvF2vK1XM/noZE6DgU3n3A3B/j/v
-0NhmwfeJ6FNG7KnCBUgHGT9z3Jlz/OBdkb5cwFJPcboFBClp1lC4NyJrnAOdVWwz
-weUdKpmyEqA2IN7RncBOW9QPUoMniPhMcQGj87RVhEYJ/ljKMMs2IJ2bhzPhP1xV
-MK/NJ6cT680MwZTzWWIPYT30Pv6IDm5INjb+AG4PuzDXTx28GsCw2z9RnlH8aSdu
-9qSNEoh4oXef4ny2niKa+fwRgTrkUYyljML34301dx6MclsMz0k9SprGrB2dPAxg
-IV3pRO3rqS6oEZKjyyXHPV45Q/AAm3tsP5aZCJm9fQKBgQDO6Qj5UpJT1PZcpTLW
-UY1l9N9GWDlRCCpprQYKwOWK6H9Pb5ptBYzGrIjC9YmX9hYjL7wOiznSsCO4zv8d
-1AR56A3APzD2iQQTyRkY9lr0CbtOSeYyg6MHQOVY8T8E/gw5M6SakLeB9ZwOLjxl
-fwu7gKAYmZi+h11R7f5EP3HZdwKBgQDGwK0RAC+fxtGFOY9CGqwG5rom3VPvpKd9
-gjlekXbGguA2Z21y6IdMjpTcrbnCX3DRNedpq1LH0r4xW2zrjV4P7g3j7qeSQwqW
-exHLvcfEkUAjPpaE64sC3qYgwJSwNdVWG+ikBmvT4oobFsOZzL6563Md54Tlo+bN
-MQ4dPhCrIwKBgFR4OGyotAo7X9RUsNtj8cjU3i32qHeXUNFRjKzpMQyze/3u/ulR
-IbaeCzskSGbcVQ9KVojNd+62b+7ruqTvwGAQR0Tbx15uc1ase22AbYNBUdFVRAAN
-U4oLiVX1LxgXqt/TYHilafVJUstLPubkpeKHUVSZqAzocEWZVnuANzdjAoGAFvUW
-iIou9hOvC+Z0J7yQ9lMcWXTjRyELv7GVEtlWkON5Jo+X0tgNGMi3ZS4j8NG5ZFEH
-o+sIKtCq62SWFjdEEC79J8DfVkOsK2mXyqLnOktUzz1hgYT7j59MLShRhHETbVjX
-7GpZdiYKscpVWaSOu0b5CxE9BpGCDV2HNdV/c2UCgYEArnS54agkV1qQ6AbMHdkD
-qAiDqOosDDzxgnEz422r5S9CGZ4n8uu9PGhb8NtlLxxxfKnArFGOiHmV0aPULUNp
-tX+vq4JC+1gyStUdwYkrhN48eG1KUFiAqcfEFxBgvdtpKxeOd+O5SKD/ceqJO7+3
-Z826BiCbw4nJAFNHmbNr6iw=
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCzNGO1YHblZT2N
+C6za2J9EMQJubRLZ2v/4k0M35p/WDJOW6feAdXC1ZPC2WfUKcqiJ+iICc3r1Fbjd
+ntjf+zo4LxsfvVBZSnA8ASgiRCqPh5MFMK7S9tGUcPlqyavfOu1zJLgunboIPXMW
+X6g45betFmk+HqrLj86xhRSI0SdKbWshFEuIwzMsktEMFBNT5MlbYdIzhTPCWoYh
+uVYaYfC27uXRu/6fdzIqv7FubnP2NOyLtKKjHc+bBqdRH5/0SNZyZEbvAJGp5n2r
+kRficuvoAaj/VZaufuQf0FdxjgYWMhJtmxgm8ZDjDfsAdujGYh5CWQayv4YpgCLf
+OG40UH/vAgMBAAECggEAYdyROsJkC1+fHkAq9BPp3aZZ6o28BqZWtJtO0N8rmAuk
+KXy5QThhBV4LKbm0XDFDIp4rJmWD1wU2wCf3zVD3eSkYSdvrXeeNpOcI0LWi/GCQ
+A/yS6/gHeWW8fvmE11Hpy8BYqHRP3CIakDRKvE+OX4JmlJrQsHtm54CCNzjomPZ+
+ijiL3RTXCyc4Jitt465MqI3AfKxPOIxIkblHuVU7C64qZVPHJE6qqeFuji7psiBt
+7N1cbcI0nj4ntCXhMOaufSPq4BXeRINEX1lrwyVXJZJhz3MEXF5+c2pt4Y42SJFM
+YEiBNMXzTuAfanTRdj3y1/Sut3YWRYLOA0l6qEZRoQKBgQDueaif5QiS8yWLWPiZ
+Nla8xL62bzxpxc+74U/OJ/RVKzei81+DKWhHo7uGsiJugTkaoBWogknaFo9rl4va
+KaOIltRsnNUrvjZi1CxhYovJEhkgVPBL97YO3p0XMl7m72qsDTfL8OJHZgF2sQpd
+0/wnd9vgjdFQjaHr0fnjgx6K3wKBgQDAX7JMhz9rzL3ig0rUZni5Ol4AsIAgKtNp
++pXa7p+BJQEAVa4H2mquwLKa2t9yPXQpjNWGJebu8Mr+6FqaZyBejAY/793/7+Ww
+ZlkqxnssV7QbRK5EuzaY/4du09Z5quYCFjgKL8kO14vIFMR2GGgWfnDw7LWEMBXl
+zpDdz+y88QKBgQDIoq6OKAG4sLzrqiUtshvzoYvarWekjfqiVYPxLIhSh5O9kwjO
+ry2+6DBDuOdjFXFXx0uxhDxiMgzkNpJBMDsYFd4OqzxmGxhiuaPFI0X8Gy/slcm+
+AGC5ze1YsNZLcS7MJirFeJrH+zhMBdN08X76Lctd97MdFKwgXX7iPVSa/QKBgBlC
+98jw4bUoN68tCoCFzEiWj42Ln+eZeBWsoE0VlMCCuXTvy2Cgn+2+xDVtlHYN99kU
+810gUQkDecSrgmpQLIH95Tw0JXTcbc8SQZdKZRZXlgEWrcO8ydihhYlaLAniFT4k
+6Mr9p2tZhrOJdpsDbXe2tuIMU3G+VsHMtF1MVowhAoGBAN2iciuWzfnXI92yGfxW
+9MV0Eh8A3OeFWPel2qWKaQ75ehBO8EbBGQM8iLY7IXHVQkv9Iav9e5JpHhbFf6eP
+i9uPz5v91idOfmubGhVmlQPG+iA3yRGnys1opU+daEVyMaUTWK2z+jC6gPlMK/UP
+HQYfaJnYlK3rMz5btAv8FXNz
-----END PRIVATE KEY-----
# Certificate from intermediate-ca.pem
-----BEGIN CERTIFICATE-----
-MIIDcjCCAloCBFNvXv0wDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MTAxNjE3NTc0OVoXDTM5MTAxODE3NTc0OVowdTELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxGDAWBgNVBAMMD0ludGVy
-bWVkaWF0ZSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOcrt0K/
-K8ueq9lQ9wVtA+rka82FPaHXpZkH7ii/ZJlNcDXLaJPdRb7XgAabAS3gru+Hpm/g
-kAofoL7cDmGZRAbiW0I6X5Nlmjh4/0E6RxSs0urhU34m8sM3OPmAgbq7oLlFINZ6
-GbVR2RzMWhK5HPld8WApDkIVpBFbRGV7dt/LVKY34Nab9hu15WRSH3wzSHJvt8e1
-alYxaRUoE27Fk3zdHPw9Z91/XvfIThTsNXEQVOeaieyQLwoKx8tpMa/ck/mFmSkD
-nH4h37ev0ZABB04iTBfLGCpUCKd5LerYIqEu4UPp9r9czbco7twp+k8875pJ3bpV
-wMH0/jF68GTC8HsCAwEAAaMQMA4wDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsF
-AAOCAQEAaL61HT6JD19Ok2LY6b5KkZ4oRhiV73l2/82X88GcV63Bl0rN6AF+W0ut
-GuHzSqcHV4qZkt9ezNoDYq41BsV4I8Cxvyaz8is956uyrzQAsVCzidZSGeq2GIfV
-9y+IRISBRdzXQHrB0ni93b16MJO1KoJxZbXcb8W9ll2URp+YEnHIrhWpDcMcHN3O
-mjoy1+WpHDXpNK2D3Xk5tT5pwxJZWRPB9wvPfTux5Vp07+Rkef9YjXL2ZZxt4vKu
-WU0HJWfK905HpbHjwFNRlbT39WWaF8VeJ2nT6OrXTpE8tDdPoeZt5u76eaWEmsf5
-gX2ClrsSmegOKT52V+2NAlKDjQkaDg==
+MIIDdzCCAl+gAwIBAgIERt21mjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ3WhcNMjQwNDMwMjE1OTQ3WjB1MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEYMBYGA1UEAwwP
+SW50ZXJtZWRpYXRlIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
+uLEuQhQ7IQImAIKUMANKaR+4/WLf0F03p5RDlv/TCNdEXTLws03x7bppdv4Y8r6+
+oChy+8rtyA2ckblb0z0OeMlsJY5a04eUhrZYeG4OXn1QuvUqfXl++oBlHnWUD3xG
+3v9oPKMxGf9nr6JJXBCeG3owLR9Lbr3QS6Pvz9WwNZGpUVDm/QQcKvbGHmB9fE7/
+RM6IgxtagZlug5WUCTT08tsLfb89UQchCAjO9eZvDcENofXcnsJWImJdTYDlquMM
+DB54R9cqoLtDV9NiPVYsjCQ1BgXYMxeG0K/T1rWQY4uB132Y3oFy3RxaDT1BqdAO
+O6BOo1AZNyIYIPbt0+Rp3QIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3
+DQEBCwUAA4IBAQCSOAjf6Qh0JnAOK4TqPYt2VG8HEmumxKk/HvIKrk9gbBc6RoVi
+Z1M/gxRz82lnmJvIPbsJk4AmTsw8Pnech8Ujeahw0ybRJbLs7FA0YrHg1B7517Tr
+eZl6TZn7o5+3HKKcCPpoh+P1XrNWP21NsY75T8sTN0BQ3im3aZDApgO4v0YFqWl0
+20YOdrLk81cJ8Znjdh+/ieR4uPH06CbXjAGPAbB+mnEWMNLlV2WGsJtDCHYM+wU0
+zd0wy2KvqMBbr014v/c4jmyeCBcmgxQ9Q8ATWbys7S5p0CFB6+zeV/2Mb32lwSCM
++Xeg/ms5ZGQJY5fIznwIg+Osg1zGvMF2Rsq9
-----END CERTIFICATE-----
diff --git a/jstests/libs/server-intermediate-ca.pem.digest.sha1 b/jstests/libs/server-intermediate-ca.pem.digest.sha1
new file mode 100644
index 00000000000..2bdaf850a79
--- /dev/null
+++ b/jstests/libs/server-intermediate-ca.pem.digest.sha1
@@ -0,0 +1 @@
+263036BD7986055530468D3980687114823C2687 \ No newline at end of file
diff --git a/jstests/libs/server-intermediate-ca.pem.digest.sha256 b/jstests/libs/server-intermediate-ca.pem.digest.sha256
new file mode 100644
index 00000000000..077a772ea55
--- /dev/null
+++ b/jstests/libs/server-intermediate-ca.pem.digest.sha256
@@ -0,0 +1 @@
+57E7FB1DC241D6A3D88F71929D13EB828ED62F05307FC34A88CA712CD54D26EB \ No newline at end of file
diff --git a/jstests/libs/server-intermediate-leaf.pem b/jstests/libs/server-intermediate-leaf.pem
index 93d9d599f70..37913546525 100644
--- a/jstests/libs/server-intermediate-leaf.pem
+++ b/jstests/libs/server-intermediate-leaf.pem
@@ -3,52 +3,52 @@
#
# Server certificate signed by intermediate CA.
-----BEGIN CERTIFICATE-----
-MIIDmTCCAoGgAwIBAgIEBR9TszANBgkqhkiG9w0BAQsFADB1MQswCQYDVQQGEwJV
+MIIDqTCCApGgAwIBAgIEJCpSyjANBgkqhkiG9w0BAQsFADB1MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEYMBYGA1UEAwwPSW50ZXJt
-ZWRpYXRlIENBMB4XDTIwMTExMDIxNTQ1MloXDTQwMTExMjIxNTQ1MlowgYIxCzAJ
+ZWRpYXRlIENBMB4XDTIyMDEyNzIxNTk0OFoXDTI0MDQzMDIxNTk0OFowgYIxCzAJ
BgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsg
Q2l0eTEQMA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMSUwIwYDVQQD
DBxTZXJ2ZXIgTGVhZiBWaWEgSW50ZXJtZWRpYXRlMIIBIjANBgkqhkiG9w0BAQEF
-AAOCAQ8AMIIBCgKCAQEAu3VIsuH00IN+R3RYAPRFvQs2RpvZ7JJAwLhU9xhsPbxB
-oHbuFardap21A56PzL4NE6/sLTZfSYvpEwtdCT1Hz0AEDKFh/lU8xJyFPYX6RfRn
-tQJ7KVks3w3uXbpPFdHmZk1CQjKTiRZwcGpLRl4bNTyxSFJtEaZ9d969UkU/PQlg
-zc1N13k3tJJ8syOnzL6WzH0ci8sykunyJb0tiu+JPJ3bX8xVBjDVggAMXY6JuE+g
-WZdCi7QZLBDFrDLUgJPNpfIyUdn/31vaDME48rvPJnQznmHAZb0jm6wPHIjMGRTA
-5haLWa4fQYteNCtpqZz0YK2lsiljH770RVEcNxzEbQIDAQABoyMwITAfBgNVHREE
-GDAWgglsb2NhbGhvc3SCCTEyNy4wLjAuMTANBgkqhkiG9w0BAQsFAAOCAQEApwEP
-FUWMH9BI/i3sj7zC1/7G0kSMMWhzZTBia3sgaxopdNQITA3X7jg8PX6NVVxK/vJY
-3mS1UN0qwWQv+ECun8u0ZelL35MbzpO1pxFF35glc/gqHIaWpJbWtMOmtZ5c65C2
-7PyGeKvIv7DtkzcYBMtqhru/Rx0pzpPRS1iq4TgfE5JUNmQ1hVrmaf6+VGbOpdcf
-vjWyoxOcuGeNG/J4qLX1CRseVB2VPZf36VsaWZY9/FTOFnTHrjyFXzMYEGcSMqsP
-8EkougXlce78328krmOOZNqU+mt9nnf5EZvHHuvAAYurfhvdfFD5mjSS/O+MQ/oF
-JcXWm2XdfzUa5G7zYw==
+AAOCAQ8AMIIBCgKCAQEAq6glhf+rRBoVKBl15cZ2HeE6K5tY0R8Ore5T/rat1IYY
+Lte50nw3LassVz/OfDWOd8AMEnReaz0iVy/YWWQQxZqgAnRYThfjEpN9IfyplzKf
+Xajg887hr28Sh57JLGbpBpfC3sODvPbAk12zdJlbtHNp94hYdatVPQiPaL94F9a5
+auQaKJQS/6W9GtfnQq20XMPFj5DEoybe4aqDkEXZBfa/Sf07qw0WcVvf6tzDYcH7
+6DFnUaZG4+NNkEy70Ckpmk4XyX+2DSdHd974AZfnb7aDXx9IkXExTPwTm4/6LvnF
+LOMTiCUJaU9kpibdLfmxdQqODt8cq7hCYhljd3Fc7wIDAQABozMwMTATBgNVHSUE
+DDAKBggrBgEFBQcDATAaBgNVHREEEzARgglsb2NhbGhvc3SHBH8AAAEwDQYJKoZI
+hvcNAQELBQADggEBAJQpLZw+YSScjyL9tNlaoRMhevxoUvTJUiC7UWoLyNdIJxsu
+MgNYA+sHUgtCWu1m1cntLNkW03eZ5/HaiR9S9USyKmLkajG92cWYopvS924MsEq2
+D+bWlQckt2AyMaoCD4uT8Lo8RLlb95RmKeVsi/cbEFJMk7U2BxO0PaFOeEeNtjeY
+LG6LU90paMrWqw8n2zgiWaHFH7cG6fFKHadygdvzxvMFJu8C7djyYP/MjbjaodOS
+ayMZjZ7h1pnCHWZtO0Tb1onjbpykE6R6VFzCMNPWztRPntiRhhVIelWQfCj9PBTx
+ohpjzEZ9UGtqpEz8hJbDU4RF6aD0XQ9zSB/EhuM=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC7dUiy4fTQg35H
-dFgA9EW9CzZGm9nskkDAuFT3GGw9vEGgdu4Vqt1qnbUDno/Mvg0Tr+wtNl9Ji+kT
-C10JPUfPQAQMoWH+VTzEnIU9hfpF9Ge1AnspWSzfDe5duk8V0eZmTUJCMpOJFnBw
-aktGXhs1PLFIUm0Rpn133r1SRT89CWDNzU3XeTe0knyzI6fMvpbMfRyLyzKS6fIl
-vS2K74k8ndtfzFUGMNWCAAxdjom4T6BZl0KLtBksEMWsMtSAk82l8jJR2f/fW9oM
-wTjyu88mdDOeYcBlvSObrA8ciMwZFMDmFotZrh9Bi140K2mpnPRgraWyKWMfvvRF
-URw3HMRtAgMBAAECggEAeHRkwo1vQo08F64q3nIYXeFWfwimf916vlu0PRL0erb9
-dJ73XfTtUhUEu86nmGiG/p+Mo4DMufWtTw9+OPGnswTvlS4eSc97vNrWwzHUIB9s
-hGOTwH4M10ecY53UM7Es24/Jg7/8DZrdpV6oAA94bD0TreVJMI5LETuPa84TVKQW
-Jwf05xqnTUKRC8Cz2vh5N5oPbUYJ+qPDeoILHYWqElGheivBougcuPF/Hf8j2mpv
-eBck/LOL4t/MbOm5RHiBgInx+G4kzn0v/0yHoqF2R3RMg8LGJz4NZaw6iqX5S/3L
-xuhNYSkxLgVeBekGe0MxafAr8xYpf0twxM6qaptwAQKBgQD5c2dKlDIq7T6J3ZMz
-0XkJxrj2p6jUc6oMKENEaBqXnB9PnmLv54PnidTXlu6Eexm+bqE59pCo9AMzvXcj
-pOaoWQTQxZvBUgiCcHUvic/i1LazH7Oc1kutJxYn/3iOPxX3UeEZI5c6qEx/SCo0
-CGr1octQ+nyUGEKGjjQ5pFaWNQKBgQDAYTfvIoCK+tFuFBg8kS2yFG7m0bfRqwhG
-St15rHTM6OKboph/GPmTgc8MOD2T3jGK8rO3ibTkzMvrukUvaP2k9CcLKZ3GWoqY
-/lxVxH1Hf8d+/KRaKXwJTVRYYoHSjpJ8ILsonzE8xgtxI5jd3v8lYIcoiiR2+MTj
-49ugFdncWQKBgDEFU8QdMWqsKsEPERF61c1tBwY51nzBqiYvd2CnEKrAnIqZ9pls
-pshGltQzLfZM9rcsqHRqlu0M3uA5GIOhsU5eCAs6+ivYgiGYFf9clsTdxnWXAkYM
-+twxNTJxCvDxRtDOf2zgSKTXVAkjVl/ZU6OnwvvL7dVwmwo0QeEeAYINAoGBALV3
-PubAedYfD4wxQkdnfl4bbh0mN6l8FnsPxWgvZ6GeD5tVPVmuOkWMzbwuFM+1aLAz
-jZiUOeEU2UoLU5WMCK4fa/DYma3v3ArC7GAuzymxe4HqWDGALjMsEWKp0OHHgJ+7
-1C9WMoCsI0DeniSzY6NjMTrpS8o5kKeSWKnh0rZJAoGBAPH4jJRiKPQSohBF+2Y0
-1U6KoW/BrpEEXutjTqCgWB4Tgo0xuVeH0tWtTetDQvwr9IXdu61vVF/CW5sRu1cV
-yBBNy5UFB2C+l2fTtn9e5LGQ1aVOYuz+9GM2hPJ1nuBfneC6+PD2zVdpXI3p5U6J
-NJEQxPTe7cRq8wdX8zoY0ffU
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCrqCWF/6tEGhUo
+GXXlxnYd4Torm1jRHw6t7lP+tq3Uhhgu17nSfDctqyxXP858NY53wAwSdF5rPSJX
+L9hZZBDFmqACdFhOF+MSk30h/KmXMp9dqODzzuGvbxKHnsksZukGl8Lew4O89sCT
+XbN0mVu0c2n3iFh1q1U9CI9ov3gX1rlq5BoolBL/pb0a1+dCrbRcw8WPkMSjJt7h
+qoOQRdkF9r9J/TurDRZxW9/q3MNhwfvoMWdRpkbj402QTLvQKSmaThfJf7YNJ0d3
+3vgBl+dvtoNfH0iRcTFM/BObj/ou+cUs4xOIJQlpT2SmJt0t+bF1Co4O3xyruEJi
+GWN3cVzvAgMBAAECggEAZ3RduRbP16mImrRNlAA6a+O0NVfY/aAkLrt2sArVVULE
+DGdDvRHUB5gkjykLf1yf0phSLkUoKqWbrsRNNgLTAOUiDpikJ9zJpAZz4inu5AtE
+dSQ0/3vuFNdyaX5PbI1RYAHTFoLrQNXOVoKgh2NuG6F7eg4YkkKCitg/5jePX32z
+SWqIJEixlX4+Gr1t84wA5b6uoz6a3MT71QQc9pJt4l++5rCCsrT31tK9lxqq0wAh
+Ai38ZLEJlopz/4zexhv9JAI5YpQmCpLuRnXHny++AzaZP2IeUw7UeDkDSgaVCDbZ
+gEyD9FDAmOhENZxDVYXyQduNEPgKUkMFoCVpkXO/UQKBgQDY78jBAiqCIXtWITzX
+ctZW7ZUL8dyKoIEOEUwn6z3MEOgOM1thmbYFIwZER6LGVTeh8H7WUIC6HyRkevbu
+LHSXk1i0xRgZKBNZTcYNWsAnHA+w+XZsfqMkpguy0j4I2Kqcmko1cHjOWiDA0uMX
+oLQhCYTWpZNNQ/ZCofWGdoPehQKBgQDKkRRqg8bzLPQ1N8cavv11nIC2J8zk1ix7
+KBMO0sfbQMz9FfZEzrof99f4kW1ViM63cIDWfjbdv8fgjcqviKW1A3MkRcqhepvq
+k+X8VutD6u9lnUldkCIxeOYdYv5W66ctS+yrbc4imdahCgDJklhFTXM9F5J8wNdz
+92Sttczp4wKBgQCDwb7wWtxuhN9gBHfrcvfzfADWbGNCXxGC9caHSD0UQABw/4g0
+0yLWI9uehNO8Ge3cETE4AVTtthRoYravGZkGppttz3c/cDOwPahYXBHwrv5owlrG
+snNrwt3AEilTPiUBUERaCKGW0u6prmv24cgFeL6Rj6bTer+K4Ms6i6iz8QKBgBn7
+XdkDqgMK4w/oZZtin/Pz7PZwSHGZnv709uzR0FypBSH5LStKMMlk6sixLoroD0us
+HHpmmfb7YFHHHhZBuq9rD9u5L/JiXZlK+xbQt0Bw49/uurhLgndCAJIIXoMbmsfO
+kz6xyNzbSpJBTDSOls/czUkqutlRitEPDFTTmsLtAoGAOAyfMbNEvQk0y5sVRMqL
+d0YqYZN0kEHO20roTFDrMrpXsh3KfbLZP4izBz1B3NOEzdNuCCMVVfceTNmfms8A
+2/dh7FvDF6HJOMFQl2uvSHlouR9eEgm6zSRBORWkzG0f45qpvJMZBBpJzmB2wgVx
+rXc+yJjRTig/EqqVtQ2zBIQ=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/server-intermediate-leaf.pem.digest.sha1 b/jstests/libs/server-intermediate-leaf.pem.digest.sha1
new file mode 100644
index 00000000000..eaa87a3e7ae
--- /dev/null
+++ b/jstests/libs/server-intermediate-leaf.pem.digest.sha1
@@ -0,0 +1 @@
+AEC6D0D178627DADF56597264DA6C674498197EA \ No newline at end of file
diff --git a/jstests/libs/server-intermediate-leaf.pem.digest.sha256 b/jstests/libs/server-intermediate-leaf.pem.digest.sha256
new file mode 100644
index 00000000000..97242f0e438
--- /dev/null
+++ b/jstests/libs/server-intermediate-leaf.pem.digest.sha256
@@ -0,0 +1 @@
+B87926861C8DD6C66214A91FF96A2403793604E78799FE55ADE7ECC90EAD3C33 \ No newline at end of file
diff --git a/jstests/libs/server.pem b/jstests/libs/server.pem
index 7552b7b7cd5..00def9a75d5 100644
--- a/jstests/libs/server.pem
+++ b/jstests/libs/server.pem
@@ -3,56 +3,56 @@
#
# General purpose server certificate file.
-----BEGIN CERTIFICATE-----
-MIIEZDCCA0wCBAyW2DwwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MVoXDTM5MDkyNzIzMjc0MVowbDELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxDzANBgNVBAMMBnNlcnZl
-cjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAME6pVjavnJIORzETE+Y
-UKRONMo0dRF1Jmib/zXylTssSJDGwrxL10vfCAyXSxJqQRpJraAbdrV01e0jdal3
-Y6jkXLqxv8rWuMDaFJUbOFPjz8Ad4JsvxSgJVSBeKRw4YcGC5U9B6lkuF8oZPq65
-nhLeHZliDL2LZCep8+8YCY3zPhpQ82huf4DkOMsbPxe0/Mo5r3Z3+BIMsGrKeVlY
-TUBReMLUPAGcuAkyxN+WV6wRjlXxUOzk0txmWTzzt2dx2XLGR/Ob8fLRSm4U471P
-7lRg8gaKzVXUcFQOA6KiM+aeIcDYlL/Z+5yyO/aGY1Xxt43MkrsAq2Afx3gKQYe9
-yukCAwEAAaOCAQkwggEFMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMB0GA1UdJQQW
-MBQGCCsGAQUFBwMBBggrBgEFBQcDAjAdBgNVHQ4EFgQUPyEOAwSRUZaUE3lS4Nsq
-2KO0mMEwgYsGA1UdIwSBgzCBgKF4pHYwdDELMAkGA1UEBhMCVVMxETAPBgNVBAgM
-CE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQKDAdNb25n
-b0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0IENBggQZ
-kSMSMB8GA1UdEQQYMBaCCWxvY2FsaG9zdIIJMTI3LjAuMC4xMA0GCSqGSIb3DQEB
-CwUAA4IBAQCTAoHLEMxJF7OFKTpuAub1y9ooiryn57agjiSsV8J5EiNahbwyr/cv
-HBD+TTvOfNV+RudScxKPl+opz3qAX8dDDbGAgUdvGeDI3UTiPOjD2okVrH8hKlA1
-/cTkBZNc6b3QZ4URoG3DkGDgM2P9/fNBp0G0QiYns2hMWy8mxxTuC3zGCB6q5A48
-lGxz0eNOHvKDwhAJBOeSVKc1wtmazviU6d5TH+WjWKO5ulbMiQq8R7U1gPcIFhk+
-937EfCiHE8VQOdWJ2XHeY7XitT57ukvi9PZYDYd2Jc0at2l69MYoFetV2jM+l60R
-KIsXzgkv8Hg+OYXl/du6oWJsGujJnryk
+MIIEZDCCA0ygAwIBAgIEJXfWyjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjBsMQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEPMA0GA1UEAwwG
+c2VydmVyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmimB7418/JLt
+T3GBjWsiyO5RRApaTYbUMDibwHCJu7uS8WXIsXmmM0kG/KeiDCGJsnqJLDmgmmDf
+W1wZf9cqnUb5kg10J7UznPIyqG+LxJJYQTQmUNmHNcQienS4iI/lOrJ+9oeTHE8l
+hwL1trua7XY0cTQHbED4HEMRJ2MRrRZkLyFF/oIOLrM04ya+y5d9XrLlBf+8O2It
+cA93L0ZMdC1dJdWQVibLBEKT6AmeYa3BHr4o2jQbm/N7iW9wcKEZaf4oe1XHy5a7
+YkjzMaGIbtQA7y7W7hENOgVHR1jpHgbkIkiZWJiCfEJ5Voz7Fc0wfDTyh/cHkWSf
+pd0vxKgJXwIDAQABo4IBBDCCAQAwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwHQYD
+VR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMB0GA1UdDgQWBBT4ez2+qTaostXv
+MIza0HCaaXjqlzCBiwYDVR0jBIGDMIGAoXikdjB0MQswCQYDVQQGEwJVUzERMA8G
+A1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNVBAoM
+B01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVsIFRlc3Qg
+Q0GCBHvUrJMwGgYDVR0RBBMwEYIJbG9jYWxob3N0hwR/AAABMA0GCSqGSIb3DQEB
+CwUAA4IBAQDT97jbSaovQZeFMBS6yvXEshb5WuE+417V7SB8YEkfSSmYzqhAIyD9
+28iQAhUqSiU8PGTTEU2g1BXAQ8E41IWhLWAhD/COhZ0p+c0pfN6tv0mIJ1lafx1i
+m5sVAanO+RKtXn8CsmI9OZA0Zc3d4+pMe7VJWNSeoKTFpsRuhKSHgT9UjsTdFtMV
+PoOcjm3cArmzNqJ7IRtSFm/MkYl0tm3NGqXJin279h/r3OalmKthWYXc6d5Z/Hka
+Nm3m/STSuaaL38Y9WudlpEXlvRGJ+VLLLJaDOQOZiOm+2uYbp9GDcbXxGHBhenqz
+kwdit0IT5BIkXpnF2sNGJbEPxiTx9JwO
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDBOqVY2r5ySDkc
-xExPmFCkTjTKNHURdSZom/818pU7LEiQxsK8S9dL3wgMl0sSakEaSa2gG3a1dNXt
-I3Wpd2Oo5Fy6sb/K1rjA2hSVGzhT48/AHeCbL8UoCVUgXikcOGHBguVPQepZLhfK
-GT6uuZ4S3h2ZYgy9i2QnqfPvGAmN8z4aUPNobn+A5DjLGz8XtPzKOa92d/gSDLBq
-ynlZWE1AUXjC1DwBnLgJMsTfllesEY5V8VDs5NLcZlk887dncdlyxkfzm/Hy0Upu
-FOO9T+5UYPIGis1V1HBUDgOiojPmniHA2JS/2fucsjv2hmNV8beNzJK7AKtgH8d4
-CkGHvcrpAgMBAAECggEAKRC1ozSZ1N/Ug3CUZzYPrVuRjIepeZRUHVdJ3cU4QeMf
-aOVU7X+QueckZsigg8FhJJ0T8Trk95tk+4jVsLZWz8X4jxTHlewcR6ART78BMZLw
-y/uNiG2WkPOqy743LnAtFlsjMLzpeRp6o9DJqYh5N7lMwRQ9cOr21hcgaGfLYAc7
-Bbl/565RSeuw2fmSGkUMOAnPBoJvRfcsaZnEbciLY5ollLPmV00F1elEGGUyynlE
-3WiMuh2dtT2em7pdJJCcTxeKrF6Kdl0R1CYx8Ay/N7YMg3LgBY+SmR559qEy1IA5
-sMjjd79Jg+GNxj+/8V1zHePaNy1CeQLWoVb7OLZsAQKBgQDx0SpcWU/Z2P87CCqW
-Ym8jE3FFHHrz33UWmqvJ9dmVQSHZn3UaUw9WF9L8mS7t3fNroQ1xVOoB+GkKuWC5
-BnWqyOKNnIK8jNp62M26S6nyAhEwAgLK68YHrKZde9FZYE42SNlo/OQBULfJ47KF
-S0Pldz2dkQhzLPooeedonzu1mQKBgQDMj/EcQeHBAFJ8jfXgqRWAXbYzDtK1hdiy
-WtBZFVMGlomW7Mq11148GWLVVMpQX3eyPmv+t7KfI02q+oNkJsw7BUdjzsSuUtt1
-IULuznS9c+MpzUE37fXZkcUcbTDYXH8Bp0v+5u98E5rWgb4jbM3LHaKoyyMgHeAT
-qs6nzUZx0QKBgEy21aB8ePecfsQEgDY7PhS7m0iYk20ArA2ivfMROpi+E/YNP0I9
-rXTblASsuBWgPxQbAL++d4pueyx6yPOJ2BR5LF5Ok68rZDhqxUFftadf/oHjcW1c
-xPM0U4b+u9iF0+omzEohSFgeel/jC4R77ytB29s74plfYHEs0zv+oBupAoGAb4DK
-kXeL4dMWI1SSQOqJkNYD+aLL0ixqKRX9WYGZJw8pYn4iJKqHcET6LYSxXswbB6qk
-3UwubjYlINy6f/3x9v3yowHTDZ6WhyshO+CHm7kuituaAC2ShAzEH7GZHWaVyEXz
-07b3tW9OSDyictbc+ilmP5GyzM/cE3xYdvkau/ECgYEA8P4AV6KSjLswaMTYSc+X
-/8KdBhe6r6Eqs4FdACHeRixvgiafC7PFnnxtpSLAFDWoHI2EZEkTJ564TpAksXA3
-Z5zletQt0cPe3CQVvowrYgNUtjaUNG67BzOoUa4fln+jTg1LnAT3wIQZyef/1rKU
-yHx62fbnF1NBTj3vih8aIOk=
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCaKYHvjXz8ku1P
+cYGNayLI7lFEClpNhtQwOJvAcIm7u5LxZcixeaYzSQb8p6IMIYmyeoksOaCaYN9b
+XBl/1yqdRvmSDXQntTOc8jKob4vEklhBNCZQ2Yc1xCJ6dLiIj+U6sn72h5McTyWH
+AvW2u5rtdjRxNAdsQPgcQxEnYxGtFmQvIUX+gg4uszTjJr7Ll31esuUF/7w7Yi1w
+D3cvRkx0LV0l1ZBWJssEQpPoCZ5hrcEevijaNBub83uJb3BwoRlp/ih7VcfLlrti
+SPMxoYhu1ADvLtbuEQ06BUdHWOkeBuQiSJlYmIJ8QnlWjPsVzTB8NPKH9weRZJ+l
+3S/EqAlfAgMBAAECggEAMVPaubYCKicxO9xL4d5IERcAdc8COhBMUOmsHJVl3OYW
+DJvO7crI/Vv+mlVhKpSIpM1EmxwNYZhhn7AGkLtebVjKfotDgXkffLaasv6OMGXL
+S4HOSMxx0ShjB9/VNA0nAfMfYO7ciZBhp6Owz7mTxyuteBN31JGtUg27rWirvUAP
+yHE+Y7wTxs3GmdgHeLPcCegh09jZ/yboHAgEZqiuXrwfqPT8kmPVXZ7ZH/38Quar
+jeuaii7SpZUwpJMMd6C5pPs3lcu5E/czQv+XJrXuNbO9yZ3ePk7c+MLGuWffAVd4
+77Gd51epWhQc90RlppxScD7GlcWR8OZyVxgSAVRTkQKBgQDGyCjOCd7LDkMhI/ES
+5gmUK+kbBiDDac/hGDhHZWAMLoVwJ8gMDJu2oU3D8S5Cq2F2nPxCMR75GP/JmU1S
+WtLSa0nR3NMvm4oKMRG628YiSaqN/ZiEHuURw1OMTpgXLq4kB17CsWcKUUQsfB5G
+t9C8d55dqjMp1/sCqiumNNV2IwKBgQDGiWimL/AnVKsx9DVviCXEsxdixQVCBGsr
+LMs990y2NStTslTXVUhH6R5iJ/GMlO9C24UymKiSZ4KyIt+F2B3n/xvnRUdZ253B
+jGX/vF2rr5mrnuUddWGbtZevWPf+rKMFHUynfpITCm3eKNCmUNOLOv8L9cOTndFj
+yFFNF1ONlQKBgBDxapj1OmowUwR2Hcwwk0xv2bSV9yDw2ekjuVhMib1AEduXaHOu
+d28/nHNBEWJZXTtQ8idqLGuq99JlILQOTb3lqysaGV4Lcd6ghBRbOy4c/U6Q+Pj5
+8Shsb6ib4lbHgcxMXIVXvaKhfqAUDDiW3lHSGEt/gFDmudxmSMYn5rHlAoGBAKrN
+gGipCVTs9LNvQ6GGYefNo6rnkVRwdLqaOOhAn5CKQZIp8++lgR/MoMUVVCv73bOJ
+JBiZWT1LLBeRBPgjK+dxhFH9OhtGY3wmC4JuTa/szKnnc3laiPTqz2qdgg1p/H3j
+7RSUQZt793WPa6IKG1THFrD1aKLQvVm49qj6DnnZAoGBAIfF/1/x+Cy/i5mAj145
++uNgGkY/aqwNglmJbQNN+0rB9Lmc79ZpMLBp081Jd4yhySlwKw44maZkUuyHQ6Jg
+P0v0i/eyowYQviRJHEu4DRgCmHYLMqa5k9ms5orNAKLp+KmmzUEdRUIExuJ5HaF/
+cXPuG2QD/nsf3ha+/PnjVWwo
-----END PRIVATE KEY-----
diff --git a/jstests/libs/server.pem.digest.sha1 b/jstests/libs/server.pem.digest.sha1
new file mode 100644
index 00000000000..459245fc9c8
--- /dev/null
+++ b/jstests/libs/server.pem.digest.sha1
@@ -0,0 +1 @@
+B83F19BCEFB506CC46478A2B9DBEE2762EBD038A \ No newline at end of file
diff --git a/jstests/libs/server.pem.digest.sha256 b/jstests/libs/server.pem.digest.sha256
new file mode 100644
index 00000000000..16c8057185c
--- /dev/null
+++ b/jstests/libs/server.pem.digest.sha256
@@ -0,0 +1 @@
+FE8BF8840E44CBE2E04B408C3F49247E256A1006A4DD6EE9B74B5FB84EA2FAA4 \ No newline at end of file
diff --git a/jstests/libs/server_SAN.pem b/jstests/libs/server_SAN.pem
index 1a72b2bb229..32422b3b273 100644
--- a/jstests/libs/server_SAN.pem
+++ b/jstests/libs/server_SAN.pem
@@ -3,52 +3,53 @@
#
# General purpose server certificate with good SANs.
-----BEGIN CERTIFICATE-----
-MIIDmjCCAoICBATC72IwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MVoXDTM5MDkyNzIzMjc0MVowfTELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxIDAeBgNVBAMMF0tlcm5l
-bCBDbGllbnQgUGVlciBSb2xlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
-AQEAxwFNtDYxGxUePcHurZkya1xSEK/N+wk/ugHouvLEUv3tA/igQ4NIVs3b+q/e
-RsWLQxzkJZh0H78rDhvIv4HtViFmc79Zwekr36Pv/3p0RxwVmPZnKi1FnuX6PrWb
-r0g0ANlKLup5AjAM23RBFufMSV9lVIOFf6w1axQX95AKOnUQvRtDFGPazES5KJ7X
-fbm907rdo5RSlbQUAOrn24n2So4QZrBppk2U5NE/sfL6cgQUR9kaelkDjj27jp2u
-N/NdXAcAx1yXXGP66ShEfodSbEWJ2aaQYvKUwEju2xoGRJVV0eTSKeH7g2km3+Vd
-ng7J1SwsQcKw8IGTma4HIhMvbQIDAQABozAwLjAsBgNVHREEJTAjgglsb2NhbGhv
-c3SHBH8AAAGHEAAAAAAAAAAAAAAAAAAAAAEwDQYJKoZIhvcNAQELBQADggEBAHFB
-8fiC5UljqekYY39U09NAMtrw/frphewMxvzAdkMvwaOwVWhcxoFM1w67QAT+VvjO
-Av/5aOREl9IxdLEALKTG6lATbPcc9chPlCyUPqJFELVybmMLaHXZd5iLpp32ylr8
-oldpFKDYYRhgz94RPYH6dpZDfToyD33YCnP46sWt3nqtQdyESyW3ccXYWINxGEWJ
-EBaOB7mZYXTjRJJW86EhhCG2CmRT+L7PSi0yXYiLRdNLHkMguNxArlklp+6ha0Kg
-uTl/o5ZGgo+PphK+vr1vh+YgDJb1neVOyXx8gDLa/jjJOdDHnwtIxiHMgAy7qpKU
-+iw8BrYQWUC7PUddwfM=
+MIIDvjCCAqagAwIBAgIEJXwypTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjB9MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEgMB4GA1UEAwwX
+S2VybmVsIENsaWVudCBQZWVyIFJvbGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQDJBVF8+yRUl2SUbW2GDTTChhRTwrmjqZkrpe65Gt5QIMqq0LDQMr0G
+4t1X0B6gIrLjpzB9a8Aty9PLi+Dcp+C9hC/Bm8W6GsnyqhzFAu5hXELMb+Zfj9tx
+Vv8KcFPB1AxTzpRPUfdncfcpBBKi6c9jtp3IjM/jLE6nppyeP2BQ0LY9xJE2tjVZ
+fSxZ6kJPEbY+QOF3DfSmSY06qhNt8T0EgLhDpp7UuoH3bq2pNrFzMnXIZW868PUn
+FwfFxYWb6+QWAzAVwd5aj4326727pFtwR9+SxvHZl5NcfJIVQQl6WJg5qtCTgwbZ
+uYfyLWVKCtNLxsutrf+ydfGQZOte+0XJAgMBAAGjTzBNMB0GA1UdJQQWMBQGCCsG
+AQUFBwMBBggrBgEFBQcDAjAsBgNVHREEJTAjgglsb2NhbGhvc3SHBH8AAAGHEAAA
+AAAAAAAAAAAAAAAAAAEwDQYJKoZIhvcNAQELBQADggEBAGhG3IwxfD1f3wEBZ43G
+GSIKbfbrXPuubELReKOwvN12m06EO5UQxgwZmwjBuH1HeZYblEDuYd7xaYxPW543
+2Vrsu1FtXD4U1OVazU3XjCalhcMj3loAWy76w5RexHbedIcd+NdgcqN98jlZolHk
+pyKxQGxdWU8lQvBdHCriOO/hQdPYiJTrR5Y+2rX0Sh/yT0KPD6N+BP2pd7NROVmr
+g9QCZC34fTDVie2useS/QEEj03Amw1HgqfczTEa1e8CaqelC0XQtb9OcKpvv53aO
+JXUsTs5uroM3yXoF8tFTLBs3ulY6xFXRAeJ2x93GYHp/8N8S879JdIIBUYhiwmWy
+PJk=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDHAU20NjEbFR49
-we6tmTJrXFIQr837CT+6Aei68sRS/e0D+KBDg0hWzdv6r95GxYtDHOQlmHQfvysO
-G8i/ge1WIWZzv1nB6Svfo+//enRHHBWY9mcqLUWe5fo+tZuvSDQA2Uou6nkCMAzb
-dEEW58xJX2VUg4V/rDVrFBf3kAo6dRC9G0MUY9rMRLkontd9ub3Tut2jlFKVtBQA
-6ufbifZKjhBmsGmmTZTk0T+x8vpyBBRH2Rp6WQOOPbuOna43811cBwDHXJdcY/rp
-KER+h1JsRYnZppBi8pTASO7bGgZElVXR5NIp4fuDaSbf5V2eDsnVLCxBwrDwgZOZ
-rgciEy9tAgMBAAECggEBALLpkRp7vhpDGjUbraGVIac0EPO/msgewJRSMxIgQDD8
-6aGwXSVVWivwV91BT+0AnPtxdgv2zC/ehq7ge9Lw1Jei36EgX2neX/toP9TIGtHz
-hddHb+iTWwxIZnsKezVTDK3WrMMROkmlOWnzUrFtJFSy1z7sH5FxGXVzUzjW3ts9
-3JPMYowjn+4OFBEVG7/BCKn2+k5vjeI0+NL2gKJ4GTDtrOp6vGhyClyL+W+bZUta
-AHAkljYuwIlwxm3ACfrOBAgzW98uZBDSiaBQ6RyLBTlWFY+h53A2nlODuGTg6r7k
-JjTeY/XqxcTHz1GOGmn2obaCvrPIiLkrrBK5VQRC6GECgYEA9xTJds9D6WS6WdBB
-VmkPjeUuCj/xlNOW0Pr+9Q//4nTPC6bUoqmDaN4hIiUCeFLgBOH23MZ/ZHKihjvq
-xcEzhrvZfH0oHhnAMGIumLj+QwHNStRG1zJq4Auyc+Crr/TOW0ePDTHkRYSR4ZQu
-wdm9m2ioEeqT7Jbn/uclkkpEnIMCgYEAzjBB/WHX+WRIJbfpoandR/jXHzW2A4MM
-kHdpp/RpqoulGQNlkRjhufQHk+yTQ2v+/ZeROZbFHoiR7Z8j+vF7wCT1tfvz4Jor
-RWNNMM4sJEmA+biyqZLWRH5+cedOz/gM5EFkBFm0P8g11QStWGdVDvHVCLB7WzJW
-ggntrP0+IU8CgYBpwVD19IL52+5TUOsWZEOPFYAeTP5HGEWeT0BffiilMiAIubCb
-qvifIyyFY9fpzncqP9mc561RPivITs8PM8GtMqxFN4C7WYREcVHGdrAF2DiZhcCI
-jYDnQrpwFMMHvj2xHjDhkfBFvRd/uSBGQr+ATExb1s7X3kOQfDk9o2I4pwKBgDdw
-KD4NkblfajqiAXJTLskMMiMVGPRGxxkM0l6zS7nsRB6+mA90RjTuVR9Dy7CkF/Jt
-T0HRtPxpsfrXACCXzzMxfNNKhB8OtLW6ZmXJ+XpkPQZnz7niXjQaYrsTe1BVnHm+
-zzqQN/OyTC8TS9xqJCeZhDMK6I/zr+jU7I/Ho23nAoGBAIGbEzmTADdbnfSJdcNU
-mhIOIjPU/qrf2lHpjHhyAaEPPLVnCtIbdzq5WiIt+UKMkcOMDbJanH1HbGEEL3eR
-u5xaEIEhOPplh9Dr46RetPcr8qEFxV8eX5H+RKCaBv1V+qnXg5h7hUQy0yKPREO7
-HE6kiNLIRtN9XY0PRxoeM+Zq
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDJBVF8+yRUl2SU
+bW2GDTTChhRTwrmjqZkrpe65Gt5QIMqq0LDQMr0G4t1X0B6gIrLjpzB9a8Aty9PL
+i+Dcp+C9hC/Bm8W6GsnyqhzFAu5hXELMb+Zfj9txVv8KcFPB1AxTzpRPUfdncfcp
+BBKi6c9jtp3IjM/jLE6nppyeP2BQ0LY9xJE2tjVZfSxZ6kJPEbY+QOF3DfSmSY06
+qhNt8T0EgLhDpp7UuoH3bq2pNrFzMnXIZW868PUnFwfFxYWb6+QWAzAVwd5aj432
+6727pFtwR9+SxvHZl5NcfJIVQQl6WJg5qtCTgwbZuYfyLWVKCtNLxsutrf+ydfGQ
+ZOte+0XJAgMBAAECggEASQBdb33k27N/G0gCFkSFfH8ksqZstDrLHUbNQvu28HJ4
+J0BSdcl3TCDnMRSriowPWw1EVsfiqr7y02Cg8IEm5Kw0i6L+U2+XF0Ef4YwG9eSD
+farFhr6/epGVXT0dra5MK8NBqOyjZDXHBGYuPmuanSOceVBpzp4wkkG3buClIbOE
+f/NhIoc8odkPUMXICXs7iJM2SVh+2isAH9X0iIx6de7zqnJw1xLwcWdGx6X0KgmY
+SJ1JzUmhSDWdhAW0R3JoluzlEAUs71webtTMthp+AQuOC5wrRc0cARdC37foGC+V
+p13udR0bZyP09Bzb/BW2tqR7QfP7BiXObsxVjC8V4QKBgQD5AF/7kLYeLmpRVvJm
+cMs1KF0i3ZETRW5zQFMfmSYM0LmjyrmkgEtCEtHO5p2KMGtFZdvqkdS5/Zt5l+mJ
+aCwv27OsjPmO5VsvoCGBYOlw+MbnEim+cqOrjjVTNX91fH1ZxAcsp7Hmc09tu/jr
+8Qc8ZDzD4X6itsnI/tbYE8Kc+wKBgQDOq7X6AXfLsLwaq1BlYn/uljRMyrjE8/tu
+iPIj8xKT6KP0RkMqPl1xPT9q3J7gsxkVg28/MLBW2bnLV+dBKL+eGTVPw+AByqQr
+98FrpqKbARTmsu4Dn3vYgharpxrmg1L2nmN4WM3v6HGLdA5EPpQJvCKp2O29QCjh
+3ySH4vblCwKBgQCXwH++rFohmL4Y5nmCrzlZI0lnx0r0SLtgqBJAzrBe3RJWXWW4
+eKvlD90oUGow3wNxXvuhQNE5rPMFLu0YXhGX9TjSb3RkfymMo/XniK2cuTFXgD1K
+oUlYc6nSFWehrYYjoBGTSHxma148DXROLy3uw1Q5OQNZnTbrNUywkZJo4wKBgH8P
+ip3d8SzFx6AN2yu51zV0G0trBxXvepGGmHgJpU5SJRq1Z+280e4g3bBxWyyCb9WO
+LQMIiCGdUmD19jNVPhmRHfmgT0RKtYxikgQBOs9ZZuQ+9Z48mwONVyrJXfyCmKsO
+zdDbqCDrI4O9IlhKsPEbPaR2vhMwMvJLIkZ4/5npAoGBAOnes6P9drxmzaihJdsF
+1QBecczw5h5UaEp5KHfYwf+0G8s7tZeKelgHErPt6tivJ2sWbLNqxbvFQK7t1KNi
+kIRf1MN1XTxdSHuLVqHwuxE50zH3LGFE7c/ujszAiMbHct79s3/kcoUd5lkDVYyC
+x1hWrOgfx84p9Z897299r4fk
-----END PRIVATE KEY-----
diff --git a/jstests/libs/server_SAN.pem.digest.sha1 b/jstests/libs/server_SAN.pem.digest.sha1
new file mode 100644
index 00000000000..debb7511344
--- /dev/null
+++ b/jstests/libs/server_SAN.pem.digest.sha1
@@ -0,0 +1 @@
+6B67673A606FD2F43474BD04490F5F3C88EBDED4 \ No newline at end of file
diff --git a/jstests/libs/server_SAN.pem.digest.sha256 b/jstests/libs/server_SAN.pem.digest.sha256
new file mode 100644
index 00000000000..bb25a260fd3
--- /dev/null
+++ b/jstests/libs/server_SAN.pem.digest.sha256
@@ -0,0 +1 @@
+59BB5C306881B052F8E1CFCC9CE772E8273FBE4B381E4E268CD1ED9508DC88AC \ No newline at end of file
diff --git a/jstests/libs/server_SAN2.pem b/jstests/libs/server_SAN2.pem
index c4490c54018..c63d5b76a5c 100644
--- a/jstests/libs/server_SAN2.pem
+++ b/jstests/libs/server_SAN2.pem
@@ -3,52 +3,52 @@
#
# General purpose server certificate with bad SANs.
-----BEGIN CERTIFICATE-----
-MIIDkjCCAnoCBAwWlDEwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MVoXDTM5MDkyNzIzMjc0MVowfTELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxIDAeBgNVBAMMF0tlcm5l
-bCBDbGllbnQgUGVlciBSb2xlMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
-AQEA8uC4khC5ZCj8ULtqik003DXmEbydeZwBxVl3oh3igreCCtoZbHH8aj0WAfJV
-ROCRed68UrvD8NsXufQaYSRVvwEbI2cIOl8ZKyH0a8g/bqkGVR7bPEnu0exw2ggP
-//2vX4Sc6t+2bIO4+fsJ3719muzsw03MivJdJvxA2nrwGvvgFMhWSrIBtgIEseCJ
-EWnA8lMuakFhnG4HSyFV9YgXTDa8G6rTfyvnabT2duBRWuwaLOOlqumhbNO6pHhw
-9VqEyCvsZ6nkFzA8hWHHfnsJVuhwMW1wsX3ZLVnltF2/oFdoI3qghAW7Fk9VQMN8
-4oFvp7MkYkqjIX6VG0+lOdYAjQIDAQABoygwJjAkBgNVHREEHTAbgglsb2NhbGhv
-c3SCCTEyNy4wLjAuMYIDOjoxMA0GCSqGSIb3DQEBCwUAA4IBAQAGiONhAhdIWDn5
-eN/biVfNwW1HFfpBeQU0UKgYhEs5ngsGWRDGwwDGrlrJ0tg+/QmMsqQfi1pUWETQ
-YZSLtsOgZBtN4W03/BeWaqjkYkli9QffEFWl/DZGcnq3fCK2e4aYdpxozRHThfzx
-/mKfEmzUDFgeCPLRseW/zhuQO6nMQJ6Iv3PRdJEDkknaDRFj5ZyrMpe40DDL1CKx
-95LrhA0KhiBMCn60/bI8ADwO698n2R8YpvjY+FKC2ZoDn+b7r2NGUDhc2UdznxHt
-NVox6cQcxLCKzmAM0Slr9QHp/i6b4+b6PD0EwAQuKB5J7f2y6dX+nsb0Xk2UcAXT
-oJLfHXDA
+MIIDtDCCApygAwIBAgIEIuh3kzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ1WhcNMjQwNDMwMjE1OTQ1WjB9MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEgMB4GA1UEAwwX
+S2VybmVsIENsaWVudCBQZWVyIFJvbGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
+ggEKAoIBAQDCauZxI+7aKcahn2sGQ0flmSrS9jHnB/r0EqQHdABWAzSeQ4yVuqmL
+2OqknjTBuEEjDhuPPt8EuOTxO5iWwoCTsd7dK1VS+rbq2CdrzwMhxKRzBDyPqANz
+pOrmb4UMW80sYkdFKpBlwxi+DxkDZ4jtbbuQISCY5xJBl26f2O+Wh32G1hDFrEhc
+5jvpyCjUjBtdCo96zRvU2XsZRRWoD9EPHHGS5FPKCdBHlPZOkm/xSE4v/srTmxPg
+6qYntQLRyURcSQT2FwEPbItx3mpvHq1MG1LWhMH7Yb4bhlrEdKWoR5AWLfhN7YDG
+t8dRUZVxwQF9VczugDjihVrkYrmhHRkDAgMBAAGjRTBDMBMGA1UdJQQMMAoGCCsG
+AQUFBwMBMCwGA1UdEQQlMCOCCWxvY2FsaG9zdIcEfwAAAYcQAAAAAAAAAAAAAAAA
+AAAAATANBgkqhkiG9w0BAQsFAAOCAQEAjVmcCjkgQFQbiZRlwYStgpWYHDGYonEf
+YxOPouTpM+x0JKlejQ2uszX1GXtLXgymqLsjHkcfuoug8aPa4vmUujmuAZEnISae
+qaN8Z+qxHEkBatjnOp8xucL9tUJ+rvCV/i4aDWg2QV7MJmNXXLmUqZMjtjEvbsaw
+qYADAoiCcuREZaeGM08WU0Z56gelb5+uTRbYFEyXO36XR2tRyljJzqXGwvR0tgb2
+LoqXw7QYlIyszQOJOZx4tu9OY/U4RfPwSZEn/nbrN2gIPJ/mpOa1mY01d8fg+Wfu
+A8a+sZc0YYh+qcy7L8am1xS37bhctc6QsaZbf6PfqxUretNzTpKfcA==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDy4LiSELlkKPxQ
-u2qKTTTcNeYRvJ15nAHFWXeiHeKCt4IK2hlscfxqPRYB8lVE4JF53rxSu8Pw2xe5
-9BphJFW/ARsjZwg6XxkrIfRryD9uqQZVHts8Se7R7HDaCA///a9fhJzq37Zsg7j5
-+wnfvX2a7OzDTcyK8l0m/EDaevAa++AUyFZKsgG2AgSx4IkRacDyUy5qQWGcbgdL
-IVX1iBdMNrwbqtN/K+dptPZ24FFa7Bos46Wq6aFs07qkeHD1WoTIK+xnqeQXMDyF
-Ycd+ewlW6HAxbXCxfdktWeW0Xb+gV2gjeqCEBbsWT1VAw3zigW+nsyRiSqMhfpUb
-T6U51gCNAgMBAAECggEBAOciNIPMpqFK39N0h89V6hgmsuvuM26nqIfGvLLq/cSo
-Hnl1VPx+/VedCnSPydXiYI86CL4zMiTkW4/7XZ9UlMVQqCLoykvCdJE3nwNzbepB
-sGURGFInib784+iaA5/6LAsaiLp8a36ZXE+JN7xU+FOXZTn3r9ALFdsj9BP3KsiB
-UAIomj3DqwABhdzIc9HB2AkeT9YWwu4oDo1gPF7v2XBfGCAWGAJx/TdxVLKvT50/
-yqx8jwJqTC0x/PdQhxS+AFrql+OOrg4DqVQl+m4CgPBRApinwMbn2n4XbY+u+Gp2
-VDHGJ3LKvq3GGNtDpDdcqsALelKDXrg5LgKB+r3yGAECgYEA+y7tjhZFa2SmF8at
-wUx9EnplaxV1UOh5XloWIUMGKfKujXvfU2KGVmJcLE5ABvNlE7V9OLYqTfPWdpCT
-gB672/MZ5BUTTbXb9ok1jtPO2EOz7k3i1FFS/NQlyZGASZwfLl/IgFnQJ+LDnOqG
-JdWcxm15WvOmDjoRt9Mgcsgy1xECgYEA94kFWqIcCLVDu6tvZUfsHa0qNnDg+nwW
-TIPU6yUgGmbUMtSrnW72N2jhNj4mptKlM/6Haa0wfUbSReDgFmH165Y9kDYO9mkB
-jwyHUWjhEGxRU506HuB12wKzu9PwNfHmy2XN3kGlabnD6Q/Zx4GHIbA3tVgPbelM
-If7TZSUjqb0CgYBbb8TYUXEp2/S+ePutfxuUi2u55JDVSBtOZnrh1tU6lfZG2M3+
-O8JtVdb55e5W2Wl1GD8iUuXphJcQiCa5n/aA5ekJ50YkpswQ3ffaK26DuXmZiU7G
-PWh5Uv0CeG373dJX/lQtrQQiUOEmkRUOVsmATj+8BS/ww+DJSxjnz8r6EQKBgGoN
-LFwORBB/CIvpAQrVa5WzUPiOF/V5IFybxqcP+tcU4yj78KK8nYRTzNlee1TRvrGu
-BPoDl1i09PW3SIqOYbwTXEDiyDpN9rsA1SDN3E8a+STnobUE2bmBSNvaC3oxL35J
-GZB1c5b+Xa8GeXl+RxTp2JQ7LDEc2N9fu9YDuWnJAoGAUOcTREjBDVJy4QXD6lNI
-vxMe2pfHyK/2QvEwedbCfwXm8pwLVIx4kXAtcMd/XwRIpKLdxgKt8arGLGe4deE5
-8C8WMbLpxZVhAzZY+9pZ68rVR/duqkVC16K+pp55n8AAfHLEpgwC48VizYl45Uih
-aUXEOveGHWf05f4WXdqWqeI=
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDCauZxI+7aKcah
+n2sGQ0flmSrS9jHnB/r0EqQHdABWAzSeQ4yVuqmL2OqknjTBuEEjDhuPPt8EuOTx
+O5iWwoCTsd7dK1VS+rbq2CdrzwMhxKRzBDyPqANzpOrmb4UMW80sYkdFKpBlwxi+
+DxkDZ4jtbbuQISCY5xJBl26f2O+Wh32G1hDFrEhc5jvpyCjUjBtdCo96zRvU2XsZ
+RRWoD9EPHHGS5FPKCdBHlPZOkm/xSE4v/srTmxPg6qYntQLRyURcSQT2FwEPbItx
+3mpvHq1MG1LWhMH7Yb4bhlrEdKWoR5AWLfhN7YDGt8dRUZVxwQF9VczugDjihVrk
+YrmhHRkDAgMBAAECggEBALWpV5v+XG/Du1NH96QJeAPEg+xNmUFsBoTLajOAo9O6
++Q6sxY8etM/0pwOcxGUCuvJ7eyr1L0RlU59I9YJhSe03tavpkrePhx2XTfaBn0aN
+TLAgFEqTTm5fehJJwANVQDipuDib1gMQMm1dBB1XP+3CrBC3s5LLzxY03mxEM1Lt
+szKHRs+uEl4FrriEvYoXllkRB/Ws9zatFvVQ2idJk7Ritmai9lcxq9EpqK0SxeRS
+1FM1T08IVeroHqsJGY/oyNLzkHJZTJCBActQvCauB2yP++a8+1JmR7GcIBUjbmfS
+RdXPArC8hrXDJoOtissI/28rRDiJFaK+dXrlrqxcc5kCgYEA8KZq8T1NKwUnGiWb
+Hhe7LUFOOljCGHOa4uTu/3swXDJU7opIj0cZ7s/QR+Yc+DHhoHTp7N+NbYsR1WCf
+RqiWsQieYdhZd899vte0SLNSWExvRuFpgOcJ5mrUzcTRlZiI6mmrXCiednhvryOc
+vd5uQwBlwI7itn3HvB9+kUVpSRUCgYEAztGM+auXsnwyLPLAvxNlwv4JNQ/DGM1Y
+o/VP6g3N/7Rj1muRN1gqn/GW8pBCYvqH7Fu/SUgR5KT1SmILL2Zk5rY2G9x/J8dM
+a3i7J6J6/fRZgE9IuIoL0wZ3F50iZdosWCi5tOH3++2LwRzHh/KOLzJ+MyCbFpAd
+8RGW/fJzL7cCgYEA6gD49pGkaxO8nRk6R73NvcjF98h9HGe1kbIJkJZKRSyQF9CR
+k/kQh36+SlvBibp/apalLTeIf59+fN1So9OljIoT8JL/FJjH7n4ziYoNpVzVy7e+
+7qA6qTryqRAcuHm1kTOldJzu0cZ023omnR4gW7iUOPT4EXoncY+ydDJpma0CgYBl
+sBSvoZXptTT6crUgfcoYEM24IDLd3AFMRE5xly4FHs3D3Im++4OhtqhwRUvO3L2+
+EfJAdsYNdKoCU6iKOr87zLVYB5chmNVTNj5XI4VznhPviYwI6B8eN9yQaLtD9vy8
+r/F3JW/Hl6mSXrMgfbs5K4tvWgXHFz8Ri4OBAxdtiwKBgQDEY8zxo0ekWuvPdNVM
+3l/tDDGjPdLBSf0wSEBLD1ac+qx1rklvgsxJs0I3MRxAQ9VeSXHA5PjNzj3vVAdo
+yv2PpF3juB+w0EvX7FYWcVfiCcaMHU1e2EzO23IecRTZFWsUoyl2pB2dgmG+gO8E
+OgPIeV6qCNVSCl9H/Xxjy+nBvg==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/server_SAN2.pem.digest.sha1 b/jstests/libs/server_SAN2.pem.digest.sha1
new file mode 100644
index 00000000000..8aa9bde808c
--- /dev/null
+++ b/jstests/libs/server_SAN2.pem.digest.sha1
@@ -0,0 +1 @@
+CA28CC498B15E8D0AC2DD04C60AA8AA72B6D3FA0 \ No newline at end of file
diff --git a/jstests/libs/server_SAN2.pem.digest.sha256 b/jstests/libs/server_SAN2.pem.digest.sha256
new file mode 100644
index 00000000000..f044b25a0f0
--- /dev/null
+++ b/jstests/libs/server_SAN2.pem.digest.sha256
@@ -0,0 +1 @@
+EECBBD89E1F99E4DB0E6B9811A85A3F3C9C360A390D5811994E8D4C1700CDD2D \ No newline at end of file
diff --git a/jstests/libs/server_no_SAN.pem b/jstests/libs/server_no_SAN.pem
index 5b5e015d5a0..a6ef685055f 100644
--- a/jstests/libs/server_no_SAN.pem
+++ b/jstests/libs/server_no_SAN.pem
@@ -3,51 +3,52 @@
#
# General purpose server certificate with missing SAN.
-----BEGIN CERTIFICATE-----
-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
+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
-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
+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
-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
+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
+P5F2t6c+5jdsuao+bSGw
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDPO1Jhwl0hXBSd
-tpJjwhRmCkn11hag6IGLprTEUPxBgrIFwwHhk5b7NAZV4TeMa3tSxs1OvtgW+X1u
-tid5dE7VQEwt2C0q1rL0HIyka+RhX/gyzWKJHsXl1V+e5nnTwqDImx20rscDeohK
-OXA71npCcoOA21cEBtJUh7DnI50i0e7pgjup0Y63WVBEz3qf+en4Wdu46kYqWmW6
-HZOIGppKHnMoPIeZjf9cTUlR6jnGKy6p95I9y3pz1eQ0yrU/Tkw3V5J9BE+t+06U
-mft9O7KEkspj0EM6GeVQa7j4tbhsxKZSXE+pmidg/fOcPk3hQQq6mncu420nIDTD
-Zjfzaoz3AgMBAAECggEBAMxgWv0i7SpLX+Gy/2j3LZr9JrgXLjX/WFPcU4cRv9b0
-CJJ6Ik7QeiTAyEbGWTxZfETE4BJ7US5HXBdl+kRkGqNiSD8mZlVLbS4nQeWeqpwG
-RAgGWtmUyePDrgxOjXP1DRELOh7KCGg73lIll7TL78O8oEjjCUxlVeYb9LHgg8aj
-skAWt9OE8/c/P5ySATiPvtl7FpkSWkV4FMElnW1ORJmWQXsub3+HeTHLjEynXyrZ
-q3m47QlnaWbSAFA/UDHG5pLHE1CbmNC7/TaseZuCS4HeUSr/fwh+GJNIwqte5CyR
-pr3qUKhZ/5gQcNqRcMZNFngWMwWGTKehEP3cGmro3AECgYEA6GniBoKPMMqDGky4
-XAQ7QAnU5/b0L2uM0yhX+Hlf/Zels+xJlXzMMTVIgQ2ZjwQW9I/hIW5at7ohXpua
-qthvtvAxrjDZ+2ovlUS58NteapvbWCWr50b9I2R6Vrm1I7GLsBrt/LOhJvzgaLT/
-W2XLEUoRa+wWmT79JJWdeuiA2QECgYEA5EM2YFk3nItFOkVuAPKr+q/UIKX4g/PD
-1AMgozqZfhjMbwfrtfDH4tqxG1jXUV7n9c4OJNFbD3XYA4Sb6AShWSuvev1wBmkm
-iVYsi+ljY2l1O+llGAG7IuQ63zk4pr89SiedisHm4JX9PCbCcHGJJDQJNby9Jn0u
-fdMwcCT0LfcCgYBlZUxm6q7t6mwoHTCRdIck+SUZznPZ/GID/aXjkZB/Ypm4VW4E
-+d1b2pM3Ome0LWSWbe8aVrrdTSchz2E7CBI1DbWe+VEgjsMTrFgy7IHUoQqg+k51
-KFNoDX4SOBL+74ax3g3WIcg86jY9eDmv9kkR0e6n1uhFE2X9gAikhqswAQKBgQDT
-upyXpmn1JSIjuP8elfp8X9gOKKVqEBSXdgcyIUr7Mhl+7APyEdP3Uw9w5GllKvlS
-gb2Q3TjwEEk8iibrgk//nIv7M1ZUO/jo7ywG44ezUMDTv9xr9j8VUEpjgHpSAZXi
-UPjLGq0DqVzqDLHTBx1EnZflZpq1NuyG/fwyKbTtZQKBgCeXe6R//lRXbHSr+MNH
-TOAry6B8c9gUfFtR+Zywb+2J+FD5LHPubXa7Tz58uV/9osJ8/XMBwZri5R8CTuKl
-4ulQLn+4dOcU2MCSsAJ57myFz2kLuITWFEk+/6FdDWSGnFZv3Dkna47gaVVoyfou
-gJiCq/jR8PaP/aQMto7a9cNC
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDGBqSXwzpbfK2E
+4BS7HftKkm3ES2D68MDvYjdbMYQVfd+b7AsvtzgvnEhkxjgfoiID5fvy0Ag4RS7S
+MhpmJtA3e65+HLvbwRgnDiugbdNpqpW4cRWxxb/GIOMir2gbeJsUFRGBSFGQR3l1
+72NJIKSERKU9m91/zoFbU2tvJPD92qf+tUu+GCL2+7lvxCL5kbG8UlYn07TEnqYE
+ikQzpKC6KaVH+fMFahcRIKYo2Co6+pzCNC4hGnaDLQ5R1bqUSow+0+QQ+Fhl/h/C
+ACSdf23p8Cq0SWFZ73yXyMvQSx53i7n2EXrgwy6eVoA9das0wuixhAfQ5K2IJhLe
++NwDUOhHAgMBAAECggEBAKB+qc/GjvmvJwNWifbN6ekanJRHc6ZukjByLeNfUmoI
+xr6cpMRbftI3nATxEnOw+FiogXbeXIsepz/9E6BPPNp7B4V2zFrjOSwONBWmbX5q
+n0YJgUe/uhpedTibaYk6SpYQLUvWzSReiXaoOpP+PNhmunYgaXk4aWcXSS+fhSJ4
+NCYYuMinGdDn/uia7h3jzsPCFjMUEFmhg7vxfqTdYQw+wzqq4GkLXkKrYM+Bt6kY
+YU1duZFrRUlO5oOk1lyqIIdRIuxqtNXzwxq/atYdpkEjfmZ3tT+YQQKdwN194eCR
+PlwHGyKjyqJNIP/VkUqf55kzgR8ye0nr4hCOpi4TkoECgYEA5/8BTtxj4gNDXIMN
+MCwCuK7P4DfshzWEyeaelyoOifVd3KUFafDRiuWjhIQO79lcjn0u6qP+pBQ2c053
+N5EuxXlNyCKCZb3j64SPsTu6SPeBf7t3uj1gdXjYJ2uX7SzSdeQgnC5AGf3HbfTb
+MoKnTb4Rp7W3VBS4f8zFA/pFmxECgYEA2oPaeSUGgOE0OodgrtyCZmwRHNN0zQ/G
+wz2R8OfoEknMux2JlRxT4XLK05cWCbB8XVKT/On9bQtyTDCtSyeohgIH/0ubXIz0
+jEXo4FFSuWrCuX+fryKCL3UBZdGcT9sa5c+ihp/bBfI0aGCEBpqyqU7jqhCiOS04
+MTYExZAe3dcCgYAepg+0LWV8rFWv2Rha7tWFNIL96iVzT1y1l6QH8GRvUV0PEzX9
+4vSr1t6dWRzoDt0tbdhO4092ubzfytPxIVr+d6IQ+I4lhsqfiKm7Dlrz3M7c4xVU
+I1uk6UwVGR+/E5bSQEsWlv2c8WvxWNHEgII9wQhwEY+gqgQdzh2RAvVDIQKBgQCQ
+fspUe6heRw1reqPzXXuZUPLL9gRxqXINH0THYgLzPPv16+VTxeSt22PGIU2AYMUM
+TRPxFaXwmrYdLb8aSIJHA0bYid2ViNwZeg0xcHVciP10/rDQdehSi3O+KarMn52c
+w/28Oi7yMqR3NQN4/okQLkub5N3xIzbaS9dB8TiIBwKBgHvKEfySnAqfuroSDRIb
+ryM53B8P1sEd1Nm9QHMH9+vI4h62HSbcDLI2zRP6TMjeuVGJF1LRaHdlE+XLNyrb
+qIOKQ/Jd8HD0MaQ2BckyJmstnU5UagpjkzCMmgVqObBDz2D+1PKMRultta8GNdg6
++tqSUxiEDXjWu/BHMHtVswGU
-----END PRIVATE KEY-----
diff --git a/jstests/libs/server_no_SAN.pem.digest.sha1 b/jstests/libs/server_no_SAN.pem.digest.sha1
new file mode 100644
index 00000000000..1fb3e0b684d
--- /dev/null
+++ b/jstests/libs/server_no_SAN.pem.digest.sha1
@@ -0,0 +1 @@
+57BD30716FC867960EC0F13CD7449A7791D11798 \ No newline at end of file
diff --git a/jstests/libs/server_no_SAN.pem.digest.sha256 b/jstests/libs/server_no_SAN.pem.digest.sha256
new file mode 100644
index 00000000000..ba98a5f8bd9
--- /dev/null
+++ b/jstests/libs/server_no_SAN.pem.digest.sha256
@@ -0,0 +1 @@
+D5FB78ABB12B2B2413A17981FB384AE6E8E059E53EA8DCA471935799D410E041 \ No newline at end of file
diff --git a/jstests/libs/server_no_subject.pem b/jstests/libs/server_no_subject.pem
index d27c5e438e0..7766b47095d 100644
--- a/jstests/libs/server_no_subject.pem
+++ b/jstests/libs/server_no_subject.pem
@@ -3,54 +3,54 @@
#
# Server certificate with empty Subject, but critical SAN.
-----BEGIN CERTIFICATE-----
-MIIEDTCCAvWgAwIBAgIEFU1Q8DANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+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
-IFRlc3QgQ0EwHhcNMjEwOTI5MTYzNDIyWhcNNDExMDAxMTYzNDIyWjAAMIIBIjAN
-BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz2DvR4rmqxj8jThXpcL9VjlFz3TT
-JTUX+Oyewwe3N39XCfo+DNu6Z/TNibYgn1SI9j/F8UxrAxtw7tYeE4mMUiDwDuTk
-YHMkoHcmOLr5ZIhRudEIIPwQXDZTIViYpx+qwDEHQr22kaDeNT88OphL3oh84zpn
-KplfDXj3vOzamJCsdDQvS28s4IPyAXHMh4IvAovPUsX23aJfg9VHT/zfZVVl0KT0
-vZdsR4BeZeAXOQoLB3yy42OiyaVIf7vjcutHxGJEWcrUIAVkLdHFGu8xYvO3CQe4
-6Y/fmffVR6nXl+7cX98dcZfrIKgU1sgb0p0XD3Qjj4Ogq4WaPf3i3CiKewIDAQAB
+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
-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
+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
-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
+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
-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
+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
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDPYO9HiuarGPyN
-OFelwv1WOUXPdNMlNRf47J7DB7c3f1cJ+j4M27pn9M2JtiCfVIj2P8XxTGsDG3Du
-1h4TiYxSIPAO5ORgcySgdyY4uvlkiFG50Qgg/BBcNlMhWJinH6rAMQdCvbaRoN41
-Pzw6mEveiHzjOmcqmV8NePe87NqYkKx0NC9Lbyzgg/IBccyHgi8Ci89Sxfbdol+D
-1UdP/N9lVWXQpPS9l2xHgF5l4Bc5CgsHfLLjY6LJpUh/u+Ny60fEYkRZytQgBWQt
-0cUa7zFi87cJB7jpj9+Z99VHqdeX7txf3x1xl+sgqBTWyBvSnRcPdCOPg6CrhZo9
-/eLcKIp7AgMBAAECggEAeTSOpaHpb9cKxP9JOvjcWKjgxH/jaLu/Zx3lLNg1nZov
-pQU9fwZtzJSoDPUF3BnscwCTEJU5dndzaiR7L7AU82uM4yek0zp5DdCV5lJhsQB7
-w78IoT6x0TNvIu5FSmiXw/zj4X5AVp1PQo/TA+w/a7EaTTS1V5CMnbM2GJXWrZPS
-k/mlO23A8Pr8R3fbWm/O2xJgJIZ2hGtCkqTBLwwPXVTXcsPlZVRd/vxqtSTaFzxs
-Nmh8kXiU7KpeXs3yQjTWuUkq52AXEg6zUdHy+lD2PglcnIoP3t30VWlwR/efTGpC
-rnAReokjqGsWneZWlbUGcE+wEmFDS/prRsLXjV3bAQKBgQD+NRY+OxKL4tk9EfCX
-FVqZdKDcdtpDak3n3r49Ymtj+lO8BaTGBqHu7NCidXKijjo35/MBuey1opvQI4tE
-PzFBTswADCDGSEZhVeu/p/NegCWgYBNZiUR1DzwpC/1zzS/h7xvafKvGaz3vu/xj
-mWLmOKSrAkKj/eOaF/J/JubknwKBgQDQ108tO90wE7jyg13m1YdVv72kAKlvXiUn
-4tlP8cHTrsZIbqQOyWStxd8l5nxTHbjq81e75VAsbB7/P+CFbhCwY9YvcpcHu7Dc
-IThUEhM9E/9QXWohgjULq0GEH5qXF+Ny5Z+L0JnQ+Ar66aBhoiit6o1iFPG2A2i+
-DjX14qrQpQKBgG2MzTgmVvjH2xzRZWCGyFOHimdYJPmWj1pUiKGFj4g3cex+diMM
-6q4/ii3o9W0OZBKBuBzPVi50lDdfif3wSba+UXXXxCwPK5143K7snxnjmdOCc/RL
-DqBv31pFG4XTMEZquBMxVQmeX8O3vK3jhVZ3pKc5wyRPHs3ichPP3QM7AoGBAMz9
-2wkSjt2nLk5VpjFz/SCtUe+OesIHTj9li1vOeSxYjOcCO2UMSBfOd2hTYkuPjDiL
-Xd3gjB7ejlqMD83JKPaLOO1f9GGx2TtqHElhaKL2YxE2cHutvHXUxz1ybCLNXwQj
-4sSxoJofL1/1POk46+cyqU7SMiQwGnsbpdnSgUrFAoGBANbRSBoBnvdc5vzwC6gZ
-V4WCWS6AXXBW2UXDsZLfMBpFDYR7AeBqiumg7wZoQnTmucSGWxPZlKyJVC2aQkp/
-5Oc+tAOQWU+gBGAtg6zxDXr3cbx/MkkXt2hO5M5VJlHNL0lx8AH+V23lMRgA1S4T
-TVFUwKHMSl35i6EL4JSgbPp/
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDoRMo2xwIRs2fc
+wLzUz2EzN8qURTcpNlFncQ58FdnHGqYSAxTqcEXoTPmusuTQSgDtx+dBgwWs/ax2
+MkCOrjTx0hVPvJeOnCZ7t49RNjg55ww7emS4rknBFlPTf3ecNQGCnjqR74IFNpV2
+g0s1WU9Cq8FYLz7ghs28lG5osStkGH91c2mBwEOiSnpS8zTbRMP2g7CmhzpvJbzl
+ZVxtnjDQXGWWxIzFogZ7tiWwUKf3g07WvqANR0HglB6YUiN1vzf+grt250tGcyL8
+C0ts163jXo/3n5Wb3tYrC+t9pSTfdl922ZcxhB1oQQknj2KzE0TeKen7LcL+vMVJ
+SgZhWj3dAgMBAAECggEBANg4mYpOzpVNzwVJA0CU4WZ9rH9Ew+oAn91M+O/4o2hf
+XXPtHH52EA4GAnVoIevoyF6Stqxc3V7CM9dARqrMb4siSCaXaPsgUA7hvXAbqlH0
+zYVdFgB6dzxhnZ2Izv9CtOo0hE+wh/h0bMULymqafleRboa6TK1VsJa6EuIw9DTT
+d0FAOn8/bnKVT0x94RorbUdLhfMYRZ2CLcABsQa90Z6++uWQOsIWYGWapSW5EdQ0
+WZ43EkRHyIUkFEY0Z+dGRyVSNDiZMYWgv140mfdy8ftK4IeiAXj0rDcJtt8Ih0kZ
+VDIY6hqMORQONbcH1YMiISt6xhDGeZVM19HcYT/nXh0CgYEA+nr616UuraQFbwz5
+aRRHRjcQi9KjLlfGQQDliR4kyHDcnTluwNoVye1uuPLSjd1CGwyIKRShUG9ariOU
+3uqej7G9u20S+PZZ8196SHNaBK0xtT0cQDufUZo707m/tW+8P86EkZQGzyAYxhOK
++AbeOk1S1+iXwuXvotuRGYK8F1sCgYEA7WMS1hnOkbNYWc3h8EzLFOA2ujO/9TCd
+CAMiGeU87G9B12A/KEEGqgg7/c5qIE60iYBVUiLseeu7M7ZIpjNgvzZYFonp5bsp
+Ki2GbrnfxtF9hnTDXql/tYbqIDaJSIpF8NTaMEd7CHdIUSe1Dsc2/b5/hmhAVMzj
+SQNUUJsGPScCgYEA5hgQ1AYGkjYpU7E8cB3Tt5mf1oIBqvGwykfzk3kgWwzqbHe0
+2O29tEgrPTS63N0S+9wQPISaB1SznWJMQFaQn/msDD+PfSp4yQu9Pk7Qs5kSH6Zq
+jEr4+LJRIRbyF87zxD2HJGAxvRWEDHkpYNyWSkJ7xqEAwGYPM7C1YxToih8CgYAN
+K5X78uqXAtBAC0AhyODrg5UFt6FKxSuxKhtWPHWo2HNas6hNX24zOMm7Rxx0Nmml
+x0z0haOBECcOs2pMbkVL1oQEnBox+LRL9sKimgVkTnMcZpYARn8jXxzWNLBhKeq/
+dc+1JgIZciS8++r7qunOIieJGXeYPNXPUzP2VON/uQKBgQDvMfdU3B99x2p6bChD
+mmKu0OF8ER8k4bhFQ6lpp1zJy77RYSfR4mdTe/T4iN1vgrSSHhdO6DCJBNFNJOzh
+YdrXLEFjQqznR/GWLj8w8lR3al5tqWrLzSvSvt/DA7TYtyR5YfLVjyu8V94jXTsj
+8MCNB+rBU7bCljz7RZ42P3gbXw==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/server_no_subject.pem.digest.sha1 b/jstests/libs/server_no_subject.pem.digest.sha1
new file mode 100644
index 00000000000..928599a89c9
--- /dev/null
+++ b/jstests/libs/server_no_subject.pem.digest.sha1
@@ -0,0 +1 @@
+B3431C4D34FFE25C36ED62A6958EB9364E5C2DC2 \ No newline at end of file
diff --git a/jstests/libs/server_no_subject.pem.digest.sha256 b/jstests/libs/server_no_subject.pem.digest.sha256
new file mode 100644
index 00000000000..0f686d50330
--- /dev/null
+++ b/jstests/libs/server_no_subject.pem.digest.sha256
@@ -0,0 +1 @@
+E1DEA621F4E8F1E4AF9471F0A5FE063F8341287D73304D6314055F0B61D39D02 \ No newline at end of file
diff --git a/jstests/libs/server_no_subject_no_SAN.pem b/jstests/libs/server_no_subject_no_SAN.pem
index 9e453553666..0c0fa9291cc 100644
--- a/jstests/libs/server_no_subject_no_SAN.pem
+++ b/jstests/libs/server_no_subject_no_SAN.pem
@@ -3,53 +3,53 @@
#
# Server certificate with empty Subject, and no SANs.
-----BEGIN CERTIFICATE-----
-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
+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
-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
+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
-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
+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
-VQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0IENBggQZkSMSMA0GCSqG
-SIb3DQEBCwUAA4IBAQCHVyAZELMyrjKhtl6Y38x68pNgFjVUOY3unnrtLttNMRhG
-6xpFTbPKkwS8itJ4jwiY8f+yNdGqGyTfWqG5vwATK1jXxfpShUok+IVj0v8vzGve
-E9yA+TcGYZfX9aprhT4QEwrn9jhDtAaNDyZ+gSld0W775at9Z6jbmlDoxh9E/O4r
-b7fSnEwz/vCmmLkXcNCycOAQYcAcSV9PZsKshTq1foSQBKJd8sWo7XKEDVhw8LJi
-RDEtXAmT4BkMHKgFUi2vYjM7mCUoc+O00EbLGyTH/R+GavtiqLAHMYhXVw9E7LGb
-juNqiCdfDOKTYWOiWEtYYpn95bJZToSRquK9PpvG
+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
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCzTAUhNiEbVthH
-Fbjr6dWn0l0S8txyEQDTDLtauK5hkO66CkV3/yjHYfP6cZGSqpmFRgOxO4nXmCMI
-diNNyWEHUP1XUFgbvNN5TaeSzikKhFvq/I9wLhEC8Zks/3FZhvavX4UKOXjkvPfp
-UlhsBPa+Z1GVcRevzLOkL27qXbK5OZxqX/55Xq1NT26vSHUFclS1AbjLP1sae3ks
-bSuM7dOU0GPU/pIVmwJTkxEDK5SWoihCE6xH5k/eHL3tuig1ICv8BAWOulM9Mqd7
-Tts9yPc39J6mKo6Zj3xtta7WpLatJbt3f94uEJibxbS2frn8F4UwnU/xe64ewy1q
-rap6KA5JAgMBAAECggEASM+YTbJjo2yTC9sAa51cDHjbHzTM3O2Wvh4vf1n8RtbK
-e3ZsW5yc/MsEfzHbggoRqhOSsEiTY5/+qhL/pzkeVBBJsUmJXkpCPsKQSIe8Fu9F
-PJovzciHVAC0yZc6erbaOsG5jztjotAyhOfRzJv/b7cZZGy2x8eDNCunCTnfuGPE
-0KuIEbdY1bIz7ToUyOggaswRgCgUWHm8ww/rQuPKoEo2kQ8YHz+Dxb7InQaWkmNi
-RszSwaHfBVARHQRczK1c8GVkWTxz7DsmmlgD19/XNfGXm9UNr6+xPLrCx9mqV05W
-epjJn7s2LgGAZm1tSUog+Ah/3X86kg9F3FAwK+dZYQKBgQDc52ShyC7f96WqULv0
-o3hh8Dwetxa8jKAEJVeHHAHepFHrnk6dE4U6f3JJV1HNuEEeeFZEMgBAS4ZK1Wst
-r3BTWQd9AIuN28tajKhNqYsIoHg5RuDyirTUEY/x3ssY6QiMX5giu/ZW9GawGz4A
-04l7CiSZXoVgY0bEhPUK91SCXQKBgQDPyGOk5koJk/cMuppBrTUXqIGwWquChN9P
-5AHS+FPsb3nYHz1OdibCBp9X4ZIjbrjfXdLIxXVll/HTcpjzUTQ+7WpCgPpMQGF7
-jP4adcCzkld2nXBq0iUeeiig6c1SRE85W4O7IganX2K6HhyAOe6wWIPBu22nz76+
-PbceLFFU3QKBgQDMc50/3vcDc0FxEKflFCcm/iGmi+4PNFglfio0ckeIuKzZVfuM
-hbSZH7u3BYpAzHf4q4esNlrlJwFz4XMBJY7glVXI6+g9s1/SvrxGpNR5d4vN9zvb
-P2V9oYOIaJuwwn2W7iLwgubMNAeWlqAcQ6zKo+ibyk/Hlhq5aBUjwSYGQQKBgQCE
-4JrQnrEkVOq9yivR6mm0mn9tf16FVmHVHnQILeTFpDigfMHhBnAczs1iDxA89pbl
-yYN9/8Dm2ne9CGFF4V1vDLdSllb7IoT01SK/WySD8gdbBK4asg8o4WhQF5TFkoez
-n5Grv8PPj5F8grspSWMahVClOS6UDafm02Liuea9RQKBgDSF+qv+lSbUEmQynAVK
-0urucyqYKzBgYT+3sxZ1YVltoTrKaPnjqdLV57hGUUq5gV85K1nwtUrU5duNdEkq
-E1Vql5oHa7Oh27/D1R6biSgC4t9kIbnOX8KtpdOFQ9gwBqFOlvHAvAjoqfKjF5vY
-2pV1OGsQaBRkBoCc/tIooxd/
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC70ECWh7bbOSv5
+4mPgC0UcdJjiCJt7UKpKnqJptXWQWXGgwK7i6x/DmLzPlvkcD29SC5CytS9yzanw
+fi3ORUbAAw+8VezvAHdzzkYLZ2zqvEwku0sWo2/o9ya8UJXKKnnoB/IOABPxa49I
+0i0hVgcS8onkWS9WY9j+rrl21smQjTBMmKWwnfu+Avo96qBkOFOVzBhBHR5DQvpJ
+cOnvurv/bAAizIvJmQDgsAXeeo6iAXdoDoRI+Wl8DPc/O0Fy/zPc0g2CIzNaG97z
+vsNproC5NTYWr7ThXv4afk84NxDDfN7yoZIPjb3BrYPOy+rAhcRjEeD4zpAgxXnh
+eJyxmdIRAgMBAAECggEACusmdhnZtZDzT4mryMCe+fKFWM6rS1X7MG9cfczA0u2A
+P5o0EJketZ5Ri7f5L3puPFTTyq/h3Ei8knCjdRRt8oe7CHXuWk6qox7gz5TprhPY
+UWJaESzbOq3zoIsGykQB5k1f8xRqFGTuZYtieEeqDZ3wCkhtChav7M53lcMS4MZa
+/P5lv7lNWEnJh59LTXlJ6Pp4zh39OGV9F0MdJzZWhZWcfuEdTn/fYRYiPn/Pggm5
+tliBdNYPnn1Yu6gIQru9EtzTK7f3yeq0oaKBXIk7PiKWZGDQKu5bLGSbFkwvDEPe
+FzoT0q5YZ8cXwRlBp5QtBV48jfl7iG1+zTA5fxVjSQKBgQDlcPVxqv1jOeD/qarU
+ut24Jfv3sNd2oouRiW8+j/4mkBklCYEbCuIJsuAvC8yQaLZQZFeWrK/H4I2eoii6
+qQ3/dCH/D7LerNgZM1ResjQk5eNghmmhM1QnJa3HTz06h33FZL+m+QLXQ9xwmaHV
+6om9wDIeWonmmP17dVqxpEPUFwKBgQDRjbyNPokBxAXnq7X9mbnKuMHlqgUyBD8r
+sInn9XlGjqBBVNpG+k02z+kl7qCwSq41qFHAO7LSnsrJj/xb3oC9K68/ddsy0esK
+76RhSYM+K1ohbNmXy7Sxab4nw+9mIOyH8ZViPCiX3njRFAnHYAHmAwIIe7qvC8+S
+MqqSRXLcFwKBgQC/gUoMJwk5wfyPyGEDEDmx01p9AgjFR6SwxAKrOGqMa2fhZw5w
+sOO77qZ5/iIvQocxkJ8e72IEtePezUCrlCFP3/HkP4kvnRr95b79D0bAqXTggzA1
+UW9jAWsL2ZKkgKS0loP07RC29jhPb5wJvapcS8hJV46Uf4vLeUdK0G2g3wKBgEsS
+40Ua7UyjpJXuD4Iua8Bz1otoEPptSRBm69EdQXiEqmcddiHNlJIZhGahihH+f1Eb
+30XmXVdVqkLyAbAME8Ux/FPY7lHToMhHOHXeN1WzhFPLQl0+jpqszoJCkObezr6Z
+TzJlaQmXm2MUMbiq7aMw2q6dXTFPIus2maNTnCW7AoGAFBUq5JBvMntjcs3qNv1R
+Cr1JcC0ZtoYoMJGLL8VgM09P01XnixkjELQzYhrEMPrZRkFUQTtakv1J3Z6E6ytC
+0oWkr0OhCMdf7MVFh5rXc3MOFK+t17ZgQ8n4/YbmncUmnu0Qy1C0XnLFcdJtyE6t
+snYKL3t0oFL9WZd7NiqA3Hk=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/server_no_subject_no_SAN.pem.digest.sha1 b/jstests/libs/server_no_subject_no_SAN.pem.digest.sha1
new file mode 100644
index 00000000000..bb098491fa9
--- /dev/null
+++ b/jstests/libs/server_no_subject_no_SAN.pem.digest.sha1
@@ -0,0 +1 @@
+22BC5A014E9F2127C33A41C26E2044BBC2B53F99 \ No newline at end of file
diff --git a/jstests/libs/server_no_subject_no_SAN.pem.digest.sha256 b/jstests/libs/server_no_subject_no_SAN.pem.digest.sha256
new file mode 100644
index 00000000000..67573a0f952
--- /dev/null
+++ b/jstests/libs/server_no_subject_no_SAN.pem.digest.sha256
@@ -0,0 +1 @@
+D5CE39CBFEF9B028FEB2F7395E4BD62E58914EC4C8A2BDB134932F1B3E3B4633 \ No newline at end of file
diff --git a/jstests/libs/smoke.pem b/jstests/libs/smoke.pem
index 0aa8331ec8d..f8ecb28a0bf 100644
--- a/jstests/libs/smoke.pem
+++ b/jstests/libs/smoke.pem
@@ -3,51 +3,51 @@
#
# A self-signed certificate used for smoke testing.
-----BEGIN CERTIFICATE-----
-MIIDXzCCAkcCBHAZhAkwDQYJKoZIhvcNAQELBQAwazELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxDjAMBgNVBAMMBXNtb2tlMB4XDTE5
-MDkyNTIzMjc0MVoXDTM5MDkyNzIzMjc0MVowazELMAkGA1UEBhMCVVMxETAPBgNV
-BAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQKDAdN
-b25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxDjAMBgNVBAMMBXNtb2tlMIIBIjANBgkq
-hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuKv2n//A5zwn5L8vkcxym/MppjKQT2PE
-NGNtbRa/am8iYFePG9Me8ijVH6DPsPipB6YZcRHUelBbcZ1s54LQD/gd8RwpiWJU
-PvWUDK+jcuw/NvyrfPn4pJzf9X+T/m9QSCpjc9QDdrxECjvxkkBttKTQjUZtFj/j
-Kd8eD4Oy9ho7cyCnhYHUG1W19nm8oBIcw2AXpRWhtjsOANOEWnjxAGmRZaDXzi0a
-kaKBgKUaoc95kgHQsegvUcivRpDH+QixbpjTxTNm3mw6XzzWej4SeXcYzW4eZD65
-uK6NWr35ZVaiXFYQjjXHztWYJPoQkngIgyd7Q2eEupMXD9FK+dcFPQIDAQABoxAw
-DjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBCwUAA4IBAQAliTjzgHdThB2zNaA/
-UcrpZ5TEJhw9qWkE8VYZWJ82PeZYVnbami/6dzqUmitgeZOueVszirVgk7DpbwPy
-6yA3PfUBIHhjf/3SlQXiyQ9mTmmf6b9G8nJvusulXk4mTwJ/oO5VMyPESkmcJD7m
-JapWBMpRiM3+VKJ/IfOAslHoZJBg++CitHGqjvNLdEqPTGY2DErUA9QFupD3tUW1
-F6EUaZJsWeBsu0BE7AVtuEKBfjKLeXMCkvmNSlnkccOnLc54j7i91+Ps+TrxoUNV
-akOiwHby4GVVdhfeLl2lYfYRjh6tChgHWM5T5Sft08OynxUSromFPWeE5rQ+glDD
-L3wZ
+MIIDZDCCAkygAwIBAgIEXcrf1zANBgkqhkiG9w0BAQsFADBrMQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEOMAwGA1UEAwwFc21va2Uw
+HhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjBrMQswCQYDVQQGEwJVUzER
+MA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAOBgNV
+BAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEOMAwGA1UEAwwFc21va2UwggEi
+MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDPxycX8hni7V8evBZrKWm7b1oT
+OYRz9JBgwQMdZV2TlWpJJLehFESl2ENWRVs9ZiD6TylofnKHaxaIAkhqgNc1Vk2h
+ABj2LcqG7gukcH6++PZLTWS58GmGVunrvCFzX6jkKEa8PFBHqDf/KcPqN6ALHUGY
+jb9md25dMD3NudMLsfZDEA8AXAE/G8UDWbN1RxLUWAxJDotzAoF3dKr7s5ruo9NN
+urSb8SErjmO1AuSArZwYwTcVO98JPUCOQfHyhu0kgi9EN/kKqBFaFYCZAUqd8lKD
+VR0GY3uiYjYXYRcbuvQihQ3H6gnMbAKCS4BR+KW3Uzty27qS36MhGjpd60CnAgMB
+AAGjEDAOMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAMwm26DbGdss
+sxgGTGXa4ogqOMe6zjEXib00auRGxJ/DvjDe7CJqEetMaBVnuUVr1neCh0/i35jG
+Cbrzs0fMwYnElXbJk3cGuEB/IeFyVAeJ3y7LiI9+o3AoIK8/Kzipn0W3Z/7ohVlt
+AnA4amQSZFIhpxk/oFks7hFnMjEiS4V+iBOUj6GhY/D3th9rpZWC8rOqTrEYvAqm
+BpYDKbU0j4tS8Z6fDOS7042/e1ocYieA4hBDOuA5jifOlkcWfoUjzNBg5HSbpQoT
++RbhMZnzP7LdARXm3XvOAkgo5pBji1zTZmO4H1IGEJMcNNthTR20F9yeZXJblJdT
+Gj/fOrDuX5o=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC4q/af/8DnPCfk
-vy+RzHKb8ymmMpBPY8Q0Y21tFr9qbyJgV48b0x7yKNUfoM+w+KkHphlxEdR6UFtx
-nWzngtAP+B3xHCmJYlQ+9ZQMr6Ny7D82/Kt8+fiknN/1f5P+b1BIKmNz1AN2vEQK
-O/GSQG20pNCNRm0WP+Mp3x4Pg7L2GjtzIKeFgdQbVbX2ebygEhzDYBelFaG2Ow4A
-04RaePEAaZFloNfOLRqRooGApRqhz3mSAdCx6C9RyK9GkMf5CLFumNPFM2bebDpf
-PNZ6PhJ5dxjNbh5kPrm4ro1avfllVqJcVhCONcfO1Zgk+hCSeAiDJ3tDZ4S6kxcP
-0Ur51wU9AgMBAAECggEBAJabaB9ErUXoQYDEiz8UxcN5pFXultKoQrOXAv8cti9P
-Q3He9s9ydqJ3uph4xelGYlPimo0kRW0ba/hUsyR8AsODTqf8l8N7dcmC7qMJ+vsW
-wNdPaWwbUTSu29eTnFa84XR5XXJxTgHfuH3ANVtZQB866vrMnNqwb8sOM63jcmhR
-yWh502iH7XadRbMFlJv0Y8QjdgFzp3PMJCKWIP42Sfctgj7BarDI3X6JsC2BMxCu
-DVFnhEGELuh2hI++f1Y4Eqjj7L/Vtr5Aw2w5G4cuX8zxLBNfxSCZX31oSwljZ044
-AiAettXttf0liXGrMQAig8Xxg3RqBOuR/D7rvn0h8QECgYEA5D5g6YSHPyRYyHJO
-VKqraxoFvJBkVOTbhjq+rHoFRUQKR3sttOPbvTeMYilevrKloma+t4oHsYVooDU9
-yVljtq98Np+c65X2+sbcBjry6j7VYxIWwl2Vs+ufaGlYwGTJ+ibdIW+gKuChNSUu
-gs3067Y8a2677HZNRWLlDjlTNekCgYEAzyEdaQEKHDHUrHOZwzlLkQMsU3hs5hdJ
-HWj/QNijc7pEa9hFCIrQNEc88b8vhOMC611vXccVosp4v+lrwJCWpPyx6RzW8Ek6
-CigV+vhR+4jo7/26LZ8iGxyH61fw2UbnZDuZZOK15WAbJGRbTwaX3KeST8Ej8axZ
-Pzig/nGAfDUCgYB6BM8SiAM1wlykbFdr9AHINBU1BYxdxiuFywn8cw82RHWqWTPK
-LLZgpb2rDKrWD/N0qrDythv+z29rlor9hYhFNfOV0Ca322g6EO23dvQ+PnEdkaIR
-Lq7FjQWfcBI+aKOB1B0Lrv1Vbtk/7Cy9SRXSnY4XcQ+ODoCow4Ho5MSTYQKBgQCL
-0s34wXPivpzT4aHOERJ7DQpSOrxAwz1fNi8BxnzotbhUmQVZE+QjNmfkxew9J8Yj
-vspcIvXvFAFZhChyMOkQ7Wjodch/It+kVZUo+5LUW4Lr53tUKtWqOaNjctUqx9uS
-ZU1StlyWQD9yXLDq8wd3NEPnxPkPvwnsTL0ZpuNWdQKBgG6ZI3ab9UQ+t6+G7HHX
-LBddm61fw9zUEI7CnJCcfe+syujuy7xAvIVkKjuXKB2lVpsyvnWLNsx7NV1xFbxI
-R9Na4QEjeWwnLgwOa3sRAuc3Fr0HdbjXIwcDgMa7dx8ljoLDiDZRlaus+xZ2cLdb
-tgFRsexsWhMahpmu756HzhLp
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDPxycX8hni7V8e
+vBZrKWm7b1oTOYRz9JBgwQMdZV2TlWpJJLehFESl2ENWRVs9ZiD6TylofnKHaxaI
+AkhqgNc1Vk2hABj2LcqG7gukcH6++PZLTWS58GmGVunrvCFzX6jkKEa8PFBHqDf/
+KcPqN6ALHUGYjb9md25dMD3NudMLsfZDEA8AXAE/G8UDWbN1RxLUWAxJDotzAoF3
+dKr7s5ruo9NNurSb8SErjmO1AuSArZwYwTcVO98JPUCOQfHyhu0kgi9EN/kKqBFa
+FYCZAUqd8lKDVR0GY3uiYjYXYRcbuvQihQ3H6gnMbAKCS4BR+KW3Uzty27qS36Mh
+Gjpd60CnAgMBAAECggEAf21zU2M+bwcHPDE8SpKGbtaW1o2C5x6JYV1eTKv7HOUY
+3yzulZJ5m4Cro4A7uccl2H2uNpC+KsEJe3Zy9SZ5VhPM3j3SEUD6IZBigYIgqXzE
+iGA5szN3dFVfdxzVIw365Zqx7wXKcnf/h7UUm1NsCwTxUt80EGKUxAAvFzms7lEm
+GDSiNJh9Bh90fC946LbAIOw+JIrsIJzeUq7wQ3bHWxZfdMc4Hg8M+3znXV0VWlsv
+g9nZ3EKWofyvk5I86bwuuMVcHoFPtMH8U5Hl2jiPxjR1lmWvhcdcGyxrsmA8536Y
+1PA6FfbTuUtjreNKpcpv+pWLOrZIzEWqNYQxKbG2YQKBgQDziwznjWV0zqN7mUz3
+EIeo2UiVF34elfRZaJnRTdv//fUDOjRds96OkbLsp3frNYslGrI0UwPHHpEg+Lha
+JQFto/BizjvC1VaSQqJ6MDt+qPCZ4U6vTGM71jfp3xMQ65M6JU60tqQ2tQofGzlN
+QEW0AwNhmrJfnvRF6mswhioQkQKBgQDaZ8sJyTLUa8DpYxhDgO8Tg3s9VIZQHZa4
+afp0eAWJAVI04Bav1r8/58X0+//BkoSY0cIPIim0t9FuU2TQUUgr/RnXMAW9JApd
+KlOO46IY1ElLRGHkToBPearHiWEuX59E7Md6WH6VRt1TKzTe0ODf2eTFohBnUyMS
+sslQUCdZtwKBgQC5cB4STXJ7/z8xxGd7E8YHxfJjO3EXftyAG4pLeXpTMB6YJ4Bp
+/KQwcDYJxfYkTS+2v94Cw1b0DY05ysgsM1MkFZja0udkEacKVNx8Jy+V4LLaqFiO
+V56TmCgY1nchAg6nTnLgXNUqpqyfRM5byN2KFGVFs1GwR0r91WFqoC11UQKBgF4H
+J4OsCmUniuMv1YdiYAtfpNQvqq+dPYFhpwEzlvZ4CiNXgozrgGUL7M7fGyoEYW/F
+hq2rQJdcOB8uag3BoLfHfLOHKkFW3dtkWJsA542W/4MXCqoXHeiZcev7+knTwycS
+ZYMHzF+KJckjpdxzwwy8q2BmuHczdLsdG8ym5XobAoGBAOfKIZgDttyDb7R4fEzo
+v57t3LrlIF54jQYWxqh+81YzqbQFfouuYkfOFa5a87buGgu2BGjGpZcOAnv/FFw1
+EnHPueBsOWIH0C12Pft/4+idwfVZdOq+QbzMt8rudtcnlwhJZQUrvNQjCymiKi7/
+acmbpzsrdmOQ3PB4+Bfd4E1Z
-----END PRIVATE KEY-----
diff --git a/jstests/libs/smoke.pem.digest.sha1 b/jstests/libs/smoke.pem.digest.sha1
new file mode 100644
index 00000000000..9b868f56bd0
--- /dev/null
+++ b/jstests/libs/smoke.pem.digest.sha1
@@ -0,0 +1 @@
+5AA4C4852BE5F777296840988BC35FC266C80FEE \ No newline at end of file
diff --git a/jstests/libs/smoke.pem.digest.sha256 b/jstests/libs/smoke.pem.digest.sha256
new file mode 100644
index 00000000000..25031455d70
--- /dev/null
+++ b/jstests/libs/smoke.pem.digest.sha256
@@ -0,0 +1 @@
+EFB8DE63DF6DCFB93649EFA5D5F9667444EAAF32FCB612ADCCB95A1F103F814F \ No newline at end of file
diff --git a/jstests/libs/splithorizon-ca.pem b/jstests/libs/splithorizon-ca.pem
index 1e4c6b7d251..7d401349fee 100644
--- a/jstests/libs/splithorizon-ca.pem
+++ b/jstests/libs/splithorizon-ca.pem
@@ -3,53 +3,53 @@
#
# CA for split horizon testing.
-----BEGIN CERTIFICATE-----
-MIIDxTCCAq0CBAbRjKEwDQYJKoZIhvcNAQELBQAwgYgxCzAJBgNVBAYTAlVTMREw
-DwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEPMA0GA1UE
-CwwGS2VybmVsMRYwFAYDVQQKDA1Nb25nb0RCLCBJbmMuMSUwIwYDVQQDDBxLZXJu
-ZWwgU3BsaXQgSG9yaXpvbiBUZXN0IENBMB4XDTE5MDkyNTIzMjc0MVoXDTM5MDky
-NzIzMjc0MVowgYgxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQG
-A1UEBwwNTmV3IFlvcmsgQ2l0eTEPMA0GA1UECwwGS2VybmVsMRYwFAYDVQQKDA1N
-b25nb0RCLCBJbmMuMSUwIwYDVQQDDBxLZXJuZWwgU3BsaXQgSG9yaXpvbiBUZXN0
-IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAo0TJf1iHbrrfaIQR
-fD6B+rV/xWY/viCaCwsbCZHUV3U2Dwpn2viUfREN2GeEPjgGmnJDZZx2qmDS+buc
-8oBtWxXRKpjLYfE1Q74yW1VBrgOx+jB3QtzLkUkO4PE7XU7XhIhoTfnCMfoozbHB
-BJPaAq43F3uj7+0/mNtIx6dop4eYeediVu9hV4pcszw0A8hexq++wC6DkA5a0HSQ
-kzB4aEwDPzT1FyV2XCVfeR815ILq1pkV3VqDStRyA7VnHqAB3C+yQLfnJWKpK5+Q
-dB2Qteahu2RuHkkmYYxhW048GLrkJIo+gBwLMQa6zaxMclwezA9ha3IYPZUZm0P1
-X3DFFwIDAQABozowODAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBTwa66R4xToFuU8
-kq7yJ/XcdcUxazAJBgNVHSMEAjAAMA0GCSqGSIb3DQEBCwUAA4IBAQAlykRMELMG
-k+MuyXNsX579gcAS+OEf9DibIrauqzeobYByYPdfaRYKZSZzRkv1dLtsb4Lb1Oz5
-or5OwEh5sdmVVAJWAEhKzsiikionzv40kRo0jR5P1poa0GfD4QSSHNlZLH9W6o0N
-El94wLUlfJMK0PVtRxhABRDWPiSRQEHt/rxNRs+1KCFqkb5+1v0qpeIZO3aFWy1l
-slw2MFI97mEENdAhFFYj/vnvP48AJjuOH3klyOAqt3oxzv+kmPhf+4CLgUKlNfOD
-0hRDaElv7c43fQrALVrvpXo5ji2u9OEkNJaZX8bPLLSEF6faxXjroqTXx1kyjT8/
-Z+hfghV4o8o2
+MIIDyjCCArKgAwIBAgIEEz8mbzANBgkqhkiG9w0BAQsFADCBiDELMAkGA1UEBhMC
+VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MQ8w
+DQYDVQQLDAZLZXJuZWwxFjAUBgNVBAoMDU1vbmdvREIsIEluYy4xJTAjBgNVBAMM
+HEtlcm5lbCBTcGxpdCBIb3Jpem9uIFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ4WhcN
+MjQwNDMwMjE1OTQ4WjCBiDELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr
+MRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MQ8wDQYDVQQLDAZLZXJuZWwxFjAUBgNV
+BAoMDU1vbmdvREIsIEluYy4xJTAjBgNVBAMMHEtlcm5lbCBTcGxpdCBIb3Jpem9u
+IFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCxHkpTenKn
+0n3MxdH+yL+N/879HmJPKlN0HEAQP350VdyvgD28qlZQgwujolp+s31BoSQoEifv
+ECR374y83oJy3ZXB7315BZjA5APShllIdUJt7mpQDKiKbzqGajX3nPo0iSh1zUlv
+/+swtu4IqlkvhVwHdOPONTpf00jxFYvnL51kLRPgGnqj7tXQl2vQvjHGBNZxN9md
+TMXpHU6HdbhLXnCc6PViCdc8dpOT7d6tL5tZp34mrkfyTbhSHE+LzXj+dHR4LaoA
+fwDJne7pX14NfQikcYo6UfVt4Z4ooxojTGJitB1XbwYq8rdCtdpopCP+0RiModJ0
+XmNR7zoO9rbFAgMBAAGjOjA4MAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFOGVM3o0
+/euAzEuIyPIdkRxctV0AMAkGA1UdIwQCMAAwDQYJKoZIhvcNAQELBQADggEBAGki
++aOaPfFyOTTS8ojhVPQ7vAHvtKcY7mEO+tOaG8K4PCQElS05DzKmMaMPArWP/Cn9
+KxZtBkQbXriprc/NPzVY1I8IAlJJsiYZjdA+lhV6HXyi7hWsQHMmbHkf2jyJ8jBf
+xR+l8MxL/SJCSP5hmOce7vAC+nbmntx/uXcrMz4CDYNbKMqdLETz4tGiX3Dlv/8W
+0kEIPx1pAZLd/gf4BoOXiW8AaISyTkgloxq/jHCgEueFFGUYVpRovNf/N3jYMJDL
+8tPBDUrGFPb7hCSHkHrGsriGVWpVuSsQxdzZO9/rpA2khgqsp8Z+p2X4QvRrwEUW
+sKJmv+i5WkUKmMNowh8=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCjRMl/WIduut9o
-hBF8PoH6tX/FZj++IJoLCxsJkdRXdTYPCmfa+JR9EQ3YZ4Q+OAaackNlnHaqYNL5
-u5zygG1bFdEqmMth8TVDvjJbVUGuA7H6MHdC3MuRSQ7g8TtdTteEiGhN+cIx+ijN
-scEEk9oCrjcXe6Pv7T+Y20jHp2inh5h552JW72FXilyzPDQDyF7Gr77ALoOQDlrQ
-dJCTMHhoTAM/NPUXJXZcJV95HzXkgurWmRXdWoNK1HIDtWceoAHcL7JAt+clYqkr
-n5B0HZC15qG7ZG4eSSZhjGFbTjwYuuQkij6AHAsxBrrNrExyXB7MD2Frchg9lRmb
-Q/VfcMUXAgMBAAECggEANRkv9wyRrz9zXQhmr2Oc3i6dCVQBsxHjR2grOOeGiZMD
-K80UjbB+ilY7jH/OEHYkH6K9rJRAO5UVyEZt+qgt6Iul5RagPpA15Hw84FtP6wok
-nduZTdOFGRELl7ict/HmQaIjWgi6UYqsLol63sQ/CNQj8q0xWdxs7IeUmeomLSV1
-RHt2J5oZDD7au0P7IuKvHdBIHCkGlmuZu3yBL8nthXTJC0nvBcncm0H82u56KBAM
-YVgYrJgk7LJrHCnN47+r/jK/XoIE/Y8l363OlyIisoMo97tJvxREvBfeNZkJwn6f
-Y3+wFrHGcVqLofVvLGFdMXP6398iGDUojZHGvTy7gQKBgQDMgrNddAM5c/AxZ0Yy
-Yt6wU/EEeH/YpWYSYybyFbRWJGxVBhU/WMBysaVUsMg09ymolT++b/Qf3uubi7ra
-fgE7nUoAPDn+6b3OhOZ0vZv38YgCtym1LHZ9mn1RmdHn70GFtY7izy7HaSVrV+EG
-vz6Kpa2ubgwAnH8ts7NA7xSAtwKBgQDMX+3qeUWOmh7s+5l+YyGIMxg1rK4hU5sw
-cK/67CPKQbts+qfQRGCdFGGIejqlFd71aruXH/Gl+co8gZORPrZ2hN0f8zo+bZuK
-XE62bQPSH47WzvIu1sxYAxT9xRkUGf/eQHyfz/DIRXQ9XZ2FboC+5hv76/V6iOeZ
-MFjmCBy+oQKBgDpzZKZiIQXLsCu+k56VCYamBy267vdRlpHMyvXH5En2kQvf+DSp
-vh9JzLIe8KnKtppbReO9Ba4SPY6wahBGkT2jn+HfVMgZsEkVTPSyuKAt5Sy5gu8o
-LRmLDSREbWz3wedgU91ZT8por+w1KriN8mcYIULIax/FmsfKI4J8koSTAoGBAI1F
-ynoINlKqqrH6AVJiR+2UFCoWIZAb8Ox9GMiErwDCi0J7ycCnY3lxezIR+7Pd+G8A
-xodip3Gpx2gn0c/W393xXcEWKq64qYns4OQtWzTGZ8CI8NP72ukDyGDa+8jvZ/VD
-8mGuJazqhb1dluODTS+odLOhmeCH/j/gMbNg7C3BAoGAOt7cat5LBCnXQ3SkzBIK
-+yk782+3LMsATXhYQoeXlYdtsF2bMo81DHTsyl2MnZByzebWf9ZaCJVqawCySlmt
-ORTr33UBgJSCmgseM6ajAMFI27PhLcvBuMQZdV+o/gw0GvjdRIYT0FQFsvmKri0s
-m5I7XxnSMtW0JmDpJDw710A=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCxHkpTenKn0n3M
+xdH+yL+N/879HmJPKlN0HEAQP350VdyvgD28qlZQgwujolp+s31BoSQoEifvECR3
+74y83oJy3ZXB7315BZjA5APShllIdUJt7mpQDKiKbzqGajX3nPo0iSh1zUlv/+sw
+tu4IqlkvhVwHdOPONTpf00jxFYvnL51kLRPgGnqj7tXQl2vQvjHGBNZxN9mdTMXp
+HU6HdbhLXnCc6PViCdc8dpOT7d6tL5tZp34mrkfyTbhSHE+LzXj+dHR4LaoAfwDJ
+ne7pX14NfQikcYo6UfVt4Z4ooxojTGJitB1XbwYq8rdCtdpopCP+0RiModJ0XmNR
+7zoO9rbFAgMBAAECggEAcMPFNILIDrr/5uinexxagNC1+wdmNdrPySPXUcDrBKxJ
+1d7C76RPUfEs7uCF1xb1j1xFxdFRZW4UmduE8haEXRdgqlmMvAlpKJ3DJTzuCSjG
+w3DAdPiqMYEBdOSYOW7TCbGtddref5UjKx+8Sv4RzCSO5BxykS3oXWwKi5tZODVU
+TYH/O7mIA+fQnLv2QCqLQCe7oFzhD7cyLzbpbK0SS3UE38GwAuExCHX810BR6wHi
+nCJkHxEFdFagJKeMBAxNLNdqUG3ISL7/r+FrouSQHZtqAj/Ch/XMcIwEJK85d5Ib
+S0qwFaBXuWSk6/V3hb4gkkL1OqJQ1u2n+yh8hjvMnQKBgQDVxpZH5bgMSxwBvWIe
+BxaRZjucUVcptkNrmW+B6yC/rI7Y8TIY3YIDhAO6Tg4oTo1mANxnmY0EugwptF4+
+blbLt/vOthd81PfYTDziN/ZN7ChabQAnsC8QUwyEQ+cofl3eIu1tu73zKhdeC5Hg
+THYipR/UDjOs6fkwMD1CWpvCqwKBgQDUGiX32qXAF63GA/O6ixAGKAV6ZgO8chzI
+w7ei9CnVUfHOv+1SGwGj14Y8GcWE70VgNv/dArbVpS8E4XFFnkfcwA2W+plrt6DZ
+wTlLis+yM8COQM6VSYv8Zhrf+7JdmRrxpa3j9a7rJjtC7YmrIK3aYDeft7gpTNRe
+J32DBFDsTwKBgQCOkk8PzEkfCci38FJLrHaEqiX/btAu5Xu5ey8++k1xB+iNDu9W
+XgSjy5ug2QXgI+NxsAlOnr3J9Tq/ZaelA3mnjCDID/FCM9bHzrCcPq5p8aJIDIIZ
+9gqtXHXwkEjOXNjFmY23rYpVbjD/a7/yU4xGNtIvXvlfzPuAA+wXIM7Y2QKBgGHy
+5V/NmEfaZ4SPZKnb+H1vVABPRiBrbkGEqLRXH06E9i8tUPJeyGYabMIqgJ3ARYCG
+RaiRzU9iZhFR7xZgXv1hr6Tue5VUCrMk2Um6g+nenmjTItOsUDoyCO0w9hDlWJ0J
+jwE7/xhW4n0o5y+g+shjMKzQkfp4oYYNpJexkZFfAoGAaGyfshedvZhR1jJMwfxy
+T2K3HoIx9f0HpXbSvcTU60ibivfN8j3CKyb21G1TDy0vVXzmmAn/xE1d9+vIoRhh
+zCadDje2aMNoWgYEjxCBm1M6eH1+JKJFDuXV9vxuMjZtdOsw9NGISCa5lVsz2Z/i
+/SF0aY1nqtIKkcfGe2NRaKY=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/splithorizon-ca.pem.digest.sha1 b/jstests/libs/splithorizon-ca.pem.digest.sha1
new file mode 100644
index 00000000000..29328312562
--- /dev/null
+++ b/jstests/libs/splithorizon-ca.pem.digest.sha1
@@ -0,0 +1 @@
+88F3B334A89B06D6D5C7F6336F512B3ADE14177B \ No newline at end of file
diff --git a/jstests/libs/splithorizon-ca.pem.digest.sha256 b/jstests/libs/splithorizon-ca.pem.digest.sha256
new file mode 100644
index 00000000000..5bcd94c39ba
--- /dev/null
+++ b/jstests/libs/splithorizon-ca.pem.digest.sha256
@@ -0,0 +1 @@
+30C84F4D878690807FEB5F01C6AA72F3CD17CCC416FC3BF71A4D6BE697276867 \ No newline at end of file
diff --git a/jstests/libs/splithorizon-server.pem b/jstests/libs/splithorizon-server.pem
index e486ca09ed9..b647aabe662 100644
--- a/jstests/libs/splithorizon-server.pem
+++ b/jstests/libs/splithorizon-server.pem
@@ -3,53 +3,53 @@
#
# Server certificate for split horizon testing.
-----BEGIN CERTIFICATE-----
-MIIDxTCCAq0CBG18bjcwDQYJKoZIhvcNAQELBQAwgYgxCzAJBgNVBAYTAlVTMREw
-DwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3IFlvcmsgQ2l0eTEPMA0GA1UE
-CwwGS2VybmVsMRYwFAYDVQQKDA1Nb25nb0RCLCBJbmMuMSUwIwYDVQQDDBxLZXJu
-ZWwgU3BsaXQgSG9yaXpvbiBUZXN0IENBMB4XDTE5MDkyNTIzMjc0MVoXDTM5MDky
-NzIzMjc0MVowgYExCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQG
-A1UEBwwNTmV3IFlvcmsgQ2l0eTEPMA0GA1UECwwGS2VybmVsMSUwIwYDVQQKDBxN
-b25nb0RCLCBJbmMuIChTcGxpdGhvcml6b24pMQ8wDQYDVQQDDAZzZXJ2ZXIwggEi
-MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDOUX6ohGPZ2CwRPG0saESuTrDg
-2sgw1CemD5cLZKMf2aykyuZpjc2SBlHsMAg76vsHoTi1FYPN8XhYZvCAk18gmVTr
-kMGSDA2NNPwnXi9jCmytyo3xr7kK7zxrl/UmMUbzcoZRchxH8iYI8Vv104qYvPuI
-OXeF2b3PHObbW9og95qUsUhPHujR5VY3adSoM9S6uNVPhR6XMpuPsQLIej8w+Os7
-kw3vka28VvCzSKBDxfC4ECjhaC28ZCqASwdzLM3lw/JpEw4S3xiVY4ubr87p8NBL
-6TLG3jitw+pbDNsfZJ86uA04V0HvBlAA3DZeG4c9wGmKyV7fcCZd/q40WaOhAgMB
-AAGjQTA/MD0GA1UdEQQ2MDSCCWxvY2FsaG9zdIIJMTI3LjAuMC4xgg1zcGxpdGhv
-cml6b24xgg1zcGxpdGhvcml6b24yMA0GCSqGSIb3DQEBCwUAA4IBAQAocddH/Lua
-ngW8o51IuHc6xa25+9PcAlI7XNfiNYeGBznCadGNtYO7jTu8MUyQuY7FO25PnJOM
-xvEj2tQ78a0ndofrPZuNnoLPsvbaaaeDzfJCyo1gHEpM3fbKNgZaN2Lcp9Xqfiz/
-KQH5TRt3FzVCnaad7eLINW6gC4Sy/Gcrr7D3HMf+pwqm+NXMAgjh34VXzD7YgUqr
-78rCjkLThTwUuXyRJpBnLQUKOFbAXtZGmy0W0YuUk71YfpSxwWIN5JHYrs7mImYc
-Jh825CzGLf1gBVKgiuUpAl8pWjXhbC0ISoVuUvyrppqslUSn8nHQEdbXoNjAq6Fb
-70/3O2SxopTr
+MIID5DCCAsygAwIBAgIESEoCtDANBgkqhkiG9w0BAQsFADCBiDELMAkGA1UEBhMC
+VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MQ8w
+DQYDVQQLDAZLZXJuZWwxFjAUBgNVBAoMDU1vbmdvREIsIEluYy4xJTAjBgNVBAMM
+HEtlcm5lbCBTcGxpdCBIb3Jpem9uIFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ4WhcN
+MjQwNDMwMjE1OTQ4WjCBgTELMAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3Jr
+MRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MQ8wDQYDVQQLDAZLZXJuZWwxJTAjBgNV
+BAoMHE1vbmdvREIsIEluYy4gKFNwbGl0aG9yaXpvbikxDzANBgNVBAMMBnNlcnZl
+cjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL5lcosVHzMYAh6GO4SO
+LEWuT81d9cCszfxSDH8yTLnrEXsiMdDzTM9R/McZTpVQGHE74R8h4wTqf7roCrSK
+gl0MokDUYhr/X8Gbr22UxfmNYyVsN1m55NoUkW/igBkqzsBQEzcfkdpRr6Uv4eu2
+uWcTLb4fJAQBzLtl0SHBgPMx2PNQaudscWKOezAV9zSygPwhqKUWsYzuFPGZPyJp
+QU1cSfFv7PgaH8UGzK3ioXOd37HY0QANBaowO2XocAyK91Htk86mlG1ICEqkPHRG
+u4mbsFDK2bf30Up9BuICQYLIIVe+hpSefqA/IbXqv+1x49hEMGK1ebOt15knuCwc
+3RkCAwEAAaNbMFkwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMDgGA1Ud
+EQQxMC+CCWxvY2FsaG9zdIINc3BsaXRob3Jpem9uMYINc3BsaXRob3Jpem9uMocE
+fwAAATANBgkqhkiG9w0BAQsFAAOCAQEARDK4wkeH/LQ8apO9Q3cAnEOwzBsbz270
+iT+4QQOrZ660F5Ex1SaiZd50brje7UyZmx6YTybMtCxwUAoyRvM3PXvdRUNeMTb7
+J6VQXMGDmP4ERYB6Hzbc/VrOOjxe5MgbGOgfoKlc6HDTcBY9unvh4M3GJrTudVnv
+wfTzwQR4bcFa7ASEohQbSXmw3qPeyD6od3q/A+ZTWvzEdKGKs4tHDoO0+KZROoNC
+Kd9oW+bobAeHmfePGxjv76epqFO/7KQeUd/niY+98hvBCaHQQJT4IjJFmBXIo4JB
+pZrmKAKRS0iD5Wy2Q4r51YSq1dy7YYiJI/FoO6pbxbGZLaAWBKJHUg==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDOUX6ohGPZ2CwR
-PG0saESuTrDg2sgw1CemD5cLZKMf2aykyuZpjc2SBlHsMAg76vsHoTi1FYPN8XhY
-ZvCAk18gmVTrkMGSDA2NNPwnXi9jCmytyo3xr7kK7zxrl/UmMUbzcoZRchxH8iYI
-8Vv104qYvPuIOXeF2b3PHObbW9og95qUsUhPHujR5VY3adSoM9S6uNVPhR6XMpuP
-sQLIej8w+Os7kw3vka28VvCzSKBDxfC4ECjhaC28ZCqASwdzLM3lw/JpEw4S3xiV
-Y4ubr87p8NBL6TLG3jitw+pbDNsfZJ86uA04V0HvBlAA3DZeG4c9wGmKyV7fcCZd
-/q40WaOhAgMBAAECggEAbbZEZhRQjK05ccjyPSUNMKvDvy5YOi73DoVHytUvMWat
-OcxzjjnL0RTvR2ubVVF1P+9pmlHgjwkS9991kMnNUiZ3U/TcGm+yXR6J391j0YTf
-meMWbCkHe1sQhB6ATFjz481Iw9KsW03XD/ZY8nYVQ3drQltcxZ6uIo657HgBnHlZ
-Adit6FGLn2fJ30324zq7T2/OlSwiJosKD6/1M4OWSG5AC0pl10+wtWOAlSWhb/7R
-3NVLHs3va5obLuGDje0ovj9QWfYNEUqZyDiFJ7N96ZFRj3axFEjmjv2kDylV2xVW
-d+zf+3jPDKcGfZZtTj8HuMjaWRmJtkv0+GQXjEd3CQKBgQD8tCmT+yK5bYCvTLIr
-rtI2fVfHyD9SoL27UIrh4hWHnhJJYpT3JXxDwSHttrH18Zlx0KXvM0h38fbx6cl1
-4Rfe6/1cV0dnCy35RTrnLJpe4uZFk9LsX4QpwQecLju6wc8PxnrWDo2spLdRX8IY
-AElP+SlUZ61BdzJg639EckRk3wKBgQDRAnDCDqypB/VW7ZkhL6tZ2XQqmIPnH1WX
-3u8WZj+BQlQf7wqRig+2qcU1lF1/Ct+4AzPs/Vj53+yAs4+UxwodmKZKMWxmUZP7
-KnkGOBpvgWmhw61BhNpAHODV47sgL6oWdcHWLo5uZBs6XE88lQAGOpxCpuEIxE0G
-xyg/qgaHfwKBgBkUKCwveDq+y06aZfQ/3UzbE6MYFHC20x2L2LyiG1DiNx5hUjdU
-2QhAWoWk4/RsjbXl5xHeHQsKUF+hvASe2iedc/9+CfAIBAABBt96ZbeU/RVankwn
-Do62QXMWg4b9RPdj0zz7JMRFdIv23ORU4vG04I0n3OHqWm2T8YVxcagxAoGAdk5T
-VQTJZsRCcvn6e3ZoH2ue/Z1mzCRIZrahzqQBvkC1LX45FTh4vIRMRI++fHLDP31Q
-nwyomIfPbuo0k5o2d5o4RjbDjQcQJFNePc7z57nw+MeyAiwY/cFa4rcM7KMOO7hc
-B8hChunTH62wjDIq2VvDp1aeej/i+bsxZRfwqjECgYBrndvRmtLdJzaBPPPYur43
-xpU6rfIXV8D1Nm1R2X7Ughp/Vz12Gg1/gaGQ5pSZ+/u0IXam6ZCQuSMsGiQSd0rA
-Icdcga+hBt1D+CAhFRwqkmlSURVG5UZfVzf8H1cnq4674VG1N8HkFNXz6br1+jXp
-on3G+UTIsxZtWSpO6sRBkw==
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC+ZXKLFR8zGAIe
+hjuEjixFrk/NXfXArM38Ugx/Mky56xF7IjHQ80zPUfzHGU6VUBhxO+EfIeME6n+6
+6Aq0ioJdDKJA1GIa/1/Bm69tlMX5jWMlbDdZueTaFJFv4oAZKs7AUBM3H5HaUa+l
+L+HrtrlnEy2+HyQEAcy7ZdEhwYDzMdjzUGrnbHFijnswFfc0soD8IailFrGM7hTx
+mT8iaUFNXEnxb+z4Gh/FBsyt4qFznd+x2NEADQWqMDtl6HAMivdR7ZPOppRtSAhK
+pDx0RruJm7BQytm399FKfQbiAkGCyCFXvoaUnn6gPyG16r/tcePYRDBitXmzrdeZ
+J7gsHN0ZAgMBAAECggEBAIW2pWz8Fn9Bmytoxh/f4UPGmZD3LgJ02e0cil5CKxRe
+/FXnu+itFgJ75/TD1yaRq7jKft3oZJEtRysyj2If7FIA72psPcIMG2nTNq7Uzvzl
+yP2dNHo1TX3C+CkFf0UthSoWkogiCcKzn5F5QUbTev3iwDtHj3mo8emiJe95AGDK
+JsBCv//qGcsyC6/CkS02734jW5fnP+On1qRxwVNMDbJPXlauJ13HFCShGFqUdXsh
+DxtmpJNcn3x33lkDvQ8HOco3i7M2vXZdBVZUIBpCUK4jz6WqchFoG3iEpAH6rBLO
+kGRkjx9kZTWd3w1gpV/Z3sd+DxS3ic8bzuo3H/BuRQkCgYEA+ewTPGOdCMr0geGO
+fS/6yVn6Orv3ILjnn/ZyFHzoIs5F6wkc4vf1/EAQP2GJBJqZlQXjv5RSEVElDn2w
+KCM12IsGlZKDoCMbDUba7yF1Y32OwvCeWdoxE/LoymwPZtoj9TWAbqUxD9WKYvaE
+c18hYR7rOT7pNXfS2JLDV1u57j8CgYEAwwbJIhXkVa9f6XppnT0a9ojUqswVp8AD
+r3WJ5QlvoF5rxGdqPmgjaobE+i7mYJcrgMQQkSumBnaGtzVunF9ydg9kFah7uJ/z
+iX8ZuivQbTEJGgrDGYOMIfqRxloq+aR0f66RgUrWV11CuuFw8M/zf4YYCqtl1/V5
+oFu8gLh1DqcCgYAoPkxmp/+sX8n5dBGWtPgkHhn+BTBpE30ws+VwySA0IpT9oM0G
++zif8szq99CxbheW+IjQ25hPc4qNB84q2GieQty/jwUk7yI3BBbS9MdLSveHCmnl
+PA41ESNNHRNp02yA2qmgp3b7/r22680uKr5cPjdQU4IH+xB3kUJlOb75zwKBgBtD
+tZaoTNWVwOjZDi7HPh+9HU4LXfOnqlw7KF32pb5btOEuO/IhiOH5mUwIhnh2acSE
+pHRHD9zTcR3nwGDoDw5mNG26siEra1aLiEM4oNjDBCy52HCWrV6KsxpxvJRN42N+
+OiVDGxf3l76cibeAut/XFUFYmNJKJQjACmhMYUD9AoGAEgjKAngD8M+XRjNOR9Q8
+3jemZKTSxMiTZ23Jhm3kr1t0OUHObSXrjI/pRU/DyiAkzfoFqp+gBU7EpJJWYjCu
+p0UrW/vR1dj/LHIRtBHNYGwu+CLuZYJmzy1qMSxKthL7yERWVG96lZM4tUTp8UHi
+91CJDlpFxa3JCH7VnApiUIk=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/splithorizon-server.pem.digest.sha1 b/jstests/libs/splithorizon-server.pem.digest.sha1
new file mode 100644
index 00000000000..7758f1bd3f0
--- /dev/null
+++ b/jstests/libs/splithorizon-server.pem.digest.sha1
@@ -0,0 +1 @@
+E877FCA8158A566902AC60584781143547F1470B \ No newline at end of file
diff --git a/jstests/libs/splithorizon-server.pem.digest.sha256 b/jstests/libs/splithorizon-server.pem.digest.sha256
new file mode 100644
index 00000000000..bab0025dbdc
--- /dev/null
+++ b/jstests/libs/splithorizon-server.pem.digest.sha256
@@ -0,0 +1 @@
+17EACF5F5659067ACC1CFB74075E00741D8638E6F623609F834E5B0E84FE3E1B \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_donor.pem b/jstests/libs/tenant_migration_donor.pem
index 7a6e4fb4e18..dd67976e757 100644
--- a/jstests/libs/tenant_migration_donor.pem
+++ b/jstests/libs/tenant_migration_donor.pem
@@ -3,53 +3,53 @@
#
# Client certificate file for tenant migration donor.
-----BEGIN CERTIFICATE-----
-MIID4zCCAsugAwIBAgIER/nK3zANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIID4zCCAsugAwIBAgIEcGOmLTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjEwMjIyMjIyMTEzWhcNNDEwMjI0MjIyMTEzWjBrMQswCQYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ1WhcNMjQwNDMwMjE1OTQ1WjBrMQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxHzAdBgNVBAsMFnRlbmFudF9taWdyYXRpb25f
-ZG9ub3IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDUrhPajbiEzULD
-KgV7sEcrGsBezWZskH8ZDvt/4ZOiSds4sOGC/yHCk1BqngPnIegggkNv0Wee7hS4
-HBtQ8GDLHOeUUbf6Nt2JBeieRwv/psUU/bJgcDENKXqrzn+KH3DNzGU6J0VmXOs6
-jWLsl94eA101K4uAf90XJpJiSXzZBSEHrn7ic+wgisc1fxNLobKGGLEfuuY6VKjt
-9A8UghuxVEmOByLs9i2Mc4zW8ZMFoQRDAnJJOSmmBpVquSTdJF+S+qyU1/eIXToG
-r8ztEnqcdh/6UeWN1tQAAlZFbfeAT4ued4F0Xshz6RmG6FUxvEnFDj+vXt/sVN+k
-ykxR8wIhAgMBAAGjgYUwgYIwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwEwYDVR0l
-BAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFOlrTEx5vXxhlREofbIOxtTXbWR0MDQG
+ZG9ub3IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDQEvdnV/rKKmAX
+YmOJz6seF7z0JL4fO2ImmMckKQUYGuWR/Oa/gXuQqb7QHaPPnlKHnKkxrRAotXG2
+2c2a2bWBEQOODl5qsLL8JN8vvJz9iWu6sTh6fnkO630TJKobtlaApgqJOa/H6TPs
+8re6+n4db8yqYC2d+ue/rLI4ruJFRM5VbevgutqsSlVlFYf0gTnsTck6pexXw0HK
+Zamw0yMAEg/F0VfHjcVgpkZIzZKpX5F+v1FmZqjTdAnjnwNdFdwHLlmrnvNfbHkN
+dCbSk1ETole7NTu2LBH9+fxvqzjWmyoA5Srlvt3cHN97XsHwKLC+4ikvRSh6pUwg
+ha4sXLPVAgMBAAGjgYUwgYIwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwEwYDVR0l
+BAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFJZwHiyyArO1ExT8WAuqUcSYxx7zMDQG
CysGAQQBgo4pAgEBBCUxIzAhDBh0ZW5hbnRNaWdyYXRpb25Eb25vclJvbGUMBWFk
-bWluMA0GCSqGSIb3DQEBCwUAA4IBAQBrmHp9obnxAcz8p4pXiafZEt8IbfHhDCu8
-40Y6bA2LN6wxG2OSuY1+HdOTMMSm2vPjpsuBQ0sjpv1FhSuhubMs9f8ry00HzfdG
-GOyEvM2DY74PMRYCyXnjnPjNJAxVI4hCWED58CvGGJqURm5Gj8Mhm4spO5v+PZPe
-nZt2xRLmd15txP2oKrDjkuZqfdtE+67IK8Rk0TgUZV4mU5JtlmcqwEjK8G1O30wt
-qFP/izYkpPnI/RGq+R3FL3JcWXCEmQaEn+J9QBfg438gca3Vuac6JRMIgAIvg69Y
-nSMIdyllre6xPd2rYvxIsylBX55s2RcCAP85Kz1dC9Q4tVVCaWvB
+bWluMA0GCSqGSIb3DQEBCwUAA4IBAQAMuCkuvIDgMdA6J+DEGxo4Y8PFrcAuzApp
+rtJ9O5iyYfvCFQe9fec0M8aIZMSwnIjpLpn7W+ClK+aXQEetii6uDArmPl8Ql7mu
+y4Sv47iI+9SGTHpjU0sKDQXXAwSyLrOgroRGg0AugpZ3MjXPnEQZqbksgrZjWINi
+uWT/h9PrUBVsXiFAY5zN0OLPPUc72CFRKSbfJdHbn4XwMs9NFQpUa1BPxJnXBdXq
+LlHKrxn/FvJXiRaBcekKpaGWdGYXL5ar5qv3/ZxdXnO12JFGj1mB+biMNpL5I5cT
+/vnXg3S54v4k+EG/0oqo9zbkOp1FEU/n0FKUCg67AR8k0htvDiwV
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDUrhPajbiEzULD
-KgV7sEcrGsBezWZskH8ZDvt/4ZOiSds4sOGC/yHCk1BqngPnIegggkNv0Wee7hS4
-HBtQ8GDLHOeUUbf6Nt2JBeieRwv/psUU/bJgcDENKXqrzn+KH3DNzGU6J0VmXOs6
-jWLsl94eA101K4uAf90XJpJiSXzZBSEHrn7ic+wgisc1fxNLobKGGLEfuuY6VKjt
-9A8UghuxVEmOByLs9i2Mc4zW8ZMFoQRDAnJJOSmmBpVquSTdJF+S+qyU1/eIXToG
-r8ztEnqcdh/6UeWN1tQAAlZFbfeAT4ued4F0Xshz6RmG6FUxvEnFDj+vXt/sVN+k
-ykxR8wIhAgMBAAECggEBAKsq4u2ty8iODmJWSo1upQiLAjIKa5mKfdAkH8OfQBuI
-B3hL22N7hKc9uqXkQM3fmxu22yF+TkA56tD2RgHRRIWT4MmdL02gpJFoAPyJv51k
-kg8/0zUMdl3aeVEW48y9WyM2km3IN3GX7PV13xz9aRWMrZJiVmb4AW9lasDR1jou
-D/EXb7lRcTsmi4ganHkjiVArupC4TXu+19RVsCs56InMVs88Dgn1B0PDfyADOxRY
-WrfRlPS1+TLb5OSpQ4QKGNkY4uY720MmeQJa0IGMPERxtA0WQu2ptjJ4Sj0hqYii
-HS05rYkeujnIWiJ5mvulNozLdQ6V3nZmZXheyxE30jUCgYEA7Q28DkfQdan9C6Tw
-PTQsUKnd3TlBvgRKQ6m1T/A2gg1KL0Zc5xtzFZ66XwFlOZOUury1PKwS83YW7AqL
-qOlF1dMORnbfPVfkHLCVwBis8ciy5U5UP76jlMyuPI3W07h1M+jVxXR3tnE8Ogpk
-0DEtb9UveMSdEufYvGRxjNsXi9sCgYEA5a2khuDOK9ZH9u4W/+Q79TSaVQbMaenK
-NuPgI5TUQfGOUyBt+wERFmuP8GVFAbrBvIw+6DpDeV7rAh63mvrWBAxbuD+D/g0w
-bB6uFrC4MPDa2VXJGmqCqAWDei8ftdd5KnuJHQ/L87KWzKuIAIJOh//eEbIABePX
-NwuT5BqGKLMCgYAidrS4fshX0vbvEnO68jLfJ1MSLpjYP1dsruelT48dKUF3zgsD
-roH0yrbdyR4mWMZuv7C5uWqn6qs6de4ICKIWjDCvHekmyfhoE2QyIWRDYqJfpBur
-iNPPdlJ+i0CIV3Dysw8hPeWJqLzQ02IEwqGQeLYGIM+VSA/Ck/fOOqwZsQKBgDb3
-K1ysCCstiONrb02mDUNNZ3HZwqnGLYKdXlKll3aAnJMAO9HKG5DGBRh+49jaHOtG
-lPd2mhc9w/gp6b7JMNafLoQVjz0JYwE9BmSfvjTYL0e74/jSbJpRV3myNWCLRJAK
-KHIwCZs0riolEtMsXCbn8PlDJAZE1Ihz2NzKDDlJAoGAMCz5GaiT/0JuuN6WzDcb
-ee2hvfPrrfbRXP5RKcZKyDdP/fQk6GMCbm4ryGByavSHqwntIvK/fbGyRtEYbKU8
-Y3UhhgwP1O3FOXV+Fs+Yu2lJWH0mjKNsq/Lo3bwcbgSbvG/L257qtNKnWHAF1g0F
-mfMhHTnpqqxiGIlbUQkGe/c=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDQEvdnV/rKKmAX
+YmOJz6seF7z0JL4fO2ImmMckKQUYGuWR/Oa/gXuQqb7QHaPPnlKHnKkxrRAotXG2
+2c2a2bWBEQOODl5qsLL8JN8vvJz9iWu6sTh6fnkO630TJKobtlaApgqJOa/H6TPs
+8re6+n4db8yqYC2d+ue/rLI4ruJFRM5VbevgutqsSlVlFYf0gTnsTck6pexXw0HK
+Zamw0yMAEg/F0VfHjcVgpkZIzZKpX5F+v1FmZqjTdAnjnwNdFdwHLlmrnvNfbHkN
+dCbSk1ETole7NTu2LBH9+fxvqzjWmyoA5Srlvt3cHN97XsHwKLC+4ikvRSh6pUwg
+ha4sXLPVAgMBAAECggEBAJZuL+nKJKmGi2Q8oMQgnJEsDlLgQYfo8eP/rnHJKkKs
+J28tTVIE9eW3oxlpZGYVC4u5ymT8vuL/kw/kVY5veZavS0enwcEWsMA0lBs6HLH8
+aSNXPwLobvNHc2ykpEtWvyFRaeqeByTbx8u2CvkmYok7q9c9o51EqcncvBjY7wOu
+Fch/Rq2P0FTidpyk4APe4FaENDn8MKYCIKLNyLthkHqXQ8mzleJAlof+4lXwEQ9k
+HehpklLqgoQPyCyF0TDwWgqMs72tBo7gSZQ7G6tV1/iwrW/29YL5L90uZH8VqWyh
+Eoo2NoNifhPgjH0Wt7QcNiK+ofuqypEaf0akPguAW0ECgYEA9Kr1tVg+VTKRj0LM
+hXRGq96FmJ0mtwtCtoBG7O91llskN3k/wcHjNsh+OqNSrU0S5SoSJiKjDm9j9CL+
+Weo+oX432zB0Y37mHYGo2tn97UeZw7sCLxdpI7E8MNDRyUw0fECfwzb6qk2eeueS
+AaE2D9mwgpPTL4Oh3obsQlVhHgUCgYEA2bYc3Qcb0wVmx9XV23XKa3IIKxeilWw2
+rnVFifHNQ0VCZmSdj7OUx1VnyHM8PLxMme+h1bziXZDsIzGIyZ0xJqsud7muKtHX
+HSpfyGZi2pRMRvNM34Ql2ZwSiFQvLyKbSXKzkYaYUjCPG5nRUV/uDQJ+544fYuFz
+GzVw35Q7V5ECgYAx4VzAgOIMWofkbhjmKEN0LKSN7ZQEA06xiEttaJBPe/tRN+3w
+oYeiFpPtfniPjkQI5l/W2H7npXv6PNwgFqp4IBRhImrIEgn2AAYdwA2Nv2gwyEJ0
+uVAdD7gWt6vdXyTgJAiuMto9uB9ULTvOC0DLUHU02dBXQn3QsS8fguqOxQKBgFbF
+4CE0eSGVcI7Lqu5Kt4A1tg2+4N1fgTfto+bESoS6cSmwhqBE+lKstq3NSEAI6Rsd
+yMoQ+8RBQ+0PDC8XiQSZi+7KQiHs+ykzv3N3Y4UtQG2zAXvBBvkB3N0beKb3yx7u
+KaYiGEoB8rgUibo+WvoyeXQ/UEEwDJnWpgNm6HQRAoGAVchu4R+WGg6ItFP6kgNZ
+AWh8SunlDjBr7Bc7TEXyQm6JYKH2KFKY1YxSpKNOg7oCddIHqjm7PkS+v9VpWOIA
+T/43Ak+4x+Heb/JiiQjyT7hd9z50KLqdneDjGN5+xrRRw+nhca0qMG0+ldVrgkwk
+bw+41eqcCw800imGJNg/aH0=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/tenant_migration_donor.pem.digest.sha1 b/jstests/libs/tenant_migration_donor.pem.digest.sha1
new file mode 100644
index 00000000000..804d455c5f5
--- /dev/null
+++ b/jstests/libs/tenant_migration_donor.pem.digest.sha1
@@ -0,0 +1 @@
+EFDD44ECA40D0E353233605FFF194228782FADC4 \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_donor.pem.digest.sha256 b/jstests/libs/tenant_migration_donor.pem.digest.sha256
new file mode 100644
index 00000000000..498f714d523
--- /dev/null
+++ b/jstests/libs/tenant_migration_donor.pem.digest.sha256
@@ -0,0 +1 @@
+5CCF1A18C3D88EEF873679E49946D55B6C8ED4B8F6CE72B70A388C1F7273FC5B \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_donor_expired.pem b/jstests/libs/tenant_migration_donor_expired.pem
index 5a9441119c3..bc7c89bf47b 100644
--- a/jstests/libs/tenant_migration_donor_expired.pem
+++ b/jstests/libs/tenant_migration_donor_expired.pem
@@ -3,53 +3,53 @@
#
# Client certificate file for tenant migration donor which has passed its expiration date.
-----BEGIN CERTIFICATE-----
-MIID4zCCAsugAwIBAgIEKgZbiTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIID4zCCAsugAwIBAgIEdsgsBzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjAxMTA2MDQzNDM4WhcNMjEwMjE4MDgzNDM4WjBrMQswCQYD
+IFRlc3QgQ0EwHhcNMjExMDExMDQxMzA1WhcNMjIwMTIzMDgxMzA1WjBrMQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxHzAdBgNVBAsMFnRlbmFudF9taWdyYXRpb25f
-ZG9ub3IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDMza3w1dY4uGVp
-PcSCWQewr0i2Vv18DCp8l/98biUZepWryvicm8qaZkhmaYCqnMCbgsqZJZLJFRdF
-fdOUIszFrrRj7+nUObjL1BFbrNr8BwuHuQ7G99TRV6EZvUfD1iZBhVNWpF39NBSA
-ERIVgd88mLl/pHGvlb38NNmlunXTALUqdxKTb8dTRBpD5nqtsQhdOEU9YIIV/nmL
-S7j4Lk8Fi77kjWBcGGFa3i4sHuPkifxuwpIe+4Ss7fOeMsgmEhe+MIfRIzuPxMN6
-JMNvpyL6K6Mttx54bbHFJ3LN+pwG8lylFCLSrgi+wqirncBSau1QZ2p6dZovpNKJ
-aSWFjC7hAgMBAAGjgYUwgYIwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwEwYDVR0l
-BAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFC0mazCVlredlFaPrIZqj5tRCpjMMDQG
+ZG9ub3IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCoe0ZBYmC5i1k0
+OHApTg3CFKIs/oV5IdRoDG5lKc0uowK87JGHwuCCRNT/9TfGhNJ/X86I1lHTbo/A
+2Q57C0+/R+Fj5fndFQLVGLKXwtf15/7/iDWS3/wz/WtlsnVePg54EiY1vM37LSXE
+nd10AAR9aXIs6FpY67Ku9RxExhluxnSHpw45dOkrvaWhRlaESmSCCYzdcHAjBLrc
+C3qiPi4OJ/3cuhCcEkgz0fvcTP5DqSYtz+n/yO0evu4zeNqypEjGIA1fneWVWsyI
+IXcIs9VzrR2RUzx3ejgq3JM6TollZKE2nkF+UerxslbqqvtwFYi4xUcBzFNMS/0f
+rn5bz145AgMBAAGjgYUwgYIwCQYDVR0TBAIwADALBgNVHQ8EBAMCBaAwEwYDVR0l
+BAwwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFGT9EzQ+l9vWpncQ68RFggFKcC48MDQG
CysGAQQBgo4pAgEBBCUxIzAhDBh0ZW5hbnRNaWdyYXRpb25Eb25vclJvbGUMBWFk
-bWluMA0GCSqGSIb3DQEBCwUAA4IBAQAhPz/CF05VzsS9H6x048rSSw6VCVYiy0A0
-OICqdMt0Rn7jkStW9OBmg1twDgKhmNPv3bwVmp3KFhkxEmlZ0pk0I8d2vwiiAybX
-NKvBSjjqEN4NsCdAiA/9KCb2sb+xknc7f2XKCq9nb3byzEEQpuInkIQiM1J8rx/s
-7YhqZqEYhCg3PzEDAIp7EvHOL8gqb+ajS+amIE0qw6StRwRI51i0ptTW/CUWnpeR
-YGmuvAxwDYUqjFzkEoPAzsm6nUutRni2VYnjF3MBaecbYuUCm674ryRVjS2mNAEI
-BN66QinKqq7RoFwAdXc1H97w/t3lBkllv9UnryGIVfgS218vi8qc
+bWluMA0GCSqGSIb3DQEBCwUAA4IBAQA8Llv++htxTPUiRJ/28GIg10BEKogNtoux
+wq6k/CX8PfzNKZ4AQ2yLVQ6QVfM80tUEDcd9mRm8UY6axNtqKhEOSZMDvnMJluQG
++fELJLZV0uHCQghVxGGurJIDRhI65yV9KlKOwwa4LYsmk3BILfYrSrTcBobA4W7E
+lJo799J1knsx2Hory0MbEgaSRG/04e+xvr5ny885e0NyirHo7hl0Wgqad4J/ki1p
+CY5U39MHL7dobq9fRwhLf4fXPlx+xOAw8oWxvYZu8LGmCT9HGJ6Gkl3knGI6JyPB
+qNlsraJwWy33dkOQ+HYWT9faOuLFQnQEc66sMkLTO0j7OrxuqgXP
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDMza3w1dY4uGVp
-PcSCWQewr0i2Vv18DCp8l/98biUZepWryvicm8qaZkhmaYCqnMCbgsqZJZLJFRdF
-fdOUIszFrrRj7+nUObjL1BFbrNr8BwuHuQ7G99TRV6EZvUfD1iZBhVNWpF39NBSA
-ERIVgd88mLl/pHGvlb38NNmlunXTALUqdxKTb8dTRBpD5nqtsQhdOEU9YIIV/nmL
-S7j4Lk8Fi77kjWBcGGFa3i4sHuPkifxuwpIe+4Ss7fOeMsgmEhe+MIfRIzuPxMN6
-JMNvpyL6K6Mttx54bbHFJ3LN+pwG8lylFCLSrgi+wqirncBSau1QZ2p6dZovpNKJ
-aSWFjC7hAgMBAAECggEBAKnXRBF+dDnziX4eUDG8vWjj5Av61hoiSLWso55ABZo8
-k5S1LTlK5Vjny9DKW36hogUVEQiyJSmGyRbDA0xNE744ZLagBi0OdVbrlj2NeskY
-2pICgOO2MRIudpZO5w3cMTuS4oruoldR8lJGVdXqLwQkr2jQKctwBe76sSgEGqQQ
-7WVzqhgORt39H4JOPemCbOQLptCI2rcG570JYL9dAh1r76gTnE01z6tRDvgQxjI3
-b3kDI/n9ipH2hL6kc1D42BYiHxmiVszGkBXMQbzuzczIRSzYhwkDYXUJlDFA9Bxk
-0Khc8cW3sR7qJZvgq1SvJz9ff0ta0RBdnPQan4KemAUCgYEA5RuxzhfZoUv+mjcv
-Fh/quH3wFBgyBiV8yH/+w0qy/b+WVcWjfRD8jD0VZP1c7JHRJMmMO9VIuizUhvBs
-WmL9DG+nswpAQWMwshjok24GJENcHFBoNvmbMBfjo/ZyZbycqgQyemDonIaZ/C7S
-HkgfhsSZdUICxYJUNKcNt4g0FrMCgYEA5NerUhP3tpwZHg8vjS01Dc7b/gwLVbAN
-fCNqs5a0L/b4reB90ooqOkwzbPkn26jbNc1XUsX8kguK5aEMBgtDFkldxyayXWtp
-fMl8jR0q3d3Oj7gkAhZShokvDtsMy7t8Y05h6f/NpwKtSPkPrBhUNYrar8qZYyYG
-+XQoMV3wDhsCgYAy/LPYUtR7Igd6WJehC99Xyac5QZ04YvVfRaTz31bwQ8f4NLDK
-r5IUv69YN06L03PBBR2xXyj9TebKVQ04HFmGf/7JSJm+M43txL9VuCGjxl3kazyW
-J3yS+m4N2lXhMFWJPL/jHlgGJap1RhI67QAfJPel8dfeDsAgq6DQ3H4DIwKBgHwM
-xRv7Iv7kY2E+DiLTbL0Nc4elc8eBZe3zLPYpLYgKswdeeBZXO0ja4c2iyo5yXFIv
-+7QtCxsIEsUjpebo1/cO0j0QpwOpJEe22UONmh0nDcAuq6ZN/3Jajx3YdHlEKsuS
-Q9WbCxoLg2/ZQzug/JUBrkY45ykuBf3Xj6ojJ+wdAoGAaF/kxfLwfC5sQ3evyuCz
-USveMT9yZoQIkL4RcQAeq6prhgw5vyqjcGmdR+2TNdRbmbE/eCJkalXRA86EbBtA
-o1nTmVg32yf66BBxa8jmdziwlEuFO5JMVZ0MYnN0YyyroFDc6zaLr4U5SpOvKVQs
-Y9Oo01jjIImq+dxdIyUiwuo=
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQCoe0ZBYmC5i1k0
+OHApTg3CFKIs/oV5IdRoDG5lKc0uowK87JGHwuCCRNT/9TfGhNJ/X86I1lHTbo/A
+2Q57C0+/R+Fj5fndFQLVGLKXwtf15/7/iDWS3/wz/WtlsnVePg54EiY1vM37LSXE
+nd10AAR9aXIs6FpY67Ku9RxExhluxnSHpw45dOkrvaWhRlaESmSCCYzdcHAjBLrc
+C3qiPi4OJ/3cuhCcEkgz0fvcTP5DqSYtz+n/yO0evu4zeNqypEjGIA1fneWVWsyI
+IXcIs9VzrR2RUzx3ejgq3JM6TollZKE2nkF+UerxslbqqvtwFYi4xUcBzFNMS/0f
+rn5bz145AgMBAAECggEASn+wEithH8pZWHj4R5tnBAHBsGmfNW/bD2Mn0X3JZ6zX
+AhkNRN3MDm5HTSLuVc7XkVEY73LtXbOOxzRzbb8TtT4gkN7ZPIQU64tvNSIIAoli
+PTXKkraOO6L8QUzHDzQbi8ZitPJWlpFhGO7BRJDZa2ccAHWBtb4LFcf2hwadqlhI
+xt6psHS7zZ079U6NY/3jtPIr7OZYJpYPM9gyyzt4UsPbFzrEqFz98tHDQ+3hnVxd
+pRccFdqbw3R6IG3MLrRWMJUuKbqGtCjnhpvbbxEddp75y9BSK+k+SdkoTSdTPVVS
+QDn8/tXtQJ7QU4SjUp6FXWQey3kfCzSI0n4wLkmcgQKBgQDZNn0qv1Nviltm2fwP
+0PICNsA6jni5fiPrSaNAdOczOi7ZfmBVjhLgz9n96AXgjCc+xFnmjswXv4qbc2t3
+u0pbzJv9fc4tNB0Eb/jhjJSC6AXJ8iCOyXDoyFddAkjzjH7+8jc6RVFswnka2Qbt
+RO1YfxZ5LyOUaQbq/cAzGCOZMQKBgQDGkR4m8O9tpgDszZxa+oSnWc09kxEBNBfE
+1ub9QRBP1dpvuL/56EVUt5W9XON2xSNxLsdtBoOrgdBVx/WZoGBJfmJxMG/FQPTi
+6Ok3pqTwyn6keOtV12t/gLO/dfpTzrKYQyVau1tbxXHjL/EUi2DL85k60fZG5ter
+qHjpMa/TiQKBgQDPBkcP+iDM26K4CaVbcbtnbsWSSf44VUho1dt58LH3Okoy02d/
+w5Ssno5XmNAZL5usEDrbK1jMfave84gHKwP5MK+wUDq1DMlnVE1ys6lMh1YVHuf3
+D3nE9EWICUh8kHjuBu+qYyzzKvuAIj+e3yYURbSmtc4EgoGscUPBrw0m0QKBgQC3
+KDZ6zvTa3CuwQjv+A2SHBSN2r4gY5xchnuS0J+bG7UiukuipuKDy8uAxKlQ6Qr9d
+cDvNihu8AGLOLUKS8Ua/o89j/ryqYy8/en1cst8jqHTGey8AIFNs6adjbIx574f3
+QMBc/8LWVLqnR5qFS8b+eXUWt4MGhXncQes9lnJLmQKBgQC4OM/UziUXuDD7Fl6f
+79rd6JxbnfKlMhMnY7wpeeqyt3ziT5OQRhlkbfH/r5H+Tce2q5+xvXn6s6LtFUlf
+jPQjXyo/k0+k00n78hej0Q+CKYkPBvbB3VL1xoZa+o5QP/wQtm6ozTxpH7fuaQx9
+9W+75loYzXxN+xu1EFPfuLPpcA==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/tenant_migration_donor_expired.pem.digest.sha1 b/jstests/libs/tenant_migration_donor_expired.pem.digest.sha1
new file mode 100644
index 00000000000..11bd90ecf3a
--- /dev/null
+++ b/jstests/libs/tenant_migration_donor_expired.pem.digest.sha1
@@ -0,0 +1 @@
+1B3466B84D702B4AE46FA78B60B73763823312D3 \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_donor_expired.pem.digest.sha256 b/jstests/libs/tenant_migration_donor_expired.pem.digest.sha256
new file mode 100644
index 00000000000..f81e94de595
--- /dev/null
+++ b/jstests/libs/tenant_migration_donor_expired.pem.digest.sha256
@@ -0,0 +1 @@
+AFE0FFD75316145A8DB71A6FB4AB77EC379857F1D6374121F6139357EAA86110 \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_donor_insufficient_privileges.pem b/jstests/libs/tenant_migration_donor_insufficient_privileges.pem
index 4d37a98b38b..20b487ac64b 100644
--- a/jstests/libs/tenant_migration_donor_insufficient_privileges.pem
+++ b/jstests/libs/tenant_migration_donor_insufficient_privileges.pem
@@ -3,53 +3,53 @@
#
# Client certificate file for tenant migration donor without the required privileges.
-----BEGIN CERTIFICATE-----
-MIID2DCCAsCgAwIBAgIEArtGjjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIID2DCCAsCgAwIBAgIETPHVrTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjEwMjIyMjIzMDIxWhcNNDEwMjI0MjIzMDIxWjBrMQswCQYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ1WhcNMjQwNDMwMjE1OTQ1WjBrMQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxHzAdBgNVBAsMFnRlbmFudF9taWdyYXRpb25f
-ZG9ub3IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDC3Wdgg2yk5X2q
-awypAtbZYtx1TszR+5WaPFUFuIyGWUDCdw03TTJuh0k7kNdkaNPT1/vtjuyJ5XnQ
-CZtW9rVPrLIbgcl9FATRWgIgkYsONxvqMwnAyHJcqrwFWQBzt8hlDgwZbzmYYG7T
-xGhYTG5WxbtF7tUIvghf1zaXnLB0wrxrX7f+qOe9u9ajKgAZ+T7PNeOOShko26nm
-sAc3ZjSUEoQJF9Ix4chpI+qnEXdL9zXz2IN8VolxDQ2RvPBewRqfOaUUH4oI2Wpj
-yyOhoixEzMWfps0FoNYN9T7lbVAoDYw87lQpQbC7AWSgWEKuTGQ0Y96bfQWOKDbY
-dLJ5ZpbxAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMBMGA1UdJQQM
-MAoGCCsGAQUFBwMCMB0GA1UdDgQWBBQmXF0YOWVeJ8ggCrHPbUFYmu8j8DArBgsr
+ZG9ub3IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCukv88tmaxJrjz
+RBGNRwU6d7/GTet471tkLQtcY2+39zeSQiqDT0Ru6wcqnXbtfSBl9/RZoVUiMYgm
+WDH8PpdxFBPQ2UsuNqChEJGuoYHh4G0FqYbrdhFGEuNlT+NqgSvSDJ9cpo9tl0WK
+Qge+Bap0DaL05XH23Q4XQh1pZAHH7r5a95tOXIPcshxJ1YneP0FD26kjeQxgHnTB
+HR6RNPLElwuuE6EUPb8UwNRk3pRYbmv0OGgRGtbnH+Ols4ir0GJK/vtZZpusS1Om
+qgY+gSHXJ+pF/xk3jv3RZJtlnoXEwWIucMeXaJSEVBMrq87kS0fwgY4FGIqhSwp1
+jrc5liBJAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMBMGA1UdJQQM
+MAoGCCsGAQUFBwMCMB0GA1UdDgQWBBQwzCU8euanRmnO3RrjjwA1KLYh6TArBgsr
BgEEAYKOKQIBAQQcMRowGAwPcmVhZEFueURhdGFiYXNlDAVhZG1pbjANBgkqhkiG
-9w0BAQsFAAOCAQEALlxEtFsYss6klbee2Oct+2Ukt5svXgfPqfchnaOddp6opVwo
-0zhX2cO6ynPL3sIq/PdYLuercpEOrVHiGiBx0KWp4qBSupNP8cLaXeHEXvmgQlFp
-LZnM3DgdQaz9HCUMrUXH6XmQDv6uSfJiTWgUn7xet6RlRaQNWksBa4QvER/vvkLd
-o+Nh32JdpjKjfq4YYGEWAEZq5TCx4bsvTZ0GmTgCycKsonqg/Ks58OoBjFnjRjf6
-RcKMaV0RsbJbkgHKmhGBC5P00PdaOioK8l2Vbu/B6I3kYWlWHgv91JARiwj9sq2s
-SWDalCguDlTJr/8Hc5QILm+Hv6zCWkCN1q63Bg==
+9w0BAQsFAAOCAQEAS9b6JY6ebxXHCzzKTx/GOi/OCgWrqlDthNtdVjluaRvSxBGk
+v+goonF3Z/8dXVwTLysRwz2BiJqROHaN6x9JvODPSlYyLOyIE3CafDUu6oLm5huC
+BS1pJURujRFdHeRCdLhtzgcfO6zIGRrkiMr7zSZYSqMBfkEaJLl2c9w/MMVQYDBf
+KOzC5rV9OEkiJcI0nonJMM98L1bKNPRdBqNB+8QlNxOeJXDmNAyG+vI3Mt2c452U
+AkXYYBT40e+DdiDzoxIA1DKo6Auc5IqFv9q+dTJVKsCuJCzV8+5bZS9DR286wAVf
+hG9C1ov75NeIAE6w7iyt2lV1FZRNSP2zBv6Y1A==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQDC3Wdgg2yk5X2q
-awypAtbZYtx1TszR+5WaPFUFuIyGWUDCdw03TTJuh0k7kNdkaNPT1/vtjuyJ5XnQ
-CZtW9rVPrLIbgcl9FATRWgIgkYsONxvqMwnAyHJcqrwFWQBzt8hlDgwZbzmYYG7T
-xGhYTG5WxbtF7tUIvghf1zaXnLB0wrxrX7f+qOe9u9ajKgAZ+T7PNeOOShko26nm
-sAc3ZjSUEoQJF9Ix4chpI+qnEXdL9zXz2IN8VolxDQ2RvPBewRqfOaUUH4oI2Wpj
-yyOhoixEzMWfps0FoNYN9T7lbVAoDYw87lQpQbC7AWSgWEKuTGQ0Y96bfQWOKDbY
-dLJ5ZpbxAgMBAAECggEAWBCbUaDTjsowOr5aYF9qHaByJYnRQuzCNYwimI1I5Mad
-X8VR8bYvnogBbqwMy9IcOVcZAclf2QoePQi6bVjdo/5WF9xV5PMRIlPdNj7Qa0I4
-mWUreTadiIeYpYoNjD54kEMC8NO1YcnjDE1tIsqX6xs9gWNoX6USP84RW/9yN7Go
-eBsUhGnbUe4IpYxO1TsfW6WG3V13A8BzHvS3LuBreuT60Yx3GPDCUv9/5L4aQGZd
-PvbkTK8cAPLEMlu5WieVbNJZuShJec+1UTupQO6CkVcNvRo8qRXuNpiC6G1X6rgb
-nja9aQnBEnWPK21OkimP9EM8AEIZnn9M7NCtmqHAgQKBgQDgGdxte+6awdGAGEzS
-Czv2TQ5mF9JCXIk5UX9tuNaKhEB+AmZUfryEdAJllD6b0zzUZOplfp7VBKmyT9N9
-ICxDDJJydNPE7/f1e2Wp8yIxCi/aEavcIfvJOz8IUrZRuHw0qKv5/Z94A/Qg4Hjd
-RMAnQJ/cuu8FW+Rj4qrAh0uDOQKBgQDemjC9xBpmd3PMLsByK+cPcCasVjm1Al16
-fkTbxoMg2GCxoKNp+w9RThca/+3in70vQnPEhLKrGvXwQoSD4BneFiNqdntWcZGm
-r4OwO83c1w/IEEDv7VH50gOX1nWlmTYd6Fs2wHIPQm4BNEKslinxxgO5YXqJcsEF
-G6rpZQ0ZeQKBgDAmPk8jvptvo1SzY+YJVePQoJRc7+ckPLOdCBUKDsaKLdUlLNlg
-tZ570nwCwwT1+O7lk9skvnmkW9WdAyKyQ/BQBjMjWNDKgmszDR/bxm/k8W0YOOW+
-Q3v0B9IA+31Jdx5VU0YOMTI3Hz/lGvLnr6V/ZBmn7G0pVkQD0o41Q4s5AoGAKmxk
-YaYgCes2DHHUh23KiWysUifUs6SRwCiUYvZAQ2A5fWDKBAau8qXZTXH9GjWrTnhx
-q8BGdMmcmX9z1dY918+MTFvsQZs/UO8eP9YF89Kg1VYTqiYme2AFA0kB/t9mKuj/
-iT2//xx/7obRNicgM02zo/7p5YwTMTAGsJhrmLECgYBWkDfsX0GoLchQL3zsq7oT
-t9oMGKOdPw1ljl+CtdCNHizQbFWeqCY1yl2+vrKCRGtg3QxQKjMiJ7zS1PmJvzY6
-xWikDc7dG394Rvda527zS8UK6pN5+M+jbjxhmGye928IL/10vDlkzHcBbtNSnOWN
-duy2Du1x8r9eZYLeeLiikQ==
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCukv88tmaxJrjz
+RBGNRwU6d7/GTet471tkLQtcY2+39zeSQiqDT0Ru6wcqnXbtfSBl9/RZoVUiMYgm
+WDH8PpdxFBPQ2UsuNqChEJGuoYHh4G0FqYbrdhFGEuNlT+NqgSvSDJ9cpo9tl0WK
+Qge+Bap0DaL05XH23Q4XQh1pZAHH7r5a95tOXIPcshxJ1YneP0FD26kjeQxgHnTB
+HR6RNPLElwuuE6EUPb8UwNRk3pRYbmv0OGgRGtbnH+Ols4ir0GJK/vtZZpusS1Om
+qgY+gSHXJ+pF/xk3jv3RZJtlnoXEwWIucMeXaJSEVBMrq87kS0fwgY4FGIqhSwp1
+jrc5liBJAgMBAAECggEAM9AHFwLf6bYfcHwEZZTtlVPTREz+FU+dJVdFJu+QSd6C
+zNL8gSp2miEBaIGBuazIf9se17dNaC+hRBgrBb2h/vrBgtvrN1UZSZR8WIMw5FRS
+pzqQg7PwHocenIQgcAzUb6w1ZC8/JHygNA+y8pAF7hnaAqtSrr0fIIIL7qqy6J6S
+vVCxiOyvXR+VHmvrltLIpfBPsg3pWLoygE0Nfd+ab93/kWNS1/TO+76GacaFi9pf
+f7jIRPny7wDBpij+ABtRrv0HPaH9Kh8GwmLfozCIUv3RbLX3+hVePjMlB7OC2JK6
+lnvHVb5LNdtNbvnaHleutchA2eov5IgXT7v6Wn+u8QKBgQDUkSKAUZpULQJIVBoz
+tJcnnwFbhvHE9Ysb+YTiPMKWtFLWctMM7ZdhfRtBlkvPL+d+xSvnOhiEjBsO1epz
+s5yfGoUM88kbKQLK+66IIQJBQvDUzB7J6WTrd9j0X1hg4CNWZPUP3E/vbnVF4Bjg
+DV0Zh69fGdMJGhOnLO7AOU5/BQKBgQDSPo3aLE6t2lEhH9jsSJtoD//N8TaYVise
+oGgAl4COemto3whZxutYOnwMLR/yaj4MQZ2eoIS87EwQkKEVKmiD/35qjT2mrdgq
+GUP8EVvSb9XlQmVwsd6gf0zUpL3nj3TSo1LrjZbmz5UU8QilbGR5YhU7TTQ9rB7s
+TtwIIXw3dQKBgQCOVGfPl9RITKLcn0O0H1Wet/8GtAKqqObuYlKx0ZFRq4hUAyqB
+24yjQEvBzMsR/bd50Lgm6WWFSvLLKj0EH93dQrqYA5xCzWELXR5uE/wYiqQLOGnd
+NKPYbrUcW8MniqzeqlbUueXkIgfwM680Rn5yG8I3YWlHDOjf5Vwv5a9DqQKBgFVQ
+cPuRczP1HWrVo47uP7HQnDsToNXcUY8SBGIJGG+4mZFqv9a+c43P3bqLLSWPmzIa
+Bj3yYSrQsGUga11NYi/+I2xVeCkE7mzW59GHsb0JCMEJWmSKqQ5z2deIKk+m1P8M
+q39Oa2ep4JMo5BtMitD+ziLMR2CnUb0Omxbpj6BpAoGAU/TBvFbx9x24eUrGpNql
+peRYIcUkq91PjW2LC8X8IK9VMGnznpynn6lkdwDoMydrXDZ7gG9pik9rEO0aVE8c
+Yo63x5Hq4+tSEFHiy7FuK7WA2XbLo67cYI/LFs0bCey7kUWG7xkmE4eLhVVOfZX5
+WfSMNStPHfPy0LrvK2JGs3w=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/tenant_migration_donor_insufficient_privileges.pem.digest.sha1 b/jstests/libs/tenant_migration_donor_insufficient_privileges.pem.digest.sha1
new file mode 100644
index 00000000000..916325df583
--- /dev/null
+++ b/jstests/libs/tenant_migration_donor_insufficient_privileges.pem.digest.sha1
@@ -0,0 +1 @@
+F6F2FF0DD2BB3AAFDCAC5D9CA190FD4AA201F049 \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_donor_insufficient_privileges.pem.digest.sha256 b/jstests/libs/tenant_migration_donor_insufficient_privileges.pem.digest.sha256
new file mode 100644
index 00000000000..eceeace3ad0
--- /dev/null
+++ b/jstests/libs/tenant_migration_donor_insufficient_privileges.pem.digest.sha256
@@ -0,0 +1 @@
+4085D0DD39563975418DE7088089C069DC1AE39B1EACB8DA2130C1CADCBE0B4F \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_recipient.pem b/jstests/libs/tenant_migration_recipient.pem
index afa05f5c8ea..38a8f545f6e 100644
--- a/jstests/libs/tenant_migration_recipient.pem
+++ b/jstests/libs/tenant_migration_recipient.pem
@@ -3,53 +3,53 @@
#
# Client certificate file for tenant migration recipient.
-----BEGIN CERTIFICATE-----
-MIID6zCCAtOgAwIBAgIEErqElTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIID6zCCAtOgAwIBAgIEJcofjTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjEwMjIyMjIyMTI3WhcNNDEwMjI0MjIyMTI3WjBvMQswCQYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjBvMQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxIzAhBgNVBAsMGnRlbmFudF9taWdyYXRpb25f
-cmVjaXBpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuBUpRPCz
-NGr17H0Lwiv/TlXtR32aUAkEtEAQZBjNxEn/Tu4yx2v2QJzvUIZa2nN6ZLPM2I7D
-mWGUS8dqCORNgmFqvu7EWDJSxJV5Ieo6PXk5KpMPAJe9bGhbUN9Z/1LNwukrwAAG
-HzTuGOd5B+syHGuuhGBDZOqkYjqrfsjYfeI50UCvIp3MsI4iuydBsOPfTvRfOLEH
-crHt4z+V1RQucSx6r0JEJEa8gZK+Sei2JsilLRK1hGlLBAqqjdlGT28HHpQbi2hg
-HcClzhTMcwOCh83rkkyRfhAfnrfE9JyUSe1ifQb9NANo8ccFJkuuYDFfeq/VLTGk
-tJAb9VlH/f31JQIDAQABo4GJMIGGMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMBMG
-A1UdJQQMMAoGCCsGAQUFBwMCMB0GA1UdDgQWBBTZpBVd4DWRpviXFtR0BV3/afYd
-0DA4BgsrBgEEAYKOKQIBAQQpMScwJQwcdGVuYW50TWlncmF0aW9uUmVjaXBpZW50
-Um9sZQwFYWRtaW4wDQYJKoZIhvcNAQELBQADggEBAEN0kFV08ic9lV9Ifa/oaWvA
-Paq4s954o/rTrrJCFzw8Z7qfDPKk4pU7SCcVSlXCU/TKtFlR13qdEZalDkeTExLX
-BY7D4v4qgtT55jE5Y+V+w+g7OBOuLx2iP7wYypsHA8NnXqrowIwTkkBVeyTKv0xB
-BQE3cuc+gpinhX+spiesWG14xS+0gvS6Qz9jrci4LSl6S28zUqf/xaVkDQylPUhM
-8nzuEVNpEguMYZPVvwkAQlEPMOPQZl8MRQ9KKT5bAblJ8meWz/OtdihslY13Nyu8
-riC6uF/dcvwK7m0C6leHU3LFiIka2YjYg+UibsQUrSYSZrwN/JqfWvb3imQlMlI=
+cmVjaXBpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAznSAJWeK
+aX4D4hQE3Z81yntvNjbWntvmEgSQ6+Bh5+10hmpsdVE/oQD+IrfDRl4PZxNJSOvH
+3ZI47begaYPl1qPQizf0TAHve2RwXo5S1hdKofJi5CZ6xbAlwvxyN0/CBk8CaJ1B
+UyDWmRpsP1Qutwr0LVK1Sl1r//hy5eEutg8Qq8gjTcyYE2cWoNGgPxV2Eg4ds4sA
+Y0NZtJt80bZQhIt/LT70Z69me7Y1gCKgk26UydXZU6xvctL7klRuDcAhiC+hsmEZ
+WZmM8El9dtovv88WwtGG7qVakW1SJ+4hxDUCIZMdriq49FXAyBgnD+Jj/YaJgEhC
+ZBNNnur6qqJK3wIDAQABo4GJMIGGMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMBMG
+A1UdJQQMMAoGCCsGAQUFBwMCMB0GA1UdDgQWBBSZXizXFINpk1j//W0zmqBVh745
+FjA4BgsrBgEEAYKOKQIBAQQpMScwJQwcdGVuYW50TWlncmF0aW9uUmVjaXBpZW50
+Um9sZQwFYWRtaW4wDQYJKoZIhvcNAQELBQADggEBAKbaeByk1xCNdW/5anhcxvY6
+8Dyu3sqUhVyCP2VmS7JPjtt+HfzQGVyh7vKLYPoVt7vQp/2fKPvDnahBTbOeWlRQ
+UIO86xdqaEX6GskRu4CMGB+1d4fnQxjQZkBwwQEMMXP+ooeBCDuwp2+zYoOgGdvn
+ZXL7Ui8xEuJeqyczZAhcsk+Xnk/ZW5b7EeLIgjHhrkxxB6MdNejA+xlU1qKhA2xL
+qQeAtYDRhl7zOzlBj2Wx2mX+6Ph1IW9IHtgMxPyjjgeEoblSxRf7nqOIGbXs8mPo
+ap2I7iSNjo1vyykbWA6vJNIS40z8A8EhSmHSPe4aw326CYN0VeywCOy0TNcHu0o=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC4FSlE8LM0avXs
-fQvCK/9OVe1HfZpQCQS0QBBkGM3ESf9O7jLHa/ZAnO9Qhlrac3pks8zYjsOZYZRL
-x2oI5E2CYWq+7sRYMlLElXkh6jo9eTkqkw8Al71saFtQ31n/Us3C6SvAAAYfNO4Y
-53kH6zIca66EYENk6qRiOqt+yNh94jnRQK8incywjiK7J0Gw499O9F84sQdyse3j
-P5XVFC5xLHqvQkQkRryBkr5J6LYmyKUtErWEaUsECqqN2UZPbwcelBuLaGAdwKXO
-FMxzA4KHzeuSTJF+EB+et8T0nJRJ7WJ9Bv00A2jxxwUmS65gMV96r9UtMaS0kBv1
-WUf9/fUlAgMBAAECggEBAKVrtrtSBegr2jUbJc7mlLXDd8fPsjUL9aM5EsGwnHAx
-AvHeEdmtRgxIOrJFGi3Gqg0GmiVdHZ6e1pHGcJ3u80wf2LodfGm5RzGLFOCKSK3n
-WpzMrCWfNkTN/olNPOW5dlgaCwutudKfUPsmP1gDXfO2PIyOqOFuDiyLhoMXX5y2
-gJSg/gN+HwLIpkzTiR+vB8BlFjSIbZD9++yguzJGChIrvDjT/XguChK5LZ5jRK5X
-XNSKkdOFFlOjHfRv0v5Rtq9xDvq7ygkN/OAywgYtKEAv6WsmT14F65EC+G/iy7DW
-IXJtAoqBvweRE/SM51wbJbqKvszZ0fvG976PJQGYeN0CgYEA6Qr53CpWMia4NzQt
-OkW1tEO1j6MbOzEfR/Y7ZUKMZihZjMrHBL8P0nwVN6rdEw8iXheKJKy7GqvIxCzh
-bY/g5GlMWAkYrjk399ZhNhfMgU78s47iWbIzzMQeYY3D+0jT1eNq6xwQIE2/wRKo
-/fndDUdDDPLsZd/r6OUOQ7+DiBsCgYEAyjd5qqaKZ3RXg0Y3wBcJkeo+oUq2Q6He
-9S8XGXA3GCYGFfj2g8isRirXhH5B7dw0uCn2RTlZvRSBVwDxRtT/5J8ETGs4xUEb
-6IGK0BDKl5HiQ7tzCjNamzL3+ET93pqDuF7dNoSe6KOKg0/rICl2XLRKQgG/9Uvj
-oqdzkgSqy78CgYA1PSivv4xJkMbs9aKPeXV1ZTKJSf3im+pFil8vVvC0NeufWoP0
-9aEruOUv/nza6c40KLSKhFuKUExhZM9rND9wbw3d3tYglznOCM/Uh8NUlzLr4myb
-iTaERRmbt8NaGN0sM/QtGhAlER4JgbXRr89sRSdwQd73txwx7IJBv/LQmQKBgFJj
-0/CRtmZ8YoOcAm8Dc+S9uhLha+2WcE8ZhqHYtLnkFCqzq0z6YCaeofzbrGULiXdX
-sX125ndBeYlHWwbvFevCVnAEZ7cG1iYfUb2AeerTh4rtPuvzDIGbfKjtAzrFXdGq
-5RqnYk+LAo6J61TJT+5pjq/iIqIA75h//XiK6kPlAoGAQPBKKAmgD1t8x7MVcJTP
-dXU7ySyDqmKCVM1QVaErBtgnaEGquR7hcGHTaRgffU/OM0zOaMGTDRDgt17lx10K
-iVmQ4J0UgJ3QT+qaGdJPW59tiIcGI8BedTKnRsOFnWLnR8GK8TlCxaTGO6n74nPY
-PVgPLQNK8DVG8vCM1eQ+RpU=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDOdIAlZ4ppfgPi
+FATdnzXKe282Ntae2+YSBJDr4GHn7XSGamx1UT+hAP4it8NGXg9nE0lI68fdkjjt
+t6Bpg+XWo9CLN/RMAe97ZHBejlLWF0qh8mLkJnrFsCXC/HI3T8IGTwJonUFTINaZ
+Gmw/VC63CvQtUrVKXWv/+HLl4S62DxCryCNNzJgTZxag0aA/FXYSDh2ziwBjQ1m0
+m3zRtlCEi38tPvRnr2Z7tjWAIqCTbpTJ1dlTrG9y0vuSVG4NwCGIL6GyYRlZmYzw
+SX122i+/zxbC0YbupVqRbVIn7iHENQIhkx2uKrj0VcDIGCcP4mP9homASEJkE02e
+6vqqokrfAgMBAAECggEAH4CHTS3PYOlpjkWfuHFis9LB1XPoq7TCFl27/0HtroX9
+EcWLZxtOqjKMlJ+VnFcd4ox+0jGn/ZciOKOcRn1pxKaaW6PeEvr4n8tjmgn9ec10
+BeIGVOnKMf/+wxHiG65/3JaRt4THQvfvxszRV5hwyF1ThNbp8r7ui9BNN+Z0SjMc
+GOTyf1j6Y9dcE6I8pJVtNp9o7fyYYrF9AE75QWv+x8DXSuIhcEFkFzmyJJHk1Psi
+7T5JfmmI53KrvE/9n7MbkWQIC4YGrSYwUY0jKsu3xskXVOYAOW7GPLol+OTviJBq
+4IVAckfA/Q6qOlnYQUkKqaRn5gjFmARhUEkLzmDaAQKBgQDsLbZvkOVsMDYrZtCv
+z0smeEq3z/sHUK7DJsOEBFVlSAG3TcjZW6STNJaFetZF26H4pAqbFZqKIv5J5V3D
+egvHDxSfWynwop/VydyEZlTr/Ymxdm7YThnzvqXbr8q0X0QVSnhCtyKe6WJeoWK1
+HXWcWgSDK0Rm5Ul5Y/H61Y31jwKBgQDfyC4VHN2AWLOVVrgF+IsvwML/9xTuCBZw
+ak+9Zm8/7X6++J2Fe2GMmyYAWMDZhJmd+yoZDajZ0WCyHHvxCT2wyJQCWiHNs8dm
+QsDR8w7TDgZdkUQ9l48YtHV5QjOYd1/WsqWvWsOdZrXBxEzuLjF9140LY75WWuXa
+QULT0KjNsQKBgFzYy7OoXsjdWy5MyRWUhJKnD5ibZrBFg66seohXu8qJOEN7jM4G
+PPix38qxs7La2R4KPzEgmRRdFWKvjODgBelHgG/1QtOa2wMMzGgwYoozrgHZ8VGP
+wpwUAtgOj73BBd7o28Y+gJnAXi+delSBNE83BDcct1NMKEpUhDh748b5AoGAbxK8
+FMykAL2GPXyykHwiEcy6vTPVlqQ7BwctlxPN6kwmWgGqpgNsks67WPa0mgKgAPMW
+nSLTiXHMbfuHZUcx8JpOJLC6EJDISzCc5lifJhDTBgRBe9TLOPbxTAOY+ndeAYHg
+jR4e8/R0CL43dQ1GkXC42EtkwRYS+nbkBaCO+LECgYEA2R+GXgZ87UWwB+3X3uAW
+HQ/mP5PfQzVph/K35DbJxfy5A6kwyB/BWEqxoaZH5Deoj4pZU7NmpB0smEx3O4fh
+UgmyPlkayz1gbEHJ1PWe36j4bi7C36yyZbwc5iqJRvWv+CqtWAbHaammdQ17d6Dc
+S1VNokxppp+iUUKFYjL/vs4=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/tenant_migration_recipient.pem.digest.sha1 b/jstests/libs/tenant_migration_recipient.pem.digest.sha1
new file mode 100644
index 00000000000..7dad2694bde
--- /dev/null
+++ b/jstests/libs/tenant_migration_recipient.pem.digest.sha1
@@ -0,0 +1 @@
+379766C97E0E06045E08F4397740FD9EC54CC14A \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_recipient.pem.digest.sha256 b/jstests/libs/tenant_migration_recipient.pem.digest.sha256
new file mode 100644
index 00000000000..ad01d1b9815
--- /dev/null
+++ b/jstests/libs/tenant_migration_recipient.pem.digest.sha256
@@ -0,0 +1 @@
+CA5F02E7CFEB7509E1D6BD9BEAC00A40A80527CF07FB2029442DE8296A4DF2C0 \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_recipient_expired.pem b/jstests/libs/tenant_migration_recipient_expired.pem
index a8555d013b9..6abbf4baf0f 100644
--- a/jstests/libs/tenant_migration_recipient_expired.pem
+++ b/jstests/libs/tenant_migration_recipient_expired.pem
@@ -3,53 +3,53 @@
#
# Client certificate file for tenant migration recipient which has passed its expiration date.
-----BEGIN CERTIFICATE-----
-MIID6zCCAtOgAwIBAgIERvENHDANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIID6zCCAtOgAwIBAgIEVJVyCTANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjAxMTA2MDQzNDQyWhcNMjEwMjE4MDgzNDQyWjBvMQswCQYD
+IFRlc3QgQ0EwHhcNMjExMDExMDQxMzA2WhcNMjIwMTIzMDgxMzA2WjBvMQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxIzAhBgNVBAsMGnRlbmFudF9taWdyYXRpb25f
-cmVjaXBpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz9NAeCR6
-GReje+0NxEF9HGTc0/ziyNnxn/K37HwJSS88S9MF+0lHGK8cQpj+r5vk31oXP7zX
-lvvs7i5cFI8h8IQrmE4j79fmq6g9kM0YO4pPXvt1FLIha5vaP5hM14wndVGr48+E
-ZvhBue2H5VKYkJ8Lepptamkhd2Le/9xEvDrnWEJ0kDfSNVN0Sq5mEcxiwhYAReT9
-fM9gAezkC1/Y/gYvyIT2Q+32qZekHocu4gm9ISXXMuMIjnoX2DveW+shBsn6hfuG
-c9jyRylWlt0VQK9WyDjUH1G5139bg7sjzxWXpw0lYzsOjtJQT+m92H+aO+mHRWJ8
-dlWxyxa3H4VSQwIDAQABo4GJMIGGMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMBMG
-A1UdJQQMMAoGCCsGAQUFBwMCMB0GA1UdDgQWBBQVSn/xMCt1Kn9bk+Io2V+KGlZh
-zTA4BgsrBgEEAYKOKQIBAQQpMScwJQwcdGVuYW50TWlncmF0aW9uUmVjaXBpZW50
-Um9sZQwFYWRtaW4wDQYJKoZIhvcNAQELBQADggEBAAp3pZ718YgIxoluxs9f+wat
-IyKr/b1di7jfOb1iT3/EQQpgpcBdmrMmyNRnCxjXQhiBL2sudG1Xckk/nl5uQjok
-Yc6RI9WCUaY8W8SRA3q1r7tKEcz5ek5NsRChHpgGhLOvkRFVYrUNEhxD4dbwb+Ta
-yer42CU2r4WZ+fZvAfOF5WLoy2j5D7pUltlUDKazajd1CT+1vhH66Jj6CdOvLuOc
-lPBKWp2qLbbv3fKU7e2vdIw7ScksEIOdrYErSRZAXoN6zcB1YeRVSiDgUqEzpzFF
-K7+wffuZjmD2oIIe/H7q1MQZ94vwLF3PZ3Jq19JGoSPrS4GGPMIb4XrMTF/GNxY=
+cmVjaXBpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqcz9uXUw
+mmYzgMZHQVct/Aep+Pt9bXl4UndRN1Fy1d8QKIshEqMVUuBh9WsI5rSg55RfH0MZ
+V4bpq8ah+HjfL9tPAw3seYPRg2rVfGre5QXYfardZnxcDvVrQ6Ln+/eTmtgQM7qX
+YCSJu+UskcwfObsAXEC9S/QSTcLyWtypNBsggCzm6hF/qNLoDdq2T9D4rAhVZsQ3
+k8B01DgywjWGSwTeOdnNaB1VZW3QKE9mLgbiQhS++NR+KRtUd5/TnFLs0tU3sgUK
+osSS/tBx60wR2zUnX190uY7ljg/oQkPpcdJ/Mc1BDUKu2cYGL8w1+pooT4CTSLVQ
+GRw3kZvW0/1LNwIDAQABo4GJMIGGMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgWgMBMG
+A1UdJQQMMAoGCCsGAQUFBwMCMB0GA1UdDgQWBBQaGcRjaxKtM6ejvAJUx6b7VpyG
+JDA4BgsrBgEEAYKOKQIBAQQpMScwJQwcdGVuYW50TWlncmF0aW9uUmVjaXBpZW50
+Um9sZQwFYWRtaW4wDQYJKoZIhvcNAQELBQADggEBADcRbGHg4C1yyFs9nVvODhED
+U8UoXIPv6GJvQVS/hrYgQutjeESTUDEP74MB8GVSVtzFwiI0Ls+2JI8iVOGuAfbX
+XJNvKTuxBa/UY3IxZC4bTvTWEXhfuLaOCnAE2srHK4wrZgOQQgegQc0JYrzwjO0W
+pvP7FP6BhFfGo0DIRIfOvyMgD2Z4IqinAsdCOrbL4lLSgt8HXRh2R8IFfNSoE1F7
+fkocKa22emVFOEq6O+hNNaXiWSMYDaP0GSSKU4ywSMpDLbF67kbivGmrCFHO8yDJ
+5ST2qCxpbGF10pp/0K7uThoA8SIKVVpm7BWoBMnOkoLmyPc0JhHZUChwbNFq6H8=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDP00B4JHoZF6N7
-7Q3EQX0cZNzT/OLI2fGf8rfsfAlJLzxL0wX7SUcYrxxCmP6vm+TfWhc/vNeW++zu
-LlwUjyHwhCuYTiPv1+arqD2QzRg7ik9e+3UUsiFrm9o/mEzXjCd1Uavjz4Rm+EG5
-7YflUpiQnwt6mm1qaSF3Yt7/3ES8OudYQnSQN9I1U3RKrmYRzGLCFgBF5P18z2AB
-7OQLX9j+Bi/IhPZD7fapl6Qehy7iCb0hJdcy4wiOehfYO95b6yEGyfqF+4Zz2PJH
-KVaW3RVAr1bIONQfUbnXf1uDuyPPFZenDSVjOw6O0lBP6b3Yf5o76YdFYnx2VbHL
-FrcfhVJDAgMBAAECggEAXm+MGAvbP5OyQhnR66AmjcR3ZAzBsKr4VMoiMV+biJni
-OEJHsYv2toy7trd2461fLu7tKZVSEdWgMAr45I61yWkFtkuroMzmkJH+h9HqdQPA
-VVTGOwVGknNblRJLuJaDR5g5F2ewrmmY1DfPTLFfijf7K1cI6RWkk29mDbW1tiHr
-RFC9TpU+tg0xwxyPpha9lIsQjq3azsS9mFe8l6OXsMG9GPs69QuhgA6KQAmJssBW
-nmSqAFvYWh+qbD5RHVyH705J8tF5a04AN9zQ7t495XcIzQxMsQLqBfuFAmiqifAI
-kVCIpUXq0NBTnWu1bL2gsZVkb/VzTMYTAbKdHAS3IQKBgQD/5aqnNBwV6i1lcPb4
-jfhtgpAekdkUKhXL+2yOyku9LhMGIohBtGuTtTdGU5Nted9JpmTV0vR6L27ddc6y
-CQC+2OwaylQaZ4wGHIRNMTFUZG7p02qV1+Nm2n2xMG7Dw8eUashjBeyclWMFGgYq
-vO2yut9rqVxVL/JkJSrd91i2jwKBgQDP6KNpGPdGmRn0twBniyGsDC4NOGjyHtdR
-jIZGD6o90Qm0ITjPyqFPxSowfCR2/oQd3ts0Jz+qWBkL3Jd9cSkgOqxh6DArzysF
-xIuVqIX91A9WiUXSMbPk8m/YWdoAOUpYoyzGlA98D2oZD7oUzlBabVphb06Bwinz
-QCkiK0mjDQKBgQCbHG6VzVtc2UbNH21EemHkl2iebw+jTmNJ8sv5vZutP3lelZ38
-Hc27ifPIWC6cBGyZaxfiGG4Chi/wY1F3z0c5Z6muD4htPOi+Z5i2ZaQeIIaui20n
-COaZWMUpm074sPqP9y4h/9xNiaus0vp7+2sllGqLCuyh4l9N3s2eICkQ9wKBgQCX
-uPvXbIK3oG7SqOHArkXqWhEZULs1RdB4EIbEhhYEepIMQ9pDuWmy3v2E2HN76wzb
-B5EMJEBPvW65u0dKIdSTUn4ODPVqYwrQcLg0hQETVTfEPPUZCXBweYOpbRir5SMe
-QCYi3FXYgR86HsH7APyeoQK97A5snxciDwZ1iwV32QKBgQC91rbYplsiw3BAkoqB
-jNd+rpJnBxNc813AwRI64W2xhYpsJUT7w27McVn7Yl/bvr/GZwNU8809xkCb4B+X
-/KOQ1VdNIbQHpIeP1adELJdBTNO2k/ZRQ0k3R7go1x9EN2vAyep3YGyQDZTo6hR3
-bMXAW1h2yjUrAklSfRYbgmf+nw==
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCpzP25dTCaZjOA
+xkdBVy38B6n4+31teXhSd1E3UXLV3xAoiyESoxVS4GH1awjmtKDnlF8fQxlXhumr
+xqH4eN8v208DDex5g9GDatV8at7lBdh9qt1mfFwO9WtDouf795Oa2BAzupdgJIm7
+5SyRzB85uwBcQL1L9BJNwvJa3Kk0GyCALObqEX+o0ugN2rZP0PisCFVmxDeTwHTU
+ODLCNYZLBN452c1oHVVlbdAoT2YuBuJCFL741H4pG1R3n9OcUuzS1TeyBQqixJL+
+0HHrTBHbNSdfX3S5juWOD+hCQ+lx0n8xzUENQq7ZxgYvzDX6mihPgJNItVAZHDeR
+m9bT/Us3AgMBAAECggEACc0qbDUmjBMQMAPCAzSME/tBRX0G3XXgiyoWBxJthYjt
+vtlhHFlLltAa93apOd/9VcDLyNsvsEy6Wk8J9HTNtU58fhmkp9MDGgnlrtvgZ+nx
+eDePtiXBjp9+BJZ3u6Sr4YlNTh8cM9GIHc95xiS5PLTdrXWTN7osAE8bfEE2hypd
+mSVSGL/PBEo6+jsaEWsZW366U7KC/2vl8SBsxlEAXneKv+fw3BhngwghRDsQOFBt
+XX72GnRTUOt1nroMlA+s3Ao3XZrqD6Z145pTMqXen5IoCjBrUWk7n4uwxi10MY7k
+LbxOxh2oghwDbbTYgi2bgkYHfIk5mEsn/mxhAXjjCQKBgQDbR2HUhAusirpvDFX/
+e1r8RmovGT0SLEjIfNfrHHJlpRRlvUeQP0pVIH0pEootROZeA/ujofc8NMfEdrTw
+dcufxITlpPvKk8+o6zgaQ0dDWZ9zIPiWMrWwfyEZyNJoTsp1gyLQbp47bViBfJsA
+td1nX4Ep1WRgIq3SQ2l3bh03YwKBgQDGPHP2chMao6ln/T/wp1Aa8bD5aHjSCa6q
+TzsRQeUNVIl14oFE8G+vtgr04el2qztWB0MoXyioqaH09NOny6EFeqZwPo1vQTN5
+Q7HeMDx7TvtOCXOxRCe0F5LR3etsOcNekTInXu9AwOnt4UH52gMVziAuVdTAfXO4
+6GTk2wV3HQKBgCxDO3c3dFfO5RU3a0CX+OTFnfeF47MAZ2y47qjR5DGqYfSrgX+X
+lvyaA0nAKU48AzhlG22LaymnCdAZmiqTzJeihqUIaZ8ZuShC2t9KR19L/wixVhyT
+feNztg3LYNWXWfzgjK2ANsaOKvhwW6WIEHomaB82qP1S4r13yBlIi/M7AoGBAJ1i
+4a6IYyKDTbyCFIG8VJ0PxrI9f69CgKo2vW62ImSy+W/epUNWoVWf8pL5yaGt0S48
+FdW3t1AxXaRdvK07vlvbRMlY4HG0Emn0lQMSyPIdgugyGOhkdCFHlgmJZ6BFPBeY
+r3kSpmGCyDdU4Ey+CjUFsgcXnhI1h+sGlxQbz/sBAoGBAIB/YchF5tOGpls4k8be
++YD4eB2spHWtJRRbnTYPnGY4xqOzEII14agzvi4Kh7j5O7TE5SZW3m2GjPV7HmFI
+mrU24lspIJjyrZAZXxDT+Y8Ki7yp/ITS38W79DKV/dFnjKG2oUy4ZIs86OkWbNc0
+N1CQppZPRt8/QREmB77yT9ic
-----END PRIVATE KEY-----
diff --git a/jstests/libs/tenant_migration_recipient_expired.pem.digest.sha1 b/jstests/libs/tenant_migration_recipient_expired.pem.digest.sha1
new file mode 100644
index 00000000000..3af12b7a100
--- /dev/null
+++ b/jstests/libs/tenant_migration_recipient_expired.pem.digest.sha1
@@ -0,0 +1 @@
+EC814337A356D99D55DF854FF71CF72C1CCA102D \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_recipient_expired.pem.digest.sha256 b/jstests/libs/tenant_migration_recipient_expired.pem.digest.sha256
new file mode 100644
index 00000000000..10f7d3cef53
--- /dev/null
+++ b/jstests/libs/tenant_migration_recipient_expired.pem.digest.sha256
@@ -0,0 +1 @@
+A74CF5D200100E22D6DA8AC683657C387F2604B152402552415FF156FF04C8AE \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem b/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem
index 47f21d458b9..c2dbff6bbfb 100644
--- a/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem
+++ b/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem
@@ -3,53 +3,53 @@
#
# Client certificate file for tenant migration recipient without the required privileges.
-----BEGIN CERTIFICATE-----
-MIID3DCCAsSgAwIBAgIEN43y6TANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+MIID3DCCAsSgAwIBAgIEOPFUxzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
-IFRlc3QgQ0EwHhcNMjEwMjIyMjIzMDM1WhcNNDEwMjI0MjIzMDM1WjBvMQswCQYD
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ2WhcNMjQwNDMwMjE1OTQ2WjBvMQswCQYD
VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
dHkxEDAOBgNVBAoMB01vbmdvREIxIzAhBgNVBAsMGnRlbmFudF9taWdyYXRpb25f
-cmVjaXBpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8Apagmuq
-u7bcGmuewiQAUNSizL+iR3AtGy1BUVps93J1CcCkjw3hf93aWGrUTxxK1TkF7XwQ
-BRtL+vn644z9fGC/8okXlwLq0v0/M370uSR+sS4deusuxqe2oD6wZdlBMV2afyZX
-mWZPv7S6PaKnFDo7WlrLpxylO1ScbGYsceY6wUvcLnDf/btBjTAp7bMpEB8ULNr0
-q/UqlKxrjeycFAHTS2LS4/pxdbCqYtkyAt+sFtTwFGaUu4PrsutdI10Jx4xkUXw9
-TaAeu2J8tuSgqaA2zcDJV9MxYwLpfNRia27TPKDeogYlKMDUGqF5v4z6AfYEKG79
-Xu9Fk8RlPk6J6wIDAQABo3sweTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIFoDATBgNV
-HSUEDDAKBggrBgEFBQcDAjAdBgNVHQ4EFgQUls3OZKT6liE97ewevivBQuZhOQ0w
+cmVjaXBpZW50MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxQcS9Du5
+cu+WrloqzHqOq8aO71x5fco09rDW12XEt7BUaqadNqBMbyO1JO3KsYHuG3Z1bGZB
+6MPXKwoZb7QVGMjKkyb1inPYLC+1guE8skolKRE8mzDoYclzZ8nlNLxP85axOHTE
+ON8rOZzViX1wevW/4Wk5YykRl1q4PcI9sS0ApKGyUsD1aYuV8/5HT1flF4quQ8GH
+MgaI3CuaI/JpyPJhHXv07McQ40c/3B87bvteJ2zB+PUCnYClza4xr461zK5TmeER
+nSu4AUgH2Pp/YYpWF6PqHiiZmvWot1DFAjobFoNDhSpG6DlAxuZYGvreRfhZvyNw
++rcvl8VET0eQXwIDAQABo3sweTAJBgNVHRMEAjAAMAsGA1UdDwQEAwIFoDATBgNV
+HSUEDDAKBggrBgEFBQcDAjAdBgNVHQ4EFgQU60uDTycUKt17FwGh7+ngdgXw5DAw
KwYLKwYBBAGCjikCAQEEHDEaMBgMD3JlYWRBbnlEYXRhYmFzZQwFYWRtaW4wDQYJ
-KoZIhvcNAQELBQADggEBAEKRdjtAYR+oLp2/Rf3DSC4nd6FKxjGjhlyxLPAwhJzn
-Ah7luHAKnUtc/gx8sFp7d72icjoGkk6IF7nbQ2rvyhCMIeuxvWcciOa5TthPhGCF
-0FOA3wCKKtpXeDvnYv7M/GBFgHZwaWTYwIV0r1OuZJjQccVfecWd27ayOsK6PwN/
-TH3McvfymKYTbDslrzxJ6YemwQIjkCnOaCdkE38w7///ZgwrP8d7J0x7YmJ70nev
-B1mkvLzeGJhDw1vkyVjC2GgnpNklHzJbyuqlhEqp0bnaXa+UxjHofIREEyoSnLaO
-ma0y+kue4Iq3io6vsal3QLpfjhpTSHIbT1wA9LPvDeQ=
+KoZIhvcNAQELBQADggEBAMD5QD/cX2nL+wmH1Q3NmGPynKuNODwOUMKxvf2ST+Vw
+WR5A6UFyjIBvQeUQOkN3Tt2XSMLGJL0r/T+HSxwNR0yYy8pMUXuZei41F3Z6LZcN
+ckr/ZEoighkmc7U4GvLZYdGNgeKA1v/FCsaiy4hWwOP+50XKVMKCXnW/yNGjK/u8
+0Q016rm92fYv19wZJlNgNElzHVcefAwHRxjZBSGVbmDvG4YGelZwBPfwIPKgMYKj
+M5gwmhd18ileIoC2C/TjKw2kaKsQY79gn7JUVvIhMumeaZXsk7HDiqBeNrPzbxIG
+/7KEFMPbsM1ydbHSwfdfeU2wDL3upUcZAHkPNwgA7go=
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDwClqCa6q7ttwa
-a57CJABQ1KLMv6JHcC0bLUFRWmz3cnUJwKSPDeF/3dpYatRPHErVOQXtfBAFG0v6
-+frjjP18YL/yiReXAurS/T8zfvS5JH6xLh166y7Gp7agPrBl2UExXZp/JleZZk+/
-tLo9oqcUOjtaWsunHKU7VJxsZixx5jrBS9wucN/9u0GNMCntsykQHxQs2vSr9SqU
-rGuN7JwUAdNLYtLj+nF1sKpi2TIC36wW1PAUZpS7g+uy610jXQnHjGRRfD1NoB67
-Yny25KCpoDbNwMlX0zFjAul81GJrbtM8oN6iBiUowNQaoXm/jPoB9gQobv1e70WT
-xGU+TonrAgMBAAECggEARFs+cRuGEFS/k0qIeFLWQC59ef8skFlyjuWxTyCIHWNb
-zv4sHozeZZJhBoLNmQW+jb/iX0HQMhQW7A7aEojo+s12e/PsYtWy14jEwb5qpHqv
-FXfDb2if9nR2PmX7x9U5inxUbdcWZRnMphQqYTj7iXgXxOBMVHeE2kN7FCd4iqpv
-ayahPhYSzTuBmf2jYFl/HIndIKULXuZMoII/G7E1Yi3C9IgBWtxUkN4+3v+cGtDW
-IDxi9a7D/DPv8CJb0Srcv9K6NQYTon9HzKlHeBD6pJsyCF5MoeTA7FkWoZTvWkZw
-+Rj4X/+CBXdQBSlAqsTwKioDiMsad5TqtUP8qk99WQKBgQD4Csa5mF6FlbjYbh2S
-H8W0lzf4oOJri8oAyqqojz6kPPrJRsiPg6/J8ArNt0qFkOiyIhrmcYWgGqM2NuR6
-ZepY87rXahVJ21clS74WQoKpGSE79JAmogdHh+E3ztueukplElLQ3nJSgVlkTPhV
-yT5yPLnm8XoukQ75nxOoFt76fQKBgQD3vdukh/PcoY/HtPRsn57rP0Oso1QYpa41
-QlV+0oGsyf6PaV45vCUT5a7dKR2veIWzzmv/wlJixrXT5OAbxJzYGntdv5PvAgpI
-oAHWp5+IaGBFw0eHerLQXlIWfXz4Nh4W9YJPGS/MYrfy4Fbo13Zymo8QmQKeBGjb
-5jkgtTLahwKBgQD2Cjp1fx7Dg3CHvzK17649JILwrSXraA5IGsCN0wlgAN0DKqNn
-OEj3FpSg2l+hfcxUZmAolhLmbYXYETsx7kY3VgzQAPp8+IXJCQjVK8RP2A2PW1hh
-+fcejTpqEVbobAG/oB1l8kGUdZomU/NBpQ28Y2BEJOP9rQYdth3ZblZgQQKBgEBL
-FWVtouvvQdEiNQy7oBKNKJL1EC4VUVChFm8DUoP1KAsv3TQ+j6DKSsc6lGmlbY1s
-VLrbQ2Y/C5EiJMcQD2RF+x4pScsNTH3siI2cktpjvBhexYFzZlSNJeCQUI5Z/RUY
-QeklMDJqrDJr5iInSKYVVmuIShWYL15iMRE79SahAoGAPkU79HuJXJIdXsKgoAc1
-vMal8amVtqLA0nEBqBn1cXHnLGlDgeLYL/j5nXUdRxDvuneaT9scd1p1fT6i67ug
-yWOGv8N9q6XHtk2vcWBK3CsMsvA3bANLh1P6Uo0pe9UEH2Veq1ruqDsCM1PzO+Nj
-mGbuEw1sR6dSOGDGFlh7f9s=
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDFBxL0O7ly75au
+WirMeo6rxo7vXHl9yjT2sNbXZcS3sFRqpp02oExvI7Uk7cqxge4bdnVsZkHow9cr
+ChlvtBUYyMqTJvWKc9gsL7WC4TyySiUpETybMOhhyXNnyeU0vE/zlrE4dMQ43ys5
+nNWJfXB69b/haTljKRGXWrg9wj2xLQCkobJSwPVpi5Xz/kdPV+UXiq5DwYcyBojc
+K5oj8mnI8mEde/TsxxDjRz/cHztu+14nbMH49QKdgKXNrjGvjrXMrlOZ4RGdK7gB
+SAfY+n9hilYXo+oeKJma9ai3UMUCOhsWg0OFKkboOUDG5lga+t5F+Fm/I3D6ty+X
+xURPR5BfAgMBAAECggEBAJYibNQEyqyFWwmilahY32yPkg1dJwquUauFV0CtQLhE
+Oh9GtNeSUIwD5p2sQV7/xgPRQWsHhMOsr8IRIQ7YZ5cKMirtbf9BhQEunZ6MqWam
+Tyi7BLaxDvKswi7dTrXfpQDV3FdLytYXYGW3V5Q8LMDVkJBgUSV5fvkZXPlakQ33
+BqsYTTWTwR0GE9tsr0mkJX1sL61K/aargX4Qw3iL2OdLQorCsXyptguzZZ5gKtco
+D009bWXorBiTy7AuzFsXMpPxIvV8j+BZxPgAYTFpXS3dE8iEEbnEp0WeyrpgGVvf
+IQMZf+R5XKhRJnXYq2yFPnYo2812gBRP+lqJEVJahwkCgYEA/+sAvRy8HjrxJYtv
+zoRLDdTrS2OjfiURIb8EbI0qpJZsyP/4CRAInGS80MG3dnZrWiTuhHUpAsxB7MwL
+EU5A583deX/KtQd6DG5kaNP9tmATm4N+8MlzZ/Cc6+noPOj/7UwTrzh02U/4nC6v
+9FFIvXWfn3zbSflmVXvCBR2gr/0CgYEAxRc9SqqR0bqVvSqXvIjx5DdsY8Z0/gaZ
+6zg6hZWtNCjWZ8JdO3Nfb7Gq8WyHbuT0hMZKspoUkQcJDKgevPuLgYa9azkT+JEc
+64kE8inL1OCAKwZwrV7ytscHFwIaGz9w5FiDMpAHzmvLIo1BygkAapqtnlhFnLHT
+7Ui7YfPyqosCgYEAht1oaUDAXkn/lSKTTEjpaKOhT/x1R1/vVFJe2XnXVB81uwMx
+ykzZzNlFq9m6fkJPtpSp4cIAV8oen9SzrG4JxF737TSMNbR3/B8c6SV2meqtypGU
+jv4KxGbHu4dr7NV5Maua4AcnhPIg+OWdsmo3pChdc2YQBj7ZUAlFKP8BFF0CgYBL
+XQuO1ZJUxCgl4XeMHEGCpr7HmEd8K0IH88RM+GL2ovb5ThUgeolvyFw5XOqcuOfX
+LYu6p7hdjHclY9P9J6K8sK0Vpwm/7p1EY2yEvP64M/BOg3Pql3fv9EL9xUv+R0//
+wOjKGNEjWYyfdaxGeRKzsNnaxp43wLfs7/bXCdUs6QKBgAoH7eGj/0t5tHE9xS3X
+Nc+PAnEIUdSO7Y7Pz0weTiM4zcPXLnbuULPQuqzqSVYG4bgPh5pckRXkZkn5/8PS
+KkwYxCalzZSskSI8R5MsVjvhGZ6Ntw+zuTF991BqQ0PgTWwM8e5XfzWyiQ3Ao42a
+d1VZUQaPZimyoO+OdvKCDSzN
-----END PRIVATE KEY-----
diff --git a/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem.digest.sha1 b/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem.digest.sha1
new file mode 100644
index 00000000000..3e44d403fc1
--- /dev/null
+++ b/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem.digest.sha1
@@ -0,0 +1 @@
+4DDA0775EAC5EE548618B1595E6D67EF7F13E2F1 \ No newline at end of file
diff --git a/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem.digest.sha256 b/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem.digest.sha256
new file mode 100644
index 00000000000..b045f141e84
--- /dev/null
+++ b/jstests/libs/tenant_migration_recipient_insufficient_privileges.pem.digest.sha256
@@ -0,0 +1 @@
+0909312EFC6E36BD1A03D9FA6CB6129E18B9FB80FA2EB8ADB57B5075162509AB \ No newline at end of file
diff --git a/jstests/libs/trusted-ca.pem b/jstests/libs/trusted-ca.pem
index f11cada4f61..4190341ac51 100644
--- a/jstests/libs/trusted-ca.pem
+++ b/jstests/libs/trusted-ca.pem
@@ -3,76 +3,52 @@
#
# CA for alternate client/server certificate chain.
-----BEGIN CERTIFICATE-----
-MIIDojCCAooCBG585gswDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxHzAdBgNVBAMMFlRydXN0ZWQgS2Vy
-bmVsIFRlc3QgQ0EwHhcNMTkwOTI1MjMyNzQxWhcNMzkwOTI3MjMyNzQxWjB8MQsw
-CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
-IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEfMB0GA1UE
-AwwWVHJ1c3RlZCBLZXJuZWwgVGVzdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP
-ADCCAQoCggEBANlRxtpMeCGhkotkjHQqgqvO6O6hoRoAGGJlDaTVtqrjmC8nwySz
-1nAFndqUHttxS3A5j4enOabvffdOcV7+Z6vDQmREF6QZmQAk81pmazSc3wOnRiRs
-AhXjld7i+rhB50CW01oYzQB50rlBFu+ONKYj32nBjD+1YN4AZ2tuRlbxfx2uf8Bo
-Zowfr4n9nHVcWXBLFmaQLn+88WFO/wuwYUOn6Di1Bvtkvqum0or5QeAF0qkJxfhg
-3a4vBnomPdwEXCgAGLvHlB41CWG09EuAjrnE3HPPi5vII8pjY2dKKMomOEYmA+KJ
-AC1NlTWdN0TtsoaKnyhMMhLWs3eTyXL7kbkCAwEAAaMxMC8wDAYDVR0TBAUwAwEB
-/zAfBgNVHREEGDAWgglsb2NhbGhvc3SCCTEyNy4wLjAuMTANBgkqhkiG9w0BAQsF
-AAOCAQEAQk56MO9xAhtO077COCqIYe6pYv3uzOplqjXpJ7Cph7GXwQqdFWfKls7B
-cLfF/fhIUZIu5itStEkY+AIwht4mBr1F5+hZUp9KZOed30/ewoBXAUgobLipJV66
-FKg8NRtmJbiZrrC00BSO+pKfQThU8k0zZjBmNmpjxnbKZZSFWUKtbhHV1vujver6
-SXZC7R6692vLwRBMoZxhgy/FkYRdiN0U9wpluKd63eo/O02Nt6OEMyeiyl+Z3JWi
-8g5iHNrBYGBbGSnDOnqV6tjEY3eq600JDWiodpA1OQheLi78pkc/VQZwof9dyBCm
-6BoCskTjip/UB+vIhdPFT9sgUdgDTg==
+MIIDojCCAoqgAwIBAgIEclbQATANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEfMB0GA1UEAwwWVHJ1c3Rl
+ZCBLZXJuZWwgVGVzdCBDQTAeFw0yMjAxMjcyMTU5NDhaFw0yNDA0MzAyMTU5NDha
+MHwxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3
+IFlvcmsgQ2l0eTEQMA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMR8w
+HQYDVQQDDBZUcnVzdGVkIEtlcm5lbCBUZXN0IENBMIIBIjANBgkqhkiG9w0BAQEF
+AAOCAQ8AMIIBCgKCAQEA8h+5axgTodw8KmHz/rcPcy2N/etFkipOVL0i3Ug6JcKk
+DjuSIdyLULuIQlR8nXWQ3hW9CZ2gDCeSnmnUKY6GWDQPHoSUJPhmGkXPuPBXivcL
+QpLVZeOHrqR4+SHzOA3317LF/QYm9kC3dEZIz+dWUlTHs4NFwR+Yo84XNosSGaUh
+o0mK5YcBx0W7y82rNrijcygOkXF9QrANUZfUz5uQ/ZPDjgoISqFvgMzJtpL6LqSC
+TbsUM4NbPSYECDFzIosO+rhYCUsgZ5pE6NWZjmKzq4+zeb/2iSIoEb7U/5f6i4H4
+880y+usrcsBuNCS1OVHaEB1ZrlinJbzplB3nV9Hj1wIDAQABoywwKjAMBgNVHRME
+BTADAQH/MBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAAATANBgkqhkiG9w0BAQsF
+AAOCAQEArn+KmfD2JEXa0G81jY+v1+XBT4BCcFExbdpOYbIoo2m0Qvx+sla5+Qu7
+nG51R+3rnkVPr03ogKYtf3hYtQJk6DqfuF0V9ESYkz09XRwyW93mh3z4yumXnk3y
+d6SG2quC6iJV0EqT/OnmmveGBpxaBjf80ezRq+8t0mVGeNwZSxv0OprAkmKIIDM8
+Qa1/LlGhStiU+hN62c3m4wHdY5jreRYH7NyIZCHJ/wKgo0cDWWdJ4MeAaQhuijUI
+BaNg6mFHlxVMMRGIGSduUhu7vHzjbAES6kJxdIpDM8tZMlRZQ3ORml5s9onSMb2n
+NmJkjwyB62odD+yrygWRLtFMJmKODQ==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDZUcbaTHghoZKL
-ZIx0KoKrzujuoaEaABhiZQ2k1baq45gvJ8Mks9ZwBZ3alB7bcUtwOY+Hpzmm7333
-TnFe/merw0JkRBekGZkAJPNaZms0nN8Dp0YkbAIV45Xe4vq4QedAltNaGM0AedK5
-QRbvjjSmI99pwYw/tWDeAGdrbkZW8X8drn/AaGaMH6+J/Zx1XFlwSxZmkC5/vPFh
-Tv8LsGFDp+g4tQb7ZL6rptKK+UHgBdKpCcX4YN2uLwZ6Jj3cBFwoABi7x5QeNQlh
-tPRLgI65xNxzz4ubyCPKY2NnSijKJjhGJgPiiQAtTZU1nTdE7bKGip8oTDIS1rN3
-k8ly+5G5AgMBAAECggEAS7GjLKgT88reSzUTgubHquYf1fZwMak01RjTnsVdoboy
-aMJVwzPsjgo2yEptUQvuNcGmz54cg5vJaVlmPaspGveg6WGaRmswEo/MP4GK98Fo
-IFKkKM2CEHO74O14XLN/w8yFA02+IdtM3X/haEFE71VxXNmwawRXIBxN6Wp4j5Fb
-mPLKIspnWQ/Y/Fn799sCFAzX5mKkbCt1IEgKssgQQEm1UkvmCkcZE+mdO/ErYP8A
-COO0LpM+TK6WQY2LKiteeCCiosTZFb1GO7MkXrRP5uOBZKaW5kq1R0b6PcopJPCM
-OcYF0Zli6KB7oiQLdXgU2jCaxYOnuRb6RYh2l7NvAQKBgQD6CZ9TKOn/EUQtukyw
-pvYTyt1hoLXqYGcbRtLc1gcC+Z2BD28hd3eD/mEUv+g/8bq/OP4wYV9X+VRvR8xN
-MmfAG/sJeOCOClz1A1TyNeA+G0GZ25qWHyHQ2W4WlSG1CXQgxGzU6wo/t6wiVW5R
-O4jplFVEOXznf4vmVfBJK50R2QKBgQDegGxm23jF2N5sIYDZ14oxms8bbjPz8zH6
-tiIRYNGbSzI7J4KFGY2HiBwtf1yxS22HBL69Y1WrEzGm1vm4aZG/GUwBzI79QZAO
-+YFIGaIrdlv12Zm6lpJMmAWlOs9XFirC17oQEwOQFweOdQSt7F/+HMZOigdikRBV
-pK+8Kfay4QKBgQDarDevHwUmkg8yftA7Xomv3aenjkoK5KzH6jTX9kbDj1L0YG8s
-sbLQuVRmNUAFTH+qZUnJPh+IbQIvIHfIu+CI3u+55QFeuCl8DqHoAr5PEr9Ys/qK
-eEe2w7HIBj0oe1AYqDEWNUkNWLEuhdCpMowW3CeGN1DJlX7gvyAang4MYQKBgHwM
-aWNnFQxo/oiWnTnWm2tQfgszA7AMdF7s0E2UBwhnghfMzU3bkzZuwhbznQATp3rR
-QG5iRU7dop7717ni0akTN3cBTu8PcHuIy3UhJXLJyDdnG/gVHnepgew+v340E58R
-muB/WUsqK8JWp0c4M8R+0mjTN47ShaLZ8EgdtTbBAoGBAKOcpuDfFEMI+YJgn8zX
-h0nFT60LX6Lx+zcSDY9+6J6a4n5NhC+weYCDFOGlsLka1SwHcg1xanfrLVjpH7Ok
-HDJGLrSh1FP2Rq/oFxZ/OKCjonHLa8IulqD/AA+sqYRbysKNsT3Pi0554F2xFEqQ
-z/C84nlT1R2uTCWIxvrnpU2h
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDyH7lrGBOh3Dwq
+YfP+tw9zLY3960WSKk5UvSLdSDolwqQOO5Ih3ItQu4hCVHyddZDeFb0JnaAMJ5Ke
+adQpjoZYNA8ehJQk+GYaRc+48FeK9wtCktVl44eupHj5IfM4DffXssX9Bib2QLd0
+RkjP51ZSVMezg0XBH5ijzhc2ixIZpSGjSYrlhwHHRbvLzas2uKNzKA6RcX1CsA1R
+l9TPm5D9k8OOCghKoW+AzMm2kvoupIJNuxQzg1s9JgQIMXMiiw76uFgJSyBnmkTo
+1ZmOYrOrj7N5v/aJIigRvtT/l/qLgfjzzTL66ytywG40JLU5UdoQHVmuWKclvOmU
+HedX0ePXAgMBAAECggEAP28UUvyB2Dws/yWemTM4twJOWyISnhK7ZvQOeE79/Pqb
+pKbyyDBRx5r6PfaIl3A/vg+P8T78uXJ8tUggr6qJg/5Pn704Wt9BUMzNeTRumxfS
+OWTix8juuVCZ6Rt970epkTdjK8E63/VgmvP3C5EeSn+vulZAJjKy+Od7qWySF2lr
+ikpuEvzy+l81NWu/YbBgD1JlNdn9IPr/hmBeOwUyOII9uiDzSvvUQb9Q2wFbW07O
+DjPG1SxCYr54vGL3REmyOzhLPp+5OiHZtF7w76vyq/pTCz7eUfPwTwIo3DAybvPx
+vfIeBLfTIpdTL9XyCPhoIuwj+6AA6MfRKATi/0OLsQKBgQD7uVgvlDE2+a8xjfFT
+Z676Vm6hiMJ3lrUysRvJJkTAiL6fzqS42gOu3dTk6UakuAxiGpkBOtKG6/j4HYbL
+AUGhpfyLwyKfdVn9OyAZFxW786MKtdYt2iKZ+c5EEb2MFndQGBa0ErtaG0nPHlTn
+vm9Kf3bR0n2WXdb0pzLlL2NsLQKBgQD2PKHxK0zRKiy3js5nxUK1feYtTlqWsvxO
+wM94qSOQ4r19QpdbIU8/ywWw8O3j5p+etWqy6KlSShDvP1QYlx5zEo5vhZl96Cfz
+Ixk6eHrxsi8r1ARcCgDc+05ZqyGhjPOCZI5y4JXNbdnVhKnfzioFgs9mUL+IwzxQ
+l8hnGDOekwKBgQC8nwGphU3rd+UDKO1wJf1DsIhtmmC947wbJANCEt7pto3AicN8
+kEC6Q5dHgFVjEFaXHH8SINWoLCH/KYDblTFsw0geIjZLbk/kJO3EXzv1/nZpjB/V
+c+MBpeIdt31k/2CgL6yzemXQ+ymvfXb5wAT8uc57I1Lf3ak44iCNA5locQKBgBoz
+7Y+6adxAPq3x1mkYhrbFhP8BPYaX2V2QCwPuC8jZOAziTzT1YHeLZTmlCcucuROs
+foQ3Wf1VwGOVO5+6RRU9vkaD0weg8s9exsqAE6UwrvBdCXG55smdPIMyQMvuMeOI
+S9hRqd9Id0vPaDxWtgYMG4HpydgF3p8856iA3M1dAoGBAN1s4DE+5KsnrM888dp5
+z38+QEYyuO3DMuSE/72lnb+7rfTg+75tfdLdKhJrACHlGC1LvnfJ5oLUVWwMgqSZ
+BVBDkykYxd82ATRjfLj3S75nIj70vgb6vGUpm9CommhvRuUIwi9GAp+LzI5f9w1n
+1i9azD5QQ+vNVmfXX61/0ehq
-----END PRIVATE KEY-----
-# Pre Oct 2019 trusted-ca.pem
-# Transitional pending BUILD update.
------BEGIN CERTIFICATE-----
-MIIDpjCCAo6gAwIBAgIDAghHMA0GCSqGSIb3DQEBBQUAMHwxHzAdBgNVBAMTFlRy
-dXN0ZWQgS2VybmVsIFRlc3QgQ0ExDzANBgNVBAsTBktlcm5lbDEQMA4GA1UEChMH
-TW9uZ29EQjEWMBQGA1UEBxMNTmV3IFlvcmsgQ2l0eTERMA8GA1UECBMITmV3IFlv
-cmsxCzAJBgNVBAYTAlVTMB4XDTE2MDMzMTE0NTY1NVoXDTM2MDMzMTE0NTY1NVow
-fDEfMB0GA1UEAxMWVHJ1c3RlZCBLZXJuZWwgVGVzdCBDQTEPMA0GA1UECxMGS2Vy
-bmVsMRAwDgYDVQQKEwdNb25nb0RCMRYwFAYDVQQHEw1OZXcgWW9yayBDaXR5MREw
-DwYDVQQIEwhOZXcgWW9yazELMAkGA1UEBhMCVVMwggEiMA0GCSqGSIb3DQEBAQUA
-A4IBDwAwggEKAoIBAQCePFHZTydC96SlSHSyu73vw//ddaE33kPllBB9DP2L7yRF
-6D/blFmno9fSM+Dfg64VfGV+0pCXPIZbpH29nzJu0DkvHzKiWK7P1zUj8rAHaX++
-d6k0yeTLFM9v+7YE9rHoANVn22aOyDvTgAyMmA0CLn+SmUy6WObwMIf9cZn97Znd
-lww7IeFNyK8sWtfsVN4yRBnjr7kKN2Qo0QmWeFa7jxVQptMJQrY8k1PcyVUOgOjQ
-ocJLbWLlm9k0/OMEQSwQHJ+d9weUbKjlZ9ExOrm4QuuA2tJhb38baTdAYw3Jui4f
-yD6iBAGD0Jkpc+3YaWv6CBmK8NEFkYJD/gn+lJ75AgMBAAGjMTAvMAwGA1UdEwQF
-MAMBAf8wHwYDVR0RBBgwFoIJbG9jYWxob3N0ggkxMjcuMC4wLjEwDQYJKoZIhvcN
-AQEFBQADggEBADYikjB6iwAUs6sglwkE4rOkeMkJdRCNwK/5LpFJTWrDjBvBQCdA
-Y5hlAVq8PfIYeh+wEuSvsEHXmx7W29X2+p4VuJ95/xBA6NLapwtzuiijRj2RBAOG
-1EGuyFQUPTL27DR3+tfayNykDclsVDNN8+l7nt56j8HojP74P5OMHtn+6HX5+mtF
-FfZMTy0mWguCsMOkZvjAskm6s4U5gEC8pYEoC0ZRbfUdyYsxZe/nrXIFguVlVPCB
-XnfB/0iG9t+VH5cUVj1LP9skXTW4kXfhQmljUuo+EVBNR6n2nfTnpoC65WeAgHV4
-V+s9mJsUv2x72KtKYypqEVT0gaJ1WIN9N1s=
------END CERTIFICATE-----
diff --git a/jstests/libs/trusted-ca.pem.digest.sha1 b/jstests/libs/trusted-ca.pem.digest.sha1
new file mode 100644
index 00000000000..44694a1db8f
--- /dev/null
+++ b/jstests/libs/trusted-ca.pem.digest.sha1
@@ -0,0 +1 @@
+199E4C0E9DBAC3EDDA339125CB8ABBFF8DDF8442 \ No newline at end of file
diff --git a/jstests/libs/trusted-ca.pem.digest.sha256 b/jstests/libs/trusted-ca.pem.digest.sha256
new file mode 100644
index 00000000000..d01ec866448
--- /dev/null
+++ b/jstests/libs/trusted-ca.pem.digest.sha256
@@ -0,0 +1 @@
+2A513BF013D0031D93537E82077983549D3A462EF43C9AA32D15BC6A3D13EEED \ No newline at end of file
diff --git a/jstests/libs/trusted-client.pem b/jstests/libs/trusted-client.pem
index 82a7f9e8204..4589a236f23 100644
--- a/jstests/libs/trusted-client.pem
+++ b/jstests/libs/trusted-client.pem
@@ -3,52 +3,52 @@
#
# Client certificate for trusted chain.
-----BEGIN CERTIFICATE-----
-MIIDmTCCAoECBAuuqsUwDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxHzAdBgNVBAMMFlRydXN0ZWQgS2Vy
-bmVsIFRlc3QgQ0EwHhcNMTkwOTI1MjMyNzQyWhcNMzkwOTI3MjMyNzQyWjCBgDEL
-MAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9y
-ayBDaXR5MRAwDgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxIzAhBgNV
-BAMMGlRydXN0ZWQgS2VybmVsIFRlc3QgQ2xpZW50MIIBIjANBgkqhkiG9w0BAQEF
-AAOCAQ8AMIIBCgKCAQEAshH7dr+x52giy0RU4rtNH+9dC7Fu+vHKRhP33U6+Z54E
-yj0IifG8zUNoKqZcx6480xeSg8De9GpfPsc6bFRvEk6sTMkf+nNaBajLHS69OzSc
-51GRnm9kNoI1L89iSsNlzDa3+FapsPJTkq3WMkE/bChntByNOYYXZTRc0KaRz2bN
-CnesRne2e9jS/AGTTWjJpw24dITclT5q+q67LqOKs140YMFVsmhLecvN61hreBsY
-F9xsQQkNHQvy9wYs5PV9lvI3ZogjlZU94ZkabMkeaypT6yFRNgksZpC9BunjrhZ7
-izVvxJMvtMzC9ua+K3ujI38N0b9m+v57cCDyz2IeVwIDAQABoyMwITAfBgNVHREE
-GDAWgglsb2NhbGhvc3SCCTEyNy4wLjAuMTANBgkqhkiG9w0BAQsFAAOCAQEAjoCk
-2AuQHoLUi37LXZRxafzBkYVKuMBiaipAw2ZCKk3dbebQp7ohKAF25sHhTztTUFyD
-jLAwOu76skmFYKxtwN13XmiBlrlMk/lMeTeiPHTXcYVpaZULimKPO4nh/l1SzQqx
-XTL9/yNrS5nlJXGpNSJL0kYZ4O5VJfMz9aTCGWrcGteVvKQgRNxsLb7ZT13+mme+
-INvjmR9zUX299wlJHYRDUxY1AmJTm6YTnXl6KQEZF64hI6KEUrh6LnsvJS0VbJay
-6BmKVV3W9DY8HzR+yawB0v+5Bz7TYAaymdzLIuELD/QFD6ksCqbsF8XdP4bF8IuU
-0ST7eG9taRXWQdmAog==
+MIIDrjCCApagAwIBAgIEL4rPNzANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEfMB0GA1UEAwwWVHJ1c3Rl
+ZCBLZXJuZWwgVGVzdCBDQTAeFw0yMjAxMjcyMTU5NDhaFw0yNDA0MzAyMTU5NDha
+MIGAMQswCQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5l
+dyBZb3JrIENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEj
+MCEGA1UEAwwaVHJ1c3RlZCBLZXJuZWwgVGVzdCBDbGllbnQwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQC/O+/T5vzk4N45xzpTy7wJCA0Vqrg4rjMW38Ne
+L03rZI937BN1LFhvSVDp3aKSdA8dgA1oMZxFbNhYw1C73PUKP3GhP+u+Fd4aUwUy
+mkSGYPW4XIESDcc9hVRtWDM5PH2GtMxuT9xOLJqL4FIjzBjjuQpI5VltF9gdgheX
+kpCUhk3A3XWqoyQ7exnq8rxfcvgmto+NUtuIjaHxbuDIzm+tCwS4LFgYVuCEc3G3
+MwIFW7VNJyMYdNhejBfAu0i0w91VhvWg2s2fEG0Xcel5TsP8a3dYGKaCVZ3C2MsV
+fQf8/cI6X6nn+vcfFvtAQhGAGfD/ry9rOuXELElb3cezO2Q3AgMBAAGjMzAxMBMG
+A1UdJQQMMAoGCCsGAQUFBwMCMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAAATAN
+BgkqhkiG9w0BAQsFAAOCAQEAKtc2fA9kFJb8/bxJidpQjUAqiRgFOW+VYA2DTpQJ
+5+2mgEFutClVGjEdcmHseO14a5l6W2KSbJAYpv2ZIhFuBXpPsHk16H7j9SR+RmNp
+NkFhqWbEhdOVm+KNS/4M4wRl0s5RnbXpPvxdvwGIdcplUck+cFWtcSCU1OZYZL3z
+F4nN+pdoydLUx5zzHMkQSoFj8Hwv9IfIXhDFLkOhvGE8BS0r7dR2q2TEzA2cBg0R
+KEqDGzWRAuAZv78Cg7TfIVgTA0DYaZIL+6F3QK8UzFrQLScbfKCXUJudD/P/AHvj
+s/RYLhJGDEOjHov5Egixkd9DPBtq91N3eCzdSyZrIGQ73g==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCyEft2v7HnaCLL
-RFTiu00f710LsW768cpGE/fdTr5nngTKPQiJ8bzNQ2gqplzHrjzTF5KDwN70al8+
-xzpsVG8STqxMyR/6c1oFqMsdLr07NJznUZGeb2Q2gjUvz2JKw2XMNrf4Vqmw8lOS
-rdYyQT9sKGe0HI05hhdlNFzQppHPZs0Kd6xGd7Z72NL8AZNNaMmnDbh0hNyVPmr6
-rrsuo4qzXjRgwVWyaEt5y83rWGt4GxgX3GxBCQ0dC/L3Bizk9X2W8jdmiCOVlT3h
-mRpsyR5rKlPrIVE2CSxmkL0G6eOuFnuLNW/Eky+0zML25r4re6Mjfw3Rv2b6/ntw
-IPLPYh5XAgMBAAECggEAMO6iFEKfB4DlNsgjL17a1bC399OdNJYmyFUKYqUVy3Fv
-zYcyBn4ILLueL0Ih8rkde8BZgZ0JZ06nt5+VnVkiYHx/+mW2RONX1IBKuE00sMVH
-bIVMp6XietwS831gfDzvh0tuCG8AGGCuuHrOhmbJn9YGkUbbQ/hmC2h1LNzo6n3W
-sYCnBnhQJ6janc4OXJ7k0Sr5akJaw49A0kpB+xp4V00vwDoVZUBSYUQu7qbpuhxx
-Q9YkIZ6l9NSY4i3MPz1TX3gEM2Bq8CSvVZ/YbC1eVRmohxxDSXYlk8WhlwlvAQ9N
-sYJ1ur/3Xz7sDuO500sZRYrv+GM1R5s/NiyFBRItsQKBgQDktyqb0YyoIT2mHF78
-SU9z+EHT52CBfLk+jCRKYDvRGJFXKyYTBafz3+SLudY3o1aw2C+fHe4vZd4gYyGH
-uXI8vsym5gjOBTRl0oKHW9U6sMcQ4ZXf1eFE6j7XFK1wpHh50j3lV/szvB868B8N
-A5JG9cYsm3Tzw+9iWv8/7cOEvwKBgQDHUCPutVJyq54y/a0imUwTkUKqflVIsDzm
-BEDUuBwF8W8ScGqxWVOsQg9mM97Z5+1AkMCTMyDmOT1K7RGv1K27yzSYM3FT73uX
-DH+b+pEdnpyN1ytX0hy+rNjsJhQMpz6G/ewbvglR0+KMpim5NzGiykjUM1wnET1B
-zYivO95UaQKBgCnnIQhROQropCnV0tU3/TWLC0xufLDcj/fUpyV1QiBJ9v7Yae5c
-P+wfXfj3gDbLVyupP/hP/H50lGCsqMz7/eEBN+9v/7b3HyV0jvOLsKJDFwWRvuq2
-fcIphH/VSv1zNJtlGG/3UY+l7LbYnWe9+sPDbZ5okOHESQxlDZTB0+tzAoGBAJc4
-E3sZ8Sr1UHrJguGcQ18ZN+ZZIWWb6ShvE60Q3poXurjXt+tEpbotCLf3JN5ZG+V/
-rcxA33Ys+XbudRvdlc7Eduv/I72WFkPdBLiYHB/H5mmrVcQ0swBr7c0FevK6tTMA
-VnIZ9cIyq1EhBMj0umETbrwpF4LAjqRtR4YEO0P5AoGAWavKrREBUVtSqEo9+XiU
-7Hw75KCThDTTxByurkGwZbzjNAuxoDOWPDueAfqG5rv4ld1c6SjDyI7eCDzjoriK
-s1Nmxog8Wu+2Vpe7Q6KDsPpLYY4Bfz6ikWHuVFAeryfPWizMIWofJx5dNIDpnKPb
-PUTe4hDUB68LIOTJVfirP78=
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC/O+/T5vzk4N45
+xzpTy7wJCA0Vqrg4rjMW38NeL03rZI937BN1LFhvSVDp3aKSdA8dgA1oMZxFbNhY
+w1C73PUKP3GhP+u+Fd4aUwUymkSGYPW4XIESDcc9hVRtWDM5PH2GtMxuT9xOLJqL
+4FIjzBjjuQpI5VltF9gdgheXkpCUhk3A3XWqoyQ7exnq8rxfcvgmto+NUtuIjaHx
+buDIzm+tCwS4LFgYVuCEc3G3MwIFW7VNJyMYdNhejBfAu0i0w91VhvWg2s2fEG0X
+cel5TsP8a3dYGKaCVZ3C2MsVfQf8/cI6X6nn+vcfFvtAQhGAGfD/ry9rOuXELElb
+3cezO2Q3AgMBAAECggEAcIotUV8WZPuQzB/ay4WSWx5J1P5q+7BIkKWOq9ba3DSJ
+2eEsckBuqs9Sts6f5eA3JP0+5pqLhK/RgisvT99wtV8w19xuN6dW1dcVr/npacuV
+z7Fgo+dH4YSdctv9CSn4FVZBGIoW9Ep7iOWycS6jVyCGVO/j+LeXj4YHrEOsojqC
++YRTv+LbY+aWWcL7SuiATIEqWqFvjqmW5sTtmblUG/TtW/D8XB8UQdwEbfQsZx0j
+uVxDXx4qLGaEOMjE1DQpzTicNQ3z8r4Ij4egfUj71TuByrVCqn4PFcaq74U/1BPA
+C9CMm8qdD79qpLmum/y4SyXgahajQHLIVgnAR9y+AQKBgQDiaGqpTL6Q02TEtV8X
+B2yt4Ep5kiNfNKTqXjpIuOZGJOIJoSWt5UZ0fCcXfza8/cirDtbQ9ZXubRGP8kwD
+uAATCWY+cpjKSbz+tIxa3C9S/mL1LZY9AZRJMpWnNF3hTCCVBhjQnqIDxWzW8Jbr
+AubgCp/2EMaUi5nGXIpU4UwGVwKBgQDYOpw8OP819QET1vEfixUjGz3KExvgecMw
+2vj8U2fHQomrRfpzGY2GhgollR7gONeFgDZSsqh6Cts5Kx2rR68KfMCX3dk88Xub
+U3FszxTCugPlKH90tXrNPJcI+Bz6cuynmt0syR0ZntNVFWNV7Hoj3LLAY7NCdwg7
+QKBZlhwlIQKBgQDQsiMvb5hxcwp98Bl45tUc6ZR8v2Jvjd0+VCExi45ntfPNoIdU
+5fStxwtZs1/Hkb95PjJxZw8POeZoY5YCD4eyBIYEpimEvbfCqLZ/wlq1C9w32A+W
+qHABkOk1uSWYWU3nUDlrg+4fv8n1zsuuUXxzpBeTAB+sKYpTuFWirBIh/QKBgDGf
+QbuQWQFI+LZU3YEfqfokhkmZmQwq5WCQ4BMIEQjpfC6SIKfJdXEp0apOToemg89f
+XRgdaAyZ8TVtb6GfEcyWVJyFjRUvVe6Pd7hAzcLibYJpiNZ/z27KON8WEZBoT2cn
+YxqkDMmUaWtdPS661kzkmSENwFXAe2Mdsa7dhBgBAoGARAs0NF71RQniqTvSy+SB
+GJ3/sjCFrs66IbejqtbiF0aWjpPoIGRLh+lOYzSpeWGX3blhs6YkzYYcsamYVdaE
+ltxC5Cw3eMke2Z8X3jrLyoGJUGwZzrURxcWvWPJsbUJAfu804htLAt35aHdmWGKT
+mVeQMft12zXHLOIbQKCN4Po=
-----END PRIVATE KEY-----
diff --git a/jstests/libs/trusted-client.pem.digest.sha1 b/jstests/libs/trusted-client.pem.digest.sha1
new file mode 100644
index 00000000000..246c340c1c9
--- /dev/null
+++ b/jstests/libs/trusted-client.pem.digest.sha1
@@ -0,0 +1 @@
+C142DB298EC99AB0277EA16903D001DF297A7F1A \ No newline at end of file
diff --git a/jstests/libs/trusted-client.pem.digest.sha256 b/jstests/libs/trusted-client.pem.digest.sha256
new file mode 100644
index 00000000000..7eb442a40ea
--- /dev/null
+++ b/jstests/libs/trusted-client.pem.digest.sha256
@@ -0,0 +1 @@
+19998D06B253E27ADE91239F6EC9B94329EC16369B09D6FDFA35FD2685652027 \ No newline at end of file
diff --git a/jstests/libs/trusted-client.pfx b/jstests/libs/trusted-client.pfx
index cecf97cee3e..c1d9bea7f94 100644
--- a/jstests/libs/trusted-client.pfx
+++ b/jstests/libs/trusted-client.pfx
Binary files differ
diff --git a/jstests/libs/trusted-server.pem b/jstests/libs/trusted-server.pem
index 92a8e3ca633..0895bd191b5 100644
--- a/jstests/libs/trusted-server.pem
+++ b/jstests/libs/trusted-server.pem
@@ -3,52 +3,52 @@
#
# Server certificate for trusted chain.
-----BEGIN CERTIFICATE-----
-MIIDmTCCAoECBHL7ykYwDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxHzAdBgNVBAMMFlRydXN0ZWQgS2Vy
-bmVsIFRlc3QgQ0EwHhcNMTkwOTI1MjMyNzQyWhcNMzkwOTI3MjMyNzQyWjCBgDEL
-MAkGA1UEBhMCVVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9y
-ayBDaXR5MRAwDgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxIzAhBgNV
-BAMMGlRydXN0ZWQgS2VybmVsIFRlc3QgU2VydmVyMIIBIjANBgkqhkiG9w0BAQEF
-AAOCAQ8AMIIBCgKCAQEAvgLzw1ZsakCT8sOZDCQcaPZaIN6YEL6nQehjeAHDBCHQ
-MvaGkAxgk8GW+9iRzMBCMsNxDju7WiLFCQSv1qeeXbpSGl0TXPI4wUPvs83A9nSq
-0hBuw9XY85e1oXcNWQaP01EO0rR8S9bAovyW4EDvJomAopvrkFoI/eSfcANlh7rk
-6DvpZE2Ml5yGDPGLDfv5tuYMPckOV2cHo0puZqRn9Dr8M5czDSflUeH1LMYQsGwB
-zKn/tQ9a476kqwpyf6lrj5/aTpK3vIA0tGrOj5eXs1HvUUSHpstf8OdWJRciEf9I
-L5CNLRUhP7nvczTwbVRR6CQjMPFt1LO/tRLCOINH7wIDAQABoyMwITAfBgNVHREE
-GDAWgglsb2NhbGhvc3SCCTEyNy4wLjAuMTANBgkqhkiG9w0BAQsFAAOCAQEAKT2i
-1FXjd/I9pPcr5mCuePbqtNwTUfiFJvcTSPopKYz2IdEnStJHPezFQ37Z95fFAg5o
-ChZplq1jBoWDOX2XY02nIKdj7Yc157+qnqocrvQbJlUI9MWfwWoq/CqkvMG2uSmQ
-FRuHsHZi4vEK254IhB7kYgOfBMjhsX1+sE96SA0DcLAHyYoMckLgfTnLikS9ir0N
-zijVD5NE8mjV6dIOZeh/q54QdS3Ea33DMHegDDMoe2x/Eh/0Y4XU2k/Z48JGe2/d
-afsQTWQPr2qJcusi2MHTRGUsaP+UEFl3l9nM8IjaJ4dsw6umd631DNay5yNR5LsY
-7qpA1wjwbBvRR0wTpg==
+MIIDrjCCApagAwIBAgIEOQrseTANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEfMB0GA1UEAwwWVHJ1c3Rl
+ZCBLZXJuZWwgVGVzdCBDQTAeFw0yMjAxMjcyMTU5NDhaFw0yNDA0MzAyMTU5NDha
+MIGAMQswCQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5l
+dyBZb3JrIENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEj
+MCEGA1UEAwwaVHJ1c3RlZCBLZXJuZWwgVGVzdCBTZXJ2ZXIwggEiMA0GCSqGSIb3
+DQEBAQUAA4IBDwAwggEKAoIBAQDD4DY+/aqU2WCuHbCJete03bAbdYzQHGDlbfql
+0GcXON5aJEUwCyXbnKZjcxi55vxItF4KTau6ipiVXq+ukt8Maixi8gifAIYUVfft
+Naiitn2JubzfatjKfCVpQI/JnFOhugSw/obJPhAqw02g4Ul6tDvoqa7rC9wRmKXH
+TyRr5xkrRi1dNhWX7s/hvRYwoMX35ipKhW7RepHxG6byLvKlKWCMgDhzIphNRNYp
+DopzzvvL9Of2siab51lzFdfYZ4cMGZt3o+uY6Kmb63glv60Omf21x33hGnU2ucrd
+yYxgF43+8J8RJeVGGzD3sjE2ZTI21ZUQM3/BLT+PnHgB1u2XAgMBAAGjMzAxMBMG
+A1UdJQQMMAoGCCsGAQUFBwMBMBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAAATAN
+BgkqhkiG9w0BAQsFAAOCAQEAtGG7O9KZ6fO6PByz/C9i0O6ClhkKuq85kaH2hCpA
+apJ2eM1LcfmJ9DgiMmvN6QevTnkkJG42MXqKVbd5mglnmGPRFgQtqIkFS4ERKvj1
+3/IjwvPP1k0rCbuJQ6J8tmEmZDIATYWd7qauH0K2KvtH9sjB+9ghTfBZzIx2Y5We
++k4ETF5p1Kqu7aBmEXOfcldh9iedqkDUNP7fWQKXPDJ8a5oFVTkAU2MZQCczOp2h
+SNdj6jb8qaWoUp4cVs0sswC/nhI4DbNrfQXmRZisMuywRP+gzH5vr9VUsRvHAan6
+orla7WPITYTuWf8qV2grNJwQaN0AhNktXl7U7h3kIDd5fg==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQC+AvPDVmxqQJPy
-w5kMJBxo9log3pgQvqdB6GN4AcMEIdAy9oaQDGCTwZb72JHMwEIyw3EOO7taIsUJ
-BK/Wp55dulIaXRNc8jjBQ++zzcD2dKrSEG7D1djzl7Whdw1ZBo/TUQ7StHxL1sCi
-/JbgQO8miYCim+uQWgj95J9wA2WHuuToO+lkTYyXnIYM8YsN+/m25gw9yQ5XZwej
-Sm5mpGf0OvwzlzMNJ+VR4fUsxhCwbAHMqf+1D1rjvqSrCnJ/qWuPn9pOkre8gDS0
-as6Pl5ezUe9RRIemy1/w51YlFyIR/0gvkI0tFSE/ue9zNPBtVFHoJCMw8W3Us7+1
-EsI4g0fvAgMBAAECggEBAJ2UdzKFpu3LVqdbPb8K56DIxeBCmlwwsSeAoZVx6Jix
-rifFub0W9rUzNJLyfaAPxhaxbT4/nVXYRg3/nBBp/HWAwvxoOlm37Aej3tQADEqY
-YN5LkIDLBdym8ZPR1vkA7yByNdfapMaEeEfzMPEUCQGtwUeaBZc2hASDqRJNTtNr
-ZUiXGaJvbpgqLAhN1N40TJstUwYAq6nR/hljSZ22EmI13oSgddi9NE49v4R0JL8P
-EsxsE9uLynz1TVS5thshX3BrN+Iz8zcJqilclOkagQycL+WZrjpfLn4HBLdCPr3b
-3+TtQHq/BIq+Qdl6yCk6Vf1C5xpu0U6PAIGJVOjrXJkCgYEA8vdb+l1iQlsd4XNX
-ipPKqyewok3HRpvZfQDAVxBOydGnr5xSt5/vT5lcM8oIpCsx/vF0tr1qGWFq4qCY
-J+j0U/TdjcsVsicg6xDQsIwviU3vXm2KqSTu41T/wSvKzuv0X9MlzP7aY5U/NR/X
-VY6e5pK2TIqC5CVEgeqgDZl0SnMCgYEAyDReeFuM4U5Y4FJ4S59azdC427uMCb9X
-acVFIom1kTWKt/cb9qIWVSXIcnxGbls9zHwnWLEIcj3A4q/B6+lGDF8yRDxnaOfs
-JJuiOg8STZAfoy4SmWxydmU2g/IGoQtOFt6lhFt3xfiUNPIQzHQRsIlpFsWt23Xw
-+NdqclRwgZUCgYEA6ggYQb4nwpDv5FTs0t/vDRQLERtoQvwl70GFA5gCvGXFZuNl
-zdgxdHPdm0kVL8UnwFGmQcuL4myyvx8/0NmUVzZ7HnSrLlKAY8xrqFMwCsrWMhfD
-w49+x9z9CX38OXqQhqjlNWOayudc3fgQvCnHp4NUM8ALumSna5irmM3idT8CgYBc
-3F2NOfmob6ytr9L4UJvPpyZ3VRBpXQTwnH2qvXEoP0tudQHVbe0p5XKKF7abbVrG
-xDeD3elrA9W5z4gFIphJGMa5+8KDWD+h40Zl46O7skPabn5WB4U4AU49+T616AZ6
-eR8Qu1Rc0SX9QOIl0xh5Z+MEmwA/MP9qjJBlI2Fj2QKBgBRs5DyiQfSRC0vNlSg7
-HYBeaxx2gu0LbNg7dFizdCjhRoFhqfRI+uUZAtHnjs0iw3zedb+7YGukNR+5a3AS
-IWmjFU7wsi7ydnrWlALuNFt4oDE+JnH3AHWZ5vrlevJyVRwsE2YVRSoG1M6CT3Y/
-/5yVKapUys2TiPtZb+V/6wjD
+MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDD4DY+/aqU2WCu
+HbCJete03bAbdYzQHGDlbfql0GcXON5aJEUwCyXbnKZjcxi55vxItF4KTau6ipiV
+Xq+ukt8Maixi8gifAIYUVfftNaiitn2JubzfatjKfCVpQI/JnFOhugSw/obJPhAq
+w02g4Ul6tDvoqa7rC9wRmKXHTyRr5xkrRi1dNhWX7s/hvRYwoMX35ipKhW7RepHx
+G6byLvKlKWCMgDhzIphNRNYpDopzzvvL9Of2siab51lzFdfYZ4cMGZt3o+uY6Kmb
+63glv60Omf21x33hGnU2ucrdyYxgF43+8J8RJeVGGzD3sjE2ZTI21ZUQM3/BLT+P
+nHgB1u2XAgMBAAECggEBAKRUSG5UVnYGYOvykJbmbm2YxxRibD50cH5K5EuUKcj7
+tt+dKkaCM8KpC5bHiuj79o/wcizmuLoJaLV3+J/XLDW4JYDlWYI76EDLVvK1X8MS
+owOWxfQSKcrGmIRS287ize8Sprju8JmI7ftSWqAsIX9GEjTBlrQvAPPqQrqRlRbI
+E3pZoWO2EJ/WjhbLUCmet9AIm+hfG6/CnnzvH0CIYDr4/CFaI3dzfD4Oeeoe6gEs
+KE/I/q1ya7JAA9o+wVNL3TpJ293yXSXxX+YcMSgrSpgwadkkDr+8AFplDwfJx1uA
+UTJs5SMeKym+jrQgxIAJFjLEuh3fClAfe+TgC1Pwc3ECgYEA9to/lMS99qwLX6aU
+hFeCeY199O2qtsGqG7Fb2R0LXgxbux9hAIFZkzAOma3ZUwvMJOmwO8K2CVGtGNfB
+uC5V6OSes7u73FsHzg6nVg5f4J+6V69QT3UhDNxmEmykrZ/3y2yrGBJdARuezrA3
+B/BWjvm1x2ZQHNOzliyWzWDgYmUCgYEAyyJgSFGWd60GqEGFfbhh0GvIhjAAnBys
+Rha2Y3rxfwhzP4We9WlBawTbdi+SIeKyoIUVvMILspadyhJCqlmKjVX2E34ejvJr
+bqrZsucWtDu3pLbdpxIgkvadilyPeFuJLfSbevuHWePynjfgXNTLqeXKao+hxbIx
+8uUo2MoDEksCgYEAnkXpJlXPBu3gjP+dkg0Z1x3leLk6D9u0WfUp0tdQhoid+Chy
+ZYSKDlltwxM4mIqj5bcADBEX7nmz5o3P42uyIZUUPGFOXkbvhirXF9I3nypKrBX4
+BDoxarGVsJKAM+KxWnjeapy7jQ5MkHFjl2990EZDSwpKq3EBYHRObHiE5hECgYEA
+sh4wgvlXkRTdM4hQf07AJjt8l31b64eQ39xmjZBuVc+ZDugh3FsxC6A0t8s6vg/E
+RdCsoNkd3LkJHvkoD6t4PDpWDf2W2g1jeqTBQ4gydlOu0fWvIiJZAcTRm1NSUl0h
+SnSkKRCJPJ8OTQH98Ch/dTiTZyEO3wVDmxKp4H4yd0UCgYB9kUwKpSJZmOE36y6w
+mXT1YUK0lR41v6jDEJVBegNChVuXuFk9hEooyCmOVRRGGm96Qu+tAzVZcoya8+LE
+YJJQD3invZW+IJhrwKlgDCqSqaiAfOz+Yw/H/vUaohwjT6okgrC3uzEYnneL1DA/
+7XxoLcbhaN51O9KJ/U0jZ4iEQg==
-----END PRIVATE KEY-----
diff --git a/jstests/libs/trusted-server.pem.digest.sha1 b/jstests/libs/trusted-server.pem.digest.sha1
new file mode 100644
index 00000000000..4a0f953a8da
--- /dev/null
+++ b/jstests/libs/trusted-server.pem.digest.sha1
@@ -0,0 +1 @@
+50922DBE6EFF8BDFB3EA8054EEF9B2A090B9E83A \ No newline at end of file
diff --git a/jstests/libs/trusted-server.pem.digest.sha256 b/jstests/libs/trusted-server.pem.digest.sha256
new file mode 100644
index 00000000000..fb2bfdf3fcf
--- /dev/null
+++ b/jstests/libs/trusted-server.pem.digest.sha256
@@ -0,0 +1 @@
+3928416446FFAFFC95B07E9FE82F223F2CDD01689DBE513172B7A2D27904B616 \ No newline at end of file
diff --git a/jstests/libs/trusted-server.pfx b/jstests/libs/trusted-server.pfx
index a434f9da414..57b9c308019 100644
--- a/jstests/libs/trusted-server.pfx
+++ b/jstests/libs/trusted-server.pfx
Binary files differ
diff --git a/jstests/ssl/libs/localhost-cn-with-san.pem b/jstests/ssl/libs/localhost-cn-with-san.pem
index 556ffb85b0a..d91b1ae5069 100644
--- a/jstests/ssl/libs/localhost-cn-with-san.pem
+++ b/jstests/ssl/libs/localhost-cn-with-san.pem
@@ -3,51 +3,52 @@
#
# Localhost based certificate using non-matching subject alternate name.
-----BEGIN CERTIFICATE-----
-MIIDdjCCAl4CBA3WteIwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjc0MFoXDTM5MDkyNzIzMjc0MFowbzELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxEjAQBgNVBAMMCWxvY2Fs
-aG9zdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMn0WG6/vxv4bmh+
-lv1axKQM/fIiRavdIFqJOYw84Km+fahcUTgFY2oOEAxQ+y8nN/2rpXrZYlL5etqs
-iv/1m0EZDFl+SCOvxULrmyd2GhFJeaJu+O714e1lxpBPDT2LWKCa3g4qK+krKWMU
-glaAGJKrYmyfhKdMUN0XN/ISxIuwzZCbSQ6/N70cU4CFZyzmxixSyW7xZR+wsIgg
-pX1BrMbsGLcGoVknWt2yrp/qFKRrBda/b3k+gs6zSvpJvt1dTNuGG4drPF+pfvA5
-4NPelXvccdmz86Fg7YULE/hCbrDfzngkMgqD3Em9sXarlA7GO+tCxp2uyV52FBq3
-dLe9Jq0CAwEAAaMaMBgwFgYDVR0RBA8wDYILZXhhbXBsZS5jb20wDQYJKoZIhvcN
-AQELBQADggEBAIpIUe0R7nHDGxABrK9nAIVF2etluEZZz18RnaPn5cLzjwbhbDQy
-gKTHt7nv2xWDlRqPv4GwcsyqpK9Sr4tjFgwBVzGlNEUSh8cLFmWOVz+9yZnk/mGm
-Y35jqFM1VgnWGU+NuC71IEfUJsNV1intMECHY0IaglmjDAZCJ2nWDfNT+qrS7zpJ
-+c/El6XYx9Wx9BoWlEY+4Z/ipabXzivDwKw4G1UoQvVmmU6NywVhQmSudiySBSce
-JEPIa+RCCq+ahtSWilpDXqpKvieY0M2go46MHgUgUfOMnsUTlTgFjgRVMqkXnccI
-alfeM9ukvz0JXRYERI8GCTVG+35vSw13MGs=
+MIIDkDCCAnigAwIBAgIEV9X0HjANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQ0WhcNMjQwNDMwMjE1OTQ0WjBvMQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDESMBAGA1UEAwwJ
+bG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5uaoVP0l
+xsKbPIr8qNsd7OQ2Vks2WzaPiwiyQ7uRd8+kRymJE/F+nKAgZvUFebjT70FJs/kI
+D1dQqcAn3OxOZFSCv62i0Owp7oLrQ3fiQR2xwuQVFa2D8hV9z8vLc7CZyiKdi4EU
+EZOv8N1K8KxThV7E12YI5OVXQl+oniXwbDf4Dkiex7go4mgIqv9SBDjBLvWheCkP
+WTSGULtsL8Dg42neqR7Uh/4Iawm7ka0czwluM0GrLjDAirdw6OOBYNuc3Be1XhjK
+/5zY6JOt6yeHce2jjte7YzLoCBv0hm1sVyIkocrxPi6kvC8crw+RGI0m9ijZIq0K
+N90aMGwVq32jkwIDAQABoy8wLTATBgNVHSUEDDAKBggrBgEFBQcDATAWBgNVHREE
+DzANggtleGFtcGxlLmNvbTANBgkqhkiG9w0BAQsFAAOCAQEAKroMjfypcbZ5Nq6x
+chBMOgVZRMtleqosP51zBk8KTkLSyfQCYbwM+lq+Us4Y5zzLHjHUmQltJi5Yn4l6
+Voe33UEAi5xA0SEPGBvG2uzGzeY6ShQl+BhfUxgMWxaitm8/Hr0wnpm8AqOglskb
+9GozqQHfWISwY+9JDxR7aLaFofgRhR2iZEqbELkz+1KwOoUtHm8HMvS+k6tZziTE
+fO6Ergg8iCVixvtV0EOKUMqmiUSXH0ZT6uOw/z1XFloJSolg95g07z5LgCRMe+zT
+zwNOmnHdJwJTDYjXMQS1sEdvjQvBKObJ4xIKhkwqrTOx+PY40yBNYN2iPIViWEOv
+sHxp0A==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEuwIBADANBgkqhkiG9w0BAQEFAASCBKUwggShAgEAAoIBAQDJ9Fhuv78b+G5o
-fpb9WsSkDP3yIkWr3SBaiTmMPOCpvn2oXFE4BWNqDhAMUPsvJzf9q6V62WJS+Xra
-rIr/9ZtBGQxZfkgjr8VC65sndhoRSXmibvju9eHtZcaQTw09i1igmt4OKivpKylj
-FIJWgBiSq2Jsn4SnTFDdFzfyEsSLsM2Qm0kOvze9HFOAhWcs5sYsUslu8WUfsLCI
-IKV9QazG7Bi3BqFZJ1rdsq6f6hSkawXWv295PoLOs0r6Sb7dXUzbhhuHazxfqX7w
-OeDT3pV73HHZs/OhYO2FCxP4Qm6w3854JDIKg9xJvbF2q5QOxjvrQsadrsledhQa
-t3S3vSatAgMBAAECggEADsKzK/ULzMmNmEmYU5Asyyi/7tCecv9IfBWHhT511TI9
-EO8eaI/MQlYgyiWpFjsxlnLTN3VoAFSHrC/sQOT8ofdotanLMACK1GdQAcRaB2Vt
-ZHfj7eM+zhEgQC/m8dabdbGcBUED0Jj8/2biV9wo759jJDlMgsXLKz2lMyY4A1WZ
-kwCrdTqSn+TqA4+t7RdteY1YQZIV/qKNABT9CCRyH9Hqr5MyByYGiLtsrimI8WH/
-/UlE4R8/dHI5yA/FrtNgPM7QB1UElMBHaixWGUJTWSIcZtGuZ82N+uVjgVREfeML
-3RmDfwRAsgy3oz2zisQmz2qJDDdO1qJSn34ezOmYqQKBgQDmlAK0TnoxlYExmHWg
-fqm1Ee2n6rls14y0lm1GP0NoTOakSiZ9yBbQwYNNR7/P7YCppTt4/EdO2Skgpqg6
-KEd8ur2zsjWSEbMb/Pd0OB+pLUKjfrMQ+Kft8lalpcO5OcF2RmQnLTZAn9Endx/l
-TikvmB3Pq3r5RcfNAMDrrNrN9wKBgQDgOHDmht5Pq2zasVnFW1OydCNneuameREV
-kFM4D2raUkGbQNft/yhkjStZkEVAmooWHLYxJkWFo5KY8RpRJ50vW01UzH7jnA13
-PCvbJ1ITxzNuUbMcg4b8V6D0pM/Y8b7Me24iI1RAJntAx/+doAdRnLggYQcTp1Dl
-ahce8/0XewKBgDSqT+fRGPXkWQrz8MIEzExwWOEGqu2iWiART8pAvuu+zNtvmFUY
-c6Wg3ZW0MqqSa9XTyL68mKj4zv0HM9t8wb9Kg/PcW4IOiuN0pyyjeQ/SJ6tiUBIr
-SWf+9y2ErCzNdVPHhi6wk/i0yDgEbIOak6usSfraBw+Ska1QY8AwzhVHAn9UFNZB
-nFHBjodDez4uxBCe2u5r36qewselTnnmi+GF/VKc5bQTi5uaGVYoP/G4SDuAD0RD
-KhboBm7y63by9+f52kMliYoL0Hk8PVQ02ons4MZomDqSdsAn4LR7CVLoB7+E7sRe
-COGPLN8La/RvJ5OXBy4E9l2xAQ1U+nOxJ83BAoGBANHLPoIQ2lug421Kqc07P9rI
-66CVYX8XQrpqFHPytFQv7SQkUU+cp+7qpo33b62FkV5qi+oZ+bqyQ6Ung5Ro7R4q
-2JFLdxRw1nKVCFog/WFvs9XSw8tJUW4pnEcXLBtbWpozmhe5ZhgFes1LldPSgYXK
-XC6Jr1/6OJQGM4wklSiS
+MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDm5qhU/SXGwps8
+ivyo2x3s5DZWSzZbNo+LCLJDu5F3z6RHKYkT8X6coCBm9QV5uNPvQUmz+QgPV1Cp
+wCfc7E5kVIK/raLQ7CnugutDd+JBHbHC5BUVrYPyFX3Py8tzsJnKIp2LgRQRk6/w
+3UrwrFOFXsTXZgjk5VdCX6ieJfBsN/gOSJ7HuCjiaAiq/1IEOMEu9aF4KQ9ZNIZQ
+u2wvwODjad6pHtSH/ghrCbuRrRzPCW4zQasuMMCKt3Do44Fg25zcF7VeGMr/nNjo
+k63rJ4dx7aOO17tjMugIG/SGbWxXIiShyvE+LqS8LxyvD5EYjSb2KNkirQo33Row
+bBWrfaOTAgMBAAECggEBAMqFgRuaNeoRgqsllNpd5e+Dcw1ZRsHWJyzhYcn62Gpn
+20T3b13osQ6bfBAR1M2giXMOpqCOSr157iwVeGFTeqaRYWTR3T62BUlH1yYEHpTS
+gLnZ54xt9o78vq7lpvs/6IPcvKZBfuKz0NvInRRfcZpHNwteWWq6pUB4OqMLz8Z5
+3j9mo+69izUOaTbLptXngV9c0TYi2J7JHVwV7nxZga4sbq5btxN7gTv/M6dKKEvl
+CB7p/aD+EVMUgIICw++FvykgOfCXVbUEWld97k68R+UY805xec15ovAIIwzPWViG
+ry8yVUewVM6a03AOHEV9lOtfyJOm683EnflvFVG3nDECgYEA8zDwjk+gDfbEC0+1
+C1zsC9ojyg3tve80chrnpwQfL8hrrdUWq0eHpL1boA1vYvgl5Uukqkj6xKFaJXFZ
+0QaDB6xTemxpeXX/+KffjgZbglvpm4Yr5C/tCv6U0lUx19ReQB9L+Qqpzg5kJvDc
+xc7eSFW3RPo7bZJJLUwLq3Np1GcCgYEA8xAA+3N2+/TjTOae4Ks1VtcvBn5shs4Z
+kg3IraLznpkL1SlQ4asxr3iy0ie7gWUIKS4TwELDjXnNprfgmJZfZMgE2MZfZwCO
+9P0/p+BCtqubekVFnMGezul3XzzT+wPCGoOlqz5VeiW6ognm9RBm5e0jz42j13dp
+B5z/wFatm/UCgYBVF1OkR8IWALjZyFrtjebdwsbxBOyhn5f3MOjLLIsI+hSLL1sO
+NSoF/2eW2fyWYYNI9q24E28C6/4RydaGZ8PjJG3VESfaouochAiZtinAtA5KJ6kl
+34sOZMOH0N1uylTsFMdNbWi6u5hZc7+byuVF5BALJ48xqJTIL6qJpAlskwKBgE3j
+Xf011fYNVl1JNbZXBsOqNvaEwrA8ETOdWSZTJnA3KPSIxdNa8ZQCQINZmhtvzbqs
+ekXM3y9RzdXT7JPY8/6uneb9QosWQbk+Ag0Ar0AsI6l90z3VSdeSNt989YzlemjW
+sNr8IZX/yxurwqfbNq4NXMFg6RTdvfljlQ0EeaOVAoGAR002FIKL1Z/3DqbVV+tQ
+FlOksFDTshG1Y9mDQAfTCSlNBeGDz/bQnSo1WWj/DXVLoHxpBglvFmWSajmOUa1R
+W4JDOK/W949pPYfP1QRvbJVGmZ/Y8u90GZbBjWQF+E9yLicESOpN/BH45FIbxQHQ
+2wH/9G1OCozBqCVXGhJw7CA=
-----END PRIVATE KEY-----
diff --git a/jstests/ssl/libs/localhost-cn-with-san.pem.digest.sha1 b/jstests/ssl/libs/localhost-cn-with-san.pem.digest.sha1
new file mode 100644
index 00000000000..1127761edbf
--- /dev/null
+++ b/jstests/ssl/libs/localhost-cn-with-san.pem.digest.sha1
@@ -0,0 +1 @@
+A8FBDA18A45E8945D1D6E08E77B3070314B80458 \ No newline at end of file
diff --git a/jstests/ssl/libs/localhost-cn-with-san.pem.digest.sha256 b/jstests/ssl/libs/localhost-cn-with-san.pem.digest.sha256
new file mode 100644
index 00000000000..4bb65aa4d90
--- /dev/null
+++ b/jstests/ssl/libs/localhost-cn-with-san.pem.digest.sha256
@@ -0,0 +1 @@
+5926109C2D0A4565771FFA92814319B5946DF5710A4F99A77FFF9A7881681376 \ No newline at end of file
diff --git a/jstests/ssl/ssl_cert_selector.js b/jstests/ssl/ssl_cert_selector.js
index 11c97eff270..f53c784f799 100644
--- a/jstests/ssl/ssl_cert_selector.js
+++ b/jstests/ssl/ssl_cert_selector.js
@@ -42,14 +42,10 @@ requireSSLProvider('windows', function() {
assert.eq(exitStatus, 0, "successfully connected with SSL");
};
+ const trusted_client_thumbprint = cat('jstests/libs/trusted-client.pem.digest.sha1');
+
assert.doesNotThrow(function() {
- try {
- // trusted-client.pfx
- testWithCert("thumbprint=6AE38B35F4551B6BDCDB89AFABE0B277046F2735");
- } catch (e) {
- // Transitional: Pre Oct-2019 trusted-client.pfx
- testWithCert("thumbprint=9ca511552f14d3fc2009d425873599bf77832238");
- }
+ testWithCert("thumbprint=" + trusted_client_thumbprint);
});
assert.doesNotThrow(function() {
diff --git a/jstests/ssl/ssl_cert_selector_apple.js b/jstests/ssl/ssl_cert_selector_apple.js
index 0f23f04eed6..7e059316095 100644
--- a/jstests/ssl/ssl_cert_selector_apple.js
+++ b/jstests/ssl/ssl_cert_selector_apple.js
@@ -20,12 +20,54 @@ requireSSLProvider('apple', function() {
'C=US,ST=New York,L=New York City,O=MongoDB,OU=Kernel,CN=Trusted Kernel Test Server';
const INVALID = null;
+ function getCertificateSHA1BySubject(subject) {
+ clearRawMongoProgramOutput();
+ // security find-certificate prints out info about certificates matching the given search
+ // criteria. In this case, we use -c, matching common name, and -Z, which includes SHA-1 and
+ // SHA-256 thumbprints in the output.
+ assert.eq(0, runNonMongoProgram("security", "find-certificate", "-c", subject, "-Z"));
+ const out = rawMongoProgramOutput();
+
+ const kSearchStr = "SHA-1 hash: ";
+ const kHashHexitLen = 40;
+
+ const searchIdx = out.indexOf(kSearchStr);
+ assert.neq(searchIdx, -1, "SHA-1 hash not found in command output!");
+
+ return out.substr(searchIdx + searchStr.length, kHashHexitLen);
+ }
+
+ // Using the thumbprint of the certificate stored in the keychain should always work as a
+ // selector.
+ const trusted_server_thumbprint = getCertificateSHA1BySubject("Trusted Kernel Test Server");
+ const trusted_client_thumbprint = getCertificateSHA1BySubject("Trusted Kernel Test Client");
+
+ const expected_server_thumbprint = cat("jstests/libs/trusted-server.pem.digest.sha1");
+ const expected_client_thumbprint = cat("jstests/libs/trusted-client.pem.digest.sha1");
+
+ // If we fall into this case, our trusted certificates are not installed on the machine's
+ // certificate keychain. This probably means that certificates have just been renewed, but have
+ // not been installed in MacOS machines yet.
+ if (expected_server_thumbprint !== trusted_server_thumbprint ||
+ expected_client_thumbprint !== trusted_client_thumbprint) {
+ print("****************");
+ print("****************");
+ print(
+ "macOS host has an unexpected version of the trusted server certificate (jstests/libs/trusted-server.pem) or trusted client certificate (jstests/libs/trusted-client.pem) installed.");
+ print("Expecting server thumbprint: " + expected_server_thumbprint +
+ ", got: " + trusted_server_thumbprint);
+ print("Expecting client thumbprint: " + expected_client_thumbprint +
+ ", got: " + trusted_client_thumbprint);
+ print("****************");
+ print("****************");
+ }
+
const testCases = [
- {selector: 'thumbprint=D7421F7442CA313821E19EE0509721F4D60B25A8', name: SERVER},
+ {selector: 'thumbprint=' + trusted_server_thumbprint, name: SERVER},
{selector: 'subject=Trusted Kernel Test Server', name: SERVER},
- {selector: 'thumbprint=9CA511552F14D3FC2009D425873599BF77832238', name: CLIENT},
+ {selector: 'thumbprint=' + trusted_client_thumbprint, name: CLIENT},
{selector: 'subject=Trusted Kernel Test Client', name: CLIENT},
- {selector: 'thumbprint=D7421F7442CA313821E19EE0509721F4D60B25A9', name: INVALID},
+ {selector: 'thumbprint=DEADBEEFDEADBEEFDEADBEEFDEADBEEFDEADBEEF', name: INVALID},
{selector: 'subject=Unknown Test Client', name: INVALID}
];
diff --git a/jstests/ssl/tlsCATrusts.js b/jstests/ssl/tlsCATrusts.js
index bf12c80f78e..2b787ef7971 100644
--- a/jstests/ssl/tlsCATrusts.js
+++ b/jstests/ssl/tlsCATrusts.js
@@ -6,8 +6,8 @@ requireSSLProvider('openssl', function() {
const SERVER_CERT = 'jstests/libs/server.pem';
const COMBINED_CA_CERT = 'jstests/ssl/x509/root-and-trusted-ca.pem';
- const CA_HASH = '539D91F8202641BF85C0C36C88FF69F3062D4AB370CECBF9B950A8B97DE72EAE';
- const TRUSTED_CA_HASH = 'AEAEBB1BA947A7C1428D39EF6166B83409D0245D28013C9FDD71DF9E69BEA52B';
+ const CA_HASH = cat('jstests/libs/ca.pem.digest.sha256');
+ const TRUSTED_CA_HASH = cat('jstests/libs/trusted-ca.pem.digest.sha256');
// Common suffix, keep the lines short.
const RDN_SUFFIX = ',O=MongoDB,L=New York City,ST=New York,C=US';
diff --git a/jstests/ssl/x509/README b/jstests/ssl/x509/README
index 72378a9b15e..346e06f750d 100644
--- a/jstests/ssl/x509/README
+++ b/jstests/ssl/x509/README
@@ -35,8 +35,10 @@ certs:
serial: 42
# Optional, validity start date, currently expressed in seconds relative to now.
not_before: -86400 # 1 day ago
- # Optional, validity end date, currently expressed in seconds relative to now.
- not_after: 631152000 # 20 years from now
+ # Optional, validity end date, currently expressed in seconds relative to now.
+ # Note that not_after - not_before, the validity period, should be less than or equal to 825 days, see:
+ # https://support.apple.com/en-us/HT210176
+ not_after: 71107200 # 823 days from now
# Optional, where to store this certificate (overrides global)
output_path: 'jstests/ssl/libs/'
# Optional, IDs of other public keys to append to the file
diff --git a/jstests/ssl/x509/certs.yml b/jstests/ssl/x509/certs.yml
index 68ecf419e26..b2f50d283ba 100644
--- a/jstests/ssl/x509/certs.yml
+++ b/jstests/ssl/x509/certs.yml
@@ -213,6 +213,7 @@ certs:
not_before: -10000000
not_after: -1000000
extensions:
+ extendedKeyUsage: [serverAuth]
subjectAltName:
DNS: localhost
IP: 127.0.0.1
@@ -226,7 +227,8 @@ certs:
keyUsage: [digitalSignature, keyEncipherment]
extendedKeyUsage: [serverAuth]
subjectAltName:
- DNS: ['localhost', '127.0.0.1']
+ DNS: localhost
+ IP: 127.0.0.1
- name: 'localhost-cn-with-san.pem'
description: Localhost based certificate using non-matching subject alternate name.
@@ -234,6 +236,7 @@ certs:
Subject: {CN: 'localhost'}
Issuer: 'ca.pem'
extensions:
+ extendedKeyUsage: [serverAuth]
subjectAltName:
DNS: 'example.com'
@@ -246,17 +249,22 @@ certs:
keyUsage: [digitalSignature, keyEncipherment]
extendedKeyUsage: [serverAuth]
subjectAltName:
- DNS: ['*.example.com', 'localhost', '127.0.0.1', 'morefun!']
+ DNS: ['*.example.com', 'localhost', 'morefun!']
+ IP: 127.0.0.1
- name: 'not_yet_valid.pem'
description: A certificate which has yet to reach its validity date.
Subject: {CN: 'not_yet_valid'}
not_before: 630720000 # 20 years hence
- not_after: 1261440000 # a further 20
+ not_after: 701913600 # a further 824 days after
extensions:
+ extendedKeyUsage: [serverAuth]
mongoRoles:
- {role: backup, db: admin}
- {role: readAnyDatabase, db: admin}
+ subjectAltName:
+ DNS: localhost
+ IP: 127.0.0.1
- name: 'password_protected.pem'
description: Server cerificate using an encrypted private key.
@@ -270,7 +278,8 @@ certs:
extendedKeyUsage: [serverAuth]
authorityKeyIdentifier: issuer
subjectAltName:
- DNS: ['localhost', '127.0.0.1']
+ DNS: localhost
+ IP: 127.0.0.1
- name: 'server.pem'
description: General purpose server certificate file.
@@ -282,7 +291,8 @@ certs:
extendedKeyUsage: [serverAuth, clientAuth]
authorityKeyIdentifier: issuer
subjectAltName:
- DNS: ['localhost', '127.0.0.1']
+ DNS: localhost
+ IP: 127.0.0.1
- name: 'server_no_subject.pem'
description: Server certificate with empty Subject, but critical SAN.
@@ -295,7 +305,7 @@ certs:
authorityKeyIdentifier: issuer
subjectAltName:
critical: true
- DNS: 'localhost'
+ DNS: localhost
IP: ['127.0.0.1', '::1']
- name: 'server_no_subject_no_SAN.pem'
@@ -312,20 +322,25 @@ certs:
description: General purpose server certificate with good SANs.
Subject: {CN: 'Kernel Client Peer Role'}
extensions:
+ extendedKeyUsage: [serverAuth, clientAuth]
subjectAltName:
- DNS: 'localhost'
+ DNS: localhost
IP: ['127.0.0.1', '::1']
- name: 'server_SAN2.pem'
description: General purpose server certificate with bad SANs.
Subject: {CN: 'Kernel Client Peer Role'}
extensions:
+ extendedKeyUsage: [serverAuth]
subjectAltName:
- DNS: ['localhost', '127.0.0.1', '::1']
+ DNS: localhost
+ IP: ['127.0.0.1', '::1']
- name: 'server_no_SAN.pem'
description: General purpose server certificate with missing SAN.
Subject: {CN: localhost, title: 'Server no SAN attribute'}
+ extensions:
+ extendedKeyUsage: [serverAuth]
# For tenant migration testing.
- name: 'rs0.pem'
@@ -337,6 +352,9 @@ certs:
subjectKeyIdentifier: hash
keyUsage: [digitalSignature, keyEncipherment]
extendedKeyUsage: [serverAuth]
+ subjectAltName:
+ DNS: localhost
+ IP: 127.0.0.1
authorityKeyIdentifier: issuer
- name: 'rs1.pem'
@@ -348,6 +366,9 @@ certs:
subjectKeyIdentifier: hash
keyUsage: [digitalSignature, keyEncipherment]
extendedKeyUsage: [serverAuth]
+ subjectAltName:
+ DNS: localhost
+ IP: 127.0.0.1
authorityKeyIdentifier: issuer
- name: 'rs2.pem'
@@ -359,6 +380,9 @@ certs:
subjectKeyIdentifier: hash
keyUsage: [digitalSignature, keyEncipherment]
extendedKeyUsage: [serverAuth]
+ subjectAltName:
+ DNS: localhost
+ IP: 127.0.0.1
authorityKeyIdentifier: issuer
- name: 'tenant_migration_donor.pem'
@@ -677,8 +701,10 @@ certs:
CN: 'server'
Issuer: 'rollover_ca.pem'
extensions:
+ extendedKeyUsage: [serverAuth, clientAuth]
subjectAltName:
- DNS: ['localhost', '127.0.0.1']
+ DNS: localhost
+ IP: 127.0.0.1
###
# Intermediate
@@ -696,13 +722,20 @@ certs:
Subject: {CN: 'Server Via Intermediate'}
Issuer: 'intermediate-ca.pem'
append_cert: 'intermediate-ca.pem'
+ extensions:
+ extendedKeyUsage: [serverAuth, clientAuth]
+ subjectAltName:
+ DNS: localhost
+ IP: 127.0.0.1
- name: 'server-intermediate-leaf.pem'
description: Server certificate signed by intermediate CA.
Subject: {CN: 'Server Leaf Via Intermediate'}
extensions:
+ extendedKeyUsage: [serverAuth]
subjectAltName:
- DNS: ['localhost', '127.0.0.1']
+ DNS: localhost
+ IP: 127.0.0.1
Issuer: 'intermediate-ca.pem'
- name: 'intermediate-ca-chain.pem'
@@ -729,12 +762,13 @@ certs:
Subject: {O: 'MongoDB, Inc. (Splithorizon)', CN: 'server'}
Issuer: 'splithorizon-ca.pem'
extensions:
+ extendedKeyUsage: [serverAuth, clientAuth]
subjectAltName:
DNS:
- 'localhost'
- - '127.0.0.1'
- 'splithorizon1'
- 'splithorizon2'
+ IP: 127.0.0.1
###
# Trusted CA
@@ -747,7 +781,8 @@ certs:
extensions:
basicConstraints: {CA: true}
subjectAltName:
- DNS: ['localhost', '127.0.0.1']
+ DNS: localhost
+ IP: 127.0.0.1
# trusted-client.pfx created by mkspecial.sh
- name: 'trusted-client.pem'
@@ -758,8 +793,10 @@ certs:
passphrase: 'qwerty'
name: 'trusted-client.pfx'
extensions:
+ extendedKeyUsage: [clientAuth]
subjectAltName:
- DNS: ['localhost', '127.0.0.1']
+ DNS: localhost
+ IP: 127.0.0.1
# trusted-server.pfx created by mkspecial.sh
- name: 'trusted-server.pem'
@@ -770,8 +807,10 @@ certs:
passphrase: 'qwerty'
name: 'trusted-server.pfx'
extensions:
+ extendedKeyUsage: [serverAuth]
subjectAltName:
- DNS: ['localhost', '127.0.0.1']
+ DNS: localhost
+ IP: 127.0.0.1
- name: 'trusted-client-testdb-roles.pem'
description: Client certificate with X509 role grants via trusted chain.
diff --git a/jstests/ssl/x509/mkcert.py b/jstests/ssl/x509/mkcert.py
index 269120a9af2..45ac802e51c 100755
--- a/jstests/ssl/x509/mkcert.py
+++ b/jstests/ssl/x509/mkcert.py
@@ -17,6 +17,8 @@ import OpenSSL
import re
import shutil
+import mkdigest
+
# pylint: disable=protected-access
OpenSSL._util.lib.OBJ_create(b'1.2.3.45', b'DummyOID45', b'Dummy OID 45')
OpenSSL._util.lib.OBJ_create(b'1.2.3.56', b'DummyOID56', b'Dummy OID 56')
@@ -37,6 +39,9 @@ MUST_STAPLE_KEY = bytes(MUST_STAPLE_KEY_STR, "utf-8")
MUST_STAPLE_VALUE_STR = 'DER:30:03:02:01:05' # ASN.1 value: SEQUENCE { INTEGER 0x05 (5 decimal) }
MUST_STAPLE_VALUE = str(MUST_STAPLE_VALUE_STR).encode('utf-8')
+# <= 825 in order to abide by https://support.apple.com/en-us/HT210176.
+MAX_VALIDITY_PERIOD_DAYS = 824
+
def glbl(key, default=None):
"""Fetch a key from the global dict."""
return CONFIG.get('global', {}).get(key, default)
@@ -138,8 +143,7 @@ def set_validity(x509, cert):
# TODO: Parse human readable dates and/or datedeltas
not_after = int(not_after)
else:
- # Default 20 years hence.
- not_after = 20 * 365 * 24 * 60 * 60
+ not_after = not_before + MAX_VALIDITY_PERIOD_DAYS * 24 * 60 * 60
x509.gmtime_adj_notAfter(not_after)
def set_general_dict_extension(x509, exts, cert, name, typed_values):
@@ -507,7 +511,7 @@ def process_client_multivalue_rdn(cert):
subject = '/CN=client+OU=KernelUser+O=MongoDB/L=New York City+ST=New York+C=US'
subprocess.check_call(['openssl', 'req', '-new', '-nodes', '-multivalue-rdn', '-subj', subject, '-keyout', key, '-out', csr])
subprocess.check_call(['openssl', 'rsa', '-in', key, '-out', rsa])
- subprocess.check_call(['openssl', 'x509', '-in', csr, '-out', pem, '-req', '-CA', ca, '-CAkey', ca, '-days', '3650', '-sha256', '-set_serial', serial])
+ subprocess.check_call(['openssl', 'x509', '-in', csr, '-out', pem, '-req', '-CA', ca, '-CAkey', ca, '-days', str(MAX_VALIDITY_PERIOD_DAYS), '-sha256', '-set_serial', serial])
open(dest, 'wt').write(get_header_comment(cert) + "\n" + open(pem, 'rt').read() + open(rsa, 'rt').read())
os.remove(key)
@@ -567,7 +571,7 @@ def process_ecdsa_ca(cert):
subject = '/C=US/ST=New York/L=New York City/O=MongoDB/OU=Kernel/CN=Kernel Test ESCDA CA/'
reqargs = ['openssl', 'req', '-new', '-key', key, '-out', csr, '-subj', subject]
- x509args = ['openssl', 'x509', '-in', csr, '-out', pem, '-req', '-signkey', key, '-days', '7300', '-sha256', '-set_serial', serial]
+ x509args = ['openssl', 'x509', '-in', csr, '-out', pem, '-req', '-signkey', key, '-days', str(MAX_VALIDITY_PERIOD_DAYS), '-sha256', '-set_serial', serial]
ecparamargs = (['openssl', 'ecparam', '-name', 'prime256v1', '-genkey', '-out', key, '-noout']
if "ocsp" in cert.get('tags', [])
else ['openssl', 'ecparam', '-name', 'prime256v1', '-genkey', '-out', key])
@@ -611,7 +615,7 @@ def process_ecdsa_leaf(cert):
subject = '/C=US/ST=New York/L=New York City/O=MongoDB/OU=' + ou + '/CN=' + mode
reqargs = ['openssl', 'req', '-new', '-key', key, '-out', csr, '-subj', subject]
- x509args = ['openssl', 'x509', '-in', csr, '-out', pem, '-req', '-CA', ca, '-CAkey', ca, '-days', '7300', '-sha256', '-set_serial', serial]
+ x509args = ['openssl', 'x509', '-in', csr, '-out', pem, '-req', '-CA', ca, '-CAkey', ca, '-days', str(MAX_VALIDITY_PERIOD_DAYS), '-sha256', '-set_serial', serial]
if mode == 'server':
reqargs = reqargs + ['-reqexts', 'v3_req']
extfile = tempfile.mkstemp()[1]
@@ -789,6 +793,9 @@ def main():
items = sort_items(items)
for item in items:
process_cert(item)
+ filename = make_filename(item)
+ mkdigest.make_digest(filename, 'cert', 'sha256')
+ mkdigest.make_digest(filename, 'cert', 'sha1')
if __name__ == '__main__':
main()
diff --git a/jstests/ssl/x509/mkcrl.sh b/jstests/ssl/x509/mkcrl.sh
index e8c55b3e4c2..89fddb90e2c 100755
--- a/jstests/ssl/x509/mkcrl.sh
+++ b/jstests/ssl/x509/mkcrl.sh
@@ -16,15 +16,18 @@ crl() {
echo -e "[ CA_default ]\ndatabase = ${CADB}/index.txt\n" >> "$CONFIG"
echo -e "certificate = $CA\nprivate_key = $CA\ndefault_md = sha256" >> "$CONFIG"
- DAYS="3651"
- CRLDAYS="3650"
+ VALIDITY_OPTIONS="-days 824 -crldays 823"
if [ "$2" = "expired" ]; then
- DAYS="1"
- CRLDAYS="1"
+ # -enddate 010101000000Z = expires on 0:00:00, Jan 1, 2000.
+ # -crlsec 1 = valid for 1 second from now.
+ # i.e. this certificate will be completely invalid very soon.
+ VALIDITY_OPTIONS="-enddate 010101000000Z -crlsec 1"
elif [ "$2" = "revoked" ]; then
openssl ca -config "$CADB/config" -revoke "jstests/libs/client_revoked.pem"
fi
- openssl ca -config "$CADB/config" -gencrl -out "$DEST" -md sha256 -days "$DAYS" -crldays "$CRLDAYS"
+ openssl ca -config "$CADB/config" -gencrl -out "$DEST" -md sha256 $VALIDITY_OPTIONS
+ jstests/ssl/x509/mkdigest.py crl sha256 "$DEST"
+ jstests/ssl/x509/mkdigest.py crl sha1 "$DEST"
}
crl crl.pem empty
crl crl_expired.pem expired
diff --git a/jstests/ssl/x509/mkdigest.py b/jstests/ssl/x509/mkdigest.py
new file mode 100755
index 00000000000..b9926b48dfa
--- /dev/null
+++ b/jstests/ssl/x509/mkdigest.py
@@ -0,0 +1,42 @@
+#!/usr/bin/env python3
+"""
+This script calculates and writes out digests for x509 certificates/CRLs.
+Invoke as `mkdigest.py <cert|crl> <sha256|sha1> <filename1> [filename2 ...]`
+"""
+import argparse
+import OpenSSL
+import cryptography.hazmat.primitives.hashes as hashes
+
+DIGEST_NAME_TO_HASH = {'sha256': hashes.SHA256(), 'sha1': hashes.SHA1()}
+
+def make_digest(filename, item_type, digest_type):
+ """Calculate the given digest of the certificate/CRL passed in and write it out to <filename>.digest.<digest_type>"""
+ assert item_type in {"cert", "crl"}
+ assert digest_type in {"sha256", "sha1"}
+ with open(filename, 'r') as f:
+ data = f.read()
+
+ if item_type == 'cert':
+ cert = OpenSSL.crypto.load_certificate(OpenSSL.crypto.FILETYPE_PEM, data)
+ rawdigest = cert.digest(digest_type)
+ digest = rawdigest.decode('utf8').replace(':', '')
+ elif item_type == 'crl':
+ crl = OpenSSL.crypto.load_crl(OpenSSL.crypto.FILETYPE_PEM, data)
+ rawdigest = crl.to_cryptography().fingerprint(DIGEST_NAME_TO_HASH[digest_type])
+ digest = rawdigest.hex().upper()
+
+ with open(filename + '.digest.' + digest_type, 'w') as f:
+ f.write(digest)
+
+def main():
+ parser = argparse.ArgumentParser(description='X509 Digest Generator')
+ parser.add_argument('type', choices={"cert", "crl"}, help='Type of X509 object to generate digest for')
+ parser.add_argument('digest', choices={"sha1", "sha256"}, help='Algorithm for digest')
+ parser.add_argument('filename', nargs='+', help='Path of X509 file to generate digest for')
+ args = parser.parse_args()
+
+ for fname in args.filename:
+ make_digest(fname, args.type, args.digest)
+
+if __name__ == '__main__':
+ main() \ No newline at end of file
diff --git a/jstests/ssl/x509/root-and-trusted-ca.pem b/jstests/ssl/x509/root-and-trusted-ca.pem
index 219ecf6397d..18882c21d68 100644
--- a/jstests/ssl/x509/root-and-trusted-ca.pem
+++ b/jstests/ssl/x509/root-and-trusted-ca.pem
@@ -2,48 +2,49 @@
# Generate using jstests/ssl/x509/mkcert.py --config jstests/ssl/x509/certs.yml root-and-trusted-ca.pem
#
# Combined ca.pem and trusted-ca.pem
+
# Certificate from ca.pem
-----BEGIN CERTIFICATE-----
-MIIDdDCCAlwCBBmRIxIwDQYJKoZIhvcNAQELBQAwdDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5lbCBUZXN0
-IENBMB4XDTE5MDkyNTIzMjczOVoXDTM5MDkyNzIzMjczOVowdDELMAkGA1UEBhMC
-VVMxETAPBgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAw
-DgYDVQQKDAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxFzAVBgNVBAMMDktlcm5l
-bCBUZXN0IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAupVkx8+n
-AqzsANKwNPeCYlf2q0WgF4kSUMNJdpmMelrr7hh7EOnAU0hTAQx9BKTEbExeCzH6
-OArFNGjewjWVXwaOpCjK8FMvK6/lGVEpmoHNF9XuiQVmaQ4bJD6rC73YjpgNIPeL
-5PyoFLEZv+X2cRBPpTcSRcf87tk8HL7v0eyk1JBhkeKK68SYdWwZlHaa1jqwmliW
-WvVMkHVH3lx0VOgQwWtOgs0K1zpcZ0sH5MGpYRQOiidIRZj3PkKeTPQe2D6VQQtv
-2yDs9dWfCxJJP9QiWclL2rF/xqlFSNEIfNZpZhk6I1DHQpA2uyJfzRH62pFasJuB
-CVh5Tr0EDoVreQIDAQABoxMwETAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEB
-CwUAA4IBAQARdNCYYWxi2fyhJwzGHwIT261d/pTlOSYLlm84c72aEneFUnfp8/H5
-JjuFbnhiX+5+h3M7eDQhra9s+H3vKr7o38EIVf5OKXvpNLwv1UUmomBvKqccioYh
-bxrfwCzfBRuUmW05kcAVn8iKovqyxL7npEZbckwtT+BqZ4kOL4Uzre+S1HMx0zOu
-xulSYA/sBoJ2BB93ZIAqB+f/+InS9yggzyhhaQqS7QEl1L4nZE4Oy0jKcxdCzysm
-TqiyH+OI5SVRTfXh4XvHmdWBBaQyaTmQzXYUxUi7jg1jEAiebCGrEJv9plwq4KfC
-cze9NLBjaXR3GzonT8kICyVT/0UvhuJg
+MIIDeTCCAmGgAwIBAgIEe9SskzANBgkqhkiG9w0BAQsFADB0MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwOS2VybmVs
+IFRlc3QgQ0EwHhcNMjIwMTI3MjE1OTQyWhcNMjQwNDMwMjE1OTQyWjB0MQswCQYD
+VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENp
+dHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEXMBUGA1UEAwwO
+S2VybmVsIFRlc3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDf
+vZIt82obTHnc3iHgUYSc+yVkCHyERF3kdcTTFszDbN9mVPL5ZkH9lIAC3A2rj24T
+pItMW1N+zOaLHU5tJB9VnCnKSFz5CHd/KEcLA3Ql2K70z7n1FvINnBmqAQdgPcPu
+Et2rFgGg3atR3T3bV7ZRlla0CcoAFl/YoDI16oHRXboxAtoAzaIwvS6HUrOYQPYq
+BLGt00Wws4bpILk3b04lDLEHmzDe6N3/v3FgBurPzR2tL97/sJGePE94I833hYG4
+vBdU0Kdt9FbTDEFOgrfRCisHyZY6Vw6rIiWBSLUBCjtm2vipgoD0H3DvyZLbMQRr
+qmctCX4KQtOZ8dV3JQkNAgMBAAGjEzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZI
+hvcNAQELBQADggEBAJnz4lK9GiCWhCXIPzghYRRheYWL8nhkZ+3+oC1B3/mGEf71
+2VOdND6fMPdHinD8jONH75mOpa7TanriVYX3KbrQ4WABFNJMX9uz09F+0A2D5tyc
+iDkldnei+fiX4eSx80oCPgvaxdJWauiTsEi+fo2Do47PYkch9+BDXT9F/m3S3RRW
+cia7URBAV8Itq6jj2BHcpS/dEqZcmN9kGWujVagcCorc0wBKSmkO/PZIjISid+TO
+Db2g+AvqSBDU0lbdP7NXRSIxvZejDz4qMjcpSbhW9OS2BCYZcq5wgH2lwYkdPtmX
+JkhxWKwsW11WJWDcmaXcffO3a6lDizxyjnTedoU=
-----END CERTIFICATE-----
# Certificate from trusted-ca.pem
-----BEGIN CERTIFICATE-----
-MIIDojCCAooCBG585gswDQYJKoZIhvcNAQELBQAwfDELMAkGA1UEBhMCVVMxETAP
-BgNVBAgMCE5ldyBZb3JrMRYwFAYDVQQHDA1OZXcgWW9yayBDaXR5MRAwDgYDVQQK
-DAdNb25nb0RCMQ8wDQYDVQQLDAZLZXJuZWwxHzAdBgNVBAMMFlRydXN0ZWQgS2Vy
-bmVsIFRlc3QgQ0EwHhcNMTkwOTI1MjMyNzQxWhcNMzkwOTI3MjMyNzQxWjB8MQsw
-CQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3Jr
-IENpdHkxEDAOBgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEfMB0GA1UE
-AwwWVHJ1c3RlZCBLZXJuZWwgVGVzdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEP
-ADCCAQoCggEBANlRxtpMeCGhkotkjHQqgqvO6O6hoRoAGGJlDaTVtqrjmC8nwySz
-1nAFndqUHttxS3A5j4enOabvffdOcV7+Z6vDQmREF6QZmQAk81pmazSc3wOnRiRs
-AhXjld7i+rhB50CW01oYzQB50rlBFu+ONKYj32nBjD+1YN4AZ2tuRlbxfx2uf8Bo
-Zowfr4n9nHVcWXBLFmaQLn+88WFO/wuwYUOn6Di1Bvtkvqum0or5QeAF0qkJxfhg
-3a4vBnomPdwEXCgAGLvHlB41CWG09EuAjrnE3HPPi5vII8pjY2dKKMomOEYmA+KJ
-AC1NlTWdN0TtsoaKnyhMMhLWs3eTyXL7kbkCAwEAAaMxMC8wDAYDVR0TBAUwAwEB
-/zAfBgNVHREEGDAWgglsb2NhbGhvc3SCCTEyNy4wLjAuMTANBgkqhkiG9w0BAQsF
-AAOCAQEAQk56MO9xAhtO077COCqIYe6pYv3uzOplqjXpJ7Cph7GXwQqdFWfKls7B
-cLfF/fhIUZIu5itStEkY+AIwht4mBr1F5+hZUp9KZOed30/ewoBXAUgobLipJV66
-FKg8NRtmJbiZrrC00BSO+pKfQThU8k0zZjBmNmpjxnbKZZSFWUKtbhHV1vujver6
-SXZC7R6692vLwRBMoZxhgy/FkYRdiN0U9wpluKd63eo/O02Nt6OEMyeiyl+Z3JWi
-8g5iHNrBYGBbGSnDOnqV6tjEY3eq600JDWiodpA1OQheLi78pkc/VQZwof9dyBCm
-6BoCskTjip/UB+vIhdPFT9sgUdgDTg==
+MIIDojCCAoqgAwIBAgIEclbQATANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJV
+UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
+BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEfMB0GA1UEAwwWVHJ1c3Rl
+ZCBLZXJuZWwgVGVzdCBDQTAeFw0yMjAxMjcyMTU5NDhaFw0yNDA0MzAyMTU5NDha
+MHwxCzAJBgNVBAYTAlVTMREwDwYDVQQIDAhOZXcgWW9yazEWMBQGA1UEBwwNTmV3
+IFlvcmsgQ2l0eTEQMA4GA1UECgwHTW9uZ29EQjEPMA0GA1UECwwGS2VybmVsMR8w
+HQYDVQQDDBZUcnVzdGVkIEtlcm5lbCBUZXN0IENBMIIBIjANBgkqhkiG9w0BAQEF
+AAOCAQ8AMIIBCgKCAQEA8h+5axgTodw8KmHz/rcPcy2N/etFkipOVL0i3Ug6JcKk
+DjuSIdyLULuIQlR8nXWQ3hW9CZ2gDCeSnmnUKY6GWDQPHoSUJPhmGkXPuPBXivcL
+QpLVZeOHrqR4+SHzOA3317LF/QYm9kC3dEZIz+dWUlTHs4NFwR+Yo84XNosSGaUh
+o0mK5YcBx0W7y82rNrijcygOkXF9QrANUZfUz5uQ/ZPDjgoISqFvgMzJtpL6LqSC
+TbsUM4NbPSYECDFzIosO+rhYCUsgZ5pE6NWZjmKzq4+zeb/2iSIoEb7U/5f6i4H4
+880y+usrcsBuNCS1OVHaEB1ZrlinJbzplB3nV9Hj1wIDAQABoywwKjAMBgNVHRME
+BTADAQH/MBoGA1UdEQQTMBGCCWxvY2FsaG9zdIcEfwAAATANBgkqhkiG9w0BAQsF
+AAOCAQEArn+KmfD2JEXa0G81jY+v1+XBT4BCcFExbdpOYbIoo2m0Qvx+sla5+Qu7
+nG51R+3rnkVPr03ogKYtf3hYtQJk6DqfuF0V9ESYkz09XRwyW93mh3z4yumXnk3y
+d6SG2quC6iJV0EqT/OnmmveGBpxaBjf80ezRq+8t0mVGeNwZSxv0OprAkmKIIDM8
+Qa1/LlGhStiU+hN62c3m4wHdY5jreRYH7NyIZCHJ/wKgo0cDWWdJ4MeAaQhuijUI
+BaNg6mFHlxVMMRGIGSduUhu7vHzjbAES6kJxdIpDM8tZMlRZQ3ORml5s9onSMb2n
+NmJkjwyB62odD+yrygWRLtFMJmKODQ==
-----END CERTIFICATE-----
diff --git a/jstests/ssl/x509/root-and-trusted-ca.pem.digest.sha1 b/jstests/ssl/x509/root-and-trusted-ca.pem.digest.sha1
new file mode 100644
index 00000000000..dbe9e3898af
--- /dev/null
+++ b/jstests/ssl/x509/root-and-trusted-ca.pem.digest.sha1
@@ -0,0 +1 @@
+F42B9419C2EF9D431D7C0E5061A82902D385203A \ No newline at end of file
diff --git a/jstests/ssl/x509/root-and-trusted-ca.pem.digest.sha256 b/jstests/ssl/x509/root-and-trusted-ca.pem.digest.sha256
new file mode 100644
index 00000000000..2cffe1b5da9
--- /dev/null
+++ b/jstests/ssl/x509/root-and-trusted-ca.pem.digest.sha256
@@ -0,0 +1 @@
+21A1C6A87B31AF590F5074EE716F193522B8F540081A5D571B25AE5DF72863E3 \ No newline at end of file
diff --git a/jstests/ssl/x509/trusted-client-testdb-roles.pem b/jstests/ssl/x509/trusted-client-testdb-roles.pem
index 858ae8a773a..6868581d6ca 100644
--- a/jstests/ssl/x509/trusted-client-testdb-roles.pem
+++ b/jstests/ssl/x509/trusted-client-testdb-roles.pem
@@ -3,53 +3,53 @@
#
# Client certificate with X509 role grants via trusted chain.
-----BEGIN CERTIFICATE-----
-MIIDwzCCAqugAwIBAgIEQvQH6zANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJV
+MIIDwzCCAqugAwIBAgIEIEan5jANBgkqhkiG9w0BAQsFADB8MQswCQYDVQQGEwJV
UzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5ldyBZb3JrIENpdHkxEDAO
BgNVBAoMB01vbmdvREIxDzANBgNVBAsMBktlcm5lbDEfMB0GA1UEAwwWVHJ1c3Rl
-ZCBLZXJuZWwgVGVzdCBDQTAeFw0yMDAxMDcxNzMxNDhaFw00MDAxMDkxNzMxNDha
+ZCBLZXJuZWwgVGVzdCBDQTAeFw0yMjAxMjcyMTU5NDhaFw0yNDA0MzAyMTU5NDha
MIGRMQswCQYDVQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxFjAUBgNVBAcMDU5l
dyBZb3JrIENpdHkxEDAOBgNVBAoMB01vbmdvREIxFTATBgNVBAsMDEtlcm5lbCBV
c2VyczEuMCwGA1UEAwwlVHJ1c3RlZCBLZXJuZWwgVGVzdCBDbGllbnQgV2l0aCBS
-b2xlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAPgWO/0KXHIk0KH/
-jePx+uC8M34bx8ncAWvUXKZtaNGkv2+LI0k/1U5ybOTD8kg8tnIMYkquuuG2zeIB
-99vq2Ve+3j62PlqR4HDzXTt3M3eYp6muRzNn78yxVRn+eiIrdwbnvr28l3ikUaVV
-/u9fsHGZOXto+I6tWSWB7MNEVcPtIu2d8XU2gMrqKfpnG0paUKVWkaKyjUX1DsBL
-FUybBbjQj0zK5cUeKoZjSmMtRfqV6ngKmOK4xTBsQ2VKi7AntpALq/knAYU8BaqS
-wWbVuj5sJX86tdRGGhZ6QKIODTQENPprFaJhy34qrhRkD+YHy7tQ+7vc1JpGodiu
-C7/5K+kCAwEAAaM3MDUwMwYLKwYBBAGCjikCAQEEJDEiMA8MBXJvbGUxDAZ0ZXN0
-REIwDwwFcm9sZTIMBnRlc3REQjANBgkqhkiG9w0BAQsFAAOCAQEAlYR0WB/0yHxM
-gvS+hjxQWyRFOJdWcFn0xresIBd4PmQO8cnOz8iuFrg8DKnYroBRFp5tR9VSLFpq
-EH5xoEUMYEAGryYNp8jjOqxy6lIFUZIOf5Li0CtnnV2qHqsiq0kLpSEt+SbpGXtt
-zS1CkgKwj0VMXwl+3HY73Xj6EVUPqqMf+Frc68S0ey1S7+pgr1fHzFN309tcGt4r
-uxDsSAvYJcYTYDj4KaycXovUsIq+kB+E+k5DnbwJYqHErx2r86QCasK9QIE2Eujl
-t+sBpj8JIObPdpsxEiQ9r1+lurWhyEB4qrtI8fzys/0yHP+EYvra3+HftHXY/t32
-jZ79J4C3YQ==
+b2xlczCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOpl8u+oSvvW1n2Q
+6+XzknlDB1C0zd8ztNiTjOdSD0Nv4OHQX++ft+t3ZFCKq5GM61LcDKoa6tKr3QXf
+lnHl1Ywz0swOXJ1L/FJuyM4FugSCpcWrD/zMPylrxTGWGW5YiiiwBvzh6ZZ40dVM
+VlP3oXcbl96/7EufJNYRYJVOQxMw+T4elZCC4J/keMb33daluwckouOSmOrQu9lx
+8croX81+uHUiHuTLH5XlIlLi/Z8BjuPwXt5JSxmHnc4cBhAC1fHjEDr/u85vfdTe
+5tn2PIdA9o5dOsU+IqNbvdW5KZ74G44QlRyGr8roj1SwHfIHvNZDYxrC2uXhOKoK
+1tRv11UCAwEAAaM3MDUwMwYLKwYBBAGCjikCAQEEJDEiMA8MBXJvbGUxDAZ0ZXN0
+REIwDwwFcm9sZTIMBnRlc3REQjANBgkqhkiG9w0BAQsFAAOCAQEAaEL9nJI66Qec
+7KnKysAi/uaEKIajs86bnb/nkUQJxDSEOb/YDi41LQ2D2+MX52b26GD4rUAHvkjU
+hHzCHprc2mgjWm0J7jCY8dlqj7ka9g5SWi56gDRfjSjuAOV93+Q4Ty/kAFLBIy8H
+z0v7ed+a14i6NHqAmZAXVx61zI6nZgDhN8kcuvJICQKTWk8rVp9Cv/OhntIJgU7z
+Lqqdn7eSOnwYllVG18dsQHOea6f6aCicbLDZgbSOnSPowhxMaPiIfq+WXXo1YiPl
+kRHxE9OVYuGaT7qTQoda/SNfotRNJ6ApbGZLjtCr3mVA0LoK8e2HWFmNqRIUUx37
+zecLCwDx3g==
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
-MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQD4Fjv9ClxyJNCh
-/43j8frgvDN+G8fJ3AFr1FymbWjRpL9viyNJP9VOcmzkw/JIPLZyDGJKrrrhts3i
-Affb6tlXvt4+tj5akeBw8107dzN3mKeprkczZ+/MsVUZ/noiK3cG5769vJd4pFGl
-Vf7vX7BxmTl7aPiOrVklgezDRFXD7SLtnfF1NoDK6in6ZxtKWlClVpGiso1F9Q7A
-SxVMmwW40I9MyuXFHiqGY0pjLUX6lep4CpjiuMUwbENlSouwJ7aQC6v5JwGFPAWq
-ksFm1bo+bCV/OrXURhoWekCiDg00BDT6axWiYct+Kq4UZA/mB8u7UPu73NSaRqHY
-rgu/+SvpAgMBAAECggEALVaa5fajyHRz8HcsrjDF4ZZjbrOTApADbnpj6EJseou6
-NJ9f9n4E9I4y2mf4+jymNxeOSwm9u4xV+ezUKEu2JrQKF7nkkVbBhsLjEgAJ1tx+
-H6Nq/bkL+QObguGf3mjFGuz1TeWOZQzaovWhXovFSi1vdN9NNX32ocUpyNHPPrvW
-nc3Gun/hws4qWwBFpR+8fzMHPJc/NCwZpDRoJl0yXEAkGTKtIEGEJ7tlWLSb5Bz2
-5N0Dkn2S3t8uozPIuv0rjdYd1t+FfOUUAZGI09LCIu9ndBYO6Vj+Vh99xedZ2oBa
-9lHQp3vhLaCXg7O3bY3ac9BIOwdAqcbWAJV/oQl5gQKBgQD90geToF81xZYgLZoU
-iU8RRUSmdurZtNirDkMU+/u5Fwu7yn8M53l++TPP76Hi1yGP9803LwIXNXfyg+sb
-BRAPJg+bJ8N6m1vFdfg509oqlrzoxnmulwBshqt5HbpiOjYAc1cSOpYSXGJjHoFL
-+Au4MRsfDh5RhT1zrUT11+6ZEQKBgQD6N5nGaPOsLHdYXk2//yZF1Ol9kl3L0VWM
-XT0F9m/KSCg1kSf+2XCt1U/b1JsrjMTOZWVHNV3yebPs9/pR2ffmyeXtySFuEVeb
-ZVNSxaCSVVbTJL9W+mpXdqzcTj9IL9tMN6J5PE8eQ6pjG299sBmdj5S92a3uoxQr
-5RmGn36lWQKBgQCix4XQaXNmGteSv2wna3/nxZKnZ3BqOo8R9M2UsZ3YMC14O/+L
-GRBUHCHcYwRhZDLED9nuYBlpJQNN5shqxa5s6K3thWzaPrR2SJfvDizGT3HLny3+
-iBzffOaPgD8+K7LiSxY2PJhuIg1/H9swC14IvIV2Pym2gkrM2vx05gzA4QKBgQCW
-FmngEK4xVY7U6+Q5SYQcmSThVL18d3mYM4laHUNbE8NCtmpGPQmQzAYV98aH7e1T
-XJDOkN1kh8n8V5bIKDXCMtL/ugiabD6fkLzVRoQVoqjtB/rZ4mWNRztS/oCI/WPO
-qQSFMj7HCZGX1yoeO1ZyI2D2LC9fmGSOG+Me1Gb0KQKBgQCZazY6Wb7HPO50HnN3
-e3QrT9VE1PKLW6dWpokdYzq2ISnX8ZBeKvMBX+TpKASduNVXK5shsuNqjMAeXtVk
-V90P2QkgswCoUlgiaxKby7jBqDIO9CsLt0erQ328WUsf9mgk18CmCc42EWBPuQv7
-WTykB3JVLPGKjKcZVI4PP91yAw==
+MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDqZfLvqEr71tZ9
+kOvl85J5QwdQtM3fM7TYk4znUg9Db+Dh0F/vn7frd2RQiquRjOtS3AyqGurSq90F
+35Zx5dWMM9LMDlydS/xSbsjOBboEgqXFqw/8zD8pa8UxlhluWIoosAb84emWeNHV
+TFZT96F3G5fev+xLnyTWEWCVTkMTMPk+HpWQguCf5HjG993WpbsHJKLjkpjq0LvZ
+cfHK6F/Nfrh1Ih7kyx+V5SJS4v2fAY7j8F7eSUsZh53OHAYQAtXx4xA6/7vOb33U
+3ubZ9jyHQPaOXTrFPiKjW73VuSme+BuOEJUchq/K6I9UsB3yB7zWQ2Mawtrl4Tiq
+CtbUb9dVAgMBAAECggEAXvcfDenpN087Z3QnnuqoFWkKtbALGLsiMfzVwYKFnJTf
+T53UwIi9QzED+32zNS0ayl9M4j41lVT8Hz0O/uZXNo5ogTPwYeo/OEaaJJ49V0Z3
+UzaTK6C0lluLcSOW+hX1I7btndcJhGU+3mQnNa3GRTNwvFaVra20huZTcypaEpOm
+Xxo26QcJFloaMm2n7HAuO756HXd+63SqoQubMQxGFBga76H3ep3WTTgFR6VBejfb
+brdXwT0/uS/0rQ9hkcs/RFfqZqsI8ADXhqhu7aO1+xu5cdzGN6Oa6NKnh3tLX52v
+MQxurnWBIkZNKEczqfVwGWSnwdTlymS11ohleOGrAQKBgQD57xw9fU1VjZ5u4d7Q
+IYQTcBGEf4EHzmJNcXmvz5U98UmrVCuH0TGgMlUUs4LcdvPBbOhW74cfYXPSDQVF
+Afig77BGCn1o3/6T2VgYBJqf9OAMZC+mnMhEuWUcyCYTwmh8v/qHfuJbcADGtQ5B
+05OXKBkjtrBWTbdekis90mk52QKBgQDwFk/Nq2jkff7q/6HwiBXnphHnvl/QLSJl
+3dgNkICl+7HIVHCe+hhLEG5SlNx0drchFuYH2ZN/MMqeWju2oXgcBZmeULKct5VT
+Hii7B3fOkILPCaVJTDtgYMUHsdZ4j+HG7PsjB8/V8DzdijmKMaYb0ZmJmy01ipBv
+T8+XwvC/3QKBgQCJR4HOcG2yyTe1ldDJpy8hchPdIB+iRwUNnn+FRtKllEuvlGrY
+jdnhMOQ0m6kMKTYYDxbK8YPZg7CXNlmnnr6OvzimMArUOPxe/yl4/8Zih6EsjTbz
+H/iMbvyPw4vOnKDBrL0SAWqZaLq0aixrkafmhbrRN/5BWSyYAFdJ/LGZeQKBgDJt
+LUPQfc6IHDO1j4javGcUPWyEUtGBuVjV+JwYvryeGeAuxBzQAKw7fkCAHbGkgaBE
+k/oQG+e6EsShxSr9zSFtl69l2a4K7SUxD3MBBYvwVFkx+HJlvY7npFqSYq6d4dkL
+S1A3QtL3i4EomB9LgE0Vf/8kBaHaQa3vgHWqrzBNAoGBAKgqghZTroNcX91Mqu0p
+iriLMkiDqJkzehD9XQMhOjMfoGxyMoYFmrvo5UHSOEl6ztMFBwR5j6S8hwDHolXr
+wiz0kqRQwivrHN2O613S0Ruis17cvhe0GfMJs+3fCpN8Hu3Wb3d3O1PZ6khjORTy
+Mo9z1LS8fe+6pqKSMPvL24Jp
-----END PRIVATE KEY-----
diff --git a/jstests/ssl/x509/trusted-client-testdb-roles.pem.digest.sha1 b/jstests/ssl/x509/trusted-client-testdb-roles.pem.digest.sha1
new file mode 100644
index 00000000000..dd30990811e
--- /dev/null
+++ b/jstests/ssl/x509/trusted-client-testdb-roles.pem.digest.sha1
@@ -0,0 +1 @@
+80AA73D8FFE6C854A357A836C4657D7C03480011 \ No newline at end of file
diff --git a/jstests/ssl/x509/trusted-client-testdb-roles.pem.digest.sha256 b/jstests/ssl/x509/trusted-client-testdb-roles.pem.digest.sha256
new file mode 100644
index 00000000000..f209638b231
--- /dev/null
+++ b/jstests/ssl/x509/trusted-client-testdb-roles.pem.digest.sha256
@@ -0,0 +1 @@
+C02BAD2324CEB0793749AAF4C01CC35B58525BFE00D683B558B4A6E5BF9C2406 \ No newline at end of file
diff --git a/jstests/ssl/x509_expiring.js b/jstests/ssl/x509_expiring.js
index 526ffb3ed6d..8b7782d1c5d 100644
--- a/jstests/ssl/x509_expiring.js
+++ b/jstests/ssl/x509_expiring.js
@@ -52,6 +52,9 @@ function test(expiration, expect) {
MongoRunner.stopMongod(mongo);
}
-test(30, false);
+assert.doesNotThrow(
+ () => test(100, false),
+ [],
+ "If this fails, the server.pem certificate is expiring soon (<= 100 days) -- this is bad! Please file a ticket with the server security team to renew testing certificates.");
test(7300, true); // Work so long as certs expire no more than 20 years from now
})();
diff --git a/jstests/ssl/x509_startup_certificate_info.js b/jstests/ssl/x509_startup_certificate_info.js
index 1c66c74b60b..0fece9c4ce1 100644
--- a/jstests/ssl/x509_startup_certificate_info.js
+++ b/jstests/ssl/x509_startup_certificate_info.js
@@ -15,16 +15,16 @@ const SERVER_CERT_INFO = {
"type": "Server",
"subject": "CN=server,OU=Kernel,O=MongoDB,L=New York City,ST=New York,C=US",
"issuer": "CN=Kernel Test CA,OU=Kernel,O=MongoDB,L=New York City,ST=New York,C=US",
- "thumbprint": "BF2E341D28D7CEAADA534A11D75189D4ECABB551"
+ "thumbprint": cat(SERVER_CERT + ".digest.sha1")
};
const CLUSTER_CERT_INFO = {
"type": "Cluster",
"subject": "CN=clustertest,OU=Kernel,O=MongoDB,L=New York City,ST=New York,C=US",
"issuer": "CN=Kernel Test CA,OU=Kernel,O=MongoDB,L=New York City,ST=New York,C=US",
- "thumbprint": "FD85F9F6F380EE53F46F497253453731DC885335"
+ "thumbprint": cat(CLUSTER_CERT + ".digest.sha1")
};
const CRL_INFO = {
- "thumbprint": "551FEF8D916CE363E5488AD7F4BD60E3D1EC2BD8"
+ "thumbprint": cat(CRL_FILE + ".digest.sha1")
};
function runTest(checkMongos,