Chi ha detto che il server ha per fidarsi di te? Per molti siti HTTPS, un server fa la stessa cosa per tutti; Google è felice di fare una ricerca per chiunque, e nulla che ti manda è necessariamente anche un po 'sensibile dal loro punto di vista. Se a Google non interessa chi sei, non c'è letteralmente alcun motivo per fare l'autenticazione del client.
Se si desidera l'autenticazione client, non è ancora necessario farlo tramite TLS. Una volta che hai un canale sicuro per un'altra parte, puoi inviare informazioni lungo quel canale, quindi una volta autenticato il server il client può semplicemente autenticarsi inviando una password. Questo non funziona per il server perché ci sono in genere molti client, ognuno dei quali avrebbe bisogno di conoscere la password, e quindi potrebbe impersonare il server su un altro client. Al contrario, non è un grosso problema se il server può impersonare un client, perché i server tendono ad essere più affidabili dei client (prenderanno chiunque come cliente, il contrario non è vero). Se il client invia una password, il server deve essere già autenticato, ecco perché deve avvenire in TLS, mentre l'autenticazione del client non deve avvenire in quel momento.
Infine, poiché le password fanno funzionano correttamente per l'autenticazione del client e sono più facili da gestire per gli utenti, la maggior parte dei siti le usa. I certificati dei client TLS delle CA hanno comunque poco senso nella maggior parte dei casi; se la pseudonimia va bene, puoi semplicemente fare in modo che le persone caricino direttamente un certificato cliente di loro scelta, se non hai di solito un emittente più autorevole di una qualsiasi CA commerciale (cioè ha emittente di fiducia uno , che è spesso solo te stesso)