Topics   All   MacOS (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server   Client   Old   Deprecated   Guides   Examples   Videos
New in version: 11.4   11.5   12.0   12.1   12.2   12.3   12.4   12.5   13.0   13.1    Statistic    FMM    Blog  

PKCS12.SignData

Creates a PKCS#7 signature for given data.

Component Version macOS Windows Linux Server iOS SDK
PKCS12 13.1 ✅ Yes ✅ Yes ✅ Yes ✅ Yes ✅ Yes
MBS( "PKCS12.SignData"; PKCS12 Reference; InputType; InputData; InputEncoding; OutputType { ; OutputInfo } )   More

Parameters

Parameter Description Example Flags
PKCS12 Reference The reference to the PKCS12. $pkcs12
InputType The type of input.
Can be Text, Container, Image, Path, PDF, Data, base64 or Hex.
"Text"
InputData The actual input data.
Text, container or file path.
"Hello World"
InputEncoding The text encoding for text input.
Parameter is ignored for other cases.
"UTF-8"
OutputType The output type.
Can be Base64, Hex, Text, File, Path.
Can be Auto in plugin version 7.3 to detect type for container from OutputInfo parameter.
Added Base64URL as option for plugin version 10.3.
"Hex"
OutputInfo The addition info for output.
For text it is the text encoding, for file container the file name and for path the actual native file path.
"" Optional

Result

Returns OK or error.

Description

Creates a PKCS#7 signature for given data.
Signs the data and returns signature as a PKCS#7 for the given data.

Examples

Manually sign PDF content:

# manually load certificate and key
Set Variable [ $pkcs12 ; Value: MBS( "PKCS12.ReadFromFile"; "/Users/cs/Desktop/test_cert.pfx"; "123456") ]
# sign a test string to know size in advance
Set Variable [ $SampleSignature ; Value: MBS( "PKCS12.SignData"; $pkcs12; "hex"; "C9097E23869BC9903CE89E9562230C6FDCBC0F06"; ""; "hex"; "" ) ]
Set Variable [ $estimatedSignatureSize ; Value: Length($SampleSignature) / 2 + 5 ]
# now save and produce hash
Set Variable [ $hashToSign ; Value: MBS("DynaPDF.SaveAndSignFileExt1"; $pdf; "My ContactInfo"; "My Location"; "My Reason"; "My Signer"; $estimatedSignatureSize) ]
# sign the hash
Set Variable [ $Signature ; Value: MBS( "PKCS12.SignData"; $pkcs12; "hex"; $HashToSign; ""; "hex"; "" ) ]
# and finish the PDF
Set Field [ Merge PDFs::MergeStatus ; MBS("DynaPDF.SaveAndSignFileExt2"; $pdf; $signature; "Merged.pdf") ]

See also

Release notes

This function checks for a paid license.

Created 28th February 2023, last changed 28th February 2023


PKCS12.ShowDialog - PKCS7.List

💬 Ask a question or report a problem


Start Chat