PHP - Funzione Hash hmac ()

Definizione e utilizzo

Il hash_hmac() viene utilizzata per generare un valore hash con chiave utilizzando il metodo HMAC.

HMAC è l'acronimo di codice di autenticazione del messaggio hash con chiave o codice di autenticazione del messaggio basato su hash. Utilizza la funzione hash crittografica come md5, sha-256 e una chiave segreta per restituire l'hash digest del messaggio dei dati forniti.

Sintassi

hash_hmac ( string $algo , string $data , string $key [, bool $raw_output = FALSE ] ) : string

Parametri

Suor n Parametro e descrizione
1

algo

Nome dell'algoritmo di hashing. C'è una grande lista di algoritmi disponibili con hash, alcuni importanti sono md5, sha256, ecc.

Per ottenere l'elenco completo degli algoritmi supportati controlla hash_hmac_algos ()

2

data

I dati che vuoi sottoporre ad hashing.

3

key

Chiave segreta per generare la variabile HMAC del digest del messaggio.

4

raw_output

Per impostazione predefinita, il valore è falso e quindi restituisce valori esadecimali minuscoli. Se il valore è vero, restituirà dati binari non elaborati.

Valori restituiti

Il hash_hmac() la funzione restituisce una stringa contenente il digest del messaggio calcolato che sarà sotto forma di esiti minuscoli se raw_output è falso altrimenti restituirà dati binari grezzi.

Versione PHP

Questa funzione funzionerà dalla versione PHP successiva alla 5.1.2.

Esempio 1

Utilizzando hash_hmac () -

<?php
   echo hash_hmac('md5', 'Welcome to Tutorialspoint', 'any_secretkey');
?>

Produzione

Questo produrrà il seguente risultato:

3e89ca31da24cb046c9d11706be688c1

Esempio 2

Utilizzo di hash_hmac () con l'algoritmo ripemd128 -

<?php
   echo hash_hmac('ripemd128', 'Welcome to Tutorialspoint', 'any_secretkey');
?>

Produzione

Questo produrrà il seguente risultato:

c9b5c68b72808f31b4524fbd46bf87d0

Esempio 3

Per generare hash_hmac con raw_output come true -

<?php
   echo hash_hmac('ripemd128', 'Welcome to Tutorialspoint', 'any_secretkey', true);
?>

Produzione

Questo produrrà il seguente risultato:

ɵƋr��1�RO�F���