C
C
Workaround for the deprecated Crypt2.OpaqueVerifyString method
Shows how to replace the deprecated OpaqueVerifyString 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)
{
BOOL success;
HCkCrypt2 crypt;
const char *path;
HCkByteData inData;
const char *originalText;
HCkBinData bd;
success = FALSE;
crypt = CkCrypt2_Create();
// Specifies how the original data bytes are converted to characters
CkCrypt2_putCharset(crypt,"utf-8");
path = "c:/someDir/example.dat";
// ------------------------------------------------------------------------
// The OpaqueVerifyString method is deprecated:
inData = CkByteData_Create();
CkByteData_loadFile(inData,path);
originalText = CkCrypt2_opaqueVerifyString(crypt,inData);
// ------------------------------------------------------------------------
// Workaround.
// (Chilkat is moving away from using CkByteData)
bd = CkBinData_Create();
CkBinData_LoadFile(bd,path);
// If the opaque signature is validated, the contents of bd are replaced with the original data that was signed.
success = CkCrypt2_OpaqueVerifyBd(crypt,bd);
// Indicate how the bytes are converted to chars by passing the charset.
originalText = CkBinData_getString(bd,"utf-8");
CkCrypt2_Dispose(crypt);
CkByteData_Dispose(inData);
CkBinData_Dispose(bd);
}