Chrome Release Bot (LUCI) 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
..
internal 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
pki 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
BUILD.gn 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
DIR_METADATA 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
OWNERS 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
README.md 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
asn1_util.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
asn1_util.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
caching_cert_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
caching_cert_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
caching_cert_verifier_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_and_ct_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_and_ct_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_and_ct_verifier_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_database.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_database.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_database_mac.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_net_fetcher.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_status_flags.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_status_flags.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_status_flags_list.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_type.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verifier_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_android.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_android.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_android_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_blocklist.inc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_builtin.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_builtin.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_builtin_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_ios.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_ios.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_mac.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_mac.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_mac_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_win.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_win.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_proc_win_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_result.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
cert_verify_result.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
client_cert_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
coalescing_cert_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
coalescing_cert_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
coalescing_cert_verifier_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
crl_set.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
crl_set.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
crl_set_fuzzer.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
crl_set_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_log_response_parser.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_log_response_parser.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_log_response_parser_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_log_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_log_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_log_verifier_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_log_verifier_util.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_log_verifier_util.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_objects_extractor.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_objects_extractor.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_objects_extractor_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_policy_enforcer.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_policy_enforcer.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_policy_status.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_sct_to_string.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_sct_to_string.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_serialization.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_serialization.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_serialization_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_signed_certificate_timestamp_log_param.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_signed_certificate_timestamp_log_param.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ct_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
decode_signed_certificate_timestamp_fuzzer.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
do_nothing_ct_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
do_nothing_ct_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ev_root_ca_metadata.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ev_root_ca_metadata.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ev_root_ca_metadata_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots_mac.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots_mac.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots_nss.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots_nss.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots_win.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
known_roots_win.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
merkle_audit_proof.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
merkle_audit_proof.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
merkle_audit_proof_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
merkle_consistency_proof.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
merkle_consistency_proof.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
merkle_tree_leaf.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
merkle_tree_leaf.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
merkle_tree_leaf_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
mock_cert_net_fetcher.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
mock_cert_net_fetcher.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
mock_cert_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
mock_cert_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
mock_client_cert_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
mock_client_cert_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
multi_log_ct_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
multi_log_ct_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
multi_log_ct_verifier_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
multi_threaded_cert_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
multi_threaded_cert_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
multi_threaded_cert_verifier_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_cert_database.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_cert_database.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_cert_database_chromeos.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_cert_database_chromeos.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_cert_database_chromeos_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_cert_database_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_profile_filter_chromeos.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_profile_filter_chromeos.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
nss_profile_filter_chromeos_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ocsp_revocation_status.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ocsp_verify_result.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
ocsp_verify_result.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
pem.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
pem.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
pem_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
root_cert_list_generated.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
root_store.proto 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
scoped_nss_types.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
sct_auditing_delegate.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
sct_status_flags.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
sct_status_flags.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
signed_certificate_timestamp.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
signed_certificate_timestamp.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
signed_certificate_timestamp_and_status.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
signed_certificate_timestamp_and_status.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
signed_certificate_timestamp_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
signed_tree_head.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
signed_tree_head.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
symantec_certs.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
symantec_certs.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
symantec_certs_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_keychain_search_list_mac.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_keychain_search_list_mac.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_root_certs.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_root_certs.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_root_certs_android.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_root_certs_builtin.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_root_certs_mac.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_root_certs_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
test_root_certs_win.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
trial_comparison_cert_verifier.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
trial_comparison_cert_verifier.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
trial_comparison_cert_verifier_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
trial_comparison_cert_verifier_util.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
trial_comparison_cert_verifier_util.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_cert_types.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_cert_types.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_cert_types_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_certificate.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_certificate.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_certificate_net_log_param.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_certificate_net_log_param.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_certificate_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_android.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_apple.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_apple.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_apple_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_mac.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_mac.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_nss.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_nss.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_nss_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_unittest.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_win.cc 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu
x509_util_win.h 4762b62e7d Publish DEPS for 106.0.5249.13 1 rok temu

README.md

Certificate verification

This directory contains the core code for verifying server certificates. Limited support is also included for verifying client certificates, but only to the extent they chain to a server-supplied set of issuers.

Server certificate verification emphasizes the standards/policy for publicly trusted certificates:

  • Basic X.509 digital certificates
  • RFC 5280
  • CA/Browser Forum Baseline Requirements
  • CRLSets
  • Certificate Transparency

The core logic of certificate verification is implemented synchronously, as it may need to integrate with synchronous OS-provided APIs. This synchronous implementation is performed through the CertVerifyProc interface, which is a thread-agnostic/thread-safe interface that can be used to verify certificates synchronously on arbitrary worker threads.

The top-level interface for verifying server certificates is the asynchronous CertVerifier.

MultiThreadedCertVerifier is an implementation of CertVerifier that executes CertVerifyProc synchronously on worker threads.

CertVerifyProcBuiltin is a cross-platform implementation which implements path building internally. It only relies on platform integrations for obtaining the trusted root certificates.

The other CertVerifyProc implementations are for integrating with the underlying platform’s certificate verification library. For example, CertVerifyProcWin delegates certificate verification to Windows’ CryptoAPI.

Browser-specific policy checks are applied even when using the platform’s certificate verifier. For instance, a certificate chain the OS deemed valid could ultimately be rejected by CertVerifyProc since it independently checks the chain for CRLSet revocation, use of weak keys, Baseline Requirements validity, name constraints, weak signature algorithms, and more.