Rileva se le chiavi AES e hmac non sono valide

1

Ho un server che ha un valore configurato di chiave AES e HMAC. Anche il client dovrebbe avere le stesse chiavi.

Quando il client invia una richiesta, il server interpreta questa richiesta e legge il messaggio.

Ora, quando il client ha le chiavi AES e HMAC errate, il server interpreterà la richiesta dal client, ma ne ricaverà il messaggio sbagliato poiché le chiavi AES e HMAC sono diverse.

C'è un modo per il server di dire se le chiavi AES e HMAC usate dal client sono sbagliate? Da quanto ho capito, il server riceverà il messaggio sbagliato dopo aver decodificato la richiesta del client, ma non può sapere se le chiavi utilizzate dal client sono sbagliate.

    
posta Anand 11.06.2015 - 17:59
fonte

1 risposta

1

Il server non dovrebbe mai nemmeno tentare di decodificare il messaggio. Se le chiavi HMAC sono diverse tra il server e il client, l'autenticazione dovrebbe fallire (il server non sarà in grado di creare lo stesso MAC dal testo cifrato e dalla chiave del server, poiché la chiave del server non è uguale alla chiave del client e il processo dovrebbe interrompersi.

Ora, se stai facendo qualcosa di sub-ottimale come MAC-then-Encrypt, o MAC-and-Encrypt, hai altri problemi, ma non sarai ancora in grado di autenticare il testo in chiaro poiché né il testo il MAC corrisponderà e dovresti sapere a quel punto che hai un problema.

    
risposta data 11.06.2015 - 18:06
fonte

Leggi altre domande sui tag