zoukankan      html  css  js  c++  java
  • HTTPS中的加密验证部分理论

    为了加深自己对于https加密这一块的映象,决定写出来试试

    就是在http层下面加了一个ssl层,

    服务器将自己的公钥发送给证书机构,申请证书,证书机构首先会验证个服务器是否合法,线上或者线下,然后用自己的私钥将服务器公钥加密,将服务器的信息进行hash,使用私钥进行加密形成数字签名,证书主要内容有数字签名,加密过的服务器公钥,证书颁发机构,过期时间,证书所有者,数字签名算法,在客户端访问服务器的时候,服务器会把证书发送给客户端,浏览器会根据自己系统内的证书拿到公钥,然后去解析这个证书的数字签名,然后再使用相同的规则形成对服务器信息生成hash摘要,和解密后的数字签名进行对比,如果对比成功,说明这个被证书机构公钥加密的服务器公钥是这个服务器的,然后就根据自己系统内部的公钥解密出服务器公钥,这个步骤只是解密出服务器公钥,具体的ssl是这样哦的,客户端首先发送一个随机数a给服务器,服务器返回证书给客户端还有一个随机数b,然后客户端再生成一个随机数c,使用公钥将这个随机数进行加密发送给服务器,告诉服务器使用a,b,c一起算出对称秘钥,然后用这个对称秘钥进行通信,然后将原来发送过的参数加密传输试试,用来试试是否可以,服务器收到,解密出随机数字c,然后也告诉客户端说以后就用对称加密传输,说先将原来发送过的参数加密传输试试

  • 相关阅读:
    python 日期、时间戳转换
    判断任意数字是否为素数
    linux使用工具记录
    python日志记录-logging模块
    python特性、属性以及私有化
    python 装饰器、内部函数、闭包简单理解
    sql语句操作记录
    virtualBox使用nat模式下ssh连接
    git常用操作
    分布式CAP定理(转)
  • 原文地址:https://www.cnblogs.com/zfding/p/11591817.html
Copyright © 2011-2022 走看看