Ho trovato questa spiegazione su come funziona un'autenticazione client durante SSL- Stretta di mano . Quindi, secondo Oracle, l'autenticazione client funziona come segue:
- Il client invia il suo certificato, i dati casuali e una firma di tali dati casuali sul server.
- Server verifica la firma dei dati casuali utilizzando la chiave pubblica nel certificato.
- Il server controlla il periodo di validità del certificato.
- Il server verifica se la CA nel certificato è una CA attendibile.
- Il server utilizza la chiave pubblica della CA per verificare la firma nel certificato.
Dopo questi cinque passaggi l'utente è autenticato.
Domanda: Se un attaccante ottiene il certificato utente, i dati casuali e la firma di tali dati casuali, l'attaccante è in grado di avviare un attacco di replay?
Penso che i dati casuali debbano essere chellange per prevenire contro un replay-attack. Quindi qual è il modo comune per autenticare un utente utilizzando un certificato client?