A modern web application that generates QR codes containing AES-256 encrypted URLs. Built with Flask, featuring a premium dark-themed UI, live QR previews, and a built-in verification tool to test and decrypt encrypted URLs — all from your browser.
Generate encrypted QR codes with a clean, intuitive interface. Configure your encryption key, code prefix, verification URL, and code range — then get instant live previews.
Paste any encrypted hash or full verification URL and decrypt it instantly. Perfect for testing your QR codes before printing or distributing them.
| Feature | Description |
|---|---|
| 🔐 AES-256-CBC Encryption | Military-grade encryption ensures QR code data remains completely secure and tamper-proof |
| ⚡ Batch Generation | Generate up to 100 encrypted QR codes at once with instant live previews |
| 🔍 Built-in Verification | Test and decrypt encrypted URLs right in the browser — no external tools needed |
| 📥 One-Click Download | Download individual QR codes as high-quality PNG images |
| 🕘 Session History | Browse, manage, and re-download all QR codes generated during your session |
| 🎨 Premium Dark UI | Glassmorphism design, smooth animations, and fully responsive layout |
| 📋 Copy to Clipboard | Instantly copy encrypted URLs to share with your team |
SecureQR is designed for any scenario where you need tamper-proof, verifiable QR codes. Here are some real-world applications:
- Attach encrypted QR codes to property listing documents — buyers scan to verify authenticity and access secure property details
- Place QR codes on "For Sale" signs that link to encrypted, verified listing pages only your agency controls
- Secure lease agreements and title deeds with verifiable QR codes to prevent forgery
- Print QR codes on product packaging so customers can verify they purchased a genuine item
- Attach encrypted labels to luxury goods, electronics, or pharmaceuticals for supply chain verification
- Enable batch tracking by assigning unique encrypted QR codes to every unit in a production run
- Generate encrypted QR codes for concert tickets, conference badges, or VIP passes — each code is unique and tamper-proof
- Prevent ticket duplication and fraud since codes can only be verified with the correct decryption key
- Manage entry points by scanning and verifying codes at the door
- Embed QR codes in academic certificates, diplomas, or professional certifications for instant verification
- Secure legal documents, contracts, and compliance records with verifiable encrypted codes
- Government agencies can use them for ID cards, permits, or official letters
- Attach QR codes to prescription labels for pharmacists to verify authenticity
- Track medical equipment and devices through encrypted QR codes in the supply chain
- Secure patient records shared between facilities with encrypted verification links
- Track items through the supply chain — each QR code is encrypted and tied to a specific batch or unit
- Verify spare parts authenticity before installation
- Streamline warehouse inventory management with scannable encrypted labels
- Secure course completion certificates with verifiable QR codes
- Protect exam papers and answer sheets from unauthorized reproduction
- Verify student ID cards at institutional entry points
git clone https://github.com/maazmasood/SecureQRCodeGenerator.git
cd SecureQRCodeGenerator
pip install -r requirements.txtpython app.pyNavigate to http://127.0.0.1:5000
- Open the Generator page (
/) - Enter your Encryption Key — this is the secret used for AES-256 encryption
- Set a Security Code Prefix (e.g.
CODE_,TICKET_,PROP_) - Optionally customize the Base Verification URL to point to your deployment
- Set the Start and End code numbers for batch generation
- Click Generate QR Codes
- Preview results live, then download individual codes
- Open the Verify page (
/verify) - Paste an encrypted hash or full verification URL
- Enter the Decryption Key (same key used during generation)
- Click Verify & Decrypt to reveal the original security code
- Open the History page (
/history) - View all QR codes generated during the current session
- Download or copy URLs for any previously generated code
SecureQRCodeGenerator/
├── app.py # Flask application (main entry point)
├── requirements.txt # Python dependencies
├── generated_qr/ # Output directory for QR images
├── images/ # Screenshots for README
│ ├── img1.png # Generator page screenshot
│ └── img2.png # Verification page screenshot
├── templates/
│ ├── base.html # Base layout (navbar + footer)
│ ├── index.html # Generator page
│ ├── verify.html # Verification / testing page
│ └── history.html # Session history gallery
└── static/
├── css/
│ └── style.css # Premium dark theme stylesheet
└── js/
└── main.js # Client-side interactivity & animations
- Python 3.x
- Flask
- PyCryptodome
- qrcode
- Pillow
Install everything with:
pip install -r requirements.txtContributions are welcome! Please feel free to submit a pull request or open an issue for any suggestions or improvements.
- Flask — Lightweight web framework
- PyCryptodome — Cryptographic functions
- qrcode — QR code generation
- Pillow — Image processing

