Skip to content

Conversation

@anonfaded
Copy link
Owner

  • Introduced a new test suite for recovery code security in test_recovery_security.py to validate:

    • Code generation uniqueness
    • Code encryption and decryption
    • One-time use enforcement
    • Tamper detection
    • Brute force resistance
    • File deletion/corruption handling
  • Modified MainWindowBase to integrate recovery code functionality:

    • Added verify_password_with_recovery method for password verification with recovery options.
    • Updated password dialog to include a "Forgot Password?" link that initiates recovery.
  • Created RecoveryCodeDialog and RecoveryCodesDisplayDialog for user interactions during password recovery:

    • Users can enter recovery codes and set new passwords.
    • Display generated recovery codes with warnings about their usage.
  • Enhanced the UI with appropriate styles and messages to guide users through the recovery process.

- Introduced a new test suite for recovery code security in `test_recovery_security.py` to validate:
  - Code generation uniqueness
  - Code encryption and decryption
  - One-time use enforcement
  - Tamper detection
  - Brute force resistance
  - File deletion/corruption handling

- Modified `MainWindowBase` to integrate recovery code functionality:
  - Added `verify_password_with_recovery` method for password verification with recovery options.
  - Updated password dialog to include a "Forgot Password?" link that initiates recovery.

- Created `RecoveryCodeDialog` and `RecoveryCodesDisplayDialog` for user interactions during password recovery:
  - Users can enter recovery codes and set new passwords.
  - Display generated recovery codes with warnings about their usage.

- Enhanced the UI with appropriate styles and messages to guide users through the recovery process.
- Integrated verification callback for recovery codes in the main window.
- Improved password prompt handling with recovery options.
- Added password strength meter during password creation and recovery.
- Updated recovery dialog to include password strength feedback and dynamic tab management.
- Enhanced user experience with better error handling and messaging.
- Implemented file saving functionality for recovery codes with user confirmation.
- Refactored password dialog to support dynamic button text and forgot password visibility.
- Added functionality to protect critical files (recovery codes, encrypted passwords) from deletion/tampering when monitoring is active.
- Integrated file protection logic into the main window, ensuring critical files are protected upon starting monitoring and unprotected on exit.
- Enhanced the Linux file lock manager to exclude FadCrypt's own process from being terminated during file protection.
- Created a test suite for recovery code persistence, ensuring recovery codes remain valid after password resets and are marked as consumed when used.
@anonfaded anonfaded merged commit a7839a9 into main Oct 21, 2025
@anonfaded anonfaded deleted the feat/password-forgot-recovery-system branch October 21, 2025 03:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants