密码学学习整理一

密码学总结一

一.概述

  1. 信息安全三要素
    机密性(确保信息不被非法获取)
    完整性(确保能够发现信息是否被改动过)
    可用性(确保系统正常提供服务)
  2. 两种攻击形式
    被动攻击(对机密性的破坏,窃听)
    主动攻击(对完整性,可用性的破坏,篡改,冒充)
  3. 密码学主要功能
    保证机密性,保证完整性,提供非否认(防范“否认干过的事”)
  4. 密码学组成
    密码编码学,密码分析学
  5. 两个术语
  • 密钥(key):用于“变换”,加解密的辅助输入,是一些随机串
  • 口令(password):用于“身份认证”,确认对方或证明自己的身份
  1. 柯克霍夫斯原则 密码学基本原则
    即使密码系统的任何
    细节已为人所知
    只要密钥没有泄漏
    它也应该是
    安全的。
  2. 柯克霍夫斯原则意义在于,密码算法很难保密
    • 知道算法的人可能叛变
    • 设计者有个人喜好
    • 频繁更换算法不现实
  3. 加密算法(函数)必须是一个单射函数
    hash函数不是加密函数,不是单射意味着无法解密
  4. 实用的加密体制必须满足的两个条件
    • 容易性:加密算法、解密算法都应该易于计算
    • 安全性:对于任何攻击者,即使获得了密文,也很难恢复出明文、所用的密钥
  5. 区别两种技术
    • 隐写术
      • 特点:保护的是信息本身 (把信息隐藏起来)
      • 缺点:一旦发现隐藏的方法,信息就会暴露 (安全性差)
    • 加密术
      • 置换(又称易位)
        • 特点:明文中字符与密文中相同,只是出现的位置发生变化
        • 密钥是什么:改变位置的规则
      • 代换(又叫替换,代替)
        • 特点:明文中出现的字母不一定出现在密文中,但位置保持不变
        • 密钥是什么:代换规则
    • 区别
      • 隐写术:保护的是信息本身,传递的仍是原来的信息,只是被藏了起来,一旦发现隐藏的方法,信息就会暴露
      • 加密术:保护的是信息内容,传递的是变换后的密文,而不是原来的明文,不知道密钥,很难恢复信息
  6. 密码学史上的重要事件
    1. 1949,香农发表论文《保密系统的通信原理》
      • 意义:密码学的理论基础之一,发表30年后才显示出它的价值
    2. 1976,Diffie,Hellman发表论文《密码学的新方向》
      • 意义:开辟了公钥密码学的新领域,可以说,没有公钥密码的研究就没有现代密码学
    3. 1977,RSA密码体制出现
      • 意义:公钥密码领域最杰出的代表,事实上的标准,密码学史上的里程碑
        4.1978,DES(数据加密标准)出现
      • 意义:美国的数据加密标准,用于政府等非机密单位及商业的保密通信
    • 它们标志密码学理论与技术的革命性变革,宣布了现代密码学的开始
  7. 密码分析的分类方法
    依据攻击者知道的信息多少,可以按如下分类,攻击强度依次增强
    1. 唯密文攻击:只有一些密文,好的现代密码系统对此通常是免疫的
    2. 已知明文攻击 :已有很多明文/密文对
    3. 选择明文攻击:可以任意选择明文,并可获得相应密文
    4. 选择密文攻击:可以任意选择密文,并可获得相应明文
  8. 几点说明
    1. 设计上安全的密码算法,由于实现或使用不当,可能引入安全漏洞(社工(雾)
    2. 破译的主要目的:恢复密钥,通过密文计算密钥,至少要和计算明文一样困难
    3. 密钥应随机选择
    4. 并不一定恢复出整个明文才算成功破译,有时候,恢复出明文的部分信息,甚至几个关键单词,也算成功破译。部分破译又往往成为全部破译的突破口
    5. 密钥空间要足够大,以抵抗密钥穷举攻击
    6. 政府或军事应用中,也存在保密算法的情况。不过前提是,算法必须是安全的。通过保密算法进一步加强安全性。
  9. 两个观念转变
    1. 概率
      • 抛弃“百分之百”的想法
    2. 相对
      • 抛弃“绝对”的想法,安全都是相对的

二.古典密码

1. 置换密码

  1. 概念
    古典密码的一种最基本的处理技术,改变明文中各字符的相对位置
    但明文字符本身的取值不变。
  2. 工作原理
    将明文按一定长度m进行分组,把每组的字符按位置变换规则 π 重排位置
  3. 密钥
    • 就是置换π,π的描述中其实包含了分组长度m的信息
    • 密钥空间大小 m!(第一个有m种选择,第二个有m-1种...)

2. 代换

  1. 概念
    古典密码的另一种最基本的处理技术,改变明文中各字符的取值但明文字符的出现位置不变
  2. 工作原理
    • 建立一张或多张代换表 (明文字符到密文字符的对应关系、映射)
    • 加密时将明文字符依次通过查表,找到相应的密文字符
    • 明文字符被逐个替换,生成无任何语义的字符串,即密文
  3. 密钥
    代换密码的密钥就是代换表
  4. 移位密码
    1. 工作原理
      • 加密 : 把明文中每个字母代换为字母表中其后的第k个字母
      • 解密 : 与加密相反,把密文中每个字母代换为字母表中其前的第k个字母
      • 凯撒密码是k=3的移位密码
    2. 密钥
      • 密钥是k
      • 密钥大小26
  5. 简单代换密码
    1. 工作原理
      • 使用一张固定的代换表,明文字母到密文字母的对应关系不一定像移位密码那样有规律
    2. 密钥
      • 密钥空间很大,有26!个
  6. 频率分析:简单代换密码的终结者
    • 简单代换密码的软肋:加密过程中,明文字母与密文字母的映射关系始终固定不变。因此,密文字母与对应的明文字母的出现频率完全一样。
    • 基本原理
      • 找若干与明文同种语言写的文章,统计出字母频率,以此作为参考
      • 统计密文的字母频率
      • 比照参考文章,分析密文中的字母频率,找到字母之间的映射关系
    • 破译方法 = 统计分析 + 大胆猜测
  7. 古人应付频率分析的手段
    1. 命名密码
      • 工作原理:根据代换表,首先对明文中出现的常用单词进行代换,余下的字母再逐个代换,这样,相同的明文字母就被代换成不同的密文字符,从而隐藏了字母频率。
    2. 同音密码(命名密码本质上也属于同音密码)

3.多表代换密码

  1. 起因
    命名密码、同音密码都属于单表代换密码,不能很好地隐藏频率特性。
    早在15世纪,阿尔伯提就提出:单表代换密码最大的问题是加密时始终使用一张代换表。如果同时使用两张不同的代换表,就可以有效改变字母频率。阿尔伯提依此设计了一个密码盘,它是有记载的最早的多表代换密码。他的思想被不断发展,最终成型于16世纪,维吉尼亚密码横空出世。
  2. 维吉尼亚密码
    1. 工作原理
      该密码体制有一个参数m(密钥的长度)加解密时,将消息分为m个字母一组进行变换。变换时,使用26张代换表,根据不同的密钥字母,每个明文字母使用不同的代换表进行加解密。注意:在维吉尼亚密码中,代换表不再是密钥了。

    2. 维吉尼亚密码的代换表

      具体使用哪一行由密钥决定

    3. 同一明文字母对应多个密文字母,相同密文字母未必对应同一明文字母

    4. 密钥空间和密钥长度有关,为26^m个密钥

  3. 维吉尼亚密码相关分析
    1. 在维吉尼亚密码的分析中,要先确定密钥长度,再确定具体密钥
      确定密钥长度的常用方法有两种:
      Kasiski测试法
      重合指数法
    2. 维吉尼亚密码的特点
      1. 用给定的m个移位代换表周期性地对明文字母加密
      2. 当两个相同的明文段间隔的字母数为m或m的整数倍时,将加密成相同的密文段
      3. 假设密文中出现两个相同的段落,对应的明文段不一定相同,但相同的可能性很大
    3. Kasiski测试法
      • 搜索长度至少为3的相同的密文段,记下它们距离密文开头的距离
      • m可能就是这些距离的最大公约数的一个因子
    4. 重合指数法
      1. 假设一个含有n个字母的串,从中任取两个字母,共有C(2,n)种

      2. 假设f0, f1, …, f25 分别表示 A, B, …, Z 在串中出现的次数。从该串中任取两个字母,如果它俩都等于第i个字母的话,共有C(2,fi)种

      3. 那么,从该串中任取两个字母,它俩相等的概率是多少?

        Ic(x)就称作重合指数(x为字符串)

      4. 字母出现频率表

        如果 x 是有意义的英语文本串,a, b, …, z在上表中的“出现概率”分别为p0, p1, …, p25, 那么其重合指数为

      5. 也就是说,当我们把密文分为m段时,算出各段的重合指数符合0.065,或是和其相差不大,则说明密钥长度为m

4.总结

  1. 置换密码、单表代换密码、维吉尼亚密码等对己知明文攻击都是非常脆弱的
  2. 即使用唯密文攻击,大多数古典密码体制都容易被攻破,因为它们不能很好地隐藏明文消息的统计特征
posted @ 2018-06-04 22:19  WhiteBlackCat  阅读(6637)  评论(2编辑  收藏  举报