Bonjour à tous,
Je suis entrain de coder une app qui envoi des fichiers sur un serveur FTP. Cette partie est faite, mais pas la suite.
Pour se connecter au serveur, je souhaite créer une fenêtre de préférences où l'utilisateur rentrera toutes les données du serveur, dont le mot de passe. J'ai pensé à stocker ces données dans un fichier config. Pour cela, il me faut donc crypter le mot de passe. Je me suis donc renseigné sur le cryptage AES. J'ai à peu près compris la démarche en suivant ce tuto.
Ainsi j'obtiendrai deux fonctions : Crypt(String, Key, IV) et Decrypt(String, Key, IV).
La question que je me pose, c'est que faire de la clé et du vecteur d’initialisation ? J'ai lu à plusieurs reprises sur le net que les apps en C# étaient décompilables. Je ne peux donc pas les stocker en dur dans le code, ni dans un fichier. Le cryptage ne servirait à rien... D'après ce que j'ai lu, une des méthode serrait de demander un mot de passe à l'utilisateur (haché en SHA1) afin de décrypter la clé cryptée. Mais je ne souhaite rien demander à l'utilisateur ! N'y a t'il pas un moyen ?
Qu'en pensez vous ? AES n'est peut être pas non plus la meilleure solution.
Merci d'avance.
Partager