|
|
|
|
- Fonction HashVérifieChaîne et UNICODE
HashVérifieChaîne (Fonction) En anglais : HashCheckString Vérifie le Hash d'une chaîne de caractères pour un type d'algorithme défini. Il est possible de vérifier : - un hash simple.
- un hash avec authentification de message.
- un hash obtenu par un algorithme de dérivation de clé qui prend en paramètre un sel (PBKDF2).
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. Syntaxe
Vérifier un hash simple Masquer les détails
<Résultat> = HashVérifieChaîne(<Type d'algorithme> , <Chaîne> , <Hash>)
<Résultat> : Booléen - Vrai si le résultat du hachage de la chaîne <Chaîne> par l'algorithme <Type d'algorithme> correspond au paramètre <Hash>,
- Faux dans le cas contraire.
<Type d'algorithme> : Constante de type Entier Indique le type d'algorithme utilisé lors du hachage de la chaîne <Chaîne> :
| | Famille DJB2 (Bernstein) | | Famille MD4 | HA_MD4 | Famille MD5 | HA_MD5_128 Attention : ce type d'algorithme est actuellement déprécié. | Famille MURMUR | - HA_MURMUR_1 : Algorithme Murmur version 1 : hash résultat sur 32 bits
- HA_MURMUR_2 : Algorithme Murmur version 2 : hash résultat sur 32 bits
- HA_MURMUR_2_64A : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 64 bits
- HA_MURMUR_2_64B : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 32 bits
- HA_MURMUR_2_A : Algorithme Murmur version 2 incrémentiel : 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
- HA_MURMUR_2_ALIGNE : Algorithme Murmur version 2 pour machine alignée : hash résultat sur 32 bits
- HA_MURMUR_3_32 : Algorithme Murmur version 3 : hash résultat sur 32 bits
- HA_MURMUR_3_128_X86 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 32 bits
- HA_MURMUR_3_128_X64 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 64 bits
| Famille RIPEMD | - HA_RIPEMD_128
- HA_RIPEMD_160
| Famille SHA | - HA_SHA_160 (aussi appelé SHA-1)
- HA_SHA_256 (spécifications FIPS PUB 198)
- HA_SHA_256_DOUBLE
- HA_SHA_384
- HA_SHA_512
| Famille SHA-3 | - HA_SHA3_224
- HA_SHA3_256
- HA_SHA3_384
- HA_SHA3_512
| Famille TIGER | - HA_TIGER_128
- HA_TIGER_160
- HA_TIGER_192
| Famille WHIRLPOOL | HA_WHIRLPOOL | Famille CKSUM | - HA_CKSUM_8
- HA_CKSUM_16
- HA_CKSUM_32
- HA_CKSUM_64
|
- 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).
- 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.
- 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 MURMUR : fonctions de hachage très rapides et ne possédant pas de propriétés cryptographiques. C'est l'algorithme utilisé pour le "bloom filter" des portefeuilles bitcoin.
<Chaîne> : Chaîne de caractères Chaîne pour laquelle le Hash doit être vérifié. <Hash> : Chaîne de caractères Hash de la chaîne à contrôler. Ce Hash doit être le résultat de la fonction HashChaîne précédemment appelée pour la chaîne <Chaîne> sur l'algorithme <Type d'algorithme>.
Vérifier un hash avec authentification de message (algorithme HMAC/algorithme MURMUR) Masquer les détails
<Résultat> = HashVérifieChaîne(<Type d'algorithme> , <Chaîne> , <Hash> , <Clé secrète>)
<Résultat> : Booléen - Vrai si le résultat du hachage de la chaîne <Chaîne> par l'algorithme <Type d'algorithme> correspond au paramètre <Hash>,
- Faux dans le cas contraire.
<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> :
| | Famille MD4 | HA_HMAC_MD4
| Famille MD5 | HA_HMAC_MD5_128 Attention : ce type d'algorithme est actuellement déprécié. | Famille MURMUR | - HA_MURMUR_1 : Algorithme Murmur version 1 : hash résultat sur 32 bits
- HA_MURMUR_2 : Algorithme Murmur version 2 : hash résultat sur 32 bits
- HA_MURMUR_2_64A : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 64 bits
- HA_MURMUR_2_64B : Algorithme Murmur version 2 : hash résultat sur 64 bits optimisé pour processeurs 32 bits
- HA_MURMUR_2_A : Algorithme Murmur version 2 incrémentiel : 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
- HA_MURMUR_2_ALIGNE : Algorithme Murmur version 2 pour machine alignée : hash résultat sur 32 bits
- HA_MURMUR_3_32 : Algorithme Murmur version 3 : hash résultat sur 32 bits
- HA_MURMUR_3_128_X86 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 32 bits
- HA_MURMUR_3_128_X64 : Algorithme Murmur version 3 : hash résultat sur 128 bits optimisé pour processeur 64 bits
| Famille RIPEMD | - HA_HMAC_RIPEMD_128
- HA_HMAC_RIPEMD_160
| Famille SHA | - HA_HMAC_SHA_160
- HA_HMAC_SHA_256
- HA_HMAC_SHA_256_DOUBLE
- HA_HMAC_SHA_384
- HA_HMAC_SHA_512
| Famille SHA-3 | - HA_HMAC_SHA3_224
- HA_HMAC_SHA3_256
- HA_HMAC_SHA3_384
- HA_HMAC_SHA3_512
| Famille TIGER | - HA_HMAC_TIGER_128
- HA_HMAC_TIGER_160
- HA_HMAC_TIGER_192
| Famille WHIRLPOOL | HA_HMAC_WHIRLPOOL |
- 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).
- Algorithme MURMUR : fonctions de hachage très rapides et ne possédant pas de propriétés cryptographiques. C'est l'algorithme utilisé pour le "bloom filter" des portefeuilles bitcoin.
<Chaîne> : Chaîne de caractères Chaîne pour laquelle le Hash doit être vérifié. <Hash> : Chaîne de caractères Hash de la chaîne à contrôler. Ce Hash doit être le résultat de la fonction HashChaîne précédemment appelée pour la chaîne <Chaîne> sur l'algorithme <Type d'algorithme>. <Clé secrète> : Chaîne de caractères ou Entier Clé d'authentification du message. Cette clé doit être identique à celle utilisée pour calculer le Hash. Remarques Fonction HashVérifieChaîne et UNICODE Développement multiplateforme : 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). Classification Métier / UI : Code métier Composante : wd290com.dll
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|