Outils pour utilisateurs

Outils du site


scripts-sql

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

scripts-sql [2018/12/05 22:45] (Version actuelle)
Ligne 1: Ligne 1:
 +====== Scripts SQL ======
  
 +===== Créer une fonction SHA512 dans Mysql/​MariaDB compatible avec Lemonldap-ng =====
 +
 +<code sql>
 +delimiter //
 +
 +CREATE FUNCTION SHA512 (password VARCHAR(40)) RETURNS VARCHAR(128) DETERMINISTIC
 +BEGIN
 +  RETURN SHA2(UNHEX(pass),​ 512);
 +END
 +//
 +</​code>​
 +
 +===== Créer une fonction SSHA512 (salted) dans Mysql/​MariaDB =====
 +
 +<code sql>
 +
 +CREATE FUNCTION SSHA512 (password VARCHAR(40)) RETURNS VARCHAR(200)
 +BEGIN
 +  DECLARE salt VARCHAR(16);​
 +  DECLARE i INT;
 +  ​
 +  # Generate 16 digits hex salt
 +  SET salt = '';​
 +  SET i = 0;
 +  REPEAT
 +    SET i = i + 1;
 +    SET salt = CONCAT(salt,​ SUBSTRING('​0123456789ABCDEF',​ FLOOR(RAND()*16+1),​ 1));
 +  UNTIL i = 16 END REPEAT;
 +  ​
 +  RETURN ​
 +  CONCAT('​{SSHA512}',​
 +           ​TO_BASE64(UNHEX(CONCAT(
 +               ​SHA512(CONCAT(HEX(pass),​ salt)),
 +               salt
 +           )))
 +    );
 +  ​
 +END
 +</​code>​
scripts-sql.txt · Dernière modification: 2018/12/05 22:45 (modification externe)