Leyendo numero de serie de .cer (Para facturacion electronica)
Este es mi codigo:
El numero que obtengo es 292233162870206001759766198388986002352876564528
Sin embargo, cuando abro el archivo .cert manualmente consigo lo siguiente en el apartado de Serial Number :
Serial Number:
33:30:30:30:31:30:30:30:30:30:30:31:30:30:30:30:30:38:30:30
Estoy usando los certificados de prueba que ofrece el SAT. ¿Que es lo que estoy haciendo mal?
- Inicie sesión o regístrese para enviar comentarios
bytes
El SAT codifica mal el número de serie porque lo meten como texto, y debería ir como un entero sin signo. Según yo en Java el número de serie es un BigInteger; simplemente obtén los bytes del BigInteger y crea una cadena con eso, y obtienes el verdadero número de serie.
En tu ejemplo, el número de serie es 30001000000100000800 (está en hexadecimal, 0x33 es el "3" en ASCII, 0x30 es "0", etc).
Funciona!
Gracias ezamudio, tienes razon. Es tan sencillo como:
Ahora la duda es: ¿El SAT siempre emite los certificados malformados? ¿Con esta solucion bastara para el futuro?
pregunta al SAT
Yo estuve lidiando con certificados del SAT hace como 7 años y ya venían así, y los que emiten ahorita siguen siendo así (me di cuenta al leer mi FIEL con Java).