Ver Mensaje Individual
  #427  
Antiguo 03-02-2021
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 233
Reputación: 16
espinete Va camino a la fama
Problemas con la firma del TicketBAI

Hola de nuevo. Después de corregir algunos errores en el XML del TicketBAI, en la petición, formato del gzip, etc. ahora me devuelve este otro error:

FirmaElectronica: La firma no cumple los requisitos de la polÃ*tica de firma TicketBAI.(EPES: S ALGORITMO: rsa-sha256:2048 POLITICA: N CERTIFICADO_ADMITIDO: S )

He usado el código para firma que encontré en el foro, el que usa los componentes de SecureBlackBox 2020. (He suprimido la parte del código que uso para cargar el certificado):

Código Delphi [-]
procedure FirmarXML(archivo : string);
var
  CertificateStorage: TsbxCertificateStorage; 
  CertificateManager: TsbxCertificateManager;
  sbxXAdESSigner1 : TsbxXAdESSigner; 
  cert : TsbxCertificate;
  i : Integer;
begin
  sbxXAdESSigner1 := TsbxXAdESSigner.Create(nil);
  sbxXAdESSigner1.InputFile := archivo;
  sbxXAdESSigner1.OutputFile := 'firmado.xml';

  {.....}

  sbxXAdESSigner1.SignatureType := cxstEnveloped;
  sbxXAdESSigner1.CanonicalizationMethod := cxcmCanon;
  sbxXAdESSigner1.HashAlgorithm := 'SHA256';
  sbxXAdESSigner1.XMLElement := '';  // Todo el documento
  sbxXAdESSigner1.EnableXAdES := True;
  sbxXAdESSigner1.XAdESVersion := xav132;
  sbxXAdESSigner1.XAdESForm := xafEPES;
  sbxXAdESSigner1.Config('SigPolicyID=https://ticketbai.eus/politicafirma'); 
  sbxXAdESSigner1.Config('SigPolicyHash=39D59C038EBB3B7DF6C61ED2F740B318F0C50F93ADCD35E26BE8FF8E76D21D  A8');
  sbxXAdESSigner1.Config('SigPolicyHashAlgorithm=SHA256');
  sbxXAdESSigner1.Config('SigPolicyURI=https://ticketbai.eus/politicafirma');

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


No sé si las URLs han cambiado y ahora son distintas. En la documentación he encontrado otra URL...

https://www.euskadi.eus/contenidos/i...irma_v_1_0.pdf

...pero incluso añadiendo esa URL y su correspondiente HASH (que he calculado en https://www.fileformat.info/tool/hash.htm), me devuelve el mismo error.

Como los errores que devuelve Bizkaia son muy ambiguos, no sé si el problema es ese o es otro, la verdad.

Última edición por Neftali [Germán.Estévez] fecha: 04-02-2021 a las 08:40:01. Razón: Añadir TAGs al código Delphi
Responder Con Cita