public static void Encrypt(Stream input, Stream output, string password, string filename = null, Action <double> progress = null, Func <bool> isCanceled = null) { var derivationSettings = PasswordDerivationSettings.Create(); var secretKey = Hasher.CreateAesKeyFromPassword(password, derivationSettings.Salt, derivationSettings.Iterations); var parameter = new EncryptInternalParameter { Filename = filename, PasswordDerivationSettings = derivationSettings, EllipticCurveEncryptionInformation = null, Progress = progress, IsCanceled = isCanceled, }; EncryptInternal(input, output, secretKey, parameter); }
public static void Encrypt(string inputPath, string outputPath, string password, string filename = null, Action <double> progress = null, Func <bool> isCanceled = null) { var derivationSettings = PasswordDerivationSettings.Create(); var secretKey = Hasher.CreateAesKeyFromPassword(password, derivationSettings.Salt, derivationSettings.Iterations); var parameter = new EncryptInternalParameter { Filename = filename, PasswordDerivationSettings = derivationSettings, EllipticCurveEncryptionInformation = null, Progress = progress, IsCanceled = isCanceled, }; using (var input = File.OpenRead(inputPath)) using (var output = File.Open(outputPath, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite)) { EncryptInternal(input, output, secretKey, parameter); } }