導航:首頁 > 文檔加密 > 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加密相關的資料

熱點內容
工作三年的大專程序員 瀏覽:726
java畢業設計文獻 瀏覽:140
籌碼集中度指標源碼 瀏覽:479
listsortjava 瀏覽:183
plc閃光電路編程實例 瀏覽:299
socket編程試題 瀏覽:204
華為的伺服器怎麼設置從光碟機啟動 瀏覽:869
程序員真的累嗎 瀏覽:326
學信網app為什麼刷臉不了 瀏覽:873
天蠍vs程序員 瀏覽:994
單片機下載口叫什麼 瀏覽:188
程序員的道 瀏覽:926
雲伺服器不實名違法嗎 瀏覽:558
怎樣查看文件夾圖片是否重復 瀏覽:995
文件怎麼導成pdf文件 瀏覽:808
打開sql表的命令 瀏覽:103
安卓手機如何面部支付 瀏覽:38
天元數學app為什麼登錄不上去 瀏覽:825
明日之後為什麼有些伺服器是四個字 瀏覽:104
安卓系統l1是什麼意思 瀏覽:26