2011-03-29 8 views
0

Je travaille sur une application qui a un bouton rouge. Cela signifie que chaque compte client a deux clés (secrètes) qui sont générées automatiquement. Lorsque quelqu'un entre ces touches sur une page spéciale (publique), un certain processus sera mis en mouvement. Le processus n'est pas critique, maisManière sûre de récupérer des clés secrètes

Tout est pris en compte, les clés sont générées automatiquement lors de la création du compte utilisateur, stockées cryptées dans la base de données et sont montrées à l'utilisateur une fois afin qu'il puisse distribuer les clés comme bon lui semble. Il peut bien sûr réinitialiser les clés s'il le veut.

Le fait est que certains clients oublient toujours les clés. Notre solution consiste à réinitialiser les clés et à redistribuer les nouvelles clés, mais pour certains clients ce n'est pas pratique. Je voudrais offrir la possibilité de récupérer les clés sans les réinitialiser. Mon idée était de pouvoir déchiffrer les clés en utilisant le mot de passe de l'utilisateur, ce qui signifiait que l'utilisateur déjà connecté devrait à nouveau entrer son mot de passe, qui était utilisé pour crypter les clés et qui est maintenant utilisé pour les décrypter. Je ne suis pas sûr de savoir comment cela fonctionnerait techniquement (existe-t-il un algorithme de chiffrement/déchiffrement que je pourrais utiliser?) Et s'il y a quelque chose que je devrais considérer avant d'employer une telle technique.

Est-ce que quelqu'un a des idées à ce sujet? Peut-être même une meilleure suggestion?

+0

Ceci est super sur-travaillé. L'authentification par mot de passe simple et la réinitialisation par mot de passe traditionnelle via email suffiront, à condition que vous utilisiez SSL. Si vous n'utilisez pas le protocole SSL, peu importe le nombre de clés utilisées ou la façon dont elles sont générées de manière sécurisée ... – meagar

+0

Vous pouvez voir les clés comme une combinaison nom d'utilisateur/mot de passe, mais ce n'est pas le cas tout. Le fait est que nous devons être en mesure de récupérer les deux clés en quelque sorte. Key-reset-via-email combiné avec SSL est ce que nous utilisons maintenant et cela ne suffit pas. –

Répondre

1

Vous voulez vérifier les chiffres comme AES.

Je voudrais vérifier this gisthub example sur la façon d'utiliser Ruby et AES pour le cryptage et le décryptage.

+0

Je vais vérifier. Je vous remercie. Cela pose cependant la question de savoir comment gérer les changements de mot de passe et les réinitialisations. Je devrais penser cela à travers un peu plus. Toutes les idées sont les bienvenues. –

Questions connexes