Advertisement
gandalfbialy

Untitled

May 16th, 2025
47
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.56 KB | None | 0 0
  1. private void FileDecrypt(string inputFileName, string outputFileName, string password)
  2. {
  3. RijndaelManaged AES = ConfigureEncryption(password, salt);
  4.  
  5. // odczytywanie pliku bajt po bajcie
  6. using (FileStream plikZaszyfrowany = new FileStream(inputFileName, FileMode.Open))
  7. {
  8. // odczytanie soli którą zapisaliśmy w pliku (jest to istotne bo gdy sól by się zmieniła to pliku nie odcyztamy)
  9. plikZaszyfrowany.Read(salt, 0, salt.Length);
  10.  
  11. // CryptoStream odczytuje dane zaszyfrowane za pomocą AES-a
  12. using (CryptoStream odszyfrowywanie = new CryptoStream(plikZaszyfrowany, AES.CreateDecryptor(), CryptoStreamMode.Read))
  13. {
  14. using (FileStream plikNieZaszyfrowany = new FileStream(outputFileName, FileMode.Create))
  15. {
  16. // Bufor na plik ~1 Megabajt ( większego pliku nie przyjmie), można zwiększyć
  17. byte[] buffer = new byte[1048576];
  18. int read;
  19. // przepisywanie zaszyfrowanego pliku do odszyfrowanego
  20. while ((read = odszyfrowywanie.Read(buffer, 0, buffer.Length)) > 0)
  21. {
  22. plikNieZaszyfrowany.Write(buffer, 0, read);
  23. }
  24. }
  25. }
  26. }
  27. }
  28.  
  29. private void btnDecrypt_Click(object sender, EventArgs e)
  30. {
  31. try
  32. {
  33. FileDecrypt(txtFilePath.Text, txtFilePath.Text.Replace(".aes", ""), txtPassword.Text);
  34. MessageBox.Show("Decryption Done!");
  35. }
  36. catch
  37. {
  38. MessageBox.Show("Ups... Coś poszło nie tak");
  39. }
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement