Sample code for 30+ languages & platforms
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

C
#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);

    }