SetaPDF_Signer_DocumentSecurityStore Class representing a "Document Security Store" in a PDF document.
File: /SetaPDF v2/Signer/DocumentSecurityStore.php
Class hierarchy
Summary
Methods
- __construct()
- _addStream()
- _getStreams()
- addCRL()
- addCRLs()
- addCertificate()
- addCertificates()
- addOCSP()
- addOCSPs()
- addValidationRelatedInfo()
- addValidationRelatedInfoByField()
- addValidationRelatedInfoByFieldName()
- cleanUp()
- getCRLs()
- getCertificates()
- getDictionary()
- getOCSPs()
- getOptimizeOcspResponses()
- getSignatureDigest()
- getValidationRelatedInfo()
- getValidationRelatedInfoByField()
- getValidationRelatedInfoByFieldName()
- getVriName()
- getVriNameByFieldName()
- setOptimizeOcspResponses()
Properties
$_optimizeOcspResponses
Defines whether OCSP responses should be embedded including their optional certificates (false) or not (true).
Methods
__construct()
_addStream()
Adds a stream to the DSS data.
Parameters
- $type : string
The type/key to which the data should be added.
- $data : string
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
_getStreams()
Get a stream by its type from the DSS dictionary.
Parameters
- $type : string
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
addCRL()
Add a CRL to the CRLs entry in the DSS dictionary.
Parameters
- $crl : string|SetaPDF_Signer_X509_Crl
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
addCRLs()
Add CRLs to the CRLs entry in the DSS dictionary.
Parameters
- $crls : string[]|SetaPDF_Signer_X509_Crl[]
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
addCertificate()
Add a certificate to the Certs entry in the DSS dictionary.
Parameters
- $certificate : string|SetaPDF_Signer_X509_Certificate
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
addCertificates()
Add certificates to the Certs entry in the DSS dictionary.
Parameters
- $certificates : string[]|SetaPDF_Signer_X509_Certificate[]
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
addOCSP()
Add a OCSP response to the OCSPs entry in the DSS dictionary.
Parameters
- $ocspResponse : string|SetaPDF_Signer_Ocsp_Response
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
Throws SetaPDF_Exception_NotImplemented
Throws SetaPDF_Signer_Asn1_Exception
Throws SetaPDF_Signer_Exception
addOCSPs()
Add OCSP responses to the OCSPs entry in the DSS dictionary.
Parameters
- $ocsps : string[]|SetaPDF_Signer_Ocsp_Response
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
Throws SetaPDF_Exception_NotImplemented
Throws SetaPDF_Signer_Asn1_Exception
Throws SetaPDF_Signer_Exception
addValidationRelatedInfo()
Add validation related information to the VRI dictionary of the DSS dictionary.
Parameters
- $key : string
The sha1 digest of the signature.
- $crls : array
An array of strings,
SetaPDF_Signer_X509_Crl
instances orSetaPDF_Core_Type_IndirectObjectInterface
to streams of the CRLs.- $ocsps : array
An array of strings,
SetaPDF_Signer_Ocsp_Response
instances orSetaPDF_Core_Type_IndirectObjectInterface
to streams of the OCSPs.- $certs : array
An array of strings, SetaPDF_Signer_X509_Certificate instances or
SetaPDF_Core_Type_IndirectObjectInterface
to streams of the certs.- $timestamp : null|SetaPDF_Core_DataStructure_Date|DateTime|string
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
Throws SetaPDF_Exception_NotImplemented
Throws SetaPDF_Signer_Asn1_Exception
Throws SetaPDF_Signer_Exception
Throws Exception
addValidationRelatedInfoByField()
WARNING: This method is marked as deprecated!
Use SetaPDF_Signer_DocumentSecurityStore::addValidationRelatedInfoByFieldName()
instead.
Parameters
- $fieldName : string
The signature field name.
- $crls : array
An array of strings or
SetaPDF_Core_Type_IndirectObjectInterface
to streams of the CRLs.- $ocsps : array
An array of strings or
SetaPDF_Core_Type_IndirectObjectInterface
to streams of the OCSPs.- $certs : array
An array of strings or
SetaPDF_Core_Type_IndirectObjectInterface
to streams of the certs.- $timestamp : null|SetaPDF_Core_DataStructure_Date|DateTime|string
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
Throws SetaPDF_Exception_NotImplemented
Throws SetaPDF_Signer_Asn1_Exception
Throws SetaPDF_Signer_Exception
See
addValidationRelatedInfoByFieldName()
Add validation related information to the VRI dictionary of the DSS dictionary by a specific signature field.
Parameters
- $fieldName : string
The signature field name.
- $crls : array
An array of strings or
SetaPDF_Core_Type_IndirectObjectInterface
to streams of the CRLs.- $ocsps : array
An array of strings or
SetaPDF_Core_Type_IndirectObjectInterface
to streams of the OCSPs.- $certs : array
An array of strings or
SetaPDF_Core_Type_IndirectObjectInterface
to streams of the certs.- $timestamp : null|SetaPDF_Core_DataStructure_Date|DateTime|string
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
Throws SetaPDF_Exception_NotImplemented
Throws SetaPDF_Signer_Asn1_Exception
Throws SetaPDF_Signer_Exception
getCRLs()
Get all CRLs the OCSPs entry in the DSS dictionary.
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
getCertificates()
Get all certificates from the Certs entry in the DSS dictionary.
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
getDictionary()
Get and/or creates the DSS dictionary.
Parameters
- $create : bool
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
getOCSPs()
Get all OCSP responses from the OCSPs entry in the DSS dictionary.
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
getSignatureDigest()
WARNING: This method is marked as deprecated!
Use SetaPDF_Signer_DocumentSecurityStore::getVriNameByFieldName()
instead.
Parameters
- $fieldName : string
Exceptions
Throws SetaPDF_Core_Exception
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Core_Type_IndirectReference_Exception
Throws SetaPDF_Signer_Asn1_Exception
Throws SetaPDF_Signer_Exception
See
getValidationRelatedInfo()
Get validation related information.
Parameters
- $vriKey : null|string
The sha1 digest of the signature to get a specific information. Otherwise all found validation data is returned.
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
getValidationRelatedInfoByField()
WARNING: This method is marked as deprecated!
Use SetaPDF_Signer_DocumentSecurityStore::getValidationRelatedInfoByFieldName()
instead.
Parameters
- $fieldName : string
The signature field name.
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
Throws SetaPDF_Exception_NotImplemented
Throws SetaPDF_Signer_Asn1_Exception
See
getValidationRelatedInfoByFieldName()
Get validation related information by a signature field name.
Parameters
- $fieldName : string
The signature field name.
Exceptions
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Exception
getVriName()
Get the signature digest of a CRL or OCSP response which can be used as an index in the VRI dictionary.
Parameters
- $object : SetaPDF_Signer_Asn1_Signed
getVriNameByFieldName()
Get the signature digest of a signature field, which can be used as an index in the VRI dictionary.
For a document signature the bytes that are hashed are those of the signature's DER-encoded PKCS#7 (and its derivatives) binary data object (base-16 decoded byte string in the Contents entry in the signature dictionary).For the signatures of the CRL and OCSP response, it is the respective signature object represented as a BER-encoded OCTET STRING encoded with primitive encoding.
For a Time-stamp's signature it is the bytes of the Time-stamp itself since the Time-stamp token is a signed data object.
Parameters
- $fieldName : string
Exceptions
Throws SetaPDF_Core_Exception
Throws SetaPDF_Core_SecHandler_Exception
Throws SetaPDF_Core_Type_Exception
Throws SetaPDF_Core_Type_IndirectReference_Exception
Throws SetaPDF_Signer_Asn1_Exception
Throws SetaPDF_Signer_Exception
setOptimizeOcspResponses()
Define whether OCSP responses should be optimized or not.
By optimizing (default = true) the OCSP responses the certificates are removed as they are normally embedded via self::addCertificates(), too. By doing this the certificates are not embedded twice.
Anyhow, there are validation enginges on the road which EXPECTS this optional field to be available.
Parameters
- $optimizeOcspResponses : bool