org.jscep.server.ScepServletの実装メソッドdoEnroll(List<X509Certificate> doEnroll(CertificationRequest certificationRequest)
)の実装を提供する必要があります。
提供されたCertificationRequestからX509Certificateを返すにはどうすればよいですか?
CertificationRequestの他に、署名に使用する必要のある証明書もあります
証明書を生成するための残りのコードがあるので、証明書要求から公開鍵を取得する方法で十分です。
私が今まで持っているもの:
protected List<X509Certificate> doEnroll(CertificationRequest certificationRequest) throws OperationFailureException, Exception {
CaCertificate caCertificate = getSelfSignedCertificate();
X509V3CertificateGenerator certGen = new X509V3CertificateGenerator();
certGen.setSerialNumber(BigInteger.valueOf(System.currentTimeMillis()));
certGen.setIssuerDN(caCertificate.getCertificate().getSubjectX500Principal());
certGen.setNotBefore(notBefore);
certGen.setNotAfter(notAfter);
certGen.setSubjectDN(certificationRequest.getCertificationRequestInfo().getSubject());
certGen.setPublicKey(publicKey); // this is basically what I need
X509Certificate issuedCert = certGen.generate(caCertificate.getKeypair().getPrivate());
List<X509Certificate> x509Certificates = new ArrayList<X509Certificate>();
x509Certificates.add(issuedCert);
return x509Certificates;
}