33. 加密-Cryptography_哔哩哔哩_bilibili
1. 简介
在第 33 集中,视频主要介绍了计算机科学中的加密技术。通过解释历史背景和现代加密方法,帮助观众理解如何保护信息安全。
2. 计算机安全中的多层防御
现代系统架构采用一种叫做“多层防御”(defence in depth)的方法。就像城堡的防御设计,一层层的安全机制让攻击者无法轻易突破。
3. 加密技术的基础
3.1 密码学的起源
单词 cryptography 源自 crypto 和 graphy,意为“秘密写作”。加密的过程是将明文转换为密文,而解密则是反向操作。
3.2 凯撒密码
Julius Caesar 使用的凯撒密码是一种替换加密方法,通过将字母偏移来加密信息。例如,“A”变为“D”,“brutus”变为“euxwxv”。接收者需要知道算法和偏移量才能解密消息。
3.3 替换加密的缺点
凯撒密码和其他替换加密的一个主要缺点是字母频率的保留。这使得熟练的密码破译师可以通过统计字母频率破解密文。
3.4 列移位加密
列移位加密是一种移位加密方法,将消息填入网格,再按特定顺序读取。例如,5x5 大小的网格并按列从下往上读取。这种方法解密的关键是知道初始网格大小和读取顺序。
4. 机械加密时代
4.1 Enigma 加密机
20 世纪初,加密技术机械化,最著名的是德国的 Enigma 加密机。它通过一系列转子和反射器实现复杂的字母替换,每按一个键,转子就会转动,改变映射关系。
4.2 机械加密的破解
尽管 Enigma 非常复杂,Bletchley Park 的 Alan Turing 等科学家成功破解了其加密,极大地影响了二战的进程。
5. 软件加密时代
5.1 DES 和 AES
1977 年,IBM 和 NSA 开发了“数据加密标准”(DES),使用 56 位密钥。然而,到 1999 年,计算机计算能力的提升使得 DES 不再安全。2001 年,高级加密标准(AES)取代了 DES,使用更长的密钥(128、192 或 256 位),使得暴力破解几乎不可能。
5.2 AES 加密过程
AES 通过将数据切割为 16 字节的块,进行多次密钥替换和移位加密来确保数据安全。这个平衡了性能和安全性的加密方法广泛用于各类现代应用。
6. 密钥交换
随着互联网的普及,需要一种在公开网络上安全传递密钥的方法。密钥交换算法(如 Diffie-Hellman)利用单向函数 ermöglichen 两台计算机达成共识而无需直接传递密钥。
6.1 单向函数和 Diffie-Hellman 密钥交换
单向函数易于正向计算,但难以逆向推导。在 Diffie-Hellman 算法中,基数和模数是公开的,双方各自选择一个秘密指数进行模幂运算,交换结果后再进行一次模幂运算,即可生成相同的共享密钥。
7. 公钥加密
对称加密需要双方共享密钥,而非对称加密(如 RSA)则使用一对公钥和私钥。公钥加密的消息只能由对应的私钥解密 。私钥主要用于生成数字签名,而公钥用于验证签名 。
8. 总结
- 多层防御战略用于计算机安全。
- 凯撒密码和其他替换加密的方法有其局限性。
- Enigma 加密机的设计复杂,但被 Bletchley Park 破解。
- DES 被 AES 取代,因为 AES 提供更强的安全保障。
- Diffie-Hellman 密钥交换允许在公开网络上安全生成共享密钥。
- RSA 等非对称加密不仅用于加密,还用于验证数据的真实性。