# HG changeset patch # User mullan # Date 1295898974 18000 # Node ID 94e5966bdf22351aea13283e19901ac8d3e00069 # Parent a0b9d2cd773127f0339bb219e31fb0d03f48f1c0 5001004: Required Security Algorithms need to be defined Reviewed-by: wetmore diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/AlgorithmParameterGenerator.java --- a/jdk/src/share/classes/java/security/AlgorithmParameterGenerator.java Mon Oct 18 09:05:49 2010 -0400 +++ b/jdk/src/share/classes/java/security/AlgorithmParameterGenerator.java Mon Jan 24 14:56:14 2011 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2006, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -66,6 +66,20 @@ * default modulus prime size of 1024 bits for the generation of DSA * parameters. * + *
Every implementation of the Java platform is required to support the
+ * following standard AlgorithmParameterGenerator
algorithms and
+ * keysizes in parentheses:
+ *
getParameterSpec
, and a byte encoding of the parameters is
* obtained via a call to getEncoded
.
*
+ * Every implementation of the Java platform is required to support the
+ * following standard AlgorithmParameters
algorithms:
+ *
Every implementation of the Java platform is required to support the
+ * following standard KeyFactory
algorithms:
+ *
Every implementation of the Java platform is required to support the
+ * following standard KeyPairGenerator
algorithms and keysizes in
+ * parentheses:
+ *
Every implementation of the Java platform is required to support
+ * the following standard KeyStore
type:
+ *
Every implementation of the Java platform is required to support
+ * the following standard MessageDigest
algorithms:
+ *
getInstance
factory methods
* with a standard type. The default policy type is "JavaPolicy".
- * See Appendix A in the
- * Java Cryptography Architecture API Specification & Reference
- * for a list of standard Policy types.
*
* Once a Policy instance has been installed (either by default, or by
* calling setPolicy
),
@@ -133,7 +130,7 @@
* This method first calls
* SecurityManager.checkPermission
with a
* SecurityPermission("getPolicy")
permission
- * to ensure it's ok to get the Policy object..
+ * to ensure it's ok to get the Policy object.
*
* @return the installed Policy.
*
@@ -340,9 +337,10 @@
*
Note that the list of registered providers may be retrieved via * the {@link Security#getProviders() Security.getProviders()} method. * - * @param type the specified Policy type. See Appendix A in the - * - * Java Cryptography Architecture API Specification & Reference + * @param type the specified Policy type. See the Policy section in the + * + * Java Cryptography Architecture Standard Algorithm Name Documentation * for a list of standard Policy types. * * @param params parameters for the Policy, which may be null. @@ -393,9 +391,10 @@ *
Note that the list of registered providers may be retrieved via * the {@link Security#getProviders() Security.getProviders()} method. * - * @param type the specified Policy type. See Appendix A in the - * - * Java Cryptography Architecture API Specification & Reference + * @param type the specified Policy type. See the Policy section in the + * + * Java Cryptography Architecture Standard Algorithm Name Documentation * for a list of standard Policy types. * * @param params parameters for the Policy, which may be null. @@ -456,9 +455,10 @@ * object is returned. Note that the specified Provider object * does not have to be registered in the provider list. * - * @param type the specified Policy type. See Appendix A in the - * - * Java Cryptography Architecture API Specification & Reference + * @param type the specified Policy type. See the Policy section in the + * + * Java Cryptography Architecture Standard Algorithm Name Documentation * for a list of standard Policy types. * * @param params parameters for the Policy, which may be null. diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/SecureRandom.java --- a/jdk/src/share/classes/java/security/SecureRandom.java Mon Oct 18 09:05:49 2010 -0400 +++ b/jdk/src/share/classes/java/security/SecureRandom.java Mon Jan 24 14:56:14 2011 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -133,9 +133,9 @@ *
Note that the list of registered providers may be retrieved via * the {@link Security#getProviders() Security.getProviders()} method. * - *
See Appendix A in the - * Java Cryptography Architecture API Specification & Reference + *
See the SecureRandom section in the + * Java Cryptography Architecture Standard Algorithm Name Documentation * for information about standard RNG algorithm names. * *
The returned SecureRandom object has not been seeded. To seed the @@ -171,9 +171,9 @@ *
Note that the list of registered providers may be retrieved via * the {@link Security#getProviders() Security.getProviders()} method. * - *
See Appendix A in the - * Java Cryptography Architecture API Specification & Reference + *
See the SecureRandom section in the + * Java Cryptography Architecture Standard Algorithm Name Documentation * for information about standard RNG algorithm names. * * @param seed the seed. @@ -256,9 +256,9 @@ * previously called. * * @param algorithm the name of the RNG algorithm. - * See Appendix A in the - * Java Cryptography Architecture API Specification & Reference + * See the SecureRandom section in the + * Java Cryptography Architecture Standard Algorithm Name Documentation * for information about standard RNG algorithm names. * * @return the new SecureRandom object. @@ -299,9 +299,9 @@ * previously called. * * @param algorithm the name of the RNG algorithm. - * See Appendix A in the - * Java Cryptography Architecture API Specification & Reference + * See the SecureRandom section in the + * Java Cryptography Architecture Standard Algorithm Name Documentation * for information about standard RNG algorithm names. * * @param provider the name of the provider. @@ -347,9 +347,9 @@ * previously called. * * @param algorithm the name of the RNG algorithm. - * See Appendix A in the - * Java Cryptography Architecture API Specification & Reference + * See the SecureRandom section in the + * Java Cryptography Architecture Standard Algorithm Name Documentation * for information about standard RNG algorithm names. * * @param provider the provider. diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/Security.java --- a/jdk/src/share/classes/java/security/Security.java Mon Oct 18 09:05:49 2010 -0400 +++ b/jdk/src/share/classes/java/security/Security.java Mon Jan 24 14:56:14 2011 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -277,10 +277,11 @@ /** * Gets a specified property for an algorithm. The algorithm name - * should be a standard name. See Appendix A in the - * Java Cryptography Architecture API Specification & Reference + * should be a standard name. See the + * Java Cryptography Architecture Standard Algorithm Name Documentation * for information about standard algorithm names. + * * One possible use is by specialized algorithm parsers, which may map * classes to algorithms which they understand (much like Key parsers * do). @@ -513,9 +514,9 @@ * * * - *
See Appendix A in the - * Java Cryptography Architecture API Specification & Reference + *
See the + * Java Cryptography Architecture Standard Algorithm Name Documentation * for information about standard cryptographic service names, standard * algorithm names and standard attribute names. * @@ -582,9 +583,9 @@ * constraint expressed by the specified attribute name/value pair. * * - *
See Appendix A in the - * Java Cryptography Architecture API Specification & Reference + *
See the + * Java Cryptography Architecture Standard Algorithm Name Documentation * for information about standard cryptographic service names, standard * algorithm names and standard attribute names. * diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/Signature.java --- a/jdk/src/share/classes/java/security/Signature.java Mon Oct 18 09:05:49 2010 -0400 +++ b/jdk/src/share/classes/java/security/Signature.java Mon Jan 24 14:56:14 2011 -0500 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1996, 2006, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1996, 2010, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -47,7 +47,7 @@ import sun.security.jca.GetInstance.Instance; /** - * This Signature class is used to provide applications the functionality + * The Signature class is used to provide applications the functionality * of a digital signature algorithm. Digital signatures are used for * authentication and integrity assurance of digital data. * @@ -98,6 +98,20 @@ * the superclass are intended for cryptographic service providers who wish to * supply their own implementations of digital signature algorithms. * + *
Every implementation of the Java platform is required to support the
+ * following standard Signature
algorithms:
+ *
CertPathValidator
s will
* detect any departure from these conventions that cause the certification
* path to be invalid and throw a CertPathValidatorException
.
+ *
+ * Every implementation of the Java platform is required to support the
+ * following standard CertPath
encodings:
+ *
* Concurrent Access *
diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/cert/CertPathBuilder.java
--- a/jdk/src/share/classes/java/security/cert/CertPathBuilder.java Mon Oct 18 09:05:49 2010 -0400
+++ b/jdk/src/share/classes/java/security/cert/CertPathBuilder.java Mon Jan 24 14:56:14 2011 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -52,6 +52,19 @@
* result (including the CertPath
that was built) is returned
* in an object that implements the CertPathBuilderResult
* interface.
+ *
+ *
Every implementation of the Java platform is required to support the
+ * following standard CertPathBuilder
algorithm:
+ *
* Concurrent Access *
@@ -118,10 +131,10 @@
* the {@link Security#getProviders() Security.getProviders()} method.
*
* @param algorithm the name of the requested CertPathBuilder
- * algorithm. See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard algorithm names.
+ * algorithm. See the CertPathBuilder section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard algorithm names.
*
* @return a CertPathBuilder
object that implements the
* specified algorithm.
@@ -153,10 +166,10 @@
* the {@link Security#getProviders() Security.getProviders()} method.
*
* @param algorithm the name of the requested CertPathBuilder
- * algorithm. See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard algorithm names.
+ * algorithm. See the CertPathBuilder section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard algorithm names.
*
* @param provider the name of the provider.
*
@@ -193,10 +206,10 @@
* does not have to be registered in the provider list.
*
* @param algorithm the name of the requested CertPathBuilder
- * algorithm. See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard algorithm names.
+ * algorithm. See the CertPathBuilder section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard algorithm names.
*
* @param provider the provider.
*
diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/cert/CertPathValidator.java
--- a/jdk/src/share/classes/java/security/cert/CertPathValidator.java Mon Oct 18 09:05:49 2010 -0400
+++ b/jdk/src/share/classes/java/security/cert/CertPathValidator.java Mon Jan 24 14:56:14 2011 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -53,6 +53,19 @@
* and an algorithm-specific set of parameters. If successful, the result is
* returned in an object that implements the
* CertPathValidatorResult
interface.
+ *
+ *
Every implementation of the Java platform is required to support the
+ * following standard CertPathValidator
algorithm:
+ *
* Concurrent Access *
@@ -118,10 +131,10 @@
* the {@link Security#getProviders() Security.getProviders()} method.
*
* @param algorithm the name of the requested CertPathValidator
- * algorithm. See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard algorithm names.
+ * algorithm. See the CertPathValidator section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard algorithm names.
*
* @return a CertPathValidator
object that implements the
* specified algorithm.
@@ -153,10 +166,10 @@
* the {@link Security#getProviders() Security.getProviders()} method.
*
* @param algorithm the name of the requested CertPathValidator
- * algorithm. See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard algorithm names.
+ * algorithm. See the CertPathValidator section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard algorithm names.
*
* @param provider the name of the provider.
*
@@ -193,12 +206,11 @@
* object is returned. Note that the specified Provider object
* does not have to be registered in the provider list.
*
- * @param algorithm the name of the requested
- * CertPathValidator
algorithm.
- * See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard algorithm names.
+ * @param algorithm the name of the requested CertPathValidator
+ * algorithm. See the CertPathValidator section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard algorithm names.
*
* @param provider the provider.
*
diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/cert/CertStore.java
--- a/jdk/src/share/classes/java/security/cert/CertStore.java Mon Oct 18 09:05:49 2010 -0400
+++ b/jdk/src/share/classes/java/security/cert/CertStore.java Mon Jan 24 14:56:14 2011 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -58,10 +58,20 @@
* vast repository of untrusted certificates and CRLs. For example, an LDAP
* implementation of CertStore
provides access to certificates
* and CRLs stored in one or more directories using the LDAP protocol and the
- * schema as defined in the RFC service attribute. See Appendix A in the
- *
- * Java Certification Path API Programmer's Guide for more information about
- * standard CertStore
types.
+ * schema as defined in the RFC service attribute.
+ *
+ *
Every implementation of the Java platform is required to support the
+ * following standard CertStore
type:
+ *
* Concurrent Access *
@@ -192,10 +202,10 @@
* cloned.
*
* @param type the name of the requested CertStore
type.
- * See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard types.
+ * See the CertStore section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard types.
*
* @param params the initialization parameters (may be null
).
*
@@ -252,10 +262,10 @@
* cloned.
*
* @param type the requested CertStore
type.
- * See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard types.
+ * See the CertStore section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard types.
*
* @param params the initialization parameters (may be null
).
*
@@ -310,10 +320,10 @@
* cloned.
*
* @param type the requested CertStore
type.
- * See Appendix A in the
- * Java Certification Path API Programmer's Guide
- * for information about standard types.
+ * See the CertStore section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard types.
*
* @param params the initialization parameters (may be null
).
*
diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/cert/Certificate.java
--- a/jdk/src/share/classes/java/security/cert/Certificate.java Mon Oct 18 09:05:49 2010 -0400
+++ b/jdk/src/share/classes/java/security/cert/Certificate.java Mon Jan 24 14:56:14 2011 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -69,9 +69,9 @@
* Creates a certificate of the specified type.
*
* @param type the standard name of the certificate type.
- * See Appendix A in the
- * Java Cryptography Architecture API Specification & Reference
+ * See the CertificateFactory section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
* for information about standard certificate types.
*/
protected Certificate(String type) {
diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/cert/CertificateFactory.java
--- a/jdk/src/share/classes/java/security/cert/CertificateFactory.java Mon Oct 18 09:05:49 2010 -0400
+++ b/jdk/src/share/classes/java/security/cert/CertificateFactory.java Mon Jan 24 14:56:14 2011 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -91,11 +91,29 @@
* }
*
*
+ *
Every implementation of the Java platform is required to support the
+ * following standard CertificateFactory
type:
+ *
CertPath
encodings:
+ * CertPath
encodings supported
* by this certificate factory, with the default encoding first. See
- * Appendix A in the
- *
- * Java Certification Path API Programmer's Guide for information about
- * standard encoding names and their formats.
+ * the CertPath Encodings section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
+ * for information about standard encoding names and their formats.
*
* Attempts to modify the returned Iterator
via its
* remove
method result in an
@@ -364,9 +381,10 @@
/**
* Generates a CertPath
object and initializes it with
* the data read from the InputStream
inStream. The data
- * is assumed to be in the specified encoding. See Appendix A in the
- *
- * Java Certification Path API Programmer's Guide
+ * is assumed to be in the specified encoding. See
+ * the CertPath Encodings section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
* for information about standard encoding names and their formats.
*
* @param inStream an InputStream
containing the data
diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/cert/CertificateFactorySpi.java
--- a/jdk/src/share/classes/java/security/cert/CertificateFactorySpi.java Mon Oct 18 09:05:49 2010 -0400
+++ b/jdk/src/share/classes/java/security/cert/CertificateFactorySpi.java Mon Jan 24 14:56:14 2011 -0500
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2006, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -182,9 +182,9 @@
/**
* Returns an iteration of the CertPath
encodings supported
* by this certificate factory, with the default encoding first. See
- * Appendix A in the
- *
- * Java Certification Path API Programmer's Guide
+ * the CertPath Encodings section in the
+ * Java Cryptography Architecture Standard Algorithm Name Documentation
* for information about standard encoding names.
*
* Attempts to modify the returned Iterator
via its
diff -r a0b9d2cd7731 -r 94e5966bdf22 jdk/src/share/classes/java/security/cert/package.html
--- a/jdk/src/share/classes/java/security/cert/package.html Mon Oct 18 09:05:49 2010 -0400
+++ b/jdk/src/share/classes/java/security/cert/package.html Mon Jan 24 14:56:14 2011 -0500
@@ -1,5 +1,5 @@
-@since JDK1.4
+@since 1.4