分组加密的工作模式

多重加密与三重DES

  • 双重DES

    • C = E ( K 2 , E ( K 1 , P ) ) P = D ( K 1 , D ( K 2 , C ) ) C = E(K_2,E(K_1,P))\\ P = D(K_1,D(K_2,C)) C=E(K2,E(K1,P))P=D(K1,D(K2,C))

    • 中间相遇攻击:对所有双重加密都有效

      根据
      C = E ( K 2 , E ( K 1 , P ) ) X = E ( K 1 , P ) = D ( K 2 , C ) C = E(K_2,E(K_1,P))\\ X=E(K_1,P) = D(K_2,C) C=E(K2,E(K1,P))X=E(K1,P)=D(K2,C)

      • 先将P用所有可能的密钥K_1进行加密,得到2^56个X
      • 其次将C按照所有可能的密钥K_2进行解密,得到的每一个值与表内的X进行比较,如有相等则攻击成功
  • 使用两个密钥的三重DES:加密过程为:加密-解密-加密

    • C = E ( K 1 , D ( K 2 , E ( K 1 , P ) ) ) P = D ( K 1 , E ( K 2 , D ( K 1 , C ) ) ) C = E(K_1,D(K_2,E(K_1,P)))\\ P = D(K_1,E(K_2,D(K_1,C))) C=E(K1,D(K2,E(K1,P)))P=D(K1,E(K2,D(K1,C)))

在这里插入图片描述

分组密码的工作模式

  • 电码本(ECB):用相同的密钥分别对明文分组独立加密,eg:单个数据的安全传输

在这里插入图片描述

  • 密文分组连接(CBC):加密算法的输入是上一个密文组和下一个明文组的异或,eg:面向分组的通用传输、认证

在这里插入图片描述

  • 密文反馈(CFB):一次处理s位,上一块密文作为加密算法的输入,产生的伪随机数输出与明文异或作为下一单元的密文

    eg:面向数据流的通用传输、认证

在这里插入图片描述

  • 输出反馈(OFB):与CFB类似,只是加密算法的输入是上一次加密的输出且使用整个分组,eg:噪声信道的数据流在这里插入图片描述

  • 计数器(CTR):每个明文分组都与一个经过加密计数器相异或。对每个后续分组计数器递增,eg:面向分组的通用传输、用于高速需求在这里插入图片描述

posted @   chanxe  阅读(24)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 凌晨三点救火实录:Java内存泄漏的七个神坑,你至少踩过三个!
点击右上角即可分享
微信分享提示