Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Proyecto SIF/Veri*Factu/Ley Antifraude > Envío de registros y sus respuestas
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-01-2025
razorxxx razorxxx is offline
Miembro
 
Registrado: jul 2015
Posts: 108
Poder: 10
razorxxx Va por buen camino
Cita:
Empezado por delphiGar Ver Mensaje
El hash que te he puesto es el correcto, el otro que pones no es correcto es sha1 y no sha256, ademas con el digestvalue que te indica.

Mira las especificaciones de firma y lo veras.

Código:
https://www.agenciatributaria.es/static_files/AEAT_Desarrolladores/EEDD/IVA/VERI-FACTU/Espec-Tecnicas/EspecTecGenerFirmaElectRfact_BORRADOR.pdf
Te dejo un archivo valido firmado, lo puedes comprobar en la red.sara
Me temo que es al revés compañero. En el archivo ejemplo que mandas estás especificando que el algoritmo a usar para la política de firma es SHA1, y no SHA-256: <dsigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>. Y el DigestValue es G7roucf600+f03r/o0bAOQ6WAs0=, que viene a ser el hash SHA-1 de la política de firma.

Si uso tu propuesta sí me funciona. Pero ¿qué pasa si quiero aplicar el sha-256 como aparece en el ejemplo de archivo firmado proporcionado por la AEAT? ¿Cómo se calcula el sha-256 de la política de firma? Porque si uso el proporcionado en el fichero de ejemplo de la AEAT, al validarlo en valide.redsara.es me da el error de "El hash de la política incluido en la firma no coincide con el hash real de la política de firma".
Responder Con Cita
  #2  
Antiguo 14-01-2025
delphiGar delphiGar is offline
Miembro
 
Registrado: ago 2024
Posts: 163
Poder: 1
delphiGar Va por buen camino
Cita:
Empezado por razorxxx Ver Mensaje
Me temo que es al revés compañero. En el archivo ejemplo que mandas estás especificando que el algoritmo a usar para la política de firma es SHA1, y no SHA-256: <dsigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>. Y el DigestValue es G7roucf600+f03r/o0bAOQ6WAs0=, que viene a ser el hash SHA-1 de la política de firma.

Si uso tu propuesta sí me funciona. Pero ¿qué pasa si quiero aplicar el sha-256 como aparece en el ejemplo de archivo firmado proporcionado por la AEAT? ¿Cómo se calcula el sha-256 de la política de firma? Porque si uso el proporcionado en el fichero de ejemplo de la AEAT, al validarlo en valide.redsara.es me da el error de "El hash de la política incluido en la firma no coincide con el hash real de la política de firma".
Compañero, fijate bien que en el ejemplo viene lo que te digo, y no es al reves como tu dices, es sha1
Responder Con Cita
  #3  
Antiguo 14-01-2025
delphiGar delphiGar is offline
Miembro
 
Registrado: ago 2024
Posts: 163
Poder: 1
delphiGar Va por buen camino
El ejemplo me refiero al de la Aeat no al mio, veras que es sha1
Responder Con Cita
  #4  
Antiguo 14-01-2025
delphiGar delphiGar is offline
Miembro
 
Registrado: ago 2024
Posts: 163
Poder: 1
delphiGar Va por buen camino
Para hacerlo con SHA256 debes saber el DisgestValue correspondiente, el que pones de 256 no es valido, ya lo comprobe anteriormente cuando salio el documento, pero despues lo cambiaron a SHA1
Responder Con Cita
  #5  
Antiguo 14-01-2025
delphiGar delphiGar is offline
Miembro
 
Registrado: ago 2024
Posts: 163
Poder: 1
delphiGar Va por buen camino
Aunque yo no utilizo Autofirma para firmar los ficheros.

El codigo correcto para autofrima seria este:

Código:
AutoFirmaCommandLine.exe sign -i "c:\envio_firmado.xml" -o "c:\envio_firmado_a.xsig" -format xades -config "format=XAdES Enveloped \nincludeOnlySignningCertificate=true \npolicyIdentifier=urn:oid:2.16.724.1.3.1.1.2.1.9 \npolicyIdentifierHash=G7roucf600+f03r/o0bAOQ6WAs0= \npolicyIdentifierHashAlgorithm=http://www.w3.org/2000/09/xmldsig#sha1 \npolicyQualifier=https://sede.administracion.gob.es/politica_de_firma_anexo_1.pdf" -store auto -certgui
Responder Con Cita
  #6  
Antiguo 16-01-2025
Avatar de bmfranky
bmfranky bmfranky is offline
Miembro
 
Registrado: may 2024
Ubicación: Gandia, Valencia
Posts: 599
Poder: 1
bmfranky Va por buen camino
Cita:
Empezado por delphiGar Ver Mensaje
Aunque yo no utilizo Autofirma para firmar los ficheros.

El codigo correcto para autofrima seria este:

Código:
AutoFirmaCommandLine.exe sign -i "c:\envio_firmado.xml" -o "c:\envio_firmado_a.xsig" -format xades -config "format=XAdES Enveloped \nincludeOnlySignningCertificate=true \npolicyIdentifier=urn:oid:2.16.724.1.3.1.1.2.1.9 \npolicyIdentifierHash=G7roucf600+f03r/o0bAOQ6WAs0= \npolicyIdentifierHashAlgorithm=http://www.w3.org/2000/09/xmldsig#sha1 \npolicyQualifier=https://sede.administracion.gob.es/politica_de_firma_anexo_1.pdf" -store auto -certgui
Hola, con que firmas los ficheros??, alguna funcion en Delphi o asi?
__________________
Uno se alegra de ser útil. (Isaac Asimov)
Responder Con Cita
  #7  
Antiguo 16-01-2025
delphiGar delphiGar is offline
Miembro
 
Registrado: ago 2024
Posts: 163
Poder: 1
delphiGar Va por buen camino
Cita:
Empezado por bmfranky Ver Mensaje
Hola, con que firmas los ficheros??, alguna funcion en Delphi o asi?
Yo utilizo SecureBlackBox.
Responder Con Cita
  #8  
Antiguo 17-01-2025
razorxxx razorxxx is offline
Miembro
 
Registrado: jul 2015
Posts: 108
Poder: 10
razorxxx Va por buen camino
Cita:
Empezado por bmfranky Ver Mensaje
Hola, con que firmas los ficheros??, alguna funcion en Delphi o asi?
Yo creo que, si sirve, usaré AutoFirma, siendo una aplicación estatal supongo que la mantendrán compatible con los sistemas de la administración. Siempre soy reacio a usar componentes no nativos porque basta que un día actualices a un Delphi más moderno y dejan de funcionar.

Además, tengo una función que me devuelve la salida de un comando de consola sin mostrarla, no necesito abrir una ventana de msdos o terminal para obtener el resultado.
Responder Con Cita
  #9  
Antiguo 15-01-2025
razorxxx razorxxx is offline
Miembro
 
Registrado: jul 2015
Posts: 108
Poder: 10
razorxxx Va por buen camino
Cita:
Empezado por delphiGar Ver Mensaje
El ejemplo me refiero al de la Aeat no al mio, veras que es sha1
Adjunto captura del PDF donde dicen que el algoritmo de política de firma debe ser SHA-256. Así mismo, pueden descargar el ejemplo de fichero firmado desde aquí: https://www.agenciatributaria.es/sta...rmaRegFact.zip

No veo rastro de SHA-1 en las especificaciones...
Imágenes Adjuntas
Tipo de Archivo: png sha_verifactu.png (183,2 KB, 3 visitas)
Responder Con Cita
  #10  
Antiguo 15-01-2025
delphiGar delphiGar is offline
Miembro
 
Registrado: ago 2024
Posts: 163
Poder: 1
delphiGar Va por buen camino
Cita:
Empezado por razorxxx Ver Mensaje
Adjunto captura del PDF donde dicen que el algoritmo de política de firma debe ser SHA-256. Así mismo, pueden descargar el ejemplo de fichero firmado desde aquí: https://www.agenciatributaria.es/sta...rmaRegFact.zip

No veo rastro de SHA-1 en las especificaciones...
En las especificaciones pone eso, pero en la practica es SHA1 ( Supongo que lo corregiran ).
En el fichero de ejemplo fijate bien que viene SHA1, vuelve a descargatelo.
En la anterior descarga venia como ya te he dicho anteriormente SHA256, pero el DigestValue incluido no es correcto.

Por cierto el SHA1 es para la politica de firmas no para el documento que si es SHA256, veo que indicas en el documento los dos y no tiene nada que ver, una cosa es el hash de politica de firma y otra el documento que si tiene que ser minimo SHA256.
Responder Con Cita
  #11  
Antiguo 15-01-2025
razorxxx razorxxx is offline
Miembro
 
Registrado: jul 2015
Posts: 108
Poder: 10
razorxxx Va por buen camino
Cita:
Empezado por delphiGar Ver Mensaje
En las especificaciones pone eso, pero en la practica es SHA1 ( Supongo que lo corregiran ).
En el fichero de ejemplo fijate bien que viene SHA1, vuelve a descargatelo.
En la anterior descarga venia como ya te he dicho anteriormente SHA256, pero el DigestValue incluido no es correcto.

Por cierto el SHA1 es para la politica de firmas no para el documento que si es SHA256, veo que indicas en el documento los dos y no tiene nada que ver, una cosa es el hash de politica de firma y otra el documento que si tiene que ser minimo SHA256.
Pues tiene usted razón, han cambiado el fichero firmado y ni siquiera avisaron. Les enviaré un mail a ver qué dicen, si nos quedamos en sha-1 o en sha-256.
Responder Con Cita
  #12  
Antiguo 15-01-2025
delphiGar delphiGar is offline
Miembro
 
Registrado: ago 2024
Posts: 163
Poder: 1
delphiGar Va por buen camino
Cita:
Empezado por razorxxx Ver Mensaje
Pues tiene usted razón, han cambiado el fichero firmado y ni siquiera avisaron. Les enviaré un mail a ver qué dicen, si nos quedamos en sha-1 o en sha-256.
Para el SHA256 tienen que poner el DigestValue correcto, el que hay como ya te comente no es valido, por eso cuando lo validas te dice que no reconoce la firma.

Cualquier cosa que te comente nos dices, sino les hago yo la pregunta.
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
Firmar XML CrazySoft Varios 6 19-09-2022 15:54:19
Autofirma (alias del certificado) keys Internet 38 26-02-2022 17:12:06
Firmar XML pepesoft Varios 1 23-11-2018 09:32:25
Firmar XML johan Varios 4 20-03-2018 13:57:21
Firmar PDF keys Varios 1 06-05-2010 10:11:37


La franja horaria es GMT +2. Ahora son las 19:24:07.


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