首页 > 代码库 > HTTPS加密通信原理及数字证书系统

HTTPS加密通信原理及数字证书系统

https加密通信原理:

  公钥私钥成对,公钥公之于众,私钥只有自己知道。

  用公钥加密的信息只能由与之相对应的私钥解密。

  甲给乙发送数据时,甲先用乙的公钥加密这段数据,再用自己的私钥对这段数据的特征数据(数字指纹,通过HASH函数生成)进行RSA运算形成签名。乙接到数据后,先用自己的私钥解密数据,并用甲的公钥对甲的签名进行验证(解出数字指纹,与接收到的数据的数字指纹做对比)。如此,可保证发信人无法抵赖曾发过该信息,也确保报文在传递过程中不会被篡改。

CA证书:

  CA证书是指CA颁发给用户的证书,其中包含用户信息、用户公钥、CA的签名。

  网上公众用户都信任CA(签证机关),也知道CA公钥(下载CA自己的证书,其中包含有CA信息和CA公钥)。

  用户想得到一个CA证书时,向CA申请。CA判明申请者身份后,为他分配一个公私钥对,并且将该公钥与申请者的身份信息绑在一起,用CA私钥为之签名,便形成证书发给申请者。申请者自己保管私钥,不对外公开。

  CA证书实际是CA签发的对用户公钥的认证。

  用户收到一个证书,想确认是不是CA证书,就使用CA公钥验证该证书的签名,验证通过,就认为该证书是CA证书,证书中的用户信息和用户公钥是经过CA认证的,是可信的。

根证书:

  CA自己的证书,其中包含CA自己的公钥。用户因信任这个证书,信任其有中的公钥,才信任使用此公钥验证的签名。

  这个证书是信任链的根,是自证明的。

HTTPS加密通信原理及数字证书系统