背景
我们知道,https,在网络传输中,加密。具体来说是数据加密。//客户端和服务器,写数据的时候,都会加密。即1.客户端——》服务器 2.服务器——》客户端。
如何加密 解密?
加密解密
想要加密和解密,必然要使用一种加密解密算法。具体来说是对称加密算法。
为什么一定要使用对称加密算法?
1.第一,首先一定要是加密解密算法。2.第二,秘钥还要安全传输。即秘钥生成端(客户端)要把这个秘钥给到服务器端。
秘钥怎么安全传输?非对称加密。
非对称加密
1.首先,要解决的问题是传输秘钥。
2.秘钥也需要安全的传输,那么怎么安全的传输秘钥?非对称加密。即公钥和私钥。
流程如下
1.客户端使用公钥加密秘钥 //这个秘钥是加密数据的秘钥2.给服务器 //因为秘钥被加密,所以是安全的3.服务器使用私钥解密,得到秘钥 //现在,客户端和服务器都有了秘钥
4.客户端《——》服务器端 //通过秘钥加密数据,双方均可以加密数据和解密数据
客户端如何得到公钥?1.服务器生成公钥和私钥2.给公钥到客户端
流程图
下面不同的流程图,基本上一个意思
数字证书
https为什么一定要有数字证书?
1.服务器需要校验客户端证书 2.客户端需要校验服务器证书
二者,都是通过证书颁发机构中心来校验对方证书的。中心说合法,那么就是合法。
服务器证书如何配置?比如,tomcat等,都可以在connector标签里配置。
数字证书到底包含了什么内容?
保存各种秘钥。1.加密数据的对称秘钥2.加密秘钥的非对称秘钥对,即公钥和私钥。
https用到了哪些安全算法?
核心有两个1.加密数据的算法 //对称加密算法2.加密秘钥的算法 // 1.秘钥指的是加密数据秘钥2.加密秘钥是非对称加密算法
一个确保数据安全,一个确保加密数据的秘钥安全。