【网络安全】理解报文加密、数字签名能解决的实际问题

这篇具有很好参考价值的文章主要介绍了【网络安全】理解报文加密、数字签名能解决的实际问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

工作中重新接触了 【公钥、私钥、签名】的概念。抽空重新看了《计算机网络》和国外的小黑书,把这块基础知识再收敛一下。基于小黑书的叙事结构,把网络安全解决的实际问题拆解成:

  • 防止报文泄露
  • 防止报文被篡改
  • 实体鉴别
  • 端点鉴别
  • 防止重放攻击

1. 防止报文泄露 —— 加密体系的出现

网络丢包是常见的事情,丢包意味着报文可能被截获。怎样能够减少丢包造成的损失呢?两个思路

  • 物理隔绝 —— 内网通信
  • 保护信息 —— 报文加密

如果两家公司在公网上通信,涉密信息的报文一定要经过加密。加密又有两种形式,(这个网上资料很多,不再赘述)

  • 对称加密
  • 非对称加密

NOTE: 非对称加密算法复杂,消耗的资源多,所以实际应用是【非对称加密 + 对称加密】,旨在确保通信安全的前提下兼顾效率。

1.1 理解非对称加密体系的实施难点
  • 以 RSA 非对称算法为例,比DES慢 2~4个数量级
  • 多对多的网络模式下,密钥的管理和交换比对称加密复杂
1.2 加密体系的实际应用
  • A与B用RSA(非对称加密)交换会话密钥(对称密钥
  • A和B在一段时间内,都使用会话密钥进行通信。

【网络安全】理解报文加密、数字签名能解决的实际问题,计算机网络,基础,后端,web安全,安全

2. 防止报文被篡改 —— 数字签名的出现

上文提到,报文加密可以减少丢包的损失。简单来说就是截获网络报文的人看不懂双方在讲什么。只加密就完了吗?我们把攻击者想象得太简单了,有一些攻击者,会做这些事

  • 从发送方中把报文(密文)篡改了,再丢给接收方。接收方从密文中还原的明文也就成了乱码。
  • 从发送方中获取明文和密钥,修改明文,加密后再发给接收方。接收方就被误导了。

有没有办法证明报文本身没被篡改呢?大体思路是这样的:

  • 报文中确保有发送者的签名
    【网络安全】理解报文加密、数字签名能解决的实际问题,计算机网络,基础,后端,web安全,安全
  • 签名一定要与内容进行绑定,内容变了,签名失效。(完成这种机制的就是数字签名)
    【网络安全】理解报文加密、数字签名能解决的实际问题,计算机网络,基础,后端,web安全,安全

值得注意的是,“签名” 一词在中文里面表达一种不变量,比如小明本人签字,内容一定是“小明”。而在计算机世界中,这个 “签名” 是被计算出来的,根据内容实时变化的。

2.1 数字签名的原理

数字签名以非对称加密为基础。
“公钥加密,私钥解密” 这个是大多数人的共识,但是这里存在容易混淆概念的地方。
因为中文的“解密”一定出现在“加密”之前。实际上把 “加密” 和 “解密” 都换成 “运算”,更合理些。
因为运算是可以满足交换律的,数字签名就是使用的运算的交换律
【网络安全】理解报文加密、数字签名能解决的实际问题,计算机网络,基础,后端,web安全,安全

  • A 生成密文后,用自己的私钥 (全宇宙只有自己持有),对密文进行X运算,生成数字签名。把密文和数字签名一起发送给 B
  • B 收到密文后,先用 A 的 公钥 对数字签名进行D运算。由于X运算和D运算满足交换律,所以对数字签名进行D运算会解析出密文。如果这个密文和A给的密文不一致,则报文被篡改。
  • 以上的 D运算 实际上就是验签
  • 由于A的私钥是全宇宙唯一的,所以A的签名不可伪造,也不可抵赖(A说自己没发过这个报文,但是世界不会承认他没发过)
2.2 数字签名的实施难点

非对称加密比较消耗资源,特别是对大报文进行运算。

2.2 数字签名的实际应用 —— 引入摘要算法

既然大报文消耗性能,能不能把报文弄小? 思路其实就是摘要算法,常见的 md5、sha-1 就是摘要算法(也叫散列算法)。
【网络安全】理解报文加密、数字签名能解决的实际问题,计算机网络,基础,后端,web安全,安全

  • 程序中的应用
// 把签名拼接到密文后面,接收者再解析出签名,验签即可
密文.签名

3. 实体鉴别 —— CA证书

上文提到,现实的通信基础,是对称和非对称加密结合。那么自然就引出了两个议题

  • 如何交换密钥
  • 如何证明 “A的公钥属于A”

这块内容是密钥管理的内容,内容多的可以单独开个专题来讲了。对于通信双方,只需要知道CA证书的存在即可,他是作为密钥管理的第三方,CA = Certification Authority (认证中心)。具体的管理方式:

  • A 在认证中心上注册了自己的公钥,获得了CA证书。
  • B 要与 A 通信前先用 A 给的 CA 证书去认证中心确认公钥来自于 A

后记

值得一提的是,理解了上述概念,再看看jwt的报文组成,就显得合理多了。

另外,理解报文加密、数字签名就写到这里。

下面的两个话题主要是防止中间人攻击。

  • 端点鉴别
    • 类似于回答 “证明你是你的问题”,比如现实生活中的活体认证(扫脸)。
      EG:
      • 一个ip数据包的源地址为 102.189.67.134,已知报文可以伪造,怎么证明该ip数据包就是 102.189.67.134 发出的
      • 结论:类似这种 ip欺骗 (如 DDOS 攻击)的攻击手段,在网络层执行。应用层已经没有痕迹了 ,只能用 加密口令 加大攻击难度

  • 防止重放攻击
    • 可以联想一下业务的幂等控制,通常以”加锁“的方式实现。但是通信领域需要高效的解决方案,加锁太重了,取而代之的是采用 ”不重数集“。
      EG:
      • 102.189.67.134 发起交易请求的报文被攻击者复制了一份(注意,是复制而不是截获,因为问题主干是 “重放”),攻击者把源ip地址改为 102.189.67.134 (伪造成原来的发送方),再发送出去,接收方怎么识别这种攻击呢?
      • 结论:类似于TCP的滑动窗口,两边约定一个不重数集合,消费过的数据不会被重复消费。

实际开发中暂时还接触不到这些,等有实际的工作体验后再来补充这部分的内容。文章来源地址https://www.toymoban.com/news/detail-673317.html

到了这里,关于【网络安全】理解报文加密、数字签名能解决的实际问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【安全】对称加密、非对称加密、数字签名和CA是什么?

    今天学习了关于网络通信过程中的安全相关的知识,还有一些基础的概念,现做以总结,博客的图示都是自己画的,如果能够有助于你的理解,请点个赞收藏一下~~ 目录 对称加密 非对称加密算法  数字签名和CA 证书的信任链 根身份证和自签名   对称加密的一方(比如小蓝)

    2023年04月08日
    浏览(11)
  • 软考:中级软件设计师-信息系统的安全属性,对称加密和非对称加密,信息摘要,数字签名技术,数字信封与PGP

    提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联网大厂的笔试面试,都是需要细心准备的 (1)自己的科研经历, 科研内容 ,学习的相关领域知识,要熟悉熟透了 (2)自己的实习经历,做了 什

    2024年04月22日
    浏览(9)
  • 软考:中级软件设计师:信息系统的安全属性,对称加密和非对称加密,信息摘要,数字签名技术,数字信封与PGP

    提示:系列被面试官问的问题,我自己当时不会,所以下来自己复盘一下,认真学习和总结,以应对未来更多的可能性 关于互联网大厂的笔试面试,都是需要细心准备的 (1)自己的科研经历, 科研内容 ,学习的相关领域知识,要熟悉熟透了 (2)自己的实习经历,做了 什

    2024年02月10日
    浏览(11)
  • 计算机网络实验之加密、数字签名与证书

    1.对称加密 2.散列函数 3.非对称加密 4.数字签名 5.证书 2.1 对称加密 (1)安装 OpenSSL:登录阿里云服务器,输入命令:“yum install openssl openssl-devel -y”,结果如下图所示,OpenSSL安装成功。 图2.1-1 安装OpenSSL (2)创建lx.txt文件:输入“vi lx.txt”命令创建 lx.txt 文件,并写入“世

    2024年02月08日
    浏览(53)
  • 【网络安全---ICMP报文分析】Wireshark教程----Wireshark 分析ICMP报文数据试验

    分享一个非常详细的网络安全笔记,是我学习网安过程中用心写的,可以点开以下链接获取: 超详细的网络安全笔记 两台kali主机(虚拟机)                  kali2022   192.168.220.129/24                 kali2022   192.168.220.3/27 1-2-1 网关配置:    编辑-------- 虚拟网路编辑器

    2024年02月07日
    浏览(16)
  • python实现对称加密、数字签名、数字证书颁发

    一.开发目的: 理解开源密码库实现的基本架构,熟悉对称算法的加解密函数封装与调用,并能能够利用开源设计接口进行二次封装,并实现一个界面友好,功能正确的采用对称算法的文件加解密工具。 二.开发环境: 硬件环境: 处理器:Intel®Core™i5-1035G1 CPU @1.00GHz 1.19GHz2

    2024年02月13日
    浏览(12)
  • 区块链:对称加密、非对称加密和数字签名

    本篇博客仅从区块链的角度介绍加密算法及数字签名,重在使用,至于加密算法的内部原理这里不会详细介绍。 1 对称加密 1.1 定义   对称加密,指的是信息发送者和接收者通过使用的相同的密钥来完成数据的加密和解密。常用的对称加密算法有:AES、DES、3DES等。 1.2 AES算

    2024年02月10日
    浏览(14)
  • HTTPS加密原理,搞懂什么是对称加密、非对称加密、证书、数字签名

    众所周知,http协议是一种未加密的协议,我们未加密的数据,在传输的过程中会经过一个又一个的物理节点,如果被人通过抓包的方式拿到了我们的数据,将会给我们造成无法估量的损失。 为了解决解决这个问题,https应运而生。https通过加密的手段,保障的数据的安全性。

    2024年02月01日
    浏览(23)
  • 数字证书:签名证书&加密证书

    数字证书是基于认证机构(可信第三方)实现的,若不懂请复习PKI相关知识,我国为了加强对数据机密性的管控,采用双证书体系(签名证书加密证书),签名密钥对由用户自己产生,而加密密钥对则是由KMC(密钥管理中心)生成。 ———————————————————

    2024年02月08日
    浏览(22)
  • SpringCloudGateway实现数字签名与URL动态加密

    再网络传递数据的时候,为了防止数据被篡改,我们会选择对数据进行加密,数据加密分为对称加密和非对称加密。其中RSA和AES,TLS等加密算法是比较常用的。 对称加密是指加密和解密使用相同的密钥的加密方法。其基本流程包括以下步骤: 密钥生成 : 双方协商生成一个共

    2024年02月07日
    浏览(13)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包