THPDFSignatureProviderRequest Record
signature provider 연산 하나의 알고리즘, 입력, 키 재료, bookkeeping 식별자를 운반합니다
선언
THPDFSignatureProviderRequest= record
Algorithm: THPDFSignatureAlgorithm;
AlgorithmOID: AnsiString;
DigestAlgorithmOID: AnsiString;
PSSSaltLength: Integer;
InputKind: THPDFSignatureInputKind;
Input: TBytes;
PublicKey: TBytes;
Signature: TBytes;
CertificateDER: TBytes;
KeyIdentifier: AnsiString;
OperationIdentifier: AnsiString;
Context: TBytes;
end;
유닛
HPDFSignatureProvider
필드
| 필드 | 목적 |
|---|---|
Algorithm | 실행할 signature 알고리즘. hsaRSAPKCS1v15, hsaRSAPSS, hsaECDSA 등 |
AlgorithmOID | signature 알고리즘의 object identifier |
DigestAlgorithmOID | digest 알고리즘의 object identifier |
PSSSaltLength | RSA-PSS의 salt 길이. 0..65535 밖의 값은 provider가 거부 |
InputKind | Input이 메시지(sikMessage)인지 준비된 digest(sikDigest)인지 |
Input | 메시지 또는 digest 바이트. 비었거나 너무 큰 입력은 malformed로 거부 |
PublicKey | 서명 검증 시 import하는 public key 바이트 |
Signature | verify 연산이 검사하는 서명 바이트 |
CertificateDER | 결과 서명 크기를 추정할 때 쓰는 DER 인증서 |
KeyIdentifier | 서명 키를 지목하는 provider 고유 식별자 |
OperationIdentifier | 재시도 사이에 provider가 자신의 cancellation source와 대조하는 식별자 |
Context | 요청과 함께 실리는 provider 정의 context 바이트 |
사용 참고 사항
THPDFSignatureProvider구현의Sign,Verify,EstimateSignatureSize로 전달됩니다- Provider는 먼저
InputKind와Input길이를 검증해, 불일치하면spsMalformed를 반환합니다(기준은Algorithm) - 커스텀 transport는 같은 레코드에 재시도 번호까지 더해 받으며, 취소 판단에
OperationIdentifier를 참조할 수 있습니다