CA是什么?有什么作用?

  • 前言
  • 验证过程
  • 一些问题
    • 如何确保 CA 是可信的?

前言

CA 也即证书授权机构,主要职能有颁布、认证和管理数字证书。数字证书用来记录和认证用户的公钥
非对称加密体系中,传递加密信息的基础为,用接收方的公钥对信息进行加密,传递给接收方后,接收方用自己藏好的私钥解密获取信息。(其它人可以拿到接收方的公钥,但无法依据公钥推出私钥,因此即使拿到加密信息,也无法解密。)

CA 在非对称加密过程中的作用就是在 CA 本身可信的基础上,让用户可以确认自己拿到的就是接收方的有效公钥,保证公钥的不可伪造性和完整性。

验证过程

简要梳理一下有 CA 参与的非对称加密体系的大致过程:

现有 A 和 B 两位同学需要使用非对称加密体系进行加密通信(A => B)。

  1. A 首先在 CA 查找 B 的信息,并获取 B 的数字证书。证书上记录着 B 的公钥和 CA 使用自己的私钥加密的数字签名(由 B 的证书信息计算得来)。
  2. CA 会主动将自己的证书返回给 A,里面包含 CA 的公钥。使用该公钥解密 B 的数字证书上的数字签名可获取 B 的信息摘要,然后再把证书上 B 的信息按相同的哈希算法计算出摘要,两相对比,从而确认获取的 B 的公钥是有效的。
  3. A 使用 B 的公钥加密信息后,与信息的摘要一起发送给 B。B 用自己的私钥解密后,计算信息摘要,与传递来的摘要对比,从而确认信息的完整性。

一些问题

如何确保 CA 是可信的?

这个问题反过来就是,我能不能伪造一个 CA 出来?
答案是完全可以!只要我有能力去生产非对称密钥对,然后把自己的信息写的看起来可信,然后就可以去骗去偷袭了。用户拿到我伪造的 CA 的证书,选择相信后,我就可以伪造数字证书,然后让用户用伪造的公钥去传递加密信息。

但是,事情也没有那么容易。大部分用户的主机系统中都预设了顶级的可信 CA,这些顶级 CA 有钱有势,相互认证真实性。伪造的 CA 自然无法通过这些大佬的认证,除非想办法把他们全部买通(值得吗?)。

所以,伪造 CA 技术上可行,其它都不可行。普通用户基本不用去考虑 CA 是否可信,除非是在系统上手动配置信任其它的 CA。


如有差错,欢迎讨论

CA(Certificate Authority)及其伪造的可能性分析相关推荐

  1. CA—Certificate Authority证书授权中心

    首先CA是Certificate Authority的缩写,也叫"证书授权中心". 它是负责管理和签发证书的第三方机构,就好比例子里面的中介--C 公司.一般来说,CA必须是所有行 ...

  2. 证书颁发机构(CA, Certificate Authority)

    CA保证浏览器所连接的网站是真正的需要连接的网站,防钓鱼网站. 1)服务器把自己的公钥密钥提交给CA加密,然后CA使用自己的密钥私钥进行加密(服务器公钥+服务器域名信息+公钥摘要),然后将其提供给浏览 ...

  3. 证书管理机构——CA(Certificate Authority)

    摘自<百度百科--密钥密码体系> http://baike.baidu.com/item/%E5%AF%86%E9%92%A5%E5%AF%86%E7%A0%81%E4%BD%93%E7% ...

  4. CA认证(Certificate Authority)

    什么是CA认证? CA认证,即电子认证服务是指为电子签名相关各方提供真实性.可靠性验证的活动.证书颁发机构(CA, Certificate Authority)即颁发数字证书的机构.是负责发放和管理数 ...

  5. 使用CloudFlare 的 PKI 工具集 cfssl 来生成 Certificate Authority (CA) 证书和秘钥文件

    要安装kubernetes最新版集群,https://github.com/opsnull/follow-me-install-kubernetes-cluster 这个文档必须要研习一下了. 以下实 ...

  6. CA机构介绍(Certificate Authority 域名SSL证书颁发机构)

    SSL证书机构即CA机构的全称为Certificate Authority证书认证中心,只有通过WebTrust国际安全审计认证,根证书才能预装到主流浏览器,成为全球可信的ssl证书颁发机构. HTT ...

  7. 用XCA(X Certificate and key management)可视化程序管理SSL 证书(3)--创建自己定义的凭证管理中心(Certificate Authority)...

    在第"用XCA(X Certificate and key management)可视化程序管理SSL 证书(2)---创建证书请求"章节中,我们介绍了怎样用XCA创建SSL证书请 ...

  8. CA certificate

    1 什么是CA certificate CA证书本质上是一把公钥. 2 为什么需要CA证书 是为了避免黑客冒充服务器,服务器通过CA证书证明自己是真的服务器,而不是黑客. 就是说,一旦客户端有了一个服 ...

  9. 高亚芳 mysql_MySQL · 专家投稿 · MySQL数据库SYS CPU高的可能性分析

    MySQL · 专家投稿 · MySQL数据库SYS CPU高的可能性分析 问题背景 我们在管理繁忙的 MySQL 数据库时,可能都有碰到 SYS CPU 高的经历:系统突然 SYS CPU 高起来, ...

最新文章

  1. c#,Winform同一系统中只运行一个实例。
  2. java构建词性词袋_词袋模型
  3. 5G PDCCH介绍
  4. jmeter存储http请求返回参数_Jmeter接口测试之HTTP请求默认值(八)
  5. 小说中场景的功能_如何让你的小说中的场景转换自如?
  6. 转:大规模网站架构技术原理透析
  7. linux下解压命令.7z,CentOS 下安装7-Zip 以及常用的解压命令
  8. 32岁了,我有机会转行做程序员吗?——Leo网上答疑(1)
  9. Perl语言入门——Perl变量简介
  10. ubuntu 解压与压缩 zip 文件
  11. linux认证ppt的图片,linux用户、组和身份认证-课件(PPT-精).ppt
  12. LocalDateTime类对时间的处理
  13. 仿网易LOFTER视差滚动列表
  14. 基于labview开发平台的声音信号采集及处理系统设计(任务书+lunwen+翻译及原文+vi源文件+查重报告)
  15. 用IDEA弹奏《起风了》伴奏音乐 Java语言 <源码分享> GitHub有趣的小项目
  16. sharedpreferences用法,京东面试真题解析,大厂面试题汇总
  17. Dell电脑 U盘启动盘 安装ubuntu
  18. 四旋翼无人机硬件,飞控,基站,NX
  19. 天线工程手册_“大神”给工控工程师快速成长的6点建议,看完你会少走弯路...
  20. IT碰碰车第四期:中国式创业因李开复而不同?

热门文章

  1. 如何通过API方式集成金蝶ERP
  2. linux 脚本usleep,Linux的sleep()和usleep()的使用
  3. 【Linux 0.11】第六章 引导启动程序
  4. P2P穿透StunServer
  5. 计算机 无法进入pe,电脑无法进入pe系统_电脑无法进入pe界面
  6. 七牛云实现视频拼接和转码
  7. 产品经理的私房菜 - 腾讯产品模型 - 沟通能力篇
  8. 数字图像处理之频域滤波
  9. C# 使用 Direct2D 实现斜角效果
  10. sorted()排序详解