====== P4 PAdES LT-Level====== ===== General Information ===== Long-term and OCSP-based Secure Electronic Signature Policies (Profile P4) is defined by Information and Communication Technologies Authority (ICTA) in [[https://kamusm.bilgem.tubitak.gov.tr/dosyalar/mevzuat/kurul_kararlari/elektronik-imza-kullanim-profilleri-rehberi.pdf| Electronic Signature Usage Profiles]] which is a guide of signature profiles for Turkey. In this profile, long term compatibility is provided with LT-Level and LTA-Level signature formats. In addition, this profile requires the use of OCSP for end-entity certificate revocation control. These requirements are provided by the PAdES LT-Level signature format in accordance with the P4 profile. The LT-Level signature is based on the T-Level signature. In addition to T-Level signature, it includes the root and sub-root certificates of the certification authority and the CRL and OCSP responses for signature verification. This enables the signature to be validated for a long period of time. This data, which is added to the signature file, is used while performing signature verification. It does not need to connect to any external system for signature verification and to obtain verification data; all data required for verification is accessed from the contents of the signature file. It is the most recommended signature format thanks to these features. {{https://yazilim.kamusm.gov.tr/eit-wiki/data/media/en/pades_lt_en.png?400|PAdES-LT Level}} The following table specifies the signature properties that must be included in the signature file for P4 PAdES LT-Level signature format: ^** Signature Properties ** ^ ^ **P4 PAdES LT-Level ** ^ | Signed Attributes | Content-type |M | | ::: | Message-digest |M| | ::: | ESS signing-certificate v2 |M | | ::: | /Signature Dictionary/M Entry |M| | ::: | /Signature Dictionary/Reason Entry |O | | ::: | /Signature Dictionary/Location Entry |O| | ::: | Content-time-stamp |O | | ::: | Signature-policy-identifier |M| | Unsigned Attributes|PDF Serial Signature |O | | ::: | /Type/DocTimeStamp /SubFilter/ETSI.RFC3161 |M| | ::: | /DSS/Certs Array |M| | ::: | /DSS/VRI/Cert Array |M| | ::: | /DSS/CRLs Array |M| | ::: | /DSS/OCSPs Array |M| | ::: | /DSS/VRI CRL Array |M| | ::: | /DSS/VRI OCSP Array |M| | ::: | /Type/DocTimeStamp /SubFilter/ETSI.RFC3161 |-| **M:** Must - It is mandatory to provide the specified substance. If the substance is not provided, the e-signature conformity assessment will result in a negative. **O:** Optional – It is optional to provide the specified substance. If the substance is not provided, the e-signature conformity assessment will not result in a negative. **-** : This means that the attribute is not in the signature format. It is recommended not to use optional attributes unless needed. ===== Procedure ===== You can access the **P4 PAdES LT-Level Test Package** from [[https://yazilim.kamusm.gov.tr/?q=tr/system/files/private/p4_pades_lt.rar|here]]. You can access the **test root certificates** from [[https://yazilim.kamusm.gov.tr/?q=tr/system/files/private/rootcerts.rar|here]]. The following table provides the names and properties of the signature files to be used in the procedures: ^** M/O **^** Signed Document Name **^** Signed Document Property **^** Validation Result**^**Explanation**^ | M |LT_P4_1 | Valid (All signed attributes are added)| VALID | All signed attributes must be displayed in the validation result| | M |LT_P4_4|Signature file with “SigPolicyId” having another value than P4 OID (2.16.792.1.61.0.1.5070.3.3.1) | INVALID |Signature verification details must be shown. | | M |LT_P4_5|Signature file with “SigPolicyHash” having another hash value than P4 hash value| INVALID |Signature verification details must be shown.| | M |LT_P4_6|Signature file with “SPUserNotice” having P4 user notice| VALID |P4 user notice must be shown.| | M |LT_P4_7|Signature file with “ESS-Signing-Certificate” hash algorithm is SHA-1| INVALID |Signature verification details must be shown. | | M |LT_P4_8|Signature file without “SigningTime” | INVALID |Signature verification details must be shown. | | M |LT_P4_9|Signature file having three hours earlier “SigningTime” than “SignatureTimeStamp”| INVALID |"SignatureTimeStamp" must be taken no later than two hours after the signing time. Signature verification details must be shown. | | M |LT_P4_10|Signature file with qualified certificate revocation value CRL rather than OCSP| INVALID |Signature verification details must be shown.| | O |LT_P4_11|Signature file with ”SignatureTimeStamp” which do not have “signatureTimeStamp” root certificate (TS Server is TSC1)| INVALID |The signature must not be verified. | | M |LT_P4_12|Signature file with ” SignatureTimeStamp” which do not have “signatureTimeStamp” CRL (TS Server is TSC1)| INVALID |Signature verification details must be shown. | | M |LT_P4_13 | Signature file with a forged “ESS Signing-Certificate-v2” attribute| INVALID |Signature verification details must be shown.| | M |LT_P4_14 |Signature file with a forged ”message-digest” attribute | INVALID |Signature verification details must be shown.| | M |LT_P4_15 |Signature file in which SHA-1 digest algorithm is used| VALID |The signature must be archived.| | M |LT_P4_16 | Signature file with a forged signature| INVALID |Signature verification details must be shown.| | M |LT_P4_17 |Signature file signed by a certificate with an omitted “non-repudiation” field in the key usage extension| INVALID |Signature verification details must be shown.| | M |LT_P4_18 | Signer certificate with an omitted “UserNotice” text field in the “CertificatePolicies” extension| INVALID |Signature verification details must be shown.| | M |LT_P4_19 |Signer certificate with an omitted ETSI OID in “QualifiedCertificateStatements” extension| INVALID |Signature verification details must be shown.| | M |LT_P4_20 |Signer certificate with an omitted ICTA OID in “QualifiedCertificateStatements” extension| INVALID |Signature verification details must be shown.| | O |LT_P4_21 |Signature file which has a PDF/A-3 content with attachment| INVALID |The signature should not be verified.| | M |LT_P4_22 |Signer certificate has expired before signature timestamp| INVALID |Signature verification details must be shown.| | M |LT_P4_23 |Signer certificate has a forged signature| INVALID |Signature verification details must be shown.| | M |LT_P4_24|Signer certificate has revoked in OCSP before signature timestamp | INVALID |Signature verification details must be shown.| | M |LT_P4_25 |Signer certificate revoked in OCSP after signature timestamp | VALID | | M |LT_P4_26 |The validity of signer certificate has to be checked via an expired OCSP response | INVALID |Signature verification details must be shown.| | M |LT_P4_27 |The validity of signer certificate has to be checked via an OCSP response having forged signature | INVALID |Signature verification details must be shown.| | M |LT_P4_28 |The validity of signer certificate has to be checked via an OCSP response which is signed by an expired OCSP certificate | INVALID |Signature verification details must be shown.| | M |LT_P4_29 |The validity of signer certificate has to be checked via an OCSP response which is signed by a signature forged OCSP certificate | INVALID |Signature verification details must be shown.| | M |LT_P4_31 |The validity of signer certificate has to be checked via an OCSP response which is signed by a revoked OCSP certificate. The OCSP certificate is revoked after signature timestamp | VALID | | M |LT_P4_32 |Signer certificate has a monetary limit which is equal to “0”| CHOICE* | | O |LT_P4_33 |Signer certificate has a usage restriction defined in "QC Statements" extension | INVALID |The signature should not be verified.| | M |LT_P4_34 |The validity of signer certificate has to be checked via an OCSP response which is generated for a different certificate | INVALID |Signature verification details must be shown.| | M |LT_P4_35 |Signer certificate is issued by an intermediate CA certificate having a forged signature| INVALID |Signature verification details must be shown.| | M |LT_P4_36 |The root certificate has a forged signature| INVALID |Signature verification details must be shown.| | M |LT_P4_37 |Signature timestamp has a “TSTInfo” with a forged “messageImprint” field (TS server is TSA1)| INVALID |Signature verification details must be shown.| | M |LT_P4_38 |Signature timestamp has a forged signature (TS server is TSA2)| INVALID |Signature verification details must be shown.| | M |LT_P4_39 |Signature timestamp is signed by an expired certificate (TS server is TSA3)| INVALID |Signature verification details must be shown.| | M |LT_P4_40 |Signature timestamp is signed by a certificate with a forged signature (TS server is TSA4)| INVALID |Signature verification details must be shown.| | M |LT_P4_41 |Signature timestamp is signed by a revoked certificate. The revocation time is before the signature timestamp (TS server is TSA5)| INVALID |Signature verification details must be shown.| | M |LT_P4_42 | Signature timestamp is signed by a revoked certificate. The revocation time is after the signature timestamp (TS server is TSA5)| VALID | | M |LT_P4_43 |Signature timestamp is signed by a certificate whose issuer certificate signature is forged (TS server is TSB)| INVALID |Signature verification details must be shown.| | M |LT_P4_44 |Signature timestamp is signed by a valid certificate (TS server is TSC1)| VALID | | M |LT_P4_45 |Signature timestamp is signed by a certificate which references an expired CRL (TS server is TSC2)| INVALID |Signature verification details must be shown.| | M |LT_P4_46 |Signature timestamp is signed by a certificate which references a CRL with a forged signature (TS server is TSC3)| INVALID |Signature verification details must be shown.| | M |LT_P4_93_s |Counter signature file signed by two signers. Second signer has a valid certificate, but the first signer certificate is revoked in OCSP| INVALID |Validation result of the each signer must be shown in a hierarchical order similar to the tree structure. Signature verification details must be shown.| * One of the following methods must be selected when verifying the signed document if the signer certificate includes a monetary limit: * “INVALID Signature” message must be displayed. The description of the error should be reported to the user. * The monetary limit of the certificate is compared with the monetary limit of the signed document and if the monetary limit of the certificate is sufficient for the monetary value of the signed document, “VALID Signature” message must be displayed. * In the case where the monetary limit of the certificate is not compared with the monetary limit of the signed document, the user should be warned that the signer certificate has a monetary limit and “VALID Signature” message must be displayed.