密码学知识点整理

第一章

1. 对于信息攻击类型进行分类

  • 被动攻击:
    1. 消息内容获取
    2. 业务流分析
  • 主动攻击:
    1. 中断(可用性)
    2. 篡改(完整性)
    3. 伪造(真实性)
  • 被动攻击是一种监听行为,不对消息进行更改,因此具有保密性,危害大且不易被察觉,被动攻击只能预防而不能进行检测;
  • 主动攻击对系统的对完整性、可用性以及报文的真实性进行的破坏,绝对的防止主动攻击十分困难,因此防御主动攻击的主要途径是检测以及对于攻击造成破坏的修复。

2. 安全业务

  1. 保密业务:保护数据以防被动攻击。
  2. 认证业务:用于保证通信的真实性。
  3. 完整性业务:和保密业务一样,完整性业务也能应用于消息流、单个消息或一个消息的某一选定域。
  4. 不可否认业务:用于防止通信双方中的某一方对所传输消息的否认,因此,一个消息发出后,接收者能够证明这一消息的确是由通信的另一方发出的。
  5. 访问控制:访问控制的目标是防止对网络资源的非授权访问,控制的实现方式是认证,即检查欲访问某一资源的用户是否具有访问权。

3. 信息安全模型

  • 消息的安全传输,包括对消息的加密和认证。
  • 通信双方共享的某些秘密信息,如加密密钥。
  • 安全的网络通信必须考虑的4个方面
    • 加密算法。
    • 用于加密算法的秘密信息。
    • 秘密信息的分布和共享。
    • 使用加密算法和秘密信息以获得安全服务所需的协议。
  • 信息安全分为系统安全、数据安全和内容安全

4. 密码学基本概念

  • 保密通信系统
    • 明文:发送方即将要发送的消息
    • 密文:明文经过加密后的消息
    • 加密:明文到密文的过程
    • 解密:密文到明文的过程
    • 加密算法:对明文加密时采用的规则
    • 解密算法:对密文解密时采用的规则
    • 密钥:是一种特定的值,能使密码算法按照指定的方式进行,并产生相应的密文,密钥是密码体制安全保密的关键
  • 基本术语
    • 加密员(密码员):对明文进行加密操作的人员
    • 接收者:传送消息的预定对象
    • 截收者:在信息传输和处理系统中窃取机密信息的对象
    • 加密密钥和解密密钥:加密算法和解密算法的操作通常都是在一组密钥控制下进行
    • 单钥密码体制(对称密码体制):传统密码体制所用的加密密钥和解密密钥相同,或实质上等同,即从一个易于得出另一个
    • 双钥密码体制(非对称密码体制):加密密钥和解密密钥不相同,即从一个难于推出另一个
    • 密码分析:截收者通过分析可能从截获的密文推断出原来的明文或密钥
    • 密码分析学:研究如何从密文推演出明文、密钥或解密算法的学问
    • 密码分析员:从事密码分析这一工作的人
    • 被动攻击:对一个保密通信系统采取截获密文进行分析的这类攻击
    • 主动攻击:非法入侵者、攻击者或黑客主动向系统窜扰,采用删除、增添、重放、伪造等窜改手段向系统注入假消息,达到利已害人的目的
  • 保密系统应当满足要求
    • 系统即使达不到理论上是不可破的。
    • 系统的保密性不依赖于对加密体制或算法的保密, 而依赖于密钥。
    • 加密和解密算法适用于所有密钥空间中的元素。
    • 系统便于实现和使用。
  • 密码体制分类
    • 单钥体制(对称密钥体制)
      • 加密密钥和解密密钥相同
      • 流密码:对明文消息按字符逐位地进行加密
      • 分组密码:将明文消息分组逐组地进行加密
    • 双钥体制(非对称密钥体制)
      • 公钥:对外公开的密钥
      • 私钥:自己保密的密钥
      • 可以实现数字签名
  • 密码攻击类型
  • 注意(一次性密码本最安全)
    • 加密算法是无条件安全的,如果算法产生的密文不能给出惟一决定相应明文的足够信息。此时无论敌手截获多少密文、花费多少时间,都不能解密密文
    • 仅当密钥至少和明文一样长时,才能达到无条件安全。也就是说除了一次一密方案外,再无其他的加密方案是无条件安全的
  • 计算机上的安全
    • 破译密文的代价超过被加密信息的价值
    • 破译密文所花的时间超过信息的有用期

5. 部分古典密码

  • 恺撒密码
  • 移位变换
  • 仿射变换
  • 多表代换密码
    • A矩阵可逆的充要条件为|A|!=0
    • gcd()算法是求两者的最大公约数

6. 例题部分

  • 恺撒(移位密码)
  • 仿射变换

  • 多表代换密码这边有个问题为解决,后续出这个题

第二章(流密码)

1. 流密码基本概念(加密原理)

  • 分组密码与流密码的区别
    • 分组密码无记忆性
    • 流密码有记忆性
  • 流密码分类:根据加密器中记忆元件的存储状态是否依赖于输入的明文字符
    • 同步流密码:独立,因此,可将同步流密码的加密器分成密钥流产生器和加密变换器两个部分
      • 关键是密钥流产生器
    • 自同步流密码:依赖
  • 加密原理
    • 密钥-->密钥流-->加密密文

2. 有限状态自动机

  • 有限状态自动机是具有离散输入和输出(输入集和输出集均有限)的一种数学模型
  • 给出初始状态,给定输入值会有对应的输出值,与此同时,状态进行转换。

3. 密钥流产生器

  • 必须采用非线性函数

4. 线性移位寄存器

  • 移位寄存器是流密码产生密钥流的一个主要组成部分
  • GF(2):二元域,只有0和1
  • 下图是一个3级反馈移位寄存器,其初始状态为(a1,a2,a3)=(1,0,1),写出输出

  • 线性反馈移位寄存器因其实现简单、速度快、有较为成熟的理论等优点而成为构造密钥流生成器的最重要的部件之一
  • n级线性反馈移位寄存器的状态周期小于等于2的n次幂-1。输出序列的周期与状态周期相等,可以选择合适的函数使得序列周期达到最大值,此时的序列称为m序列

5. 线性移位寄存器一元多项式表示

  • LFSR的特征多项式





6. m序列的伪随机性

  • 流密码的安全性取决于密钥流的安全性(随机性)
  • 伪随机:要求截获比周期短的一段时不会泄露更多信息,这样的序列称为伪随机序列
  • 游程:在GF(2)的序列中,将连续为0(1)的段称为游程,其长度为n则叫做0(1)的n游程,例子
  • Golomb对伪随机周期序列提出了应满足的如下三个随机性公设
    • 在序列的一个周期内,0与1的个数相差至多为1
    • 在序列的一个周期内,长为1的游程占游程总数的二分之一,长为i的游程是游程总数的2的i次幂分之一,并且等长的游程中0的游程个数和1的游程个数相等
    • 异自相关函数是一个常数
  • 从密码系统的角度看,一个伪随机序列还应满足下面的条件:
    • {ai}的周期相当大。
    • {ai}的确定在计算上是容易的。
    • 由密文及相应的明文的部分信息, 不能确定整个{ai}。
posted on 2020-12-20 16:04  千丶颜  阅读(1437)  评论(0编辑  收藏  举报