密码学是研究密码系统或通信安全的一门学科。
密码体制的分类:
按执行的操作方式分为替换密码和换位密码。
按密钥数量分为对称密钥密码和公钥密码。
对称密钥密码按对明文的处理方式分为:流密码和分组密码。
密码分析:惟密文攻击:知道一些消息的密文。
已知明文攻击:不仅知道密码,还知道与之对应的明文。
选择明文攻击:不仅知道密文,明文,还可以选择被加密的明文。
选择密文攻击:可选择不同的密文得到相应的明文(用于公钥算法)
古典密码体制利用字符之间相互替换相互换位的方法,主要有代替密码和置换密码。
Kerckhoffs假设:在无干扰条件下,假定密码分析者可以得到密文C,而且一般假定密码分析者知道明文的统计特性,加密体制,密钥空间及其统计特性。
衡量安全性的两种方法:计算安全性,无条件安全性。
分析计算复杂性的方法:算法复杂性,问题复杂性。
衡量算法复杂性的依据:时间复杂性,空间复杂性。
一般用状态转移函数Fs来描述流密码加密器中存储器状态随时间变化的过程。
若某个流密码的Fs不依赖于输入加密存储器的明文,则为同步流密码,否则被称为自同步流密码。
Feistel密码的结构:Li = R(i-1),Ri=L(i-1)模加f(R(i-1),Ki)
几种分组密码:1、加密8轮,64位明文及密文,128位密钥。
2、RC5:分组大小,密钥长度,加密轮数可变。
3、Rijudael:128位分组长度,密钥和轮次可变。
分组密码的工作模式:1、密码分组链接模式。2、密码反馈模式。3、输出反馈模式。4、级连模式。
公钥密码体制的优点:针对密钥管理方法的改进,加密公钥公开,解密密钥需妥善保存。
可以提供单向函数的三大数学难题:1、大整数分解问题。2、离散对数问题。3、椭圆曲线离散对数问题。
密钥管理综合了密钥的生成,分配,存储,销毁等各个环节的保密措施,所有工作都围绕一个宗旨:确保使用中的密钥是安全的,具体的管理方式根据加密采用的密码体制而不同。
两类自动密钥分配途径:集中式分配方案,分布式分配方案。
公钥的分配方案:1、公开发布。、2、公开目录。3、公钥管理机构。4、公钥证书。
公钥管理机构:
1、A向管理机构发送带有时间戳的请求,申请B公钥。
2、机构对A的请求作出应答,包括最初的时间戳,B的公钥和A的请求内容。
3、A用B的公钥加密一个消息发给B,消息包括A的ID标识和一个随机数。
4、B以相同的方式从公钥管理机构中获取A的公钥。
5、B用A的公钥加密一个消息后发给A,信息包括A发送的随机数和B的随机数。
6、A将B的随机数加密后返回给B,双方确认身份完成。