http和https有什么区别?
是HTTP超文本传输协议的缩写。它的开发是万维网联盟和IETF(互联网工程任务组)[6]合作的结果。
那么,https解决了哪些问题呢?
HTTPS(安全超文本传输协议)安全超文本传输协议
它是一个安全的通信通道,基于HTTP开发,用于在客户端计算机和服务器之间交换信息。它使用安全套接字层(SSL)来交换信息。简单来说就是HTTP的安全版本。
它由网景公司开发,内置于浏览器中。它用于压缩和解压缩数据,并返回从网络上传和发送回来的结果。HTTPS实际上应用了Netscape的安全套接字层(SSL ),作为HTTP应用层的子层。(HTTPS像HTTP一样使用端口443而不是端口80与TCP/IP通信。)SSL使用40位关键字作为RC4流加密算法,适用于商业信息的加密。HTTPS和SSL支持X.509数字认证,用户可以在必要时确认发送者是谁。
HTTPS和HTTP的区别:
Https协议需要向ca申请证书,一般免费证书很少,需要付费。
Http是超文本传输协议,信息以纯文本传输,https是安全的ssl加密传输协议。
Http和https使用完全不同的连接方式和不同的端口,前者是80,后者是443。
http连接简单且无状态。
HttpS协议是SSL HTTP协议搭建的网络协议,可以加密认证,比HTTP协议更安全。
HTTPS解决的问题:
1.相信主持人。Https服务器必须向CA申请证书,以证明服务器使用的类型。只有当相应服务器的证书被更改时,客户端才会信任辅助主机。所以目前所有的银行系统网站和关键应用都是https。通过信任证书,客户信任主机。其实这样效率很低,只是银行更注重安全性。这对我们来说没有任何意义。我们的服务器采用的证书是自己颁发的或者是从公共场所颁发的,而客户端是自己人,所以我们绝对信任这个服务器。
2.通信过程中的数据泄漏和篡改。
(1)一般来说,https意味着服务器有证书,
a)主要目的是确保服务器是他所声称的那样。这和第一点是一样的。
b)服务器和客户端之间的所有通信都是加密的。
I .具体地,客户端生成对称密钥,并通过服务器的证书交换该密钥。一般意义上的握手过程。
二。所有信息交流加起来都是加密的。即使第三方拦截了他们,也没有任何意义,因为他没有钥匙。当然,篡改是没有意义的。
(2)在少数对客户有要求的情况下,客户也需要有证书。
a)这里的客户端证书实际上类似于个人信息表示时。除了用户名/密码,还有CA认证的身份,应该是一般情况下别人无法模拟的个人证书,这样可以更深入的确认自己的身份。
b)目前少数个人银行的专业版是这么做的,具体的凭证可能是用u盘作为备份载体。
HTTPS一定很乏味。
a)最初简单的http协议,一个get和一个response。因为https需要返回密钥并确认加密算法,单次握手需要6/7次往返。
I .在任何应用中,过多的往返肯定会影响性能。
b)接下来是具体的http协议。每个响应或请求都需要客户端和服务器对会话内容进行加密/解密。
一、对称加密/解密虽然效率比较高,但是还是太消耗CPU。所以有专门的SSL芯片。如果CPU可靠性比较低,肯定会降低性能,无法服务更多的请求。
二。加密数据量的影响。所以才会有这么多的安全认证小技巧。