Fornecendo o uso de chaves ao X509Certificate gerado com o Java BouncyCastle
Aqui está o meu pedaço de código para gerarX509Certificate
comCastelo inflável API
private static X509Certificate createCertificate(String dn, String issuer,
PublicKey publicKey, PrivateKey privateKey) throws Exception {
X509V3CertificateGenerator certGenerator = new X509V3CertificateGenerator();
certGenerator.setSerialNumber(BigInteger.valueOf(Math.abs(new Random()
.nextLong())));
certGenerator.setIssuerDN(new X509Name(dn));
certGenerator.setSubjectDN(new X509Name(dn));
certGenerator.setIssuerDN(new X509Name(issuer)); // Set issuer!
certGenerator.setNotBefore(Calendar.getInstance().getTime());
certGenerator.setNotAfter(Calendar.getInstance().getTime());
certGenerator.setPublicKey(publicKey);
certGenerator.setSignatureAlgorithm("SHA1WithRSAEncryption");
**certGenerator..... ??? what for key usage ?**
X509Certificate certificate = (X509Certificate) certGenerator.generate(
privateKey, "BC");
return certificate;
}
Código completo você pode ver aqui
Minha pergunta é que não há como definir o uso da chave para o Certificado Digital gerado.
Eu estou tentando definir o uso comoCriptografia. Não existe tal método / maneiraX509V3CertificateGenerator
classe.
Como lidar com isto.
Obrigado por qualquer sugestão.