Catégories :

Fonctions de chaîne et fonctions binaires (Hachage cryptographique)

SHA2_BINARY

Renvoie un binaire contenant le résumé de message SHA-2 de N bits, où N est la taille de résumé de la sortie spécifiée.

Syntaxe

SHA2_BINARY(<msg> [, <digest_size>])

Arguments

Obligatoire :

msg

Une expression de chaîne, le message à hacher

Facultatif :

taille_digest

Taille (en bits) de la sortie, correspondant à la fonction spécifique SHA-2 utilisée pour chiffrer la chaîne :

224 = SHA-224

256 = SHA-256 (par défaut)

384 = SHA-384

512 = SHA-512

SHA-512/224 et SHA-512/256 ne sont pas pris en charge.

Exemples

SELECT sha2_binary('Snowflake', 384);

--------------------------------------------------------------------------------------------------+
                                   SHA2_BINARY('SNOWFLAKE', 384)                                  |
--------------------------------------------------------------------------------------------------+
 736BD8A53845348830B1EE63A8CD3972F031F13B111F66FFDEC2271A7AE709662E503A0CA305BD50DA8D1CED48CD45D9 |
--------------------------------------------------------------------------------------------------+

Le type de données de la sortie est BINARY et peut être stocké dans une colonne BINARY :

Créez et remplissez une table :

CREATE TABLE sha_table(
    v VARCHAR, 
    v_as_sha1 VARCHAR,
    v_as_sha1_hex VARCHAR,
    v_as_sha1_binary BINARY,
    v_as_sha2 VARCHAR,
    v_as_sha2_hex VARCHAR,
    v_as_sha2_binary BINARY
    );
INSERT INTO sha_table(v) VALUES ('AbCd0');
UPDATE sha_table SET 
    v_as_sha1 = SHA1(v),
    v_as_sha1_hex = SHA1_HEX(v),
    v_as_sha1_binary = SHA1_BINARY(v),
    v_as_sha2 = SHA2(v),
    v_as_sha2_hex = SHA2_HEX(v),
    v_as_sha2_binary = SHA2_BINARY(v)
    ;

Voici la requête et la sortie (notez que pour l’affichage, la sortie est convertie implicitement en un format lisible par l’utilisateur, qui dans ce cas est une chaîne de chiffres hexadécimaux) :

SELECT v, v_as_sha2_binary
  FROM sha_table
  ORDER BY v;
+-------+------------------------------------------------------------------+
| V     | V_AS_SHA2_BINARY                                                 |
|-------+------------------------------------------------------------------|
| AbCd0 | E1D8BA27889D6782008F495473278C4F071995C5549A976E4D4F93863CE93643 |
+-------+------------------------------------------------------------------+