CodingWithAlice

我的一方小天地,如果对你有帮助,那真的太好了

22 TLS握手

22 TLS握手 写的比较好的博文:深入理解HTTPS原理、过程与实践 总结 1、HTTPS 协议会 先与服务器执行 TCP 握手,然后执行 TLS 握手,才能建立安全连接 2、握手的目标是安全地交换 对称密钥,需要三个随机数,第三个随机数 Pre-Master 必须加密传输,绝对不能让黑客破解 3、Hello 消息交换随机数,Key Exc...

21 数字签名与证书

21 数字签名与证书 总结 1、摘要算法 用来实现完整性,能够为数据生成独一无二的指纹,常用的算法是 SHA-2 2、数字签名 是 私钥对摘要的加密,可以由公钥解密后验证,实现身份认证和不可否认 3、公钥的分发需要使用 数字证书,必须由 CA 的信任链来验证,否则就是不可信的 4、作为信任链的源头 CA 有时也会不可信,解决办法有 C...

20 对称加密 + 非对称加密

20 对称加密 + 非对称加密 总结 1、加密算法的核心思想是 把一个小秘密(密钥)转化为一个大秘密(密文消息),守住了小秘密,也就守住了大秘密 2、对称加密只使用一个 密钥,运算速度快,密钥必须保密,无法做到安全的密钥交换,常用的有 AES 和 ChaCha20 3、非对称加密使用两个密钥:公钥和私钥,公钥可以任意分发而私钥保密,解决了密钥交...

19 HTTPS 中的 S

19 HTTPS 中的 S 总结 1、因为 HTTP 是明文传输,所以不安全,容易被黑客窃听或窜改 2、通信安全必须同时具备 机密性、完整性,身份认证和不可否认 这四个特性 3、HTTPS 的语法、语义仍然是 HTTP,但把 下层的协议由 TCP/IP 换成了 SSL/TLS 4、SSL/TLS 是信息安全领域中的权威标准...

18 缓存代理 - 浏览器和服务器缓存

18 缓存代理 - 浏览器和服务器缓存 缓存代理能够复用同系列下 16 浏览器和服务器缓存 中提到的缓存控制策略 总结 1、计算机领域里最常用的性能优化手段是 时空转换,也就是时间换空间或者空间换时间,HTTP 缓存属于后者; 2、缓存代理 是增加了缓存功能的代理服务,缓存源服务器的数据,分发给下游的客户端 3、Cache-Control 字...

17 HTTP 反向代理

17 HTTP 反向代理 总结 1、HTTP 代理就是客户端和服务器通信链路中的一个中间环节,为两端提供 代理服务 2、代理处于中间层,为 HTTP 处理增加了更多的灵活性,可以实现 负载均衡、安全防护、数据过滤 等功能 3、代理服务器需要使用字段 Via 标记自己的身份,多个代理会形成一个列表 4、如果想要知道客户端的真实 IP 地...

16 浏览器和服务器缓存

16 浏览器和服务器缓存 总结 1、缓存是优化系统性能的重要手段,HTTP 传输的每一个环节中都可以有缓存 2、服务器 使用 Cache-Control 设置缓存策略,常用的是 max-age,表示资源的有效时间 3、浏览器收到数据就会存入缓存,如果没过期就可以直接使用,过期就要去服务器验证是否仍然可用 4、浏览器 验证资源是否失效需...

git的回滚方案记录

git的回滚方案记录 问题描述: 现状:本地代码的commit版本为1,远程分支的代码版本为4; 操作:本地修改一些了一些文件(远程也有修改),想要提交到远程分支 ​ —> git 管理会提示有冲突,冲突不只是修改的有冲突的文件,还包括其他 2-4 commit 版本的代码 ​ —> 直接放弃了所有的不冲突文件的修改,并 push 到了远程分支【...

16-2 强制缓存和协商缓存

16-2 强制缓存和协商缓存 主要参考文章:强制/协商缓存 核心要点记录: 缓存机制的关键 浏览器每次发起请求,都会先在 浏览器缓存 中查找该请求的结果以及缓存标识 浏览器每次拿到返回的请求结果都会将该 结果和缓存标识 存入浏览器缓存中 强制缓存 -> 浏览器缓存 Cache-Control > Expires ...

15 Cookie 机制

15 Cookie 机制 总结 1、Cookie 是服务器委托浏览器存储的一些数据,让服务器有了“记忆能力” 2、响应报文 使用 Set-Cookie 字段发送 key=value 形式的 Cookie 值 3、**请求报文 **里用 Cookie 字段发送多个 Cookie 值 4、为了保护 Cookie,还要给它设置 有效期、作用...