Diciamo che abbiamo un sistema con chiavi condivise forti (non passphrase), e stiamo cercando di firmare i messaggi inviati dal server che saranno visibili a un utente malintenzionato. Per esempio. memorizzazione dello stato di sessione in un cookie firmato.
È sicuro utilizzare HMAC direttamente con la chiave condivisa? I.e. la funzione sarà determinante e l'attaccante può semplicemente creare una collezione di coppie [messaggio, MAC]; può compromettere la chiave condivisa?
In caso contrario, è sicuro usare hmac_key = HMAC (salt, shared key) , dove sale è nuovo per ogni richiesta e inviato insieme al MAC? O ho bisogno di più iterazioni di questo / PBKDF2?
Suppongo di voler sapere se usare una chiave salata per HMAC fornisce una protezione reale della chiave, non solo sembra più sicuro.