La fonction hash() renvoie un hachage des données en entrée sur 128 bits, 160 bits ou 256 bits, selon l'algorithme sélectionné.
Cette fonction fournit 2128- 2256 valeurs de retour distinctes ; elle est utilisée à des fins cryptographiques.
varchar = hash(données varchar [, algorithme int]);
nvarchar = hash(données nvarchar [, algorithme int]);
La valeur données indique le varchar ou le nvarchar à hacher.
La valeur algorithme est spécifiée par le code d'entier (0 est la valeur par défaut). Les algorithmes et les tailles de hachage qui en résultent sont présentés dans le tableau suivant :
| Code | Description | Résultat |
|---|---|---|
| 0 | MD5 | 128 bits |
| 1 | SHA-1 | 160 bits |
| 2 | SHA-2 | 256 bits |
MD5 et SHA sont des algorithmes de résumé de message dérivés de MD4. Les fonctions de hachage SHA (Secure Hash Algorithm) ont été conçues par la National Security Agency (NSA) et offrent des fonctionnalités évoluées de hachage cryptographique. Des défauts de sécurité sont identifiés dans SHA-1 et dans MD5. SHA-2 est considéré comme sécurisé à la date de publication de ce document, mais SHA-3 est actuellement en cours de développement et permettra de parer à tout défaut de sécurité qui pourrait être constaté dans SHA-2.
select hash('Netezza',0);
HASH
------------------
Ã
®dïO=±NEÂ
ÂÂÃ
(1 row)