If I have a TLS authentication process between two entities A and B, like the one outlined below, what would happen to it, if I remove the client's (A) certificate from it? In this case, the certificate of the client is defined as {A,pk(A)}inv(pk(s))
.
A->B: A,NA,Sid,PA
B->A: NB,Sid,PB,
{B,pk(B)}inv(pk(s))
A->B: {A,pk(A)}inv(pk(s))
{PMS}pk(B),
{hash(NB,B,PMS)}inv(pk(A)),
{|hash(prf(PMS,NA,NB),A,B,NA,NB,Sid,PA,PB,PMS)|}
clientK(NA,NB,prf(PMS,NA,NB))
B->A: {|hash(prf(PMS,NA,NB),A,B,NA,NB,Sid,PA,PB,PMS)|}
serverK(NA,NB,prf(PMS,NA,NB))
Of course the client loses it's way of authenticating itself with the server (B), but in what way exactly does this make the message exchanges vulnerable to attacks?
Another way to frame the question would be by looking at the Wiki description of the TLS handshake. In the client-authenticated TLS handshake, what would happen if we omit the client certificate?