Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1374)

Unified Diff: net/cert/internal/verify_certificate_chain.h

Issue 2813043002: Add tests for keyUsage to the built-in cert verifier. (Closed)
Patch Set: rebase and add test files for ios Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/cert/cert_verify_proc_unittest.cc ('k') | net/cert/internal/verify_certificate_chain.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/cert/internal/verify_certificate_chain.h
diff --git a/net/cert/internal/verify_certificate_chain.h b/net/cert/internal/verify_certificate_chain.h
index 7abeede6dd46cdc13c16fca22b53fd6415f00d61..e77c6fe1ed4cd1b0b2b3c64a3a52d73bc4052f93 100644
--- a/net/cert/internal/verify_certificate_chain.h
+++ b/net/cert/internal/verify_certificate_chain.h
@@ -30,9 +30,21 @@ enum class KeyPurpose {
CLIENT_AUTH,
};
-// VerifyCertificateChain() verifies a certificate path (chain) based on the
-// rules in RFC 5280. The caller is responsible for building the path and
-// finding the trust anchor.
+// VerifyCertificateChain() verifies an ordered certificate path in accordance
+// with RFC 5280 (with some modifications [1]).
+//
+// [1] Deviations from RFC 5280:
+//
+// * If Extended Key Usage appears on intermediates it is treated as a
+// restriction on subordinate certificates.
+//
+// The caller is responsible for additionally checking:
+//
+// * The end-entity's KeyUsage before using its SPKI.
+// * The end-entity's name/subjectAltName (note that name constraints from
+// intermediates will have already been applied, so just need to check
+// the end-entity for a match).
+// * Policies
//
// WARNING: This implementation is in progress, and is currently incomplete.
// Consult an OWNER before using it.
« no previous file with comments | « net/cert/cert_verify_proc_unittest.cc ('k') | net/cert/internal/verify_certificate_chain.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698