sql >> Database teknologi >  >> RDS >> Mysql

Sikker måde at opbevare krypteringsnøgler på - PHP

Jeg går ud fra, at du bruger Apache.

Indsæt de hemmelige data i en miljøvariabel i /etc/apache2/envvars , sæt ejeren til root og tilladelserne til 400.

En angriber bliver nødt til at kompromittere serveren for at lægge hænderne på din nøgle.

Du kan også lave et script, der beder om hemmeligheden, når Apache starter (irriterende, men endnu mere sikkert).

Bemærk, at personer med root-adgang vil altid at være i stand til at få din nøgle og forsøge at skjule den for dem er blot en placebo.

Placebo-løsning:

  • Gør din applikation inaktiv som standard, indtil du POST din nøgle til en HTTPS-side i samme applikation, gemmer din nøgle i en global variabel og fortsætter med din virksomhed. Du skal overveje PHP-processens livscyklus (når processen afsluttes, skal du sende din nøgle igen).


  1. Sådan vælger du Top N rækker pr. gruppe i MySQL

  2. komplekse sql trærækker

  3. MySQL LOAD DATA INFILE butikslinjenummer

  4. skinner COUNT SELECT DISTINCT