DataFlex
DataFlex
AES Encryption ECB Mode with PKCS7 Padding
See more Encryption Examples
Duplicates the following C# code:
public static byte[] DecryptBySymmetricKey(string encryptedText, byte[] key)
{
string keyAsBase64 = Convert.ToBase64String(key);
byte[] dataToDecrypt = Convert.FromBase64String(encryptedText);
var keyBytes = key;
AesManaged tdes = new AesManaged();
tdes.KeySize = 256;
tdes.BlockSize = 128;
tdes.Key = keyBytes;
tdes.Mode = CipherMode.ECB;
tdes.Padding = PaddingMode.PKCS7;
ICryptoTransform decrypt__1 = tdes.CreateDecryptor();
byte[] deCipher = decrypt__1.TransformFinalBlock(dataToDecrypt, 0, dataToDecrypt.Length);
tdes.Clear();
string EK_result = Convert.ToBase64String(deCipher);
return EK_result;
}
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoCrypt
String sKeyAsBase64
String sEncryptedBytesAsBase64
String sEK_result
// This example 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
// In the C# code above that is to be duplicated here, use the base64 encoded key.
Move "..." To sKeyAsBase64
Move "...." To sEncryptedBytesAsBase64
Set ComKeyLength Of hoCrypt To 256
Set ComCryptAlgorithm Of hoCrypt To "AES"
Set ComCipherMode Of hoCrypt To "ecb"
Set ComPaddingScheme Of hoCrypt To 0
Send ComSetEncodedKey To hoCrypt sKeyAsBase64 "base64"
Set ComEncodingMode Of hoCrypt To "base64"
// Pass the base64 representation of the encrypted data.
// (The EncodingMode indicates you are passing base64.)
Get ComDecryptStringENC Of hoCrypt sEncryptedBytesAsBase64 To sEK_result
Showln sEK_result
End_Procedure