Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
desktop-2fa — Une application de bureau hors ligne sécurisée pour générer et gérer des codes TOTP 2FA. Elle dispose d'un stockage de coffre crypté, d'une cryptographie moderne (Argon2 + AES‑GCM), d'une architecture modulaire et d'une approche locale sans dépendances cloud. Conçue pour la fiabilité, l'extensibilité et une future interface utilisateur multiplateforme. | Kitploit
Outils/GitHubGitHub/wrogistefan/desktop-2fa
Utilitaires GénérauxOutils de Chiffrement/DéchiffrementCryptographieProtection de la Vie PrivéeAuthentification
GitHubwrogistefan/desktop-2fa

desktop-2fa

Voir le dépôt
Site web
3015il y a 7 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →

À propos

Une application de bureau hors ligne sécurisée pour générer et gérer des codes TOTP 2FA. Elle dispose d'un stockage de coffre crypté, d'une cryptographie moderne (Argon2 + AES‑GCM), d'une architecture modulaire et d'une approche locale sans dépendances cloud. Conçue pour la fiabilité, l'extensibilité et une future interface utilisateur multiplateforme.

Partager

🛡️ Desktop-2FA

Un gestionnaire d'authentification à deux facteurs (2FA) sécurisé et hors ligne pour les environnements de bureau. Construit avec Python, offrant un chiffrement fort et aucune dépendance cloud.

🌐 Page d'accueil: desktop-2fa.org

PyPI - Downloads PyPI version Python versions License Build codecov


✨ Fonctionnalités

FonctionnalitéDescription
🔐 Sécurité du coffreChiffrement AES-256-GCM avec dérivation de clé Argon2id
⏱️ Génération TOTPGénération de codes conforme à la norme RFC 6238
💻 CLI complèteInterface en ligne de commande complète pour la gestion des jetons
📋 Presse‑papiersCopie automatique des codes TOTP dans le presse‑papiers
🔓 Conception sans étatChaque commande nécessite une authentification explicite par mot de passe
🛡️ Politique de mot de passeApplication configurable de la force du mot de passe avec zxcvbn
🧪 Bien testé289 tests réussis avec une couverture complète
📖 Modèle de sécuritéAnalyse détaillée des menaces et documentation de la conception cryptographique

📸 Captures d'écran

Ajouter une entrée de manière interactive Ajout d'une nouvelle entrée TOTP de manière interactive

Génération de code Génération d'un code TOTP pour une entrée

Erreur de renommage et de doublon Renommage d'une entrée avec détection des doublons

Version et liste Affichage des informations de version et liste de toutes les entrées


🚀 Démarrage rapide

Installation

root@kitploit:~
pip install desktop-2fa

Vérifier l'installation :

root@kitploit:~
python -c "import desktop_2fa; print(desktop_2fa.__version__)"
# Output: 0.8.1dev

Utilisation de base

root@kitploit:~
# Initialiser un nouveau coffre
d2fa vault init

# Ajouter un nouveau jeton TOTP
d2fa vault add GitHub GitHub JBSWY3DPEHPK3PXP

# Lister toutes les entrées
d2fa vault list

# Générer un code
d2fa code GitHub

Utilisation non interactive

root@kitploit:~
# Fournir le mot de passe via la ligne de commande
d2fa vault add GitHub GitHub JBSWY3DPEHPK3PXP --password mypassphrase

# Fournir le mot de passe via un fichier
d2fa vault add GitHub GitHub JBSWY3DPEHPK3PXP --password-file /path/to/passphrase.txt

📁 Cycle de vie du coffre

Le coffre est un fichier de stockage chiffré situé à ~/.desktop-2fa/vault.

Création du coffre

Lorsqu'une commande nécessite un coffre et qu'aucun n'existe :

  1. La CLI demande un nouveau mot de passe (mode interactif) ou nécessite --password/--password-file (mode non interactif)
  2. Un coffre chiffré vide est créé
  3. Un message de confirmation est toujours affiché : Vault created at <path>

Chargement du coffre

Lorsqu'une commande nécessite un coffre et qu'il existe :

  1. La CLI demande le mot de passe existant (mode interactif) ou nécessite les informations d'identification (mode non interactif)
  2. Le coffre est déchiffré et chargé
  3. Si le mot de passe est invalide, la CLI se termine avec typer.Exit(1)

Gestion des entrées en double

La commande rename applique un comportement déterministe lorsque plusieurs entrées correspondent au nom cible :

  • Si plusieurs entrées correspondent au nom fourni (émetteur ou account_name), le renommage est annulé
  • Message d'erreur : Error: Multiple entries named '<name>' exist. Operation aborted. Resolve duplicates first.
  • Aucune entrée n'est renommée dans ce cas
  • Cette vérification a lieu avant toute mutation

📖 Commandes CLI

Commandes principales

CommandeDescription
d2fa vault add <name> <issuer> <secret>Ajouter une nouvelle entrée TOTP
d2fa vault listLister toutes les entrées TOTP stockées
d2fa vault rename <old> <new>Renommer une entrée
d2fa vault remove <name>Supprimer une entrée
d2fa code <name> [--copy|--copy-only]Générer un code TOTP avec options de copie dans le presse‑papiers

Gestion du coffre

CommandeDescription
d2fa vault init [--force]Initialiser un nouveau coffre
d2fa vault unlockOuvrir le coffre avec un avertissement de mot de passe faible (si configuré)
d2fa vault change-passwordChanger le mot de passe du coffre
d2fa vault backupCréer une sauvegarde chiffrée du coffre
d2fa vault export <path>Exporter le coffre vers un fichier
d2fa vault import <path> [--force]Importer un coffre depuis un fichier

Options globales

OptionDescription
--password <pwd>Fournir le mot de passe du coffre directement
--password-file <path>Lire le mot de passe du coffre depuis un fichier
--jsonSortie au format JSON
--rawSortie brute (sans mise en forme)
--quietSupprimer les sorties non essentielles
--copyCopier le code TOTP dans le presse‑papiers et l'afficher
--copy-onlyCopier le code TOTP uniquement dans le presse‑papiers
--forceForcer l'opération (ignorer les confirmations)

🔒 Sécurité

Le coffre utilise :

  • AES-256-GCM pour le chiffrement authentifié
  • Argon2id pour la dérivation de clé (time_cost=4, memory_cost=128MiB, parallelism=2)
  • zxcvbn pour l'évaluation de la force du mot de passe
  • En‑tête versionné pour la compatibilité ascendante

Chaque commande nécessite une authentification explicite par mot de passe. Aucun accès basé sur une session.

Évaluation de la force du mot de passe

Desktop-2FA utilise zxcvbn pour évaluer la force du mot de passe lors de la création ou du changement du mot de passe du coffre :

  • Score 0-2 (Faible) : Mots de passe facilement devinables (ex : "password123")
  • Score 3-4 (Fort) : Résistants aux attaques courantes (recommandé)

Exemples :

  • ❌ Faible : password, 123456, qwerty, admin2024
  • ✅ Fort : Battery-Horse-Staple-Correct, Mountain@River*2024, MySecureVault#42

Configuration (~/.config/d2fa/config.toml) :

root@kitploit:~
[security]
# Exiger des mots de passe forts (score >= 3)
reject_weak_passwords = false  # avertir mais autoriser | true : rejeter les mots de passe faibles

Lorsque reject_weak_passwords = false :

  • Les mots de passe faibles déclenchent un avertissement jaune
  • L'utilisateur est invité à confirmer la poursuite
  • L'acceptation du mot de passe n'est pas bloquante

Lorsque reject_weak_passwords = true :

  • Les mots de passe faibles sont immédiatement rejetés
  • La commande se termine avec une erreur
  • L'utilisateur doit choisir un mot de passe plus fort

Rétrocompatibilité : Si vous avez min_password_entropy défini dans votre configuration (option héritée), elle est reconnue et traitée comme équivalente à l'exigence d'un score zxcvbn >= 3.

Renforcement de la sécurité (v0.8.0)

La version 0.8.0 maintient tout le renforcement de sécurité précédent de la v0.7.3 et introduit une architecture modulaire pour une meilleure isolation du code :

  • Les mots de passe vides sont immédiatement rejetés avec un message d'erreur clair
  • Les erreurs de permission sont distinguées des fichiers de coffre manquants
  • Aucune trace de pile Python n'est affichée aux utilisateurs
  • Messages d'erreur conviviaux pour les problèmes de permission du système de fichiers
  • Conception modulaire séparant les composants CLI et cryptographiques principaux pour des limites de sécurité renforcées
  • Évaluation de la force du mot de passe basée sur zxcvbn (nouveau dans v0.8.0)

📚 Documentation

DocumentDescription
Manuel d'utilisationGuide d'utilisation complet
Modèle de sécuritéAnalyse détaillée des menaces et conception cryptographique
Spécification UX de la CLIContrat UX et comportement
CryptographieDétails de l'implémentation de la sécurité

🧪 Tests

root@kitploit:~
pytest tests/              # Exécuter tous les tests
pytest --cov=src/desktop_2fa  # Exécuter avec couverture

🏗️ Structure du projet

root@kitploit:~
src/desktop_2fa/
├── app/           # Application components
├── cli/           # Command-line interface
├── crypto/        # Encryption utilities
├── totp/          # TOTP generation
├── ui/            # User interface components
├── vault/         # Vault management
└── utils/         # Utilities

📄 Licence

Licence Apache 2.0. Voir le fichier LICENSE.


👤 Auteur

Łukasz Perek


🏆 Parrainage

desktop‑2fa est soutenu par le programme de parrainage Kilo OSS.


📧 Contact

Pour toute question ou soutien, contactez‑nous à [email protected]


💖 Soutenir le projet

Desktop‑2FA est un outil open‑source indépendant construit avec un accent sur l'autonomie, la transparence et la sécurité hors ligne. Si vous le trouvez utile et souhaitez soutenir son développement continu, vous pouvez le faire via les plateformes ci‑dessous :

  • Ko‑fi : https://ko-fi.com/lukaszperek
  • Buy Me a Coffee : https://buymeacoffee.com/lukaszperek
  • AirTM : https://airtm.me/lukper
Télécharger l’outil