C++
C++
Get PDF Signer Certs
See more PDF Signatures Examples
This example demonstrates how to validate the signatures in a PDF and also shows how to getChilkat C++ Downloads
#include <CkPdf.h>
#include <CkJsonObject.h>
#include <CkCert.h>
void ChilkatSample(void)
{
bool success = false;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkPdf pdf;
// Load a PDF that has cryptographic signatures to be validated
success = pdf.LoadFile("qa_data/pdf/sign_testing_1/helloSigned2.pdf");
if (success == false) {
std::cout << pdf.lastErrorText() << "\r\n";
return;
}
// Each time we verify a signature, information about the signature is written into
// sigInfo (replacing whatever sigInfo previously contained).
CkJsonObject sigInfo;
// Iterate over each signature and validate each.
int numSignatures = pdf.get_NumSignatures();
bool validated = false;
CkCert cert;
int i = 0;
while (i < numSignatures) {
validated = pdf.VerifySignature(i,sigInfo);
std::cout << "Signature " << i << " validated: " << validated << "\r\n";
// After calling VerifySignature, you can get the signer certificate by calling
// GetSignerCert with the same index.
success = pdf.GetSignerCert(i,cert);
if (success != false) {
std::cout << "PDF signer certificate: " << cert.subjectDN() << "\r\n";
}
i = i + 1;
}
std::cout << "Finished." << "\r\n";
}