Nous avons récemment implémenté des clés symétriques dans MS SQL 2005 pour crypter et décrypter les cartes de crédit, vérifier les numéros de routage/compte.Assemblage CLR pour cryptage/décryptage
Idéalement, nous aimerions qu'une fonction définie par l'utilisateur puisse effectuer le cryptage et le décryptage, mais ce n'est pas possible puisque les fonctions encryptbykey et decryptbykey ne peuvent pas être utilisées dans des fonctions définies par l'utilisateur. Au départ, je pensais que nous pouvions créer un assemblage CLR (en C#) avec des fonctions pour le faire, cependant, comme j'ai appris les mêmes règles s'appliquent.
Je me demandais ce que les autres faisaient pour réaliser facilement cette fonctionnalité. Création de nombreuses procédures stockées telles que:
OUVERT ...
KEY SYMMETRIC SELECT nom d'utilisateur, DecryptByKey (...) AS mot de passe FERMER KEY SYMMETRIC ...
... pour les nombreux domaines dans lesquels nous allons crypter/décrypter serait très fastidieux.
Vous décryptez des mots de passe? Vraiment? Vous savez que ce n'est pas du tout un bon design. Les mots de passe doivent être hachés unidirectionnels. Les clés déchiffrables rendent vulnérable chaque mot de passe de votre base de données. – Will
Eh bien, je vais principalement l'utiliser pour les numéros de carte de crédit, et vérifier les numéros de routage/compte. –
Je vous suggère fortement de faire des recherches en cryptage/sécurité si vous travaillez avec ce genre d'informations sensibles. Mieux vaut être bien préparé que désolé! – Will