using System.Security.Cryptography;
public class ManagedAesSample {
public static void Main() {
byte[] key = System.Text.Encoding.ASCII.GetBytes("H@McQfTjWnZr4t7w!z%C*F-JaNdRgUkX");
Console.WriteLine("key: " + key.Length);
byte[] iv = System.Text.Encoding.ASCII.GetBytes("%C*F-J@NcRfUjXn2");
Console.WriteLine("iv: "+key.Length);
byte[] encrypted = Encrypt("{ \"activeEmployees\": 302, \"customerName\": \"Test AG 123\" }", key, iv);
string hex = Convert.ToBase64String(encrypted);
Console.WriteLine("Encrypted data: " + hex);
byte[] text = Convert.FromBase64String(hex);
string decrypted = Decrypt(text, key, iv);
Console.WriteLine("Decrypted data: " + decrypted);
} catch (Exception exp) {
Console.WriteLine(exp.Message);
static byte[] Encrypt(string plainText, byte[] Key, byte[] IV) {
using(AesManaged aes = new AesManaged()) {
ICryptoTransform encryptor = aes.CreateEncryptor(Key, IV);
using(MemoryStream ms = new MemoryStream()) {
using(CryptoStream cs = new CryptoStream(ms, encryptor, CryptoStreamMode.Write)) {
using(StreamWriter sw = new StreamWriter(cs))
encrypted = ms.ToArray();
static string Decrypt(byte[] cipherText, byte[] Key, byte[] IV) {
using(AesManaged aes = new AesManaged()) {
ICryptoTransform decryptor = aes.CreateDecryptor(Key, IV);
using(MemoryStream ms = new MemoryStream(cipherText)) {
using(CryptoStream cs = new CryptoStream(ms, decryptor, CryptoStreamMode.Read)) {
using(StreamReader reader = new StreamReader(cs))
plaintext = reader.ReadToEnd();