src/share/classes/sun/security/tools/keytool/Main.java
Print this page
@@ -61,21 +61,20 @@
import java.security.cert.X509CRL;
import java.security.cert.X509CRLEntry;
import java.security.cert.X509CRLSelector;
import javax.security.auth.x500.X500Principal;
-import sun.misc.BASE64Encoder;
+import java.util.Base64;
import sun.security.util.ObjectIdentifier;
import sun.security.pkcs10.PKCS10;
import sun.security.pkcs10.PKCS10Attribute;
import sun.security.provider.X509Factory;
import sun.security.provider.certpath.CertStoreHelper;
import sun.security.util.Password;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
-import sun.misc.BASE64Decoder;
import sun.security.pkcs.PKCS9Attribute;
import sun.security.tools.KeyStoreUtil;
import sun.security.tools.PathList;
import sun.security.util.DerValue;
import sun.security.x509.*;
@@ -354,10 +353,11 @@
if (ksStream != null) {
ksStream.close();
}
}
+
}
/**
* Parse command line arguments.
*/
@@ -553,10 +553,11 @@
boolean isKeyStoreRelated(Command cmd) {
return cmd != PRINTCERT && cmd != PRINTCERTREQ;
}
+
/**
* Execute the commands.
*/
void doCommands(PrintStream out) throws Exception {
@@ -1187,11 +1188,11 @@
break;
} else if (canRead) {
sb.append(s);
}
}
- byte[] rawReq = new BASE64Decoder().decodeBuffer(new String(sb));
+ byte[] rawReq = Base64.getMimeDecoder().decode(new String(sb));
PKCS10 req = new PKCS10(rawReq);
info.set(X509CertInfo.KEY, new CertificateX509Key(req.getSubjectPublicKeyInfo()));
info.set(X509CertInfo.SUBJECT,
dname==null?req.getSubjectName():new X500Name(dname));
@@ -1264,11 +1265,12 @@
}
X509CRLImpl crl = new X509CRLImpl(owner, firstDate, lastDate, badCerts);
crl.sign(privateKey, sigAlgName);
if (rfc) {
out.println("-----BEGIN X509 CRL-----");
- new BASE64Encoder().encodeBuffer(crl.getEncodedInternal(), out);
+ String base64EncodedCrlString = Base64.getMimeEncoder().encodeToString(crl.getEncodedInternal());
+ out.println(base64EncodedCrlString);
out.println("-----END X509 CRL-----");
} else {
out.write(crl.getEncodedInternal());
}
}
@@ -2146,11 +2148,12 @@
private void printCRL(CRL crl, PrintStream out)
throws Exception {
if (rfc) {
X509CRL xcrl = (X509CRL)crl;
out.println("-----BEGIN X509 CRL-----");
- new BASE64Encoder().encodeBuffer(xcrl.getEncoded(), out);
+ String base64EncodedCrlString = Base64.getMimeEncoder().encodeToString(xcrl.getEncoded());
+ out.println(base64EncodedCrlString);
out.println("-----END X509 CRL-----");
} else {
out.println(crl.toString());
}
}
@@ -2173,11 +2176,11 @@
break;
}
sb.append(s);
}
}
- PKCS10 req = new PKCS10(new BASE64Decoder().decodeBuffer(new String(sb)));
+ PKCS10 req = new PKCS10(Base64.getMimeDecoder().decode(new String(sb)));
PublicKey pkey = req.getSubjectPublicKeyInfo();
out.printf(rb.getString("PKCS.10.Certificate.Request.Version.1.0.Subject.s.Public.Key.s.format.s.key."),
req.getSubjectName(), pkey.getFormat(), pkey.getAlgorithm());
for (PKCS10Attribute attr: req.getAttributes().getAttributes()) {
@@ -2225,12 +2228,14 @@
MessageFormat form = new MessageFormat
(rb.getString("Certificate.i.1."));
Object[] source = {new Integer(i + 1)};
out.println(form.format(source));
}
- if (rfc) dumpCert(x509Cert, out);
- else printX509Cert(x509Cert, out);
+ if (rfc)
+ dumpCert(x509Cert, out);
+ else
+ printX509Cert(x509Cert, out);
if (i < (certs.length-1)) {
out.println();
}
}
}
@@ -2944,13 +2949,13 @@
*/
private void dumpCert(Certificate cert, PrintStream out)
throws IOException, CertificateException
{
if (rfc) {
- BASE64Encoder encoder = new BASE64Encoder();
out.println(X509Factory.BEGIN_CERT);
- encoder.encodeBuffer(cert.getEncoded(), out);
+ String base64EncodedCertString = Base64.getMimeEncoder().encodeToString(cert.getEncoded());
+ out.println(base64EncodedCertString);
out.println(X509Factory.END_CERT);
} else {
out.write(cert.getEncoded()); // binary
}
}