AES File Encryption Tool

A military-grade file encryption and decryption utility using AES-256-GCM with PBKDF2 key derivation — available as both a desktop GUI and a local web-based application.

Project Overview

AES-256-GCM Encryption

Implements the gold standard of symmetric encryption — AES-256 in GCM mode, providing both confidentiality and data integrity verification.

PBKDF2 Key Derivation

Passwords are never used directly — PBKDF2 with a random salt derives the encryption key, making brute-force attacks computationally infeasible.

Desktop GUI Version

A standalone desktop application with a clean graphical interface — no command line needed. Drag, drop, encrypt, done.

Browser-Based Version

A local Flask server version that runs in the browser — same security, friendlier interface for users comfortable with web apps.

Any File Type

Encrypts and decrypts any file type — documents, images, archives, code files — with no size limitation on the desktop version.

Integrity Verification

GCM authentication tags verify file integrity on decryption — if the file was tampered with, decryption fails safely.

How It Works

01

User Selects a File

The user picks any file they want to protect using the file picker or drag-and-drop interface.

02

Password Entry

User enters a password. PBKDF2 derives a 256-bit encryption key from the password using a random salt.

03

Encryption

AES-256-GCM encrypts the file data using the derived key and a random nonce. An authentication tag is generated.

04

Encrypted File Output

The encrypted file (containing salt + nonce + tag + ciphertext) is saved. The original is untouched.

05

Decryption (Reverse)

User provides the correct password. Key is re-derived, integrity is verified, and the original file is restored.

Tools & Technologies

Python AES-256-GCM PBKDF2 Flask HTML5 / CSS3 cryptography lib GitHub

Need a secure solution?

I can implement encryption and security features in your application. Let's build something secure together.

Get In Touch