Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Consulta XML - firmado #3

Open
ndlbass opened this issue Sep 4, 2018 · 7 comments
Open

Consulta XML - firmado #3

ndlbass opened this issue Sep 4, 2018 · 7 comments

Comments

@ndlbass
Copy link

ndlbass commented Sep 4, 2018

Hola que tal? Muy buen trabajo se ve en este repositorio.

Le hago una consulta ya que estoy teniendo problemas en el firmado del xml (usando otra solucion en ruby): Hacienda me rechaza el comprobante por motivo "Firma inválida". Me han dicho que este error puede ser un poco generico y no necesariamente con la firma.

Entonces he probado su ejemplo de FE: https://github.com/royrojas/FacturaElectronicaCR/blob/master/_Ejemplos%20XML/xml_factura_electronica.xml, modificando la clave y fecha de emision, aun asi sigo recibiendo "Firma inválida".

Sabe si el formato de ese xml sigue siendo válido? De ser asi, es posible obtener un ejemplo de como queda el xml con el signature agregado?

Desde ya muchas gracias,
Saludos

@royrojas
Copy link
Owner

royrojas commented Sep 4, 2018

Hola, el ejemplo que está en el Git hace la firma completa, ahi puedes ver como debe de quedar. Es probable que tengas algun error en el XML, puedes validarlo en este api http://apis.gometa.org/

@ndlbass
Copy link
Author

ndlbass commented Sep 4, 2018

Hola @royrojas, lo voy a validar con el link y te cuento. Muchas gracias por la rápida respuesta!

@ndlbass
Copy link
Author

ndlbass commented Sep 4, 2018

Hola de nuevo. Al parecer si tengo un problema con la firma. Este fue el resultado:
image

Este el el xml firmado que utilice: https://gist.github.com/ndlbass/7f3bc91a9276f70fc6e1e66c6704822f

@DanyMora
Copy link

DanyMora commented Sep 4, 2018

Yo tengo el mismo problema con esta aplicación, me estaba funcionando y de repente me empezó a indicar firma invalida, le he dado por todos los lados que se me ocurre pero no encuentro una solución.
Pero por mi parte utilizando el API de Validación del XML si me dice que el XML es valido y que la firma es valida. Así que no se, que sera. Y ya estoy en mi deathline.

@royrojas
Copy link
Owner

royrojas commented Sep 4, 2018

Un problema normal es como se manipula el XML despues de la firma, entre el firmado y pasarlo a Base64 para enviarlo a hacienda. Si la firma la estas haciendo con XadesEpes y te da error, es probable que sea eso.

@ndlbass
Copy link
Author

ndlbass commented Sep 4, 2018

Buen dato, en el grupo de CRLibre me acaban de decir algo parecido.

Estoy asegurandome de limpiar espacios entre nodos y saltos de lineas antes del encode a base64. Tambien en mi caso, con ruby veo el base64 me estaba devolviendo un output con saltos. Estoy justamente revisando esto, les cuento como me va.

@ndlbass
Copy link
Author

ndlbass commented Sep 4, 2018

Bueno, tengo un base64 limpio de espacios y saltos de línea, este el json enviado a hacienda: https://gist.github.com/ndlbass/c55f76a7dce838fc6b41574a203c69d8

Y este el resultado de tu fantastica herramienta:
image

Lo que no tengo control es al momento que este signer.jar levanta el archivo xml y lo firma. No se si está rompiendo algo en ese momento.

@royrojas te consulto desde la ignorancia. El error que me está dando tu log (aunque diga que está bien), te da una idea de por donde seguir atacando el problema?

XML is Valid
Checking signature...

xmlsec:
func=xmlSecOpenSSLX509StoreVerify:file=x509vfy.c:line=360:obj=x509-store:subj=X509_verify_cert:error=4:crypto library function failed:subj=/serialNumber=CPJ-3-101-720564/C=CR/O=PERSONA JURIDICA/OU=CPJ/CN=SELINA OPERATION SAN JOSE CITY SOCIEDAD ANONIMA;err=20;msg=unable to get local issuer certificate
func=xmlSecOpenSSLX509StoreVerify:file=x509vfy.c:line=408:obj=x509-store:subj=unknown:error=71:certificate verification failed:err=20;msg=unable to get local issuer certificate
func=xmlSecKeysMngrGetKey:file=keys.c:line=1370:obj=unknown:subj=xmlSecKeysMngrFindKey:error=1:xmlsec library function failed: 
func=xmlSecDSigCtxProcessKeyInfoNode:file=xmldsig.c:line=871:obj=unknown:subj=unknown:error=45:key is not found: 
func=xmlSecDSigCtxProcessSignatureNode:file=xmldsig.c:line=565:obj=unknown:subj=xmlSecDSigCtxProcessKeyInfoNode:error=1:xmlsec library function failed: 
func=xmlSecDSigCtxVerify:file=xmldsig.c:line=366:obj=unknown:subj=xmlSecDSigCtxSignatureProcessNode:error=1:xmlsec library function failed: 
Error: signature failed 
ERROR
SignedInfo References (ok/all): 2/2
Manifests References (ok/all): 0/0
Error: failed to verify file "xml/181.167.137.114-6819.xml.ugly"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants