当我们打开浏览器时,在浏览器的最上方都有一个地址栏,这个地址栏就是输入网址的地方,而输入网址时,大家都留意过网址前面的前缀吗?在以前,网址的前缀一般都是http,而现在大家发现没有,网址的前缀都变成了https。那么https和http的区别是什么?https又有哪些优缺点呢?其实https就是网站的加密文本协议而已。现在大家都比较注重网站的安全性,那么这个https协议就成了大家使用最多的一种超文本协议规则,想知道更详细内容的朋友,下文就来给大家详细介绍一番。
https和http的区别是什么?
1、https是安全协议连接,在信息传输上更为保密和安全,而http则安全性较低,会发生信息泄露和被劫持篡改。
2、http使用的数据端口是80端口,而https使用的数据端口是443。
3、http传输协议的不安全性是因为它作用于应用层,呈现在用户面前的信息可能与实际传输的信息不一致,而http传输协议则直接保护了传输层的数据。
4、http无法对应用层的结果进行加密,而https则是在对传输中的数据进行加密,最后再应用层解密来呈现显示结果。
5、https连接前需要下载数字证书来确认服务器的真实性,避免其它劫持者伪装服务器对客户机的信息进行劫持和篡改。
https如何实现数据的安全传输的?
既然http是明文传输的,要想安全传输,给它加个密不就完了吗?说的没错,事实上也是这么干的,可加密这事儿,也并没那么简单,流程是咋样的,给你简单捋一捋。
加密,自然需要解密,而在我们计算机密码学中有几种常用的加密方式,比如,一种叫对称加密,意思加密和解密用的是同一把钥匙;还有一种叫非对称加密,加密和解密用的是不同的钥匙,公钥加密,私钥解密,私钥加密,公钥解密,反正麻烦的很。
无论使用上述哪种加密方式,都会涉及到传输“钥匙”的过程,否则你加了密,你不把钥匙给对方,对方怎么看的懂你的数据呢?所以这把“钥匙”要如何在网络上不被别人窃取的情况下安全的给到对方成了关键中的关键。
https的做法就是使用“数字证书”,可是,又如何保证数字证书的安全呢?有时候,在虚拟的网络世界中,光有技术是搞不定的,终归是要回到现实中的实体管制。
所以,需要某一个(些)被大家认可的权威机构(通常叫ca,catificate authority)来做这一件事情,权威机构下发的证书本身默认就是得到了操作系统、浏览器等信任的。权威机构亲自给你制作证书,然后你将证书放到服务器上,后续就完美的解决了所有信任问题。
具体保证数据安全传输的整个过程大致如下,看完可能会有疑惑为什么要大费周章的去搞一个数据加密的密钥,主要原因是因为对称密钥算法加密的数据在解密时会更快一些。
权威机构给的证书是经过权威机构私钥加密的,证书中包含服务器的公钥,服务器将权威机构给的证书下发给客户端,证书解密的公钥则默认内置在windows、linux、macos等操作系统中,操作系统上的应用(客户端)使用内置这个的公钥对证书进行解密,得到服务器的公钥,然后生成一个用于加密数据的密钥,同时对数据进行加密,再用服务器的公钥加密这个密钥,发给服务器,服务器使用自己的私钥解密,得到加密数据的密钥,然后用此密钥解密收到的数据,便大功告成了。
https的优缺点有哪些?
一、https的优点:
1、使用https协议可认证用户和服务器,确保数据发送到正确的客户机和服务器。
2、https协议是由ssl+http协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全,可防止数据在传输过程中不被窃取、改变,确保数据的完整性。
3、https是现行架构下最安全的解决方案,虽然不是绝对安全,但它大幅增加了中间人攻击的成本。
4、https的站点会被优先收录,将之前的站点内容全部永久的重定向到https的新站点上,而对于权重和之前的收录不会有任何影响,反而会收录起到更好的作用,节省蜘蛛资源。
二、https的缺点:
1、ssl的专业证书可能需要花费一定费用,功能越强大的证书费用越高。
2、需要站点投入人力成本,技术改造视站点情况而定。
上文就是https和http的区别介绍了,https对于提高现在的互联网安全性非常有帮助,如果你的网站还在使用http协议,建议你赶紧更换成https,这样你网站的加密内容才不会轻易的被人所看到。而更换http协议,就需要用到ssl证书,这方面可以去找相关的技术人员,让他们帮你更换一下证书。