Método THotPDF.GetLoadedSignatureQCStatements
Declaración
function GetLoadedSignatureQCStatements(SigIndex: Integer;
out Info: THPDFQCStatementInfo): boolean;
Comportamiento
Evaluación de certificado cualificado eIDAS de una firma cargada: informa de los QCStatements ETSI EN 319 412-5 del certificado del firmante, incluidos QcCompliance, QcSSCD, los valores QcType, QcLimitValue y las ubicaciones PDS, más la declaración PSD2 de ETSI TS 119 495
Declaración PSD2
El QCStatement PSD2 (0.4.0.19495.2) transporta un PSD2QcType: los roles para los que está autorizado el proveedor de servicios de pago, el nombre de la autoridad nacional competente (NCA) y el identificador de la NCA. Se informa a través de estos campos de THPDFQCStatementInfo:
HasPSD2Statementsolo estruecuando el certificado lleva una declaración PSD2 bien formada; una declaración con longitudes desbordadas o no mínimas, componentes ausentes o extra, etiquetas incorrectas o nombres que no sean de 1 a 256 caracteres de UTF-8 válido se ignora y deja los campos PSD2 vacíosPSD2RolesOfPSPlista cada rol en orden de certificado como unTHPDFPSD2RoleconOID(0.4.0.19495.1.1PSP_AS,0.4.0.19495.1.2PSP_PI,0.4.0.19495.1.3PSP_AI,0.4.0.19495.1.4PSP_IC) yName, el nombre del rol almacenado en el certificado, comoPSP_ASPSD2NCANameyPSD2NCAIdcontienen el nombre y el identificador de la NCA, por ejemploCZ-CNBPSD2RolesPayeryPSD2RolesPayeeestán obsoletos y siempre vacíos, porque ETSI TS 119 495 no define listas de roles de pagador ni de beneficiario; lea en su lugarPSD2RolesOfPSP
Para parsear un PSD2QcType que ya tenga en DER, llame a HPDFParsePSD2QcStatement de la unidad HPDFSignVerify. Rellena un THPDFPSD2QcStatement y devuelve false para cualquier entrada malformada
var
Info: THPDFQCStatementInfo;
I: Integer;
begin
if HotPDF1.GetLoadedSignatureQCStatements(0, Info) and Info.HasPSD2Statement then
begin
for I:= 0 to High(Info.PSD2RolesOfPSP) do
Writeln(Info.PSD2RolesOfPSP[I].Name, ' (', Info.PSD2RolesOfPSP[I].OID, ')');
Writeln('NCA: ', Info.PSD2NCAName, ' / ', Info.PSD2NCAId);
end;
end;
Heurística de firma cualificada
QualifiedSignatureLikely marca la heurística del Anexo IV de eIDAS 910/2014 de QcCompliance más QcSSCD; un valor false no es prueba de una firma no cualificada, porque la decisión de confianza en el servicio QTST queda en manos del llamador. Devuelve false cuando la firma no lleva un certificado utilizable
Véase también GetLoadedSignatureInfo, Validación de firmas por lotes