Post

Replies

Boosts

Views

Activity

AES 256 Symmetric Cryptography
I am unable to encrypt or decrypt using aes 256 block mode cbc padding pkcs5 please convert this c# to swift ````public class EncDec { static string key = ""; // your key public static string Encrypt(string data) { RijndaelManaged rijndaelCipher = new RijndaelManaged(); rijndaelCipher.Mode = CipherMode.CBC; //remember this parameter rijndaelCipher.Padding = PaddingMode.PKCS7; //remember this parameter rijndaelCipher.KeySize = 0x80; rijndaelCipher.BlockSize = 0x80; byte[] pwdBytes = Encoding.UTF8.GetBytes(key); byte[] keyBytes = new byte[0x10]; int len = pwdBytes.Length; if (len > keyBytes.Length) { len = keyBytes.Length; } Array.Copy(pwdBytes, keyBytes, len); rijndaelCipher.Key = keyBytes; rijndaelCipher.IV = keyBytes; ICryptoTransform transform = rijndaelCipher.CreateEncryptor(); byte[] plainText = Encoding.UTF8.GetBytes(data); return Convert.ToBase64String (transform.TransformFinalBlock(plainText, 0, plainText.Length)); } public static string Decrypt(string data) { if (data != null) { RijndaelManaged rijndaelCipher = new RijndaelManaged(); rijndaelCipher.Mode = CipherMode.CBC; rijndaelCipher.Padding = PaddingMode.PKCS7; rijndaelCipher.KeySize = 0x80; rijndaelCipher.BlockSize = 0x80; byte[] encryptedData = Convert.FromBase64String(data); byte[] pwdBytes = Encoding.UTF8.GetBytes(key); byte[] keyBytes = new byte[0x10]; int len = pwdBytes.Length; if (len > keyBytes.Length) { len = keyBytes.Length; } Array.Copy(pwdBytes, keyBytes, len); rijndaelCipher.Key = keyBytes; rijndaelCipher.IV = keyBytes; byte[] plainText = rijndaelCipher.CreateDecryptor().TransformFinalBlock (encryptedData, 0, encryptedData.Length); return Encoding.UTF8.GetString(plainText); } else { return null; } } }````
2
0
935
Sep ’21