ICSharpCode.SharpZipLib.Zip.Compression.Streams.DeflaterOutputStream.InitializeAESPassword C# (CSharp) Method

InitializeAESPassword() protected method

Initializes encryption keys based on given password.
protected InitializeAESPassword ( ZipEntry entry, string rawPassword, byte &salt, byte &pwdVerifier ) : void
entry ICSharpCode.SharpZipLib.Zip.ZipEntry
rawPassword string
salt byte
pwdVerifier byte
return void
        protected void InitializeAESPassword(ZipEntry entry, string rawPassword,
											out byte[] salt, out byte[] pwdVerifier)
        {
            salt = new byte[entry.AESSaltLen];
            // Salt needs to be cryptographically random, and unique per file
            if (_aesRnd == null)
                _aesRnd = RandomNumberGenerator.Create();
            _aesRnd.GetBytes(salt);
            int blockSize = entry.AESKeySize / 8;   // bits to bytes

            cryptoTransform_ = new ZipAESTransform(rawPassword, salt, blockSize, true);
            pwdVerifier = ((ZipAESTransform)cryptoTransform_).PwdVerifier;
        }