C
C
Workaround for the deprecated Crypt2.VerifyString method
Shows how to replace the deprecated VerifyString method. (Chilkat is moving away from the use of CkByteData.)Chilkat C Downloads
#include <C_CkCrypt2.h>
#include <C_CkByteData.h>
#include <C_CkBinData.h>
void ChilkatSample(void)
{
HCkCrypt2 crypt;
const char *originalText;
const char *sigPath;
HCkByteData detachedSigBytes;
BOOL verified;
HCkBinData bdSig;
const char *encoding;
crypt = CkCrypt2_Create();
// Specifies how the original data bytes are converted to characters
CkCrypt2_putCharset(crypt,"utf-8");
originalText = "this is the string that was signed.";
sigPath = "c:/someDir/example.p7s";
// ------------------------------------------------------------------------
// The OpaqueVerifyString method is deprecated:
detachedSigBytes = CkByteData_Create();
CkByteData_loadFile(detachedSigBytes,sigPath);
verified = CkCrypt2_VerifyString(crypt,originalText,detachedSigBytes);
// ------------------------------------------------------------------------
// Workaround.
// (Chilkat is moving away from using CkByteData)
bdSig = CkBinData_Create();
CkBinData_LoadFile(bdSig,sigPath);
encoding = "base64";
CkCrypt2_putEncodingMode(crypt,encoding);
verified = CkCrypt2_VerifyStringENC(crypt,originalText,CkBinData_getEncoded(bdSig,encoding));
CkCrypt2_Dispose(crypt);
CkByteData_Dispose(detachedSigBytes);
CkBinData_Dispose(bdSig);
}