通信流程:https【SSL/TLS】,git仓库【https/SSH】,蓝牙【面对面快传/AirDrop】

目录

[HTTPS = HTTP(80端口) + SSL/TLS协议(传输层,443端口)](#HTTPS = HTTP(80端口) + SSL/TLS协议(传输层,443端口))

密文传输:SSL的后续版本TLS

TLS1.2握手

[1.摘要算法(散列函数 Hash Function):验证信息的完整性,不可逆](#1.摘要算法(散列函数 Hash Function):验证信息的完整性,不可逆)

第三方认证

引入场景:中间人篡改数据和公钥

引入场景:中间人篡改证书

1.1数字签名:保证数据不被篡改

1.2安全证书:保证公钥不被篡改

包含公钥、域名、有效期、数字签名(第三方机构私钥生成)

存于服务器端,可下载

[应用:yarn/npm certificate has expiredHTTPS 证书过期](#应用:yarn/npm certificate has expiredHTTPS 证书过期)

2.非对称加密(一对秘钥):身份认证,加密解密会话秘钥

2.1服务端发送公钥,作为身份认证

[2.2客户端用密钥交换算法(如 RSA 或 ECDHE)生成的随机对称秘钥,作为协商的会话密钥](#2.2客户端用密钥交换算法(如 RSA 或 ECDHE)生成的随机对称秘钥,作为协商的会话密钥)

[2.3 RSA :客户端用公钥加密会话密钥,服务端用私钥解密该预主密钥(pre-master secret)](#2.3 RSA :客户端用公钥加密会话密钥,服务端用私钥解密该预主密钥(pre-master secret))

3.对称加密(一个秘钥):密文通信,加密和解密数据

[3.4. 服务端用会话密钥加密/解密数据,客户端用会话密钥解密/加密数据](#3.4. 服务端用会话密钥加密/解密数据,客户端用会话密钥解密/加密数据)

SSL重连

[A.通过session ID:只能是同一个服务器](#A.通过session ID:只能是同一个服务器)

[B.通过session ticket:包含对话秘钥和加密方法的加密](#B.通过session ticket:包含对话秘钥和加密方法的加密)

git远程仓库

https:参照上述

SSH:传输层(TCP的22端口)

与TLS同:公钥加密,对称会话秘钥,哈希

公钥加密来安全交换或生成对称会话密钥

对称加密来保护数据传输

使用哈希或MAC防篡改数据。

与TLS区别:身份验证

[SSH 常用秘钥对](#SSH 常用秘钥对)

[TLS 多用证书和公钥](#TLS 多用证书和公钥)

[1.客户端生成密钥对SSH Key(公钥和私钥)](#1.客户端生成密钥对SSH Key(公钥和私钥))

[2.客户端:私钥 签名 随机数 或 特定挑战(challenge)](#2.客户端:私钥 签名 随机数 或 特定挑战(challenge))

3.服务器:公钥来验证签名,确认身份

[4.通常使用 Diffie-Hellman共同生成一个会话秘钥](#4.通常使用 Diffie-Hellman共同生成一个会话秘钥)

5.哈希函数加密数据,会话秘钥加密解密秘文

蓝牙

1.初始配对:互输PIN码(传统),公钥私钥加密

2.基于PIN,设备地址,随机数等生成一个共享/链路秘钥

3.会话秘钥加密解密

应用:面对面快传/AirDrop

蓝牙/wifi/定位:免流量,识别附近对象

参考链接

HTTPS = HTTP(80端口) + SSL/TLS协议(传输层,443端口)

用SSL/TLS对数据进行加密和解密

SSL的全称是Secure Sockets Layer,即安全 套接 层协议

TLS的全称是Transport Layer Security,即安全 传输 层协议

密文传输:SSL的后续版本TLS

TLS1.2握手

1.摘要算法(散列函数 Hash Function):验证信息的完整性,不可逆

用散列/哈希函数得到摘要/哈希值

MD5: 128位散列值 (要被淘汰了)

SHA-1: 160位散列值

SHA-256: 产出256位的散列值

第三方认证
引入场景:中间人篡改数据和公钥
引入场景:中间人篡改证书
1.1数字签名:保证数据不被篡改

一般收发双方会约定好签名串的需要包含哪些内容。

微信支付规定包含: HTTP请求方法URL请求时间戳请求随机串请求报文主体

  1. 发送方A散列 处理(不可逆签名串(固定信息) ,得到**摘要** HashA
  2. 私钥加密摘要得到签名,发送给接收方B
  3. 接收方B使用公钥验证签名,得到摘要 HashA
  4. 接收方B根据双方规定的构造签名串的方法,按照1的步骤生成新的摘要HashB
  5. 比较哈希值HashA。HashB是否一样,如果一样,则证明数据 没有被篡改(签名串包含了请求报文主体(传输的数据),请求体改了则摘要会变).
1.2安全证书:保证公钥不被篡改
包含**公钥、域名、有效期、**数字签名(第三方机构私钥生成)
存于服务器端,可下载
  1. 浏览器安装后会本地自带 权威第三方机构公钥 ,对数字签名 进行解密,拿到HashA
  2. 使用数字证书 中的摘要算法 计算一遍数字证书相关内容 ,生成摘要HashB,比对

证书机构 (CA: Certification Authority)的权威:

证书链(上层证书给下层证书认证)+系统自带自签根证书

证书一个一层套一层的链式关系,

上层证书给下层证书颁发证书和数字签名,下层证书找上层证书认证。

最后认证到根证书,最高层的根证书是自签的(自己给自己颁发证书)。

一般微软等公司会根据一些权威安全机构的评估,选取一些信誉很好,并且通过一定的安全认证的证书发布机构,把这些证书发布机构的证书默认就安装在操作系统里面了。

已安装的信任证书:

windows:win+R -> 输入certmgr.msc.

mac:钥匙串中证书

应用:yarn/npm certificate has expiredHTTPS 证书过期

a.淘宝镜像过期

b.镜像源不符合SSL安全套接协议

2.非对称加密(一对秘钥):身份认证,加密解密会话秘钥

2.1服务端发送公钥,作为身份认证
2.2客户端用密钥交换算法(如 RSA 或 ECDHE)生成的随机对称秘钥,作为 协商的会话密钥
2.3 RSA :客户端用公钥加密会话密钥,服务端用私钥解密该预主密钥(pre-master secret)

2.3 ECDHE**:** 客户端和服务器通过椭圆曲线 Diffie-Hellman 交换来共同生成会话密钥。

3.对称加密(一个秘钥 ):密文通信,加密和解密数据

3.4. 服务端用会话密钥加密/解密数据,客户端用会话密钥解密/加密数据
  • TLS 1.2,消息认证码(MAC,Message Authentication Code):发送方使用共享密钥和MAC算法对消息进行哈希处理
  • TLS 1.3,GCM(Galois/Counter Mode):加密密钥与非加密的MAC密钥相关联来工作。它使用Counter模式和Galois Field运算来实现加密和认证。

SSL重连

A.通过session ID:只能是同一个服务器

目前所有的浏览器都支持这一种方法。

但是这种方法有一个缺点是,session ID 只能够存在一台服务器上,如果我们的请求通过负载平衡被转移到了其他的服务器上,那么就无法恢复对话。

B.通过session ticket:包含对话秘钥和加密方法的加密

session ticket 是服务器在上一次对话中发送给客户的,这个 ticket 是加密的,只有服务器能够解密,里面包含了本次会话的信息,比如对话秘钥和加密方法等。这样不管我们的请求是否转移到其他的服务器上,当服务器将 ticket 解密以后,就能够获取上次对话的信息,就不用重新生成对话秘钥了。

git远程仓库

https:参照上述

SSH:传输层(TCP的22端口)

SSH(Secure Shell)是一种加密的网络协议,用于安全地远程登录服务器、传输数据和执行命令。

与TLS同:公钥加密,对称会话秘钥,哈希

公钥加密来安全交换或生成对称会话密钥
对称加密来保护数据传输
使用哈希或MAC防篡改数据。

与TLS区别:身份验证

SSH 常用秘钥对
TLS 多用证书和公钥

1.客户端生成密钥对SSH Key( 公钥和私钥**)**

ssh-keygen 命令

公钥在 ~/.ssh/authorized_keys 文件中,添加到远程服务器

私钥在 ~/.ssh/id_rsa(默认名称)或其他自定义名称的文件中,保留在本地机器上。

RSA(Rivest-Shamir-Adleman)算法是一种非对称加密算法,广泛用于加密和数字签名

2.客户端:私钥 签名 随机数 或 特定挑战(challenge)

3.服务器:公钥来验证签名,确认身份

4.通常使用 Diffie-Hellman共同生成一个会话秘钥

5.哈希函数加密数据,会话秘钥加密解密秘文

蓝牙

1.初始配对:互输PIN码(传统),公钥私钥加密

无线公钥基础设施(Wireless Public Key Infrastructure,WPKI)的安全连接可能不需要输入

2.基于PIN,设备地址,随机数等生成一个共享/链路秘钥

3.会话秘钥加密解密

应用:面对面快传/AirDrop

蓝牙/wifi/定位:免流量,识别附近对象

参考链接

相关推荐
ZZZCY20032 小时前
华为ENSP--IP编址及静态路由配置
网络·华为
EasyCVR2 小时前
私有化部署视频平台EasyCVR宇视设备视频平台如何构建视频联网平台及升级视频转码业务?
大数据·网络·音视频·h.265
hgdlip2 小时前
主IP地址与从IP地址:深入解析与应用探讨
网络·网络协议·tcp/ip
珹洺3 小时前
C语言数据结构——详细讲解 双链表
c语言·开发语言·网络·数据结构·c++·算法·leetcode
科技象限3 小时前
电脑禁用U盘的四种简单方法(电脑怎么阻止u盘使用)
大数据·网络·电脑
东方隐侠安全团队-千里3 小时前
网安瞭望台第3期:俄黑客 TAG - 110组织与密码攻击手段分享
网络·chrome·web安全·网络安全
云计算DevOps-韩老师3 小时前
【网络云计算】2024第47周-每日【2024/11/21】周考-实操题-RAID6实操解析2
网络·云计算
lwprain4 小时前
安装支持ssl的harbor 2.1.4 docker 19.03.8 docker-compose 1.24.0
网络协议·ssl·harbor
软件技术员4 小时前
Let‘s Encrypt SSL证书:acmessl.cn申请免费3个月证书
服务器·网络协议·ssl