public void WriteByteReadByte () { DebugStream original = new DebugStream (Encoding.Unicode.GetBytes ("ximian")); DebugStream encrypted = new DebugStream (); byte[] key = {0, 1, 2, 3, 4, 5, 6, 7}; byte[] iv = {0, 1, 2, 3, 4, 5, 6, 7}; DES des = DES.Create (); cs = new CryptoStream (encrypted, des.CreateEncryptor (key, iv), CryptoStreamMode.Write); int data; while ((data = original.ReadByte ()) != -1) cs.WriteByte((byte) data); cs.Close (); byte[] result = encrypted.ToArray (); Assert.AreEqual ("18-EA-93-3F-20-86-D2-AA-78-02-D7-6F-E4-47-17-9C", BitConverter.ToString (result), "Encrypted"); encrypted = new DebugStream (result); DebugStream decrypted = new DebugStream (); cs = new CryptoStream (encrypted, des.CreateDecryptor (key, iv), CryptoStreamMode.Read); while ((data = cs.ReadByte ()) != -1) decrypted.WriteByte((byte) data); cs.Close (); decrypted.Close (); Assert.AreEqual ("ximian", Encoding.Unicode.GetString (decrypted.ToArray ()), "W/R Byte Roundtrip"); }