Exemple #1
0
        public AesCTRCryptoStream(Stream stream, AesCTRCryptoTransform transform, CryptoStreamMode streamMode, bool leaveOpen)
        {
            this.stream    = stream;
            this.transform = transform;
            this.leaveOpen = leaveOpen;

            this.canRead  = stream.CanRead;
            this.canSeek  = stream.CanSeek;
            this.canWrite = stream.CanWrite;

            if (streamMode == CryptoStreamMode.Read && !this.canRead)
            {
                throw new ArgumentException("The stream is not readable", "stream");
            }

            if (streamMode == CryptoStreamMode.Write && !this.canWrite)
            {
                throw new ArgumentException("The stream is not writable", "stream");
            }


            this.transform.Position = stream.Position;
            if (streamMode == CryptoStreamMode.Read)
            {
                this.readBuffer = new byte[8192];
            }
            else
            {
                this.writeBuffer = new byte[8192];
            }
        }
Exemple #2
0
 public AesCTRCryptoStream(Stream stream, AesCTRCryptoTransform transform, CryptoStreamMode streamMode) : this(stream, transform, streamMode, false)
 {
 }