Je n’aime pas écrire ce commentaire, parce que je ne veux pas « descendre » un projet libre partagé « dans l’espoir qu’il sera utile ».
Mais en l’état, je me dois de déconseiller l’utilisation de ce logiciel excepté dans les situations où la menace est quasiment inexistante — autrement dit, si vous ne voulez que stocker vos identifiants sans aucunement chercher à les protéger.
La première phrase de la dépêche dit tout :
Ce logiciel de gestion de mots de passe a été développé au départ pour une utilisation personnelle et aussi dans un but didactique pour mieux appréhender les fonctions de cryptographie.
Il n’y a bien sûr aucun mal à créer un logiciel dans un but didactique et ce n’est sûrement pas quelque chose qui doit être découragé, bien au contraire.
Mais du côté des utilisateurs potentiels, il faut être conscient de ce que ça implique. En l’occurrence ici, que la protection cryptographique semble reposer sur des bases fragiles.
Un rapide coup d’œil au code montre (au moins, pas tout regardé en détail) deux gros red flags :
une implémentation personnelle d’AES (aka rolling your own crypto), au lieu d’utiliser une bibliothèque cryptographique éprouvée — certes ça se justifie dans un but didactique, mais pas pour un logiciel proposé à l’utilisation (c’est une violation du Foot-Shooting Prevention Agreement que tout développeur apprenant AES devrait normalement signer ;) ) ;
la clef principale est dérivée du master password par une simple condensation SHA2-256 :
// définir key et iv pour AES cbc// key est calculé à partir du master password saisi par l'utilisateurQByteArraycombined=getMasterPassword().toLatin1();QByteArrayhashed=QCryptographicHash::hash(combined,QCryptographicHash::Sha256);hashed=hashed.toHex().toBase64();hashed=hashed.replace('+','A').replace('/','B').replace('=','C');key=hashed.simplified().left(64);
C’était acceptable il y a vingt ans, ça... Aujourd’hui l’état de l’art commande d’utiliser des primitives cryptographiques spécialement conçues pour la dérivation de clef. Au minimum PBKDF2, ou mieux encore de nos jours les fonctions de la famille Argon2.
# Cryptographie fragile
Posté par gouttegd . En réponse à la dépêche QGestpass logiciel de gestion de mots de passe et de sites web. Évalué à 10. Dernière modification le 30 mai 2022 à 11:44.
Je n’aime pas écrire ce commentaire, parce que je ne veux pas « descendre » un projet libre partagé « dans l’espoir qu’il sera utile ».
Mais en l’état, je me dois de déconseiller l’utilisation de ce logiciel excepté dans les situations où la menace est quasiment inexistante — autrement dit, si vous ne voulez que stocker vos identifiants sans aucunement chercher à les protéger.
La première phrase de la dépêche dit tout :
Il n’y a bien sûr aucun mal à créer un logiciel dans un but didactique et ce n’est sûrement pas quelque chose qui doit être découragé, bien au contraire.
Mais du côté des utilisateurs potentiels, il faut être conscient de ce que ça implique. En l’occurrence ici, que la protection cryptographique semble reposer sur des bases fragiles.
Un rapide coup d’œil au code montre (au moins, pas tout regardé en détail) deux gros red flags :
C’était acceptable il y a vingt ans, ça... Aujourd’hui l’état de l’art commande d’utiliser des primitives cryptographiques spécialement conçues pour la dérivation de clef. Au minimum PBKDF2, ou mieux encore de nos jours les fonctions de la famille Argon2.