protected override void Execute(CodeActivityContext context) { var key = Key.Get(context); var iv = IV.Get(context); var cipherText = CipherText.Get(context); if (cipherText == null || cipherText.Length <= 0) { throw new ArgumentNullException("cipherText"); } if (key == null || key.Length <= 0) { throw new ArgumentNullException("key"); } string plaintext = null; using (AesManaged aes = new AesManaged()) { ICryptoTransform decryptor = aes.CreateDecryptor(Encoding.UTF8.GetBytes(key), Encoding.UTF8.GetBytes(iv)); using (MemoryStream ms = new MemoryStream(Convert.FromBase64String(cipherText))) { using (CryptoStream cs = new CryptoStream(ms, decryptor, CryptoStreamMode.Read)) { using (StreamReader reader = new StreamReader(cs)) plaintext = reader.ReadToEnd(); } } } PlainText.Set(context, plaintext); }
protected override void Execute(CodeActivityContext context) { var key = Key.Get(context); var iv = IV.Get(context); var plainText = PlainText.Get(context); if (plainText == null || plainText.Length <= 0) { throw new ArgumentNullException("plainText"); } if (key == null || key.Length <= 0) { throw new ArgumentNullException("key"); } byte[] encrypted; using (AesManaged aes = new AesManaged()) { ICryptoTransform encryptor = aes.CreateEncryptor(Encoding.UTF8.GetBytes(key), Encoding.UTF8.GetBytes(iv)); using (MemoryStream ms = new MemoryStream()) { using (CryptoStream cs = new CryptoStream(ms, encryptor, CryptoStreamMode.Write)) { using (StreamWriter sw = new StreamWriter(cs)) sw.Write(plainText); encrypted = ms.ToArray(); } } } var result = Convert.ToBase64String(encrypted); CipherText.Set(context, result); }