四.小结
- HTTP123的演进历史
- CDN解决了 HTTP协议之外的问题
- WebSocket 从 HTTP 协议升级而来
五.网络安全
-
背景:
HTTP, WebSocket, TCP, UCP这些协议都是明文传输信息,经过的节点都可以访问,甚至是篡改,丢弃这些信息,这样的特性导致了一些行为不适合在此环境下进行,比如在线银行转账等一切涉及到钱的行为。
-
网络安全三要素:
-
机密性:攻击者无法获知通信内容
- 加密需要加密算法和密钥等信息 (统称为秘密信息)
- 网络是明文的,不安全
- 怎么在不安全的信道交换秘密信息?(或可以理解为如何在不安全的信道中协商出除双方以外不被其他人知道的加密算法和密钥)
- 完整性:攻击者对内容进行篡改时能被发现
-
身份验证:攻击者无法伪装成通信双方的任意一方与另一方通信
完整性和身份验证相互关联。如果报文被篡改,或者攻击者伪装成通信中的某一方,就无法实现网络通信安全的目标,下面给出一个例子⬇️
(
-
蟹老板向银行发起了转账请求
-
银行需要确认
- 这个请求真的是蟹老板发起的
- 目标账户和转账金额没有被篡改
-
)
-
-
对称加密和非对称加密
- 对称加密:加密、解密用同样的密钼
- 非对称加密:加密、解密使用不同的密钥 (公钥和私钥),而且公钥加密只能用私钥解密、私钥加密只能用公钥解密
-
密码散列函数(哈希函数)
- 输入:任意长度的内容
- 输出:固定长度的哈希值
- 性质:找到两个不同的输入使之经过密码散列西数后有相同的哈希值,在计算上是不可能的