public OutputStreamEncryption(Stream outc, byte[] key, int off, int len, int revision) { Outc = outc; _aes = revision == Aes128; if (_aes) { byte[] iv = IvGenerator.GetIv(); byte[] nkey = new byte[len]; Array.Copy(key, off, nkey, 0, len); Cipher = new AesCipher(true, nkey, iv); Write(iv, 0, iv.Length); } else { Arcfour = new ArcfourEncryption(); Arcfour.PrepareArcfourKey(key, off, len); } }