Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Proyecto SIF/Veri*Factu/Ley Antifraude > Registros de Facturacion y Eventos (XML)
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-11-2024
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 4.214
Poder: 24
newtron Va camino a la fama
Firmar registro NO VeriFactu

Hola a tod@s.

¿Hay alguien que me pueda orientar sobre cómo firmar el registro para la opción NO VeriFactu?
Según quiero entender hay que generar el .XML y de ahí crear un hash que se firma con el certificado para guardarlo como un campo que será necesario para hacer el envío a la aeat en caso de requerimiento.

He llegado a generar el .XML y crear el hash pero no doy con la forma de firmar ese hash con el certificado con mi Delphi Berlin. Quiero recordar haber leido algo sobre gente que lo ha firmado con las SecureBlackBox pero me vendría bien encontrar una forma nativa para hacer esa firma.

Gracias y un saludo.
__________________
Be water my friend.

Última edición por Neftali [Germán.Estévez] fecha: 12-11-2024 a las 13:21:41.
Responder Con Cita
  #2  
Antiguo 12-11-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
En este hilo el usuario [seccion_31] ha publicado un proyecto con código que incluye la firma utilizando autofirma.

https://www.clubdelphi.com/foros/showthread.php?t=97004

Código Delphi [-]
// firmar el XML con autofirma
procedure TfVeriFactuForm.Button4Click(Sender: TObject);
var
  rutaAutoFirma:string;
  aliascertificado:string;
  cadena:string;
begin
    rutaAutoFirma:=extractfilePath( autoFirmaPath )+'AutoFirmaCommandLine.exe';
    aliascertificado:=CERTIFICADO_ALIAS(comboCertificados.Text);
    if aliasCertificado='' then
    begin
          showmessage('No Se Encuentra Alias Certificado: '+comboCertificados.Text);
          exit;
    end;

    if  fileExists( rutaAutoFirma ) then
    begin
          if fileExists( xmlSalida_signed) then deleteFile( xmlSalida_signed );

          cadena:=ExtractShortPathName (rutaAutoFirma )+' sign -format xades -i "%s" -o "%s" -store windows -password "" -alias "%s"';
          cadena:=format( cadena,[xmlSalida,xmlSalida_signed,aliascertificado ]);
          ExecuteAndWait(cadena);

          if not FileExists(xmlSalida_signed )  then showmessage('Error Firmando')
                                                else shellexecute(handle,'open',pchar(xmlSalida_signed),nil,nil,sw_showNormal);
    end
    else
        showmessage('AutoFirma No Presente En: '+rutaAutoFirma);
    //;
end;
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 12-11-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Y el usuario [Delphier] en el hilo original, en este mensaje, también publicó un proyecto con código, que está en el FTP del club, que permite firmar, en ese caso utilizando los SecureBlackBox (por lo que me ha parecido ver).
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #4  
Antiguo 12-11-2024
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 4.214
Poder: 24
newtron Va camino a la fama
Gracias compañero pero creo que me estoy despistando bastante con este asunto de la firma NO VeriFactu.
Quiero entender que lo que piden es que guardes la firma del .XML para, en caso de requerimiento, poder "construir" el .XML con ese campo de firma añadido en un nodo específico. Entiendo que eso es distinto a firmar un .XML y guardar el fichero firmado.
Yo puedo coger un fichero .XML y firmarlo digitalmente pero eso lo que hace es añadir al .XML una serie de nodos que no creo que tengan mucho que ver con la firma que piden luego en la estructura del fichero SOAP.
¿Es así o simplemente basta con guardar el fichero .XML firmado?

Gracias y un saludo.
__________________
Be water my friend.

Última edición por Neftali [Germán.Estévez] fecha: 12-11-2024 a las 17:06:08.
Responder Con Cita
  #5  
Antiguo 12-11-2024
novatico novatico is offline
Miembro
 
Registrado: dic 2022
Posts: 370
Poder: 4
novatico Va por buen camino
Cita:
Empezado por newtron Ver Mensaje
Gracias compañero pero creo que me estoy despistando bastante con este asunto de la firma NO VeriFactu.
Quiero entender que lo que piden es que guardes la firma del .XML para, en caso de requerimiento, poder "construir" el .XML con ese campo de firma añadido en un nodo específico. Entiendo que eso es distinto a firmar un .XML y guardar el fichero firmado.
Yo puedo coger un fichero .XML y firmarlo digitalmente pero eso lo que hace es añadir al .XML una serie de nodos que no creo que tengan mucho que ver con la firma que piden luego en la estructura del fichero SOAP.
¿Es así o simplemente basta con guardar el fichero .XML firmado?

Gracias y un saludo.
Pues creo que eso exactamente, si te fijas el último nodo del registro de facturación se llama "Signature", que es exactamente lo que se añade a un fichero cuando lo firmas, un nodo llamado "Signature" con varios "subnodos". Es cuestión de probar.
Responder Con Cita
  #6  
Antiguo 12-11-2024
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por newtron Ver Mensaje
Yo puedo coger un fichero .XML y firmarlo digitalmente pero eso lo que hace es añadir al .XML una serie de nodos que no creo que tengan mucho que ver con la firma que piden luego en la estructura del fichero SOAP.

Pues justo eso.
Firmar el XML genera unos nodos extra con la firma.

Por ejemplo algo así:

Código PHP:
<?xml version="1.0" encoding="utf-8"?>
<sum:RegFactuSistemaFacturacion xmlns:xd="http://www.w3.org/2000/09/xmldsig#" xmlns:sum1="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroInformacion.xsd" xmlns:sum="https://www2.agenciatributaria.gob.es/static_files/common/internet/dep/aplicaciones/es/aeat/tike/cont/ws/SuministroLR.xsd">
  <sum:RegistroFactura>
    <sum1:RegistroAlta>
      <sum1:IDVersion>1.0</sum1:IDVersion>
      
      .... todo esto sería lo que corresponde al registro de facturación
      .... lo quito para abreviar

      <sum1:NumRegistroAcuerdoFacturacion></sum1:NumRegistroAcuerdoFacturacion>
      <sum1:IdAcuerdoSistemaInformatico></sum1:IdAcuerdoSistemaInformatico>
      <sum1:TipoHuella>01</sum1:TipoHuella>
      <sum1:Huella>F96F84EAE2A27EE2ECC1F9283075B7EBC96817A7C18FDE46F4C3CEE7F58C56AC</sum1:Huella>
    </sum1:RegistroAlta>
  </sum:RegistroFactura>


  <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="Signature-774231ed-e9e7-47b9-96b4-706291ab3d0d">
    <ds:SignedInfo>
      <ds:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
      <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
      <ds:Reference Id="Reference-ceebfecd-9605-4f1a-aa71-c75d652aa53c" URI="">
        <ds:Transforms>
          <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
        </ds:Transforms>
        <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
        <ds:DigestValue>MdPzS7i+7f73ejsLpLFZqK4Gji7//N4jgeZg4EGEhKM=</ds:DigestValue>
      </ds:Reference>
      <ds:Reference Id="ReferenceKeyInfo" URI="#KeyInfoId-Signature-774231ed-e9e7-47b9-96b4-706291ab3d0d">
        <ds:Transforms>
          <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
        </ds:Transforms>
        <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
        <ds:DigestValue>4ooJRYhKp0wF5esWLT7++8acQZsoHq2lSBH7Q1x9hn8=</ds:DigestValue>
      </ds:Reference>
      <ds:Reference Type="http://uri.etsi.org/01903#SignedProperties" URI="#SignedProperties-Signature-774231ed-e9e7-47b9-96b4-706291ab3d0d">
        <ds:Transforms>
          <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/>
        </ds:Transforms>
        <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
        <ds:DigestValue>n+oqDbcVLM5jCcBFNix4eHcmQTIPXSgb+hYR7SJzUwc=</ds:DigestValue>
      </ds:Reference>
    </ds:SignedInfo>
    <ds:SignatureValue Id="SignatureValue-774231ed-e9e7-47b9-96b4-706291ab3d0d">
      PEm+pl4ljW2AObrD7jNIo4EWHh3YEnT1BdXQR5s1Zni6y0ELMcMTH9Gu5pLAHMCe90JHnv5KvKjjwiRF8pF0GIVaSVcmXtMGEl/LHnwJ62GJQr7lWtV1GXiOgEEeV8cu5wmw47jKUvzWSTrx6Y1jLcDd6N0YdvXB22LL4M0qTkCOMfRqIK0ni0orYA9hR7fHSdiYw4TPZyPIBFNTt4YYYStAFFtFWPQHusn0HeR3WL3DQ7syV5x7umQIWDSnmcXA5iUNBI9kAYDZvCxQHAJ68lf5G4+shn6/l6oeucF8daiuJ40GKq6u05/MUElh0bDAROVcSJ/eZu/D1OU9oTi3tUL3QRajK1P6yNduMHvpTij+VlMXdHkdERcnOElkfSYoqLhlvoR2MHpH2jrcjN12/m+1lPROr39vSfOZFxO7IoXM/FgGS1hdS7JCqTi/oe1O2WJmjJbbzQMEWZY7uxw3SRB/thC9hiJ7aBoeqSf4aIKo/2VQdZ+FJdkfVVUSgISGSNDbQK7Ijd0R8fq46s6YNgvnPf0Z/2GdPoIEagDCA5UWomc2O2mFN8toAbh0eYYV28pmPAgEF4vU/B/fWr5uq4A/n7YpTCCjsYmLULxZBqoJIHwWpB2Tjq7JKAHsFSYGdxuCcxwLwfaia7Sy07M/Nv3CjMOVANWZpUVRS+fPz4M=
    </ds:SignatureValue>
    <ds:KeyInfo Id="KeyInfoId-Signature-774231ed-e9e7-47b9-96b4-706291ab3d0d">
      <ds:X509Data>
        <ds:X509Certificate>MIIJDDCCBvSgAwIBAgIQHpqv2S+e3ZZgk/gLEO+XjjANBgkqhkiG9w0BAQsFADCBnTELMAkGA1UEBhMCRVMxFDASBgNVBAoMC0laRU5QRSBTLkEuMTowOAYDVQQLDDFBWlogWml1cnRhZ2lyaSBwdWJsaWtvYSAtIENlcnRpZmljYWRvIHB1YmxpY28gU0NBMTwwOgYDVQQDDDNFQUVrbyBIZXJyaSBBZG1pbmlzdHJhemlvZW4gQ0EgLSBDQSBBQVBQIFZhc2NhcyAoMikwHhcNMjEwNTA2MTQwNzA3WhcNMzEwNTA2MTQwNzA3WjCBoTELMAkGA1UEBhMCRVMxDTALBgNVBAoMBEFTVVMxNzA1BgNVBAsMLkdhaWx1IHppdXJ0YWdpcmlhIC0gQ2VydGlmaWNhZG8gZGUgZGlzcG9zaXRpdm8xIzAhBgNVBAsMGlpFUEhZUlVTIE0gR1U1MDJHVV9HVTUwMkdVMQswCQYDVQQLDAJQQzEYMBYGA1UEAwwPTDFOUkNWMDFENzQ4MDI3MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA3+RvefNVHNcvHSzFmjXNMRdZXKctuVAY6hOy2nc486H4opgE8H5/2orrIF9wfJW6Hb5xAhc6DNhlfXoTq6a5OSAKPDyn7az8uYzuOR+HIFn8Ow8y4/An+kHCyTqN2avksmQDrc2cfxzdUYu6GVIazmfU2iFiwXCrG+lJDEeLoh+8VD6YCnFDSuCyZVUcTaPVg/ymjtVcXJoLe8qiXjha63Yf+EKt9Sz9xgRZVGA68eixJWXwU/D0UYC/miw6JWro4whWO8o5vDrSdLvpmpojXRRCZcDktFKwsIbJW9u7bFxNv5LPzVgM14mBzpUfJ2/JuQbB79Gq6l6NPtN53qlHPgA3jTJTOX0vHqkCEU1VTVN8UqHmNQxbXt6gbRERaQRt/h0lE4yW+GYI7AQLoDlpwFRXRt5bL8NcCWQtH7HkUyNbN3EQFj48sOn5sVKzOfkbWPPC5BgSoziXlPpsTYZMlP2uLv3vD1iY0XHau/C821FJVZ0r/oqE37rukHk8gyCP6Yc1xON05d2rrs+rwTqgwxnSWx4SogyGyzdovS0LUT/zfM+fLJeILC5941X5iMSvvrHrGN829f+J+/uo5dez5X4eyyzqXrc/FwbgT02Y+kni2c1Wb+T5XmnVTpiwarI38W6zru+XTEPKirhJnEGIy1tT85JGoBlzWXSnY794XDsCAwEAAaOCA0AwggM8MIHHBgNVHRIEgb8wgbyGFWh0dHA6Ly93d3cuaXplbnBlLmNvbYEPaW5mb0BpemVucGUuY29tpIGRMIGOMUcwRQYDVQQKDD5JWkVOUEUgUy5BLiAtIENJRiBBMDEzMzcyNjAtUk1lcmMuVml0b3JpYS1HYXN0ZWl6IFQxMDU1IEY2MiBTODFDMEEGA1UECQw6QXZkYSBkZWwgTWVkaXRlcnJhbmVvIEV0b3JiaWRlYSAxNCAtIDAxMDEwIFZpdG9yaWEtR2FzdGVpejAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0OBBYEFP7l1cwcXOUTcx9428TFx7oWETeTMB8GA1UdIwQYMBaAFMCpSvdHJYf/vLWmic6C0kaoieujMIIBHgYDVR0gBIIBFTCCAREwggENBgorBgEEAfM5AQMCMIH+MCUGCCsGAQUFBwIBFhlodHRwOi8vd3d3Lml6ZW5wZS5jb20vY3BzMIHUBggrBgEFBQcCAjCBxwyBxEJlcm1lZW4gbXVnYWsgZXphZ3V0emVrbyB3d3cuaXplbnBlLmNvbSBaaXVydGFnaXJpYW4ga29uZmlhbnR6YSBpemFuIGF1cnJldGlrIGtvbnRyYXR1YSBpcmFrdXJyaS5MaW1pdGFjaW9uZXMgZGUgZ2FyYW50aWFzIGVuIHd3dy5pemVucGUuY29tIENvbnN1bHRlIGVsIGNvbnRyYXRvIGFudGVzIGRlIGNvbmZpYXIgZW4gZWwgY2VydGlmaWNhZG8wHwYDVR0lBBgwFgYIKwYBBQUHAwIGCisGAQQBgjcKAwwwgaAGCCsGAQUFBwEBBIGTMIGQMCIGCCsGAQUFBzABhhZodHRwOi8vb2NzcC5pemVucGUuY29tMGoGCCsGAQUFBzAChl5odHRwOi8vd3d3Lml6ZW5wZS5jb20vY29udGVuaWRvcy9pbmZvcm1hY2lvbi9jYXNfaXplbnBlL2VzX2Nhcy9hZGp1bnRvcy9BQVBQTlJfY2VydF9zaGEyNTYuY3J0MDoGA1UdHwQzMDEwL6AtoCuGKWh0dHA6Ly9jcmwuaXplbnBlLmNvbS9jZ2ktYmluL2NybGludGVybmEyMA0GCSqGSIb3DQEBCwUAA4ICAQCSM24d7ToO2NXrsNp4U8PcgmT3qVTbGgtfZix8774SzElCaKBYZvEDqsJpTdlpzDmUXbCtAJsFGeCj/vz3P4Ot1DUYiej7TttsSsTLZUHrxI8mn++R9vlXLOsioRxf4XORdyvinRgUHv3SJ6Xk6Yc67QRKjJsOQhjTuZ0fyzNsyCwvEJ2W8B1UhAuUF0rGzmez6brwfJnWtZMMCRtPsvaHvG2CK91koqkuoYdheoKFC3Ud5TMP1djc5p5KXzFzTNgHIX1Wl6L8go+Pco24V67hG7n58daRI0RVG7guuYMbxk1r76/58QnIYVD0n44QT0b27Ki0flG6rFLfNRZpiNUMAPTtDAAH3aJ41XoNwkfOyxZrt9BUUdg5wCJI+1TYsClXkUj395w3DSZ8BY55QNOyrf5XQjDmtuk/jqTzjlheAL94NIAs5Pa+vG8b8aOuNG6MKZXNF1hKPx7bZ4cxkWnLJX8wA0Ohw8I8TqWDc44ZAwXvxAjwTM7WrXtMixeCIapJjQwR9TJvtf+I1FvnLsPUVlnAuqkjs6K4Wzd3CmekqNLXGX/1jfi0avmkVAHbFGFnmwoKyW7zP7MVMELSAF9O9szOdIDS8L1IckohxvZr8P+IkYRbJPhy0HFFJrqevnwAqI4wYL5fFlj3CJGDhwwgTYdx/79ph9fp3sXUIAhO7Q==</ds:X509Certificate>
      </ds:X509Data>
      <ds:KeyValue>
        <ds:RSAKeyValue>
          <ds:Modulus>3+RvefNVHNcvHSzFmjXNMRdZXKctuVAY6hOy2nc486H4opgE8H5/2orrIF9wfJW6Hb5xAhc6DNhlfXoTq6a5OSAKPDyn7az8uYzuOR+HIFn8Ow8y4/An+kHCyTqN2avksmQDrc2cfxzdUYu6GVIazmfU2iFiwXCrG+lJDEeLoh+8VD6YCnFDSuCyZVUcTaPVg/ymjtVcXJoLe8qiXjha63Yf+EKt9Sz9xgRZVGA68eixJWXwU/D0UYC/miw6JWro4whWO8o5vDrSdLvpmpojXRRCZcDktFKwsIbJW9u7bFxNv5LPzVgM14mBzpUfJ2/JuQbB79Gq6l6NPtN53qlHPgA3jTJTOX0vHqkCEU1VTVN8UqHmNQxbXt6gbRERaQRt/h0lE4yW+GYI7AQLoDlpwFRXRt5bL8NcCWQtH7HkUyNbN3EQFj48sOn5sVKzOfkbWPPC5BgSoziXlPpsTYZMlP2uLv3vD1iY0XHau/C821FJVZ0r/oqE37rukHk8gyCP6Yc1xON05d2rrs+rwTqgwxnSWx4SogyGyzdovS0LUT/zfM+fLJeILC5941X5iMSvvrHrGN829f+J+/uo5dez5X4eyyzqXrc/FwbgT02Y+kni2c1Wb+T5XmnVTpiwarI38W6zru+XTEPKirhJnEGIy1tT85JGoBlzWXSnY794XDs=</ds:Modulus>
          <ds:Exponent>AQAB</ds:Exponent>
        </ds:RSAKeyValue>
      </ds:KeyValue>
    </ds:KeyInfo>
    <ds:Object Id="XadesObjectId-e1f7803a-06c3-4efb-80a1-240de019d004">
      <xades:QualifyingProperties xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" Id="QualifyingProperties-8b4ef365-4074-4ac4-9cac-5a609fc6672a" Target="#Signature-774231ed-e9e7-47b9-96b4-706291ab3d0d">
        <xades:SignedProperties Id="SignedProperties-Signature-774231ed-e9e7-47b9-96b4-706291ab3d0d">
          <xades:SignedSignatureProperties>
            <xades:SigningTime>2024-11-12T16:19:07+01:00</xades:SigningTime>
            <xades:SigningCertificate>
              <xades:Cert>
                <xades:CertDigest>
                  <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
                  <ds:DigestValue>7RfvGuxIRTKz5Thh0ysc2xcu7vcSE7XLJmVIgr2d41k=</ds:DigestValue>
                </xades:CertDigest>
                <xades:IssuerSerial>
                  <ds:X509IssuerName>CN=EAEko Herri Administrazioen CA - CA AAPP Vascas (2), OU=AZZ Ziurtagiri publikoa - Certificado publico SCA, O=IZENPE S.A., C=ES</ds:X509IssuerName>
                  <ds:X509SerialNumber>40680020218691596437659190274445776782</ds:X509SerialNumber>
                </xades:IssuerSerial>
              </xades:Cert>
            </xades:SigningCertificate>
            <xades:SignaturePolicyIdentifier>
              <xades:SignaturePolicyId>
                <xades:SigPolicyId>
                  <xades:Identifier>https://www.agenciatributaria.es/verifactu/firma</xades:Identifier>
                  <xades:Description></xades:Description>
                </xades:SigPolicyId>
                <xades:SigPolicyHash>
                  <ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>
                  <ds:DigestValue>aHR0cHM6Ly93d3cuYWdlbmNpYXRyaWJ1dGFyaWEuZXMvdmVyaWZhY3R1L2Zpcm1h</ds:DigestValue>
                </xades:SigPolicyHash>
              </xades:SignaturePolicyId>
            </xades:SignaturePolicyIdentifier>
            <xades:SignerRole>
              <xades:ClaimedRoles>
                <xades:ClaimedRole>tercero</xades:ClaimedRole>
              </xades:ClaimedRoles>
            </xades:SignerRole>
          </xades:SignedSignatureProperties>
          <xades:SignedDataObjectProperties>
            <xades:DataObjectFormat ObjectReference="#Reference-ceebfecd-9605-4f1a-aa71-c75d652aa53c">
              <xades:MimeType>text/xml</xades:MimeType>
              <xades:Encoding>UTF-8</xades:Encoding>
            </xades:DataObjectFormat>
          </xades:SignedDataObjectProperties>
        </xades:SignedProperties>
      </xades:QualifyingProperties>
    </ds:Object>
  </ds:Signature>
</sum:RegFactuSistemaFacturacion>
La parte del <ds:signature>...</ds:signature> sería el resultado de firnmar el XML.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #7  
Antiguo 12-11-2024
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 4.214
Poder: 24
newtron Va camino a la fama
Ok.... entonces.... Yo firmo el fichero .XML y lo guardo. ¿Cuando lo pidan cómo se envía?


Gracias y un saludo.
__________________
Be water my friend.
Responder Con Cita
  #8  
Antiguo 04-07-2025
ilisoft21 ilisoft21 is offline
Registrado
 
Registrado: abr 2004
Posts: 5
Poder: 0
ilisoft21 Va por buen camino
Sorprendido chequeo de Firma de un Registro

Buenos días!!!

Estamos con el proceso de chequeo de registros.
He estado bien algún ejemplo de VS para validar una firma.
¿tenéis alguna información para poder hacerlo desde Delphi?

Gracias.
Responder Con Cita
  #9  
Antiguo 04-07-2025
Avatar de gcqZW
gcqZW gcqZW is offline
Miembro
 
Registrado: ene 2025
Ubicación: Zaragoza
Posts: 274
Poder: 2
gcqZW Va por buen camino
Mírate el post justo anterior al tuyo, ahí hablan de ello.
__________________
La religión es personal e intransferible.
Responder Con Cita
  #10  
Antiguo 04-07-2025
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.435
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Por favor, hagamos un búsqueda en los foros antes de crear nuevos hilos.
Revisad la Guía de estilo de los foros.

Muevo hilo...

Por no decir que aparte de este ya hay otros similares:
https://www.clubdelphi.com/foros/showthread.php?t=97119
https://www.clubdelphi.com/foros/showthread.php?t=97192
https://www.clubdelphi.com/foros/showthread.php?t=97451
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
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
Posicion Firma shoulder Varios 9 11-10-2016 17:03:20
Chequeo para InputBox... bulc OOP 1 20-06-2014 22:18:14
Calcular un digito de chequeo GrupoDatasoft Varios 7 09-02-2009 17:53:53
Firma Digital Dado de baja Varios 5 30-11-2008 20:52:16
La firma de la semana, del mes, del año... kinobi Debates 3 23-05-2005 01:00:52


La franja horaria es GMT +2. Ahora son las 06:50:43.


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