PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

  • Notes
  • Fonction HashChaîne et UNICODE
  • Disponibilité des algorithmes
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget iOSApple WatchCatalystUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Calcule le Hash d'une chaîne de caractères d'après un algorithme défini. Il est possible de calculer :
  • un hash simple.
  • un hash avec authentification de message.
Rappel : Le hachage permet de réaliser un résumé condensé d'un fichier ou d'une chaîne de caractères. Ce résumé est appelé Hash.
Versions 15 et supérieures
PHP Cette fonction est désormais disponible pour les sites PHP.
Java Cette fonction est désormais disponible pour les applications Java.
Android Cette fonction est désormais disponible pour les applications Android.
Nouveauté 15
PHP Cette fonction est désormais disponible pour les sites PHP.
Java Cette fonction est désormais disponible pour les applications Java.
Android Cette fonction est désormais disponible pour les applications Android.
PHP Cette fonction est désormais disponible pour les sites PHP.
Java Cette fonction est désormais disponible pour les applications Java.
Android Cette fonction est désormais disponible pour les applications Android.
Versions 17 et supérieures
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Nouveauté 17
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
iPhone/iPad Cette fonction est désormais disponible pour les applications iPhone/iPad.
Versions 18 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Nouveauté 18
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Universal Windows 10 App Cette fonction est désormais disponible en mode Windows Store apps.
Widget Android Cette fonction est désormais disponible en mode Widget Android.
Versions 21 et supérieures
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Nouveauté 21
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
Universal Windows 10 App Cette fonction est désormais disponible en mode Universal Windows 10 App.
// Calcul du Hash des valeurs de deux champs de saisie
Hash1 est un Buffer = HashChaîne(HA_MD5_128, SAI_Saisie1)
Hash2 est un Buffer = HashChaîne(HA_MD5_128, SAI_Saisie2)
// Comparaison des deux Hash
SI Hash1 = Hash2 ALORS Info("Les deux chaînes sont identiques.")
Syntaxe

Calculer un hash simple Masquer les détails

<Résultat> = HashChaîne(<Type d'algorithme> , <Chaîne>)
<Résultat> : Buffer
Résultat du hachage de la chaîne <Chaîne> avec l'algorithme <Type d'algorithme>.
Attention : ce résultat peut contenir des caractères non affichables. Si ce résultat doit être affiché, il peut être converti avec la fonction BufferVersHexa.
<Type d'algorithme> : Constante de type Entier
Indique le type d'algorithme utilisé lors du hachage de la chaîne <Chaîne> :
Versions 22 et supérieures
Famille DJB2 (Bernstein)
Nouveauté 22
Famille DJB2 (Bernstein)
Famille DJB2 (Bernstein)
Versions 22 et supérieures
HA_DJB2_32
AndroidWidget AndroidJavaPHP Non disponible.
Nouveauté 22
HA_DJB2_32
AndroidWidget AndroidJavaPHP Non disponible.
HA_DJB2_32
AndroidWidget AndroidJavaPHP Non disponible.
Versions 22 et supérieures
HA_DJB2_64
AndroidWidget AndroidJavaPHP Non disponible.
Nouveauté 22
HA_DJB2_64
AndroidWidget AndroidJavaPHP Non disponible.
HA_DJB2_64
AndroidWidget AndroidJavaPHP Non disponible.
Versions 25 et supérieures
Famille MD4
Nouveauté 25
Famille MD4
Famille MD4
Versions 25 et supérieures
HA_MD4
AndroidWidget AndroidJava Non disponible.
Nouveauté 25
HA_MD4
AndroidWidget AndroidJava Non disponible.
HA_MD4
AndroidWidget AndroidJava Non disponible.
Famille MD5HA_MD5_128
Versions 24 et supérieures
Famille MURMUR
Nouveauté 24
Famille MURMUR
Famille MURMUR
Versions 24 et supérieures
HA_MURMUR_1 : Algorithme Murmur version 1 : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_1 : Algorithme Murmur version 1 : hash résultat sur 32 bits
HA_MURMUR_1 : Algorithme Murmur version 1 : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2 : Algorithme Murmur version 2 : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_2 : Algorithme Murmur version 2 : hash résultat sur 32 bits
HA_MURMUR_2 : Algorithme Murmur version 2 : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_64A : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 64 bits
Nouveauté 24
HA_MURMUR_2_64A : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 64 bits
HA_MURMUR_2_64A : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 64 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_64B : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 32 bits
Nouveauté 24
HA_MURMUR_2_64B : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 32 bits
HA_MURMUR_2_64B : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_A : Algorithme Murmur version 2 incrémentiel : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_2_A : Algorithme Murmur version 2 incrémentiel : hash résultat sur 32 bits
HA_MURMUR_2_A : Algorithme Murmur version 2 incrémentiel : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_BIG_ENDIAN : Algorithme Murmur version 2 pour machine big-endian: hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_2_BIG_ENDIAN : Algorithme Murmur version 2 pour machine big-endian: hash résultat sur 32 bits
HA_MURMUR_2_BIG_ENDIAN : Algorithme Murmur version 2 pour machine big-endian: hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_ALIGNE : Algorithme Murmur version 2 pour machine alignée : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_2_ALIGNE : Algorithme Murmur version 2 pour machine alignée : hash résultat sur 32 bits
HA_MURMUR_2_ALIGNE : Algorithme Murmur version 2 pour machine alignée : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_3_32 : Algorithme Murmur version 3 : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_3_32 : Algorithme Murmur version 3 : hash résultat sur 32 bits
HA_MURMUR_3_32 : Algorithme Murmur version 3 : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_3_128_X86 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 32 bits
Nouveauté 24
HA_MURMUR_3_128_X86 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 32 bits
HA_MURMUR_3_128_X86 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_3_128_X64 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 64 bits
Nouveauté 24
HA_MURMUR_3_128_X64 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 64 bits
HA_MURMUR_3_128_X64 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 64 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Famille RIPEMDHA_RIPEMD_128
AndroidWidget AndroidJava Non disponible.
HA_RIPEMD_160
AndroidWidget AndroidJava Non disponible.
Famille SHA-1HA_SHA_160 (aussi appelé SHA-1)
HA_SHA_256 (spécifications FIPS PUB 198)
Versions 25 et supérieures
HA_SHA_256_DOUBLE
Nouveauté 25
HA_SHA_256_DOUBLE
HA_SHA_256_DOUBLE
HA_SHA_384
HA_SHA_512
Versions 23 et supérieures
Famille SHA-3
Nouveauté 23
Famille SHA-3
Famille SHA-3
Versions 23 et supérieures
HA_SHA3_224
Nouveauté 23
HA_SHA3_224
HA_SHA3_224
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 23 et supérieures
HA_SHA3_256
Nouveauté 23
HA_SHA3_256
HA_SHA3_256
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 23 et supérieures
HA_SHA3_384
Nouveauté 23
HA_SHA3_384
HA_SHA3_384
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 23 et supérieures
HA_SHA3_512
Nouveauté 23
HA_SHA3_512
HA_SHA3_512
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Famille TIGERHA_TIGER_128
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
HA_TIGER_160
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
HA_TIGER_192
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Famille WHIRLPOOLHA_WHIRLPOOL
AndroidWidget AndroidJava Non disponible.
Famille CKSUMHA_CKSUM_8
AndroidWidget AndroidJava Non disponible.
HA_CKSUM_16
AndroidWidget AndroidJava Non disponible.
HA_CKSUM_32
AndroidWidget AndroidJava Non disponible.
HA_CKSUM_64
AndroidWidget AndroidJava Non disponible.
  • Algorithmes MD4 / MD5 / SHA / RIPEMD : fonctions de hachage cryptographiques classiques.
  • Algorithmes TIGER / WHIRLPOOL : fonctions de hachage ayant de très bonnes propriétés cryptographiques optimisées pour le 64 bits (mais leur utilisation est possible en 32 bits).
    PHP Les algorithmes TIGER ne sont pas disponibles.
  • Algorithmes CKSUM : fonctions de hachage ne possédant pas de propriété cryptographique, à n'utiliser que pour des contrôles minimaux ou des tables de hachage.
  • Versions 22 et supérieures
    Algorithme DJB2 (Bernstein) : fonctions de hachage réservées aux chaînes et ne possédant pas de propriété cryptographique, à n'utiliser que pour des contrôles minimaux ou des tables de hachage. Peu de risques d'obtenir un hash identique.
    Nouveauté 22
    Algorithme DJB2 (Bernstein) : fonctions de hachage réservées aux chaînes et ne possédant pas de propriété cryptographique, à n'utiliser que pour des contrôles minimaux ou des tables de hachage. Peu de risques d'obtenir un hash identique.
    Algorithme DJB2 (Bernstein) : fonctions de hachage réservées aux chaînes et ne possédant pas de propriété cryptographique, à n'utiliser que pour des contrôles minimaux ou des tables de hachage. Peu de risques d'obtenir un hash identique.
  • Versions 24 et supérieures
    Algorithme MURMUR : fonctions de hachage très rapides. C'est l'algorithme utilisé pour le "bloom filter" des portefeuilles bitcoin.
    Nouveauté 24
    Algorithme MURMUR : fonctions de hachage très rapides. C'est l'algorithme utilisé pour le "bloom filter" des portefeuilles bitcoin.
    Algorithme MURMUR : fonctions de hachage très rapides. C'est l'algorithme utilisé pour le "bloom filter" des portefeuilles bitcoin.
<Chaîne> : Chaîne de caractères (entre guillemets)
Chaîne sur laquelle sera effectuée le calcul. Ce paramètre peut contenir des caractères binaires.

Calculer un hash avec authentification de message (algorithme HMAC/algorithme MURMUR) Masquer les détails

<Résultat> = HashChaîne(<Type d'algorithme> , <Chaîne> , <Clé secrète>)
<Résultat> : Buffer
Résultat du hachage de la chaîne <Chaîne> avec l'algorithme <Type d'algorithme>. La longueur de cette chaîne dépend de l'algorithme utilisé. Par exemple, si la constante HA_HMAC_SHA_256 est utilisé, le résultat contiendra 32 octets.
Attention : ce résultat peut contenir des caractères non affichables.
<Type d'algorithme> : Constante de type Entier
Indique le type d'algorithme (HMAC ou MURMUR) utilisé lors du hachage de la chaîne <Chaîne> :
Versions 25 et supérieures
Famille MD4
Nouveauté 25
Famille MD4
Famille MD4
Versions 25 et supérieures
HA_HMAC_MD4
AndroidWidget AndroidJava Non disponible.
Nouveauté 25
HA_HMAC_MD4
AndroidWidget AndroidJava Non disponible.
HA_HMAC_MD4
AndroidWidget AndroidJava Non disponible.
Famille MD5HA_HMAC_MD5_128
Versions 24 et supérieures
Famille MURMUR
Nouveauté 24
Famille MURMUR
Famille MURMUR
Versions 24 et supérieures
HA_MURMUR_1 : Algorithme Murmur version 1 : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_1 : Algorithme Murmur version 1 : hash résultat sur 32 bits
HA_MURMUR_1 : Algorithme Murmur version 1 : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2 : Algorithme Murmur version 2 : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_2 : Algorithme Murmur version 2 : hash résultat sur 32 bits
HA_MURMUR_2 : Algorithme Murmur version 2 : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_64A : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 64 bits
Nouveauté 24
HA_MURMUR_2_64A : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 64 bits
HA_MURMUR_2_64A : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 64 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_64B : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 32 bits
Nouveauté 24
HA_MURMUR_2_64B : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 32 bits
HA_MURMUR_2_64B : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_A : Algorithme Murmur version 2 incrémentiel : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_2_A : Algorithme Murmur version 2 incrémentiel : hash résultat sur 32 bits
HA_MURMUR_2_A : Algorithme Murmur version 2 incrémentiel : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_BIG_ENDIAN : Algorithme Murmur version 2 pour machine big-endian: hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_2_BIG_ENDIAN : Algorithme Murmur version 2 pour machine big-endian: hash résultat sur 32 bits
HA_MURMUR_2_BIG_ENDIAN : Algorithme Murmur version 2 pour machine big-endian: hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_2_ALIGNE : Algorithme Murmur version 2 pour machine alignée : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_2_ALIGNE : Algorithme Murmur version 2 pour machine alignée : hash résultat sur 32 bits
HA_MURMUR_2_ALIGNE : Algorithme Murmur version 2 pour machine alignée : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_3_32 : Algorithme Murmur version 3 : hash résultat sur 32 bits
Nouveauté 24
HA_MURMUR_3_32 : Algorithme Murmur version 3 : hash résultat sur 32 bits
HA_MURMUR_3_32 : Algorithme Murmur version 3 : hash résultat sur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_3_128_X86 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 32 bits
Nouveauté 24
HA_MURMUR_3_128_X86 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 32 bits
HA_MURMUR_3_128_X86 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 32 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 24 et supérieures
HA_MURMUR_3_128_X64 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 64 bits
Nouveauté 24
HA_MURMUR_3_128_X64 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 64 bits
HA_MURMUR_3_128_X64 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 64 bits
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Famille RIPEMDHA_HMAC_RIPEMD_128
AndroidWidget AndroidJava Non disponible.
HA_HMAC_RIPEMD_160
AndroidWidget AndroidJava Non disponible.
Famille SHAHA_HMAC_SHA_160
HA_HMAC_SHA_256
Versions 25 et supérieures
HA_HMAC_SHA_256_DOUBLE
Nouveauté 25
HA_HMAC_SHA_256_DOUBLE
HA_HMAC_SHA_256_DOUBLE
HA_HMAC_SHA_384
HA_HMAC_SHA_512
Versions 23 et supérieures
Famille SHA-3
Nouveauté 23
Famille SHA-3
Famille SHA-3
Versions 23 et supérieures
HA_SHA3_224
Nouveauté 23
HA_SHA3_224
HA_SHA3_224
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 23 et supérieures
HA_SHA3_256
Nouveauté 23
HA_SHA3_256
HA_SHA3_256
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 23 et supérieures
HA_SHA3_384
Nouveauté 23
HA_SHA3_384
HA_SHA3_384
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Versions 23 et supérieures
HA_SHA3_512
Nouveauté 23
HA_SHA3_512
HA_SHA3_512
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Versions 25 et supérieures
PHP Désormais disponible en PHP.
Nouveauté 25
PHP Désormais disponible en PHP.
PHP Désormais disponible en PHP.
Famille TIGERHA_HMAC_TIGER_128
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
HA_HMAC_TIGER_160
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
HA_HMAC_TIGER_192
AndroidWidget AndroidJavaPHP Non disponible.
AndroidWidget AndroidJava Non disponible.
Famille WHIRLPOOLHA_HMAC_WHIRLPOOL
AndroidWidget AndroidJava Non disponible.
  • Algorithmes MD4 / MD5 / SHA / RIPEMD : fonctions de hachage cryptographiques classiques.
  • Algorithmes TIGER / WHIRLPOOL : fonctions de hachage ayant de très bonnes propriétés cryptographiques optimisées pour le 64 bits (mais leur utilisation est possible en 32 bits).
    PHP Les algorithmes TIGER ne sont pas disponibles.
  • Versions 24 et supérieures
    Algorithme MURMUR : fonctions de hachage très rapides. C'est l'algorithme utilisé pour le "bloom filter" des portefeuilles bitcoin.
    Nouveauté 24
    Algorithme MURMUR : fonctions de hachage très rapides. C'est l'algorithme utilisé pour le "bloom filter" des portefeuilles bitcoin.
    Algorithme MURMUR : fonctions de hachage très rapides. C'est l'algorithme utilisé pour le "bloom filter" des portefeuilles bitcoin.
<Chaîne> : Chaîne de caractères (entre guillemets)
Chaîne sur laquelle sera effectuée le calcul. Ce paramètre peut contenir des caractères binaires.
<Clé secrète> : Chaîne de caractères (entre guillemets) ou Entier
Clé d'authentification du message.
  • Si un algorithme HMAC est utilisé, ce paramètre doit être une chaîne.
  • Versions 24 et supérieures
    Si un algorithme MURMUR est utilisé, la clé doit être un entier.
    Nouveauté 24
    Si un algorithme MURMUR est utilisé, la clé doit être un entier.
    Si un algorithme MURMUR est utilisé, la clé doit être un entier.
AndroidWidget AndroidJava Ce paramètre ne doit pas être une chaîne vide.
Remarques

Notes

  • Deux chaînes de caractères identiques auront, pour un même type d'algorithme, deux Hash identiques.
  • Le résultat du Hash peut contenir des caractères non affichables. Ces caractères ne pourront pas être vus lors de l'utilisation par exemple des fonctions Info ou Trace.

Fonction HashChaîne et UNICODE

  • Attention : Les fonctions de Hachage agissent au niveau des octets des chaînes de caractères. Le résultat pour un même type d'algorithme sera donc différent en UNICODE et en ANSI.
  • Développement multi-plateforme : Pour utiliser des Hash de chaînes entre plusieurs plateformes (par exemple un hash généré en iOS et vérifié en Android ou sur Windows), il ne faut pas utiliser des chaînes Unicode. En effet, les chaînes Unicode n'ont pas le même format selon les plate-formes. Dans ce cas, il est conseillé d'utiliser des chaînes au format ANSI ou UTF 8 (et de convertir les chaînes Unicode si nécessaire).

Disponibilité des algorithmes

PHP
  • Les algorithmes disponibles dépendent de la configuration du serveur PHP.
  • Les algorithmes TIGER ne sont pas disponibles.Les algorithmes SHA-3 ne sont pas disponibles.
PHP Les algorithmes disponibles dépendent de la configuration du serveur PHP (présence de l'extension 'mhash', version 5 de PHP avec sa fonction native hash, etc).
AndroidWidget AndroidJava Seuls les algorithmes suivants sont supportés :
  • HA_MD5_128
  • HA_SHA_160, HA_SHA_256, HA_SHA_384, HA_SHA_512
  • HA_HMAC_MD5_128
  • HA_HMAC_SHA_160, HA_HMAC_SHA_256, HA_HMAC_SHA_384, HA_SHA_HMAC_512
  • Versions 25 et supérieures
    HA_MD4
    Nouveauté 25
    HA_MD4
    HA_MD4
  • Versions 25 et supérieures
    HA_SHA_256_DOUBLE
    Nouveauté 25
    HA_SHA_256_DOUBLE
    HA_SHA_256_DOUBLE
  • Versions 25 et supérieures
    HA_HMAC_SHA_256_DOUBLE
    Nouveauté 25
    HA_HMAC_SHA_256_DOUBLE
    HA_HMAC_SHA_256_DOUBLE
Liste des exemples associés :
Les fonctions de Hashage Exemples unitaires (WINDEV) : Les fonctions de Hashage
[ + ] Utilisation des fonctions de hashage.
Les fonctions HashFichier et HashChaîne permettent de calculer une clé de Hashage pour une chaîne ou pour un fichier.
Cette clé de Hashage permet par exemple de :
- Vérifier que le fichier est intègre suite à un transfert par exemple
- Rechercher des doublons de fichiers
- ...
Classification Métier / UI : Code neutre
Composante : wd250com.dll
Version minimum requise
  • Version 11
Documentation également disponible pour…
Commentaires
Problème lié au MD5 resultant différents : code complet
PROCÉDURE passwordMD5(gPass)

lehash est un Buffer=HashChaîne(HA_MD5_128,ChaîneVersUTF8(gPass))
md5 est une chaîne=""

POUR i=1 _À_ Taille(lehash)
md5+=NumériqueVersChaîne(Asc(lehash[[i]]),"02x")
FIN


RENVOYER md5
Zakariae OUALI
31 mai 2019