zoukankan      html  css  js  c++  java
  • https加密过程

    简单说下

    公钥可解私钥

    私钥可解公钥

    公公或私私不能解

    此为非对称加密

    公钥公开可知

    私钥由客户密码计算得出

    私钥 一般存于服务器内部 不暴露于网络中

    客户端请求,服务器发送公钥给客户端,客户用公钥加密数据传输,服务器用私钥解密,服务端使用私钥加密返回数据,客户端使用公钥解密

    -----

    因容易被拦截 所以不安全 引入第三方证书机构

    首先服务器用域名和身份信息去第三方机构注册认证,认证方法为在域名上传第三方指定文件或更改指定域名配置信息等

    然后使用域名和服务器的公钥生成证书,再用第三方机构的私钥对证书加密,传回服务器备用。

    当客户端请求时,服务器发送加密证书,由于该证书为第三方的私钥加密所以只有第三方的公钥可以解密,该公钥为每个客户系统内置,客户端使用该公钥解密,

    即可获得服务器域名以及服务器公钥,使用服务器公钥再对数据加密传输,服务器使用私钥解密。

    如此当拦截发生时,拦截到服务器传客户的加密证书,可以使用第三方公钥解密查看获得服务器公钥,但不能对证书进行篡改,因篡改后不知第三方的私钥为何,无法再对证书加密,客户端就不能使用第三方的公钥解密,因此保证客户端收到服务器公钥的正确性。

    并且拦截到客户传服务器的数据包,由于不知服务器私钥所以也不能进行查看和篡改,也保证了客户传服务器的安全性和私密性 ,而服务器返回客户端的私钥加密数据的数据由于可用服务器公钥解开 依旧存在安全风险,因此。。

    ---------

    因为以上风险,以及非对称加密效率低下等原因,采取加密数据传输,客户端第一次传输给服务器的加密数据为安全数据 ,将该数据设定为一串随机密码,由此服务器获知该密码,以后所有数据由此密码加密进行传输,(对称加密),以此保证数据安全。

    -----

  • 相关阅读:
    css3 的box-sizing属性理解
    web自定义炫酷字体
    Canvas rontate(旋转) 使用误区
    HTM5 之 Canvas save 、restore 恢复画布状态的理解
    Canvas的quadraticCurveTo 和 bezierCurveTo 画曲线 方法细说
    关于EF的一点小记录
    IIS 发布webservice 需要用户名和密码访问 解决
    【算法笔记】A1060 Are They Equal
    【算法笔记】A1063 Set Similarity
    【算法笔记】B1052 卖个萌
  • 原文地址:https://www.cnblogs.com/moshuixiong/p/14329367.html
Copyright © 2011-2022 走看看