最近看了点https 做下总结  面的博客如果没有错误的话,理解起来绝对是醍醐灌顶!让人信服,如果我的理解有问题,请及时指正!

参考博客:    http://www.ruanyifeng.com/blog/2014/02/ssl_tls.html

https://www.cnblogs.com/qingergege/p/7811705.html

https://blog.csdn.net/qq_18653119/article/details/79096567

说一下自己的困惑,

1.CA 是干嘛的?

CA 拥有公钥,并向客户端发送数字签名(摘要用算法hash后,再用公钥加密),客服端用公钥解密还原之前的hash值,在用服务端发过来的公钥,采用同样的方式解密,比较hash

如果两个值相同,则表明服务器是对的,否则拒绝连接

2.会话秘钥是谁生产出来的?

看过上述博客之后,我们知道ssl连接包含四个过程,前三个过程均携带随机数,双方都参与,客户端2次,服务端1次,第三次的时候客户端发送第二个随机数并且用公钥加密,这个时候,服务器根据私钥解密得到值,并根据算法(DH或者其他算法),用三次随机苏,计算出 session key , 注意这个时候服务器会返回 encrypted_handshake_message(握手信息),并且是用当前生成的会话session key 加密的,加密的内容是

结合之前所有通信参数的 hash 值与其它相关信息生成一段数据,,...这句话比较笼统!copy到别人的协议头一份,看看返回了啥...

博客地址:https://blog.csdn.net/mrpre/article/details/77868570

它的图

客户端根据也同样用三个随机数,生成session key,解析,校验.所以是双发都生成了seeeion key,并且使用这个会话秘钥进行校验

https 学习总结的更多相关文章

  1. HTTPS学习总结

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 21.0px Verdana; color: #393939 } span.s1 { } HTTPS学习总结 ...

  2. https学习笔记三----OpenSSL生成root CA及签发证书

    在https学习笔记二,已经弄清了数字证书的概念,组成和在https连接过程中,客户端是如何验证服务器端的证书的.这一章,主要介绍下如何使用openssl库来创建key file,以及生成root C ...

  3. https学习笔记二----基础密码学知识和python pycrypto库的介绍使用

    在更详细的学习HTTPS之前,我也觉得很有必要学习下HTTPS经常用到的加密编码技术的背景知识.密码学是对报文进行编解码的机制和技巧.可以用来加密数据,比如数据加密常用的AES/ECB/PKCS5Pa ...

  4. HTTPS学习笔记一----HTTPS的基础理论知识

    首先推荐一本书,<HTTP权威指南>我就是看这本书入门的,对http协议有了更好的理解,学习https的理论知识我认为需要了解以下几点,需要一步步的深入学习: 1.HTTPS的基本概念? ...

  5. https 学习笔记

    参考 : http://www.cnblogs.com/JimmyZhang/archive/2008/10/02/Cryptograph.html https://blog.csdn.net/Jog ...

  6. HTTPS学习(二):原理与实践

    div.example { background-color: rgba(229, 236, 243, 1); color: rgba(0, 0, 0, 1); padding: 0.5em; mar ...

  7. HTTPS学习(一):准备知识

    div.example { background-color: rgba(229, 236, 243, 1); color: rgba(0, 0, 0, 1); padding: 0.5em; mar ...

  8. HTTP/HTTPS 学习笔记

    超文本传输协议(HyperText Transfer Protocol) 伴随着计算机网络和浏览器的诞生,HTTP1.0也随之而来,处于计算机网络中的应用层,HTTP是建立在TCP协议之上的. HTT ...

  9. 《图解http协议》之HTTPs学习笔记

    对于IP协议,并不陌生.TP协议是TCP/IP协议簇中的核心协议,也是TCP/IP的载体.所有的TCP,UDP,ICMP及IGMP数据都以IP数据报格式传输.IP提供不可靠的,无连接的数据传送服务.I ...

随机推荐

  1. eclipse安装、汉化、搭建安卓开发环境

    1.eclipse与jdk的位数(32bit or 64bit )要对应,否则会提示Failed to load JNI shared library.提示这一种错误据说还有另外一种原因就是Path路 ...

  2. redis集群服务启动

    1 启动redis服务器 redis-server.exe redis.windows.conf 需要配置config节点的bind ip 2 启动redis集群 开启redis.xx.conf 服务 ...

  3. 控件之ReleLayout属性

    Android:控件布局(相对布局)RelativeLayout RelativeLayout是相对布局控件:以控件之间相对位置或相对父容器位置进行排列. 相对布局常用属性: 子类控件相对子类控件:值 ...

  4. [UE4]Tool Tip - 提示信息

    一.每一个Widget都有Tool Tip,在运行时鼠标移动到UI上,就会显示填写的Tool Tip文字   二.Toop Tips的字体样式和大小不可更改.但是可以Tool Tip可以绑定到一个Wi ...

  5. 知识点:Mysql 基本用法之事务

    事务 事务用于将某些操作的多个SQL作为原子性操作,一旦有某一个出现错误,即可回滚到原来的状态,从而保证数据库数据完整性. 事务实例: create table user( id int primar ...

  6. XXE注入攻击与防御

    在研究XXE注入攻击之前先了解一下什么是XXE 定义 XML用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言.XML文档结构包括 ...

  7. 阿里云:游戏行业DDoS攻击解决方案

    转自:http://www.gamelook.com.cn/2018/01/319420 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游 ...

  8. conda命令

  9. Sep 15th 2018

    人在最困难的最孤独的时候,是否都会有过怀疑和产生退缩的念头呢.开始怀疑为什么要坚持,坚持的意义何在.我现在的状态就是一个谋生赚钱的机器吗,远离妻子和孩子,一人孤独的在这座城市,得到的难道能够足以弥补所 ...

  10. Solr使用in语法查询

    Solr可以用AND.||  布尔操作符 表示查询的并且, 用OR.&&  布尔操作符 表示或者 用NOT.!.-(排除操作符不能单独与项使用构成查询)表示非 如果要用在查询的时候使用 ...