Turn sensitive photos into digital noise. 100% Client-Side. No Server Uploads.
π Launch Live App Β· π Report Bug Β· β¨ Request Feature
SecurePixel is a secure, open-source web application designed for client-side image encryption. Unlike other tools that upload your files to a server, SecurePixel processes everything directly in your browser using the Web Crypto API.
It utilizes military-grade AES-GCM encryption to transform your images into "Visual Noise" (randomized pixel static). These encrypted noise images are valid PNG files that can be safely hosted on public cloud storage (like ImgBB) or shared on social media without revealing the original content.
- Privacy First: Your unencrypted photos never leave your device.
- Steganographic Output: Encrypted data is disguised as a glitchy "noise" image.
- Transparent Analytics: We use anonymous analytics to improve the app, but only if you grant explicit consent.
- Cloud Ready: Automatically uploads encrypted noise to the cloud for easy link sharing.
We take privacy seriously. Here is exactly how we handle data:
- Zero-Knowledge Encryption: The encryption process happens entirely in your browser (
window.crypto.subtle). We (the developers) never see your original images, passwords, or encryption keys. - Consent-Based Analytics: We use Google Analytics to track page performance.
- Default: Analytics are BLOCKED by default.
- Consent: Scripts only load if you click "Accept" on the banner.
- Proof: We store a local timestamp of your consent decision to ensure compliance.
- No Personal Data: The analytics data is anonymized (
anonymize_ip: true) and never linked to your encrypted content.
SecurePixel combines cryptography with image manipulation to create a secure container for your data.
- Key Derivation: We use PBKDF2 (Password-Based Key Derivation Function 2) with 100,000 iterations to turn your text password into a cryptographic key.
- AES-GCM: The image file is converted to binary and encrypted using AES-GCM (Advanced Encryption Standard - Galois/Counter Mode), which ensures both confidentiality and data integrity.
- Pixel Mapping: The encrypted binary bytes are mapped to the Red, Green, and Blue (RGB) channels of a new HTML5 Canvas.
- Result: A downloadable PNG image that looks like TV static but holds your encrypted data perfectly.
- The app scans the "Noise Image" pixel by pixel to extract the RGB values.
- It reconstructs the encrypted binary buffer.
- It extracts the unique Salt and IV (Initialization Vector) embedded in the file header.
- Using your password, it attempts to decrypt the data. If the password is correct, the original image is revealed instantly.
- β Military-Grade Security: AES-256-GCM encryption.
- β Bulk Processing: Encrypt or decrypt multiple images at once via Drag & Drop.
- β Auto-Cloud Upload: Integrated with ImgBB API to host encrypted images automatically.
- β Dark/Light Mode: Auto-detects system preferences with a manual toggle.
- β Responsive UI: Built with Tailwind CSS for a seamless experience on Mobile and Desktop.
- β Full-Screen Viewer: Built-in secure image viewer.
This project relies on modern web standards and zero external backend dependencies.
HTML5 Canvas - For pixel manipulation.
Vanilla JS (ES6+) - Core logic.
Tailwind CSS - For responsive styling.
Web Crypto API - Native browser cryptography.
Anime.js - Smooth UI transitions.
To run SecurePixel locally on your machine, follow these steps.
- A modern web browser (Chrome, Firefox, Edge, Safari).
- Git installed on your machine.
-
Clone the repository
git clone [https://github.com/KDippan/SecurePixel.git](https://github.com/KDippan/SecurePixel.git)
-
Navigate to the project folder
cd SecurePixel -
Run the application
- Option A (VS Code): Right-click
index.htmland select "Open with Live Server". - Option B (Python):
Then open
python -m http.server 8000
http://localhost:8000in your browser.
> Note: Cryptography APIs require a Secure Context. Always use
localhostorhttps://. - Option A (VS Code): Right-click
Contributions make the open-source community an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature) - Commit your Changes (
git commit -m 'Add some AmazingFeature') - Push to the Branch (
git push origin feature/AmazingFeature) - Open a Pull Request
If SecurePixel helped you keep your data safe, or if you just love open-source privacy tools, consider buying me a coffee! It helps keep the project alive and free.
You can also support me directly on GitHub to help fund my open-source work. Become a Sponsor
Dippan Bhusal
- GitHub: @KDippan
- LinkedIn: Dippan Bhusal
- Twitter: @DippanBhusal
- Email: dippan.connect@gmail.com
Distributed under the MIT License. See LICENSE for more information.
Built with β€οΈ for a safer internet.
SecurePixel Β© 2026
