read generate example java x509certificate

java - generate - ¿Generar X509Certificate desde byte[]?



x509certificate java example (3)

Por supuesto.

Los objetos de certificado se pueden crear mediante una instancia de CertificateFactory , en particular, una configurada para crear certificados X509. Esto se puede crear así:

CertificateFactory certFactory = CertificateFactory.getInstance("X.509");

Luego debe pasarle un InputStream que contenga los bytes del certificado. Esto se puede lograr envolviendo su matriz de bytes en ByteArrayInputStream :

InputStream in = new ByteArrayInputStream(bytes); X509Certificate cert = (X509Certificate)certFactory.generateCertificate(in);

¿Existe la posibilidad de generar un java.security.cert.X509Certificate desde un byte []?


Puedes hacer algo como:

X509Certificate certificate = signature.getKeyInfo().getX509Datas().get(0).getX509Certificates().get(0); String lexicalXSDBase64Binary = certificate.getValue(); byte[] decoded = DatatypeConverter.parseBase64Binary(lexicalXSDBase64Binary); CertificateFactory certFactory = CertificateFactory.getInstance("X.509"); Certificate cert = certFactory.generateCertificate(new ByteArrayInputStream(decoded));


InputStream stream = null; byte[] bencoded = javax.xml.bind.DatatypeConverter.parseBase64Binary(x509CertificateStr); try { CertificateFactory certFactory = CertificateFactory.getInstance("X.509"); cert = (X509Certificate) certFactory.generateCertificate(stream); } catch (java.security.cert.CertificateException e) { // TODO Auto-generated catch block e.printStackTrace(); }