700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > aes算法cbc模式c语言 AES算法及它的CBC加密模式

aes算法cbc模式c语言 AES算法及它的CBC加密模式

时间:2019-02-26 12:14:45

相关推荐

aes算法cbc模式c语言 AES算法及它的CBC加密模式

AES四種加密模式的區別:

ECB(Electronic Code Book電子密碼本)模式

ECB模式是最早采用和最簡單的模式,它將加密的數據分成若干組,每組的大小跟加密密鑰長度相同,然后每組都用相同的密鑰進行加密。

優點: 1.簡單; 2.有利於並行計算; 3.誤差不會被擴散;

缺點: 1.不能隱藏明文的模式; 2.可能對明文進行主動攻擊;因此,此模式適於加密小消息。

CBC(Cipher Block Chaining,加密塊鏈)模式

優點: 不容易主動攻擊,安全性好於ECB,適合傳輸長度長的報文,是SSL、IPSec的標准。

缺點: 1.不利於並行計算; 2.誤差傳遞; 3.需要初始化向量IV

CFB(Cipher FeedBack Mode,加密反饋)模式

優點: 1.隱藏了明文模式; 2.分組密碼轉化為流模式; 3.可以及時加密傳送小於分組的數據;

缺點: 1.不利於並行計算; 2.誤差傳送:一個明文單元損壞影響多個單元; 3.唯一的IV;

OFB(Output FeedBack,輸出反饋)模式

優點: 1.隱藏了明文模式; 2.分組密碼轉化為流模式; 3.可以及時加密傳送小於分組的數據;

缺點: 1.不利於並行計算; 2.對明文的主動攻擊是可能的; 3.誤差傳送:一個明文單元損壞影響多個單元;

2.AES算法

AES使用采用CBC算法模式,PKCS5/PKCS7填充模式,向量和密鑰相同。

明文hello,world!

密鑰 chinashanghaijky

密文

byte(-128~127) 35,118,54,20,-110,33,-7,92,121,-103,21,52,-119,96,-120,-30

byte(0~256)35,118,54,20,146,33,149,92,121,153,21,52,137,96,126,226

十六進制237636149221f95c79991534896088e2

備注:對於byte類型,由於不同言語對應的值范圍不同,如C、C++、java是-128~127,C#是0~256,因此對應范圍不同的值在不同語言中顯示值會有不同,但對結果沒有影響。

采用“在線AES加解密”對上述加密過程進行驗證,驗證結果如下圖所示:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。