HMAC
Une fonction de hachage à clé; dans les jeux prouvablement équitables, HMAC-SHA256 combine la graine serveur avec la graine client et le nonce.
HMAC (code d'authentification de message basé sur le hachage) est une façon standard de combiner une clé secrète avec un message au moyen d'une fonction de hachage. HMAC-SHA256 utilise SHA-256 et produit une sortie de 32 octets.
Comment il est utilisé dans les jeux prouvablement équitables
Dans le système le plus courant, la graine serveur est la clé HMAC et le message est composé de la graine client, du nonce et d'un numéro de ronde, séparés par des deux-points :
HMAC-SHA256(serverSeed, clientSeed:nonce:round)
Les 32 octets de sortie sont divisés en 8 groupes de 4 octets. Chaque groupe devient un nombre à virgule flottante entre 0 et 1 en traitant les octets comme une fraction en base 256 : byte1/256 + byte2/256^2 + byte3/256^3 + byte4/256^4. Les jeux transforment ces nombres en résultats.
Pourquoi HMAC plutôt qu'un simple hachage
HMAC est conçu exactement pour ce cas, soit combiner une clé secrète avec une entrée publique, et il résiste aux faiblesses d'extension de longueur que peut avoir un simple hachage de chaînes concaténées.
Remarque
Ce ne sont pas tous les casinos qui utilisent exactement ce format. Certains inversent la clé et le message, ajoutent des champs ou utilisent une conversion différente. La vérification doit suivre la documentation du casino.