CAN201-网络安全1

What is network security

  1. 网络安全的定义
    • 保密性(Confidentiality):确保只有发送方和预期的接收方能够理解消息内容。发送方会对消息进行加密,接收方则进行解密。
    • 身份验证(Authentication):发送方和接收方都希望确认彼此的身份,以防止身份被伪造或冒用。
    • 消息完整性(Message Integrity):发送方和接收方希望确保消息在传输过程中或之后没有被篡改,并且能够检测到任何未经授权的修改。
    • 访问和可用性(Access and Availability):网络服务必须对用户是可访问和可用的,即要防止拒绝服务攻击等情况,确保服务能够正常提供。
  2. 相关角色
    • Alice和Bob:在网络安全的情境中,通常用Alice和Bob来代表希望进行安全通信的双方,例如进行电子交易的Web浏览器和服务器、网上银行的客户端和服务器、DNS服务器之间以及交换路由表更新的路由器等。
    • Trudy:代表入侵者,可能会进行各种恶意行为,如窃听、插入消息、冒充、劫持连接以及拒绝服务攻击等。 希望这个讲解能让你对网络安全的概念有更清晰的理解。如果你还有其他问题,请随时提问。

Principles of cryptography

  1. 密码学的基本概念
    • 加密和解密:加密是将明文消息转换为密文的过程,使用加密算法和加密密钥;解密则是将密文还原为明文的过程,使用相应的解密算法和解密密钥。
    • 密钥:在对称密钥加密中,发送方和接收方共享相同的对称密钥;在公钥加密中,发送方使用接收方的公钥进行加密,接收方使用自己的私钥进行解密。
  2. 破解加密方案
    • 已知明文攻击:攻击者拥有与密文相对应的明文。
    • 仅密文攻击:攻击者仅拥有密文并尝试进行分析。
    • 选择明文攻击:攻击者可以选择明文消息并获取其对应的密文。常见的破解方法包括暴力破解(尝试所有可能的密钥)和统计分析。
  3. 对称密钥加密
    • 原理:发送方和接收方共享相同的对称密钥,例如在单字母替换密码中,密钥是字母的替换模式。
    • 示例:凯撒密码是一种简单的对称密钥加密方法,它将明文中的每个字母按照固定的偏移量进行替换。
  4. 数据加密标准(DES)
    • 操作过程:包括初始置换、16 轮相同的函数应用(每轮使用不同的 48 位子密钥)和最终置换。
    • 特点:是美国的加密标准,使用 56 位对称密钥对 64 位明文进行加密,采用块密码和密码块链接方式。然而,随着计算能力的提升,DES 的安全性受到挑战,如 DES 挑战中,56 位密钥加密的短语在不到一天的时间内被暴力破解。为了提高安全性,可以使用 3DES,即使用三个不同的密钥进行三次加密。
  5. 高级加密标准(AES)
    • 特点:是对称密钥的 NIST 标准,取代了 DES。它以 128 位数据块为单位进行处理,支持 128、192 或 256 位密钥。AES 的安全性较高,使用暴力破解的难度远大于 DES。
  6. 公钥加密
    • 原理:与对称密钥加密不同,公钥加密中发送方和接收方不共享秘密密钥。接收方有一个公钥,对所有人公开,用于加密消息;还有一个私钥,只有接收方自己知道,用于解密消息。
    • 加密算法要求:需要满足特定的条件,即给定公钥 $K_{B}^{+}$ ,无法计算出私钥 $K_{B}^{-}$ ,并且使用公钥加密的消息可以通过私钥正确解密,反之亦然。
    • RSA算法:是一种常用的公钥加密算法。其过程包括选择两个大素数 $p$ 和 $q$ ,计算 $n = pq$ 和 $z = (p - 1)(q - 1)$ ,选择与 $z$ 互质的 $e$ ,以及确定满足 $ed \bmod z = 1$ 的 $d$ 。公钥为 $(n, e)$ ,私钥为 $(n, d)$ 。加密时,计算 $c = m^{e} \bmod n$ ;解密时,计算 $m = c^{d} \bmod n$ 。RSA 算法的安全性基于大数分解的困难性。
  7. RSA的实际应用
    • 会话密钥:由于 RSA 加密的指数运算计算量较大,在实际应用中,通常使用公钥加密来建立安全连接,然后双方交换一个对称会话密钥,用于后续的数据加密,因为对称加密在处理大量数据时速度更快。