You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by te...@apache.org on 2009/04/28 19:01:47 UTC
svn commit: r769463 [8/9] - in
/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common:
java/security/ java/security/acl/ java/security/cert/
java/security/interfaces/ java/security/spec/ javax/security/cert/
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CRLEntry.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CRLEntry.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CRLEntry.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CRLEntry.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Alexander Y. Kleymenov
-* @version $Revision$
-*/
-
package java.security.cert;
import java.math.BigInteger;
@@ -31,17 +26,24 @@
import javax.security.auth.x500.X500Principal;
/**
- * @com.intel.drl.spec_ref
+ * Abstract base class for entries in a certificate revocation list (CRL).
+ *
+ * @see X509CRL
*/
public abstract class X509CRLEntry implements X509Extension {
/**
- * @com.intel.drl.spec_ref
+ * Creates a new {@code X509CRLEntry} instance.
*/
public X509CRLEntry() {}
/**
- * @com.intel.drl.spec_ref
+ * Returns whether the specified object equals to this instance.
+ *
+ * @param other
+ * the object to compare.
+ * @return {@code true} if the specified object equals to this instance,
+ * otherwise {@code false}.
*/
public boolean equals(Object other) {
if (other == this) {
@@ -59,7 +61,9 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the hashcode of this instance.
+ *
+ * @return the hashcode of this instance.
*/
public int hashCode() {
int res = 0;
@@ -74,31 +78,50 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns this entry in ASN.1 DER encoded form.
+ *
+ * @return the encoded form of this entry.
+ * @throws CRLException
+ * if encoding fails.
*/
public abstract byte[] getEncoded() throws CRLException;
/**
- * @com.intel.drl.spec_ref
+ * Returns the serial number of the revoked certificate.
+ *
+ * @return the serial number of the revoked certificate.
*/
public abstract BigInteger getSerialNumber();
+ /**
+ * Returns the issuer of the revoked certificate.
+ *
+ * @return the issuer of the revoked certificate, or {@code null} if the
+ * issuer is equal to the CRL issuer.
+ */
public X500Principal getCertificateIssuer() {
return null;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the date when the certificate is revoked.
+ *
+ * @return the date when the certificate is revoked.
*/
public abstract Date getRevocationDate();
/**
- * @com.intel.drl.spec_ref
+ * Returns whether this CRL entry has extensions.
+ *
+ * @return {@code true} is this CRL entry has extensions, otherwise {@code
+ * false}.
*/
public abstract boolean hasExtensions();
/**
- * @com.intel.drl.spec_ref
+ * Returns a string representation of this instance.
+ *
+ * @return a string representation of this instance.
*/
public abstract String toString();
}
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CRLSelector.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CRLSelector.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CRLSelector.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CRLSelector.java Tue Apr 28 17:01:41 2009
@@ -15,10 +15,6 @@
* limitations under the License.
*/
-/**
- * @author Alexander Y. Kleymenov
- * @version $Revision$
- */
package java.security.cert;
@@ -36,7 +32,11 @@
import org.apache.harmony.security.x501.Name;
/**
- * @com.intel.drl.spec_ref
+ * A CRL selector ({@code CRLSelector} for selecting {@code
+ * X509CRL}s that match the specified criteria.
+ * <p>
+ * When constructed, all criteria are set to default values that will match any
+ * {@code X509CRL}.
*/
public class X509CRLSelector implements CRLSelector {
@@ -56,12 +56,19 @@
private X509Certificate certificateChecking;
/**
- * @com.intel.drl.spec_ref
+ * Creates a new {@code X509CertSelector}.
*/
public X509CRLSelector() { }
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the issuer distinguished names.
+ * <p>
+ * The CRL issuer must match at least one of the specified distinguished
+ * names.
+ *
+ * @param issuers
+ * the list of issuer distinguished names to match, or {@code
+ * null} if any issuer distinguished name will do.
*/
public void setIssuers(Collection<X500Principal> issuers) {
if (issuers == null) {
@@ -77,7 +84,23 @@
}
/**
- * @com.intel.drl.spec_ref
+ * <b>Do not use:</b> use {@link #setIssuers(Collection)} or one of
+ * {@link #addIssuerName} instead. Sets the criterion for the issuer
+ * distinguished names.
+ * <p>
+ * The CRL issuer must match at least one of the specified distinguished
+ * names.
+ * <p>
+ * The specified parameter {@code names} is a collection with an entry for
+ * each name to be included in the criterion. The name is specified as a
+ * {@code String} or a byte array specifying the name (in RFC 2253 or ASN.1
+ * DER encoded form)
+ *
+ * @param names
+ * the list of issuer distinguished names to match, or {@code
+ * null} if any issuer distinguished name will do.
+ * @throws IOException
+ * if parsing fails.
*/
public void setIssuerNames(Collection<?> names) throws IOException {
if (names == null) {
@@ -106,7 +129,13 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Adds an issuer to the criterion for the issuer distinguished names.
+ * <p>
+ * The CRL issuer must match at least one of the specified distinguished
+ * names.
+ *
+ * @param issuer
+ * the issuer to add to the criterion
*/
public void addIssuer(X500Principal issuer) {
if (issuer == null) {
@@ -131,7 +160,17 @@
}
/**
- * @com.intel.drl.spec_ref
+ * <b>Do not use:</b>, use {@link #addIssuer(X500Principal)} or
+ * {@link #addIssuerName(byte[])} instead. It can fail to match some CRLs
+ * because of a loss of encoding information in a RFC 2253 string.
+ * <p>
+ * Adds an issuer to the criterion for the issuer distinguished names. The
+ * CRK issuer must match at least one of the specified distinguished names.
+ *
+ * @param iss_name
+ * the RFC 2253 encoded name.
+ * @throws IOException
+ * if parsing fails.
*/
public void addIssuerName(String iss_name) throws IOException {
if (issuerNames == null) {
@@ -149,7 +188,15 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Adds an issuer to the criterion for the issuer distinguished names.
+ * <p>
+ * The CRL issuer must match at least one of the specified distinguished
+ * names.
+ *
+ * @param iss_name
+ * the issuer to add to the criterion in ASN.1 DER encoded form.
+ * @throws IOException
+ * if parsing fails.
*/
public void addIssuerName(byte[] iss_name) throws IOException {
if (iss_name == null) {
@@ -165,21 +212,42 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the minimum CRL number.
+ * <p>
+ * The CRL must have a number extension with a value greater than or equal
+ * to the specified parameter.
+ *
+ * @param minCRL
+ * the minimum CRL number or null to not check the minimum CRL
+ * number
*/
public void setMinCRLNumber(BigInteger minCRL) {
this.minCRL = minCRL;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the maximum CRL number.
+ * <p>
+ * The CRL must have a number extension with a value less than or equal to
+ * the specified parameter.
+ *
+ * @param maxCRL
+ * the maximum CRL number or null to not check the maximum CRL
+ * number.
*/
public void setMaxCRLNumber(BigInteger maxCRL) {
this.maxCRL = maxCRL;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the CRL update period.
+ * <p>
+ * The CRL's {@code thisUpdate} value must be equal or before the specified
+ * date and the {@code nextUpdate} value must be after the specified date.
+ *
+ * @param dateAndTime
+ * the date to search for valid CRL's or {@code null} to not
+ * check the date.
*/
public void setDateAndTime(Date dateAndTime) {
if (dateAndTime == null) {
@@ -190,14 +258,23 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets a certificate hint to find CRLs. It's not a criterion but may help
+ * finding relevant CRLs.
+ *
+ * @param cert
+ * the certificate hint or {@code null}.
*/
public void setCertificateChecking(X509Certificate cert) {
this.certificateChecking = cert;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the issuer distinguished names.
+ * <p>
+ * The CRL issuer must match at least one of the distinguished names.
+ *
+ * @return the unmodifiable list of issuer distinguished names to match, or
+ * {@code null} if any issuer distinguished name will do.
*/
public Collection<X500Principal> getIssuers() {
if (issuerNames == null) {
@@ -215,7 +292,12 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the issuer distinguished names.
+ * <p>
+ * The CRL issuer must match at least one of the distinguished names.
+ *
+ * @return a copy of the list of issuer distinguished names to match, or
+ * {@code null} if any issuer distinguished name will do.
*/
public Collection<Object> getIssuerNames() {
if (issuerNames == null) {
@@ -225,21 +307,39 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the minimum CRL number.
+ * <p>
+ * The CRL must have a number extension with a value greater than or equal
+ * to the returned value.
+ *
+ * @return the minimum CRL number or {@code null} if the minimum CRL number
+ * is not to be checked.
*/
public BigInteger getMinCRL() {
return minCRL;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the maximum CRL number.
+ * <p>
+ * The CRL must have a number extension with a value less than or equal to
+ * the returned value.
+ *
+ * @return the maximum CRL number or null if the maximum CRL number is not
+ * checked.
*/
public BigInteger getMaxCRL() {
return maxCRL;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the CRL update period.
+ * <p>
+ * The CRL's {@code thisUpdate} value must be equal or before the returned
+ * date and the {@code nextUpdate} value must be after the returned date.
+ *
+ * @return the date to search for valid CRL's or {@code null} if the date is
+ * not checked.
*/
public Date getDateAndTime() {
if (dateAndTime == -1) {
@@ -249,14 +349,19 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the certificate hint to find CRLs. It's not a criterion but may
+ * help finding relevant CRLs.
+ *
+ * @return the certificate hint or {@code null} if none set.
*/
public X509Certificate getCertificateChecking() {
return certificateChecking;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a string representation of this {@code X509CRLSelector} instance.
+ *
+ * @return a string representation of this {@code X509CRLSelector} instance.
*/
public String toString() {
StringBuffer result = new StringBuffer();
@@ -287,7 +392,13 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns whether the specified CRL matches all the criteria collected in
+ * this instance.
+ *
+ * @param crl
+ * the CRL to check.
+ * @return {@code true} if the CRL matches all the criteria, otherwise
+ * {@code false}.
*/
public boolean match(CRL crl) {
if (!(crl instanceof X509CRL)) {
@@ -334,7 +445,9 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Clones this {@code X509CRL} instance.
+ *
+ * @return the cloned instance.
*/
public Object clone() {
X509CRLSelector result;
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CertSelector.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CertSelector.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CertSelector.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509CertSelector.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
- * @author Alexander Y. Kleymenov
- * @version $Revision$
- */
-
package java.security.cert;
import java.io.IOException;
@@ -52,7 +47,8 @@
/**
- * @com.intel.drl.spec_ref
+ * A certificate selector ({@code CertSelector} for selecting {@code
+ * X509Certificate}s that match the specified criteria.
*/
public class X509CertSelector implements CertSelector {
@@ -82,40 +78,57 @@
private byte[] issuerBytes;
/**
- * @com.intel.drl.spec_ref
+ * Creates a new {@code X509CertSelector}.
*/
public X509CertSelector() {}
/**
- * @com.intel.drl.spec_ref
+ * Sets the certificate that a matching certificate must be equal to.
+ *
+ * @param certificate
+ * the certificate to match, or null to not check this criteria.
*/
public void setCertificate(X509Certificate certificate) {
certificateEquals = certificate;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the certificate that a matching certificate must be equal to.
+ *
+ * @return the certificate to match, or null if this criteria is not
+ * checked.
*/
public X509Certificate getCertificate() {
return certificateEquals;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the serial number that a certificate must match.
+ *
+ * @param serialNumber
+ * the serial number to match, or {@code null} to not check the
+ * serial number.
*/
public void setSerialNumber(BigInteger serialNumber) {
this.serialNumber = serialNumber;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the serial number that a certificate must match.
+ *
+ * @return the serial number to match, or {@code null} if the serial number
+ * is not to be checked.
*/
public BigInteger getSerialNumber() {
return serialNumber;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the issuer that a certificate must match.
+ *
+ * @param issuer
+ * the issuer to match, or {@code null} if the issuer is not to
+ * be checked.
*/
public void setIssuer(X500Principal issuer) {
this.issuer = issuer;
@@ -124,14 +137,25 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the issuer that a certificate must match.
+ *
+ * @return the issuer that a certificate must match, or {@code null} if the
+ * issuer is not to be checked.
*/
public X500Principal getIssuer() {
return issuer;
}
/**
- * @com.intel.drl.spec_ref
+ * <b>Do not use</b>, use {@link #getIssuer()} or
+ * {@link #getIssuerAsBytes()} instead. Sets the issuer that a certificate
+ * must match.
+ *
+ * @param issuerName
+ * the issuer in a RFC 2253 format string, or {@code null} to not
+ * check the issuer.
+ * @throws IOException
+ * if parsing the issuer fails.
*/
public void setIssuer(String issuerName) throws IOException {
if (issuerName == null) {
@@ -150,7 +174,12 @@
}
/**
- * @com.intel.drl.spec_ref
+ * <b>Do not use</b>, use {@link #getIssuer()} or
+ * {@link #getIssuerAsBytes()} instead. Returns the issuer that a
+ * certificate must match in a RFC 2253 format string.
+ *
+ * @return the issuer in a RFC 2253 format string, or {@code null} if the
+ * issuer is not to be checked.
*/
public String getIssuerAsString() {
if (issuer == null) {
@@ -163,7 +192,13 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the issuer that a certificate must match.
+ *
+ * @param issuerDN
+ * the distinguished issuer name in ASN.1 DER encoded format, or
+ * {@code null} to not check the issuer.
+ * @throws IOException
+ * if decoding the issuer fail.
*/
public void setIssuer(byte[] issuerDN) throws IOException {
if (issuerDN == null) {
@@ -181,7 +216,12 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the issuer that a certificate must match.
+ *
+ * @return the distinguished issuer name in ASN.1 DER encoded format, or
+ * {@code null} if the issuer is not to be checked.
+ * @throws IOException
+ * if encoding the issuer fails.
*/
public byte[] getIssuerAsBytes() throws IOException {
if (issuer == null) {
@@ -196,21 +236,36 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Set the subject that a certificate must match.
+ *
+ * @param subject
+ * the subject distinguished name or {@code null} to not check
+ * the subject.
*/
public void setSubject(X500Principal subject) {
this.subject = subject;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the subject that a certificate must match.
+ *
+ * @return the subject distinguished name, or null if the subject is not to
+ * be checked.
*/
public X500Principal getSubject() {
return subject;
}
/**
- * @com.intel.drl.spec_ref
+ * <b>Do not use</b>, use {@link #setSubject(byte[])} or
+ * {@link #setSubject(X500Principal)} instead. Returns the subject that a
+ * certificate must match.
+ *
+ * @param subjectDN
+ * the subject distinguished name in RFC 2253 format or {@code
+ * null} to not check the subject.
+ * @throws IOException
+ * if decoding the subject fails.
*/
public void setSubject(String subjectDN) throws IOException {
if (subjectDN == null) {
@@ -225,7 +280,12 @@
}
/**
- * @com.intel.drl.spec_ref
+ * <b>Do not use</b>, use {@link #getSubject()} or
+ * {@link #getSubjectAsBytes()} instead. Returns the subject that a
+ * certificate must match.
+ *
+ * @return the subject distinguished name in RFC 2253 format, or {@code
+ * null} if the subject is not to be checked.
*/
public String getSubjectAsString() {
if (subject == null) {
@@ -235,7 +295,13 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the subject that a certificate must match.
+ *
+ * @param subjectDN
+ * the subject distinguished name in ASN.1 DER format, or {@code
+ * null} to not check the subject.
+ * @throws IOException
+ * if decoding the subject fails.
*/
public void setSubject(byte[] subjectDN) throws IOException {
if (subjectDN == null) {
@@ -250,7 +316,12 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the subject that a certificate must match.
+ *
+ * @return the subject distinguished name in ASN.1 DER format, or {@code
+ * null} if the subject is not to be checked.
+ * @throws IOException
+ * if encoding the subject fails.
*/
public byte[] getSubjectAsBytes() throws IOException {
if (subject == null) {
@@ -260,7 +331,13 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the {@literal SubjectKeyIdentifier} extension.
+ * <p>
+ * The {@code subjectKeyIdentifier} should be a single DER encoded value.
+ *
+ * @param subjectKeyIdentifier
+ * the subject key identifier or {@code null} to disable this
+ * check.
*/
public void setSubjectKeyIdentifier(byte[] subjectKeyIdentifier) {
if (subjectKeyIdentifier == null) {
@@ -273,7 +350,10 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the {@literal SubjectKeyIdentifier} extension.
+ *
+ * @return the subject key identifier or {@code null} if it is not to be
+ * checked.
*/
public byte[] getSubjectKeyIdentifier() {
if (subjectKeyIdentifier == null) {
@@ -285,7 +365,11 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the {@literal AuthorityKeyIdentifier} extension.
+ *
+ * @param authorityKeyIdentifier
+ * the authority key identifier, or {@code null} to disable this
+ * check.
*/
public void setAuthorityKeyIdentifier(byte[] authorityKeyIdentifier) {
if (authorityKeyIdentifier == null) {
@@ -299,7 +383,11 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the {@literal AuthorityKeyIdentifier}
+ * extension.
+ *
+ * @return the authority key identifier, or {@code null} if it is not to be
+ * checked.
*/
public byte[] getAuthorityKeyIdentifier() {
if (authorityKeyIdentifier == null) {
@@ -311,7 +399,11 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the validity date of the certificate.
+ * <p>
+ * The certificate must be valid at the specified date.
+ * @param certificateValid
+ * the validity date or {@code null} to not check the date.
*/
public void setCertificateValid(Date certificateValid) {
this.certificateValid = (certificateValid == null)
@@ -320,7 +412,10 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the validity date of the certificate.
+ *
+ * @return the validity date or {@code null} if the date is not to be
+ * checked.
*/
public Date getCertificateValid() {
return (certificateValid == null)
@@ -329,7 +424,12 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the validity date of the private key.
+ * <p>
+ * The private key must be valid at the specified date.
+ *
+ * @param privateKeyValid
+ * the validity date or {@code null} to not check the date.
*/
public void setPrivateKeyValid(Date privateKeyValid) {
if (privateKeyValid == null) {
@@ -340,7 +440,12 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the validity date of the private key.
+ * <p>
+ * The private key must be valid at the specified date.
+ *
+ * @return the validity date or {@code null} if the date is not to be
+ * checked.
*/
public Date getPrivateKeyValid() {
if (privateKeyValid != null) {
@@ -371,7 +476,16 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the subject public key signature algorithm.
+ * <p>
+ * The certificate must contain a subject public key with the algorithm
+ * specified.
+ *
+ * @param oid
+ * the OID (object identifier) of the signature algorithm or
+ * {@code null} to not check the OID.
+ * @throws IOException
+ * if the specified object identifier is invalid.
*/
public void setSubjectPublicKeyAlgID(String oid) throws IOException {
if (oid == null) {
@@ -383,14 +497,20 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the subject public key signature algorithm.
+ *
+ * @return the OID (object identifier) or the signature algorithm or {@code
+ * null} if it's not to be checked.
*/
public String getSubjectPublicKeyAlgID() {
return subjectPublicKeyAlgID;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the subject public key.
+ *
+ * @param key
+ * the subject public key or {@code null} to not check the key.
*/
public void setSubjectPublicKey(PublicKey key) {
subjectPublicKey = (key == null) ? null : key.getEncoded();
@@ -398,7 +518,13 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the subject public key.
+ *
+ * @param key
+ * the subject public key in ASN.1 DER encoded format or {@code null} to
+ * not check the key.
+ * @throws IOException
+ * if decoding the the public key fails.
*/
public void setSubjectPublicKey(byte[] key) throws IOException {
if (key == null) {
@@ -414,14 +540,22 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the subject public key.
+ *
+ * @return the subject public key or {@code null} if the key is not to be
+ * checked.
*/
public PublicKey getSubjectPublicKey() {
return subjectPublicKeyImpl;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the {@literal KeyUsage} extension.
+ *
+ * @param keyUsage
+ * the boolean array in the format as returned by
+ * {@link X509Certificate#getKeyUsage()}, or {@code null} to not
+ * check the key usage.
*/
public void setKeyUsage(boolean[] keyUsage) {
if (keyUsage == null) {
@@ -433,7 +567,11 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the {@literal KeyUsage} extension.
+ *
+ * @return the boolean array in the format as returned by
+ * {@link X509Certificate#getKeyUsage()}, or {@code null} if the key
+ * usage is not to be checked.
*/
public boolean[] getKeyUsage() {
if (keyUsage == null) {
@@ -445,7 +583,12 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the {@literal ExtendedKeyUsage} extension.
+ *
+ * @param keyUsage
+ * the set of key usage OIDs, or {@code null} to not check it.
+ * @throws IOException
+ * if one of the OIDs is invalid.
*/
public void setExtendedKeyUsage(Set<String> keyUsage)
throws IOException {
@@ -464,28 +607,61 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the {@literal ExtendedKeyUsage} extension.
+ *
+ * @return the set of key usage OIDs, or {@code null} if it's not to be
+ * checked.
*/
public Set<String> getExtendedKeyUsage() {
return extendedKeyUsage;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the flag for the matching behavior for subject alternative names.
+ * <p>
+ * The flag indicates whether a certificate must contain all or at least one
+ * of the subject alternative names specified by {@link
+ * #setSubjectAlternativeNames} or {@link #addSubjectAlternativeName}.
+ *
+ * @param matchAllNames
+ * {@code true} if a certificate must contain all of the
+ * specified subject alternative names, otherwise {@code false}.
*/
public void setMatchAllSubjectAltNames(boolean matchAllNames) {
this.matchAllNames = matchAllNames;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the flag for the matching behavior for subject alternative names.
+ * <p>
+ * The flag indicates whether a certificate must contain all or at least one
+ * of the subject alternative names specified by {@link
+ * #setSubjectAlternativeNames} or {@link #addSubjectAlternativeName}.
+ *
+ * @return {@code true} if a certificate must contain all of the specified
+ * subject alternative names, otherwise {@code false}.
*/
public boolean getMatchAllSubjectAltNames() {
return matchAllNames;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for subject alternative names.
+ * <p>
+ * the certificate must contain all or at least one of the specified subject
+ * alternative names. The behavior is specified by
+ * {@link #getMatchAllSubjectAltNames}.
+ * <p>
+ * The specified parameter {@code names} is a collection with an entry for
+ * each name to be included in the criterion. The name is specified as a
+ * {@code List}, the first entry must be an {@code Integer} specifying the
+ * name type (0-8), the second entry must be a {@code String} or a byte
+ * array specifying the name (in string or ASN.1 DER encoded form)
+ *
+ * @param names
+ * the names collection or {@code null} to not perform this check.
+ * @throws IOException
+ * if the decoding of a name fails.
*/
public void setSubjectAlternativeNames(Collection<List<?>> names)
throws IOException {
@@ -509,7 +685,14 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Adds a subject alternative name to the respective criterion.
+ *
+ * @param tag
+ * the type of the name
+ * @param name
+ * the name in string format.
+ * @throws IOException
+ * if parsing the name fails.
*/
public void addSubjectAlternativeName(int tag, String name)
throws IOException {
@@ -525,7 +708,14 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Adds a subject alternative name to the respective criterion.
+ *
+ * @param tag
+ * the type of the name.
+ * @param name
+ * the name in ASN.1 DER encoded form.
+ * @throws IOException
+ * if the decoding of the name fails.
*/
public void addSubjectAlternativeName(int tag, byte[] name)
throws IOException {
@@ -541,7 +731,18 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for subject alternative names.
+ * <p>
+ * the certificate must contain all or at least one of the specified subject
+ * alternative names. The behavior is specified by
+ * {@link #getMatchAllSubjectAltNames}.
+ * <p>
+ * The subject alternative names is a collection with an entry for each name
+ * included in the criterion. The name is specified as a {@code List}, the
+ * first entry is an {@code Integer} specifying the name type (0-8), the
+ * second entry is byte array specifying the name in ASN.1 DER encoded form)
+ *
+ * @return the names collection or {@code null} if none specified.
*/
public Collection<List<?>> getSubjectAlternativeNames() {
if (subjectAltNames == null) {
@@ -569,7 +770,45 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the name constraints.
+ * <p>
+ * The certificate must constraint subject and subject alternative names
+ * that match the specified name constraints.
+ * <p>
+ * The name constraints in ASN.1:
+ *
+ * <pre>
+ * NameConstraints ::= SEQUENCE {
+ * permittedSubtrees [0] GeneralSubtrees OPTIONAL,
+ * excludedSubtrees [1] GeneralSubtrees OPTIONAL }
+ *
+ * GeneralSubtrees ::= SEQUENCE SIZE (1..MAX) OF GeneralSubtree
+ *
+ * GeneralSubtree ::= SEQUENCE {
+ * base GeneralName,
+ * minimum [0] BaseDistance DEFAULT 0,
+ * maximum [1] BaseDistance OPTIONAL }
+ *
+ * BaseDistance ::= INTEGER (0..MAX)
+ *
+ * GeneralName ::= CHOICE {
+ * otherName [0] OtherName,
+ * rfc822Name [1] IA5String,
+ * dNSName [2] IA5String,
+ * x400Address [3] ORAddress,
+ * directoryName [4] Name,
+ * ediPartyName [5] EDIPartyName,
+ * uniformResourceIdentifier [6] IA5String,
+ * iPAddress [7] OCTET STRING,
+ * registeredID [8] OBJECT IDENTIFIER}
+ *
+ * </pre>
+ *
+ * @param bytes
+ * the name constraints in ASN.1 DER encoded format, or null to
+ * not check any constraints.
+ * @throws IOException
+ * if decoding the name constraints fail.
*/
public void setNameConstraints(byte[] bytes) throws IOException {
this.nameConstraints = (bytes == null)
@@ -578,7 +817,10 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the name constraints.
+ *
+ * @return the name constraints or {@code null} if none specified.
+ * @see #setNameConstraints
*/
public byte[] getNameConstraints() {
return (nameConstraints == null)
@@ -587,7 +829,17 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the basic constraints extension.
+ * <p>
+ * A value greater than or equal to zero indicates that a certificate must
+ * include a basic constraints extension with a path length of a least that
+ * value. A value of {@code -2} indicates that only end-entity certificates
+ * are accepted. A value of {@code -1} indicates that no check is done.
+ *
+ * @param pathLen
+ * the value specifying the criterion.
+ * @throws IllegalArgumentException
+ * if {@code pathLen} is less than {@code -2}.
*/
public void setBasicConstraints(int pathLen) {
if (pathLen < -2) {
@@ -597,14 +849,31 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the basic constraints extension.
+ * <p>
+ * A value greater than or equal to zero indicates that a certificate must
+ * include a basic constraints extension with a path length of a least that
+ * value. A value of {@code -2} indicates that only end-entity certificates
+ * are accepted. A value of {@code -1} indicates that no check is done.
+ *
+ * @return the value of the criterion.
*/
public int getBasicConstraints() {
return pathLen;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the policy constraint.
+ * <p>
+ * The certificate must have at least one of the specified certificate
+ * policy extensions. For an empty set the certificate must have at least
+ * some policies in its policy extension.
+ *
+ * @param policies
+ * the certificate policy OIDs, an empty set, or {@code null} to
+ * not perform this check.
+ * @throws IOException
+ * if parsing the specified OIDs fails.
*/
public void setPolicy(Set<String> policies) throws IOException {
if (policies == null) {
@@ -622,14 +891,36 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the policy constraint.
+ * <p>
+ * The certificate must have at least one of the certificate policy
+ * extensions. For an empty set the certificate must have at least some
+ * policies in its policy extension.
+ *
+ * @return the certificate policy OIDs, an empty set, or {@code null} if not
+ * to be checked.
*/
public Set<String> getPolicy() {
return policies;
}
/**
- * @com.intel.drl.spec_ref
+ * Sets the criterion for the pathToNames constraint.
+ * <p>
+ * This allows to specify the complete set of names, a certificate's name
+ * constraints must permit.
+ * <p>
+ * The specified parameter {@code names} is a collection with an entry for
+ * each name to be included in the criterion. The name is specified as a
+ * {@code List}, the first entry must be an {@code Integer} specifying the
+ * name type (0-8), the second entry must be a {@code String} or a byte
+ * array specifying the name (in string or ASN.1 DER encoded form)
+ *
+ * @param names
+ * the names collection or {@code null} to not perform this
+ * check.
+ * @throws IOException
+ * if decoding fails.
*/
public void setPathToNames(Collection<List<?>> names)
throws IOException {
@@ -653,7 +944,15 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Adds a {@literal "pathToName"} to the respective criterion.
+ *
+ * @param type
+ * the type of the name.
+ * @param name
+ * the name in string format.
+ * @throws IOException
+ * if parsing fails.
+ * @see #setPathToNames
*/
public void addPathToName(int type, String name) throws IOException {
GeneralName path_name = new GeneralName(type, name);
@@ -665,7 +964,15 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Adds a {@literal "pathToName"} to the respective criterion.
+ *
+ * @param type
+ * the type of the name
+ * @param name
+ * the name in ASN.1 DER encoded form.
+ * @throws IOException
+ * if decoding fails.
+ * @see #setPathToNames
*/
public void addPathToName(int type, byte[] name) throws IOException {
GeneralName path_name= new GeneralName(type, name);
@@ -677,7 +984,14 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the criterion for the pathToNames constraint.
+ * <p>
+ * The constraint is a collection with an entry for each name to be included
+ * in the criterion. The name is specified as a {@code List}, the first
+ * entry is an {@code Integer} specifying the name type (0-8), the second
+ * entry is a byte array specifying the name in ASN.1 DER encoded form.
+ *
+ * @return the pathToNames constraint or {@code null} if none specified.
*/
public Collection<List<?>> getPathToNames() {
if (pathToNames == null) {
@@ -693,7 +1007,11 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a string representation of this {@code X509CertSelector}
+ * instance.
+ *
+ * @return a string representation of this {@code X509CertSelector}
+ * instance.
*/
public String toString() {
// For convenient reading of the string representation
@@ -813,7 +1131,13 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns whether the specified certificate matches all the criteria
+ * collected in this instance.
+ *
+ * @param certificate
+ * the certificate to check.
+ * @return {@code true} if the certificate matches all the criteria,
+ * otherwise {@code false}.
*/
public boolean match(Certificate certificate) {
if (! (certificate instanceof X509Certificate)) {
@@ -1049,7 +1373,9 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Clones this {@code X509CertSelector} instance.
+ *
+ * @return the cloned instance.
*/
public Object clone() {
X509CertSelector result;
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509Certificate.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509Certificate.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509Certificate.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509Certificate.java Tue Apr 28 17:01:41 2009
@@ -15,11 +15,6 @@
* limitations under the License.
*/
-/**
-* @author Alexander Y. Kleymenov
-* @version $Revision$
-*/
-
package java.security.cert;
import java.io.ByteArrayInputStream;
@@ -34,7 +29,41 @@
import org.apache.harmony.security.internal.nls.Messages;
/**
- * @com.intel.drl.spec_ref
+ * Abstract base class for X.509 certificates.
+ * <p>
+ * This represents a standard way for accessing the attributes of X.509
+ * certificates.
+ * <p>
+ * The basic X.509 v3 format described in ASN.1:
+ *
+ * <pre>
+ * Certificate ::= SEQUENCE {
+ * tbsCertificate TBSCertificate,
+ * signatureAlgorithm AlgorithmIdentifier,
+ * signature BIT STRING }
+ *
+ * TBSCertificate ::= SEQUENCE {
+ * version [0] EXPLICIT Version DEFAULT v1,
+ * serialNumber CertificateSerialNumber,
+ * signature AlgorithmIdentifier,
+ * issuer Name,
+ * validity Validity,
+ * subject Name,
+ * subjectPublicKeyInfo SubjectPublicKeyInfo,
+ * issuerUniqueID [1] IMPLICIT UniqueIdentifier OPTIONAL,
+ * -- If present, version must be v2 or v3
+ * subjectUniqueID [2] IMPLICIT UniqueIdentifier OPTIONAL,
+ * -- If present, version must be v2 or v3
+ * extensions [3] EXPLICIT Extensions OPTIONAL
+ * -- If present, version must be v3
+ * }
+ * </pre>
+ * <p>
+ * For more information consult RFC 2459
+ * "Internet X.509 Public Key Infrastructure Certificate and CRL Profile" at <a
+ * href
+ * ="http://www.ietf.org/rfc/rfc2459.txt">http://www.ietf.org/rfc/rfc2459.txt
+ * </a> .
*/
public abstract class X509Certificate
extends Certificate implements X509Extension {
@@ -42,41 +71,114 @@
private static final long serialVersionUID = -2491127588187038216L;
/**
- * @com.intel.drl.spec_ref
+ * Creates a new {@code X509Certificate}.
*/
protected X509Certificate() {
super("X.509"); //$NON-NLS-1$
}
/**
- * @com.intel.drl.spec_ref
+ * Checks whether the certificate is currently valid.
+ * <p>
+ * The validity defined in ASN.1:
+ *
+ * <pre>
+ * validity Validity
+ *
+ * Validity ::= SEQUENCE {
+ * notBefore CertificateValidityDate,
+ * notAfter CertificateValidityDate }
+ *
+ * CertificateValidityDate ::= CHOICE {
+ * utcTime UTCTime,
+ * generalTime GeneralizedTime }
+ * </pre>
+ *
+ * @throws CertificateExpiredException
+ * if the certificate has expired.
+ * @throws CertificateNotYetValidException
+ * if the certificate is not yet valid.
*/
public abstract void checkValidity()
throws CertificateExpiredException, CertificateNotYetValidException;
/**
- * @com.intel.drl.spec_ref
+ * Checks whether the certificate is valid at the specified date.
+ *
+ * @param date
+ * the date to check the validity against.
+ * @throws CertificateExpiredException
+ * if the certificate has expired.
+ * @throws CertificateNotYetValidException
+ * if the certificate is not yet valid.
+ * @see #checkValidity()
*/
public abstract void checkValidity(Date date)
throws CertificateExpiredException, CertificateNotYetValidException;
/**
- * @com.intel.drl.spec_ref
+ * Returns the certificates {@code version} (version number).
+ * <p>
+ * The version defined is ASN.1:
+ *
+ * <pre>
+ * Version ::= INTEGER { v1(0), v2(1), v3(2) }
+ * </pre>
+ *
+ * @return the version number.
*/
public abstract int getVersion();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code serialNumber} of the certificate.
+ * <p>
+ * The ASN.1 definition of {@code serialNumber}:
+ *
+ * <pre>
+ * CertificateSerialNumber ::= INTEGER
+ * </pre>
+ *
+ * @return the serial number.
*/
public abstract BigInteger getSerialNumber();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code issuer} (issuer distinguished name) as an
+ * implementation specific {@code Principal} object.
+ * <p>
+ * The ASN.1 definition of {@code issuer}:
+ *
+ * <pre>
+ * issuer Name
+ *
+ * Name ::= CHOICE {
+ * RDNSequence }
+ *
+ * RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
+ *
+ * RelativeDistinguishedName ::= SET OF AttributeTypeAndValue
+ *
+ * AttributeTypeAndValue ::= SEQUENCE {
+ * type AttributeType,
+ * value AttributeValue }
+ *
+ * AttributeType ::= OBJECT IDENTIFIER
+ *
+ * AttributeValue ::= ANY DEFINED BY AttributeType
+ * </pre>
+ *
+ * <b>replaced by:</b> {@link #getIssuerX500Principal()}.
+ *
+ * @return the {@code issuer} as an implementation specific {@code
+ * Principal}.
*/
public abstract Principal getIssuerDN() ;
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code issuer} (issuer distinguished name) as an {@code
+ * X500Principal}.
+ *
+ * @return the {@code issuer} (issuer distinguished name).
*/
public X500Principal getIssuerX500Principal() {
@@ -97,12 +199,42 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code subject} (subject distinguished name) as an
+ * implementation specific {@code Principal} object.
+ * <p>
+ * The ASN.1 definition of {@code subject}:
+ *
+ * <pre>
+ * subject Name
+ *
+ * Name ::= CHOICE {
+ * RDNSequence }
+ *
+ * RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
+ *
+ * RelativeDistinguishedName ::= SET OF AttributeTypeAndValue
+ *
+ * AttributeTypeAndValue ::= SEQUENCE {
+ * type AttributeType,
+ * value AttributeValue }
+ *
+ * AttributeType ::= OBJECT IDENTIFIER
+ *
+ * AttributeValue ::= ANY DEFINED BY AttributeType
+ * </pre>
+ *
+ * <p>
+ * <b>replaced by:</b> {@link #getSubjectX500Principal()}.
+ *
+ * @return the {@code subject} (subject distinguished name).
*/
public abstract Principal getSubjectDN();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code subject} (subject distinguished name) as an {@code
+ * X500Principal}.
+ *
+ * @return the {@code subject} (subject distinguished name)
*/
public X500Principal getSubjectX500Principal() {
@@ -123,58 +255,109 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code notBefore} date from the validity period of the
+ * certificate.
+ *
+ * @return the start of the validity period.
*/
public abstract Date getNotBefore();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code notAfter} date of the validity period of the
+ * certificate.
+ *
+ * @return the end of the validity period.
*/
public abstract Date getNotAfter();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code tbsCertificate} information from this certificate in
+ * DER-encoded format.
+ *
+ * @return the DER-encoded certificate information.
+ * @throws CertificateEncodingException
+ * if an error occurs in encoding
*/
public abstract byte[] getTBSCertificate()
throws CertificateEncodingException;
/**
- * @com.intel.drl.spec_ref
+ * Returns the raw signature bits from the certificate.
+ *
+ * @return the raw signature bits from the certificate.
*/
public abstract byte[] getSignature();
/**
- * @com.intel.drl.spec_ref
+ * Returns the name of the algorithm for the certificate signature.
+ *
+ * @return the signature algorithm name.
*/
public abstract String getSigAlgName();
/**
- * @com.intel.drl.spec_ref
+ * Returns the OID of the signature algorithm from the certificate.
+ *
+ * @return the OID of the signature algorithm.
*/
public abstract String getSigAlgOID();
/**
- * @com.intel.drl.spec_ref
+ * Returns the parameters of the signature algorithm in DER-encoded format.
+ *
+ * @return the parameters of the signature algorithm, or {@code null} if
+ * none are used.
*/
public abstract byte[] getSigAlgParams();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code issuerUniqueID} from the certificate.
+ *
+ * @return the {@code issuerUniqueID} or {@code null} if there's none in the
+ * certificate.
*/
public abstract boolean[] getIssuerUniqueID();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code subjectUniqueID} from the certificate.
+ *
+ * @return the {@code subjectUniqueID} or null if there's none in the
+ * certificate.
*/
public abstract boolean[] getSubjectUniqueID();
/**
- * @com.intel.drl.spec_ref
+ * Returns the {@code KeyUsage} extension as a {@code boolean} array.
+ * <p>
+ * The ASN.1 definition of {@code KeyUsage}:
+ *
+ * <pre>
+ * KeyUsage ::= BIT STRING {
+ * digitalSignature (0),
+ * nonRepudiation (1),
+ * keyEncipherment (2),
+ * dataEncipherment (3),
+ * keyAgreement (4),
+ * keyCertSign (5),
+ * cRLSign (6),
+ * encipherOnly (7),
+ * decipherOnly (8) }
+ *
+ * </pre>
+ *
+ * @return the {@code KeyUsage} extension or {@code null} if there's none in
+ * the certificate.
*/
public abstract boolean[] getKeyUsage();
/**
- * @com.intel.drl.spec_ref
+ * Returns a read-only list of OID strings representing the {@code
+ * ExtKeyUsageSyntax} field of the extended key usage extension.
+ *
+ * @return the extended key usage extension, or {@code null} if there's none
+ * in the certificate.
+ * @throws CertificateParsingException
+ * if the extension decoding fails.
*/
public List<String> getExtendedKeyUsage()
throws CertificateParsingException {
@@ -182,12 +365,43 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the path length of the certificate constraints from the {@code
+ * BasicContraints} extension.
+ *
+ * @return the path length of the certificate constraints if the extension
+ * is present or {@code -1} if the extension is not present. {@code
+ * Integer.MAX_VALUE} if there's not limit.
*/
public abstract int getBasicConstraints();
/**
- * @com.intel.drl.spec_ref
+ * Returns a read-only list of the subject alternative names from the
+ * {@code SubjectAltName} extension.
+ * <p>
+ * The ASN.1 definition of {@code SubjectAltName}:
+ *
+ * <pre>
+ * SubjectAltName ::= GeneralNames
+ *
+ * GeneralNames ::= SEQUENCE SIZE (1..MAX) OF GeneralName
+ *
+ * GeneralName ::= CHOICE {
+ * otherName [0] AnotherName,
+ * rfc822Name [1] IA5String,
+ * dNSName [2] IA5String,
+ * x400Address [3] ORAddress,
+ * directoryName [4] Name,
+ * ediPartyName [5] EDIPartyName,
+ * uniformResourceIdentifier [6] IA5String,
+ * iPAddress [7] OCTET STRING,
+ * registeredID [8] OBJECT IDENTIFIER }
+ *
+ * </pre>
+ *
+ * @return the subject alternative names or {@code null} if there are none
+ * in the certificate.
+ * @throws CertificateParsingException
+ * if decoding of the extension fails.
*/
public Collection<List<?>> getSubjectAlternativeNames()
throws CertificateParsingException {
@@ -195,7 +409,33 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns a read-only list of the issuer alternative names from the {@code
+ * IssuerAltName} extension.
+ * <p>
+ * The ASN.1 definition of {@code IssuerAltName}:
+ *
+ * <pre>
+ * IssuerAltName ::= GeneralNames
+ *
+ * GeneralNames ::= SEQUENCE SIZE (1..MAX) OF GeneralName
+ *
+ * GeneralName ::= CHOICE {
+ * otherName [0] AnotherName,
+ * rfc822Name [1] IA5String,
+ * dNSName [2] IA5String,
+ * x400Address [3] ORAddress,
+ * directoryName [4] Name,
+ * ediPartyName [5] EDIPartyName,
+ * uniformResourceIdentifier [6] IA5String,
+ * iPAddress [7] OCTET STRING,
+ * registeredID [8] OBJECT IDENTIFIER }
+ *
+ * </pre>
+ *
+ * @return the issuer alternative names of {@code null} if there are none in
+ * the certificate.
+ * @throws CertificateParsingException
+ * if decoding of the extension fails.
*/
public Collection<List<?>> getIssuerAlternativeNames()
throws CertificateParsingException {
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509Extension.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509Extension.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509Extension.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/cert/X509Extension.java Tue Apr 28 17:01:41 2009
@@ -15,38 +15,52 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.cert;
import java.util.Set;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface specifying an X.509 Certificate or CRL extension.
*/
public interface X509Extension {
/**
- * @com.intel.drl.spec_ref
+ * Returns the set of OIDs of the extension(s) marked as CRITICAL, that this
+ * implementation manages.
+ *
+ * @return the set of extension OIDs marked as CRITIAL, an empty set if none
+ * are marked as CRITICAL, or {@code null} if no extensions are
+ * present.
*/
public Set<String> getCriticalExtensionOIDs();
/**
- * @com.intel.drl.spec_ref
+ * Returns the extension value as DER-encoded OCTET string for the specified
+ * OID.
+ *
+ * @param oid
+ * the object identifier to get the extension value for.
+ * @return the extension value as DER-encoded OCTET string, or {@code null}
+ * if no extension for the specified OID can be found.
*/
public byte[] getExtensionValue(String oid);
/**
- * @com.intel.drl.spec_ref
+ * Returns the set of OIDs of the extension(s) marked as NON-CRITICAL, that
+ * this implementation manages.
+ *
+ * @return the set of extension OIDs marked as NON-CRITIAL, an empty set if
+ * none are marked as NON-.CRITICAL, or {@code null} if no
+ * extensions are present.
*/
public Set<String> getNonCriticalExtensionOIDs();
/**
- * @com.intel.drl.spec_ref
+ * Returns whether this instance has an extension marked as CRITICAL that it
+ * cannot support.
+ *
+ * @return {@code true} if an unsupported CRITICAL extension is present,
+ * {@code false} otherwise.
*/
public boolean hasUnsupportedCriticalExtension();
}
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAKey.java Tue Apr 28 17:01:41 2009
@@ -15,21 +15,19 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
package java.security.interfaces;
/**
- * @com.intel.drl.spec_ref
- *
+ * The base interface for Digital Signature Algorithm (DSA) public or private
+ * keys.
*/
public interface DSAKey {
+
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the DSA key parameters.
+ *
+ * @return the DSA key parameters.
*/
public DSAParams getParams();
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAKeyPairGenerator.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAKeyPairGenerator.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAKeyPairGenerator.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAKeyPairGenerator.java Tue Apr 28 17:01:41 2009
@@ -15,31 +15,52 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.security.InvalidParameterException;
import java.security.SecureRandom;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for key generators that can generate DSA key pairs.
*/
public interface DSAKeyPairGenerator {
+
/**
- * @com.intel.drl.spec_ref
- *
+ * Initializes this generator with the prime ({@code p}), subprime ({@code
+ * q}), and base ({@code g}) values from the specified parameters.
+ *
+ * @param params
+ * the parameter values.
+ * @param random
+ * the source of randomness.
+ * @throws InvalidParameterException
+ * if the specified parameter values are {@code null} or
+ * invalid.
*/
public void initialize(DSAParams params, SecureRandom random)
throws InvalidParameterException;
/**
- * @com.intel.drl.spec_ref
- *
+ * Initializes this generator for the specified modulus length. Valid values
+ * for the modulus length are the multiples of 8 between 512 and 1024.
+ * <p>
+ * The parameter {@code genParams} specifies whether this method should
+ * generate new prime ({@code p}), subprime ({@code q}), and base ({@code g})
+ * values or whether
+ * it will use the pre-calculated values for the specified modulus
+ * length. Default parameters are available for modulus lengths of 512 and 1024
+ * bits.
+ *
+ * @param modlen
+ * the length of the modulus in bits.
+ * @param genParams
+ * whether new values should be generated.
+ * @param random
+ * the source of randomness.
+ * @throws InvalidParameterException
+ * if the specified modulus length is not valid, or if there are
+ * no pre-calculated values and {@code genParams} is {@code
+ * false}.
*/
public void initialize(int modlen, boolean genParams, SecureRandom random)
throws InvalidParameterException;
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAParams.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAParams.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAParams.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAParams.java Tue Apr 28 17:01:41 2009
@@ -15,36 +15,33 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for Digital Signature Algorithm (DSA) specific parameters.
*/
public interface DSAParams {
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the base ({@code g}) value.
+ *
+ * @return the base ({@code g}) value.
*/
public BigInteger getG();
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the prime ({@code p}) value.
+ *
+ * @return the prime ({@code p}) value.
*/
public BigInteger getP();
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the subprime ({@code q} value.
+ *
+ * @return the subprime ({@code q} value.
*/
public BigInteger getQ();
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAPrivateKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAPrivateKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAPrivateKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAPrivateKey.java Tue Apr 28 17:01:41 2009
@@ -15,30 +15,25 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
import java.security.PrivateKey;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for a Digital Signature Algorithm (DSA) private key.
*/
public interface DSAPrivateKey extends DSAKey, PrivateKey {
+
/**
- * @com.intel.drl.spec_ref
- *
+ * The serial version identifier.
*/
public static final long serialVersionUID = 7776497482533790279L;
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the private key value {@code x}.
+ *
+ * @return the private key value {@code x}.
*/
public BigInteger getX();
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAPublicKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAPublicKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAPublicKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/DSAPublicKey.java Tue Apr 28 17:01:41 2009
@@ -15,28 +15,25 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
import java.security.PublicKey;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for a Digital Signature Algorithm (DSA) public key.
*/
public interface DSAPublicKey extends DSAKey, PublicKey {
+
/**
- * @com.intel.drl.spec_ref
+ * The serial version identifier.
*/
public static final long serialVersionUID = 1234526332779022332L;
/**
- * @com.intel.drl.spec_ref
+ * Returns the public key value {@code y}.
+ *
+ * @return the public key value {@code y}.
*/
public BigInteger getY();
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECKey.java Tue Apr 28 17:01:41 2009
@@ -15,23 +15,19 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.security.spec.ECParameterSpec;
/**
- * @com.intel.drl.spec_ref
- *
+ * The base interface for Elliptic Curve (EC) public or private keys.
*/
public interface ECKey {
+
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the EC key parameters.
+ *
+ * @return the EC key parameters.
*/
public ECParameterSpec getParams();
}
\ No newline at end of file
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECPrivateKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECPrivateKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECPrivateKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECPrivateKey.java Tue Apr 28 17:01:41 2009
@@ -15,28 +15,25 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
import java.security.PrivateKey;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for an Elliptic Curve (EC) private key.
*/
public interface ECPrivateKey extends PrivateKey, ECKey {
+
/**
- * @com.intel.drl.spec_ref
+ * The serial version identifier.
*/
public static final long serialVersionUID = -7896394956925609184L;
/**
- * @com.intel.drl.spec_ref
+ * Returns the private value {@code S}.
+ *
+ * @return the private value {@code S}.
*/
public BigInteger getS();
}
\ No newline at end of file
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECPublicKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECPublicKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECPublicKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/ECPublicKey.java Tue Apr 28 17:01:41 2009
@@ -15,28 +15,25 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.security.spec.ECPoint;
import java.security.PublicKey;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for an Elliptic Curve (EC) public key.
*/
public interface ECPublicKey extends PublicKey, ECKey {
+
/**
- * @com.intel.drl.spec_ref
+ * The serial version identifier.
*/
public static final long serialVersionUID = -3314988629879632826L;
/**
- * @com.intel.drl.spec_ref
+ * Returns the public point {@code W} on an elliptic curve (EC).
+ *
+ * @return the public point {@code W} on an elliptic curve (EC).
*/
public ECPoint getW();
}
\ No newline at end of file
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAKey.java Tue Apr 28 17:01:41 2009
@@ -15,22 +15,19 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
/**
- * @com.intel.drl.spec_ref
- *
+ * The base interface for PKCS#1 RSA public and private keys.
*/
public interface RSAKey {
+
/**
- * @com.intel.drl.spec_ref
+ * Returns the modulus.
+ *
+ * @return the modulus.
*/
public BigInteger getModulus();
}
\ No newline at end of file
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAMultiPrimePrivateCrtKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAMultiPrimePrivateCrtKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAMultiPrimePrivateCrtKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAMultiPrimePrivateCrtKey.java Tue Apr 28 17:01:41 2009
@@ -15,58 +15,70 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
import java.security.spec.RSAOtherPrimeInfo;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for a Multi-Prime RSA private key. Specified by <a
+ * href="http://www.rsa.com/rsalabs/node.asp?id=2125">PKCS #1 v2.0 Amendment 1:
+ * Multi-Prime RSA</a>.
*/
public interface RSAMultiPrimePrivateCrtKey extends RSAPrivateKey {
+
/**
- * @com.intel.drl.spec_ref
+ * the serial version identifier.
*/
public static final long serialVersionUID = 618058533534628008L;
/**
- * @com.intel.drl.spec_ref
+ * Returns the CRT coefficient, {@code q^-1 mod p}.
+ *
+ * @return the CRT coefficient.
*/
public BigInteger getCrtCoefficient();
/**
- * @com.intel.drl.spec_ref
+ * Returns the information for the additional primes.
+ *
+ * @return the information for the additional primes, or {@code null} if
+ * there are only the two primes ({@code p, q}),
*/
public RSAOtherPrimeInfo[] getOtherPrimeInfo();
/**
- * @com.intel.drl.spec_ref
+ * Returns the prime factor {@code p} of {@code n}.
+ *
+ * @return the prime factor {@code p} of {@code n}.
*/
public BigInteger getPrimeP();
/**
- * @com.intel.drl.spec_ref
+ * Returns the prime factor {@code q} of {@code n}.
+ *
+ * @return the prime factor {@code q} of {@code n}.
*/
public BigInteger getPrimeQ();
/**
- * @com.intel.drl.spec_ref
+ * Returns the CRT exponent of the prime {@code p}.
+ *
+ * @return the CRT exponent of the prime {@code p}.
*/
public BigInteger getPrimeExponentP();
/**
- * @com.intel.drl.spec_ref
+ * Returns the CRT exponent of the prime {@code q}.
+ *
+ * @return the CRT exponent of the prime {@code q}.
*/
public BigInteger getPrimeExponentQ();
/**
- * @com.intel.drl.spec_ref
+ * Returns the public exponent {@code e}.
+ *
+ * @return the public exponent {@code e}.
*/
public BigInteger getPublicExponent();
}
\ No newline at end of file
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPrivateCrtKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPrivateCrtKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPrivateCrtKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPrivateCrtKey.java Tue Apr 28 17:01:41 2009
@@ -15,59 +15,59 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for a PKCS#1 RSA private key using CRT information values.
*/
public interface RSAPrivateCrtKey extends RSAPrivateKey {
/**
- * @com.intel.drl.spec_ref
+ * The serial version identifier.
*/
public static final long serialVersionUID = -5682214253527700368L;
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the CRT coefficient, {@code q^-1 mod p}.
+ *
+ * @return the CRT coefficient.
*/
public BigInteger getCrtCoefficient();
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the prime factor {@code p} of {@code n}.
+ *
+ * @return the prime factor {@code p} of {@code n}.
*/
public BigInteger getPrimeP();
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the prime factor {@code q} of {@code n}.
+ *
+ * @return the prime factor {@code q} of {@code n}.
*/
public BigInteger getPrimeQ();
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the CRT exponent of the primet {@code p}.
+ *
+ * @return the CRT exponent of the prime {@code p}.
*/
public BigInteger getPrimeExponentP();
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the CRT exponent of the prime {@code q}.
+ *
+ * @return the CRT exponent of the prime {@code q}.
*/
public BigInteger getPrimeExponentQ();
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the public exponent {@code e}.
+ *
+ * @return the public exponent {@code e}.
*/
public BigInteger getPublicExponent();
}
\ No newline at end of file
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPrivateKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPrivateKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPrivateKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPrivateKey.java Tue Apr 28 17:01:41 2009
@@ -15,29 +15,25 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
import java.security.PrivateKey;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for an PKCS#1 RSA private key.
*/
public interface RSAPrivateKey extends PrivateKey, RSAKey {
+
/**
- * @com.intel.drl.spec_ref
+ * The serial version identifier.
*/
public static final long serialVersionUID = 5187144804936595022L;
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the private exponent {@code d}.
+ *
+ * @return the private exponent {@code d}.
*/
public BigInteger getPrivateExponent();
}
\ No newline at end of file
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPublicKey.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPublicKey.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPublicKey.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/interfaces/RSAPublicKey.java Tue Apr 28 17:01:41 2009
@@ -15,29 +15,25 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.interfaces;
import java.math.BigInteger;
import java.security.PublicKey;
/**
- * @com.intel.drl.spec_ref
- *
+ * The interface for a PKCS#1 RSA public key.
*/
public interface RSAPublicKey extends PublicKey, RSAKey {
+
/**
- * @com.intel.drl.spec_ref
+ * The serial version identifier.
*/
public static final long serialVersionUID = -8727434096241101194L;
/**
- * @com.intel.drl.spec_ref
- *
+ * Returns the public exponent {@code e}.
+ *
+ * @return the public exponent {@code e}.
*/
public BigInteger getPublicExponent();
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/AlgorithmParameterSpec.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/AlgorithmParameterSpec.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/AlgorithmParameterSpec.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/AlgorithmParameterSpec.java Tue Apr 28 17:01:41 2009
@@ -15,16 +15,11 @@
* limitations under the License.
*/
-/**
-* @author Vera Y. Petrashkova
-* @version $Revision$
-*/
-
package java.security.spec;
/**
- * @com.intel.drl.spec_ref
- *
+ * The marker interface for algorithm parameter specifications. The purpose is
+ * to group parameter specifications for algorithms.
*/
public interface AlgorithmParameterSpec {
}
\ No newline at end of file
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAParameterSpec.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAParameterSpec.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAParameterSpec.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAParameterSpec.java Tue Apr 28 17:01:41 2009
@@ -15,19 +15,13 @@
* limitations under the License.
*/
-/**
-* @author Vladimir N. Molotkov
-* @version $Revision$
-*/
-
package java.security.spec;
import java.math.BigInteger;
import java.security.interfaces.DSAParams;
/**
- * @com.intel.drl.spec_ref
- *
+ * The parameter specification used with the Digital Signature Algorithm (DSA).
*/
public class DSAParameterSpec implements AlgorithmParameterSpec, DSAParams {
// Prime
@@ -38,7 +32,15 @@
private final BigInteger g;
/**
- * @com.intel.drl.spec_ref
+ * Creates a new {@code DSAParameterSpec} with the specified prime {@code p},
+ * sub-prime {@code q} and the base {@code g}.
+ *
+ * @param p
+ * the prime {@code p}.
+ * @param q
+ * the sub-prime {@code q}.
+ * @param g
+ * the base {@code g};
*/
public DSAParameterSpec(BigInteger p, BigInteger q, BigInteger g) {
this.p = p;
@@ -47,21 +49,27 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the base {@code g}.
+ *
+ * @return the base {@code g}.
*/
public BigInteger getG() {
return g;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the prime {@code p}.
+ *
+ * @return the prime {@code p}.
*/
public BigInteger getP() {
return p;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the sub-prime {@code q}.
+ *
+ * @return the sub-prime {@code q}.
*/
public BigInteger getQ() {
return q;
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAPrivateKeySpec.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAPrivateKeySpec.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAPrivateKeySpec.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAPrivateKeySpec.java Tue Apr 28 17:01:41 2009
@@ -15,18 +15,12 @@
* limitations under the License.
*/
-/**
-* @author Vladimir N. Molotkov
-* @version $Revision$
-*/
-
package java.security.spec;
import java.math.BigInteger;
/**
- * @com.intel.drl.spec_ref
- *
+ * The parameters specifying a DSA private key.
*/
public class DSAPrivateKeySpec implements KeySpec {
// Private key
@@ -39,7 +33,17 @@
private final BigInteger g;
/**
- * @com.intel.drl.spec_ref
+ * Creates a new {@code DSAPrivateKeySpec} with the specified private key,
+ * prime, sub-prime and base.
+ *
+ * @param x
+ * the private key {@code x}.
+ * @param p
+ * the prime {@code p}.
+ * @param q
+ * the sub-prime {@code q}.
+ * @param g
+ * the base {@code g}.
*/
public DSAPrivateKeySpec(BigInteger x, BigInteger p,
BigInteger q, BigInteger g) {
@@ -50,28 +54,36 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the base {@code g}.
+ *
+ * @return the base {@code g}.
*/
public BigInteger getG() {
return g;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the prime {@code p}.
+ *
+ * @return the prime {@code p}.
*/
public BigInteger getP() {
return p;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the sub-prime {@code q}.
+ *
+ * @return the sub-prime {@code q}.
*/
public BigInteger getQ() {
return q;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the private key {@code x}.
+ *
+ * @return the private key {@code x}.
*/
public BigInteger getX() {
return x;
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAPublicKeySpec.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAPublicKeySpec.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAPublicKeySpec.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/DSAPublicKeySpec.java Tue Apr 28 17:01:41 2009
@@ -15,18 +15,12 @@
* limitations under the License.
*/
-/**
-* @author Vladimir N. Molotkov
-* @version $Revision$
-*/
-
package java.security.spec;
import java.math.BigInteger;
/**
- * @com.intel.drl.spec_ref
- *
+ * The parameters specifying a DSA public key.
*/
public class DSAPublicKeySpec implements KeySpec {
// Public key
@@ -39,7 +33,17 @@
private final BigInteger g;
/**
- * @com.intel.drl.spec_ref
+ * Creates a new {@code DSAPublicKeySpec} with the specified public key,
+ * prime, sub-prime and base.
+ *
+ * @param y
+ * the public key value {@code y}.
+ * @param p
+ * the prime {@code p}.
+ * @param q
+ * the sub-prime {@code q}.
+ * @param g
+ * the base {@code g}.
*/
public DSAPublicKeySpec(BigInteger y, BigInteger p,
BigInteger q, BigInteger g) {
@@ -50,28 +54,36 @@
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the base {@code g}.
+ *
+ * @return the base {@code g}.
*/
public BigInteger getG() {
return g;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the prime {@code p}.
+ *
+ * @return the prime {@code p}.
*/
public BigInteger getP() {
return p;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the sub-prime {@code q}.
+ *
+ * @return the sub-prime {@code q}.
*/
public BigInteger getQ() {
return q;
}
/**
- * @com.intel.drl.spec_ref
+ * Returns the public key value {@code y}.
+ *
+ * @return the public key value {@code y}.
*/
public BigInteger getY() {
return y;
Modified: harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/ECField.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/ECField.java?rev=769463&r1=769462&r2=769463&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/ECField.java (original)
+++ harmony/enhanced/classlib/trunk/modules/security/src/main/java/common/java/security/spec/ECField.java Tue Apr 28 17:01:41 2009
@@ -15,21 +15,17 @@
* limitations under the License.
*/
-/**
-* @author Vladimir N. Molotkov
-* @version $Revision$
-*/
-
package java.security.spec;
/**
- * @com.intel.drl.spec_ref
- *
+ * The base interface for a Finite Field of an Elliptic Curve.
*/
public interface ECField {
/**
- * @com.intel.drl.spec_ref
+ * Returns the size of the field (in bits).
+ *
+ * @return the size of the field (in bits).
*/
int getFieldSize();
}