当前位置: 首页 > article >正文

网络信息传输安全

目录

机密性-加密

对称加密

非对称加密

身份认证

摘要算法和数据完整性

数字签名 签名验签

数字证书

申请数字证书所需信息

数字证书的生成

数字证书的应用 https协议

数字证书的申请


数据在网络中传输过程中,怎么做到

  1. 数据没有被篡改?hash算法
  2. 信息发送者的身份认证?用发送者的私钥对数据进行加密,接收者只能用发送者的公钥进行解密。发送者的公钥怎么给到接收者?如果还是用网络进行传输,无法保证公钥本身的传输安全啊?比如,A用RSA算法生成了自己的一对公钥、私钥,A把信件的内容用hash算法生成摘要,用私钥加密摘要信息形成数字签名,在网络上发送信件的时候,A的公钥,信件本身,数字签名三者会在网络上进行传输,黑客可以截获到这些信息,黑客用新生成的一对公钥,私钥,重新生成数字签名,给到接收者,接收者收到的就是黑客篡改过的内容了
  3. 怎么确保信息发送者的身份没有被截获篡改?用数字证书证明发送者的身份。数字证书由发送者向权威机构申请,包含了身份信息(发送者的公钥)。
  4. 怎么保证数字证书的安全?数字证书是经过ca机构数字签名的,ca机构也生成一对公钥、私钥,用私钥对发送者的公钥及一些信息进行数字签名,放入数字证书当中,此时数字证书就相当于发送者的身份信息、公钥和数字签名的组合,在个人的电脑或手机里安装根证书,根证书中记录了可以信赖的ca机构和其对应的公钥,就可以用公钥去验证数字证书的内容,从而确认发送者的公钥是自己的。

机密性-加密

对称加密

AES加密算法,密钥长度128、192或256,安全强度很高,性能很好 

加密分组模式:将明文分组加密,微信支付中使用 AEAD_AES_256_GCM

非对称加密

 使用公钥加密后只能用私钥解密,反过来,私钥加密后也只能用公钥解密 

RSA加密算法:最著名的非对称加密算法

身份认证

公钥加密私钥解密,可以确保数据的机密性

私钥加密公钥解密,可以进行身份的认证

摘要算法和数据完整性

hash值一直表示文件内容没有被篡改过

常见的摘要算法:md5、sha1、sha2(sha224、sha256、sha384)

数字签名 签名验签

  1. A要发邮件给B,A把自己的信件内容用摘要算法,生成摘要
  2. A用自己的私钥加密摘要,形成一份签名,追加到信件中
  3. B收到信件,先把信件的内容用相同的hash算法,生成摘要1
  4. B把信件中的签名,用A的公钥加密,生成摘要2
  5. 比对两份摘要,如果一致,可以说明信件没有被篡改过,并且是A发的信件

B怎么拿到的A的公钥?如果也是通过网络进行传输,又可能被黑客截取篡改,怎么办?

数字证书

公钥信任问题,黑客可能伪造公钥,这个怎么办呢?把公钥放到数字证书中,数字证书需要向有社会公信力的CA机构进行申请,申请时需要提供身份信息

申请数字证书所需信息

数字证书的生成

  1. A向ca机构申请数字证书,填入相关的身份信息和A的公钥
  2. ca机构把A的公钥和身份信息hash运算后,用自己生成的私钥加密形成数字签名
  3. 把生成的数字签名追加到数字证书中颁布给A

  1. bob发送的信件,包含数字证书、数字签名和内容
  2. pat拿到信件,用自己本地安装的ca机构的公钥解密数字证书,获取bob用自己的公钥和身份信息生成的hash值,用相同的hash算法也生成hash值,比对,如果一致证明公钥是bob的
  3. 用拿到的bob的公钥再去解密信件内容,剩下的步骤就和上面的一样了

数字证书的应用 https协议

网站想要使用https

数字证书的申请

  免费的数字证书申请可访问Let's Encrypt


http://www.kler.cn/a/314356.html

相关文章:

  • ARM架构中断与异常向量表机制解析
  • 2411d,右值与移动
  • Centos安装Elasticsearch教程
  • 性能测试|JMeter接口与性能测试项目
  • 【学习】Fine-tuning知识汇总
  • 2024/11/13 英语每日一段
  • R18 Enhancements on CHO procedure for NES cell(s)(NES event)
  • Linux相关概念和重要知识点(5)(权限的修改、时间属性)
  • 蓝桥杯【物联网】零基础到国奖之路:七. 串口
  • 4、FPGA特征简介
  • 重生之我们在ES顶端相遇第15 章 - ES 的心脏-倒排索引
  • R语言机器学习算法实战系列(二) SVM算法(Support Vector Machine)
  • ChatGPT 在国内使用的方法
  • 论文阅读 - SELF-REFINE: Iterative Refinement with Self-Feedback
  • 了解二八定律,提高工作效率、生活质量
  • Maven笔记(二):进阶使用
  • 国产Linux:OpenEuler溯源
  • 初级前端面试
  • 【RabbitMQ】⾼级特性
  • 关于有源蜂鸣器及无源蜂鸣器的区别及驱动各类单片机案例
  • 华为---代理ARP工作过程示例分析
  • 使用ultralytics库微调 YOLO World 保持 Zero-Shot 能力
  • Go小专栏 第一期
  • 【前端】ES6:Promise对象和Generator函数
  • 【MySQL 01】数据库基础
  • 配置docker的proxy指向