ADELIA |
VADELIA |
SADELIA |
WADELIA |
EADELIA |
(I/B) |
(I/B) |
(B) |
(I/B) |
(B) |
Description
Permet de retourner le résultat de l'application de l'algorithme de hachage spécifié à la variable passée en paramètre.
Le résultat est une chaîne de caractères encodée en hexadécimal, de longueur maximale de 128 caractères dans l'implémentation actuelle (avec l'algorithme SHA-512).
La fonction autorise un résultat jusqu'à 512 caractères pour permettre une marge d'évolution.
Syntaxe
Résultat = &HACHAGE(IdVar;Algorithme[;Normaliser])
Paramètres
Définition |
Contenu |
Contrôles |
|
Résultat |
Variable alphanumérique |
Hachage de la variable, encodé en hexadécimal ou *BLANK en cas d'erreur (algorithme non supporté...). |
|
IdVar |
Variable du programme |
Données à traiter |
Paramètre obligatoire. |
Algorithme |
Variable ou constante alphanumérique. |
Nom de l'algorithme de hachage. Les valeurs valides dépendent de la plateforme d'exécution et de sa configuration. Les algorithmes MD5, SHA-1, SHA-256, SHA-384 et SHA-512 sont supportés sur toutes les plateformes. |
Paramètre obligatoire. |
Normaliser |
Constante numérique. Valeurs acceptées : 0 et 1. |
Indique s'il faut normaliser le résultat sur toutes les plateformes. Si cette option est activée (valeur 1), les chaînes de caractère sont converties en UTF-8 avant le traitement, ce qui renverra le même résultat sur toutes les plateformes. Les données numériques de type binaire (num_bin_2, num_bin_4 et num_bin_8) sont converties pour respecter l'ordre des octets big-endian. Si cette option est désactivée (valeur 0), les données ne sont pas converties et le résultat dépend de la page de code de la plateforme (ANSI, UTF-16LE, UTF-16BE ou EBCDIC en fonction de la plateforme) pour les données caractère, ou de l'ordre des octets (low endian ou big endian) de la plateforme pour les données numériques binaires. A noter que l'encodage des données décimales ou date/heure est différent en fonction de la précision et de la plateforme, et n'est pas pris en compte. Si le paramètre est omis, l'option est active. |
Paramètre optionnel. |
Par exemple
Soit "SIGNATURE" une variable alphanumérique de 128 caractères et "MA_VARIABLE" une variable du programme :
SIGNATURE = &HACHAGE(MA_VARIABLE;'SHA-512')
Si on veut hacher en non normalisé un contenu alphanumérique :
SIGNATURE = &HACHAGE(MA_VARIABLE_ALPHA;'SHA-512' ; 0)
Liste des fonctions prédéfinies par thème
↑ Haut de page Copyrights Ι ©Hardis Group 2025 - Toute représentation ou reproduction intégrale ou partielle faite sans le consentement écrit d'Hardis Group est illicite.