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

Colaboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-08-2020
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: 18.874
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
Hay varios hilos en el foro sobre el componentes TElXMLSigner (que al final es el que debes usar).
Seguro que en las páginas de Blackbox también encuentras ayuda sobre la firma con este componente. Al final en un XML y los códigos y ejemplos de firmar deben ser similares.

https://www.nsoftware.com/kb/article...ntingxades.rst
https://www.nsoftware.com/kb/article...gdocuments.rst

Aquí en los foros, revisa estos mensajes; Te pueden servir de punto de partida:
https://www.clubdelphi.com/foros/sho...0&postcount=83
https://www.clubdelphi.com/foros/sho...1&postcount=84
https://www.clubdelphi.com/foros/sho...79&postcount=1
__________________
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
  #2  
Antiguo 18-08-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 19
juramisa Va por buen camino
Gracias por responder, creo que ya lo estoy sacando. El tema es que los nuevos componentes son TsbxXMLSigner y TsbxXAdESSigner. Es decir que han cambiado los componentes respecto a versiones anteriores, de ahí que lo que hace unos meses me funcionó con una versión de prueba, ayer con la licenciada, no funcionaba nada. Además de que al instalarlos, no lo hice desde el lugar adecuado. Desinstalar y reinstalar, y ya voy consiguiendo resultados. Os mantendré informados, por si alguien se encuentra en la misma situación. De todas formas gracias por los enlaces los miraré por si pueden ayudarme.

La nueva versión es SecureBlackbox 2020 Delphi Edition

Última edición por juramisa fecha: 18-08-2020 a las 12:54:46.
Responder Con Cita
  #3  
Antiguo 16-09-2020
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.130
Poder: 23
keys Va por buen camino
Hola a todos.

Me imagino que ya os habeis enterado pero Bizkaia está inscribiendo ya los software homologados para Ticket Bai. Mas informacion en www.batuz.eus

En teoria la fase de pruebas comienza en octubre.
Responder Con Cita
  #4  
Antiguo 16-09-2020
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: 18.874
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
El 01/10/2020 se abre la web para comprobación de facturas:
https://batuz.eus/QRTBAI/?id=TBAI-00...dcLGAF-237&s=T
__________________
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
  #5  
Antiguo 16-09-2020
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.130
Poder: 23
keys Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
El 01/10/2020 se abre la web para comprobación de facturas:
https://batuz.eus/QRTBAI/?id=TBAI-00...dcLGAF-237&s=T
No se que facturas se van a comprobar! si las facturas no hay que empezar a mandarlas hasta el 2022. El periodo de prueba que empieza el 1 de octubre es solo para la generación de las facturas y no el envío a hacienda.

Estos de hacienda

Por cierto ¿de donde has sacado ese enlace?
Responder Con Cita
  #6  
Antiguo 16-09-2020
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: 18.874
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 keys Ver Mensaje
No se que facturas se van a comprobar! si las facturas no hay que empezar a mandarlas hasta el 2022.
Perdón, pensaba que ya se podían empezar a enviar para los que estuvieran en fase de pruebas.

Aquí está la normativa: https://www.batuz.eus/es/normativa

Y en el tercer documento (11/09/2020) está la información (que ya teníamos) de formato, certificados, especificaciones,... y por ahí escondido está ese link; Es posible que ya lo tuvieramos en alguna anterior, pero no estaba activo. Al menos ahora ya sale algo...
__________________
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 16-09-2020
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.130
Poder: 23
keys Va por buen camino
Ya lo encontré. Ya estaba de antes, nunca se me habría ocurrido probarlo.
Responder Con Cita
  #8  
Antiguo 17-09-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 19
juramisa Va por buen camino
Buenos días
Como comente adquirimos SecureBlackBox 2020, y los componentes han cambiado respecto a la 16. Por si alguien se encuentra en la misma situación os dejo el código para la firma del TicketBai.


Código Delphi [-]
  T_Firmante = record
    r_Nombre_firma: String;
    r_ID: String;
    r_Metodo_Canonicalization: String;
    r_Hash_algorithm: String;
    // El fichero pdf en el que se encuentra en las políticas de firma. pulsando esa dirección
    // debería presentarnos dicho fichero pdf
    r_SigPolicyID: String; // https://ticketbai.eus/politicafirma
    // El fichero pdf completo calculamos su SHA256 y nos dará un valor hexadecimal, y otro en base64
    // Pasamos el valor hexadecimal
    r_SigPolicyHash: string; // 39D59C038EBB3B7DF6C61ED2F740B318F0C50F93ADCD35E26BE8FF8E76D21DA8
    // Algoritmo
    r_SigPolicyHashAlgorithm: string; //SHA256
    // Direccion URI de política de firma
    r_SigPolicyURI: string; //https://ticketbai.eus/politicafirma;



Código Delphi [-]
procedure p_firmar_xml(el_fichero : string; el_firmante : T_Firmante);
var
  CertificateStorage: TsbxCertificateStorage;  // Nuevo componente SecureBlackBox 2020
  sbxXAdESSigner1 : TsbxXAdESSigner;  // Nuevo componente SecureBlackBox 2020

  cert : TsbxCertificate;
  i : Integer;
  encontrado : Boolean;
  function bintostr(const bin: array of byte): string;
  const
    HexSymbols = '0123456789ABCDEF';
  var
    i: integer;
  begin
    SetLength(Result, 2 * Length(bin));
    for i := 0 to Length(bin) - 1 do
    begin
      Result[1 + 2 * i + 0] := HexSymbols[1 + bin[i] shr 4];
      Result[1 + 2 * i + 1] := HexSymbols[1 + bin[i] and $0F];
    end;
  end;
begin
  sbxXAdESSigner1 := TsbxXAdESSigner.Create(nil);
  sbxXAdESSigner1.InputFile := el_fichero;
  sbxXAdESSigner1.OutputFile := el_fichero;
  CertificateStorage := TsbxCertificateStorage.Create(nil);
  if CertificateStorage.Opened then
     CertificateStorage.Close(True);
  CertificateStorage.Open('system://currentuser@localhost/?store=MY');
  encontrado := False;
  for i := 0 to CertificateStorage.Certificates.Count - 1 do
  begin
    cert := CertificateStorage.Certificates[i];
    if bintostr(Cert.SerialNumber) = el_firmante.r_ID then
    begin
      sbxXAdESSigner1.SigningCertificate := cert;
      encontrado := True;
    end;
  end;
  if not encontrado then
  begin
    Application.MessageBox('Firma no encontrada',
      'Proceso de firma', MB_OK + MB_ICONWARNING
      + MB_DEFBUTTON2);
    Exit;
  end;

  sbxXAdESSigner1.SignatureType := cxstEnveloped;

  sbxXAdESSigner1.CanonicalizationMethod := cxcmCanon;

  sbxXAdESSigner1.HashAlgorithm := el_firmante.r_Hash_algorithm;  // SHA256

  sbxXAdESSigner1.XMLElement := '';  // Todo el documento

  sbxXAdESSigner1.EnableXAdES := True;

  sbxXAdESSigner1.XAdESVersion := xav132;

  sbxXAdESSigner1.XAdESForm := xafEPES;

  sbxXAdESSigner1.Config('SigPolicyID=' + el_firmante.r_SigPolicyID); // https://ticketbai.eus/politicafirma');

  sbxXAdESSigner1.Config('SigPolicyHash=' + el_firmante.r_SigPolicyHash); // 39D59C038EBB3B7DF6C61ED2F740B318F0C50F93ADCD35E26BE8FF8E76D21DA8; 
  sbxXAdESSigner1.Config('SigPolicyHashAlgorithm=' + el_firmante.r_SigPolicyHashAlgorithm); //=SHA256;

  sbxXAdESSigner1.Config('SigPolicyURI=' + el_firmante.r_SigPolicyURI); //https://ticketbai.eus/politicafirma;

  try
    sbxXAdESSigner1.Sign();
  except
      MessageDlg('Error en el proceso de firma', mtError, [mbOK], 0);
  end;
end;

Espero os sirva,

Saludos

Última edición por Neftali [Germán.Estévez] fecha: 17-09-2020 a las 09:09:41. Razón: Añadir TAG's al código
Responder Con Cita
  #9  
Antiguo 17-09-2020
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: 18.874
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
Gracias por el aporte.
__________________
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
  #10  
Antiguo 17-09-2020
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.130
Poder: 23
keys Va por buen camino
Hola a todos.
¿Alguien a obtenido ya el certificado o a realizado el proceso de firmar el software? Estoy un poco pez en los sistemas para firmar la aplicación.
Responder Con Cita
  #11  
Antiguo 17-09-2020
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: 18.874
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
Busca información sobre la herramienta SignTool. Viene con Visualstudio, pero me imagino que también se puede descargar por separado de MSDN.
https://docs.microsoft.com/es-es/dot...s/signtool-exe

Aquí mismo en el club tienes mensajes sobre el tema. Aquí puedes ver un código de ejemplo para firmar.

AÑADO: SignTool forma parte de este SDK.
__________________
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
  #12  
Antiguo 17-09-2020
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.130
Poder: 23
keys Va por buen camino
Gracias.

Ya me había leido todo ese tema del foro. Más que nada era por si alguien ha firmado ya sus programas para TicketBai y que sistemas ha utilizado. Yo estoy hablando con izenpe que parece que ellos también ofrecen alguna solución.

Cuando termine el proceso comentaré mi experiencia. Que por cierto creo que esto de firmar el software solo es para vender certificados de izenpe
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 3706 Hace 2 Semanas 09:38:43
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 13:54:44.


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