Sample code for 30+ languages & platforms
PowerShell

Verify the Timestamp Server Token (if any) while Validating a CMS Signature

Demonstrates how to also validate the timestamp server token (if any) while validating a CMS signature.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

$crypt = New-Object Chilkat.Crypt2

# Tell Chilkat to also validate the timestamp token if a timestamp exists in the CMS message's unauthenticated attributes.
$cmsOptions = New-Object Chilkat.JsonObject
$cmsOptions.UpdateBool("ValidateTimestampTokens",$true)
$crypt.CmsOptions = $cmsOptions.Emit()

$outputFile = "qa_output/original.xml"
$inFile = "qa_data/p7m/fattura_signature.xml.p7m"

# Verify the signature and extract the contained file, which in this case is XML.
$success = $crypt.VerifyP7M($inFile,$outputFile)
if ($success -eq $false) {
    $($crypt.LastErrorText)
    exit
}

$("Signature validated.")