public static byte[] decrypt(byte[] data, byte[] key) { if (key == null || data == null || key.Length != 32) { throw new Exception("Invalid arguments!"); } CryptoEngineAES cryptoEngineAES = new CryptoEngineAES(CryptoEngineAES.KeySize.Bits256, key); byte[] array = new byte[data.Length]; byte[] array2 = new byte[16]; byte[] array3 = new byte[16]; for (int i = 0; i < data.Length; i += 16) { Array.Copy(data, i, array2, 0, 16); cryptoEngineAES.InvCipher(array2, array3); Array.Copy(array3, 0, array, i, 16); } return(array); }
public static byte[] decrypt(byte[] data, byte[] key) { if (key == null || data == null || key.Length != 32) { throw new Exception("Invalid arguments!"); } CryptoEngineAES _aesFunct = new CryptoEngineAES(CryptoEngineAES.KeySize.Bits256, key); byte[] destinationArray = new byte[data.Length]; byte[] buffer2 = new byte[16]; byte[] output = new byte[16]; for (int i = 0; i < data.Length; i += 16) { Array.Copy(data, i, buffer2, 0, 16); _aesFunct.InvCipher(buffer2, output); Array.Copy(output, 0, destinationArray, i, 16); } return(destinationArray); }
public static byte[] encrypt(byte[] data, byte[] key) { if (key == null || data == null || key.Length != 32) { throw new Exception("Invalid arguments!"); } int num = ((data.Length - 1) / 16 + 1) * 16; byte[] array = new byte[num]; CryptoEngineAES cryptoEngineAES = new CryptoEngineAES(CryptoEngineAES.KeySize.Bits256, key); int arg_38_0 = data.Length; byte[] array2 = new byte[16]; byte[] array3 = new byte[16]; byte[] array4 = new byte[num]; Array.Copy(data, array4, data.Length); for (int i = 0; i < array4.Length; i += 16) { Array.Copy(array4, i, array2, 0, 16); cryptoEngineAES.Cipher(array2, array3); Array.Copy(array3, 0, array, i, 16); } return(array); }