Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-10-2021
misteradrian misteradrian is offline
Miembro
 
Registrado: sep 2021
Posts: 33
Poder: 0
misteradrian Va por buen camino
008 El mensaje ha sido modificado en tránsito o la firma no está bien realizada

Hola de nuevo señoras y señores,
lo primero de todo muchas gracias por toda la información subida a este foro, con mención especial a bilbur por todo el tema del firmador en php, que me ha venido genial.

Y precisamente al utilizar este firmador me da una serie de fallos a la hora de dar de altas facturas que quisiera corregir.

A la hora de enviar las facturas me da el siguiente aviso.
008 El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="#xmldsig-ea406c2f-bf64-e988-ed62-0b8afb482297-signedprops" failed to verify. [src/xml2signatureobj.cpp(315)]

y comprobando el xml con la herramienta de chillkat, me dice lo siguiente:

Signature Verified
Number of Reference Digests = 3
Reference 1 digest is invalid because the computed digest differs from the digest in the XML.
Reference 2 digest is valid.
Reference 3 digest is valid.

Qué casualmente coincide con el mismo campo de la respuesta de Gipuzkoa.
Supongo que viene dado por el valor de la variable,
Código PHP:
$this->SignedProperties 
que a su vez llama al generateGUID de el XMLTools de bilbur.
Código PHP:
$this->signatureID             $tools->generateGUID('xmldsig-'); 
Pero revisando el foro no he sacado nada en claro sobre qué probar para modificar este error.
Supongo que tendré que modificar este XMLTools y generar un valor de digest válido, la cosa es que no sé cual.

Un saludo y gracias de antemano.
Responder Con Cita
  #2  
Antiguo 18-10-2021
misteradrian misteradrian is offline
Miembro
 
Registrado: sep 2021
Posts: 33
Poder: 0
misteradrian Va por buen camino
Cita:
Empezado por misteradrian Ver Mensaje
Hola de nuevo señoras y señores,
lo primero de todo muchas gracias por toda la información subida a este foro, con mención especial a bilbur por todo el tema del firmador en php, que me ha venido genial.

Y precisamente al utilizar este firmador me da una serie de fallos a la hora de dar de altas facturas que quisiera corregir.

A la hora de enviar las facturas me da el siguiente aviso.
008 El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="#xmldsig-ea406c2f-bf64-e988-ed62-0b8afb482297-signedprops" failed to verify. [src/xml2signatureobj.cpp(315)]

y comprobando el xml con la herramienta de chillkat, me dice lo siguiente:

Signature Verified
Number of Reference Digests = 3
Reference 1 digest is invalid because the computed digest differs from the digest in the XML.
Reference 2 digest is valid.
Reference 3 digest is valid.

Qué casualmente coincide con el mismo campo de la respuesta de Gipuzkoa.
Supongo que viene dado por el valor de la variable,
Código PHP:
$this->SignedProperties 
que a su vez llama al generateGUID de el XMLTools de bilbur.
Código PHP:
$this->signatureID             $tools->generateGUID('xmldsig-'); 
Pero revisando el foro no he sacado nada en claro sobre qué probar para modificar este error.
Supongo que tendré que modificar este XMLTools y generar un valor de digest válido, la cosa es que no sé cual.

Un saludo y gracias de antemano.
Vale señor@s, me respondo a mí mismo por si a alguien le sirve.

He revisado de nuevo de arriba a abajo el foro y he encontrado el error. (Otra cosa es solucionarlo)

El error viene en concreto de un campo dentro de la firma
Código:
<ds:X509IssuerName>CN=AC Representación,  OU=CERES, O=FNMT-RCM, C=ES</ds:X509IssuerName>
El certificado es un certificado de la FNMT y en el campo CN, la palabra Representación es la que me da errores a la hora de verificar el xml por chillkat, por la tilde en la ó.

Supongo que tendré que encontrar la manera de codificarlo de manera correcta en php, ya que tengo puesto el visual studio code a ISO 8859-1 y ticketbai lo requiere en utf-8.

Si corregís esta tílde a la hora de pasarlo a chillkat no os da ningún error y los 3 digest son válidos.

Un saludo y espero que sirva a los nuevos que venís con esto.
Responder Con Cita
  #3  
Antiguo 18-10-2021
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 930
Poder: 3
ermendalenda Va por buen camino
Cita:
Empezado por misteradrian Ver Mensaje
Vale señor@s, me respondo a mí mismo por si a alguien le sirve.

He revisado de nuevo de arriba a abajo el foro y he encontrado el error. (Otra cosa es solucionarlo)

El error viene en concreto de un campo dentro de la firma
Código:
<ds:X509IssuerName>CN=AC Representación,  OU=CERES, O=FNMT-RCM, C=ES</ds:X509IssuerName>
El certificado es un certificado de la FNMT y en el campo CN, la palabra Representación es la que me da errores a la hora de verificar el xml por chillkat, por la tilde en la ó.

Supongo que tendré que encontrar la manera de codificarlo de manera correcta en php, ya que tengo puesto el visual studio code a ISO 8859-1 y ticketbai lo requiere en utf-8.

Si corregís esta tílde a la hora de pasarlo a chillkat no os da ningún error y los 3 digest son válidos.

Un saludo y espero que sirva a los nuevos que venís con esto.
Buenas, yo uso firmador.php y tengo ese acento y no me da problemas
<ds:X509IssuerName>CN=AC Representación, OU=CERES, O=FNMT-RCM, C=ES</ds:X509IssuerName>

Chilkat valid en los 3 digest y sin errores al enviar.
Es extraño lo que dices, ya somos muchos los que lo usamos y hubiera dado más problemas.
Lo único que veo diferente es que entre la "," y "OU" (", OU=CERES") tienes 2 espacios, no creo que sea problema.
Tienes el XML con esta cabecera?
<?xml version="1.0" encoding="UTF-8"?>

Última edición por ermendalenda fecha: 18-10-2021 a las 19:48:46.
Responder Con Cita
  #4  
Antiguo 19-10-2021
misteradrian misteradrian is offline
Miembro
 
Registrado: sep 2021
Posts: 33
Poder: 0
misteradrian Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Buenas, yo uso firmador.php y tengo ese acento y no me da problemas
<ds:X509IssuerName>CN=AC Representación, OU=CERES, O=FNMT-RCM, C=ES</ds:X509IssuerName>

Chilkat valid en los 3 digest y sin errores al enviar.
Es extraño lo que dices, ya somos muchos los que lo usamos y hubiera dado más problemas.
Lo único que veo diferente es que entre la "," y "OU" (", OU=CERES") tienes 2 espacios, no creo que sea problema.
Tienes el XML con esta cabecera?
<?xml version="1.0" encoding="UTF-8"?>
Hola de nuevo lo primero de todo gracias por tu contestación.
Quizás no me expresé del todo bien. Efectivamente el firmador es una maravilla y funciona correctamente.
El caso es que yo tengo puesto mi editor de textos y los datos que obtengo en la base de datos en ISO8859-1 y el envío los requiere siempre en UTF-8.
Entonces cuando hay tildes se me transforman a caracteres extraños (Pasa lo mismo si en cualquier campo como el nombre lleva alguna tilde).
Y pues cuando lo visualizo y lo paso a chillkat o lo envío para ticketbai Gipuzkoa , los errores de la firma venían derivados de esos caracteres extraños por la codificación derivadas de las tildes.
Resumiendo, problemas de derivados de codifcación.

Lo único me ha surgido una duda nueva a ver si alguien me la puede responder.
¿La variable digest dentro del nuevo array POLITICA_FIRMA_ALAVA como lo puedo calcular?

Un saludo y mil gracias de nuevo de verdad,
sin este foro no podría estar tirando este proyecto hacia delante.
Responder Con Cita
  #5  
Antiguo 19-10-2021
Avatar de elcharlie
elcharlie elcharlie is offline
Miembro
 
Registrado: mar 2013
Ubicación: Bilbao
Posts: 174
Poder: 12
elcharlie Va por buen camino
Parece ser, que el Servidor de Pruebas de araba ya está operativo, y han habilitado la comprobación del código QR en la siguiente url base: https://pruebas-ticketbai.araba.eus/tbai/qrtbai/
Yo he hecho la prueba y me da el error 'Parámetros Incorrectos", estoy seguro que genero la url correctamente (no es por ser un sobrao, pero genero las url de los QR de las otras diputaciones de la misma manera, y no tengo problemas), pero por si acaso, ¿habéis probado vosotros si os funciona bien?

Última edición por elcharlie fecha: 19-10-2021 a las 11:36:58.
Responder Con Cita
  #6  
Antiguo 19-10-2021
edari edari is offline
Miembro
 
Registrado: jun 2021
Posts: 185
Poder: 4
edari Va por buen camino
Cita:
Empezado por elcharlie Ver Mensaje
Parece ser, que el Servidor de Pruebas de araba ya está operativo, y han habilitado la comprobación del código QR en la siguiente url base: https://pruebas-ticketbai.araba.eus/tbai/qrtbai/
Yo he hecho la prueba y me da el error 'Parámetros Incorrectos", estoy seguro que genero la url correctamente, pero por si acaso, ¿habéis probado vosotros si os funciona bien?

Mismo caso que tú
Responder Con Cita
  #7  
Antiguo 19-10-2021
Avatar de elcharlie
elcharlie elcharlie is offline
Miembro
 
Registrado: mar 2013
Ubicación: Bilbao
Posts: 174
Poder: 12
elcharlie Va por buen camino
Cita:
Empezado por edari Ver Mensaje
Mismo caso que tú
Ok, gracias por la comprobación. Esperaremos a que lo arreglen...
Responder Con Cita
  #8  
Antiguo 19-10-2021
JoseLeeTo JoseLeeTo is offline
Miembro
 
Registrado: jun 2021
Posts: 69
Poder: 3
JoseLeeTo Va por buen camino
Cita:
Empezado por edari Ver Mensaje
Mismo caso que tú
Estamos todos igual, parece ser
Responder Con Cita
  #9  
Antiguo 19-10-2021
sEngine sEngine is offline
Miembro
 
Registrado: jul 2021
Posts: 53
Poder: 3
sEngine Va por buen camino
Cita:
Empezado por elcharlie Ver Mensaje
Parece ser, que el Servidor de Pruebas de araba ya está operativo, y han habilitado la comprobación del código QR en la siguiente url base: https://pruebas-ticketbai.araba.eus/tbai/qrtbai/
Yo he hecho la prueba y me da el error 'Parámetros Incorrectos", estoy seguro que genero la url correctamente (no es por ser un sobrao, pero genero las url de los QR de las otras diputaciones de la misma manera, y no tengo problemas), pero por si acaso, ¿habéis probado vosotros si os funciona bien?

a mi tampoco me va, mismo error
Responder Con Cita
  #10  
Antiguo 19-10-2021
adolphsys adolphsys is offline
Miembro
 
Registrado: abr 2006
Posts: 68
Poder: 19
adolphsys Va por buen camino
Cita:
Empezado por elcharlie Ver Mensaje
Parece ser, que el Servidor de Pruebas de araba ya está operativo, y han habilitado la comprobación del código QR en la siguiente url base: https://pruebas-ticketbai.araba.eus/tbai/qrtbai/
Yo he hecho la prueba y me da el error 'Parámetros Incorrectos", estoy seguro que genero la url correctamente (no es por ser un sobrao, pero genero las url de los QR de las otras diputaciones de la misma manera, y no tengo problemas), pero por si acaso, ¿habéis probado vosotros si os funciona bien?
Yo tampoco puedo comprobar facturas en Araba, también me da parámetros incorrectos...
Responder Con Cita
  #11  
Antiguo 19-10-2021
JoseLeeTo JoseLeeTo is offline
Miembro
 
Registrado: jun 2021
Posts: 69
Poder: 3
JoseLeeTo Va por buen camino
Buenas tardes;

A la hora de dar de alta en Alava, desde hace unos días, a la URL:
https://pruebas-ticketbai.araba.eus/...I/v1/facturas/

.... me devuelve siempre como "Rechazado", con el error:
"El servicio de recepcion no esta disponible. Repita la operacion mas tarde"

¿Os ocurre a todos lo mismo con Alava? ¿Están caídos los servidores? ¿Se conoce alguna fecha donde se restaurarán?

Muchas gracias de antemano.
Un saludo.
Responder Con Cita
  #12  
Antiguo 19-10-2021
adolphsys adolphsys is offline
Miembro
 
Registrado: abr 2006
Posts: 68
Poder: 19
adolphsys Va por buen camino
Cita:
Empezado por JoseLeeTo Ver Mensaje
Buenas tardes;

A la hora de dar de alta en Alava, desde hace unos días, a la URL:
https://pruebas-ticketbai.araba.eus/...I/v1/facturas/

.... me devuelve siempre como "Rechazado", con el error:
"El servicio de recepcion no esta disponible. Repita la operacion mas tarde"

¿Os ocurre a todos lo mismo con Alava? ¿Están caídos los servidores? ¿Se conoce alguna fecha donde se restaurarán?

Muchas gracias de antemano.
Un saludo.
Acabo de hacer un envío a Araba y a mi me funciona.
Responder Con Cita
  #13  
Antiguo 19-10-2021
ermendalenda ermendalenda is offline
Miembro
 
Registrado: ago 2021
Posts: 930
Poder: 3
ermendalenda Va por buen camino
Cita:
Empezado por misteradrian Ver Mensaje
Hola de nuevo lo primero de todo gracias por tu contestación.
Quizás no me expresé del todo bien. Efectivamente el firmador es una maravilla y funciona correctamente.
El caso es que yo tengo puesto mi editor de textos y los datos que obtengo en la base de datos en ISO8859-1 y el envío los requiere siempre en UTF-8.
Entonces cuando hay tildes se me transforman a caracteres extraños (Pasa lo mismo si en cualquier campo como el nombre lleva alguna tilde).
Y pues cuando lo visualizo y lo paso a chillkat o lo envío para ticketbai Gipuzkoa , los errores de la firma venían derivados de esos caracteres extraños por la codificación derivadas de las tildes.
Resumiendo, problemas de derivados de codifcación.

Lo único me ha surgido una duda nueva a ver si alguien me la puede responder.
¿La variable digest dentro del nuevo array POLITICA_FIRMA_ALAVA como lo puedo calcular?

Un saludo y mil gracias de nuevo de verdad,
sin este foro no podría estar tirando este proyecto hacia delante.

Teniendoo en cuenta que no sé php y he probado con este comando

$certIssuer = str_replace("ó", "o", $certIssuer);
pero no entiendo por que no funciona, mientras alguien diga por que no va y si siempre vas a firmar con ese tipo de certificados puedes forzar y cambiar esto en el firmador.php:

$certIssuer = implode(', ', array_reverse($certIssuer));
por:
$certIssuer='CN=AC Representacion, OU=CERES, O=FNMT-RCM, C=ES';
Responder Con Cita
  #14  
Antiguo 19-10-2021
misteradrian misteradrian is offline
Miembro
 
Registrado: sep 2021
Posts: 33
Poder: 0
misteradrian Va por buen camino
Cita:
Empezado por ermendalenda Ver Mensaje
Teniendoo en cuenta que no sé php y he probado con este comando

$certIssuer = str_replace("ó", "o", $certIssuer);
pero no entiendo por que no funciona, mientras alguien diga por que no va y si siempre vas a firmar con ese tipo de certificados puedes forzar y cambiar esto en el firmador.php:

$certIssuer = implode(', ', array_reverse($certIssuer));
por:
$certIssuer='CN=AC Representacion, OU=CERES, O=FNMT-RCM, C=ES';

Yo también probé eso ayer, pero tiene que llevar tilde para que al enviar el XML a Gipuzkoa te lo reconozca de la FNMT.
Si quieres que el primero te vaya tendrás que hacer un utf8_decode ó un utf8_encode, dependiendo de en que codificación te encuentres.


Pero que de verdad, está ya solucionado con lo que escribí esta mañana no te preocupes.
Era el tema de la codificación de mis datos, que no estaban en UTF8.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
SII -Nuevo sistema de la Agencia Tributaria española de envío de datos vía Webservice newtron Internet 3565 Hace 3 Días 11:04:13
Como utilizar la ayuda del nuevo Sistema Operativo gluglu Humor 3 24-09-2007 09:39:05
Aplicacion Agencia De Viajes ArdiIIa Varios 9 20-01-2007 16:49:53
El Vasco Aguirre Al González La Taberna 5 26-05-2006 09:22:28
Microsoft ha lanzado su nuevo sistema operativo DarkByte Humor 0 25-01-2004 09:21:14


La franja horaria es GMT +2. Ahora son las 23:09:08.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi