Advanced two-factor authentication management system. Streamlined solution for securely generating, storing, and managing OTP codes from multiple providers.1
GateKeepr is a sophisticated two-factor authentication management system engineered to securely generate, store, and manage OTP codes. Built with a robust Flask backend and intuitive Bootstrap frontend, this application delivers consistent authentication across multiple services. The app supports various secret formats from common providers and automatically refreshes OTPs before expiration.
- Multi-Provider Support: Handles different secret formats from common providers
- Secure Password Management: Implements password hashing for user security
- Automatic OTP Refresh: Countdown timer with automatic refreshing before expiration
- Persistent Storage: Saves secrets securely for future sessions
- One-Click Copy: Copy OTPs to clipboard with a single click
- Responsive UI: Clean and intuitive interface with Bootstrap
GateKeepr works through a multi-stage process:
- Securely authenticates users through Flask-Login
- Processes and normalizes secrets from different providers
- Generates accurate OTPs with proper timing
- Securely stores user secrets in a configurable database
- Provides intuitive management for adding and removing authentication entries
- Dashboard Login page theme is by Appseed.
- Python with Flask
- SQLAlchemy
- Flask-Login
- Bootstrap
- JavaScript
- SQLite/MySQL (configurable)
-
Clone the repository
-
Run the application:
python run.py- Access the application:
http://127.0.0.1:5000
The app follows an elegant, maintainable architecture:
run.py- Main entry point that creates the Flask instanceapp/config.py- Configuration settings (debug/production mode, secret, DB settings)app/__init__.py- App initialization including database setupapp/authentication/- Handles login/signup and user managementapp/home/- Contains main application functionalityapp/home/twofa.py- Core OTP generation logic withotp_genclass
- User logs in through the landing page (
/login) - After authentication, user is redirected to the main page (
otp.html) - User can paste new secrets in the input area
- The app processes and normalizes different secret formats
- OTPs are generated and displayed with countdown timers
- Users can save secrets for future sessions or delete them as needed
- OTPs can be copied to clipboard with a single click
Check out the application in action: GateKeepr Demo
- QR Code Scanner to import secrets
- Time Synchronization
- API that returns OTP with the secret as parameter (i.e. gatekeepr.com/api/otp-gen?secret=xxxx)
Disclaimer: This tool is provided for educational purposes. Users are responsible for securing their authentication secrets and complying with all applicable terms of service.
"One app for all your authentication needs" - GateKeepr
Footnotes
-
GateKeepr empowers users with a reliable, secure way to manage authentication across all their accounts through an elegant, user-friendly interface. ↩

