SetaPDF_Signer_Signature_Module_OpenSslCli A signature module which uses the S/MIME utility of OpenSSL via command line.

File: /SetaPDF/Signer/Signature/Module/OpenSslCli.php

The S/MIME utility is described here: http://www.openssl.org/docs/apps/smime.html.

Class hierarchy

Implements

Summary

Properties

$_certificate

The path to the signing certificate

$_digest

Explicity set to null, to keep behaviour as of the old versions.

$_extraCertificates

The path to the extra/other certificates

$_openSslPath

A path to additional certificates to be specified

$_outPath

A temporary path of the signed message

$_privateKey

The path to the private key to use when signing


Methods

_cleanUp()

Removes temporary file if needed.

_getUtility()

Returns the name of the OpenSSL utility.

createSignature()

Create the signature.

This method creates a digital signature for the file available in $tmpPath and returns it in binary format.

Parameters
$tmpPath : SetaPDF_Core_Reader_FilePath
 
Exceptions

Throws SetaPDF_Signer_Exception, InvalidArgumentException

getCertificate()

Get the path to the signing certificate.

getDigest()

Get the digest algorithm.

getExtraCertificates()

Get the path of the file with additional certificates.

getOpenSslPath()

Get the path to the openssl binary.

getPrivateKey()

Get the path to the private key file.

getPrivateKeyPassword()

Get the private key password source.

setCertificate()

public void SetaPDF_Signer_Signature_Module_OpenSslCli::setCertificate ( string $certificate )

Set the path to the signing certificate.

Parameters
$certificate : string
 
Exceptions

Throws InvalidArgumentException

setDigest()

Set the digest algorithm to use when signing.

Possible values are defined in SetaPDF_Signer_Digest.

Parameters
$digest : string
 
See

setExtraCertificates()

public void SetaPDF_Signer_Signature_Module_OpenSslCli::setExtraCertificates ( null|string $extraCertificates )

Set the path to a file with additional certificates which will be included in the signature.

If the certificates are saved in separate files, you will need to assemble them in one single file. Just copy them with a text editor one after another.

Parameters
$extraCertificates : null|string
 
Exceptions

Throws InvalidArgumentException

setOpenSslPath()

public void SetaPDF_Signer_Signature_Module_OpenSslCli::setOpenSslPath ( string $openSslPath )

Set the path to the openssl binary.

Parameters
$openSslPath : string
 

setPrivateKey()

public void SetaPDF_Signer_Signature_Module_OpenSslCli::setPrivateKey ( array|string $privateKey [, null $password = null ] )

Set the path to the private key file and password argument.

Parameters
$privateKey : array|string

An array of private key and password or only a private key.

$password : null
 
Exceptions

Throws InvalidArgumentException

setPrivateKeyPassword()

Set the private key password source.

Parameters
$password : string
 
See