Linux中阶—超文本加密协议https(五)

HTTPS是基于HTTP+TLS 的非对称加密与对称加密相结合的方式加密传输超文本协议。 使用非对称加解密获得对称秘钥,然后使用对称秘钥对称加密传输数据。

服务器:使用openssl/tls 采用非对称加密生成公钥 A1、私钥 A2

客户端:使用openssl/tls 采用对称加密生成秘钥X

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6ZKf6IGq6ZOD,size_20,color_FFFFFF,t_70,g_se,x_16

1、客户端向网站服务器请求,服务器把公钥 A1 明文给传输客户端。

2、客户端随机生成一个用于对称加密的密钥 X,用公钥 A1 加密后传给服务器。

3、服务器拿到后用私钥 A2 解密得到密钥 X。

4、这样双方就都拥有密钥 X 了,且别人无法知道它。之后双方所有数据都用密钥 X 加密解密。

鉴权机构颁发数字证书与数字签名(即有认证的公钥)

服务器向 CA 机构提交申请,需要提交站点的信息如域名、公司名称、公钥、有效期等,CA 审批无误之后就可以给服务器颁发证书与签名。

颁发步骤:

1、CA 拥有非对称加密的私钥和公钥。

2、CA 对证书明文信息进行 hash。

3、对 hash 后的值用私钥加密,得到数字签名的证书。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6ZKf6IGq6ZOD,size_20,color_FFFFFF,t_70,g_se,x_16

鉴定步骤:

  1. 客户端默认安装了CA的公钥,使用公钥解密获得证书明文信息。
  2. 客户端下载得到数字证书,使用hash 算法获得证书明文信息。
  3. 对比证书签名,签名没有问题表示正常,异常代表被篡改。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETkDpkp_ogarpk4M,size_20,color_FFFFFF,t_70,g_se,x_16

 

案例:如何防止中间人攻击

  1. 通过数字证书辨别 公钥的真假,如果发现异常,拒绝访问。
  2. 如果是C/S架构(app) 可以内置证书,拒绝下载其它证书。
  3. 数据二次加密,即使数据别劫持,数据还是密文。

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA6ZKf6IGq6ZOD,size_20,color_FFFFFF,t_70,g_se,x_16

上一篇:Linux中阶—加密库OpenSSL(四)

下一篇:Linux中阶—超文本协议http(六)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值