https申请证书并部署到网站流程:

1、生成一对秘钥,设公钥为pubk1,私钥为prik1
2、假设发布的网站地址为https://www.example.com
3、生成一个CSR文件(Cerificate Signing Request),该文件内容包括: pubk1,网站地址,以及营业执照等信息,然后将该文件发给CA机构
4、CA机构收到CSR文件后,进行审核,主要检查网站地址的拥有者是否是证书的申请者
5、审核通过后,CA机构生成一对秘钥,假设采用ECDSA签名算法,公钥为pubk2,私钥为prik2。用prik2对CSR文件进行签名得到签名值sigVal,将sigVal附在CSR文件后面形成证书文件caFile,caFile中还要添加CA机构的信息,如: 签名算法,CA机构名称等
6、将证书文件caFile放到网站服务器对应目录下

====================

====================

浏览器验证证书流程:

1、浏览器向服务器发请求https://www.example.com
2、服务器将caFile和pubkey1(实际上就是申请证书流程中生成的一对秘钥中的公钥pubk1)发给浏览器
3、浏览器收到caFile文件进行分析,知道了签名算法;拿到CA机构名称后,由于浏览器中内置了该CA机构的根证书,所以知道pubk2;还知道caFile文件中的签名值sigVal以及原文(caFile的一部分,这部分在申请证书流程中称为CSR文件)知道这四个条件,就可以验证签名了,若验证签名成功则进入第4步。
4、接下来浏览器校验证书申请者的身份,从caFile中取出pubk1和网站地址w1。如果w1和https://www.example.com一摸一样,而且pubk1与连接成功后服务器发下来的公钥pubkey1相等,则说明浏览器连接的https://www.example.com没问题,而且没有受到中间人攻击
5、一旦服务器校验成功,接下来就是进行秘钥协商,这个协商成功后的秘钥就是真正用来加密业务数据的秘钥

https申请证书并部署到网站流程,浏览器验证证书流程的更多相关文章

  1. 部署国密SSL证书,如何兼容国际主流浏览器?

    国密算法在主流操作系统.浏览器等客户端中,还没有实现广泛兼容.因此,在面向开放互联网的产品应用中,国密算法无法得到广泛应用.比如,在SSL证书应用领域,由于国际主流浏览器不信任国密算法,如果服务器部署 ...

  2. 理解 HTTPS 工作原理(公钥、私钥、签名、数字证书、加密、认证)(转)

    本文摘录参考: 细说 CA 和证书(主要讲解 CA 的使用) 数字签名是什么?(简单理解原理) 深入浅出 HTTPS 工作原理(深入理解原理) HTTP 协议由于是明文传送,所以存在三大风险: 1.被 ...

  3. Chrome:不受信任的证书----openssl签发带Subject Alternative Name的证书

    Chrome下自签名证书提示无效的问题 发现chrome验证证书很严格,必须带有Subject Alternative Name.签发csr时,修改openssl.cnf : vi /etc/ssl/ ...

  4. 让网站永久拥有HTTPS - 申请免费SSL证书并自动续期 Let’s Encrypt

    让网站永久拥有HTTPS - 申请免费SSL证书并自动续期 Let’s Encrypt 为什么要用HTTPS  网站没有使用HTTPS的时候,浏览器一般会报不安全,而且在别人访问这个网站的时候,很有可 ...

  5. 八大免费SSL证书-给你的网站免费添加Https安全加密

    评论»   https://www.freehao123.com/top-8-free-ssl-cert/ 文章目录 Let's Encrypt StartSSL SSL CloudFlare SSL ...

  6. 亚马逊EC2服务器申请+NODE服务器部署+阿里云域名申请+SSL证书使用

    最近,由于项目需要,自己申请了一台亚马逊用于部署网站测试,在使用期间,发现网上没有一篇非常完整的文章讲解从服务器申请到域名解析,SSL证书申请的整个流程.所以自己总结一下,以供大家学习! 一.亚马逊E ...

  7. 【http转https】其之一:腾讯云 DV SSL证书申请实验

    文:铁乐猫 2016年1月 前言 大概2017年12月28日左右公司提出以后需要将公司网站由http提升到https级别,以便谷歌和火狐浏览器将之认定为安全网站. 主要是出于客户.用户那边用火狐或谷歌 ...

  8. [python][nginx][https] Nginx 服务器 SSL 证书安装部署

    目录 前言 1 申请证书 2 Nginx 服务器 SSL 证书安装部署 2.1.准备 Nginx 环境 2.2 证书部署 2.3 Nginx 配置 3 最后 参考链接 前言 博主博客中的图片,使用的是 ...

  9. 购买SSL证书到部署网站遇到的若干问题

    作为一个菜鸟,对于SSL证书,我了解不多,只知道用了它网站更安全,所以这次使用SSL证书途中遇到了各方面的各种问题,到今天为止终于全部解决. 一.证书格式 前两天在那什么云上面买了个SSL证书,是Wo ...

随机推荐

  1. 一次Ubuntu16系统的找回root密码的过程

    一 背景知识介绍 ubuntn系统的默认配置,超级用户root的密码是随机的,如果没提前对root用户的密码进行设置, 是不能直接通过root的身份来进行某些操作的,必须使用sudo命令,并通过普通用 ...

  2. Python—五大基本语句

    五大基本语句 赋值语句(变量.对象.赋值运算符) 输入输出语句(input,print函数) 条件判断语句(if-elif-else语句) 循环语句(遍历循环for-in-else.条件循环while ...

  3. 渗透测试学习 二十二、getshell总结

    大纲   管理员权限拿shell 普通权限拿shell 常见cms拿shell 进后台主要是可以对网站前台的内容,样式等做操作,要改脚本的内容的权限只有在webshell的权限下才可以(某些情况除外) ...

  4. poppler

    https://github.com/freedesktop/poppler http://www.openjpeg.org/ https://github.com/uclouvain/openjpe ...

  5. scrapy 爬取视频

    利用FilesPipeline 下载视频 1.setting.py # 保存log信息的文件名 LOG_LEVEL = "INFO" # LOG_STDOUT = True # L ...

  6. 用一个例子说明oracle临时表,创建过程,

    --创建临时表,规定好格式,是必须的,不同于sqlserver那么随意: Create Global Temporary Table record4 (   yljgdm VARCHAR2(22) n ...

  7. 《从HBase offheap到Netty的内存管理》

      JVM中的堆外内存(off-heap memory)与堆内内存(on-heap memory) 1. 堆内内存(on-heap memory) 1.1 什么是堆内内存 Java 虚拟机在执行Jav ...

  8. C getchar()

    C getchar() #include <stdio.h> int main() { ; char str[size]; ; char ch; printf("Enter wh ...

  9. 机器学习之感知器和线性回归、逻辑回归以及SVM的相互对比

    线性回归是回归模型 感知器.逻辑回归以及SVM是分类模型 线性回归:f(x)=wx+b 感知器:f(x)=sign(wx+b)其中sign是个符号函数,若wx+b>=0取+1,若wx+b< ...

  10. 解惑:如何使得寝室的电脑和实验室的电脑远程相互访问(Linux和Windows)

    解惑:如何使得寝室的电脑和实验室的电脑远程相互访问 一.前言 自从接触计算机网络之后就一直想着把实验室的电脑和自己寝室的电脑远程连接起来,结果总是郁郁不能成功,网上这样的教材也少的可怜,于是总是搁置下 ...