加解密算法+消息摘要+消息认证技术+数字签名+公钥证书
数据安全概述
当发送方A向接收方B发送数据时,需要考虑的问题有:
- 数据的安全性。
- 数据的完整性,即数据不被篡改。
- 数据的真实性,即数据确实来自于发送方,传输过程中没有被替换。
- 数据的不可否认性,即验证发送方确实发送了数据。
数据的安全性
要数据安全,就对数据加密emmmm;
加解密算法
分为对称加密和非对称加密,意思就是加解密是否使用相同的密钥;
对称加密
最终问题:密钥安全性,so,通过非对称加密解决
相关算法:DES 3DES AES RC5 RC6
非对称加密
最后问题:公钥合法性???
相关算法:RSA
数据的完整性
消息摘要
消息摘要函数时一种用于判断数据完整性的算法,也称为散列函数或哈希函数,函数的返回值就散列值,散列值又称为消息摘要或者指纹。
这种算法是不可逆的,即无法通过消息摘要反向推导出消息,因此又称为单向散列函数。
算法:MD5、SHA最后的问题:数据真实性,so,通过**消息认证码(MAC)**解决;
数据的真实性
消息认证码
消息认证码(Message Authentication Code,简称MAC)是一种可以确认消息完整性并进行认证的技术。消息认证码可以简单理解为一种与密钥相关的单向散列函数。
最后问题:发送方的不可否认性?so…数字签名解决
数据的不可否认性
数字签名
数字签名(Digital Signature)可以解决发送方否认发送过消息的问题。
数字签名的重点在于发送方和接收方使用不同的密钥来进行验证,并且保证发送方密钥的唯一性,将公钥算法反过来使用可以达到此目的:A发送消息前,使用私钥对消息进行签名,B接收到消息后,使用配对的公钥对签名进行验证;如果验证通过,说明消息就是A发送的,因为只有A采用配对的私钥;第三方机构也是依据此来进行裁决,保证公正性。
最终问题:公钥合法性?emmm…公钥证书解决
公钥的合法性
公钥证书
将公钥交给一个第三方权威机构——认证机构(Certification Authority)CA来管理。接收方将自己的公钥注册到CA,由CA提供数字签名生成公钥证书(Public-Key Certificate)PKC,简称证书。证书中有CA的签名,接收方可以通过验签来验证公钥的合法性。
最后问题:emmm…没问题啦…都解决啦…
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
2019-09-19 三种构建方式:Makefile、scons、scons cmake+ninja
2019-09-19 scons 简单入门
2019-09-19 使用 Ninja 代替 make
2018-09-19 jstack调试core文件
2018-09-19 JVM致命错误日志(hs_err_pid.log)解读