THPDFCMSAttributeSummary レコード
検証パーサーが持つ CMS の構造情報を公開し、プロファイルのプリフライトが ASN.1 を 2 度たどらずに属性カーディナリティを報告できるようにします
宣言
THPDFCMSAttributeSummary= record
Parsed: boolean;
EncapsulatedContentTypeOID: AnsiString;
SignedContentTypeOID: AnsiString;
SignedAttributeCount: Integer;
UnsignedAttributeCount: Integer;
ContentTypeCount: Integer;
MessageDigestCount: Integer;
SigningTimeCount: Integer;
CommitmentTypeIndicationCount: Integer;
SigningCertificateCount: Integer;
SigningCertificateV2Count: Integer;
SigningCertificateReferenceValid: boolean;
SigningCertificateV2ReferenceValid: boolean;
SigningCertificateV2HashAlgorithmOID: AnsiString;
SignaturePolicyCount: Integer;
SignatureTimestampCount: Integer;
SignedDataCertificatesPresent: boolean;
SignerCertificateIncluded: boolean;
CertificateCount: Integer;
end;
ユニット
HPDFSignVerify
フィールド
| フィールド | 目的 |
|---|---|
Parsed | CMS 構造の解析に成功した場合に True。他のフィールドに意味があるのはそのときだけです |
EncapsulatedContentTypeOID | SignedData が運ぶカプセル化コンテンツタイプの OID |
SignedContentTypeOID | 署名者の署名済み content-type 属性が宣言するコンテンツタイプ |
SignedAttributeCount | 署名者の署名済み属性セットに含まれる属性の数 |
UnsignedAttributeCount | 署名者の未署名属性セットに含まれる属性の数 |
ContentTypeCount | 見つかった content-type 属性の数 |
MessageDigestCount | 見つかった message-digest 属性の数 |
SigningTimeCount | 見つかった signing-time 属性の数 |
CommitmentTypeIndicationCount | 見つかった commitment-type indication 属性の数 |
SigningCertificateCount | 見つかった ESS signing-certificate(v1)属性の数 |
SigningCertificateV2Count | 見つかった ESS signing-certificate-v2 属性の数 |
SigningCertificateReferenceValid | v1 属性の証明書参照が実際の署名者証明書と一致する場合に True |
SigningCertificateV2ReferenceValid | v2 属性の証明書参照が実際の署名者証明書と一致する場合に True |
SigningCertificateV2HashAlgorithmOID | v2 証明書参照が使用するハッシュアルゴリズム OID |
SignaturePolicyCount | 見つかった signature-policy 属性の数 |
SignatureTimestampCount | 見つかった署名タイムスタンプ属性の数 |
SignedDataCertificatesPresent | SignedData が証明書セットを含んでいる場合に True |
SignerCertificateIncluded | 署名者自身の証明書が埋め込み証明書の中にある場合に True |
CertificateCount | SignedData に埋め込まれた証明書の数 |
使用上の注意
- すべての値は検証パーサーの 1 回のパスから得られるため、プロファイルのプリフライトは ASN.1 を 2 度解析せずにそれらを読めます
- レコードは、カウンター署名者を含む検証済みの各署名の
THPDFSignatureInfo.CMSAttributesに取り付きます - 期待されるカーディナリティを超える属性数(たとえば message-digest 属性が 2 つ以上)は、プリフライト規則にとって手早な不正形式シグナルです