Lo que pasa es que estoy desarrollando un clienteWebService y para el método cancelar me piden el miLlave.key y el miCertificado.cer pero en formato DER, pero la verdad no encuentro como convertir ambos archivos a DER, espero que alguien me pueda ayudar.
De antemano gracias!!!

DESCARGA SOFTWARE PARA FACTURA ELECTRONICA DE AQUI.
Facturacion, Validacion, Addendas, Librerias de programacion, etc.
CARTA PORTE V3.1
ECODEX TIENE ESTOS NUEVOS DATOS DE CONTACTO :
Comercializacion y Ventas - Evelia Vicke evicke@ecodex.com.mx 33-16-03-03-48
Soporte - Humberto Guerrero soporte@ecodex.com.mx 33-34-90-46-03
.
[Duda]Como convertir a DER
- Dado
- Mensajes: 15980
- Registrado: Mar Jul 06, 2010 7:56 pm
Re: [Duda]Como convertir a DER
Esos archivos YA ESTAN en formato DER
Talvez quieras decir convertirlos a PFX o P12 o PEM.......revisa bien tus especificaciones.
Talvez quieras decir convertirlos a PFX o P12 o PEM.......revisa bien tus especificaciones.
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
-
- Mensajes: 27
- Registrado: Vie Feb 04, 2011 10:15 am
Re: [Duda]Como convertir a DER
Este método de cancelar es del PAC solucionfactible, yo le mando el certificado tal cual lo tengo es un archivo.cer pero me devuelve el siguiente error: "Ocurrió un error al cargar el certificado, verifique que sea un certificado digital válido", lo que hago es lo siguiente:
¿Estoy haciendo algo mal?... Espero que me puedan ayudar, de antemano gracias!!!
Código: Seleccionar todo
String cert = "path/del/cert/miCert.cer";
String key = "path/del/ket/miKey.key";
InputStream certFile = new FileInputStream(cert);
InputStream keyFile = new FileInputStream(key);
//Primero pide usuario, despues contraseña, depues el UUID a cancelar, el certificado y el key en byte[]
solucionFactible.cancelar("usuario", "pass", "UUID", getBytes(certFile), getBytes(KeyFile));
public static byte[] getBytes(InputStream is) throws IOException{
int len;
int size = 1024;
byte[] buf;
if (is instanceof ByteArrayInputStream) {
size = is.available();
buf = new byte[size];
len = is.read(buf, 0, size);
} else {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
buf = new byte[size];
while ((len = is.read(buf, 0, size)) != -1) {
bos.write(buf, 0, len);
}
buf = bos.toByteArray();
}
return buf;
}
- Dado
- Mensajes: 15980
- Registrado: Mar Jul 06, 2010 7:56 pm
Re: [Duda]Como convertir a DER
Total que no va a ser a PFX ni a PEM....je je je
En tu codigo lo estas enviando como un arreglo de bytes pero eso no esta bien, debe ser en base64, convierte tu certificado y tu key a base64 y asi envialo, te lo digo con 100% de certeza porque yo asi lo tengo programado y funciona.
En tu codigo lo estas enviando como un arreglo de bytes pero eso no esta bien, debe ser en base64, convierte tu certificado y tu key a base64 y asi envialo, te lo digo con 100% de certeza porque yo asi lo tengo programado y funciona.
ADDENDAS? VALIDACION? CODIGO PARA PROGRAMAR TU PROPIA SOLUCION? TODO LO TENEMOS EN WWW.VALIDACFD.COM VISITANOS !!
-
- Mensajes: 2
- Registrado: Dom Dic 19, 2010 4:21 pm
Re: [Duda]Como convertir a DER
Yo no he tenido problema para usar el método que recibe array de bytes pero, ¿Estás seguro de que estás leyendo completamente el archivo .cer y que está en formato DER, tal como te lo entregó el SAT?
Te propongo simplificar el código de tu función a lo siguiente:
Para verificar que el certificado se encuentre en un formato correcto puedes usar openssl:
esto te debe mostrar la información del certificado
Espero pruebes y nos comentas cómo te fue
Te propongo simplificar el código de tu función
Código: Seleccionar todo
getBytes
Código: Seleccionar todo
public static byte[] getBytes(InputStream is) throws IOException{
byte[] buf = new byte[is.available()];//reservar el espacio necesario para leer el .cer
is.read(buf);//leer el InputStream
return buf;//retornar el array de bytes lleno
}
Código: Seleccionar todo
openssl x509 -in certificado.cer -inform DER -noout -text
Espero pruebes y nos comentas cómo te fue
-
- Mensajes: 27
- Registrado: Vie Feb 04, 2011 10:15 am
Re: [Duda]Como convertir a DER
Gracias a sus respuestas, lo que pasa es que el proceso estaba correcto, el problema fue que me habían cambiado los archivos.
Saludos y gracias!!!
Saludos y gracias!!!