Sì, gli hash possono essere usati insieme a una chiave condivisa per autenticare un messaggio (questo tipo di H basato su ash M essage A l'autenticazione C ode è l'HMAC spesso citata nei protocolli crittografici). Alcuni dettagli sono qui . Questo fornisce anche l'autenticazione dei messaggi (nel tuo schema, Mallory potrebbe modificare T2 e Bob non lo saprebbe, ciò non può accadere così facilmente con HMAC). Gli hash (anche se non HMAC) sono anche usati in autenticazione digest HTTP .
Si noti che il solo fatto che Bob invii un nonce e che abbia Alice quindi invii H (key + nonce) apre la possibilità di un attacco di testo in chiaro scelto sull'hash; questo può o non può funzionare, ma in genere funzionerà almeno se Mallory potrebbe inviare un nonce vuoto (con molti hash comuni, se H (m) è noto, allora H (m + x) è facile da trovare per ogni x), ed è generalmente meglio cercare di evitare la possibilità. Quindi, l'autenticazione digest ha un altro componente nella risposta (l'URI richiesto) e può essere implementato per avere un nonce fornito da Alice.