From 8dea7146e3860bd5b98d68a610b53cf888ede0e9 Mon Sep 17 00:00:00 2001 From: Debulois Date: Tue, 12 Apr 2022 22:26:32 +0200 Subject: Passage des mots de passe de DES par défaut en SHA512 pour etre compatible avec l'app MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Database/dbmain.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'Database/dbmain.php') diff --git a/Database/dbmain.php b/Database/dbmain.php index 67f27a4..193c93a 100644 --- a/Database/dbmain.php +++ b/Database/dbmain.php @@ -21,8 +21,6 @@ class DbMain { // **************************************************************************** // Pour gérer si "en production" private $debug = True; - // Salt pour le chiffrement - private $salt = "t87RL7dKfaNAJKtCAR6cVFhEfkn7qBGW"; // Configuration du serveur MYSQL / MARIADB private $conn; private $host = "127.0.0.1"; @@ -191,9 +189,13 @@ class DbMain { } // Chiffre la data reçue + // https://www.delftstack.com/fr/howto/php/php-string-concatenation/ final public function crypt_pass($pass) { - $crypt = crypt($pass, $this->salt); - return $crypt; + // On génère une chaine de caractère aléatoire de 16 bytes en supprimant les caractères spéciaux de base64. + $salt = substr(str_replace("+", ".", base64_encode(random_bytes(32))), 0, 16); + // On configure pour avoir du SHA512 avec 10 000 tours (protection contre du bruteforce ex:hashcat) + $hash = crypt($pass, '$6'.'$rounds=10000'.'$'.$salt.'$'); + return $hash; } // Prépare la requète pour mitiger (se protéger) les injections SQL et -- cgit v1.2.3