Digital signatures

  • Note

    Requires the PSPDFFeatureMaskDigitalSignatures feature flag.
    See more

    Declaration

    Objective-C

    
    @interface PSPDFDigitalSignatureReference : NSObject

    Swift

    class DigitalSignatureReference : NSObject
  • A PSPDFDocumentSignerDelegate gives flexibility to the process of adding a digital signature to a document.

    Implement the documentSigner:signData:hashAlgorithm:completion method to sign the required data and invoke completion when ready. The document signer will automatically embed the signed data inside the signature.

    See more

    Declaration

    Objective-C

    @protocol PSPDFDocumentSignerDelegate <NSObject>

    Swift

    protocol PDFDocumentSignerDelegate : NSObjectProtocol
  • A data source that, when configured on a PSPDFSigner instance or one of its subclasses, gives implementors a chance to configure some details of a digital signature.

    See more

    Declaration

    Objective-C

    @protocol PSPDFDocumentSignerDataSource <NSObject>

    Swift

    protocol PDFDocumentSignerDataSource : NSObjectProtocol
  • Undocumented

    See more

    Declaration

    Objective-C

    @interface PSPDFPKCS12 : NSObject<NSCoding>
    
    PSPDF_EMPTY_INIT_UNAVAILABLE
    
    /// Inits the object with data from a PKCS12 blob.
    - (instancetype)initWithData:(NSData *)data NS_DESIGNATED_INITIALIZER;
    
    /// Unlocks the PKCS12 archive and retrieves the certificate and public key.
    - (void)unlockWithPassword:(NSString *)password done:(nullable void (^)(PSPDFX509 *_Nullable x509, PSPDFPrivateKey *_Nullable pk, NSError *_Nullable error))done;
    
    @end

    Swift

    class PKCS12 : NSObject, NSCoding
  • Concrete implementation of a PSPDFSigner.

    This class augments the functionality of its superclass by supporting password-protected PKCS12 files (.p12 extension).

    See more

    Declaration

    Objective-C

    
    @interface PSPDFPKCS12Signer : PSPDFSigner

    Swift

    class PKCS12Signer : PDFSigner
  • An instance of this class represents a PKCS7 (https://tools.ietf.org/html/rfc2315) cryptographic container. This container format is the most common format used for signing PDFs digitally. For example, you can use an instance of this class when you want to sign a document that was already prepared for deferred digital signing. One example scenario may be the following:

    See more

    Declaration

    Objective-C

    
    @interface PSPDFPKCS7 : NSObject

    Swift

    class PKCS7 : NSObject
  • Represents a cryptographic private key.

    Supported encodings are PKCS1 (https://tools.ietf.org/html/rfc8017) and PCKS8 (https://tools.ietf.org/html/rfc5208).

    See more

    Declaration

    Objective-C

    
    @interface PSPDFPrivateKey : NSObject

    Swift

    class PrivateKey : NSObject
  • Undocumented

    See more

    Declaration

    Objective-C

    @interface PSPDFRSAKey : NSObject
    
    PSPDF_EMPTY_INIT_UNAVAILABLE
    
    /// The underlying public key scheme.
    @property (nonatomic, readonly) NSString *publicKeyScheme;
    
    /// Returns the approximate length of the security parameter. For example, for RSA this is the size of the modulus.
    @property (nonatomic, readonly) NSInteger keyLength;
    
    @end

    Swift

    class RSAKey : NSObject
  • A PSPDFSignatureContents instance that returns zeroed data.

    Declaration

    Objective-C

    
    @interface PSPDFBlankSignatureContents : NSObject <PSPDFSignatureContents>

    Swift

    class BlankSignatureContents : NSObject, PDFSignatureContents
  • An interface for producing content that will be inside the Contents key of a signature dictionary.

    This interface abstracts the digital signature that can be in a signature form field so that you can create your own and place it inside the document. You can call -[PSPDFSigner prepareFormElement:toBeSignedWithAppearance:contents:writingToDataSink:completion:] and pass an instance of this interface to prepare a document for digital signing.

    See more

    Declaration

    Objective-C

    @protocol PSPDFSignatureContents <NSObject>

    Swift

    protocol PDFSignatureContents : NSObjectProtocol
  • Signature info for signature form fields.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSignatureInfo : NSObject

    Swift

    class PDFSignatureInfo : NSObject
  • Manages signature handlers for digital signature creation. Thread safe.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSignatureManager : NSObject

    Swift

    class PDFSignatureManager : NSObject
  • Represents entries in the signature properties. Signatures can have properties that describe how and when they were built.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSignaturePropBuild : NSObject

    Swift

    class PDFSignaturePropBuild : NSObject
  • Represents one entry in the signature properties.

    Signatures can have properties that describe how and when they were built.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSignaturePropBuildEntry : NSObject

    Swift

    class PDFSignaturePropBuildEntry : NSObject
  • Represents the status of a digital signature after it has been validated.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSignatureStatus : NSObject

    Swift

    class PDFSignatureStatus : NSObject
  • This class validates digital signatures in a PDF document. Validation consists of two steps: Checking that the signature integrity is correct (that is, the document was not modified after it was signed), and ensuring that the chain of certificates contained in the signature is trusted.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSignatureValidator : NSObject

    Swift

    class PDFSignatureValidator : NSObject
  • This class configures the appearance that a PSPDFSignatureElement will have in a document when signed.

    By default, a digital signature form element will show information from the signing certificate, like the signer’s name, the date when the document was signed, and so on. Use a PSPDFSignatureAppearance instance when you want to configure further how this information is presented to the user.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSignatureAppearance
        : PSPDFBaseConfiguration <PSPDFSignatureAppearanceBuilder *>

    Swift

    class PDFSignatureAppearance : BaseConfiguration<PDFSignatureAppearanceBuilder>
  • An instance of PSPDFSignatureBiometricProperties represents properties which add biometric information to a digital signature, for enhanced security. Biometric information includes the input method pressure values, time intervals when the signature was being created, or average touch radius.

    This information is encrypted and stored inside the PDF document using the signer’s public key, and can be decrypted with the appropriate private key.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSignatureBiometricProperties : NSObject <NSSecureCoding>

    Swift

    class PDFSignatureBiometricProperties : NSObject, NSSecureCoding
  • A PSPDFAnnotationAppearanceStream manages an image to include as part of an annotation appearance (ie. a handwritten signature). Supported filetypes are .JPG and .PDF. For PDF files, the first page of the document is used.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFAnnotationAppearanceStream : NSObject
  • PSPDFSigner is an abstract signer class. Override methods in subclasses as necessary.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFSigner
        : NSObject <PSPDFDocumentSignerDelegate, PSPDFDocumentSignerDataSource,
                    PSPDFExternalSignature, NSCoding>

    Swift

    class PDFSigner : NSObject, PDFDocumentSignerDelegate, PDFDocumentSignerDataSource, ExternalSignature, NSCoding
  • This class represents a X.509 certificate.

    See more

    Declaration

    Objective-C

    
    @interface PSPDFX509 : NSObject

    Swift

    class X509 : NSObject