您现在的位置: 比特财富网 >> 区块链 >  >> 區塊鏈百科
密碼學教程:DES加密常用的概念


加密模式
ECB模式 全稱Electronic Codebook模式,譯為電子密碼本模式
CBC模式 全稱Cipher Block Chaining模式,譯為密文分組鏈接模式
CFB模式 全稱Cipher FeedBack模式,譯為密文反饋模式
OFB模式 全稱Output Feedback模式,譯為輸出反饋模式。www.emoneybtc.com
CTR模式 全稱Counter模式,譯為計數器模式。
初始向量
當加密第一個明文分組時,由於不存在 “前一個密文分組”,因此需要事先准備一個長度為一個分組的比特序列來代替 “前一個密文分組”,這個比特序列稱為初始化向量(InitializationVector),通常縮寫為 IV。
填充方式
當明文長度不為分組長度的整數倍時,需要在最後一個分組中填充一些數據使其湊滿一個分組長度。
NoPadding
API或算法本身不對數據進行處理,加密數據由加密雙方約定填補算法。例如若對字符串數據進行加解密,可以補充\0或者空格,然後trim
PKCS5Padding
加密前:數據字節長度對8取余,余數為m,若m>0,則補足8-m個字節,字節數值為8-m,即差幾個字節就補幾個字節,字節數值即為補充的字節數,若為0則補充8個字節的8
解密後:取最後一個字節,值為m,則從數據尾部刪除m個字節,剩余數據即為加密前的原文。
加密字符串為為AAA,則補位為AAA55555;加密字符串為BBBBBB,則補位為BBBBBB22;加密字符串為CCCCCCCC,則補位為CCCCCCCC88888888。
PKCS7Padding
PKCS7Padding 的填充方式和PKCS5Padding 填充方式一樣。只是加密塊的字節數不同。PKCS5Padding明確定義了加密塊是8字節,PKCS7Padding加密快可以是1-255之間。
  風險提示:比特財富網的各種信息資料僅供參考,不構成任何投資建議,不對任何交易提供任何擔保,亦不構成任何邀約,不作為任何法律文件,投資人據此進行投資交易而產生的後果請自行承擔,本網站不承擔任何責任,理財有風險,投資需謹慎。
比特財富網 版權所有 © www.emoneybtc.com