科普之加密、签名和SSL握手

一 背景知识

bash 复制代码
感悟: 不能'高不成低不就'

备注: 以下内容'没有'逻辑排版,仅'做记录'

① 加密方式

bash 复制代码
说明: '单向'和'双向'认证

遗留: 如何用openssl从'私钥'中提取'公钥'?

② 互联网数据安全可靠条件

bash 复制代码
说明: '二者'相互印证

二 互联网加密的细节

① 多种方式混合进行加密

bash 复制代码
说明: '加密'保证数据传输过程的'安全性'

② 图解加密和解密

bash 复制代码
细节1: 对称密钥只对'data'进行加密

细节2: 用'对方公钥B'对对称密钥加密

细节3: 用对称密钥'对data加密后的数据'和用'对方公钥'对对称密钥进行加密后数据'一起'发送

注意: '箭头'方向

③ 为什么要使用https

三 互联网数据签名的细节

① 信息摘要和数字签名理解

bash 复制代码
思考: 如何'保证'数据的完整性和一致性、数据来源的可靠性?

② 数字签名保证了完整性、一致性、来源可靠

③ 数字签名和确认数据的过程

bash 复制代码
说明: '公钥'任何人都能获取,'私钥'自己保留

四 互联网数据安全传输的细节

① 不在意数据丢失

bash 复制代码
 不在意数据'丢失'泄密,而在意数据'完整性'
bash 复制代码
说明: 不加密,'明文',别人能看到发送内容

通俗: 内容你'随便'看,但是如果你'修改'了,我就知道,一般是'非机密'数据,软件'下载'之类

② 在意数据传输泄露

③ 加密和数字签名过程以及反向过程

④ 漏洞引出CA机构

bash 复制代码
漏洞: 在'张三'和'李四'的通信过程中,'王五'做了什么?

  1、 声称'(谎称)'自己是张三,并把'王五自己的公钥'给了'李四'

  2、 然后王五用自己的私钥对'木马程序'进行签名

  3、 进行'对称加密后'再使用'李四的公钥'加密,最后'传输给李四'

五 CA、PKI及信任CA 公信机构

① CA机构生成数字证书过程

② CA自身可靠性保证

bash 复制代码
说明: 信任CA证书的'两个作用'
bash 复制代码
思考: 如何证明'浏览器'收到的公钥'一定是'该网站的公钥 --> 'CA'

遗留:

  1、浏览器厂商'内置'了根证书

  2、证书链的'深度',签发'层级',也是'校验'层级

六 数字证书类型和内容

① SSL证书格式分类

bash 复制代码
细节点:从'数字证书'中获取网站的'公钥'

② 数字证书包含信息

bash 复制代码
数字签名:防止数字'证书'被'篡改'

七 SSL握手机制

① 有了CA后通信机制区别

② 服务器单向认证

bash 复制代码
1: 图谱'交互'过程
bash 复制代码
2: '详细'解析

++++https的握手协议过程RFC文档++++

bash 复制代码
3: '注意'事项

HTTPS双向认证指南

BOB和ALICE通信

八 TLS/SSL初探

① TLS/SSL发展

bash 复制代码
1、TLS协议有'20多年'的历史,所以它有'很多'加密方式

2、为了'理解'TLS1.3中的加密方式,才要'先学习'TLS1.1和 TLS1.2的加密方式

② TLS协议的两部分

bash 复制代码
1、为了解决'保密'性,所以要使用'对称'加密

2、传递密钥通过'握手协议'来完成

备注:为了能够传递密钥首先需要交换加解密的安全套件,协商加密参数,然后构造出各自加密的对称密钥了

3、为了解决'身份验证'问题,还有一个'验证通讯双方身份验证'的步骤,一般是通过'证书'进行验证

③ TLS 安全密码套件demo解读

bash 复制代码
说明: 基于'以上②'的理解,对'TLS安全密码套件'做一个解读

下面: 以TLS1.2中'经常使用'的安全加密套件,以此为'契机'进行解读
相关推荐
Lsetea15 小时前
OpenSSL verify报unable to get issuer certificate:error 2与partial_chain排查
linux·https·ssl证书·openssl·证书链
青春不朽51217 小时前
requests 超时、重试、SSL 报错?9 个高频问题与一整张排错对照表
网络·网络协议·ssl
天天进步201519 小时前
Caddy 实战:5 分钟给域名开启 HTTPS,自动申请 SSL 证书并反向代理
网络协议·https·ssl
xixingzhe21 天前
正确认知HTTPS:并非万能加密,通信安全需要多层防护
网络协议·安全·https
Lsetea1 天前
OpenSSL verify报unhandled critical extension:error 34与关键扩展排查
运维·https·ssl证书·openssl·证书链
Lsetea2 天前
OpenSSL verify报CA certificate key too weak:auth_level与弱密钥链排查
运维·https·ssl证书·openssl·证书链
灯澜忆梦2 天前
【minio】#5 | MinIO 分布式部署 + HTTPS 部署
分布式·网络协议·https·对象存储·minio
Lsetea2 天前
Nginx加载证书时报SSL_CTX_use_PrivateKey_file失败:私钥配对与权限排查
nginx·https·ssl证书·私钥·证书部署
熊文豪3 天前
KingbaseES 数据加密全解:从 SSL 到全密态
网络·网络协议·ssl
idanzk3 天前
Git 推送 GitHub 报 SSL_READ /src refspec main 不匹配 完整踩坑记录
git·github·ssl