A Python-based, terminal-only system locker simulation — featuring USB authentication, 2FA email verification, keyboard lockdown, and encrypted credentials. Built entirely in terminal/CUI style for educational and ethical red-team scenarios.
⚠️ For educational purposes only. Do not deploy on critical machines.
- 🔐 Terminal fullscreen system lock
- 🔑 USB verification based on drive serial
- 📧 Email 2FA verification with 4-digit unlock code
- ⌨️ Full keyboard input lockdown (via
keyboardmodule) - 🧬 Custom launcher to auto-start system based on setup state
- 🧠 Built 100% in Python — no external GUI frameworks
PCODE-System-Locker/
├── launcher.py # Entry point; detects first-time use
├── Bin/
├── setup.py # User setup for email, unlock code, and USB registration
├── lock.py # Lockdown logic, keyboard block, 2FA challenge
├── config
├── .env.example # Template for environment secrets
├── config.json # Auto-generated config file
└── README.md # You're here.
- Python 3.8+ Required:
python-dotenvsmtplibkeyboardcolorama
To enable email verification, create a .env file in the bin directory:
EMAIL_ADDRESS=youremail@gmail.com
EMAIL_PASSWORD=your_app_password- Clone the repo
- Create .env with your email and app password
- Launch the system:
bashCopyEdit- python launcher.py
- On first run: launches setup.py for config
- On next runs: locks system via locker.py
- First-Time Setup
- Collects email & unlock code
- Registers the USB key
- On Launch
- Waits for correct USB + unlock code
- Sends verification email
- Upon confirmation, unlocks terminal
- Failsafes
- Emergency hotkey (optional for devs)
- Lock screen prevents input via keyboard.block_key()
This project is licensed under the MIT License. Use it freely, but you are responsible for any misuse or data loss.
Built with obsession by PaperCode 🧠
- Fork and star the repo ✨
- Suggest features (GUI version? Email log? Encryption upgrade?)
- Share the project with friends learning security