网络安全
:material-circle-edit-outline: 约 707 个字 :material-clock-time-two-outline: 预计阅读时间 2 分钟
计算机网络面临的安全性威胁
攻击
两大类威胁:被动攻击和主动攻击,前者是截获信息,后者是主动发起攻击
截获即窃听,不干扰信息流,又称为流量分析 (traffic analysis)
- 篡改
- 恶意程序 (rogue program)
- 拒绝服务 DoS (Denial of Service)
- 分布式拒绝服务 DDoS
对付被动攻击:加密技术。
对付主动攻击:加密技术 + 鉴别技术
数据加密模型
加密和解密用的 密钥 K (key) 是一串秘密的字符串(即比特串)
- 明文通过加密算法 E 和加密密钥 K 变成密文 Y
- 接收端利用解密算法 D 运算和解密密钥 K 解出明文 X。
- 解密算法是加密算法的逆运算
密码编码学 (cryptography) :密码体制的设计学。
密码分析学 (cryptanalysis) :在未知密钥的情况下从密文推演出明文或密钥的技术。
密码编码学与密码分析学合起来即为密码学 (cryptology)。
两类密码体制
对称密钥密码体制
可以进行一对一的双向保密通信
加密密钥与解密密钥相同
DES 分组加密算法
公钥密码体制/非对称密钥密码体制
可以是多对一的单向保密通信
使用不同的加密密钥与解密密钥
- 加密密钥 PK(public key,即公钥):公开
- 解密密钥 SK(secret key,即私钥或秘钥):需要保密
- 虽然 SK 是由 PK 决定的,但却不能根据 PK 计算出 SK,是“计算上不可能的”
- 加密算法 E 和解密算法 D :公开
发送者 A 用 B 的公钥 PKB 对明文 X 加密(E 运算),然后发送给 B。
接收者 B 用自己的私钥 SKB 解密(D 运算),即可恢复出明文
加密和解密运算可以对调,即加密和解密是互逆的
鉴别 authentication
实体鉴别:鉴别报文的发送者
报文鉴别:鉴别报文是否被篡改
加密可以实现鉴别,但许多报文不需要加密,需要鉴别
用数字签名进行鉴别
数字签名的三个功能:
- 实体鉴别:证明来源。
- 报文鉴别:防篡改,保证完整性。
- 不可否认:防抵赖
关键:发送者的私钥没泄露。
MD5 算法
用足够复杂的方法,使报文摘要代码中的每一位都与原来报文中的每一位有关
安全散列算法 SHA-1(Secure Hash Algorithm)
也不安全了
散列函数问题:可以防篡改,但不能防伪造,不能真正实现报文鉴别
解决方法:采用报文鉴别码 MAC