It generates encrypted values such as 714FEA9A9A2184769CA49D5133F08580
"Hex", "UUEncode" . "hex", "base64" . , .
RijndaelManaged . ColdFusion # . :
- "AES" "AES/ECB/PKCS5Padding"
- "ECB" IV
- base64
NB: , SUN PKCS5Padding (CF/Java) PaddingMode.PKCS7 (#). , "... SUN Java" [s] PKCS # 5, PKCS # 7 - "PKCS5Padding" "PKCS7Padding". , 8- , () DES- ".
, , # , . , base64. API, , encrypt():
ColdFusion
<cfscript>
plainText = "Nothing to see";
// 128 bit key base64 encoded
keyInBase64 = "Y25Aju8H2P5DR8mY6B0ezg==";
// "AES" is short for "AES/ECB/PKCS5Padding"
encryptedText = encrypt(plainText, keyInBase64, "AES", "hex");
WriteDump( encryptedText );
// result: 8889EDF02F181158AAD902AB86C63951
</cfscript>
#
byte[] bytes = SomeMethodToConvertHexToBytes( encryptedText );
byte[] key = Convert.FromBase64String( keyInBase64 );
string decryptedText = null;
using (RijndaelManaged algorithm = new RijndaelManaged())
{
algorithm.Mode = CipherMode.ECB;
algorithm.Padding = PaddingMode.PKCS7;
algorithm.BlockSize = 128;
algorithm.KeySize = 128;
algorithm.Key = key;
ICryptoTransform decryptor = algorithm.CreateDecryptor();
using (MemoryStream msDecrypt = new MemoryStream(bytes))
{
using (CryptoStream csDecrypt = new CryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read))
{
using (StreamReader srDecrypt = new StreamReader(csDecrypt))
{
decryptedText = srDecrypt.ReadToEnd();
}
}
}
}
Console.WriteLine("Encrypted String: {0}", encryptedText);
Console.WriteLine("Decrypted String: {0}", decryptedText);
, (, , ) , CBC mode ECB. CF.