7198416: CertificateIssuerName and CertificateSubjectName are redundant

Reviewed-by: mullan
This commit is contained in:
Jason Uh 2012-11-08 12:51:25 -05:00 committed by Sean Mullan
parent 5d67e2bbb1
commit fdfd7968f7
10 changed files with 77 additions and 85 deletions

View file

@ -39,7 +39,6 @@ import java.security.*;
import sun.security.timestamp.*; import sun.security.timestamp.*;
import sun.security.util.*; import sun.security.util.*;
import sun.security.x509.AlgorithmId; import sun.security.x509.AlgorithmId;
import sun.security.x509.CertificateIssuerName;
import sun.security.x509.X509CertImpl; import sun.security.x509.X509CertImpl;
import sun.security.x509.X509CertInfo; import sun.security.x509.X509CertInfo;
import sun.security.x509.X509CRLImpl; import sun.security.x509.X509CRLImpl;
@ -712,8 +711,8 @@ public class PKCS7 {
X509CertInfo tbsCert = X509CertInfo tbsCert =
new X509CertInfo(cert.getTBSCertificate()); new X509CertInfo(cert.getTBSCertificate());
certIssuerName = (Principal) certIssuerName = (Principal)
tbsCert.get(CertificateIssuerName.NAME + "." + tbsCert.get(X509CertInfo.ISSUER + "." +
CertificateIssuerName.DN_NAME); X509CertInfo.DN_NAME);
} catch (Exception e) { } catch (Exception e) {
// error generating X500Name object from the cert's // error generating X500Name object from the cert's
// issuer DN, leave name as is. // issuer DN, leave name as is.

View file

@ -2259,9 +2259,9 @@ class SignatureFile {
X509CertInfo tbsCert = new X509CertInfo tbsCert = new
X509CertInfo(certChain[0].getTBSCertificate()); X509CertInfo(certChain[0].getTBSCertificate());
issuerName = (Principal) issuerName = (Principal)
tbsCert.get(CertificateIssuerName.NAME + "." + tbsCert.get(X509CertInfo.ISSUER + "." +
CertificateIssuerName.DN_NAME); X509CertInfo.DN_NAME);
} }
BigInteger serial = certChain[0].getSerialNumber(); BigInteger serial = certChain[0].getSerialNumber();
String signatureAlgorithm; String signatureAlgorithm;

View file

@ -258,10 +258,10 @@ public final class CertAndKeyGen {
AlgorithmId algID = AlgorithmId.get(sigAlg); AlgorithmId algID = AlgorithmId.get(sigAlg);
info.set(X509CertInfo.ALGORITHM_ID, info.set(X509CertInfo.ALGORITHM_ID,
new CertificateAlgorithmId(algID)); new CertificateAlgorithmId(algID));
info.set(X509CertInfo.SUBJECT, new CertificateSubjectName(myname)); info.set(X509CertInfo.SUBJECT, myname);
info.set(X509CertInfo.KEY, new CertificateX509Key(publicKey)); info.set(X509CertInfo.KEY, new CertificateX509Key(publicKey));
info.set(X509CertInfo.VALIDITY, interval); info.set(X509CertInfo.VALIDITY, interval);
info.set(X509CertInfo.ISSUER, new CertificateIssuerName(myname)); info.set(X509CertInfo.ISSUER, myname);
if (ext != null) info.set(X509CertInfo.EXTENSIONS, ext); if (ext != null) info.set(X509CertInfo.EXTENSIONS, ext);
cert = new X509CertImpl(info); cert = new X509CertImpl(info);

View file

@ -1145,7 +1145,7 @@ public final class Main {
X509CertInfo signerCertInfo = (X509CertInfo)signerCertImpl.get( X509CertInfo signerCertInfo = (X509CertInfo)signerCertImpl.get(
X509CertImpl.NAME + "." + X509CertImpl.INFO); X509CertImpl.NAME + "." + X509CertImpl.INFO);
X500Name issuer = (X500Name)signerCertInfo.get(X509CertInfo.SUBJECT + "." + X500Name issuer = (X500Name)signerCertInfo.get(X509CertInfo.SUBJECT + "." +
CertificateSubjectName.DN_NAME); X509CertInfo.DN_NAME);
Date firstDate = getStartDate(startDate); Date firstDate = getStartDate(startDate);
Date lastDate = new Date(); Date lastDate = new Date();
@ -1170,7 +1170,7 @@ public final class Main {
info.set(X509CertInfo.ALGORITHM_ID, info.set(X509CertInfo.ALGORITHM_ID,
new CertificateAlgorithmId( new CertificateAlgorithmId(
AlgorithmId.get(sigAlgName))); AlgorithmId.get(sigAlgName)));
info.set(X509CertInfo.ISSUER, new CertificateIssuerName(issuer)); info.set(X509CertInfo.ISSUER, issuer);
BufferedReader reader = new BufferedReader(new InputStreamReader(in)); BufferedReader reader = new BufferedReader(new InputStreamReader(in));
boolean canRead = false; boolean canRead = false;
@ -1193,8 +1193,8 @@ public final class Main {
PKCS10 req = new PKCS10(rawReq); PKCS10 req = new PKCS10(rawReq);
info.set(X509CertInfo.KEY, new CertificateX509Key(req.getSubjectPublicKeyInfo())); info.set(X509CertInfo.KEY, new CertificateX509Key(req.getSubjectPublicKeyInfo()));
info.set(X509CertInfo.SUBJECT, new CertificateSubjectName( info.set(X509CertInfo.SUBJECT,
dname==null?req.getSubjectName():new X500Name(dname))); dname==null?req.getSubjectName():new X500Name(dname));
CertificateExtensions reqex = null; CertificateExtensions reqex = null;
Iterator<PKCS10Attribute> attrs = req.getAttributes().getAttributes().iterator(); Iterator<PKCS10Attribute> attrs = req.getAttributes().getAttributes().iterator();
while (attrs.hasNext()) { while (attrs.hasNext()) {
@ -1234,7 +1234,7 @@ public final class Main {
X509CertInfo signerCertInfo = (X509CertInfo)signerCertImpl.get( X509CertInfo signerCertInfo = (X509CertInfo)signerCertImpl.get(
X509CertImpl.NAME + "." + X509CertImpl.INFO); X509CertImpl.NAME + "." + X509CertImpl.INFO);
X500Name owner = (X500Name)signerCertInfo.get(X509CertInfo.SUBJECT + "." + X500Name owner = (X500Name)signerCertInfo.get(X509CertInfo.SUBJECT + "." +
CertificateSubjectName.DN_NAME); X509CertInfo.DN_NAME);
Date firstDate = getStartDate(startDate); Date firstDate = getStartDate(startDate);
Date lastDate = (Date) firstDate.clone(); Date lastDate = (Date) firstDate.clone();
@ -2405,16 +2405,16 @@ public final class Main {
if (dname == null) { if (dname == null) {
// Get the owner name from the certificate // Get the owner name from the certificate
owner = (X500Name)certInfo.get(X509CertInfo.SUBJECT + "." + owner = (X500Name)certInfo.get(X509CertInfo.SUBJECT + "." +
CertificateSubjectName.DN_NAME); X509CertInfo.DN_NAME);
} else { } else {
// Use the owner name specified at the command line // Use the owner name specified at the command line
owner = new X500Name(dname); owner = new X500Name(dname);
certInfo.set(X509CertInfo.SUBJECT + "." + certInfo.set(X509CertInfo.SUBJECT + "." +
CertificateSubjectName.DN_NAME, owner); X509CertInfo.DN_NAME, owner);
} }
// Make issuer same as owner (self-signed!) // Make issuer same as owner (self-signed!)
certInfo.set(X509CertInfo.ISSUER + "." + certInfo.set(X509CertInfo.ISSUER + "." +
CertificateIssuerName.DN_NAME, owner); X509CertInfo.DN_NAME, owner);
// The inner and outer signature algorithms have to match. // The inner and outer signature algorithms have to match.
// The way we achieve that is really ugly, but there seems to be no // The way we achieve that is really ugly, but there seems to be no

View file

@ -96,12 +96,10 @@ public class X509CertImpl extends X509Certificate implements DerEncoder {
*/ */
// x509.info.subject.dname // x509.info.subject.dname
public static final String SUBJECT_DN = NAME + DOT + INFO + DOT + public static final String SUBJECT_DN = NAME + DOT + INFO + DOT +
X509CertInfo.SUBJECT + DOT + X509CertInfo.SUBJECT + DOT + X509CertInfo.DN_NAME;
CertificateSubjectName.DN_NAME;
// x509.info.issuer.dname // x509.info.issuer.dname
public static final String ISSUER_DN = NAME + DOT + INFO + DOT + public static final String ISSUER_DN = NAME + DOT + INFO + DOT +
X509CertInfo.ISSUER + DOT + X509CertInfo.ISSUER + DOT + X509CertInfo.DN_NAME;
CertificateIssuerName.DN_NAME;
// x509.info.serialNumber.number // x509.info.serialNumber.number
public static final String SERIAL_ID = NAME + DOT + INFO + DOT + public static final String SERIAL_ID = NAME + DOT + INFO + DOT +
X509CertInfo.SERIAL_NUMBER + DOT + X509CertInfo.SERIAL_NUMBER + DOT +
@ -890,9 +888,8 @@ public class X509CertImpl extends X509Certificate implements DerEncoder {
if (info == null) if (info == null)
return null; return null;
try { try {
Principal subject = (Principal)info.get( Principal subject = (Principal)info.get(X509CertInfo.SUBJECT + DOT +
CertificateSubjectName.NAME + DOT + X509CertInfo.DN_NAME);
CertificateSubjectName.DN_NAME);
return subject; return subject;
} catch (Exception e) { } catch (Exception e) {
return null; return null;
@ -910,8 +907,8 @@ public class X509CertImpl extends X509Certificate implements DerEncoder {
} }
try { try {
X500Principal subject = (X500Principal)info.get( X500Principal subject = (X500Principal)info.get(
CertificateSubjectName.NAME + DOT + X509CertInfo.SUBJECT + DOT +
CertificateSubjectName.DN_PRINCIPAL); "x500principal");
return subject; return subject;
} catch (Exception e) { } catch (Exception e) {
return null; return null;
@ -927,9 +924,8 @@ public class X509CertImpl extends X509Certificate implements DerEncoder {
if (info == null) if (info == null)
return null; return null;
try { try {
Principal issuer = (Principal)info.get( Principal issuer = (Principal)info.get(X509CertInfo.ISSUER + DOT +
CertificateIssuerName.NAME + DOT + X509CertInfo.DN_NAME);
CertificateIssuerName.DN_NAME);
return issuer; return issuer;
} catch (Exception e) { } catch (Exception e) {
return null; return null;
@ -947,8 +943,8 @@ public class X509CertImpl extends X509Certificate implements DerEncoder {
} }
try { try {
X500Principal issuer = (X500Principal)info.get( X500Principal issuer = (X500Principal)info.get(
CertificateIssuerName.NAME + DOT + X509CertInfo.ISSUER + DOT +
CertificateIssuerName.DN_PRINCIPAL); "x500principal");
return issuer; return issuer;
} catch (Exception e) { } catch (Exception e) {
return null; return null;

View file

@ -68,12 +68,13 @@ public class X509CertInfo implements CertAttrSet<String> {
public static final String IDENT = "x509.info"; public static final String IDENT = "x509.info";
// Certificate attribute names // Certificate attribute names
public static final String NAME = "info"; public static final String NAME = "info";
public static final String DN_NAME = "dname";
public static final String VERSION = CertificateVersion.NAME; public static final String VERSION = CertificateVersion.NAME;
public static final String SERIAL_NUMBER = CertificateSerialNumber.NAME; public static final String SERIAL_NUMBER = CertificateSerialNumber.NAME;
public static final String ALGORITHM_ID = CertificateAlgorithmId.NAME; public static final String ALGORITHM_ID = CertificateAlgorithmId.NAME;
public static final String ISSUER = CertificateIssuerName.NAME; public static final String ISSUER = "issuer";
public static final String SUBJECT = "subject";
public static final String VALIDITY = CertificateValidity.NAME; public static final String VALIDITY = CertificateValidity.NAME;
public static final String SUBJECT = CertificateSubjectName.NAME;
public static final String KEY = CertificateX509Key.NAME; public static final String KEY = CertificateX509Key.NAME;
public static final String ISSUER_ID = "issuerID"; public static final String ISSUER_ID = "issuerID";
public static final String SUBJECT_ID = "subjectID"; public static final String SUBJECT_ID = "subjectID";
@ -83,9 +84,9 @@ public class X509CertInfo implements CertAttrSet<String> {
protected CertificateVersion version = new CertificateVersion(); protected CertificateVersion version = new CertificateVersion();
protected CertificateSerialNumber serialNum = null; protected CertificateSerialNumber serialNum = null;
protected CertificateAlgorithmId algId = null; protected CertificateAlgorithmId algId = null;
protected CertificateIssuerName issuer = null; protected X500Name issuer = null;
protected X500Name subject = null;
protected CertificateValidity interval = null; protected CertificateValidity interval = null;
protected CertificateSubjectName subject = null;
protected CertificateX509Key pubKey = null; protected CertificateX509Key pubKey = null;
// X509.v2 & v3 extensions // X509.v2 & v3 extensions
@ -399,11 +400,7 @@ public class X509CertInfo implements CertAttrSet<String> {
break; break;
case ATTR_ISSUER: case ATTR_ISSUER:
if (suffix == null) { setIssuer(val);
setIssuer(val);
} else {
issuer.set(suffix, val);
}
break; break;
case ATTR_VALIDITY: case ATTR_VALIDITY:
@ -415,11 +412,7 @@ public class X509CertInfo implements CertAttrSet<String> {
break; break;
case ATTR_SUBJECT: case ATTR_SUBJECT:
if (suffix == null) { setSubject(val);
setSubject(val);
} else {
subject.set(suffix, val);
}
break; break;
case ATTR_KEY: case ATTR_KEY:
@ -493,11 +486,7 @@ public class X509CertInfo implements CertAttrSet<String> {
} }
break; break;
case (ATTR_ISSUER): case (ATTR_ISSUER):
if (suffix == null) { issuer = null;
issuer = null;
} else {
issuer.delete(suffix);
}
break; break;
case (ATTR_VALIDITY): case (ATTR_VALIDITY):
if (suffix == null) { if (suffix == null) {
@ -507,11 +496,7 @@ public class X509CertInfo implements CertAttrSet<String> {
} }
break; break;
case (ATTR_SUBJECT): case (ATTR_SUBJECT):
if (suffix == null) { subject = null;
subject = null;
} else {
subject.delete(suffix);
}
break; break;
case (ATTR_KEY): case (ATTR_KEY):
if (suffix == null) { if (suffix == null) {
@ -571,13 +556,13 @@ public class X509CertInfo implements CertAttrSet<String> {
if (suffix == null) { if (suffix == null) {
return(subject); return(subject);
} else { } else {
return(subject.get(suffix)); return(getX500Name(suffix, false));
} }
case (ATTR_ISSUER): case (ATTR_ISSUER):
if (suffix == null) { if (suffix == null) {
return(issuer); return(issuer);
} else { } else {
return(issuer.get(suffix)); return(getX500Name(suffix, true));
} }
case (ATTR_KEY): case (ATTR_KEY):
if (suffix == null) { if (suffix == null) {
@ -617,6 +602,21 @@ public class X509CertInfo implements CertAttrSet<String> {
return null; return null;
} }
/*
* Get the Issuer or Subject name
*/
private Object getX500Name(String name, boolean getIssuer)
throws IOException {
if (name.equalsIgnoreCase(X509CertInfo.DN_NAME)) {
return getIssuer ? issuer : subject;
} else if (name.equalsIgnoreCase("x500principal")) {
return getIssuer ? issuer.asX500Principal()
: subject.asX500Principal();
} else {
throw new IOException("Attribute name not recognized.");
}
}
/* /*
* This routine unmarshals the certificate information. * This routine unmarshals the certificate information.
*/ */
@ -646,9 +646,8 @@ public class X509CertInfo implements CertAttrSet<String> {
algId = new CertificateAlgorithmId(in); algId = new CertificateAlgorithmId(in);
// Issuer name // Issuer name
issuer = new CertificateIssuerName(in); issuer = new X500Name(in);
X500Name issuerDN = (X500Name)issuer.get(CertificateIssuerName.DN_NAME); if (issuer.isEmpty()) {
if (issuerDN.isEmpty()) {
throw new CertificateParsingException( throw new CertificateParsingException(
"Empty issuer DN not allowed in X509Certificates"); "Empty issuer DN not allowed in X509Certificates");
} }
@ -657,10 +656,9 @@ public class X509CertInfo implements CertAttrSet<String> {
interval = new CertificateValidity(in); interval = new CertificateValidity(in);
// subject name // subject name
subject = new CertificateSubjectName(in); subject = new X500Name(in);
X500Name subjectDN = (X500Name)subject.get(CertificateSubjectName.DN_NAME);
if ((version.compare(CertificateVersion.V1) == 0) && if ((version.compare(CertificateVersion.V1) == 0) &&
subjectDN.isEmpty()) { subject.isEmpty()) {
throw new CertificateParsingException( throw new CertificateParsingException(
"Empty subject DN not allowed in v1 certificate"); "Empty subject DN not allowed in v1 certificate");
} }
@ -712,13 +710,12 @@ public class X509CertInfo implements CertAttrSet<String> {
/* /*
* Verify if X.509 V3 Certificate is compliant with RFC 3280. * Verify if X.509 V3 Certificate is compliant with RFC 3280.
*/ */
private void verifyCert(CertificateSubjectName subject, private void verifyCert(X500Name subject,
CertificateExtensions extensions) CertificateExtensions extensions)
throws CertificateParsingException, IOException { throws CertificateParsingException, IOException {
// if SubjectName is empty, check for SubjectAlternativeNameExtension // if SubjectName is empty, check for SubjectAlternativeNameExtension
X500Name subjectDN = (X500Name)subject.get(CertificateSubjectName.DN_NAME); if (subject.isEmpty()) {
if (subjectDN.isEmpty()) {
if (extensions == null) { if (extensions == null) {
throw new CertificateParsingException("X.509 Certificate is " + throw new CertificateParsingException("X.509 Certificate is " +
"incomplete: subject field is empty, and certificate " + "incomplete: subject field is empty, and certificate " +
@ -859,11 +856,11 @@ public class X509CertInfo implements CertAttrSet<String> {
* @exception CertificateException on invalid data. * @exception CertificateException on invalid data.
*/ */
private void setIssuer(Object val) throws CertificateException { private void setIssuer(Object val) throws CertificateException {
if (!(val instanceof CertificateIssuerName)) { if (!(val instanceof X500Name)) {
throw new CertificateException( throw new CertificateException(
"Issuer class type invalid."); "Issuer class type invalid.");
} }
issuer = (CertificateIssuerName)val; issuer = (X500Name)val;
} }
/** /**
@ -887,11 +884,11 @@ public class X509CertInfo implements CertAttrSet<String> {
* @exception CertificateException on invalid data. * @exception CertificateException on invalid data.
*/ */
private void setSubject(Object val) throws CertificateException { private void setSubject(Object val) throws CertificateException {
if (!(val instanceof CertificateSubjectName)) { if (!(val instanceof X500Name)) {
throw new CertificateException( throw new CertificateException(
"Subject class type invalid."); "Subject class type invalid.");
} }
subject = (CertificateSubjectName)val; subject = (X500Name)val;
} }
/** /**

View file

@ -6,7 +6,7 @@
<h2><center>Certificate Attributes</center></h2> <h2><center>Certificate Attributes</center></h2>
<font size=3><center>July 1998</font></center> <font size=3><center>July 1998</font></center>
<p> <p>
In JDK1.2 we provide an implementation of X.509 (version 3). In JDK1.2 we provide an implementation of X.509 (version 3).
The X509CertImpl class supports the following methods to The X509CertImpl class supports the following methods to
manipulate the various attributes of a certificate: manipulate the various attributes of a certificate:
<pre> <pre>
@ -86,9 +86,9 @@ AlgorithmId</td>
<td>issuer</td> <td>issuer</td>
<td>x509.info.issuer<br> <td>x509.info.issuer<br>
x509.info.issuer.dname</td> x509.info.issuer.dname</td>
<td>CertificateIssuerName.IDENT<br> <td>none<br>
X509CertImpl.ISSUER_DN</td> X509CertImpl.ISSUER_DN</td>
<td>CertificateIssuerName<br> <td>X500Name<br>
X500Name</td> X500Name</td>
</tr> </tr>
<tr> <tr>
@ -109,9 +109,9 @@ java.util.Date</td>
<td>subject</td> <td>subject</td>
<td>x509.info.subject<br> <td>x509.info.subject<br>
x509.info.subject.dname</td> x509.info.subject.dname</td>
<td>CertificateSubjectName.IDENT<br> <td>none<br>
X509CertImpl.SUBJECT_DN</td> X509CertImpl.SUBJECT_DN</td>
<td>CertificateSubjectName<br> <td>X500Name<br>
X500Name</td> X500Name</td>
</tr> </tr>
<tr> <tr>
@ -127,18 +127,18 @@ X509Key</td>
<td>issuerUniqueID</td> <td>issuerUniqueID</td>
<td>x509.info.issuerID<br> <td>x509.info.issuerID<br>
x509.info.issuerID.id</td> x509.info.issuerID.id</td>
<td>CertificateIssuerUniqueIdentity.IDENT<br> <td>none<br>
none</td> none</td>
<td>CertificateIssuerUniqueIdentity<br> <td>UniqueIdentity<br>
UniqueIdentity</td> UniqueIdentity</td>
</tr> </tr>
<tr> <tr>
<td>subjectUniqueID</td> <td>subjectUniqueID</td>
<td>x509.info.subjectID<br> <td>x509.info.subjectID<br>
x509.info.subjectID.id</td> x509.info.subjectID.id</td>
<td>CertificateSubjectUniqueIdentity.IDENT<br> <td>none<br>
none</td> none</td>
<td>CertificateSubjectUniqueIdentity<br> <td>UniqueIdentity<br>
UniqueIdentity</td> UniqueIdentity</td>
</tr> </tr>
<tr> <tr>

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -54,8 +54,8 @@ public class GenKeyStore {
certInfo.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V1)); certInfo.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V1));
certInfo.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(1)); certInfo.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(1));
certInfo.set(X509CertInfo.ALGORITHM_ID, new CertificateAlgorithmId(algID)); certInfo.set(X509CertInfo.ALGORITHM_ID, new CertificateAlgorithmId(algID));
certInfo.set(X509CertInfo.SUBJECT, new CertificateSubjectName(name)); certInfo.set(X509CertInfo.SUBJECT, name);
certInfo.set(X509CertInfo.ISSUER, new CertificateIssuerName(name)); certInfo.set(X509CertInfo.ISSUER, name);
certInfo.set(X509CertInfo.KEY, new CertificateX509Key(publicKey)); certInfo.set(X509CertInfo.KEY, new CertificateX509Key(publicKey));
certInfo.set(X509CertInfo.VALIDITY, new CertificateValidity(date, date)); certInfo.set(X509CertInfo.VALIDITY, new CertificateValidity(date, date));

View file

@ -57,7 +57,7 @@ public class BigCRL {
X509CertInfo signerCertInfo = (X509CertInfo)signerCertImpl.get( X509CertInfo signerCertInfo = (X509CertInfo)signerCertImpl.get(
X509CertImpl.NAME + "." + X509CertImpl.INFO); X509CertImpl.NAME + "." + X509CertImpl.INFO);
X500Name owner = (X500Name)signerCertInfo.get(X509CertInfo.SUBJECT + "." X500Name owner = (X500Name)signerCertInfo.get(X509CertInfo.SUBJECT + "."
+ CertificateSubjectName.DN_NAME); + X509CertInfo.DN_NAME);
Date date = new Date(); Date date = new Date();
PrivateKey privateKey = (PrivateKey) PrivateKey privateKey = (PrivateKey)

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2003, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -54,8 +54,8 @@ public class GenKeyStore {
certInfo.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V1)); certInfo.set(X509CertInfo.VERSION, new CertificateVersion(CertificateVersion.V1));
certInfo.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(1)); certInfo.set(X509CertInfo.SERIAL_NUMBER, new CertificateSerialNumber(1));
certInfo.set(X509CertInfo.ALGORITHM_ID, new CertificateAlgorithmId(algID)); certInfo.set(X509CertInfo.ALGORITHM_ID, new CertificateAlgorithmId(algID));
certInfo.set(X509CertInfo.SUBJECT, new CertificateSubjectName(name)); certInfo.set(X509CertInfo.SUBJECT, name);
certInfo.set(X509CertInfo.ISSUER, new CertificateIssuerName(name)); certInfo.set(X509CertInfo.ISSUER, name);
certInfo.set(X509CertInfo.KEY, new CertificateX509Key(publicKey)); certInfo.set(X509CertInfo.KEY, new CertificateX509Key(publicKey));
certInfo.set(X509CertInfo.VALIDITY, new CertificateValidity(date, date)); certInfo.set(X509CertInfo.VALIDITY, new CertificateValidity(date, date));