Delphi DLL Requires Chilkat v11.0.0+
Delphi DLL
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 Delphi DLL Downloads
var
success: Boolean;
crypt: HCkCrypt2;
path: PWideChar;
inData: HCkByteData;
originalText: PWideChar;
bd: HCkBinData;
begin
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);