Skip to content

Advanced and elegant Windows app encryption – powerful, customizable, open-source, and completely free!

License

Notifications You must be signed in to change notification settings

anonfaded/FadCrypt

Repository files navigation


This project is part of the FadSec Lab suite.
Discover our focus on ad-free, privacy-first applications and stay updated on future releases!

FadCrypt

Advanced and elegant cross-platform app encryption – powerful, customizable, open-source, and completely free!

GitHub all releases

ko-fi badge Discord



Github Stats


Expand Table of Contents

📱 Screenshots




How FadCrypt Works:

  1. Password Creation: When you set a password, it's encrypted and saved with the configuration file of locked apps. During monitoring, these files are backed up to a separate location:

    • Windows: C:\ProgramData\FadCrypt\Backup\
    • Linux: ~/.local/share/FadCrypt/Backup/

    If detected as deleted, they are automatically recovered and restored.

  2. Elevated Daemon Service (Linux): FadCrypt uses a systemd service that runs with root privileges to handle file protection operations seamlessly:

    • Daemon Operations: The daemon (fadcrypt-elevated.service) provides root-level file operations via Unix socket communication
    • Capabilities: File immutability (chattr +i/-i), permission changes, backup restoration, and kernel-level file monitoring (fanotify)
    • Automatic Setup: The daemon is installed and started automatically when you install the .deb package
  3. Monitoring Mode: Press "Start Monitoring" to set FadCrypt as a startup app. It will automatically activate every time your PC starts, and will persistently run unless you press "Stop Monitoring."

  4. Security Features: When monitoring is active, FadCrypt can't be stopped without the correct password. Optionally, users can enable system tool disabling to prevent tampering (Control Panel, Registry Editor, Task Manager, msconfig on Windows; terminal emulators and system monitors on Linux). Recovery codes provide a secure backup method to reset forgotten passwords.

  5. Mutex Protection: FadCrypt uses mutual exclusion to ensure only one instance runs at a time, blocking new instances until the current one is closed with the password. This prevents bypass attempts.

Note: The password recovery feature is not available yet.

⬇️ Download

Download the latest windows setup installer file directly from the releases page.

Get it on GitHub

Features:

  • Application Locking: Secure apps with encrypted password protection; password cannot be recovered if lost and tool cannot be stopped without it.
  • Real-time File Protection: Detects and auto-recovers critical files/folders if deleted or modified.
  • Recovery Codes: Generate and use recovery codes to reset forgotten password securely (non-bypassable, one-time use).
  • Auto-Startup Monitoring: Automatically starts monitoring on system boot with seamless initialization.
  • Statistics & Activity Logging: Detailed monitoring statistics with activity history and duration tracking.
  • Customizable UI: Choose password dialog styles, UI themes, and system tray integration.
  • Cross-Platform: Works on both Windows and Linux with platform-specific features.

Security (Windows & Linux):

  • Optional System Tools Disabled (User Configurable):
    • Windows: Task Manager, Registry Editor, Command Prompt, Control Panel, msconfig
    • Linux: Terminal emulators (gnome-terminal, konsole, xterm), system monitors (htop, top, gnome-system-monitor)
  • Encrypted Storage: All passwords and configuration data encrypted using industry-standard cryptography.
  • File Immutability & Elevation:
    • Windows: Task Scheduler-based privilege elevation with persistent session authorization (equivalent to PolicyKit)
    • Linux: Root daemon service with Unix socket communication for seamless elevated operations
  • Single Instance Enforcement: Only one FadCrypt instance can run at a time to prevent bypass attempts.
  • Professional Authorization (Both Platforms):
    • Windows: Single UAC prompt cached per session via Task Scheduler
    • Linux: Automatic root daemon service (no authentication required)

Extras:

  • Snake Game: Classic arcade Snake game available on home tab for entertainment.
  • System Tray Integration: Quick access from system tray with minimize/restore functionality.
  • Auto-Recovery: Crashes are detected and monitored files are recovered automatically on next startup.

Daemon Architecture (Linux):

FadCrypt uses a client-daemon architecture for maximum security:

  • Root Daemon: fadcrypt-elevated.service runs as systemd service with full root privileges
  • Unix Socket Communication: Secure IPC between GUI and daemon
  • Capabilities: File protection (chattr), permissions (chmod), backup restoration, kernel monitoring (fanotify)
  • Installation: Automatically configured with .deb package

Implemented Features:

✅ Password-protected app locking & monitoring ✅ Real-time file/folder protection from deletion ✅ Auto-recovery if files are deleted ✅ Recovery codes for password reset ✅ Auto-startup after system reboot (silent with --auto-monitor) ✅ Single-instance enforcement ✅ Detailed statistics & activity monitoring ✅ Customizable dialog styles & preferences ✅ Encrypted password & config storage ✅ Critical files protected from tampering ✅ Password-secured monitoring control ✅ Windows: Task Scheduler-based privilege elevation (UAC caching) ✅ Linux: Root daemon service with Unix socket communication (systemd) ✅ Cross-platform (Windows + Linux)

Featured On

Join Community

Join our Discord server to share ideas, seek help, or connect with other users. Your feedback and contributions are welcome!

Discord

Support

Buy Me a Coffee at ko-fi.com

Contributions

We welcome any contributions to improve this project! Whether it's bug fixes or new features, your help is appreciated.

How to Contribute

  1. Discuss First: Before starting work, please discuss your ideas:
    • Open an issue to discuss the bug or feature
    • Join our Discord server to chat with maintainer and community
    • This helps avoid duplicate work and ensures your contribution aligns with project goals
  2. Check Issues: Browse existing issues to see where you can help.
  3. Fork the Repo: Once approved, fork the repository to make your changes.
  4. Submit a PR: Create a pull request with a clear description of your changes.

Note: Please avoid submitting PRs without prior discussion to ensure efficient collaboration.

We look forward to your contributions!

Install Dependencies & Build

Linux Prerequisites:

First, install the Tkinter library (required for GUI):

sudo apt-get install python3-tk

Install Python Dependencies:

You can install all required Python packages using pip:

pip install -r requirements.txt

Build the Application:

For Windows:

python -m PyInstaller FadCrypt.spec

For Linux:

python3 -m PyInstaller FadCrypt_Linux.spec

Linux .deb Package Installation:

For the best Linux experience, use the pre-built .deb package:

# Download from releases and install
sudo dpkg -i fadcrypt_X.X.X_amd64.deb

# Daemon service installs and starts automatically
# No additional configuration needed

Includes: Main application, elevated daemon service, desktop integration, automatic cleanup.

Reset Password

Follow the steps below to regain access to FadCrypt, or download the guide as a PDF for reference:
FadCrypt_Reset_Password_Guide.pdf

1. Terminate the app processes (if running)

  1. Open the search box: Windows key + S
  2. Type "PowerShell", right-click, and select "Run as administrator"
  3. In the PowerShell window, enter the following command to kill all running instances of FadCrypt:
Stop-Process -Name "fadcrypt" -Force

2. Delete the password binary file

(This allows you to create a new password without needing the old one)

On Windows:

  1. Navigate to and delete the following file:
C:\Users\<YourUsername>\AppData\Roaming\FadCrypt\encrypted_password.bin
  1. Also delete the backup copy from:
C:\ProgramData\FadCrypt\Backup\encrypted_password.bin

On Linux:

  1. Navigate to and delete the following file:
~/.FadCrypt/encrypted_password.bin
  1. Also delete the backup copy from:
~/.local/share/FadCrypt/Backup/encrypted_password.bin

Now you can open the app again and set a new password — it'll work like a charm!

About

Advanced and elegant Windows app encryption – powerful, customizable, open-source, and completely free!

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Contributors 5

Languages