DataFlex
DataFlex
Encrypt / Decrypt a File and Verify it has not Changed
See more Encryption Examples
Demonstrates how to encrypt and decrypt a file, and verify it has not changed.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoCrypt
String sIvHex
String sKeyHex
String sDataFile
String sOutFile
String sOutFile2
Handle hoFac
Boolean iBEqual
Move False To iSuccess
// This requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatCrypt2)) To hoCrypt
If (Not(IsComObjectCreated(hoCrypt))) Begin
Send CreateComObject of hoCrypt
End
Set ComCryptAlgorithm Of hoCrypt To "aes"
Set ComCipherMode Of hoCrypt To "cbc"
Set ComKeyLength Of hoCrypt To 128
Set ComPaddingScheme Of hoCrypt To 0
Move "000102030405060708090A0B0C0D0E0F" To sIvHex
Send ComSetEncodedIV To hoCrypt sIvHex "hex"
Move "00010203040506071011121314151617" To sKeyHex
Send ComSetEncodedKey To hoCrypt sKeyHex "hex"
Move "qa_data/zips/HBIQ040615300005.ZIP" To sDataFile
Move "qa_output/HBIQ040615300005.enc" To sOutFile
Move "qa_output/HBIQ040615300005.ZIP" To sOutFile2
Get ComCkEncryptFile Of hoCrypt sDataFile sOutFile To iSuccess
Get ComCkDecryptFile Of hoCrypt sOutFile sOutFile2 To iSuccess
Get Create (RefClass(cComCkFileAccess)) To hoFac
If (Not(IsComObjectCreated(hoFac))) Begin
Send CreateComObject of hoFac
End
Get ComFileContentsEqual Of hoFac sDataFile sOutFile2 To iBEqual
If (iBEqual <> True) Begin
Showln "Decrypted file not equal to the original."
End
Else Begin
Showln "Success."
End
End_Procedure