· 6 years ago · Jun 30, 2019, 10:24 AM
1$cipher = "AES-128-CBC";
2$secretkey = …; // it's a secret!
3$secret = openssl_encrypt("$dbuser:$dbpass", $cipher, $secretkey);
4
5$cipher = "AES-128-CBC";
6$key = "Fortune42Cookies!";
7$secret = openssl_encrypt("$username:$secretkey", $cipher, $key);
8
9$cipher = "AES-128-CBC";
10$key = "Fortune42Cookies!";
11$clearsecret = explode(":", openssl_decrypt($secret, $cipher, $key));
12$username = $clearsecret[0];
13$secretkey = $clearsecret[1];
14$this->db = new mydatabase($secretkey);
15. . .
16class mydatabase extends mysqli {
17 public function __construct($secretkey) {
18 public $credentials; // set by the configuration script
19 $cipher = "AES-128-CBC";
20 $cred = explode(":", openssl_decrypt($credentials, $cipher, $secretkey);
21 parent::__construct(<database path>, $cred[0], $cred[1], <dbname>);
22 }
23 }