通信流程: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/定位:免流量,识别附近对象

参考链接

相关推荐
明志数科12 分钟前
人形机器人格斗场景下的技术挑战:动力学控制、感知融合与实时决策
网络·数据库
酉鬼女又兒14 分钟前
零基础入门 DeepSeek V4 Pro API 开发:从环境搭建、消息格式规范到翻译函数实战、少样本提示、多轮对话聊天机器人与常见报错全流程详解指南
大数据·网络·数据库·人工智能·macos·机器人·github
欧神附体12329 分钟前
在虚拟机中添加网卡,修改网卡名并关闭SElinux
linux·服务器·网络
德迅云安全-上官1 小时前
源站隐身 + 流量清洗,高防 IP 品牌实力精选
网络·网络协议·tcp/ip
Triv20251 小时前
Profinet与Modbus协议转换网关HD67602的硬件特性与配置方法
网络·plc·modbus·profinet·工业网关·协议转换
珠***格3 小时前
XGF10-Z-4典型接入方式解析:10千伏专变用户380伏多点分布式光伏如何并网?
网络·人工智能·分布式·安全·边缘计算
盟接之桥3 小时前
跨越数字鸿沟,重塑全球信任:盟接之桥EDI如何以长期主义赋能中国制造出海
网络·人工智能·安全·汽车·制造
一只小菜鸡..3 小时前
Stanford CS144 学习笔记 (四):网络拥塞控制与 AIMD 算法
网络·笔记·学习
AFinalStone4 小时前
Android 7系统网络(八)应用API层—ConnectivityManager使用与实战调试
android·网络
希望奇迹很安静5 小时前
数通基本实验
运维·服务器·网络