密码学加密模式分类

2023-11-05

目录

电子密码本模式(Electronic Codebook, ECB)

密码分组链接模式(Cipher Block Chaining, CBC)

密文反馈模式(Cipher Feedback, CFB)

输出反馈模式(Output Feedback, OFB)

计数器模式(Counter, CTR)


电子密码本模式(Electronic Codebook, ECB)

ECB模式是最简单的加密模式,它将明文分成固定大小的块,然后对每个块独立进行加密。同样的明文块将加密为相同的密文块,因此在某些情况下可能存在安全性问题,例如对于相同的明文块会得到相同的密文块。

因为密码加密算法基本都是对一组明文进行加密的算法,假设一组长度为128位,加密前将要加密的明文分为多组,分别进行加密,这种其实算是不采用额外的加密模式,但是也给了这种模式一个名字,就叫电子密码本模式。

  • 特点:将每个明文块独立地加密成对应的密文块,不涉及前后依赖关系。
  • 优点:简单、并行处理能力强。
  • 缺点:相同的明文块将生成相同的密文块,对于重复的明文模式不安全;无法隐藏明文模式的统计特征。
  • 应用场景:适用于对独立、固定大小的数据块进行加密,如加密小文件、数据库中的敏感数据
  • 局限性:不适用于加密长消息、文件或流式数据;不提供数据的完整性保护。

密码分组链接模式(Cipher Block Chaining, CBC)

CBC模式首先使用初始向量(IV)与第一个明文块异或,然后进行加密,并将前一个密文块与当前明文块进行异或操作,然后加密。每个明文块的加密都依赖于前一个密文块的加密结果,从而打破了相同明文块生成相同密文块的规律。CBC模式提供了更好的安全性,并且可以并行加密和解密。

  • 基本原理:

    • 在CBC模式中,明文被分成固定大小的块(通常是64位或128位),每个块用作加密的单位。
    • 每个明文块在加密之前都会与前一个密文块进行异或运算。
    • 第一个明文块需要使用一个初始向量 (Initialization Vector, IV) 进行异或运算。
  • 加密过程:

    • 首先,选择一个合适的加密算法(如AES)和密钥。
    • 将明文按照块大小分割,并为第一个块选择一个随机的初始向量 (IV)
    • 对第一个明文块进行加密,将 IV 与明文块进行异或运算,然后使用密钥对结果进行加密得到第一个密文块。
    • 对于后续的明文块,将当前明文块与前一个密文块进行异或运算,然后使用密钥对结果进行加密得到当前密文块。
    • 重复上述步骤,直到所有明文块都被加密。

  • 解密过程:

    • 使用相同的密钥和初始向量 (IV) 进行解密。
    • 对第一个密文块使用密钥进行解密,然后与 IV 进行异或运算,得到第一个明文块。
    • 对于后续的密文块,使用密钥进行解密,然后与前一个密文块进行异或运算,得到当前明文块。
    • 重复上述步骤,直到所有密文块都被解密。
  • 特点和安全性:

    • CBC模式提供了较好的安全性,因为每个密文块的加密都依赖于前一个密文块。
    • 引入初始向量 (IV) 增加了随机性,即使相同的明文块会产生不同的密文块。
    • CBC模式可以有效地隐藏明文中的模式,提高安全性。
    • CBC模式支持并行处理,可以在多个处理器上同时进行加密和解密操作。
  • 特点:将前一个密文块与当前明文块进行异或操作,然后加密,引入了反馈机制。
  • 优点:隐藏了明文模式的统计特征;提供了数据的完整性保护。
  • 缺点:串行处理,性能较低;对于大数据块,无法并行加密。
  • 应用场景:适用于对长消息、文件或流式数据进行加密;对于要求保护数据完整性的应用。
  • 局限性:对于错误传播和重放攻击可能不具备足够的防御能力;需要使用初始向量(IV)。 

密文反馈模式(Cipher Feedback, CFB)

CFB模式将前一个密文块的输出密钥流进行异或操作,然后将结果与明文块进行异或得到密文块。在最开始则使用移位寄存器中的初始向量与密钥流进行加密,加密后选择前j比特与明文异或就可得到密文。这种模式下,密钥流的生成依赖于前一个密文块的加密结果,从而使得加密过程可以按块进行,而不需要等待整个数据块。

  • 特点:将前一个密文块的部分或全部作为输入与当前明文块进行异或操作,然后加密。
  • 优点:可以实现随机访问和流式加密;对于错误传播有较好的防御能力。
  • 缺点:串行处理,性能较低。
  • 应用场景:适用于实时加密应用、流媒体传输,可实现较高的实时性能。
  • 局限性:需要使用初始向量(IV);对于大数据块,无法并行加密。

输出反馈模式(Output Feedback, OFB)

OFB模式将前一组加密后的密钥流中的前j比特直接移入后一组的寄存器中,不需要得知前一组的明密文,每一组与明文进行异或的比特流也不会受到明密文的影响。OFB模式与CFB模式类似,但密钥流的生成是独立于明密文的,因此可以事先生成整个密钥流。

 特点:将前一个加密器的输出作为输入与当前明文块进行异或操作,然后加密。

  • 优点:可以实现随机访问和流式加密;对于错误传播有较好的防御能力。
  • 缺点:串行处理,性能较低。
  • 应用场景:适用于实时加密应用、流媒体传输,可实现较高的实时性能。
  • 局限性:需要使用初始向量(IV);对于大数据块,无法并行加密。

计数器模式(Counter, CTR)

CTR模式使用一个计数器作为输入,将计数器的值和初始向量输入加密算法,配合加密算法本身的密钥,得到一个输出,用这个输出与明文进行异或就得到密文。

计数器的值在每个块加密时递增,可以事先生成所有的计数器值以生成密钥流。

初始向量始终是固定不变的,每次只是改变计数器的值。

  • 特点:使用计数器生成密钥流,然后与明文进行异或操作。
  • 优点:可以实现随机访问和流式加密;并行处理能力强。
  • 缺点:对于重放攻击可能不具备足够的防御能力。
  • 应用场景:适用于并行处理和高性能加密场景,如磁盘加密、网络传输加密。
  • 局限性:对于错误传播和重放攻击需要采取适当的措施;需要使用初始向量(IV)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

密码学加密模式分类 的相关文章

  • 广告竞价策略:激发广告变现潜能的关键

    在数字化时代 广告已经成为企业推广品牌 产品和服务的关键手段之一 为了最大程度地发挥广告的效果 广告竞价策略成为广告主和数字营销专业人士关注的焦点 通过巧妙运用竞价策略 广告主可以在激烈的市场竞争中脱颖而出 实现广告变现的潜能 admaoy
  • 如何使用内网穿透实现iStoreOS软路由公网远程访问局域网电脑桌面

    文章目录 简介 一 配置远程桌面公网地址 二 家中使用永久固定地址 访问公司电脑 具体操作方法是 简介 软路由 是PC的硬件加上路由系统来实现路由器
  • 6类典型场景的无线AP选型和部署方案

    你们好 我的网工朋友 前段时间刚给你们来了篇解决无线频繁断网的技术文 解决无线频繁断网 这个办法值得收藏 不少朋友私聊 说想再聊聊无线AP的选型和部署方案 这不就安排上了 无线网络覆盖项目中 无线AP的合理选型和部署非常重要 在设计施工中
  • 浅谈能耗系统在马来西亚连锁餐饮业的应用

    1 背景信息 Background 针对连锁餐饮业能耗高且能源管理不合理的问题 利用计算机网络技术 通讯技术 计量控制技术等信息化技术 实现能源资源分类分项计量和能源资源运行监管功能 清晰描述各分店总的用能现状 实时监测各供电回路的电压 电
  • 成为一个黑客,就按照这个路线来!

    前几天一个同学在聊天中提到毕业后想要从事网络安全方向的工作 虽然他本身也是学计算机的 但是又怕心有余而力不足 因为 从事网络安全方面的工作向来起点都比较高 大学里少有开设这类课程的 在学校能够学到的知识比较有限 网上的关于这方面课程的质量又
  • The Planets:Venus

    靶场下载 The Planets Venus VulnHub 信息收集 arp scan l Interface eth0 type EN10MB MAC 00 0c 29 43 7c b1 IPv4 192 168 1 60 Starti
  • SpiderFlow爬虫平台 前台RCE漏洞复现(CVE-2024-0195)

    0x01 产品简介 SpiderFlow是新一代爬虫平台 以图形化方式定义爬虫流程 以流程图的方式定义爬虫 不写代码即可完成爬虫 是一个高度灵活可配置的爬虫平台 0x02 漏洞概述 SpiderFlow爬虫平台src main java o
  • 基于成本和服务质量考虑的不确定性下,电动汽车充电网络基础设施需求预测和迭代优化的分层框架研究(Python代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Python代码 数据
  • WEB前端常见受攻击方式及解决办法总结

    一个网址建立后 如果不注意安全问题 就很容易被人攻击 下面讨论一下集中漏洞情况和放置攻击的方法 一 SQL注入 所谓的SQL注入 就是通过把SQL命令插入到web表单提交或输入域名或页面请求的查询字符串 最终达到欺骗服务器执行恶意的SQL命
  • 2024年网络安全十10大发展趋势发布

    2023年网络安全十10大发展趋势发布 近日 中国计算机学会 CCF 计算机安全专委会中 来自国家网络安全主管部门 高校 科研院所 大型央企 民营企业的委员投票评选出2023年网络安全十大发展趋势 福利 趋势一 数据安全治理成为数字经济的基
  • 白帽子如何快速挖到人生的第一个漏洞 | 购物站点挖掘商城漏洞

    本文针对人群 很多朋友们接触安全都是通过书籍 网上流传的PDF 亦或是通过论坛里的文章 但可能经过了这样一段时间的学习 了解了一些常见漏洞的原理之后 对于漏洞挖掘还不是很清楚 甚至不明白如何下手 可能你通过 sql labs 初步掌握了sq
  • 2024年金三银四网络安全考试试题

    2023年金三银四网络安全考试试题 1 关于数据使用说法错误的是 A 在知识分享 案例中如涉及客户网络数据 应取敏感化 不得直接使用 B 在公开场合 公共媒体等谈论 传播或发布客户网络中的数据 需获得客户书面授权或取敏感化 公开渠道获得的除
  • 远程控制软件安全吗?一文看懂ToDesk、RayLink、TeamViewer、Splashtop相关安全机制_raylink todesk

    目录 一 前言 二 远程控制中的安全威胁 三 国内外远控软件安全机制 ToDesk RayLink Teamviewer Splashtop 四 安全远控预防 一 前言 近期 远程控制话题再一次引起关注 据相关新闻报道 不少不法分子利用远程
  • 如何使用Imagewheel搭建一个简单的的私人图床无公网ip也能访问

    文章目录 1 前言 2 Imagewheel网站搭建 2 1 Imagewheel下载和安装 2 2 Imagewheel网页测试 2 3 cpolar的安装和注册 3 本地网页发布 3 1 Cpolar临时数据隧道
  • 网络安全基础知识面试题库

    1 基于路由器的攻击手段 1 1 源IP地址欺骗式攻击 入侵者从外部传输一个伪装成来自内部主机的数据包 数据包的IP是 内网的合法IP 对策 丢弃所有来自路由器外端口 却使用内部源地址的数据包 1 2 源路由攻击 入侵者让数据包循着一个不可
  • tcpdump抓包

    tcpdump抓包 基本概念 1 类型的关键字 host 指明一台主机 如 host 10 1 110 110 net 指明一个网络地址 如 net 10 1 0 0 port 指明端口号 如 port 8090 2 确定方向的关键字 sr
  • 短信系统搭建主要因素|网页短信平台开发源码

    短信系统搭建主要因素 网页短信平台开发源码 随着移动互联网的快速发展 短信系统已成为企业和个人进行信息传递的重要工具 建立一个高效可靠的短信系统对于企业来说非常重要 下面我们将介绍一些影响短信系统搭建的主要因素 1 平台选择 在搭建短信系统
  • 全网最全(黑客)网络安全自学路线!熬夜两周整理(巨详细)

    学网络安全有什么好处 1 可以学习计算机方面的知识 在正式学习网络安全之前是一定要学习计算机基础知识的 只要把网络安全认真的学透了 那么计算机基础知识是没有任何问题的 操作系统 网络架构 网站容器 数据库 前端后端等等 可以说不想成为计算机
  • 【安全】简单解析统一身份认证:介绍、原理和实现方法

    深入解析统一身份认证 介绍 原理和实现方法 导语 统一身份认证是什么 统一身份认证的原理 统一身份认证的实现 结语 导语 随着互联网的发展和各种在线服务的普及 用户在不同的应用和平台上需要进行多次身份验证 为了简化用户的登录和减少重复操作
  • 【安全-SSH】SSH安全设置

    今天发现自己的公有云服务器被攻击了 在这里插入图片描述 https img blog csdnimg cn direct cafdca04646f4b8b838400ec79ac282f png 然后查看了登录日志 如上图 ls sh va

随机推荐

  • NTC热敏电阻温度计算方法,B值法

    1 概述 NTC热敏电阻随环境温度 T 升高 电阻值 会下降 反之 当温度 T 下降 电阻值 会上升 NTC热敏电阻的计算公式有Steinhart Hart方程和B值法两种方法 我只熟悉了B值法 常规NTC热敏电阻参数 温度为 R25 时
  • 一文带你读懂Git中的rebase与fast-forward

    在项目开发的过程中 git作为版本管理工具重要性不言而喻 平常大家肯定会使用merge命令来合并分支 然而merge来合并分支有个缺点 就是当分支太多 合并太多 那么提交记录的图谱看起来就非常丑 以上 而rebase就可以解决这个问题 下文
  • 微电网优化调度

    欢迎来到本博客 作者研究 主要研究方向是电力系统和智能算法 机器学习和深度学习 目前熟悉python网页爬虫 机器学习 群智能算法 深度学习的相关内容 希望将计算机和电网有效结合 本文目录如下 目录 0 摘要 1 引言 2 数学模型 3 算
  • C语言_函数指针

    回顾指针概念 int a b 0 int ip a int sp ip int ar 10 ip ar int par 10 ar int pbr 10 int sbr 10 pbr 需要定义一个指向一维整型数组的指针 才能指向pbr数组
  • 快速傅里叶变换FFT总结

    快速傅里叶变换 在竞赛中离散傅里叶变换DFT及其逆变换IDFT尤为常用 主要用于快速求多项式的乘积 形式化地说 多项式就是某个 f x i
  • linux下signal()软中断信号

    一 signal 信号的功能 软中断信号 signal 又简称为信号 用来通知进程发生了异步事件 在软件层次上是对中断机制的一种模拟 在原理上 一个进程收到一个信号与处理器收到一个中断请求是一样的 二 使用 添加头文件 include
  • antd pro中ProTable使用时遇到的一些问题,search,toolBar,toolBarRender属性

    antd pro ProTable官方API ProTable 在 antd 的 Table 上进行了一层封装 支持了一些预设 并且封装了一些行为 这里只列出与 antd Table 不同的 api 所以 找不到的可以去antd table
  • angular:ServerTransferStateModule将服务器请求的数据保存,避免客户端再次请求

    参考 https www youtube com watch v B9hCjN4Tr1Y t 165s 12 40开始讲解
  • 百度地图API的简单使用(vue3)

    以下地图API的使用是在vue3中进行使用 也可在其他框架中使用 可能只是路由引入的方式不同 div盒子的创建 生成地图的方法 生成点标记的方法 生成信息窗口的方法皆一致 1 在框架中要找到入口文件并将一下代码引入其中 html直接引入即可
  • Ubuntu 14.04 LTS apt-get install添加自动补齐-完成功能

    1 安装bash completion apt get install bash completion 2 编辑 bashrc 文件 添加如下内容 if f etc bash completion then etc bash complet
  • 区块链+边缘计算 技术白皮书

    近日 中国移动5G联合创新中心与中兴通讯 区块链技术与数据安全工业和信息化部重点实验室 北京大学新一代信息技术研究院合作 共同发布了 区块链 边缘计算白皮书 白皮书聚焦于区块链与边缘计算技术和应用的结合点 探索二者结合产生的相互赋能 相互促
  • 深入JVM - JIT分层编译技术与日志详解

    深入JVM JIT分层编译技术与日志详解 文章目录 深入JVM JIT分层编译技术与日志详解 1 背景简介 2 JIT 编译器 2 1 客户端版本的编译器 C1 2 2 服务端版本的编译器 C2 2 3 Graal JIT 编译器 3 分层
  • yocto配置好eclipse之后编译多线程配置

    在yocto项目中配置好eclipse的开发环境 如何配置eclipse开发出多线程程序 普通的eclipse程序只需要在Properties gt C C Build gt Settings gt Tool Settings gt GCC
  • sublime text 3 扩展插件SideBarEnhancements用法教程

    SideBarEnhancements本是增强侧边栏的插件 这里将教大家如何用来做sublime text 3浏览器预览插件 并可自定义浏览器预览的快捷键 第一步 安装此插件 在sublime里面ctrl shift p install p
  • springboot-静态资源目录的配置

    一 通过配置文件配置 配置节点 spring web resources static locations值为要配置的静态资源存放目录如 spring web resources static locations classpath tes
  • IP包头结构定义以及结构体iphdr分析

    Linux linux 可以使用 http blog csdn net dreamintheworld article details 52096675 中的例程来实践通讯过程 来看一下IP包 IP头结构的定义 包格式解析如图 数据对应 对
  • word中添加Mathtype公式行间距改变问题

    在mathtype中编辑任何一个公式 将字体调整好 然后在公式编辑窗口中点 Preference Save to file 将设置保存为一个文件 文件名任取 关闭公式编辑窗口 退回到Word窗口 然后在Mathtype菜单中点 Format
  • xrdp无法启动

    xrdp突然无法启动l systemctl start xrdp A dependency job for xrdp service failed See journalctl xe for details 查看日志信息 journalct
  • 分享25个适合上班族的副业路子

    你是否也曾经在为每个月的工资发愁 你是否想过做点副业来增加收入 现在很多上班族的工资 已经难以满足他们的生活需求了 很多人开始尝试通过副业来增加收入 那么上班族要如何寻找适合自己的副业呢 下面就给大家分享25个适合上班族的副业赚钱路子 或许
  • 密码学加密模式分类

    目录 电子密码本模式 Electronic Codebook ECB 密码分组链接模式 Cipher Block Chaining CBC 密文反馈模式 Cipher Feedback CFB 输出反馈模式 Output Feedback