public void SafeOverwriteFile_OverwriteTestFile_EqualOrBiggerLengthToOriginalFile() { //arrange var file = Core.CreateRandomFilledFile(TestDirectory + "file"); //action FileCryptographer.SafeOverwriteFile(file); //assert Assert.GreaterOrEqual(file.Length, file.Length); }
/// <summary> /// Common event handler for pressing the Password Insert button /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void insertButton_Click(object sender, EventArgs e) { //// hash password //using (var hasher = new SHA256CryptoServiceProvider()) //{ // _fileCryptographer.HashedKey = hasher.ComputeHash(Encoding.Unicode.GetBytes(passwordBox.Text)); // //} // lock interface mainTableLayoutPanel.Enabled = false; // hide button, show progress bar submitButton.Visible = false; progressBar.Visible = true; // start decryption/encryption var ts = TaskScheduler.FromCurrentSynchronizationContext(); var key = passwordBox.Text; passwordBox.Text = null; if (FileCryptographer.IsEncrypted(TargetFileInfo)) { Task.Factory.StartNew( () => FileCryptographer.Decrypt(TargetFileInfo, key)) .ContinueWith(task => { if (task.Exception != null) { task.Exception.Handle(Error); } key = null; Close(); }, ts); } else { Task.Factory.StartNew( () => FileCryptographer.Encrypt(TargetFileInfo, key, deleteFileCheckBox.Checked)) .ContinueWith(task => { if (task.Exception != null) { task.Exception.Handle(Error); } key = null; Close(); }, ts); } }
public void SafeOverwriteFile_OverwriteTestFile_OverwritesAsEmptyFile() { //arrange var file = Core.CreateRandomFilledFile(TestDirectory + "file"); //action FileCryptographer.SafeOverwriteFile(file); //assert using (var fs = file.OpenRead()) { while (fs.Position < fs.Length) { Assert.AreEqual(fs.ReadByte(), 0); } } }
private void SwapEncryptDecryptFeatures() { submitButton.Enabled = true; optionsGroupBox.Enabled = true; filePathLabel.Text = _targetFileLocation; if (FileCryptographer.IsEncrypted(TargetFileInfo)) { // options deleteFileCheckBox.Enabled = false; // submit button text submitButton.Text = Resources.MainProcess_MainProcess_Decrypt; } else { deleteFileCheckBox.Enabled = true; submitButton.Text = Resources.MainProcess_MainProcess_Encrypt; } }