小弟我一直搞不明白https

我一直搞不明白https
本人新手,请高手解惑。

1、网上找了很多客户端模拟浏览器post数据到https服务端的。其中有一文<<VC实现单向认证SSL连接POST数据源码>>,案此例就没调试成功,无法正确将数据投递出去(fiddler抓包)

2、所谓服务端(web)要求客户端证书(ie),这个客户端证书是什么?不是只有服务端证书,然后客户端校验后,发送私钥构成密文传输么?

------解决方案--------------------
两端的证书都是为了认证身份、生成密钥用的,通常我们使用的https都是服务器证有x509证书,不需要客户端的,客户端用服务器证书中的公钥来加密双方协商使用的密钥.
如果客户端在做SSL handshake 时双方协商都需要证书的话,就是双向认证,客户端也要提供x509证书.