密码学概述

1. 口令

从密码学角度来看,各种网站、系统、软件的登录密码本质上不是密码,而是口令。

2. 密码学的应用

2.1 安全通信

  • HTTPS
  • 实时消息加密
  • WiFi
  • Bluetooth

2.2 磁盘文件加密

  • EFS(Encrypting File System)
  • TrueCrypt
  • Bitlocker

2.3 内容保护

  • CSS(Content Scrambling System)
  • AACS(Advanced Access Control System)

2.4 用户认证

  • Kerberos

3. 加密

3.1 对称加密 symmetric encryption

  • 生成密钥(Key generation,Gen):根据概率算法从密钥空间 KK 选择一个密钥 kk
  • 加密(Encryption,Enc):从消息空间 MM 中选择一段消息明文 mm,利用密钥 kk 进行数据加密,记为 Enc(m,k)Enc(m,k)
  • 解密(Decryption,Dec):利用密钥 kk 对加密密文 cc 进行解密,记为 Dec(c,k)Dec(c,k)
  • 成功获取数据:Dec(Enc(m,k),k)=mDec(Enc(m,k),k)=m

3.2 非对称加密 asymmetric encryption

  • 生成密钥(Key generation,Gen):根据概率算法从密钥空间 KK 选择一个公钥和私钥对 (pk,sk)(pk,sk)
  • 加密(Encryption,Enc):从消息空间 MM 中选择一段消息明文 mm,利用公钥 pkpk 进行数据加密,记为 Enc(m,pk)Enc(m,pk)
  • 解密(Decryption,Dec):利用私钥 sksk 对加密密文 cc 进行解密,记为 Dec(c,sk)Dec(c,sk)
  • 成功获取数据:Dec(Enc(m,pk),sk)=mDec(Enc(m,pk),sk)=m

4. 基尔霍夫原则 Keys and Kerckhoff's Principle

系统的保密性不依赖于对加密体制或算法的保密,而仅依赖于密钥。

The cipher method must not be required to be secret and it must be able to fall into the hands of the enemy without any inconvenience.