Bonjour,

Je voudrais développer une application qui gère une liste d'équipement et qui contient des données sensibles tel que les mots de passe.

Pour pouvoir utiliser l'application, l'utilisateur devra entrer un login et un mot de passe.

Les données concernant ma base de données équipements seront enregistrées sur le PC.

1- comment enregistrer de manière sécurisée le login et le mot de passe utilisateur ?
2- comment enregistrer les données des équipements de manière sécurisé ?
=> je voudrais pouvoir copier les données de la base de données équipements pour les sauvegarder et/ou les utiliser sur un autre PC.
=> je voudrais que mon application fonctionne sur Linux et Windows, j'aimerais donc ne pas utiliser de spécifiés liées à l'OS.
=> je veux que tout puisse fonctionner en mode hors ligne.

Merci par avance,

---------------------
Voici pour le moment mes réflexions sur la méthodologie à adopter pour la gestion de la base de donnée des équipements

Je compte utiliser une clef publique pour chiffrer la base de données avant de l'enregistrer sur le disque dur et de la clef privée associée pour déchiffrer le fichier.
Les clefs seront générées lors de la première ouverture de l'application après installation.
La clef publique sera enregistrée sur le disque dur en non chiffrée.
La clef privée sera enregistrée sur le disque dur chiffrée à l'aide d'une fonction de dérivation de clé (ex : PBKDF2) qui utilisera le mot de passe utilisateur pour le chiffrement.
Lorsque l'application est lancée, elle déchiffre la clef privée à l'aide du mot de passe utilisateur, puis à l'aide de la clef privée, elle déchiffre les données du fichier de la base de données. La base de données sera stockée en RAM non chiffrée (est-ce vraiment risqué ? C'est facile de récupérer des données en RAM ?).

Donc pour ne pas perdre les données, il suffira à l'utilisateur de sauvegarder la clef privée chiffrée et régulièrement le fichier de la base de données chiffré. Pas besoin d'autre chose pour récupérer les données (à part de connaitre le mode de passe utilisateur bien sure) ?

Si on veut transférer la base de données sur un autre PC : il suffit d'installer l'application et de copier ces mêmes fichiers.

Vous en pensez quoi ? Trop complexe ou l'inverse ?