https通信过程、签名及证书

https://www.jianshu.com/p/887859661be6

HTTPS比HTTP安全,它的安全在于通信过程被加密。然而加密算法是用对称加密,也就是说,客户端和服务端采用一个相同的密钥。为了让双方得到这个密钥,前期就有一个很重要的工作:协商密钥
现在我们简单模拟一下通信过程:

  • 客户端:hi,我准备跟你(xx.com)建立HTTPS通信。
  • 服务端:好的,我就是xx.com,这是我的证书,你验证一下。
  • 客户端:验证通过了,你的确是xx.com,我把密钥发给你,下面的通信咱们就加密了。
  • 服务端:s&&(*3u247(
  • 客户端:(&DY&#%%&#
1)重要的过程:https要证明自己是合法的,证书+链式验证 2)数字证书的组成
  • 公钥:Public-Key
  • 签名:Signature(签名算法)
  • 签名算法: Signature Algorithm: sha256WithRSAEncryption
  • 证书颁布机构:Issuer
  • 过期时间:Validity
  • 其他...
3)签名算法的签名、校验过程 //签名 sign = RSA_Encrypt(sha256(content), privateKey)   //校验签名 sha256_Content =  RSA_Decrypt(sign, publicKey) sha256_Content ?= sha256(content)
  • 在非对称加密体系中,私钥用来签名,公钥用来校验签名。
    • https通信过程、签名及证书
    • ROOT必须可靠可信任,并且证书链不能断掉(否则验证失败)
上一篇:Windows自带MD5 SHA1 SHA256命令行工具


下一篇:14.小程序使用sha256加密