确保Web安全的HTTPS

HTTP的缺点

HTTP主要又如下几点不足:

  • 通信使用明文(不加密),内容可能会被窃听
  • 不验证通信方的身份,因此有可能遭遇伪装
  • 无法证明报文的完整性,所以有可能已遭篡改

HTTPS

HTTP+加密+认证+完整性保护=HTTPS
HTTPS并非是应用层的一种新协议,只是HTTP通信接口部分用SSL(Secure Socket Layer)和TLS(Transport Layer Security)协议代替而已。HTTPS其实就是身披SSL协议这层外壳的HTTP。

相互交换密钥的公开密钥加密技术

SSL采用一种叫做公开密钥加密的加密处理方式。
加密和解密都会用到密钥。没有密钥就无法对密码解密,反过来说,任何人只要持有密钥就能解密了。

  • 共享密钥加密
    加密和解密同用一个密钥的方式称为共享密钥加密,也被叫做对称密钥加密。
    以共享密钥方式加密时必须将密钥也发给对方,但是密钥也面临着通信安全问题。
  • 使用两把密钥的公开密钥加密
    公开密钥加密方式使用一对非对称的密钥。一把叫做私有密钥,一把叫做公开密钥。私有密钥不能让其他任何人知道,而公开密钥则可以随意发布,任何人都可以获得。
    使用公开密钥加密方式,发送密文的一方使用对方的公开密钥进行加密,对方收到被加密的信息后,再使用自己的私有密钥进行解密。利用这种方式,不需要发送用来解密的私有密钥,也不必担心密钥被攻击者窃听而盗走。
  • HTTPS采用混合加密机制
    公开密钥加密更加安全,共享密钥加密方式处理速度更快
    结合两种加密方式,HTTPS采用两者并用的混合加密机制。
    在交换密钥环节保证安全性使用公开密钥加密方式,之后的建立通信交换报文阶段则使用共享密钥加密方式。

证明公开密钥正确性的证书

无法证明公开密钥本事是否是货真价实的公开密钥也不行,因为公开密钥在传输途中,可能已经被攻击者给替换掉了。
为了解决上述问题,可以使用由数字证书认证机构(CA,Centificate Authority)和其相关机关颁发的公开密钥证书。
数字证书认证机构的业务流程:
1)服务器的运营人员向数字证书认证机构提出公开密钥的申请
2)数字证书认证机构在判明提出申请者的身份之后,会对已申请的公开密钥做数字签名
3) 分配已签名的公开密钥并将其放入公钥证书后绑定在一起
4)服务器会将这份由数字证书认证机构颁发的公钥证书发送给客户端,以进行公开密钥方式通信。
5)接到证书的客户端可使用数字证书认证机构的公开密钥,对那张证书上的数字签名进行验证

为什么不一直使用HTTPS

HTTPS存在一些问题,当使用SSL时,它的处理速度会变慢。
SSL的慢分两种。一种是指通信慢。另一种是指由于大量消耗cpu及内存等资源,导致处理速度慢。
与纯文本通信相比,加密通信会消耗更多的CPU及内存资源。如果每次通信都加密,会消耗相当多的资源。
所以,如果是非敏感信息则使用HTTP通信,只有在包含个人信息等敏感数据时,才利用HTTPS加密通信。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值