zoukankan      html  css  js  c++  java
  • 图解密码技术(第3版)-第4章

    摘自:图解密码技术(第3版)

    0、知识点准备

     

     

     1、ECB

    2、CBC

     

     

     3、CFB

     4、OFB

     

     5、CTR

     

    6、对比:分离出一个分组的加密过程

     7、继续对比

    模式  全称 IV 加密方式 特点  弱点与攻击 
    ECB

    Electronic CodeBook

    电子密码本模式

    不需要 明文分组通过密码算法加密 相同的明文分组被转换为相同的密文分组  攻击者Mallory无需破译密码就能操纵明文,攻击者可对密文进行替换、删除、复制 
    CBC

    Cipher Block Chaining

    密文分组链接模式

    需要

    明文分组通过密码算法加密

     加密慢,解密快(可并行),

    解密是有一个密文分组损坏,最多2个明文分组受到影响

    密文分组存在缺失的比特时,之后的所有明文分组都受影响

     填充提示攻击

    对初始化向量进行攻击:IV必须使用不可预测的随机数

    CFB

     Cipher FeedBack

    密文反馈模式

    需要

    明文分组与密文分组之间

    只有异或操作,没有加密步骤

     密码算法的输出相当于一次性密码本的随机比我序列

     密码算法的输出,是计算得到的不是真的随机数,不可能像一次密码本那样理论不可破译

    此模式可看作是一咱使用分组密码来实现流密码的方式

    对密文分组进行反馈,无法跳过明文分组1而先对明文分组2进行加密

     重放攻击:攻击者不需要破解密码,可以成功将以前的电文混入新电文中

    攻击者将昨天保存下来的3个分组将今天发送的后3个分组进行替换

    接收者分不清第2组出错的原因是通信错误还是被人攻击造成的。

    OFB

    Output FeedBack

    输出反馈模式

     需要 :同上

    XOR所需要的比特序列(密钥流) 可以事先通过密码算法生成,和明文分组无关

    和AES待密码算法相比,XOR运算的速度是非常快的

    提前准备好密钥流可加速完成加密

    •  如果对密钥流的一个分组进行加密后其结果碰巧与加密前相同,那么之后分组的密钥流,则是同一值的不断反复。
    • 密文分组的一个比特被反转,解密后明文分组中仅有与之对应的比特被反转,可以说成错误不会被放大,换言之攻击者也可以利用这一弱点。
    CTR

     CounTeR

    计数器模式

     不需要IV,

    需要计数器初始值

    :同上  可以按照任意顺序处理分组(对分组进行加密和解密),用到的“计数器”值可以由nonce和分组序列直接计算出来
    •   如果对密钥流的一个分组进行加密后其结果碰巧与加密前相同,那么之后分组的密钥流,不会出现 “同一值的不断反复” 现象。
    • 密文分组的一个比特被反转,解密后明文分组中仅有与之对应的比特被反转,可以说成错误不会被放大,换言之攻击者也可以利用这一弱点。

     8、应该使用哪种模式

     =========== 完 ===========

     附表

  • 相关阅读:
    Django之POST GET与前后端交互
    Django中用户权限模块
    Django运算表达式与Q对象/F对象
    Django中Middleware中间件
    Form表单 JSON Content-type解析
    浅析ajax原理与用法
    浅析Django之session与cookie
    浅谈HTTP协议
    Django 项目搭建(ubuntu系统)
    h5 和之前版本的区别
  • 原文地址:https://www.cnblogs.com/LiuYanYGZ/p/13401568.html
Copyright © 2011-2022 走看看