|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- 发展
-
- ```
- --1995:网景公司推出SSL3.0协议
- --1999:TLS1.0
- --2006:TLS1.1
- --2008: TLS1.2
- --2018: TLS1.3
- ```
-
-
-
- `SSL`: Secure Sockets Layer
-
- `TLS`: Transport Layer Security
-
-
-
- `ISO/OSI`模型
-
- ```
- 应用层:HTTP协议
- 表示层:SSL协议在这里展开,在HTTP协议无感的情况下,对明文加密,包括握手、密钥交换、告警、对称加密
- 会话层:
- 传输层:
- 网路层:
- 数据链路层:
- 物理层
- ```
-
-
-
- `TLS`安全密码
-
- ```
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- ECDHE:密钥交换,椭圆曲线加密算法,保证浏览器和服务器之间各自独立生成密钥,使用密钥加密数据
- RSA:身份验证
- 密码:AES:算法+128:强度+GCM:模式
- SHA256:MAC或PRE,摘要算法,把不定长度字符串生成不定长度的摘要
- ```
-
-
-
- 对称加密
-
- ```
- 使用同一个密钥进行加密或解密
- 优点是性能好
- ```
-
-
-
- 非对称加密
-
- ```
- 公钥+私钥
- 使用公钥加密,使用私钥解密
- 使用私钥加密,使用公钥解密
- ```
-
-
-
- 公信机构
-
- ```
- CA:公信机构
- 证书订阅人:服务器站点
-
- --证书订阅人:发送CSR, request certificate issuance登记机构
- --登记机构:发送request certificate issuane给CA
- --CA:发布公钥和私钥,公钥在证书里保存着,交给登记机构
- --登记机构:把公钥和私钥交给证书订阅人
- --订阅人:把证书部署到服务器
- --浏览器:请求证书
- --服务器:发布公钥证书给浏览器
- --CA通过CRL服务器,或者OCSP响应判断证书是否有效
- ```
-
-
-
- 证书类型
-
- ```
- --域名验证,domain validated, DV证书,只要域名指向的IP是申请证书的服务器,实时获取
- --组织验证,organization validated, OV证书,企业名称,需要几天时间,
- --扩展验证,extended validation,EV证书,在浏览器会显示公司名称
- ```
-
-
-
- 证书链。`Nginx`向浏览器发送证书时,发送站点的主证书,再发送二级证书。
-
- ```
- --根证书:被操作系统或浏览器内置
- --二级证书
- --主证书
- ```
-
-
-
- `TLS`通讯过程
-
- ```
- --四个目的
- 验证身份
- 达成安全套件共识
- 传递密钥
- 加密通讯
-
- --具体过程
-
- -浏览器:发送ClientHello, 告诉服务器支持的加密类型,随机数,SessionID,告诉浏览器哪个加密算法套件
- -服务器:发送ServerHello, 告诉浏览器支持的加密算法套件
- -服务器:把公钥证书发送给浏览器,包含证书链
- -浏览器:验证证书
- -服务器:ServerHelloDone,比如安全套件中的椭圆曲线算法,把相关参数发送给浏览器,服务器有自己的私钥,把公钥发送给浏览器
- -浏览器:根据参数生成私钥,把公钥发送给服务器
- -服务器和浏览器:使用公钥和密钥进行加密解密
- ```
-
-
-
|