美文网首页网络
https通讯流程

https通讯流程

作者: 聪莞 | 来源:发表于2019-04-24 17:57 被阅读4次

    什么是https

    https = http + ssl/tls协议:在https数据传输的过程中,需要用ssl/tls对数据进行加密和解密,然后用http对加密后的数据进行传输。

    秘钥相关概念

    对称加密:信息的发送方和接收方使用同一个密钥去加密和解密数据。对称加密的特点是算法公开、加密和解密速度快
    非对称加密:使用一对密钥,即公钥和私钥,且二者成对出现。私钥被自己保存,不能对外泄露。公钥指的是公共的密钥,任何人都可以获得该密钥。用公钥或私钥中的任何一个进行加密,用另一个进行解密。

    具体流程

    可以分为两个阶段:握手阶段和数据传输阶段

    握手阶段

    1. 客户端开始请求:发送自身支持的ssl版本信息、加密算法、一个随机数(random_c)

    2. 服务器收到请求:响应确认ssl版本、确认加密算法、服务器公钥(pubkey_s)、一个随机数(random_s)

    3. 客户端收到了服务器的公钥,开始验证:验证通过后:客户端会根据前面的random_c和random_s生成一个随机数pre-master secret,然后使用pubkey_s进行加密,发给服务端,同时会根据random_c、random_s、pre-master secret通过一定的算法得出session Key

    4. 服务端通过私钥来解密,得到pre-master secret,然后也通过random_c、random_s、pre-master secret通过一定的算法得出session Key

    数据传输阶段
    采用对称加密,通过上个阶段产生的sessionKey进行加密和解密

    相关文章

      网友评论

        本文标题:https通讯流程

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