超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。
一、HTTP和HTTPS的基本概念
HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。
HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
二、HTTP与HTTPS有什么区别?
HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全,为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure Sockets Layer)协议用于对HTTP协议传输的数据进行加密,从而就诞生了HTTPS。
HTTPS加密、加密、及验证过程,如下图所示:
简单来说,HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,要比http协议安全。
三、HTTPS和HTTP的区别主要如下:
1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。
2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。
3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
四、HTTPS工作原理
(1)客户端向服务端443端口发起HTTPS请求。该请求中携带了客户端支持的加密算法和哈希算法;
(2)服务端收到请求,选择浏览器支持的加密算法和哈希算法。
(3)服务端将算法和数字证书发送给客户端。该证书包含了用于认证目的的服务器标识,可以是向某个可靠机构申请的,也可以是自制的;
(4)客户端对服务器端的证书进行验证,这一部分是浏览器内置的TLS完成的,具体步骤如下:
首先浏览器会从内置的证书中搜索,找到该证书对应的机构,如果查到了对应的机构,则取出该机构颁发的公钥;如果没有找到,此时浏览器就会提示用户该证书不是由权威机构颁发,是不可信任的。
然后用机构的证书公钥解密,得到证书的内容和证书签名,内容包括网站的网址、网站的公钥、证书的有效期等。浏览器会先验证签名的合法性,签名通过后,浏览器验证证书记录的网址是否和当前网址是一致的,不一致会提示用户。如果网址一致会检查证书有效期,证书过期了也会提示用户。这些都通过认证时,浏览器就可以安全使用证书中的网站公钥了。
服务器生成一个随机密码串pre_master_secret,并使用服务器的公钥对其进行加密。
(5)客户端将加密的随机密码串传送给服务端。
(6)服务器用自己的私钥解密得到随机密码串(私钥),然后通过该随机密码串把网页内容进行对称加密,并传输给浏览器。
(7)浏览器用之前生成的私钥解密算法获取网页内容。
五、免费申请https证书、SSL证书:
在申请SSL证书的同时,需要悉知SSL证书的种类,一般是分为四种,根据域名情况而定。
单域名证书:一张证书配置一个域名
多域名证书:一张证书配置多个域名,最多不超过250个
泛域名证书:一张证书配置无限多的域名,无数量限制
多域名通配符证书:一张证书配置多个主域名及多个泛域名。
类似于免费单域名证书、免费多域名证书、免费泛域名证书、免费多域名通配符证书都可以免费申请到
而且填写特定的内部邀请码230912还可以无限制申请免费SSL,无数量限制。
申请流程:
第一步:先确定好自己需要的SSL证书类型,在JoySSL官网申请账号,填写注册码230912即可无限制申请免费SSL证书。
永久免费SSL证书_永久免费https证书_永久免费ssl证书申请-JoySSL真正完全且永久免费!不用您花一分钱,SSL证书免费使用90天,并且还支持连续签发。JoySSL携手全球权威可信顶级根,自研新一代SSL证书,全系列支持90天免费使用。在这里,你可以申请到免费单域名证书、免费多域名证书以及免费通配符证书。部署于国内的验签服务器3-5分钟极速签发,而且只需要简单的域名解析验证,即可让您的网站开启https安全协议。https://www.joyssl.com/certificate/select/free.html?nid=12
包含免费单域名证书、免费多域名证书、免费泛域名证书、免费多域名通配符证书。
第二步:可以在JoySSL上提交选择好的证书类型
不同于其他证书,JoySSL支持国内验签,可以确保数据不出境,在使用过程 中可以完全规避签发时国外服务器访问域名内信息。
第三步:填写好域名信息,单位信息后验证域名所有权,完成后1-5分钟内即可完成证书签发。
第四步:安装部署上域名服务器,如果不会部署安装也可以请求工作人员协助安装部署。这一点其实还是很人性化的,要知道在其他某云、某讯等等平台免费证书是不提供任何证书协助服务的。
完成之后即可实现网站的https加密访问。