From: Felix Dörre Date: Tue, 2 Feb 2016 21:11:59 +0000 (+0100) Subject: Show certificate as PEM X-Git-Url: https://code.wpia.club/?p=gigi.git;a=commitdiff_plain;h=b58a76fd82cff44fb6e1cdf09c8b04d890ac2e1e Show certificate as PEM --- diff --git a/src/org/cacert/gigi/pages/account/certs/Certificates.java b/src/org/cacert/gigi/pages/account/certs/Certificates.java index 923f1425..a0afe7a9 100644 --- a/src/org/cacert/gigi/pages/account/certs/Certificates.java +++ b/src/org/cacert/gigi/pages/account/certs/Certificates.java @@ -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("cert", c.cert()); + vars.put("cert", PEM.encode("CERTIFICATE", c.cert().getEncoded())); } catch (GeneralSecurityException e) { e.printStackTrace(); } diff --git a/tests/org/cacert/gigi/pages/account/TestCertificateAdd.java b/tests/org/cacert/gigi/pages/account/TestCertificateAdd.java index 36bc70fb..97bc69c3 100644 --- a/tests/org/cacert/gigi/pages/account/TestCertificateAdd.java +++ b/tests/org/cacert/gigi/pages/account/TestCertificateAdd.java @@ -16,6 +16,7 @@ import java.net.URLEncoder; 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; @@ -148,6 +149,12 @@ public class TestCertificateAdd extends ClientTest { 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"));