Skip to content

FileEncryptor 2.0.0

Choose a tag to compare

@ryd3v ryd3v released this 24 Nov 20:04
· 11 commits to main since this release

Overview

This release of FileEncryptor introduces significant updates and enhancements, focusing on improving the handling of large files and the security of the encryption process. The application now utilizes AES-GCM for encryption, providing a more robust and efficient method suitable for large files.

New Features

  • AES-GCM Encryption: Transitioned from Fernet to AES-GCM for file encryption and decryption, allowing for efficient processing of large files.
  • Chunked File Processing: Implemented chunked processing for large files to prevent memory overload and application crashes.
  • Progress Bar: Added a progress bar during encryption and decryption processes for better user feedback, especially useful for large files.

Enhancements

  • Key Derivation: Improved the key derivation process to use PBKDF2 with SHA-256, enhancing the security of the generated keys.
  • Increased Iterations: The number of iterations in the key derivation function has been increased to 750,000, significantly strengthening the resistance against brute-force attacks.
  • Nonce Management: Each encryption operation now uses a unique nonce, in line with AES-GCM requirements, to enhance security.

Bug Fixes

  • Key Size Issue: Resolved an issue where the key size was incompatible with AES-GCM requirements.
  • Error Handling: Improved error handling and messaging throughout the application.

Breaking Changes

  • Key Incompatibility: Due to the switch to AES-GCM, keys generated in previous versions are not compatible with this release. Users will need to regenerate keys.

Instructions

  • For encryption: ./FileEncryptor encrypt <file_path>
  • For decryption: ./FileEncryptor decrypt <file_path>