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

Moyen sécurisé de stocker les clés de chiffrement - PHP

Je suppose que vous utilisez Apache.

Placez les données secrètes dans une variable d'environnement dans /etc/apache2/envvars , définissez le propriétaire sur root et les autorisations sur 400.

Un attaquant devra compromettre le serveur pour mettre la main sur votre clé.

Vous pouvez également créer un script qui demande le secret au démarrage d'Apache (ennuyeux, mais encore plus sûr).

Notez que les personnes disposant d'un accès root seront toujours être en mesure d'obtenir votre clé et essayer de la leur cacher n'est qu'un placebo.

Solution placebo :

  • Rendez votre application inactive par défaut jusqu'à ce que vous POSTiez votre clé sur une page HTTPS au sein de la même application, enregistrez votre clé dans une variable globale et poursuivez votre activité. Vous devez tenir compte du cycle de vie du processus PHP (lorsque le processus se termine, vous devez renvoyer votre clé).