【密码学】三、分组密码的工作模式

news2024/9/22 0:51:53

分组密码的工作模式

  • ECB模式
  • CBC模式
  • CFB模式
  • OFB模式
  • CTR模式

电子密码本ECB、密码分组链接模式CBC、密码反馈模式CFB和输出反馈模式OFB、计数器模式CTR

ECB模式

它一次对一个64bit长的明文分组加密,而且每次的加密密钥都相同。可以认为有一个非常大的电子密码本,对任意一个明文分组,电子密码本中都有一项对应于它的密文。
加密:

x1
Ek
y1
x2
Ek
y2
x3
Ek
y3

解密:

y1
Dk
X1
y2
Dk
x2
y3
Dk
x3

优点:ECB模式在用于短数据时非常理想。
消息进行分组,若最后一个分组长度不足64bit,则需要进行补充。
缺点:相同的明文产生的密文是一样的,所以攻击者会从结构中进行分析攻击。

CBC模式

为了解决ECB模式的安全缺陷,可以让重复的明文分组产生不同的密文分组。一次对一个明文分组进行加密,使用同一个密钥。加密算法的输入是当前明文分组和前一次密文分组的异或。
因此加密算法的输入不会显示与这次明文分组之间的固定关系。
解密的时候,每个密文分组被解密后,再与前一个密文分组异或。初始变量需要被保护。
加密过程
解密模式
CBC模式能够获得保密性,还能用于认证。

CFB模式

DES是分组密码,但是利用CFB或OFB模式可以将DES转换为流密码。
加密过程如下:s通常是8bit
初始输出左边最高s位
加密过程

解密过程:
解密过程
解密的时候使用的也是加密函数。
CFB模式可以获得保密性,还可以用于认证。适合数据以比特或字节为单位出现,存在有限的错误传播。

OFB模式

OFB模式与CFB模式类似,但是OFB模式是将加密算法的输出反馈到移位寄存器,而CFB模式是将密文单元反馈到移位寄存器。
加密过程:
加密过程

解密过程:解密过程
优点:传输过程中的比特错误不会被传播。而在CFB模式中,1bit的错误会影响解密过程中各个明文单元的值。
缺点:更易受到消息流的篡改攻击。
特点:消息作为比特流,分组加密的输出与被加密的消息相加,比特差错不易传播。

CTR模式

CTR模式被广泛用于ATM网络和IPSec应用中。
加密过程:
加密过程
解密过程:
解密过程
特点:
1)允许同时处理多块明文/密文
2)允许并行计算,可以很好地利用CPU流水等并行技术
3)算法和加密盒的输出不依靠明文和密文的输入
4)随机访问和可证明的安全性
5)仅要求实现加密算法,不要求实现解密算法
6)可以高效地作为流式加密使用

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/802177.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在数字化时代,数字孪生能挽回中医的地位嘛?

中医作为中国传统医学的瑰宝,拥有悠久的历史和深厚的文化底蕴。然而,随着现代医学的快速发展,中医面临着许多挑战和困境。在这个数字化时代,数字孪生作为一项前沿技术,是否能为中医行业带来新的希望和机遇呢&#xff1…

制定机器学习规划路线:从入门到专业

文章目录 🍀第一阶段:入门基础🍀了解机器学习概念🍀学习编程和数学基础🍀探索经典机器学习算法🍀完成实践项目 🍀第二阶段:深入学习🍀 掌握深度学习基础🍀学习…

无法定位程序输入点:于动态链接库KERNEL32.dll上(未解决)

错误如图: 搜索了一下,说是下载KERNEL32.dll。我在WINDOWS目录下搜索了,实际上这个文件已经存在: 原因猜测,应该是软件本身与系统版本不配套导致的。可能是.NET?C

JAVA课程期末复习学习总结

JAVA课程学习总结 知识点总结 文章目录 JAVA课程学习总结知识点总结Eclipse如何与GitHub连接1.前期准备2.远程建库3.本地操作 常用DOS命令数组正则表达式继承多态向上转型向下转型多态的应用抽象方法 抽象类与接口的异同点不同点:相同点:从设计理念层面…

【MySQL】事务与隔离级别详解

【MySQL】事务 事务的概念为什么要有事务引擎对事务的支持事务的提交方式事务的操作准备正常事务操作:启动、回滚、提交非正常事务总结 事务的隔离级别隔离性隔离级别隔离级别的查看设置隔离级别会话级别全局级别 隔离级别的具体体现读未提交 Read Uncommitted读提交…

本土机器视觉创业企业涌现,深眸科技携手AI+3D视觉勇闯小场景赛道

随着工业自动化技术向智能化方向发展,人工智能实现快速落地,机器视觉应用产品在算力、算法和技术等方面得到持续升级,助力中国机器视觉行业进入高质量发展阶段。 在制造业转型升级、新兴产业发展的过程中,中国作为全球制造中心之…

第十四章:通过迭代挖掘共同物体特征的弱监督语义分割

0.摘要 在图像标签监督下进行弱监督语义分割是一项具有挑战性的任务,因为它直接将高层语义与低层外观相关联。为了弥合这一差距,本文提出了一种迭代的自底向上和自顶向下的框架,交替扩展对象区域和优化分割网络。我们从分类网络产生的初始定位…

新版mmpose训练新版RTMDet/Pose及自定义数据集制作

自定义数据集制作:要求满足目标检测网络和关键点检测网络都可以用其来训练 1. 打开Labelme并导入我们的图像文件夹;2. 用矩形框框出目标检测网络要检测的目标,我们起名叫person;3. 用Creat Point 标记关键点,这里我们只检测人的头和裆两个点。这里教一个小技巧:每一个数据…

Mindar.JS——实现AR图像追踪插入图片或视频

Mindar.JS使用方式 注意&#xff1a;此篇文章需要启动https才可调用相机权限 图像追踪示例 需要用到两个js库 <script src"./js/aframe.min.js"></script><script src"./js/mindar-image-aframe.prod.js"></script>下面看一下标签…

一款性价比高的知识管理系统应具备的功能

编者按&#xff1a;市面上的知识管理系统有不同的类型&#xff0c;有针对文件管理的&#xff0c;也有针对内容管理的&#xff0c;各有长处&#xff0c;那么一款好用的KMS大概都具备哪些优点呢&#xff1f; 关键词&#xff1a;知识管理系统、免运维/安装、 随着企业对企业隐形知…

PyCharm解决Git冲突

什么时候会出现冲突 当我们从远程的仓库pull下来的时候&#xff0c;如果远程仓库跟本地仓库修改了同一个文件&#xff0c;在pull的过程中就会提示合并冲突&#xff1a; $ git pull remote developremote: Enumerating objects: 27, done.remote: Counting objects: 100% (27/2…

Postgres日期格式化

1、替换dual的方法 oracle: select ‘111’ phone from dual; Postgres: select ‘111’ phone ; 2、char类型格式化成日期 to_date(‘20230728’,‘yyyyMMdd’) 3、两个日期取相差的天数&#xff08;非绝对值&#xff0c;带正负号&#xff09; extract(day from now()-to_date…

git的clone,上传,mirror与upstream同步

文章目录 clone日志信息的同步子树合并同步 clone clone他人项目&#xff0c;git到自己的项目 rm -rf .git .git存放原始项目的日志信息&#xff0c;这里需要添加自己的日志信息&#xff0c;需要删除重写。也可手动删除 git init 初始化文件&#xff0c;依据本地日志信息生产.…

在CentOS 7上挂载硬盘到系统的步骤及操作

目录 1&#xff1a;查询未挂载硬盘2&#xff1a;创建挂载目录3&#xff1a;检查磁盘是否被分区4&#xff1a;格式化硬盘5&#xff1a;挂载目录6&#xff1a;检查挂载状态7&#xff1a;设置开机自动挂载总结&#xff1a; 本文介绍了在CentOS 7上挂载硬盘到系统的详细步骤。通过确…

信息安全:物理与环境安全技术.

信息安全&#xff1a;物理与环境安全技术. 传统上的物理安全也称为 实体安全 &#xff0c;是指包括 环境、设备和记录介质在内的所有支持网络信息系统运行的硬件的总体安全&#xff0c;是网络信息系统安全、可靠、不间断运行的基本保证&#xff0c;并且确保在信息进行加工处理、…

企业电子招投标采购系统源码之-java spring cloud+spring boot

​ 信息数智化招采系统 服务框架&#xff1a;Spring Cloud、Spring Boot2、Mybatis、OAuth2、Security 前端架构&#xff1a;VUE、Uniapp、Layui、Bootstrap、H5、CSS3 涉及技术&#xff1a;Eureka、Config、Zuul、OAuth2、Security、OSS、Turbine、Zipkin、Feign、Monitor、…

LC-2050. 并行课程 III(小根堆 + 拓扑排序)

2050. 并行课程 III 难度困难42 给你一个整数 n &#xff0c;表示有 n 节课&#xff0c;课程编号从 1 到 n 。同时给你一个二维整数数组 relations &#xff0c;其中 relations[j] [prevCoursej, nextCoursej] &#xff0c;表示课程 prevCoursej 必须在课程 nextCoursej 之前…

TBOX相关芯片学习

芯片学习 ESIM–嵌入式SIM卡 ESIM将SIM卡直接嵌入到目标设备芯片&#xff0c;而不是作为独立的可移除文件 功能架构&#xff1a; SM-SR:签约管理安全路由服务器&#xff0c;主要功能是实现eUICC远程配置数据的安全路由和传输 SM-DP:签约管理数据准备服务器&#xff0c;主要功…

【产品经理】高阶产品如何处理需求?(3方法论+2案例+1清单)

不管你是萌新小白&#xff0c;还是工作了几年的“老油条”&#xff0c;需求一直是产品经理工作的重点。只不过&#xff0c;不同年限的产品经理需要面对的需求大有不同&#xff0c;对能力的要求更高。 不知你是否遇过以下问题&#xff1f; 你接手一个项目后&#xff0c;不知从何…

SDN系统方法 | 8. 网络虚拟化

随着互联网和数据中心流量的爆炸式增长&#xff0c;SDN已经逐步取代静态路由交换设备成为构建网络的主流方式&#xff0c;本系列是免费电子书《Software-Defined Networks: A Systems Approach》的中文版&#xff0c;完整介绍了SDN的概念、原理、架构和实现方式。原文: Softwar…