HTTP和HTTPS

159 阅读2分钟

image.png 很显而易见http和https不只是多了个s,还多了一个安全层。除了安全层他俩一样啊。

概念:

HTTP:

超文本传输协议,是互联网上广泛应用的一种网络协议,默认端口号是80,通过明文传输,安全性差,性能强。

HTTPS:

http+安全层

HTTPS的安全层是啥?

SSL(Secure Sockets Layer 安全套接字协议),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层与应用层之间对网络连接进行加密。(以上内容来自百度百科)。 我理解的就是SSL=对称加密+非对称加密+CA认证

对称加密:加密与解密用的是同样的密钥,效率高。但由于需要密钥在网络中传输,所以安全性很低

非对称家吗:加密与解密的密钥是一对二(公钥和私钥),公钥可以发送给任何请求的人,私钥只能由一方安全保管。公钥加密需要对应的私钥解密。私钥加密需要公钥解密。加密解密的算法复杂导致的性能低,安全性能高。

解决的办法就是将对称加密的密钥通过非对称加密的公钥进行加密,接收方使用私钥解密后获取对称加密的密钥,双方就可以安全的用对称加密通信,但是非对称加密也是有弊端的,既然公钥可以发送任何人,那就存在不安全隐患。届时都使用CA证书,确认对方身份,岂不更安全?

这里插播一段关于CA证书的描述,现将用户的个人信息和发送信息通过hash算法得到这部分的信息摘要,在用CA的私钥加密得到数字签名。这个数字签名加上原始的用户信息合并得到数字证书即CA证书

1271623900328_.pic.jpg

1281623901550_.pic.jpg

1291623902042_.pic.jpg 有图片好理解一些,这就是确认身份以及内容是否有差异。

总结

http和https的区别

  • https协议需要到ca申请证书,一般免费证书较少,成本高。
  • http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
  • http的连接很简单,是无状态的;https协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
  • http默认端口是80, https是443。 (以上内容个人理解如有异议可指出互讨)