SetaPDF-Signer Component Introduction and Index

The SetaPDF-Signer component allows PHP developers to write programs, which are able to digital sign PDF documents in pure PHP.

Like all SetaPDF components it's based on the Core component. This manual describes only the high-level functionalities related to this component and may refer to the manual of the Core component.

  1. Getting Started
    1. System Requirements and Installation
    2. Loading the Component
    3. Error Handling
    4. Configuring the Temporary File Writer
  2. The Main Class
    1. Introduction
    2. Get an Instance
      1. Encrypted Documents
    3. Configuring the Instance
      1. Setting the Signature Field Name
      2. Configure the Reserved Space for the Final Signature
      3. Add a Timestamp Module
    4. The sign() Method
      1. Example
    5. The timestamp() Method
    6. Signature Properties
      1. Introdruction
      2. Predefined Constants
      3. The setSignatureProperty() and getSignatureProperty() Methods
      4. The Proxy Methods
    7. Certification
      1. Introduction
      2. Constants
      3. Set or Get the Certification Level
  3. Create a Signature Field
    1. Introduction
    2. Create Hidden Signature Fields
    3. Creating Visible Signature Fields
    4. Naming of Signature Fields
  4. Signature Appearance Modules
    1. Introduction
    2. Dynamic Appearance
      1. Configure the Background
      2. Configure the Graphic
      3. Configure Labels and Certificate Data
    3. XObject Appearance
      1. Example with a Rich-Text Block
    4. Appearances on Several Pages
  5. Signature Modules
    1. Overview
    2. Keys in PKCS#12 Format (.pfx / .p12)
    3. PAdES Module (PHP)
      1. Description
      2. Public Methods
      3. Demo
    4. CMS Module (PHP)
      1. Description
      2. Public Methods
      3. Demo
    5. OpenSSL Module (PHP)
      1. Description
      2. Public Methods
      3. Demo
    6. OpenSSL S/MIME Module (CLI)
      1. Description
      2. Public Methods
      3. Demo
    7. OpenSSL CMS Module (CLI)
      1. Description
      2. Public Methods
      3. Demo
    8. Additional Modules
      1. Introduction
      2. GlobalSign Digital Signing Service (DSS)
      3. GlobalSign Qualified Signing Service (QSS)
      4. Swisscom All-in Signing Service
      5. Azure Key Vault
      6. Google Cloud Key Management Service
      7. AWS Key Management Service
      8. PKCS #11
      9. Cloud Signature Consortium API (CSC API)
      10. TRUST2GO
      11. Cumulo API
      12. "Serviço de Assinatura de Faturas Eletrónicas" (SAFE)
    9. Individual Module
      1. Introduction
      2. Examples
        1. External Serivce that Creates CMS/PKCS#7 Structures
        2. Exernal Service that Returns a PKCS#1 Signature Value
      3. Build Properties Dictionary
    10. External Implementation
      1. Introduction
      2. OpenSSL CLI commands
        1. dgst
        2. pkeyutl
        3. rsautl
        4. Engines
      3. OpenSC pkcs11-tool
  6. Timestamp Modules
    1. Introduction
    2. RFC 3161
      1. CURL
        1. Authenticate With Username and Password
        2. Authenticate With a Client Certificate
  7. Asynchronous Signature Workflow
    1. Introduction
    2. The Workflow
      1. preSign() / preTimestamp()
      2. createSignature() / createTimestampSignature()
      3. optional: addTimeStamp()
      4. saveSignature()
    3. Example
  8. Sign Several Times
    1. Introduction
    2. Example
    3. Unknown signature field name
  9. Signing PDF Forms
    1. AcroForms
    2. XFA Forms
  10. Long-Term Validation (LTV)
    1. Introduction
    2. Implemented features
    3. What's currently NOT implemented
    4. How to get validation related information
      1. Logging
    5. Performance
    6. Information Resolvers
    7. Examples
      1. Add LTV information to CMS signature
      2. Add LTV information to Document Security Store (DSS) only
      3. Add LTV information to CMS and Document Security Store (DSS)
  11. Trust Settings
    1. Introduction
    2. Trust Settings in Adobe Acrobat or Reader
  12. Migrating
    1. From Version 2.0 to 2.1
      1. What has changed
      2. Backward Incompatible Changes
        1. Dynamic Appearance
        2. XObject Appearance
    2. From Version 1.x to 2.0
      1. Overview
      2. Error Handling
      3. Loading the Component
      4. General Refactoring
      5. Removed Methods
      6. Refactor Version 1 Methods
        1. The setAppearance() Method
        2. The setTmpDirectory() Method
        3. Page Accessor Methods
      7. Refactor Usage of Signature Modules
      8. Refactor Usage of Signature Appearances
      9. Refactor Usage of Timestamp Modules
        1. Removed Methods
  13. LTV (pre-release)
  14. API Reference