
सुरक्षित ऑफ़लाइन डेस्कटॉप एप्लिकेशन जो TOTP 2FA कोड उत्पन्न और प्रबंधित करता है। इसमें एन्क्रिप्टेड वॉल्ट स्टोरेज, आधुनिक क्रिप्टोग्राफी (Argon2 + AES‑GCM), मॉड्यूलर आर्किटेक्चर, और क्लाउड निर्भरताओं के बिना स्थानीय-प्रथम दृष्टिकोण शामिल है। विश्वसनीयता, विस्तार क्षमता और भविष्य के क्रॉस-प्लेटफ़ॉर्म UI के लिए डिज़ाइन किया गया।
डेस्कटॉप वातावरण के लिए एक सुरक्षित, ऑफ़लाइन दो-कारक प्रमाणीकरण (2FA) प्रबंधक। Python में निर्मित, जिसमें मजबूत एन्क्रिप्शन और कोई क्लाउड निर्भरता नहीं है।
🌐 लैंडिंग पेज: desktop-2fa.org
| विशेषता | विवरण |
|---|---|
| 🔐 वॉल्ट सुरक्षा | Argon2id कुंजी व्युत्पत्ति के साथ AES-256-GCM एन्क्रिप्शन |
| ⏱️ TOTP जनरेशन | RFC 6238 अनुरूप कोड जनरेशन |
| 💻 पूर्ण CLI | टोकन प्रबंधन के लिए पूर्ण कमांड-लाइन इंटरफ़ेस |
| 📋 क्लिपबोर्ड समर्थन | TOTP कोड का स्वचालित क्लिपबोर्ड पर कॉपी होना |
| 🔓 स्टेटलेस डिज़ाइन | प्रत्येक कमांड के लिए स्पष्ट पासवर्ड प्रमाणीकरण आवश्यक |
| 🛡️ पासवर्ड नीति | zxcvbn के साथ कॉन्फ़िगरेबल पासवर्ड शक्ति प्रवर्तन |
| 🧪 अच्छी तरह से परीक्षित | व्यापक कवरेज के साथ 289 परीक्षण पास |
| 📖 सुरक्षा मॉडल | विस्तृत खतरा विश्लेषण और क्रिप्टोग्राफ़िक डिज़ाइन दस्तावेज़ीकरण |
इंटरैक्टिव रूप से नई TOTP प्रविष्टि जोड़ना
एक प्रविष्टि के लिए TOTP कोड उत्पन्न करना
डुप्लिकेट पहचान के साथ प्रविष्टि का पुनर्नामकरण
संस्करण जानकारी देखना और सभी प्रविष्टियाँ सूचीबद्ध करना
pip install desktop-2fa
स्थापना सत्यापित करें:
python -c "import desktop_2fa; print(desktop_2fa.__version__)"
# Output: 0.8.1dev
# एक नया वॉल्ट आरंभ करें
d2fa vault init
# एक नया TOTP टोकन जोड़ें
d2fa vault add GitHub GitHub JBSWY3DPEHPK3PXP
# सभी प्रविष्टियाँ सूचीबद्ध करें
d2fa vault list
# एक कोड उत्पन्न करें
d2fa code GitHub
# कमांड लाइन के माध्यम से पासवर्ड प्रदान करें
d2fa vault add GitHub GitHub JBSWY3DPEHPK3PXP --password mypassphrase
# फ़ाइल के माध्यम से पासवर्ड प्रदान करें
d2fa vault add GitHub GitHub JBSWY3DPEHPK3PXP --password-file /path/to/passphrase.txt
वॉल्ट एक एन्क्रिप्टेड संग्रहण फ़ाइल है जो ~/.desktop-2fa/vault पर स्थित है।
जब किसी कमांड को वॉल्ट की आवश्यकता होती है और कोई वॉल्ट मौजूद नहीं है:
--password/--password-file (गैर-इंटरैक्टिव मोड) की आवश्यकता होती हैVault created at <path>जब किसी कमांड को वॉल्ट की आवश्यकता होती है और वह मौजूद है:
typer.Exit(1) के साथ बाहर निकलता हैrename कमांड तब नियतात्मक व्यवहार लागू करता है जब एकाधिक प्रविष्टियाँ लक्ष्य नाम से मेल खाती हैं:
Error: Multiple entries named '<name>' exist. Operation aborted. Resolve duplicates first.वॉल्ट निम्न का उपयोग करता है:
प्रत्येक कमांड के लिए स्पष्ट पासवर्ड प्रमाणीकरण आवश्यक है। कोई सत्र-आधारित पहुंच नहीं।
Desktop-2FA वॉल्ट पासवर्ड बनाते या बदलते समय पासवर्ड शक्ति का मूल्यांकन करने के लिए zxcvbn का उपयोग करता है:
उदाहरण:
password, 123456, qwerty, admin2024Battery-Horse-Staple-Correct, Mountain@River*2024, MySecureVault#42कॉन्फ़िगरेशन (~/.config/d2fa/config.toml):
[security]
# मजबूत पासवर्ड आवश्यक (स्कोर >= 3)
reject_weak_passwords = false # चेतावनी दें लेकिन अनुमति दें | true: कमजोर पासवर्ड अस्वीकार करें
जब reject_weak_passwords = false:
जब reject_weak_passwords = true:
पिछड़ी अनुकूलता:
यदि आपके कॉन्फ़िग में min_password_entropy सेट है (विरासत विकल्प), तो इसे पहचाना जाता है और zxcvbn स्कोर >= 3 की आवश्यकता के समान माना जाता है।
संस्करण 0.8.0 pichhale v0.7.3 ke sabhi सुरक्षा सुदृढ़ीकरण को बनाए रखता है और बेहतर कोड अलगाव के लिए मॉड्यूलर आर्किटेक्चर प्रस्तुत करता है:
pytest tests/ # सभी परीक्षण चलाएँ
pytest --cov=src/desktop_2fa # कवरेज के साथ चलाएँ
src/desktop_2fa/
├── app/ # एप्लिकेशन घटक
├── cli/ # कमांड-लाइन इंटरफ़ेस
├── crypto/ # एन्क्रिप्शन उपयोगिताएँ
├── totp/ # TOTP जनरेशन
├── ui/ # उपयोगकर्ता इंटरफ़ेस घटक
├── vault/ # वॉल्ट प्रबंधन
└── utils/ # उपयोगिताएँ
Apache License 2.0. LICENSE फ़ाइल देखें।
Łukasz Perek
desktop‑2fa को Kilo OSS प्रायोजन कार्यक्रम के माध्यम से समर्थन प्राप्त है।
प्रश्नों या सहायता के लिए, हमसे [email protected] पर संपर्क करें।
Desktop‑2FA एक स्वतंत्र ओपन‑सोर्स टूल है जो स्वायत्तता, पारदर्शिता और ऑफ़लाइन सुरक्षा पर केंद्रित है। यदि आप इसे उपयोगी पाते हैं और विकास जारी रखने में सहायता करना चाहते हैं, तो आप नीचे दिए गए प्लेटफ़ॉर्म के माध्यम से ऐसा कर सकते हैं:
| कमांड | विवरण |
|---|
d2fa vault add <name> <issuer> <secret> | एक नई TOTP प्रविष्टि जोड़ें |
d2fa vault list | सभी संग्रहीत TOTP प्रविष्टियाँ सूचीबद्ध करें |
d2fa vault rename <old> <new> | एक प्रविष्टि का नाम बदलें |
d2fa vault remove <name> | एक प्रविष्टि हटाएं |
d2fa code <name> [--copy|--copy-only] | क्लिपबोर्ड कॉपी विकल्पों के साथ TOTP कोड उत्पन्न करें |
| कमांड | विवरण |
|---|
d2fa vault init [--force] | एक नया वॉल्ट आरंभ करें |
d2fa vault unlock | कमजोर पासवर्ड चेतावनी के साथ वॉल्ट खोलें (यदि कॉन्फ़िगर किया गया हो) |
d2fa vault change-password | वॉल्ट पासवर्ड बदलें |
d2fa vault backup | वॉल्ट का एन्क्रिप्टेड बैकअप बनाएं |
d2fa vault export <path> | वॉल्ट को फ़ाइल में निर्यात करें |
d2fa vault import <path> [--force] | वॉल्ट को फ़ाइल से आयात करें |
| विकल्प | विवरण |
|---|
--password <pwd> | सीधे वॉल्ट पासवर्ड प्रदान करें |
--password-file <path> | फ़ाइल से वॉल्ट पासवर्ड पढ़ें |
--json | JSON प्रारूप में आउटपुट |
--raw | कच्चा आउटपुट (कोई स्वरूपण नहीं) |
--quiet | गैर-आवश्यक आउटपुट दबाएं |
--copy | TOTP कोड को क्लिपबोर्ड पर कॉपी करें और प्रदर्शित करें |
--copy-only | TOTP कोड को केवल क्लिपबोर्ड पर कॉपी करें |
--force | संचालन बलपूर्वक करें (पुष्टिकरण को दरकिनार करें) |
| दस्तावेज़ | विवरण |
|---|
| उपयोगकर्ता मैनुअल | पूर्ण उपयोग मार्गदर्शिका |
| सुरक्षा मॉडल | विस्तृत खतरा विश्लेषण और क्रिप्टोग्राफ़िक डिज़ाइन |
| CLI UX विनिर्देश | UX अनुबंध और व्यवहार |
| क्रिप्टोग्राफी | सुरक्षा कार्यान्वयन विवरण |