Mysql
 sql >> Base de données >  >> RDS >> Mysql

Stocker les données sensibles en toute sécurité dans une base de données

1 - BLOB est ma préférence car l'encoder en base64 augmentera à la fois l'espace et le temps de traitement (puisque vous devrez également décoder base64 avant de déchiffrer)

2 - openssl_seal ne vous donne pas la clé qui a été utilisée pour chiffrer les données. Le but de env_keys est de stocker le formulaire crypté de la clé générée. Lorsque vous appelez openssl_open, vous lui donnez cette clé d'enveloppe et la clé privée dont il a besoin pour déchiffrer la clé de l'enveloppe. La clé privée doit correspondre à la clé publique utilisée pour générer la clé d'enveloppe.

3- Si votre clé privée nécessite une phrase secrète, alors techniquement vos données sont relativement sûr. Même s'ils ont la clé d'enveloppe et la clé privée, ils ne pourront pas l'utiliser... mais à quel point votre mot de passe est-il sécurisé ? Une chose à réaliser est que vous pouvez presque ne garantissez jamais un système entièrement sécurisé, mais vous pouvez certainement rendre la tâche difficile aux pirates. Utilisez votre imagination ici. Au fait, votre phrase secrète est-elle en clair dans votre code ?