Question

J'ai une question concernant le scénario suivant:
Je veux utiliser jasypt pour chiffrer mon mot de passe et d'utiliser un certain sel pour le chiffrement.

Est-il logique (ou est-il une incidence sur la sécurité) si:
J'utilise le cryptage par mot de passe pour chiffrer le sel avec un mot de passe que je reçois d'une variable d'environnement, de cette façon je peux avoir la valeur chiffrée du sel dans un fichier de propriétés, obtenir à partir de là, décryptez via le mot de passe que je reçois de la variable d'environnement (en fait, je vais avoir un objet EnvironmentStringPBEConfig qui à son tour devient la variable d'environnement de l'objet EnvironmentStringPBEConfig et supprimer la variable d'environnement une fois que le EnvironmentStringPBEConfig est créé) et enfin utiliser le sel.

Merci.

Edit:. Notez s'il vous plaît que je voudrais savoir si « cacher » le sel tel que décrit ci-dessus est une bonne pratique, je ne suis pas mise en œuvre de cette solution dès maintenant

EDIT: S'il vous plaît noter également les recommandations suivantes OWASP .

Recommandation: Faire du mal à voler tout le sel

Il y a un certain nombre d'améliorations recommandées supplémentaires au mécanisme de salage de base pour examen:

Avoir un sel « système » supplémentaire qui est une valeur fixe pour le système entier. Cela devrait être stocké dans un endroit de fichier de configuration. Cette valeur fixe ne serait pas être inclus chaque sauvegarde, ce qui rend encore plus difficile pour un attaquant de compromettre tous les éléments nécessaires au calcul de la valeur de hachage correctement. Incorporation d'une partie du sel de système dans le code source. Ce ne serait pas utile que pour le code open source, mais pour des applications personnalisées, ayant une partie de votre sel de système dans le code serait encore un autre élément requis par un attaquant pour calculer la valeur de hachage correctement. Création d'un nouveau sel pour un compte à chaque fois que le mot de passe de l'utilisateur est modifié.

Recommandation: Isolation sel

Un mécanisme de défense de stockage de mot de passe supplémentaire implique le stockage du sel dans un emplacement différent de la valeur de hachage du mot de passe. Utilisation du système de fichiers du serveur est un mécanisme couramment utilisé pour l'isolement du sel, en supposant que les mots de passe hachés sont stockés dans un autre endroit tel qu'une base de données ou un serveur LDAP. Ce mécanisme de défense réduit le risque de vol de mot de passe lorsque le fichier de base de données est volé, puisque les sels ne seront pas inclus dans les données de base de données. Veillez à ce que les deux hashs et les sels ne sont pas sauvegardés ensemble, ils devraient également être sauvegardés dans l'isolement.

Pas de solution correcte

Autres conseils

Pourquoi voulez-vous chiffrer un sel? Les sels sont normalement l'information du public - ils existent seulement pour éviter précalculées « arc-en-table » attaques hors connexion sur les bases de données de mots de passe. Je pense que vous devez être plus clair sur ce que vous essayez de faire et pourquoi.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top