HTTPS是什么意思?HTTP与HTTPS的区别
⼀、什么是 HTTPS?
HTTPS (基于安全套接字层的超⽂本传输协议 或者是 HTTP over SSL) 是⼀个 Netscape 开发的 Web 协议。
你也可以说:HTTPS = HTTP + SSL
HTTPS 在 HTTP 应⽤层的基础上使⽤安全套接字层作为⼦层。
⼆、为什么需要 HTTPS ?
超⽂本传输协议 (HTTP) 是⼀个⽤来通过互联⽹传输和接收信息的协议。HTTP 使⽤请求/响应的过程,因此信息可在服务器间快速、轻松⽽且精确的进⾏传输。当你访问 Web 页⾯的时候你就是在使⽤ HTTP 协议,但 HTTP 是不安全的,可以轻松对窃听你跟 Web 服务器之间的数据传输。在很多情况下,客户和服务器之间传输的是敏感歇息,需要防⽌未经授权的访问。为了满⾜这个要求,⽹景公司(Netscape)推出了HTTPS,也就是基于安全套接字层的 HTTP 协议。
三、HTTP 和 HTTPS 的相同点
⼤多数情况下,HTTP 和 HTTPS 是相同的,因为都是采⽤同⼀个基础的协议,作为 HTTP 或 HTTPS 客户端——浏览器,设⽴⼀个连接到Web 服务器指定的端⼝。当服务器接收到请求,它会返回⼀个状态码以及消息,这个回应可能是请求信息、或者指⽰某个错误发送的错误信息。系统使⽤统⼀资源定位器 URI 模式,因此资源可以被唯⼀指定。⽽ HTTPS 和 HTTP 唯⼀不同的只是⼀个协议头(https)的说明,其他都是⼀样的。
四、https和http有什么区别
●https更安全
HTTPS协议是由SSL+HTTP协议构建的可进⾏加密传输、⾝份认证的⽹络协议,要⽐http协议安全。
●https需要申请证书
https协议需要到ca申请证书,⼀般免费证书很少,需要交费,费⽤⼤概与.COM域名差不多,每年需要交⼤约⼏⼗元的费⽤。⽽常见的http协议则没有这⼀项;
●端⼝不同
http使⽤的是⼤家最常见的80端⼝,⽽https连接使⽤的是443端⼝;
●状态不同
http的连接很简单,是⽆状态的。⽽HTTPS协议是由SSL+HTTP协议构建的可进⾏加密传输、⾝份认证的⽹络协议,要⽐http协议安全
五、HTTPS的⼯作原理
1、客户端发起HTTPS请求
这个没什么好说的,就是⽤户在浏览器⾥输⼊⼀个https⽹址,然后连接到server的443端⼝。
2、服务端的配置
采⽤HTTPS协议的服务器必须要有⼀套数字证书,可以⾃⼰制作,也可以向组织申请,区别就是⾃⼰颁发的证书需要客户端验证通过,才可以继续访问,⽽使⽤受信任的公司申请的证书则不会弹出提⽰页⾯(startssl就是个不错的选择,有1年的免费服务)。
这套证书其实就是⼀对公钥和私钥,如果对公钥和私钥不太理解,可以想象成⼀把钥匙和⼀个锁头,只是全世界只有你⼀个⼈有这把钥匙,你可以把锁头给别⼈,别⼈可以⽤这个锁把重要的东西锁起来,然后发给你,因为只有你⼀个⼈有这把钥匙,所以只有你才能看到被这把锁锁起来的东西。
3、传送证书
这个证书其实就是公钥,只是包含了很多信息,如证书的颁发机构,过期时间等等。
4、客户端解析证书
这部分⼯作是有客户端的TLS来完成的,⾸先会验证公钥是否有效,⽐如颁发机构,过期时间等等,如果发现异常,则会弹出⼀个警告框,提⽰证书存在问题。
如果证书没有问题,那么就⽣成⼀个随机值,然后⽤证书对该随机值进⾏加密,就好像上⾯说的,把随机值⽤锁头锁起来,这样除⾮有钥匙,不然看不到被锁住的内容。
5、传送加密信息
这部分传送的是⽤证书加密后的随机值,⽬的就是让服务端得到这个随机值,以后客户端和服务端的通信就可以通过这个随机值来进⾏加密解密了。
6、服务段解密信息
服务端⽤私钥解密后,得到了客户端传过来的随机值(私钥),然后把内容通过该值进⾏对称加密,所谓
对称加密就是,将信息和私钥通过某种算法混合在⼀起,这样除⾮知道私钥,不然⽆法获取内容,⽽正好客户端和服务端都知道这个私钥,所以只要加密算法够彪悍,私钥够复杂,数据就够安全。
7、传输加密后的信息
这部分信息是服务段⽤私钥加密后的信息,可以在客户端被还原。
8、客户端解密信息
客户端⽤之前⽣成的私钥解密服务段传过来的信息,于是获取了解密后的内容,整个过程第三⽅即使监听到了数据,也束⼿⽆策。
六、站长如何搭建HTTPS站点?
说到HTTPS站点的搭建,就不得不提到SSL协议,SSL是Netscape公司率先采⽤的⽹络安全协议,它是在传输通信协议(TCP/IP)上实现的⼀种安全协议,采⽤公开密钥技术,SSL⼴泛⽀持各种类型的⽹络,同时提供三种基本的安全服务,它们都使⽤公开密钥技术。
1、SSL的作⽤
(1)、认证⽤户和服务器,确保数据发送到正确的客户机和服务器;
(2)、加密数据以防⽌数据中途被窃取;
(3)、维护数据的完整性,确保数据在传输过程中不被改变。
⽽SSL证书指的是在SSL通信中验证通信双⽅⾝份的数字⽂件,⼀般分为服务器证书和客户端证书,我们通常说的SSL证书主要指服务器证
书,SSL证书由受信任的数字证书颁发机构CA(如VeriSign,GlobalSign,WoSign等),在验证服务器⾝份后颁发,具有服务器⾝份验证和数据传输加密功能,分为扩展验证型(EV)SSL证书、组织验证型(OV)SSL证书、和域名验证型(DV)SSL证书。
2、SSL证书申请的3个主要步骤
对于SSL证书的申请,主要有以下3个步骤:
(1)、制作CSR⽂件
所谓CSR就是由申请⼈制作的Certificate Secure Request证书请求⽂件,制作过程中,系统会产⽣2个密钥,⼀个是公钥就是这个CSR⽂件;另外⼀个是私钥,存放在服务器上。
要制作CSR⽂件,申请⼈可以参考WEB SERVER的⽂档,⼀般APACHE等,使⽤OPENSSL命令⾏来⽣成KEY+CSR2个⽂
件,Tomcat,JBoss,Resin等使⽤KEYTOOL来⽣成JKS和CSR⽂件,IIS通过向导建⽴⼀个挂起的请求和⼀个CSR⽂件。
(2)、CA认证
将CSR提交给CA,CA⼀般有2种认证⽅式:
①、域名认证:⼀般通过对管理员邮箱认证的⽅式,这种⽅式认证速度快,但是签发的证书中没有企业的名称。
②、企业⽂档认证:需要提供企业的营业执照,⼀般需要3-5个⼯作⽇。
也有需要同时认证以上2种⽅式的证书,叫EV证书,这种证书可以使IE7以上的浏览器地址栏变成绿⾊,所以认证也最严格。
(3)、证书的安装
在收到CA的证书后,可以将证书部署上服务器,⼀般APACHE⽂件直接将KEY+CER复制到⽂件上,然后修改HTTPD.CONF⽂件;TOMCAT 等,需要将CA签发的证书CER⽂件导⼊JKS⽂件后,复制上服务器,然后修改SERVER.XML;IIS需要处理挂起的请求,将CER⽂件导⼊。
浏览web是什么意思附:SSL的简介:
SSL是Netscape公司所提出的安全保密协议,在浏览器(如Internet Explorer、Netscape Navigator)和Web服务器(如Netscape的Netscape Enterprise Server、ColdFusion Server等等)之间构造安全通道来进⾏数据传输,SSL运⾏在TCP/IP层之上、应⽤层之下,为应⽤程序提供加密数据通道,它采⽤了RC4、MD5 以及RSA等加密算法,使⽤40 位的密钥,适⽤于商业信息的加密。
同时,Netscape公司相应开发了HTTPS协议并内置于其浏览器中,HTTPS实际上就是SSL over HTTP,它使⽤默认端⼝443,⽽不是像HTTP 那样使⽤端⼝80来和TCP/IP进⾏通信。HTTPS协议使⽤SSL在发送⽅把原始数据进⾏加密,然 后在接受⽅进⾏解密,加密和解密需要发送⽅和接受⽅通过交换共知的密钥来实现,因此,所传送的数据不容易被⽹络⿊客截获和解密。
然⽽,加密和解密过程需要耗费系统⼤量的开销,严重降低机器的性能,相关测试数据表明使⽤HTTPS协议传输数据的⼯作效率只有使⽤HTTP 协议传输的⼗ 分之⼀。
假如为了安全保密,将⼀个⽹站所有的Web应⽤都启⽤SSL技术来加密,并使⽤HTTPS协议进⾏传输,那么该⽹站的性能和效率将会⼤⼤降低,⽽且没有这个必要,因为⼀般来说并不是所有数据都要求那么⾼的安全保密级别,所以,我们只需对那些涉及机密数据的交互处理使⽤HTTPS协议,这样就做到鱼与熊掌兼得。总之不需要⽤https 的地⽅,就尽量不要⽤。
七、免费证书推荐
使⽤SSL证书不仅能让信息的安全性更有保障,还可以提⾼⽤户对于⽹站的信任度,但鉴于对建站成本的考虑,很多站长对其望⽽却步,在⽹络上免费始终是⼀个永远不过时的市场,主机空间有免费的,⽽SSL证书⾃然也有免费的,此前,便有消息称,Mozilla、思科、Akamai、IdenTrust、EFF、以及密歇根⼤学的研究⼈员将开启Let’s Encrypt CA项⽬,计划从今夏开始,为⽹站提供免费SSL证书以及证书管理服务(注:如需更⾼级的复杂证书,则需付费),同时,还降低了证书安装的复杂程度,安装时间仅需20-30秒。
⽽需要复杂证书的往往是⼤中型⽹站,诸如个⼈博客之类的⼩型站点完全可以先尝试免费SSL证书,如果想要购买低价SSL证书可查看站长之家之前发布的⽂章:如何购买廉价SSL证书?。
下⾯马海祥博客再为⼤家介绍⼏款免费SSL证书,⽐如:CloudFlare SSL、StartSSL、Wosign沃通SSL、NameCheap等。
1、CloudFlare SSL
CloudFlare是美国⼀家提供CDN服务的⽹站,在世界各地都有⾃⼰的CDN服务器节点,国内外很多⼤型公司或者⽹站都在使⽤CloudFlare的
CDN服务,当然国内站长最常⽤的就是CloudFlare的免费CDN,加速也很好,CloudFlare提供的免费SSL证书是UniversalSSL,即通⽤SSL,⽤户⽆需向证书发放机构申请和配置证书就可以使⽤的SSL证书,CloudFlare向所有⽤户(包括免费⽤户)提供SSL加密功能,web界⾯5分钟内就设置好证书,24⼩时内完成⾃动部署,为⽹站的流量提供基于椭圆曲线数字签名算法(ECDSA)的TLS加密服务。
2、StartSSL
StartSSL是StartCom公司旗下的SSL证书,提供免费SSL证书服务,且StartSSL被包括Chrome、Firefox、IE在内的主流浏览器⽀持,⼏乎所有的主流浏览器都可以正常识别StartSSL,任何个⼈都可以从StartSSL中申请到免费⼀年的SSL证书。
3、Wosign沃通SSL
Wosign沃通是国内⼀家提供SSL证书服务的⽹站,其免费的SSL证书申请⽐较简单,在线开通,⼀个SSL证书只能对应⼀个域名,⽀持证书状态在线查询协议(OCSP)。
4、NameCheap
NameCheap是⼀家领先的ICANN认可的域名注册和⽹站托管公司,成⽴于2000年,该公司提供免费DNS解析,⽹址转发(可隐藏原URL,⽀持301重定向)等服务,此外,NameCheap还提供了⼀年的SSL证书免费服务。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论