From 1eb93d2f9a260e645b9b30300110c56429dbd495 Mon Sep 17 00:00:00 2001 From: Filip Strajnar Date: Mon, 30 Sep 2024 21:40:23 +0200 Subject: [PATCH] Enabled selection of cipher mode (defaults to CBC), added method to conveniently create AES SymmetricCryptoStream. --- Proculite.Common/Security/Cryptography/SimpleAes.cs | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/Proculite.Common/Security/Cryptography/SimpleAes.cs b/Proculite.Common/Security/Cryptography/SimpleAes.cs index 8ce7b1f..b5ce4ed 100644 --- a/Proculite.Common/Security/Cryptography/SimpleAes.cs +++ b/Proculite.Common/Security/Cryptography/SimpleAes.cs @@ -4,13 +4,24 @@ namespace Proculite.Common.Security.Cryptography { public static class SimpleAes { - public static Aes Create(byte[] key, byte[] iv) + public static Aes Create(byte[] key, byte[] iv, CipherMode cipherMode = CipherMode.CBC) { Aes aes = Aes.Create(); aes.IV = iv; aes.Key = key; + aes.Mode = cipherMode; return aes; } + + public static SymmetricCryptoStream CreateCryptoStream( + byte[] key, + byte[] iv, + CipherMode cipherMode = CipherMode.CBC + ) + { + Aes aes = Create(key, iv, cipherMode); + return new SymmetricCryptoStream(aes); + } } }