]> WPIA git - gigi.git/commitdiff
Show certificate as PEM
authorFelix Dörre <felix@dogcraft.de>
Tue, 2 Feb 2016 21:11:59 +0000 (22:11 +0100)
committerFelix Dörre <felix@dogcraft.de>
Tue, 2 Feb 2016 21:43:25 +0000 (22:43 +0100)
src/org/cacert/gigi/pages/account/certs/Certificates.java
tests/org/cacert/gigi/pages/account/TestCertificateAdd.java

index 923f1425ef250c4ac909610d99522b5619255106..a0afe7a9091de272b06d85537b09ee296ee9001f 100644 (file)
@@ -284,7 +284,7 @@ public class Certificates extends Page implements HandlesMixedRequest {
             vars.put("serial", URLEncoder.encode(serial, "UTF-8"));
             vars.put("trustchain", new TrustchainIterable(c.getParent()));
             try {
             vars.put("serial", URLEncoder.encode(serial, "UTF-8"));
             vars.put("trustchain", new TrustchainIterable(c.getParent()));
             try {
-                vars.put("cert", c.cert());
+                vars.put("cert", PEM.encode("CERTIFICATE", c.cert().getEncoded()));
             } catch (GeneralSecurityException e) {
                 e.printStackTrace();
             }
             } catch (GeneralSecurityException e) {
                 e.printStackTrace();
             }
index 36bc70fb2690596a62ba270bf00f1342907a76f7..97bc69c3c1d9e91f339c78d378cf1949178bf8b4 100644 (file)
@@ -16,6 +16,7 @@ import java.net.URLEncoder;
 import java.security.GeneralSecurityException;
 import java.security.KeyPair;
 import java.security.Signature;
 import java.security.GeneralSecurityException;
 import java.security.KeyPair;
 import java.security.Signature;
+import java.security.cert.Certificate;
 import java.security.cert.CertificateException;
 import java.security.cert.CertificateFactory;
 import java.security.cert.X509Certificate;
 import java.security.cert.CertificateException;
 import java.security.cert.CertificateFactory;
 import java.security.cert.X509Certificate;
@@ -148,6 +149,12 @@ public class TestCertificateAdd extends ClientTest {
 
         uc = authenticate(new URL(huc.getHeaderField("Location")));
         String gui = IOUtils.readURL(uc);
 
         uc = authenticate(new URL(huc.getHeaderField("Location")));
         String gui = IOUtils.readURL(uc);
+        Pattern p = Pattern.compile("-----BEGIN CERTIFICATE-----[^-]+-----END CERTIFICATE-----");
+        Matcher m = p.matcher(gui);
+        assertTrue(m.find());
+        byte[] cert = PEM.decode("CERTIFICATE", m.group(0));
+        Certificate c = CertificateFactory.getInstance("X509").generateCertificate(new ByteArrayInputStream(cert));
+        gui = c.toString();
         assertThat(gui, containsString("clientAuth"));
         assertThat(gui, containsString("CN=CAcert WoT User"));
         assertThat(gui, containsString("SHA512withRSA"));
         assertThat(gui, containsString("clientAuth"));
         assertThat(gui, containsString("CN=CAcert WoT User"));
         assertThat(gui, containsString("SHA512withRSA"));