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

Unified Diff: components/security_state/core/security_state.cc

Issue 2616553002: Remove obsolete SHA-1 UX elements (Closed)
Patch Set: Final nits Created 3 years, 11 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
Index: components/security_state/core/security_state.cc
diff --git a/components/security_state/core/security_state.cc b/components/security_state/core/security_state.cc
index ef7e0a844148d8e10b4609fd30248b3c98263fa9..d5e867ed6de8ae7ea425a6ac330887c8a8ac19c3 100644
--- a/components/security_state/core/security_state.cc
+++ b/components/security_state/core/security_state.cc
@@ -84,27 +84,6 @@ SecurityLevel GetSecurityLevelForNonSecureFieldTrial(
return level;
}
-SHA1DeprecationStatus GetSHA1DeprecationStatus(
- const VisibleSecurityState& visible_security_state) {
- if (!visible_security_state.certificate ||
- !(visible_security_state.cert_status &
- net::CERT_STATUS_SHA1_SIGNATURE_PRESENT))
- return NO_DEPRECATED_SHA1;
-
- // The internal representation of the dates for UI treatment of SHA-1.
- // See http://crbug.com/401365 for details.
- static const int64_t kJanuary2017 = INT64_C(13127702400000000);
- if (visible_security_state.certificate->valid_expiry() >=
- base::Time::FromInternalValue(kJanuary2017))
- return DEPRECATED_SHA1_MAJOR;
- static const int64_t kJanuary2016 = INT64_C(13096080000000000);
- if (visible_security_state.certificate->valid_expiry() >=
- base::Time::FromInternalValue(kJanuary2016))
- return DEPRECATED_SHA1_MINOR;
-
- return NO_DEPRECATED_SHA1;
-}
-
ContentStatus GetContentStatus(bool displayed, bool ran) {
if (ran && displayed)
return CONTENT_STATUS_DISPLAYED_AND_RAN;
@@ -119,7 +98,7 @@ SecurityLevel GetSecurityLevelForRequest(
const VisibleSecurityState& visible_security_state,
bool used_policy_installed_certificate,
const IsOriginSecureCallback& is_origin_secure_callback,
- SHA1DeprecationStatus sha1_status,
+ bool sha1_in_chain,
ContentStatus mixed_content_status,
ContentStatus content_with_cert_errors_status) {
DCHECK(visible_security_state.connection_info_initialized ||
@@ -172,14 +151,10 @@ SecurityLevel GetSecurityLevelForRequest(
return SECURE_WITH_POLICY_INSTALLED_CERT;
// In most cases, SHA1 use is treated as a certificate error, in which case
- // DANGEROUS will have been returned above. If SHA1 is permitted, we downgrade
- // the security level to Neutral or Dangerous depending on policy.
- if (sha1_status == DEPRECATED_SHA1_MAJOR ||
- sha1_status == DEPRECATED_SHA1_MINOR) {
- return (visible_security_state.display_sha1_from_local_anchors_as_neutral)
- ? NONE
- : DANGEROUS;
- }
+ // DANGEROUS will have been returned above. If SHA1 was permitted by policy,
+ // downgrade the security level to Neutral.
+ if (sha1_in_chain)
+ return NONE;
// Active mixed content is handled above.
DCHECK_NE(CONTENT_STATUS_RAN, mixed_content_status);
@@ -216,14 +191,16 @@ void SecurityInfoForRequest(
MALICIOUS_CONTENT_STATUS_NONE) {
security_info->security_level = GetSecurityLevelForRequest(
visible_security_state, used_policy_installed_certificate,
- is_origin_secure_callback, UNKNOWN_SHA1, CONTENT_STATUS_UNKNOWN,
+ is_origin_secure_callback, false, CONTENT_STATUS_UNKNOWN,
CONTENT_STATUS_UNKNOWN);
}
return;
}
security_info->certificate = visible_security_state.certificate;
- security_info->sha1_deprecation_status =
- GetSHA1DeprecationStatus(visible_security_state);
+
+ security_info->sha1_in_chain = visible_security_state.certificate &&
+ (visible_security_state.cert_status &
+ net::CERT_STATUS_SHA1_SIGNATURE_PRESENT);
security_info->mixed_content_status =
GetContentStatus(visible_security_state.displayed_mixed_content,
visible_security_state.ran_mixed_content);
@@ -252,7 +229,7 @@ void SecurityInfoForRequest(
security_info->security_level = GetSecurityLevelForRequest(
visible_security_state, used_policy_installed_certificate,
- is_origin_secure_callback, security_info->sha1_deprecation_status,
+ is_origin_secure_callback, security_info->sha1_in_chain,
security_info->mixed_content_status,
security_info->content_with_cert_errors_status);
}
@@ -265,7 +242,7 @@ const base::Feature kHttpFormWarningFeature{"HttpFormWarning",
SecurityInfo::SecurityInfo()
: security_level(NONE),
malicious_content_status(MALICIOUS_CONTENT_STATUS_NONE),
- sha1_deprecation_status(NO_DEPRECATED_SHA1),
+ sha1_in_chain(false),
mixed_content_status(CONTENT_STATUS_NONE),
content_with_cert_errors_status(CONTENT_STATUS_NONE),
scheme_is_cryptographic(false),
@@ -307,8 +284,7 @@ VisibleSecurityState::VisibleSecurityState()
ran_content_with_cert_errors(false),
pkp_bypassed(false),
displayed_password_field_on_http(false),
- displayed_credit_card_field_on_http(false),
- display_sha1_from_local_anchors_as_neutral(false) {}
+ displayed_credit_card_field_on_http(false) {}
VisibleSecurityState::~VisibleSecurityState() {}
@@ -330,9 +306,7 @@ bool VisibleSecurityState::operator==(const VisibleSecurityState& other) const {
displayed_password_field_on_http ==
other.displayed_password_field_on_http &&
displayed_credit_card_field_on_http ==
- other.displayed_credit_card_field_on_http &&
- display_sha1_from_local_anchors_as_neutral ==
- other.display_sha1_from_local_anchors_as_neutral);
+ other.displayed_credit_card_field_on_http);
}
} // namespace security_state
« no previous file with comments | « components/security_state/core/security_state.h ('k') | components/security_state/core/security_state_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698