HPDFParsePSD2QcStatement Function
Parseert de DER van één ETSI TS 119 495 PSD2QcType naar een THPDFPSD2QcStatement en verwerpt misvormde input in zijn geheel
Declaratie
function HPDFParsePSD2QcStatement(const StatementInfoDER: TBytes;
out Statement: THPDFPSD2QcStatement): boolean;
Eenheid
HPDFSignVerify
Parameters
| Naam | Doel |
|---|---|
StatementInfoDER | De statementInfo van het QCStatement 0.4.0.19495.2: precies één als DER gecodeerde SEQUENCE { rolesOfPSP, nCAName, nCAId } |
Statement | Ontvangt de rollen en de NCA-naam en -identificator; leeg wanneer de functie false teruggeeft |
Retourwaarde
true wanneer de buffer een goed gevormde PSD2QcType bevat; false voor een lege buffer en voor elk van de afwijkingen hieronder
Verworpen invoer
- Lengtes die hun ouder overschrijden, niet-minimale lengtecoderingen en onbepaalde lengtes
- Bytes na de buitenste
SEQUENCE - Ontbrekende of overtollige componenten en componenten met de verkeerde tag:
rolesOfPSPmoet eenSEQUENCE OF SEQUENCE { OBJECT IDENTIFIER, UTF8String }zijn,nCANameennCAIdmoetenUTF8Stringzijn - Rolnamen, NCA-namen en NCA-identificatoren die geen 1 tot 256 tekens geldige UTF-8 zijn
Voorbeeld
var
Statement: THPDFPSD2QcStatement;
I: Integer;
begin
if HPDFParsePSD2QcStatement(StatementInfoDER, Statement) then
begin
for I:= 0 to High(Statement.RolesOfPSP) do
Writeln(Statement.RolesOfPSP[I].Name, ' (', Statement.RolesOfPSP[I].OID, ')');
Writeln('NCA: ', Statement.NCAName, ' / ', Statement.NCAId);
end;
end;
Gebruiksopmerkingen
- De gedefinieerde rol-OID's zijn
0.4.0.19495.1.1(PSP_AS, rekeningsbeheer),0.4.0.19495.1.2(PSP_PI, betalingsinitiatie),0.4.0.19495.1.3(PSP_AI, rekeningsinformatie) en0.4.0.19495.1.4(PSP_IC, uitgifte van op kaarten gebaseerde betaalinstrumenten) - De functie leest DER die je al hebt; om het statement uit een handtekening te lezen, gebruik
HPDFEvaluateCMSSignerQCStatementsop de CMS-data ofTHotPDF.GetLoadedSignatureQCStatementsop een geladen document