文档章节

对称算法的四种运行模式

可乐瓶的小辣椒
 可乐瓶的小辣椒
发布于 2016/12/13 12:14
字数 721
阅读 22
收藏 0

一、电子密码本模式 Electronic Code Book(ECB)

图片1

这种模式是最早采用和最简单的模式,它将加密的数据分成若干组,每组的大小跟加密密钥长度相同,然后每组都用相同的密钥进行加密。

其缺点是:电子密码本模式用一个密钥加密消息的所有块,如果原消息中重复明文块,则加密消息中的相应密文块也会重复,因此,电子密码本模式适于加密小消息。

二、加密块链模式 Cipher Block Chaining(CBC)

图片2

CBC模式的加密首先也是将明文分成固定长度的块,然后将前面一个加密块输出的密文与下一个要加密的明文块进行异或操作,将计算结果再用密钥进行加密得到密文。第一明文块加密的时候,因为前面没有加密的密文,所以需要一个初始化向量。跟ECB方式不一样,通过连接关系,使得密文跟明文不再是一一对应的关系,破解起来更困难,而且克服了只要简单调换密文块可能达到目的的攻击。

三、加密反馈模式 Cipher Feedback Mode(CFB)

图片3

面向字符的应用程序的加密要使用流加密法,可以使用加密反馈模式。在此模式下,数据用更小的单元加密,如可以是8位,这个长度小于定义的块长(通常是64位)。其加密步骤是:

1、使用length位的初始化向量。初始化向量放在移位寄存器中,在第一步加密,产生相应的length位初始化密文K;

2、初始化密文K高n位与明文前n位进行异或运算,产生密文第一部分c(密文块0),然后将c传输到接收方;

3、向量的位(即初始化向量所在的移位寄存器内容)左移n位,使移位寄存器最右边的n位为不可预测的数据,在其中填入c的内容;

4、重复第1-3步,直到加密所有的明文单元。

四、输出反馈模式 Output Feedback Mode(OFB)

图片4

输出反馈模式与CFB相似,惟一差别是,CFB中密文填入加密过程下一阶段,而在OFB中,初始化向量加密过程的输出K的高n位填入加密过程下一阶段。

本文转自:http://cakin24.iteye.com/blog/2343834

更多内容请点击查看原文

年终特惠

 

© 著作权归作者所有

可乐瓶的小辣椒
粉丝 6
博文 318
码字总数 126125
作品 0
私信 提问
看完秒懂对称加密、非对称加密、数字签名

对称加密算法 对称加密(也叫私钥加密)指加密和解密使用相同密钥的加密算法。有时又叫传统密码算法,就是加密密钥能够从解密密钥中推算出来,同时解密密钥也可以从加密密钥中推算出来。而在大...

yushiwh
2018/07/11
0
0
安卓的六种核心安全机制-加密、密钥、签名与证书

安全主要用于四种需求 保密:通信中的信息对外进行保密; 鉴别/认证:鉴别认证与你通信的对端是你所认证的对端; 完整性:一旦某个信息产生,不能被随意篡改,如果被篡改,可以被发现; 不可...

dailei1021
2015/12/26
145
0
打造属于你的加密Helper类

摘要 在我们软件系统设计中,数据的安全性是我们考虑的重中之重,特别像银行系统的设计账户和密码都需进行加密处理。这时我们可以使用加密算法对数据进行加密处理,这就是我们今天要介绍的主...

长平狐
2012/06/11
209
0
【Java小工匠聊密码学】--对称加密--概述

1、什么是对称加密   对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文“原始数据”和“加密密钥“一起经过特殊加密算法处理后,使其变成复杂的加密密文发...

追梦着
2018/06/10
0
0
Windows安装使用Openssl

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 https://blog.csdn.net/KiTok/article/details/90349671 什么是OpenSSL? OpenSSL是用于安全...

KitStar
05/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

STM32进阶之串口环形缓冲区实现

队列的概念 在此之前,我们来回顾一下队列的基本概念: 队列 (Queue):是一种先进先出(First In First Out ,简称 FIFO)的线性表,只允许在一端插入(入队),在另一端进行删除(出队)。 队列...

杰杰1号
15分钟前
5
0
设计模式-建造者模式

建造者模式 定义 将一个复杂对象的构建和它的表示分离,使得同样的构建过程创建出不同的表示。这句话理解起来优点抽象,我们打个简单的比方吧,中国人都喜欢做菜,做菜的时候后会放很多配料...

木本本
18分钟前
6
0
017、xml版本代码生成器配置

1、在pom.xml文件中增加mybatis-generator-maven-plugin插件 <build> <plugins> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>......

北岩
30分钟前
3
0
用jQuery-Easy-UI编写注册页面

本文转载于:专业的前端网站➮用jQuery-Easy-UI编写注册页面 1 <!DOCTYPE html> 2 <html lang="en"> 3 4 <head> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content=......

前端老手
39分钟前
3
0
Git ssh配置

生成密钥对 ssh-keygen -t rsa -C "email@email.com"邮箱替换自己邮箱在地址C:\Users\账户\.ssh下,id_rsa、id_rsa.pub两个文件复制文件id_rsa.pub内容到github\gitlab的Settings-> SSH ......

JUKE
46分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部