美文网首页
Https原理

Https原理

作者: HarryChoy | 来源:发表于2018-11-15 11:51 被阅读0次

    简介

    http其实由HTTP+SSL/TLS组成,相当于http加上一层加密算法,客户端与服务端传输数据都是加密的。一开始采用非对称加密,后续采用对称加密,因为持续的非对称加密很耗费时间性能。加密过程如下:

    1.客户端发起HTTPS请求

    2.服务端提前配置

    应用https协议的服务器必须要一套HTTPS证书,证书可自生成(免费),可向第三方组织申请(收费)。证书本质上为公钥与私钥。Java环境需要导入证书到jdk/jre security路径下。

    3.传送证书

    4.客户端解析证书

    客户端需要验证证书有效性,可向第三方验证。自制作证书会在浏览器提示“您的连接不是私密连接”,点击继续为信任自制证书。

    5.客户端发送对称加密秘钥

    生成随机值(后续处理即为对称加密的秘钥),利用证书(公钥)加密随机值。

    6.服务端解密

    服务端私钥解密获取随机值(处理即为对称加密的秘钥)

    7.开始运用对称加密的秘钥进行加密传输

    8.客户端用对称加密的秘钥解密

    开发相关

    开发时,一般http接口改造为https接口,服务端导入证书即可。渠道方服务端访问权益方服务端对接HTTPS接口需要校验证书有效性有两种方法

    1.导入https证书(公钥),可向权益方索取,网络通情况下也可以chrome访问接口下载证书(公钥)。java开发环境下可以导入到JDK/JRE 下的security。注意服务需要重启。

    2.也可以跳过证书有效性校验:无条件信任对方返回的证书(公钥)。

    新建SSLClient继承DefaultHttpClient,重写相关方法即可。

    相关文章

      网友评论

          本文标题:Https原理

          本文链接:https://www.haomeiwen.com/subject/haoefqtx.html