第八章
第七章妹讲
8.1 什么是网络安全
朋友和敌人:Alice,Bob,Trudy模型
劫持:在认证身份完成之后,伪造Alice的身份与Bob对话
8.2 加密原理
plaintext:明文
ciphertext:密文
对称密钥加密
替换方案数:26!—计算机时代容易被破解,且很容易被启发式搜索搜到
对称加密:如何进行key的分发?
对称密钥加密学:DES
将密文分成一个个长度为64bit的block,成组加密,每个64bit的明文对应一个64bit的密文
问题:
- 不安全,容易被暴力破解
- 可能有后门
分组成串:当前分组的明文,与前一块分组的密文做一个异或运算,再翻译成密文(第i组的对应关系还取决于前i-1组)
DES的优化—AES
即分组成串技术
公开密钥加密学:RSA
Alice使用公钥加密得到密文,Bob使用私钥解密得到明文
原理:n=pq(其中x,y是俩质数),则n的欧拉函数值是(p-1)\(q-1),故x^y mod (n)=x^(y mod (p-1)*(q-1)) mod (n),即欧拉降幂
由于ed mod (p-1)\(q-1)=1,故m^(e*d) mod n =m
该性质可用于数字签名,先用私钥对明文加密,若使用公钥能加密出报文,则证明报文是Bob发出的
8.3 认证
重放攻击无效:每次的R不一样
问题:采用对称式加密,如何分发key
Trudy最多只能截获到公钥,私钥只有Alice拥有
问题:可能一开始R就被Trudy截获,Trudy装成Alice和Bob通信,装成Bob和Alice通信
所有message都被Trudy截获了
如何解决:Bob需要可靠地获得Alice的公钥
总结:对称加密如何分发key,公开加密如何可靠获得公钥
8.4 报文完整性
数字签名
先对报文映射出摘要H(m),再使用私钥对H(m)进行签名
8.5 密钥分发和证书
可信赖中介(密钥分发)
Key Distribution Center (KDC)
- Alice使用自己的密钥,向KDC提出自己想和Bob通信
- KDC将R1用A的密钥加密,将A和R1的捆绑关系先用B的密钥加密后,再用A的密钥加密,将其发送给Alice
- Alice解出R1,将A和R1的捆绑关系(此时仍被B的密钥加密)发送给B
- Bob解出A和R1的捆绑关系
- 二者使用R1作为通信的密钥
Certification Authorities(CA)
- Bob先获得CA的公钥(带外方式获得,如计算机系统自带一些公钥)
- Ca使用自己的私钥,为Bob和其公钥的捆绑关系进行签署(即生成了证书)
- Alice也获得了CA的公钥,使用CA的公钥进行解密,获得该捆绑关系
8.6 各个层次的安全性
安全电子邮件:PGP
采用代价较小的对称加密,将对称密钥采用公开密钥的方式发送给Bob,既解决了公开加密代价大的问题,又解决了对称密钥传递密钥的问题
Secure sockets layer(SSL):传输层次的安全性
IPsec:网络层次的安全性
在网络层之上,传输层之下(类似SSL)