June 22, 2022
什么是 cookie # 浏览器管理的一小段特殊字符串, http 协议的一部分,在 RFC 6265 里有说明
设置 Cookie # 服务端通过 http Set-Cookie 响应头 js 通过 document.cookie 设置(非 httpOnly 的) document.cookie # accessor (getter/setter), 访问器属性
写的操作非全量覆盖,仅修改对应的字段,写的时候需要 encodeURIComponent ,(name, value 都要)
读的操作不展示 domain , path 等信息
xhr 跨域 1 # 跨域的 xhr 请求只有带上 withCredentials:true 时,xhr 响应才能写 cookie ,否则会被忽略
fetch 跨域 # 参数带上 credentials: include
Cookie 参数 # 例如:
document.cookie = "user=John; path=/; expires=Tue, 19 Jan 2038 03:14:07 GMT; domain=.
...
June 1, 2022
三次握手 # client 发送 syn(Synchronize Sequence Number)到 server,表示想要建立 tcp 连接 Server 发送(syn+ ack) client 发送 ack 给 server,连接建立 四次挥手 # client 发送 FIN server 接收到 FIN,发送 ack server 发送 FIN client 发送 ack 网络分层 # TCP/IP 模型 # 应用层 传输层 网络层 链路层 OSI 模型 # 应用层 展示层 会话层 传输层 网络层 链接层 物理层 HTTP 1.1 # 缺点:
...
June 1, 2022
为什么需要缓存 # 减少不必要的网络请求,提升页面访问速度 减少服务器负载 节省网络开销(流量) 缓存工作机制 # 通过 http 请求头及 http 响应头来控制
缓存类型 # Private cache # 私有缓存:特定端的缓存,例如用户的浏览器
Shared cache # 源站和客户端之间的缓存,proxy cdn 等
Heuristic cache # 启发式缓存
http 的设计是能缓存尽量缓存,http 客户端根据 http 响应头自行决定缓存行为
缓存相关 header # Cache-Control # 缓存控制响应头, HTTP/1.1 引入
max-age
能存活多久(单位秒), 例: max-age=3153000
s-maxage
跟 max-age 类似,作用于共享缓存,当这个存在时会忽略 max-age
private
仅允许端(浏览器)缓存,私有缓存
...
什么是安全通信 # 假定 Alice, Bob 为两个通讯实体,Trudy 为中间攻击人,如何保证 Alice 和 Bob 能进行安全通信 ?
Confidentiality # 数据的机密性,即只有通信双方可以知道通信内容
Integrity # 消息完整性
Data Integrity # Alice 发的消息没有被篡改
Originality # Bob 收到的消息确实是 Alice 发的
Timeliness # Authentication # 通信侧的身份认证
网络中一个实体向另一个实体证明他的身份,服务端的身份认证,客户端的身份认证,Alice 证明她就是 Alice
Thread Model # 攻击者如何破坏通信安全
窃听 # 嗅探,记录信道通信报文 篡改,插入,删除通信报文 Playback Attack # 攻击者把以前发过的消息又发了一遍
Suppress-replay Attack # 抑制-重放攻击
Cryptography # cryptography,密码学,网络安全的基石
...