《计算机网络》课程笔记 (Ch08-网络安全和网络管理)

入侵者模型

入侵者可能会进行窃听、修改、插入、删除报文内容。

密码学

基本模型

密钥对(K1, K2),K1为加密密钥,K2为解密密钥

《计算机网络》课程笔记 (Ch08-网络安全和网络管理)

对称加密

KA=KB=KS,密钥是相同的且是秘密的。

主要有如下几种形式:

  • 单码代替密码,密钥是字母替换表
  • 多码代替密码,不同位置出现的相同字母可能以不同的方式编码
  • 块密码:将报文分割为k比特的块,每个块独立加密
    • DES数据加密标准
  • 流密码:使用一个同样长度的密钥序列与明文按位异或

非对称加密

所有人都知道公钥,私钥只有接收者知道。公钥用于加密,私钥用于解密。知道公钥无助于了解私钥。

明文=(m),密文=(K^+(m)),解密过程=(m=K^-(K^+(m)))

重要性质:(m=K^-(K^+(m))=K^+(K^-(m)))。抛开它们的密码学含义,(K^+ K^-)就是数学意义上的逆运算。

常用的非对称加密算法有RSA,利用的是大质数相乘得到的大数难以分解。

加密方式比较

  • 对称加密
    • 效率较高
    • 密钥管理复杂
    • 如果有知道密钥的第三方在信道上,则不再保密
  • 非对称加密
    • 效率较低
    • 密钥需要用分配协议进行管理
    • 在信道上可以进行多对一的保密通信
  • 为了提高加密的效率,经常混合使用对称和非加密对称算法,如HTTPS,先使用非对称加密约定密钥,然后使用对称加密通信

报文完整性和数字签名

对报文进行鉴别,需要证明:

  • 报文的确来自特定的发送者
  • 报文本身在到达途中没有被篡改

报文不被篡改

使用密码散列函数(Hash)对报文m形成摘要H(m),接收者验证该摘要是否正确。

  • Internet校验和:一种劣质的密码散列函数,容易找到x、y使得H(x)=H(y)
  • 目前常用的散列方法:MD5、SHA1

报文确实来自发送者

  • 报文鉴别码MAC

    使用共享密钥s,在发送时对m+s而非m进行摘要,形成的H(m+s)即为MAC。接收方计算H(m+s)验证即可。

    问题:如何稳定地分发共享密钥

  • 数字签名

    需要是可鉴别而不可伪造的

    • 简单实现

      发送者利用私钥对信息进行加密,将密文作为签名。接收者使用公钥进行解密

      特点:顺便提供了报文不被篡改的验证

      问题:计算量很大

    • Hash+非对称加密

      对摘要应用密钥进行加密,接收者解密后验证摘要是否一致

      《计算机网络》课程笔记 (Ch08-网络安全和网络管理)

公钥认证

在分发公钥的过程中,如何确认(K^+)确实是某特定实体的公钥?

通过引入一个可信的第三方认证中心(CA),负责将公钥与特定实体进行绑定,从而进行公钥的存储和分发。

端点鉴别

本节,我们抽象地从高层探讨:一个实体如何经过计算机网络向另一个实体证明自己的身份。

  • ap1.0

    没有任何验证信息:伪造类似的报文

  • ap2.0

    有一个IP地址:可以进行IP哄骗

  • ap3.0

    通过明文约定秘密口令:嗅探流量

  • ap3.1

    通过密文约定秘密口令:截取后进行重放攻击

  • ap4.0

    不重数(一个协议的生存期中只使用一次的数)+对称加密

    《计算机网络》课程笔记 (Ch08-网络安全和网络管理)

  • ap5.0

    不重数+非对称加密

    《计算机网络》课程笔记 (Ch08-网络安全和网络管理)

ap4.0、ap5.0仍然不能避免中间人攻击。

网络管理

主要包括性能管理、故障管理、配置管理、账户管理、安全管理。

简单网络管理协议SNMP

  • 请求响应模式

    管理中心向被管设备发送请求进行查询或者控制,被管设备回复响应

  • 陷阱模式

    被管设备主动上报管理中心,在出现紧急故障时通常采用该模式