Is there an easy way to check whether two .p12 files, one for a server and one for a client, should be mutually acceptable to each other for an SSL handshake with authorization (including client authorization) required on both sides? Each of these .p12 files contains both trust managers and key managers.
In particular, what would cause an error like this on the server side?
SEND TLSv1 ALERT: fatal, description = bad_certificate
WRITE: TLSv1 Alert, length = 2
called closeSocket()
handling exception: javax.net.ssl.SSLHandshakeException: null cert chain
In TLS handshake first client verifies received server’s certificate, and after, depending on certificate algorithm and other parameters, sends his own.
In your situation it seems that server received client’s certificate and denied it, probably because of empty certificate chain (i.e. client’s certificate is self signed?).