Retour au portfolio

Projet cybersécurité

VaultGen

Application web légère (HTML/CSS/JS) pour générer des mots de passe robustes, analyser leur force (entropie, longueur, composition) et détecter les mots de passe trop communs / déjà compromis.

HTML CSS JavaScript Entropie Password audit
VaultGen - interface générateur et analyseur de mots de passe

Résumé

VaultGen est une application web simple, rapide et entièrement responsive, conçue pour améliorer l’hygiène des mots de passe au quotidien. L’idée : proposer un générateur configurable (longueur + types de caractères) et un analyseur qui donne une lecture claire de la robustesse (entropie, composition), tout en alertant lorsque le mot de passe appartient à une liste de mots de passe courants (donc à risque).

Objectifs

  • Génération robuste : créer des mots de passe forts et uniques, paramétrables.
  • Analyse de sécurité : rendre visible la qualité d’un mot de passe (entropie, longueur, complexité).
  • Prévention : détecter les mots de passe trop communs / déjà connus comme faibles.
  • Simplicité : outil accessible, sans dépendance lourde, utilisable sur mobile comme sur desktop.

Fonctionnalités

Générateur configurable

Génération rapide de mots de passe solides, avec personnalisation de la longueur et des familles de caractères.

  • Minuscules / majuscules
  • Chiffres
  • Caractères spéciaux
  • Longueur ajustable

Analyse & entropie

Évaluation de la robustesse : lecture claire des critères (longueur, diversité des caractères) et indication d’entropie.

  • Entropie estimée
  • Composition (types de caractères)
  • Retour visuel compréhensible

Détection des mots de passe faibles

Vérification basique contre une liste de mots de passe courants, pour éviter les choix classiques et facilement devinables.

  • Comparaison avec une base “common credentials”
  • Alerte en cas de correspondance
  • Objectif : sensibilisation & prévention

Technologies

Stack

  • HTML pour la structure.
  • CSS pour une UI épurée et responsive.
  • JavaScript pour la génération, l’analyse, et les interactions.

Principes

  • Frontend léger, démarrage instantané.
  • UX simple (objectif : usage “au quotidien”).
  • Responsive (desktop / mobile).

Approche sécurité

L’objectif n’est pas seulement de “générer au hasard”, mais de guider vers de bonnes pratiques et d’éviter les pièges fréquents. VaultGen met l’accent sur des signaux compréhensibles : longueur, variété de caractères, estimation d’entropie, et alerte sur les mots de passe trop communs.

  • Robustesse : favoriser des mots de passe longs et variés.
  • Lisibilité : fournir des retours concrets (pas juste “faible/fort”).
  • Prévention : éviter les mots de passe présents dans des listes de crédentials courants.
  • Bonnes pratiques : encourager des mots de passe uniques par service.

Résultats

UX

Simple

Compatibilité

Responsive

Valeur

Sensibilisation

VaultGen répond à un besoin concret : disposer d’un outil rapide pour générer et auditer un mot de passe, sans dépendre d’un service tiers. L’application reste volontairement minimaliste, afin d’être facilement réutilisable et intégrable.

Galerie

Notes & détails

Critères d’analyse
  • Longueur minimale recommandée (ex : 12+).
  • Mix de familles de caractères (min/maj/chiffres/spéciaux).
  • Estimation d’entropie et interprétation (faible / moyen / fort).
  • Détection de patterns simples (si tu l’as implémentée : suites, répétitions, etc.).
Base “common credentials”

Le projet s’appuie sur une liste de mots de passe courants issue du dépôt GitHub Common-Credentials (BrandonW6000) afin d’améliorer la détection des mots de passe trop fréquents.

  • Objectif : refuser/alerter sur les choix trop évidents.
  • Impact : meilleure prévention des mots de passe “faciles”.
Pistes d’amélioration (V2)
  • Mode “passphrase” (plus mémorisable, très robuste).
  • Vérification de compromission via API (k-anonymity) plutôt qu’une simple liste locale.
  • Indicateurs avancés : détection de fuites (dates, prénoms), dictionnaire, patterns clavier.
  • Export / copie sécurisée + options d’accessibilité.