【每日一记12】+第16天:透视HTTPS建造固若金汤的城堡(五)
  

易逝的信仰 1485

{{ttag.title}}
现在我们为了机密性从对称加密到非对称加密,而非对称加密还解决了密钥交换不安全的问题。那么是否可以直接使用非对称加密来实现机密性呢?
答案是否定的!
因为非对称加密运算速度比较慢。所以需要两者结合,混合模式实现机密性问题,同时又有很好的性能。
加密流程如下所示
  • 先创建一个随机数的对称加密密钥,会话密钥(session key)
  • 使用会话密钥加密需要传输的明文消息,因为对称加密性能较好,接着再使用非对称加密的公钥对会话密钥加密,因为会话密钥很短,通常只有 16 字节或 32 字节,所以加密也不会太慢。这里主要就是解决了非对称加密的性能问题,同时实现了会话密钥的机密交换。
  • 另一方接收到密文后使用非对称加密的私钥解密出上一步加密的 会话密钥,接着使用会话密钥解密出加密的消息明文。

总结一下就是使用非对称加密算法来加密会话密钥,使用对称加密算法来加密消息明文,接收方则使用非对称加密算法的私钥解密出会话密钥,再利用会话密钥解密消息密文。
这样混合加密就解决了对称加密算法的密钥交换问题,而且安全和性能兼顾,完美地实现了机密性。
后面还有完整性、身份认证、不可否认等特性没有实现,所以现在的通信还不是绝对安全。
摘要算法与完整性
摘要算法的主要目的就是实现完整性,通过常见的散列函数、哈希函数实现。
我们可以简单理解成这事一种特殊的压缩算法,将任意长度的明文数据处理成固定长度、又是独一无二的“摘要”字符串,就是该数据的指纹。
同时摘要算法是单向加密算法,没有密钥,加密后的数据也无法解密,也就是不能从“摘要”推导出明文。
比如我们听过或者用过的 MD5(Message-Digest 5)、SHA-1(Secure Hash Algorithm 1),它们就是最常用的两个摘要算法,能够生成 16 字节和 20 字节长度的数字摘要。
完整性实现
有了摘要算法生成的数字摘要,那么我们只需要在明文数据附上对应的摘要,就能保证数据的完整性。
但是由于摘要算法不具有机密性,不能明文传输,否则***可以修改消息后把摘要也一起改了,网站还是鉴别不出完整性。
所以完整性还是要建立在机密性上,我们结合之前提到的混合加密使用 ”会话密钥“ 加密明文消息 + 摘要,这样的话***也就无法得到明文,无法做修改了。这里有个专业术语叫“哈希消息认证码(HMAC)”。
比如诸葛亮使用上面提到的混合加密过程给关二爷发消息:“明天攻城” + “SHA-2 摘要”,关二爷收到后使用密钥将解密出来的会话密钥解密出明文消息,同时对明文消息使用解密出来的摘要算法进行摘要计算,接着比对两份“摘要”字符串是否一致,如果一致就说明消息完整可信,没有被敌军修改过。
消息被修改是很危险的,要以史为鉴,比如赵高与李斯伪造遗诏,直接把扶苏给送西天了,这太可怕了。
总结下就是通过摘要比对防止篡改,同时利用混合加密实现密文与摘要的安全传输。

打赏鼓励作者,期待更多好文!

打赏
2人已打赏

伊利丹·怒风 发表于 2021-6-7 16:15
  
谢谢分享,有助于工作!
伊利丹·怒风 发表于 2021-6-7 16:19
  
谢谢分享,有助于工作!
发表新帖
热门标签
全部标签>
2025年技术争霸赛
每日一问
功能体验
标准化排查
GIF动图学习
纪元平台
新版本体验
产品连连看
高手请过招
平台使用
【 社区to talk】
2023技术争霸赛专题
每周精选
2024年技术争霸赛
社区新周刊
安全效果
信服课堂视频
畅聊IT
答题自测
专家问答
技术笔记
技术圆桌
在线直播
MVP
网络基础知识
安装部署配置
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
排障笔记本
产品预警公告
玩转零信任
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
卧龙计划
华北区拉练
天逸直播
以战代练
秒懂零信任
技术晨报
技术盲盒
山东区技术晨报
文档捉虫
齐鲁TV
华北区交付直播
北京区每日一练
场景专题
故障笔记
排障那些事
西北区每日一问
升级&主动服务
高频问题集锦
POC测试案例
全能先锋系列
云化安全能力
专家说
热门活动
产品动态
行业实践
产品解析
关键解决方案

本版达人

feeling

本周分享达人

新手29676...

本周提问达人