JDK-8153776 : Implement jdkCA constraint
  • Type: Sub-task
  • Component: security-libs
  • Sub-Component: java.security
  • Priority: P2
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2016-04-07
  • Updated: 2016-05-03
  • Resolved: 2016-05-03
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 9
9Fixed
Related Reports
Relates :  
Description
This dev subtask involves implementing the jdkCA constraint (JDK-8140422). It also includes getting CCC approval.


Problem
With the increasing chances of collisions with SHA1-signed certificates, we need better control of a certificate's chain of trust without disabling private CA-signed or self-signed certificates that an enterprise may depend on. Enterprises typically take longer to conform to algorithm restrictions. Today, the algorithm checking for CertPath is too coarse, it is either enabled or disabled.
 
Solution
Add a new constraint for the restricted algorithms in a certificate chain if the trust anchor is a public CA in the cacerts keystore. This allows to disable most CertPath validation and builder operations while still allowing private CA trust anchors or self-signed certs to operate in a private/enterprise environment. This significantly reduces the compatibility risk for certificate algorithms such as SHA-1 that have been heavily deployed in enterprises, and allows us to disable it in a phased approach.
 
The option can be used on the jdk.certpath.disabledAlgorithms security property. The keyword is "jdkCA".  To disable SHA1 for the new constraint, the property option would look like "SHA1 jdkCA".
 
Also, the syntax has been extended with an '&' keyword to allow multiple constraints to be specified for each algorithm.
Comments
Resolved with fix for JDK-8140422.
03-05-2016