@Override public InputStream exportConf(List<String> caNames) throws CaMgmtException, IOException { MgmtRequest.ExportConf req = new MgmtRequest.ExportConf(); req.setCaNames(caNames); byte[] respBytes = transmit(MgmtAction.exportConf, req); MgmtResponse.ByteArray resp = parse(respBytes, MgmtResponse.ByteArray.class); return new ByteArrayInputStream(resp.getResult()); }
@Override public X509Certificate generateCertificate(String caName, String profileName, byte[] encodedCsr, Date notBefore, Date notAfter) throws CaMgmtException { MgmtRequest.GenerateCertificate req = new MgmtRequest.GenerateCertificate(); req.setCaName(caName); req.setProfileName(profileName); req.setEncodedCsr(encodedCsr); req.setNotBefore(notBefore); req.setNotAfter(notAfter); byte[] respBytes = transmit(MgmtAction.generateCertificate, req); MgmtResponse.ByteArray resp = parse(respBytes, MgmtResponse.ByteArray.class); return parseCert(resp.getResult()); }
@Override public byte[] getCertRequest(String caName, BigInteger serialNumber) throws CaMgmtException { MgmtRequest.GetCertRequest req = new MgmtRequest.GetCertRequest(); req.setCaName(caName); req.setSerialNumber(serialNumber); byte[] respBytes = transmit(MgmtAction.getCertRequest, req); MgmtResponse.ByteArray resp = parse(respBytes, MgmtResponse.ByteArray.class); return resp.getResult(); }
private X509CRL parseCrl(byte[] respBytes) throws CaMgmtException { MgmtResponse.ByteArray resp = parse(respBytes, MgmtResponse.ByteArray.class); try { return X509Util.parseCrl(resp.getResult()); } catch (CertificateException | CRLException ex) { throw new CaMgmtException("could not parse X.509 CRL", ex); } }
@Override public X509Certificate generateRootCa(MgmtEntry.Ca caEntry, String certprofileName, byte[] encodedCsr, BigInteger serialNumber) throws CaMgmtException { MgmtRequest.GenerateRootCa req = new MgmtRequest.GenerateRootCa(); req.setCaEntry(new CaEntryWrapper(caEntry)); req.setCertprofileName(certprofileName); req.setEncodedCsr(encodedCsr); req.setSerialNumber(serialNumber); byte[] respBytes = transmit(MgmtAction.generateRootCa, req); MgmtResponse.ByteArray resp = parse(respBytes, MgmtResponse.ByteArray.class); return parseCert(resp.getResult()); }