KeePass

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
KeePass
Image illustrative de l'article KeePass
Logo

KeePass 2.x sous Windows
KeePass 2.x sous Windows

Développeur Dominik Reichl
Première version 13 novembre 2003
Dernière version 1.27 et 2.27 (6 avril 2014 et 6 juillet 2014)
État du projet Développement actif
Écrit en C++ (1.x), C# (2.x)
Environnement Windows, Mac OS, Linux, FreeBSD , etc., Smartphone, Pocket PC
Langue Multilingue
Type Gestionnaire de mots de passe
Licence GPL v2 ou ultérieure
Site web keepass.info

KeePass est un gestionnaire de mots de passe publié sous GPL v2 ou ultérieure, qui sauvegarde les mots de passe dans un fichier chiffré appelé « base de données ». Cette base est accessible avec le mot de passe principal. Il peut être accompagné d'une clé sous la forme d'un fichier (dont le suffixe est .key) pour renforcer la sécurité d'accès au fichier chiffré.

KeePass existe sous deux versions différentes. La première utilise deux algorithmes de chiffrement : AES (avec des blocs de 128 bits et une clé de 256 bits) et Twofish (avec des blocs de 128 bits et une clé de 256 bits). La deuxième n'utilise qu'AES (avec des blocs de 128 bits et une clé de 256 bits).

KeePass s'installe sous Windows, et avec mono sous Mac OS, Linux, FreeBSD et autres systèmes d'exploitation. La deuxième version du logiciel ajoute premièrement la possibilité de lier un utilisateur Windows à une base de données (avec toujours la saisie du mot de passe principal et éventuellement l'ajout d'une clé sous forme de fichier) et deuxièmement d'incorporer des pièces jointes dans les entrées.

Histoire[modifier | modifier le code]

En 2013, il existe deux versions du logiciel. La première est écrite en C++ tandis que la seconde est écrite en C#. Le logiciel a été réécrit en C# sans utiliser de logiciel qui convertit automatiquement le code source C++ en C#.

Fonctionnalités[modifier | modifier le code]

Chaque mot de passe est représenté par une entrée dans la base de données (le fichier chiffré dont le nom de suffixe est .kdb en version 1 et .kdbx en version 2). Une entrée contient plusieurs champs : un titre, un nom d'utilisateur, un mot de passe, une adresse (URL), des pièces jointes pour la 2.x (utiles pour chiffrer des informations secrètes). Un mécanisme permet également pour chaque entrée de rappeler au propriétaire de la base de données quand il doit changer un mot de passe. De plus chaque entrée possède une information sur la date et l'heure de création, du dernier accès et de sa dernière modification.

Des options permettent de chiffrer les mots de passe en mémoire vive de l'ordinateur. De masquer à l'écran le mot de passe par des astérisques. Mais la principale faille[1] sera toujours celle du presse-papiers sous Windows où le mot de passe sera toujours en clair parce que le presse-papiers est une ressource partagée et qu'aucune application ne sait lire une donnée chiffrée dans le presse-papiers (cependant, le mot de passe reste 10 secondes et 12 secondes par défaut respectivement en 1.x et 2.x dans le presse-papiers, suite à cela il est effacé du presse-papiers).

L'autre danger de KeePass, comme pour tout autre gestionnaire de mot de passe, c'est que la saisie du mot de passe principal de la base de données est susceptible d'être interceptée par un logiciel espion tel qu'un keylogger. Des keyloggers font des copies d'écran à chaque touche appuyée ou bien à chaque clic de souris. Ils peuvent intercepter les mots de passe tapés au clavier, et même chaque clic de souris sur le clavier visuel de Windows (obtenu en appuyant simultanément sur la touche Windows et la touche R puis en saisissant la commande osk dans la fenêtre qui s'ouvre) ou bien d'un autre clavier visuel que celui de Microsoft.

Synchronisation[modifier | modifier le code]

La base de données peut être synchronisée sur un site distant par FTP. Ce qui permet d'avoir sa base de données à jour sur n'importe quelle installation du logiciel. La base de données peut être synchronisée avec un Smartphone (BlackBerry, iPhone, Windows Phone 7 ou Android) à condition que l'application KeePass soit installée sur le smartphone. Le fichier peut alors être ouvert pour retrouver un mot de passe. Une application pour Pocket PC a également été développée.

Glisser et déposer[modifier | modifier le code]

Vous pouvez sélectionner avec la souris une information d'une entrée dans le nom d'une colonne et la faire glisser pour la recopier dans une fenêtre cible. Par exemple, pour copier dans un premier temps le nom d'utilisateur et dans un second temps le mot de passe associé. Chaque information d'une entrée peut être glissée et déposée.

Saisie automatique[modifier | modifier le code]

Un système de saisie automatique de l'identifiant et du mot de passe vers un site d'identification (URL) ou une application standard de Windows a été développée. On l'obtient en ouvrant une entrée (en double cliquant dessus) et dans l'onglet « saisie automatique », cocher la case « Deux canaux d'obfuscation de saisie automatique ». Enfin, il suffit de sélectionner l'entrée dans la base de données, d'ouvrir le menu contextuel en cliquant droit sur l'entrée et de sélectionner « Exécuter la saisie automatique ». KeePass saisira alors automatiquement l'identifiant et le mot de passe pour vous dans la fenêtre de votre application Windows ou dans votre navigateur.

Historique des entrées[modifier | modifier le code]

Un historique des entrées est sauvegardé et accessible depuis l'entrée concernée. Cela permet de retrouver tous les mots de passe antérieurs. Le nombre d'entrées des historiques est paramétrable dans le logiciel.

Plugins[modifier | modifier le code]

Des plugins ont été développés autour de KeePass :

  • pour enregistrer une sauvegarde de la base de données à chacune de ses modifications,
  • pour interfacer les trois principaux navigateurs du marché (Internet Explorer, Google Chrome, Mozilla Firefox) avec KeePass,
  • pour exporter et importer entre gestionnaires de mots de passe différents du marché,
  • pour synchroniser sa base de données sur du Cloud computing pour par exemple interfacer KeePass entre des smartphones, tablettes et des ordinateurs.
  • pour ajouter les protocoles SCP (Secure CoPy), SFTP (SSH File Transfer Protocol) et FTPS (FTP over SSH) si on souhaite mettre la base de données sur un serveur et l'utiliser en multi-utilisateurs[2].
  • pour éviter de partager un secret entre plusieurs personnes, il est possible d'utiliser l'extension CertKeyProvider qui offre une protection par certificat au lieu d'un mot de passe[3].

Le code source des plugins n'est pas garanti par le développeur de KeePass. Potentiellement, cela pourrait être une faille, parce que les auteurs de plugins ont accès à la base de données.

Générateur de mots de passe[modifier | modifier le code]

Chaque nouvelle saisie d'un mot de passe pour une entrée quelconque peut être générée (sur une longueur définie par l'utilisateur) par un générateur aléatoire de mots de passe qui combine tous les caractères ANSI [U+0080, U+00FF] exceptés control et les caractères non imprimables.

Portable[modifier | modifier le code]

Les deux versions de KeePass existent en version portable, c'est-à-dire qu'elles peuvent être mises sur une clé USB (ou autre support de stockage amovible) sans nécessiter d'installation du logiciel sur un système d'exploitation Windows. En revanche, KeePass 1.x nécessite GDI+ sur des systèmes Windows plus anciens que Windows XP et KeePass 2.x nécessite l'installation du Microsoft .NET Framework 2.0.

Importer[modifier | modifier le code]

Les mots de passe peuvent être importés d'une multitude d'autres gestionnaires de mots de passe depuis un format TXT ou CSV, de KeePass 1.x vers KeePass 2.x et réciproquement. Des plugins ont été développés pour importer les entrées de mots de passe d'autres gestionnaires.

Exporter[modifier | modifier le code]

Une base de données de KeePass 1.x peut être exportée au format HTML, CSV, XML ou TXT. Une base de données de KeePass 2.x peut être exportée au format HTML, CSV, XML ou au format de la base de données de KeePass 1.x (mais dans ce cas les pièces jointes ne peuvent être exportées).

La liste des URL de chacune des entrées peut être exportée dans les favoris de Windows.

Usage multi-utilisateurs[modifier | modifier le code]

Le programme possède également des fonctions qui lui permettent d'être utilisé entre plusieurs utilisateurs avec la gestion des accès multiples en combinant à la fois les modifications saisies simultanément par deux utilisateurs sur la même base de données ouverte dans un dossier partagé sur le réseau informatique.

Traduction[modifier | modifier le code]

KeePass est publié par défaut avec une interface en anglais. On peut ensuite ajouter une langue ou plusieurs langues en téléchargeant les fichiers de langue depuis son site officiel.

L'interface a été traduite dans plus de quarante langues et, en 2013, est maintenue dans plus de vingt langues. Les traducteurs bénévoles sont en relation avec l'auteur du logiciel. Les fichiers de traductions sont disponibles sur la page des traductions du site officiel[4]. Les fichiers ont le suffixe .lng en 1.x et .lngx en 2.x. Les fichiers doivent être copiés dans le répertoire (dossier) où se trouve l'exécutable de KeePass.

La traduction en français est le fruit du travail de Suisses, Français et Canadiens depuis plusieurs années. Le fichier de traduction en français est téléchargeable dans un format d'archive compressé. Le nom du fichier est KeePass-1.x-French.zip ou KeePass-2.x-French.zip selon la version de KeePass. Il peut exister plusieurs versions pour une même version de KeePass ; dans ce cas précis alors la deuxième version comportera -b en fin de nom de fichier (KeePass-1.x-French-b.zip ou KeePass-2.x-French-b.zip) et ainsi de suite. Une fois le fichier décompressé, on trouve enfin le fichier French.lng en 1.x ou French.lngx en 2.x sans indiquer le numéro de version dans le nom du fichier quelle que soit la version (1.x ou 2.x) de sorte qu'il soit possible de copier le fichier de traduction après une correction de la traduction ou une montée de niveau (c'est-à-dire au moment d'une mise à jour) de KeePass sans avoir à faire de modification dans la boîte de dialogue ViewChange Language... ou AffichageModifier la langue....

Recommandations[modifier | modifier le code]

Vérifier qu'on n'ait pas de keylogger installé sur son poste de travail qui pourrait intercepter un mot de passe dans le presse-papiers ou bien un mot de passe tapé au clavier, clavier visuel, etc. notamment quand on utilise un ordinateur au travail, dans un cybercafé ou un taxiphone.

Il existe des logiciels pour déchiffrer le contenu d'une base de données KeePass : KeeCracker, Keepass Self-Bruteforcer et keepass2john, mais leur efficacité dépend pour beaucoup des informations que l'utilisateur peut leur transmettre.

Contributions et portages officieux[modifier | modifier le code]

Il existe différentes implémentations pour différentes plates-formes de KeePass[5]. Les bases de données utilisées sont généralement compatibles, à savoir les bases de données avec des mécanismes appropriés (par exemple Google Drive ou Dropbox seront synchronisés entre les périphériques).

Notes et références[modifier | modifier le code]

  1. Rapport de certification ANSSI-CSPN-2010/07
  2. http://keepass.info/plugins.html#ioprotocolext
  3. http://keepass.info/plugins.html#certkeyprov
  4. http://www.keepass.info/translations.html
  5. Contributions et portages officieux
  6. http://www.keepassx.org/
  7. http://7pass.wordpress.com/
  8. http://www.keepass.info/download/p_keepassbb/
  9. https://play.google.com/store/apps/details?id=com.android.keepass
  10. https://play.google.com/store/apps/details?id=keepass2android.keepass2android
  11. http://itunes.apple.com/us/app/kypass/id425680960?mt=8

Voir aussi[modifier | modifier le code]

Article connexe[modifier | modifier le code]

Logiciels similaires[modifier | modifier le code]

Liens externes[modifier | modifier le code]

Sur les autres projets Wikimedia :