文章目录

  • 前言
  • 一、什么是中间人攻击
  • 二、CA是什么?
  • 三、数字证书原理

前言

前面简单讲了安全加密体系,安全加密体系链接
在结合了对称加密,非对称加密,定向散列这三种加密算法后,通信效率的提高了,通信地安全性的增强了。可是还是有一个致命地漏洞,也就是在使用非对称加密的过程中,需要用到对方的公钥对数据进行加密,那么如何得到对方的公钥呢,通过网络传输得到对方的公钥可信吗?显然是不可信的。为何不可信,先来了解下“中间人攻击”。

一、什么是中间人攻击

假设A请求B的公钥,此时有X发动了中间人攻击,情况描述如下:
A请求B的公钥,请求被X截取,X代替A向B去请求公钥。B收到请求后,会给请求者分发他的公钥。结果B的公钥被X截取,X冒充B将自己的公钥给A。此时各人的状态是:X获得了B的公钥,而A获得的是X的公钥。这一系列过程对于A是浑然不知的,A以为自己刚才获得的就是B的公钥,结果拿着这个假公钥对数据进行加密后发送给B,数据被X截获,用X的私钥解密后,就可以为所欲为了,(窃取信息,篡改数据等),之后将"脏数据"用真实的B的公钥加密,把结果发送给B,B收到了信息,用自己的私钥解密,可是这个数据已经"脏"了。

以此原理,用户在用密码登陆某网站的时候,客户端是要发送密码到服务端验证的。假设客户端获得了假公钥,用假公钥加密数据,那密码岂不是泄露了!
因此这个通信的关键是否能验证对方的公钥是否是真实的,这就需要引入第三方权威机构–CA

二、CA是什么?

再拿刚才A请求B的公钥的情况来说:从宏观上来说,CA是一个权威机构,他会颁布一个叫做"数字证书"的东西给B,这个数字证书上有B的公钥。而B收到公钥请求以后,不再直接分发自己的公钥,分发的而是自己的数字证书。这个数字证书是不能被中间人X篡改的,A收到B的数字证书以后,验证这个数字证书的真实性,如果确实是自己所信任的CA颁布的,就可以使用数字证书上的公钥加密继续通信了。

我们访问的某些网站,协议是https,这样的就是可信任的网站,因为它拥有权威CA颁布的数字证书;而某些网站协议http在chrome上就会提醒用户这个网站不可信任,有安全风险。

三、数字证书原理

先来看下流程图:

B倘若需要申请一个数字证书,需要通过某种安全的方式将自己的公钥给到CA,CA使用自己的私钥加密B的公钥,之后将数字证书发送给B,B的数字证书颁发完成。当A向B申请公钥的时候,B向A分发的是B的数字证书。A自带CA的公钥,y因为每个操作系统出厂的时候会自带权威CA的公钥,这样就可以用CA的公钥解密CA的私钥,得到B的公钥。
这一流程的意思就是说:该证书确实是CA颁发的,可以信任B给的公钥

为什么数字证书在发送过程中不能被篡改?
假设X将证书拦截篡改,但是他没有CA的私钥可以签名,A拿着CA的公钥解不开私钥,就说明这个证书有问题。

安全加密之---CA数字证书相关推荐

  1. 加密相关(对称加密、非对称加密、信息摘要、数字签名、CA数字证书)

    1.对称加密: 说明:加密的密钥和解密的密钥相同:效率快:适合加密大信息量 常见算法:DES.3DES.AES.RC-5 块加密: 流加密:数据量大时效率高 2.非对称加密: 说明:加密的密钥和解密的 ...

  2. Linux 部署CA数字证书服务

    CA数字证书服务 CA Certificate Authority 数字证书授权中心 被通信双方信任的,独立的第三方机构 负责证书颁发,验证,撤销等管理 PKI公钥基础设施 一套标准的密钥管理平台 通 ...

  3. 网络电话服务器安全认证管理系统,CA 数字证书认证系统建设解决方案

    方案介绍 CA数字证书认证系统是信息系统安全基础设施,在企业内部建设CA数字证书认证系统后,签发的数字证书可作为业务系统用户的身份认证凭证,并能对关键交易进行签名,实现防抵赖和防篡改.同时制定统一的安 ...

  4. Tomcat双向SSL认证及CA数字证书安装和配置QQ即时通信协议窥探

    1.Java加密与解密的艺术 网络信息安全近几年成为热点.职业发展新方向,常规Web应用如BBS.BLOG.SNS及电子商务等B/S系统是以用户为核心,账号管理是这些系统中唯一的安全屏障:IM即时聊天 ...

  5. HTTPS系列之CA数字证书

    数字证书的两个作用: 1. 身份验证.确保客户端访问的网站是通过CA认证的可信赖的网站 2. 分发公钥. 简介 PKI(Public Key Infrastructure)公钥基础设施 "遵 ...

  6. CA 数字证书 数字签名

    CA(Certificate Authority):认证机构 数字证书:是由认证机构颁发的,当服务端向客户端公钥时,会该证书一并发送过去,客户端先进行验证请求的域名与证书的域名是否一致.防治拦截者对其 ...

  7. 加密与安全——数字证书

    我们知道,摘要算法用来确保数据没有被篡改,非对称加密算法可以对数据进行加解密,签名算法可以确保数据完整性和抗否认性,把这些算法集合到一起,并搞一套完善的标准,这就是数字证书. 因此,数字证书就是集合了 ...

  8. 在虚拟机中制作CA数字证书

    实验准备:虚拟机win7 和 win2008 实验开始: 1.先将win7和win2008连接到同一局域网内 这里我选择放在VMnet2中: 2.先配置win2008为(DNS服务器,web服务器) ...

  9. java加密解密与数字证书的操作

    2019独角兽企业重金招聘Python工程师标准>>> 1 Java程序实现密钥库的维护 1.1 Java程序列出密钥库所有条目 import java.util.*;   impo ...

最新文章

  1. 刷机包各个文件都是啥
  2. 计算机换用户无法启动软件,Windows无法启动. 原因可能是最近更改了硬件或软件故障的处理方法...
  3. 【Clickhouse】问题记录
  4. 一行命令 优化上传速度
  5. nuxt.js的核心代码_Nuxt.js中的通用应用程序代码结构
  6. 第一次作业:基于Linux进程模型分析
  7. 将数值位转换为字符位后输出
  8. Linux的uevent事件机制
  9. 激光雕刻机:废旧光驱的涅槃之路
  10. r语言如何下载carzip包本地安装_R语言安装程序包
  11. 软件测试周刊(第25期):不要成天到晚地找意义
  12. HDU 4173(计算几何
  13. 万物皆为叠加态粒子:如何用量子物理学诠释生活?
  14. 神经网络学习小记录2——利用tensorflow构建循环神经网络(RNN)
  15. 画一个椭圆c语言程序,画椭圆 - c代码库 - 云代码
  16. 论文阅读: Spatial transformer networks
  17. Javascript(js)进阶学习笔记——String对象
  18. 在 Python 中打印换行符——打印一个新行
  19. 配置gurobi到python(anaconda)
  20. 计算机任务无法结束,简单几步解决win7任务管理器无法结束进程的问题

热门文章

  1. FPGA驱动silicon9011和silicon9134完成HDMI收发,提供工程源码和技术支持
  2. AutoCAD 出现“安全系统(软件锁许可管理器)不起作用或未正确安装”的解决方法...
  3. 基于php的仓库管理系统
  4. 精彩机械动图:人类真是太聪明了
  5. Centos7配置代理Squid
  6. 最新西安华为Java面经,金三银四想跳槽的朋友可以看一看
  7. G711 G723 G729 等语音编码与网络带宽需求
  8. Java之单元测试(JUnit单元测试框架)
  9. PPT转成Word文档的四种方法
  10. 微信小程序获取住户地区