Https建立链接的过程

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: Https建立链接的过程

面试官告诉我Https建立链接的过程

知识准备:非对称加密和对称加密的使用

非对称加密

非对称加密为数据的加密与解密提供了一个非常安全的方法,它使用了一对密钥,公钥(public key)和私钥(private key)。私钥只能由一方安全保管,不能外泄,而公钥则可以发给任何请求它的人。非对称加密使用这对密钥中的一个进行加密,而解密则需要另一个密钥。比如,你向银行请求公钥,银行将公钥发给你,你使用公钥对消息加密,那么只有私钥的持有人--银行才能对你的消息解密。与对称加密不同的是,银行不需要将私钥通过网络发送出去,因此安全性大大提高。

目前最常用的非对称加密算法是RSA算法。

对称加密

对称加密是最快速、最简单的一种加密方式,加密(encryption)与解密(decryption)用的是同样的密钥(secret key)。对称加密有很多种算法,由于它效率很高,所以被广泛使用在很多加密协议的核心当中。

对称加密通常使用的是相对较小的密钥,一般小于256 bit。因为密钥越大,加密越强,但加密与解密的过程越慢。但是密钥的长度也不能太小,太小反而也容易被破解。

des对称加密,是一种比较传统的加密方式,其加密运算、解密运算使用的是同样的密钥,信息的发送者和信息的接收者在进行信息的传输与处理时,必须共同持有该密码(称为对称密码)。

建立连接过程

第一步:客户端向服务端发送支持TLS版本和加密套件和随机数1,服务端接收之后,此时双方都知道随机数1的存在

第二步:服务端向客户端发送TLS版本和加密套件和随机数2,之后接着发送申请的数字证书和公钥 此时服务端和客户端都知道了随机数2

第三步:客户端生成随机数3,用第二步服务端发送的RSA的公钥进行加密,发送给服务端,服务端用RSA的密钥解密后获得随机数3,此时双方都知道了随机数3,且随机数3不被外界知道,

非对称加密到这就结束了


接下来服务端和客户端分别使用随机数1和随机数2和随机数3按一定规则生成相同的会话密钥,,之后双方通信就可以直接使用对称加密的方法进行通信了。

相关文章
|
6月前
|
网络安全
Discuz全站切换https,强制Discuz站点所有链接为https
Discuz全站切换https,强制Discuz站点所有链接为https
187 0
|
前端开发
常见的 HTTP 状态码 + 猫图链接
常见的 HTTP 状态码 + 猫图链接
205 0
常见的 HTTP 状态码 + 猫图链接
|
PHP
php函数file_get_contents无法获取到https链接内容问题使用curl的解决方案
php函数file_get_contents无法获取到https链接内容问题使用curl的解决方案
169 0
|
前端开发 API 定位技术
Android webview加载https链接错误或无响应
Android webview加载https链接错误或无响应
|
应用服务中间件 网络安全 nginx
手把手教你Nginx 配置 HTTPS 完整过程
手把手教你Nginx 配置 HTTPS 完整过程
1478 0
手把手教你Nginx 配置 HTTPS 完整过程
|
Web App开发 安全
Google Chrom版本升级后站内下载http链接的资源弹窗一闪不下载的问题
Google Chrom版本升级后站内下载http链接的资源弹窗一闪不下载的问题
280 0
|
安全 网络安全 数据安全/隐私保护
HTTPS 的加密过程
HTTPS 的加密过程
201 0
HTTPS 的加密过程
|
安全 数据安全/隐私保护 开发者
HTTPS 的传输过程
HTTPS 的传输过程
HTTPS 的传输过程
|
域名解析 网络协议 安全
一文搞懂│http 和 https 的通信过程及区别
拨云见日,带你学好网络安全通信基础
446 4
一文搞懂│http 和 https 的通信过程及区别
|
缓存 网络协议 安全
HTTPS连接过程
HTTP协议通信过程中使用未经加密的明文,安全性无法得到保证。比如在Web页面中输入信用卡号,如果这条通信线路遭到窃听,那么信用卡号就暴露了。