数字签名

数字签名机制保证接收方接收到的消息是可靠真实的

数字签名必须保证以下三点:

  • 报文鉴别:接收者能够核实发送者对报文的签名(通过证书颁发机构CA)
  • 报文的完整性:发送者事后不能抵赖对报文的签名
  • 不可否认:接收者不能伪造对报文的签名

现在已有多种实现各种数字签名的方法。但采用非对称加密算法更容易实现:

非对称加密技术可以参考我之前写的文章:

网络安全-加密技术(对称/非对称)

数字签名的流程

  1. 发送方用Hash函数,生成信件的摘要(digest)
  2. 使用发送方的私钥,对这个摘要加密,生成"数字签名"(signature)
  3. 将这个签名,附在信件下面,一起发给接收方
  4. 接收方收信后,取下数字签名,用发送方的公钥解密,得到信件的摘要,由此证明,这封信确实是鲍勃发出的
  5. 接收方再对信件本身使用Hash函数,将得到的结果,与上一步得到的摘要进行对比。如果两者一致,就证明这封信未被修改过

证书颁发机构CA(certificate authority,简称CA)

CA来验证公钥是否是证书颁发机构认证过

假设发送方是"鲍勃",方便用下面这张图理解:

本图取自阮一峰的博客,"鲍勃"代表发送方

链接:https://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html

每个发送方,都要对其公钥做认证,将可以证实自己身份真实性的信息及其公钥提交给CA,CA用私钥对信息加密形成数字证书(一次认证,次次放心)

接收方用CA的公钥解密数字证书,就可以拿到发送方真实的公钥了,通过这把公钥,解析发送方的数字签名,得出的摘要与接收方掌握的公钥解析出的摘要对比,一致就证明是真实的

网络安全(三)_数字签名与证书颁发机构CA相关推荐

  1. 自定义根证书颁发机构 CA 生成自签名证书

    本文为使用过程中的一个工具记录,可实现在本地开启一个 HTTPS 服务器用于开发或测试. 前面有写过使用 Node.js 搭建 HTTPS 服务器 其中的自签名生成证书方式比较简单,既充当 HTTPS ...

  2. 在中小型公司建立企业根证书颁发机构 (CA)

    http://www.microsoft.com/china/technet/security/sgk/build_ent_root_ca.mspx?pf=true

  3. centos 配置证书_如何在CentOS 8上设置和配置证书颁发机构(CA)

    centos 配置证书 介绍 (Introduction) A Certificate Authority (CA) is an entity responsible for issuing digi ...

  4. 如何在Ubuntu 20.04上设置和配置证书颁发机构(CA)

    介绍 (Introduction) A Certificate Authority (CA) is an entity responsible for issuing digital certific ...

  5. 什么是证书颁发机构?

    CA:证书颁发机构 (CA: Certificate Authority) CA is an abbreviation of the "Certificate Authority" ...

  6. SSL/TLS协议详解(三)——证书颁发机构

    目录 证书颁发机构的需求 数字签名的定义 证书颁发机构的技术实现 如果攻击者篡改证书会怎样 信任链 数字签名的数学算法 浏览器如何实际验证给定服务器证书的有效性 TLS加密客户端-服务器通信并阻止中间 ...

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

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

  8. 让自己的主机成为证书颁发机构

    让自己的主机成为证书颁发机构         在互联网的世界里证书就是我们在这个网络世界的"×××",通过这个"×××"我们来证明自己的真实性,判断对方的真 实 ...

  9. SSL/TLS协议详解(中)——证书颁发机构

    SSL/TLS协议详解(中)--证书颁发机构 本文翻译自:https://www.wst.space/ssl-part-3-certificate-authority/ 上一篇中,我们讨论了关于Dif ...

最新文章

  1. 用Python解“两个数的简单计算器”题
  2. 一万的阶乘c语言方法,求10000的阶乘(c语言代码实现)
  3. 被3整除的子序列(简单dp)
  4. java在文本区输出方法_Java文件的几种读取、输出方式
  5. HDU 1421 搬寝室 解题报告(超详细)
  6. [html] 字体图标加载出来成了小方块,是什么原因呢?如何解决?
  7. linux加入微软,微软正式加入Linux基金会
  8. LightGBM大战XGBoost,谁将夺得桂冠?
  9. 基于Quartus II+ModelSim SE的后仿真(Verilog版)
  10. 软开关设计漫谈_软件篇
  11. WebLogic安装说明
  12. IEEE Fellow 2019 名单出炉,40 位国内高校学者入选
  13. 企业级自动化运维工具-ansible
  14. mac登陆远程服务器
  15. 飞机实时动态查询接口代码调用服务
  16. 视频教程-沐风老师Scratch3.0快速入门视频课程-其他
  17. VS2008 ActiveX(ocx控件)的调试工具ActiveX Control Test Container安装说明
  18. Linux虚机 下给用户调整安装JDK版本
  19. Android studio诗词app古诗词中国风记事本ui设计中国古诗词
  20. iconfont字体图标线上环境加载偶尔乱码问题

热门文章

  1. 美团大数据开发转正实习面经(已OC)
  2. Android App保护用户隐私————禁止应用截屏或录屏
  3. 注册表禁用U盘、注册表屏蔽USB端口的方法
  4. 从自建服务器到选择阿里云
  5. 哈希冲突和哈希冲突攻击解析
  6. 基于分形的山脉河流生成
  7. ABP VNext 利用QQ邮箱发送邮件
  8. 2018蓝桥杯模拟赛(一)H【floyd求最短路径】
  9. 监控案例实战 -- Zabbix 监控 企业级路由器
  10. Ubuntu编译GPU版本Pytorch