导航:首页 > 文档加密 > cbc加密

cbc加密

发布时间:2022-01-20 18:54:02

‘壹’ 关于C#和java的AES加密CBC模式下,加密出来的结果不相同,求帮助

可能转码方式不一样。。

‘贰’ 求救啊,IOS,DES加密 CBC模式的,即带key和iv的加密

openssl;自己编译一个库

‘叁’ java的des cbc加密,该怎么解决

o little_qd:
您的这句话:只有CBC模式,key PKCS5Padding iv对应时,Java与其他语言的算法才兼容
请问怎么理解呢?
是否只有cbc模式,并且只有PKCS5Padding的补位方式,java des出来的结果才和其他的相同,是这样吗??
如果是这样的话,要达到和其他语言相同的结果,是不是就得自己重写这个des的算法?

‘肆’ 在DES加密里边,ECB和CBC有什么区别

一、优点不同:

ECB模式

1、简单;

2、有利于并行计算;

3、误差不会被传送;

CBC模式:

1、不容易主动攻击,安全性好于ECB,适合传输长度长的报文,是SSL、IPSec的标准。

二、缺点不同:

ECB模式

1、不能隐藏明文的模式;

2、可能对明文进行主动攻击;

CBC模式:

1、不利于并行计算;

2、误差传递;

3、需要初始化向量IV

三、概念不同

1、ECB模式又称电子密码本模式:Electronic codebook,是最简单的块密码加密模式,加密前根据加密块大小(如AES为128位)分成若干块,之后将每块使用相同的密钥单独加密,解密同理。

2、密码分组链接(CBC,Cipher-block chaining)模式,由IBM于1976年发明,每个明文块先与前一个密文块进行异或后,再进行加密。在这种方法中,每个密文块都依赖于它前面的所有明文块。同时,为了保证每条消息的唯一性,在第一个块中需要使用初始化向量IV。

(4)cbc加密扩展阅读:


1976年,IBM发明了密码分组链接(CBC,Cipher-block chaining)模式。在CBC模式中,每个明文块先与前一个密文块进行异或后,再进行加密。在这种方法中,每个密文块都依赖于它前面的所有明文块。同时,为了保证每条消息的唯一性,在第一个块中需要使用初始化向量。

若第一个块的下标为1,则CBC模式的加密过程为:

Ci = Ek (P ⊕ Ci-1), C0 = IV.

而其解密过程则为:

Pi = Dk (Ci) ⊕Ci-1, C0 = IV.

CBC是最为常用的工作模式。它的主要缺点在于加密过程是串行的,无法被并行化,而且消息必须被填充到块大小的整数倍。解决后一个问题的一种方法是利用密文窃取。

注意在加密时,明文中的微小改变会导致其后的全部密文块发生改变,而在解密时,从两个邻接的密文块中即可得到一个明文块。因此,解密过程可以被并行化,而解密时,密文中一位的改变只会导致其对应的明文块完全改变和下一个明文块中对应位发生改变,不会影响到其它明文的内容。



‘伍’ DES加密算法CBC模式怎么解密最好有程序 谢谢~(*^__^*)

原型:
int WINAPI icePub_desEncryptionHex(char *strInputHexstring, char *strOutputHexstring, char *strKeyHexstring)
输入:strInputHexstring 待加密16进制数据串,16字节长度
strKeyHexstring 单des密钥16进制串,16字节长度
输出:strOutputHexstring 加密后16进制数据串,16字节长度

原型:
int WINAPI icePub_desDecryptionHex(char *strInputHexstring, char *strOutputHexstring, char *strKeyHexstring)
输入:strInputHexstring 待解密16进制数据串,16字节长度
strKeyHexstring 单des密钥16进制串,16字节长度
输出:strOutputHexstring 解密后16进制数据串,16字节长度

‘陆’ AES共有ECB,CBC,CFB,OFB,CTR五种模式分别有什么区别

转:
JCE中AES支持五中模式:CBC,CFB,ECB,OFB,PCBC;支持三种填充:NoPadding,PKCS5Padding,ISO10126Padding。不支持SSL3Padding。不支持“NONE”模式。

其中AES/ECB/NoPadding和我现在使用的AESUtil得出的结果相同(在16的整数倍情况下)。

不带模式和填充来获取AES算法的时候,其默认使用ECB/PKCS5Padding。

算法/模式/填充
16字节加密后数据长度 不满16字节加密后长度
AES/CBC/NoPadding
16
不支持
AES/CBC/PKCS5Padding
32
16
AES/CBC/ISO10126Padding
32
16
AES/CFB/NoPadding
16
原始数据长度
AES/CFB/PKCS5Padding
32
16
AES/CFB/ISO10126Padding
32
16
AES/ECB/NoPadding
16
不支持
AES/ECB/PKCS5Padding
32
16
AES/ECB/ISO10126Padding
32
16
AES/OFB/NoPadding
16
原始数据长度
AES/OFB/PKCS5Padding
32
16
AES/OFB/ISO10126Padding
32
16
AES/PCBC/NoPadding
16
不支持
AES/PCBC/PKCS5Padding
32
16
AES/PCBC/ISO10126Padding
32
16

可以看到,在原始数据长度为16的整数倍时,假如原始数据长度等于16*n,则使用NoPadding时加密后数据长度等于16*n,其它情况下加密数据长度等于16*(n+1)。在不足16的整数倍的情况下,假如原始数据长度等于16*n+m[其中m小于16],除了NoPadding填充之外的任何方式,加密数据长度都等于16*(n+1);NoPadding填充情况下,CBC、ECB和PCBC三种模式是不支持的,CFB、OFB两种模式下则加密数据长度等于原始数据长度。

‘柒’ CBC加密Padding的字符串在解密时怎么清除最方便

这一串是base64加密过的内容,解出来是: 这又是一串MD5密文,不可以解。在线查的MD5库里目前也没记录此值,只能慢慢破了。

‘捌’ 加密算法 AES_256_CBC 安全性如何

举个例子:在一万亿台,每秒可以尝试十亿个密钥的计算机上,要超过二十亿年才能破解出一个AES-128密钥。
128位的都如此了,256的可想而知。
除非密钥长度非常短,否则暴力破解不存在可行性。

阅读全文

与cbc加密相关的资料

热点内容
工作三年的大专程序员 浏览:728
java毕业设计文献 浏览:143
筹码集中度指标源码 浏览:482
listsortjava 浏览:186
plc闪光电路编程实例 浏览:299
socket编程试题 浏览:206
华为的服务器怎么设置从光驱启动 浏览:871
程序员真的累吗 浏览:328
学信网app为什么刷脸不了 浏览:874
天蝎vs程序员 浏览:996
单片机下载口叫什么 浏览:190
程序员的道 浏览:926
云服务器不实名违法吗 浏览:558
怎样查看文件夹图片是否重复 浏览:995
文件怎么导成pdf文件 浏览:808
打开sql表的命令 浏览:103
安卓手机如何面部支付 浏览:38
天元数学app为什么登录不上去 浏览:825
明日之后为什么有些服务器是四个字 浏览:104
安卓系统l1是什么意思 浏览:26