一、ECB

ECB模式全称是Electronic CodeBook模式,在ECB模式中,将明文分组加密之后的结果将直接成为密文分组。

ECB模式全称是Electronic CodeBook模式,在ECB模式中,将明文分组加密之后的结果将直接成为密文分组。

存在明显缺点:相同的明文加密后得到的密文是相同的。这样一来,只要观察一下密文,就可以知道明文存在怎样的重复组合,并可以以此为线索来破译密码,因此ECB模式是存在一定风险的。

二、CBC

CBC模式的全称是Cipher Block Chaining模式(密文分组链接模式),之所以叫这个名字,是因为密文分组像链条一样相互连接在一起。

在CBC模式中,首先将明文分组与前一个密文分组进行XOR运算,然后再进行加密。

相比于ECB,CBC在每一次加密前都先于上一次所得密文进行了一次xor运算,克服了ECB相同明文加密所得密文相同的缺陷。

<初始化向量>

当加密第一个明文分组时,由于不存在“前一个密文分组”,因此需要事先准备一个长度为一个分组的比特序列来代替“前一个密文分组”,这个比特序列称为初始化向量(Initialization Vector),通常缩写为IV,一般来说,每次加密时都会随机产生一个不同的比特序列来作为初始化向量。

解密过程中:

1、如果一个密文组出现被破环的情况,但长度不变,造成两组明文数据收到影响。

2、 出现缺失的情况的时,所有出现确实情况后的明文数据都受到影响。 

三、CFB

CFB模式全称Cipher FeedBack模式(密文反馈模式)。在CFB模式中,前一个密文分组会被送回到密码算法的输入端。所谓反馈,这里指的就是返回输入端的意思。

在ECB模式和CBC模式中,明文分组都是通过密码算法进行加密的,然而,在CFB模式中,明文分组并没有通过密码算法来直接进行加密。

明文分组和密文分组之间并没有经过“加密”这一步骤。在CFB模式中,明文分组和密文分组之间只有一个XOR。

四、OFB

OFB模式的全称是output-Feedback模式(输出反馈模式)。在OFB模式中,密码算法的输出会反馈到密码算法的输入中。

OFB模式不是通过密码算法对明文直接加密的,而是通过将“明文分组”和“密码算法的输出”进行XOR来产生“密文分组”的。

OFB解密:

<OFB和CFB的区别>

CFB模式中,密码算法的输入是前一个密文分组,也就是将密文分组反馈到密码算法中,因此有了“密文反馈算法”这个名字。

OFB模式中,密码算法的输入则是密码算法前一个输出,也就是将输出反馈给密码算法,因此就有了“输出反馈模式”这个名字。

五、CTR

CTR模式全称CounTeR模式(计数器模式)。CTR模式是一种通过将逐次累加的计数器进行加密来生成密钥流的流密码。

CRT解密:

CTR模式中,每个分组对应一个逐次累加的计数器,并通过对计数器进行加密来生成密钥流。也就是说,最终的密文分组是通过将计数器加密而得到的比特序列,与明文分组进行XOR而得到的。

<特点>

CTR模式的加密和解密使用了完全相同的模式,因此在程序上实现上比较容易。

CTR模式中可以以任意顺序对分组进行加密和解密,因为在加密和解密时需要用到的“计数器”的值可以由nonce和分组序号直接计算出来。

能够以任意顺序处理分组,意味着能够实现并行计算。在支持并行计算的系统中,CTR模式的速度是非常快的。

分组加密五大常见模式(ECB、CBC、CFB、OFB、CTR)相关推荐

  1. 密码学专题 密钥生成|分组加密的模式 ECB|CBC|CFB|OFB

    密钥生成 如何安全地生成密钥.即如何生成可信任的密钥,保证用户得到的密钥是安全的, 生成密钥的机器或程序是可信的. 如何生成安全的密钥.安全的密钥没有统一准确的定义,但一般来说是指密钥抗 猜测和抗穷举 ...

  2. span class=red[置顶]/span分组对称加密模式:ECB/CBC/CFB/OFB缺CTR- -

    一般的加密通常都是块加密,如果要加密超过块大小的数据,就需要涉及填充和链加密模式,文中提到的ECB和CBC等就是指链加密模式.在C#组件中实现的很多算法和Java都不太兼容,至少我发现RSA和AES/ ...

  3. 分组对称加密模式:ECB/CBC/CFB/OFB

    一般的加密通常都是块加密,如果要加密超过块大小的数据,就需要涉及填充和链加密模式,文中提到的ECB和CBC等就是指链加密模式.在C#组件中实现的很多算法和Java都不太兼容,至少我发现RSA和AES/ ...

  4. 密码学与网络安全 - 7 分组加密的工作模式 8 伪随机数的产生和流密码

    7 分组加密的工作模式 7.1 多重加密与三重DES 7.1.1 双重DES 双重DES所对应的映射不被单DES所定义,所以是强于单DES的 中间相遇攻击:可能的密钥加密明文,然后用可能的密钥解密密文 ...

  5. 分组加密模式 ECB CBC OFB CFB ,分组加密填充

    目录 分组加密模式 ECB模式 CBC模式 CFB/OFB都可以作为流加密 CFB模式 OFB模式 分组加密的填充 PKCS7 分组加密模式 多个分组加密互相之间如何关联 ECB模式 每个分组之间单独 ...

  6. AES加密的工作模式ECB、CBC、CFB、OFB及案例

    高级加密标准(Advanced Encryption Standard: AES)是美国国家标准与技术研究院(NIST)在2001年建立了电子数据的加密规范.其是对称加解密算法的最经典算法之一,它是一 ...

  7. 分组加密的四种模式(ECB、CBC、CFB、OFB)

    加密一般分为对称加密(Symmetric Key Encryption)和非对称加密(Asymmetric Key Encryption). 对称加密又分为分组加密和序列密码. 分组密码,也叫块加密( ...

  8. 分组加密的常用工作模式(转载)

    对称加密中的]组加密,也叫块加密,即将明文按一定的长度分组,每次加密明文中的一个分组,得到一个密文的分组,最后将密文分组合并成密文.解密时依次解密每个密文分组,得到对应的明文分组,再将分组合并还原成明 ...

  9. 分组加密模式 ECB、CBC、PCBC、CFB、OFB、CTR

    在分组加密算法中,有几种不同的工作模式,分别是ECB(Electronic CodeBook,电子密码本模式).CBC(Cipher-block chaining,密码块连接模式).PCBC(Prop ...

最新文章

  1. 【ACM】熊孩子的乐趣
  2. Spring Cloud Alibaba 一致性挑战:微服务架构下的数据一致性解决方案
  3. JSP复习(二):EL表达式
  4. PK3Err0040: The target device is not ready for debugging. Please check your configuration bit settin
  5. 无法连接到 recaptcha_汕头精巧的重载连接器报价行情,靠谱的重载连接器出厂价...
  6. efi分区咋移动到c盘里_如何移动的EFI系统分区
  7. 如何写出优雅的跨平台的C/C++代码
  8. JetBrains PyCharm选中内容后Backspace删除无法使用,Ctrl+c/Ctrl+v/Ctrl+s/Ctrl+d等等快捷键无法使用的问题的解决
  9. 关于stm32优先级大小的理解
  10. 使用arcgis、matlab与R语言GD包进行地理探测器 批量运行,并导出探测结果
  11. NPDP产品经理认证考试培训资料--XISAI
  12. VMware安装Ubuntu教程
  13. 2017人人都是产品经理年度作家评选结果公告
  14. SHELL编程基础 By jackie
  15. 复习C++期末考试题目
  16. Toontrack EZDrummer for Mac - 鼓音乐制作工具
  17. 微信接口返回的状态码
  18. 2022年全球市场混合筒仓总体规模、主要生产商、主要地区、产品和应用细分研究报告
  19. weblogic打补丁方法
  20. c语言写一个会动的爱心图片,一键生成心形bmp图片

热门文章

  1. 芝麻信用评分启示:守信用,得发展
  2. freemarker 应用模板导出Execle(解决生成弹出版本不适合)
  3. C语言基础知识(三)-程序设计结构、数组、字符串处理函数
  4. QQ付费群规则重大变更!特别是这类群!
  5. Hadoop中HDFS的Shell操作(开发重点)、启动Hadoop集群、基本语法、常用命令实操、命令大全、-help、-mkdir、-moveFromLocal、-copyFromLocal
  6. 李阳疯狂英语突破对话(37)-多多益善
  7. 从信用卡账单刷卡数据中,我们可以分析出什么?
  8. jango模板form表单action的url问题
  9. 技术分享 | Airsim初探-用游戏引擎做仿真
  10. 使用AmazonS3