public void TestKey() { byte[] key = Enumerable.Range(100, 16).Select(val => (byte)val).ToArray(); byte[] testData = Enumerable.Range(0, 16).Select(val => (byte)val).ToArray(); byte[] result; using (var outStream = new MemoryStream()) { using (var encStream = AES128.EncryptStream(outStream, key)) { encStream.Write(testData, 0, testData.Length); } result = outStream.ToArray(); } byte[] decrypted; using (var outStream2 = new MemoryStream()) { using (var encStream = AES128.DecryptStream(new MemoryStream(result), key)) { encStream.CopyTo(outStream2); } decrypted = outStream2.ToArray(); } Assert.IsTrue(testData.SequenceEqual(decrypted)); }
public static Stream OpenWrite(string path, byte[] key) => AES128.EncryptStream(new FileStream(path, FileMode.Create, FileAccess.Write), key);
public static Stream OpenWrite(string path, string password) => AES128.EncryptStream(new FileStream(path, FileMode.Create, FileAccess.Write), password);