(C++) 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.
#include <CkCrypt2.h>
#include <CkJsonObject.h>
void ChilkatSample(void)
{
CkCrypt2 crypt;
// Tell Chilkat to also validate the timestamp token if a timestamp exists in the CMS message's unauthenticated attributes.
CkJsonObject cmsOptions;
cmsOptions.UpdateBool("ValidateTimestampTokens",true);
crypt.put_CmsOptions(cmsOptions.emit());
const char *outputFile = "qa_output/original.xml";
const char *inFile = "qa_data/p7m/fattura_signature.xml.p7m";
// Verify the signature and extract the contained file, which in this case is XML.
bool success = crypt.VerifyP7M(inFile,outputFile);
if (success == false) {
std::cout << crypt.lastErrorText() << "\r\n";
return;
}
std::cout << "Signature validated." << "\r\n";
}
|