{"repo":"wrogistefan/desktop-2fa","free":true,"listed":false,"github":"https://github.com/wrogistefan/desktop-2fa","clone":"git clone https://github.com/wrogistefan/desktop-2fa.git","description":"A secure offline desktop application for generating and managing TOTP 2FA codes. Features encrypted vault storage, modern cryptography (Argon2 + AES‑GCM), modular architecture, and a local‑first approach with no cloud dependencies. Designed for reliability, extensibility, and future cross‑platform UI.","language":"Python","stars":30,"topics":["2fa","aes-gcm","argon2","authenticator","cryptography","desktop-app","local-first","offline","open-source","privacy"],"license":"Apache-2.0","category":"security-tools","readme_excerpt":"🛡️ Desktop-2FA A secure, offline two-factor authentication (2FA) manager for desktop environments. Built with Python, featuring strong encryption and no cloud dependencies. 🌐 Landing Page : desktop-2fa.org --- ✨ Features Feature Description --------- ------------- 🔐 Vault Security AES-256-GCM encryption with Argon2id key derivation ⏱️ TOTP Generation RFC 6238 compliant code generation 💻 Full CLI Complete command-line interface for managing tokens 📋 Clipboard Support Automatic copying of TOTP codes to clipboard 🔓 Stateless Design Every command requires explicit password authentication 🛡️ Password Policy Configurable password strength enforcement with zxcvbn 🧪 Well Tested 289 tests passing with comprehensive coverage 📖 Security Model Detailed threat analysis and cryptographic design documentation --- 📸 Screenshots Adding a new TOTP entry interactively Generating a TOTP code for an entry Renaming an entry with duplicate detection Viewing version info and listing all entries --- 🚀 Quick Start Installation Verify installation: Basic Usage Non-Interactive Usage --- 📁 Vault Lifecycle The vault is an encrypted storage file located at /.desktop-2fa/vault . Vault Creation When a command requires a vault and none exists: 1. The CLI prompts for a new password (interactive mode) or requires --password / --password-file (non-interactive mode) 2. An empty encrypted vault is created 3. A confirmation message is always printed: Vault created at Vault Loading When a command require","default_branch":null,"files":null,"tree":[],"storefront":"/r/wrogistefan","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/wrogistefan/desktop-2fa/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}