Пример #1
0
        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));
        }
Пример #2
0
        // Password

        public static Stream OpenRead(string path, string password) => AES128.DecryptStream(new FileStream(path, FileMode.Open, FileAccess.Read), password);
Пример #3
0
        // Key

        public static Stream OpenRead(string path, byte[] key) => AES128.DecryptStream(new FileStream(path, FileMode.Open, FileAccess.Read), key);