数字证书理解(CA证书签名原理)[通俗易懂]

数字证书理解(CA证书签名原理)[通俗易懂]目的为了防止中间人攻击和钓鱼基础概念(要求预先了解的知识概念)对称密钥体系(对称加密)和非对称密钥体系(非对称加密)都提供2份秘钥。公钥私钥是概念上的,发布出去的为公钥,留在手上的为私钥,实质上不存在公私钥区别。特殊的:在实际操作中,生成RSA(特别的:一种加密方式)密钥时会有两个秘钥,其中一份包含另一份的完整信息【此时默认命名为私钥】——->这就是为什么私钥可以推导出公…

大家好,又见面了,我是你们的朋友全栈君。

目的

为了防止中间人攻击和钓鱼

基础概念(要求预先了解的知识概念)

  1. 对称密钥体系(对称加密)和非对称密钥体系(非对称加密)都提供2份秘钥。
  2. 公钥私钥是概念上的,发布出去的为公钥,留在手上的为私钥,实质上不存在公私钥区别。
  3. 特殊的:在实际操作中,生成RSA(特别的:一种加密方式)密钥时会有两个秘钥,其中一份包含另一份的完整信息【此时默认命名为私钥】——->这就是为什么私钥可以推导出公钥的原因—–在实际操作中默认私钥由2把秘钥组成。
  4. 对称密钥体系中,公私钥可以互相推导或者内容一。
  5. 非对称密钥体系,公私钥,不可互推,且内容上不一样.
  6. 公私钥都可以做加密方,也可以做解密方。

基本原理

采用第三方担保,确保数字签名中的发出来的公钥是服务器所提供的。再用证书中服务器的公钥对信息加密,与服务器通信。

证书使用

1.服务器把公钥(指发布出去的密钥)和个人信息发送给证书商(CA),证书商用私钥加密(打个戳),CA证书形成。(这个过程确保:如果获得的证书合法,则CA为证书内的服务器公钥的正确性提供担保)
2.证书商把CA给服务器。
3.用户向服务器(比如说网站)申请CA,用户获得CA,用户用证书商的公钥解密,拿到服务器信息和服务器公钥。(这个过程中:由于大家都只有公钥,所以你发的信息理论上不可解密,不可伪造,这就说明你发的信息必定是自己写的,所以不可抵赖)
4.用户使用服务器公钥与服务器进行通信(这个过程中由于非对称加密的局限,在实际中服务器与客户端会互相约定用指定的某对对称秘钥进行加密通信)
5.怎么传递对称秘钥?可以在https中,浏览器生成对称秘钥,用证书中公钥加密对称秘钥,然后传输到服务器上进行约定。

综述

CA证书是建立在非对称秘钥体系上的。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137646.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • verilog变长移位寄存器「建议收藏」

    verilog变长移位寄存器「建议收藏」verilog变长移位寄存器普通的移位寄存器可以按如下设置,下面是一个一次移动一位的移位寄存器。moduleshift_stationary(clk,dat,ctrl,shift_out);inputclk;input[15:0]dat;input[1:0]ctrl;outputreg[15:0]shift_out;always@(posedgeclk)begincase(ctrl)2’b00:begin

    2022年7月16日
    14
  • APAP代码(1)「建议收藏」

    APAP代码(1)「建议收藏」staticintVideoStitch(intargc,char*argv[]){ for(inti=0;i<argc;i++) printf(“%s\n”,argv[i]); intretval=parseCmdArgs(argc,argv); /*if(retval) returnretval;*/ is_camera=false; for(inti=0;i<video_names.size();i++) .

    2022年9月22日
    6
  • 简述Activity生命周期「建议收藏」

    简述Activity生命周期「建议收藏」Activity显示方式Android是使用任务(Task)管理活动的,一个任务就是一组存放在栈里的活动的集合,这个栈也 被称为返回栈。新活动启动进入栈,处于栈顶,当Back或finish()销毁一个活动时,栈顶的活动会出栈,前一个入栈的活动重新处于栈顶位置,显示给用户。活动状态运行状态:处于栈顶。暂停状态:不再处于栈顶但仍可见。(内存极低时系统会考虑回收这种活动)停止状态:不再处于栈顶,并且完全不可见。(系统会保存相应的状态和成员变量,但是这并不是完全可靠的,当其他地方需要内存时,处于停止状态

    2022年8月16日
    6
  • android4.4.3_安卓内核版本升级

    android4.4.3_安卓内核版本升级Android4.4源码下载(linux合并)==============================分割线结束=========================旧版本的可以使用115,不想再去115搬运了4g多不是很想上传邮箱吱吱的响受不了,上传下吧,要学会摆脱windows不会linux玩android也没少哈意思,不是?下载所有的droiSplit包split分割的,。wi…

    2022年8月10日
    10
  • 卡方分布、t分布、F分布的期望与方差的计算「建议收藏」

    文章目录卡方分布卡方分布的期望和方差t分布t分布的期望和方差F分布F分布的期望和方差卡方分布设X1,X2,……Xn独立同分布,且服从公共分布N(0,1),则Y=X12+X22+……Xn2服从自由度为n的卡方分布.设X_1,X_2,……X_n独立同分布,且服从公共分布N(0,1),则Y=X_1^2+X_2^2+……X_n^2服从自由度为n的卡方分布.设X1​,X2​,……Xn​独立同分布,且服从公共分布N(0,1),则Y=X12​+X22​+……Xn2​服从自由度为n的卡方分布.卡方分布的期望和方

    2022年4月8日
    355
  • qtcpsocket断开_2020-05-06 QT子线程使用QTcpSocket连接服务器

    qtcpsocket断开_2020-05-06 QT子线程使用QTcpSocket连接服务器为什么要是用多线程?多线程的使用主要是为了处理比较耗时的过程。多线程的实现可以通过两种方式实现分别是:1.继承QThread实现多线程2.继承QObject实现多线程(由于继承QObject的多线程实现方法更加灵活,Qt官方推荐使用该方法实现多线程)。这里将采用第二种方式实现多线程多线程实现过程1.创建一个继承于QObject的自定义线程类,用来处理比较耗时的功能。相关函数:voidsetFla…

    2025年8月29日
    11

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号