C
C
Workaround for the deprecated Crypt2.VerifyBytes method
Shows how to replace the deprecated VerifyBytes 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 *sigPath;
const char *originalDataPath;
HCkByteData detachedSigBytes;
HCkByteData originalDataBytes;
BOOL verified;
HCkBinData bdSig;
HCkBinData bdOrigData;
const char *encoding;
crypt = CkCrypt2_Create();
sigPath = "c:/someDir/example.p7s";
originalDataPath = "c:/someDir/example.dat";
// ------------------------------------------------------------------------
// The VerifyBytes method is deprecated:
detachedSigBytes = CkByteData_Create();
CkByteData_loadFile(detachedSigBytes,sigPath);
originalDataBytes = CkByteData_Create();
CkByteData_loadFile(originalDataBytes,originalDataPath);
verified = CkCrypt2_VerifyBytes(crypt,originalDataBytes,detachedSigBytes);
// ------------------------------------------------------------------------
// Workaround.
// (Chilkat is moving away from using CkByteData)
bdSig = CkBinData_Create();
CkBinData_LoadFile(bdSig,sigPath);
bdOrigData = CkBinData_Create();
CkBinData_LoadFile(bdOrigData,originalDataPath);
encoding = "base64";
CkCrypt2_putEncodingMode(crypt,encoding);
verified = CkCrypt2_VerifyBdENC(crypt,bdOrigData,CkBinData_getEncoded(bdSig,encoding));
CkCrypt2_Dispose(crypt);
CkByteData_Dispose(detachedSigBytes);
CkByteData_Dispose(originalDataBytes);
CkBinData_Dispose(bdSig);
CkBinData_Dispose(bdOrigData);
}