a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

博客專欄

EEPW首頁 > 博客 > RSA算法明文長度介紹

RSA算法明文長度介紹

發(fā)布人:hanini 時間:2021-11-18 來源:工程師 發(fā)布文章


RSA算法一次能加密的文長度與密鑰長度成正比,如RSA 1024實際可加密的明文長度最大是1024bits如果小于這個長度怎么辦?就需要進行數(shù)據(jù)補齊(padding,因為如果沒有padding,用戶無法確分解密后內(nèi)容的真實長度字符串之類的內(nèi)容問題還不大,以0作為結(jié)束符,但對二進制數(shù)據(jù)就很難理解,因為不確定后面的0是內(nèi)容還是內(nèi)容結(jié)束符。
只要用到padding,那么就要占用實際的明文長度于是才有117字節(jié)的說法即下面這種常見的說法:len_in_byte(raw_data) = len_in_bit(key)/8 -11,如1024bit的密鑰,一次能加密的內(nèi)容長度為 1024/8 -11 = 117 byte。

我們一般使用的padding標(biāo)準(zhǔn)有NoPPadding、OAEPPadding、PKCS1Padding等,其中PKCS#1建議的padding就占用了11個字節(jié)。對于RSA加密來講,padding也是參與加密的,所以實際的明文只有117字節(jié)了。
關(guān)于PKCS#1 padding規(guī)范可參考:RFC2313 chapter 8.1,我們在把明文送給RSA加密器前,要確認這個值是不是大于位長,也就是如果接近位長,那么需要先padding再分段加密。除非我們是“定長定量自己可控可理解”的加密不需要padding。

各種 padding 對輸入數(shù)據(jù)長度的要求:  

私鑰加密:  

RSA_PKCS1_PADDING         RSA_size-11  

RSA_NO_PADDING              RSA_size-0  

RSA_X931_PADDING            RSA_size-2  

公鑰加密  

RSA_PKCS1_PADDING        RSA_size-11  

RSA_SSLV23_PADDING        RSA_size-11  

RSA_X931_PADDING           RSA_size-2  

RSA_NO_PADDING               RSA_size-0  

RSA_PKCS1_OAEP_PADDING      RSA_size-2 * SHA_DIGEST_LENGTH-2 

 


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: 密鑰 加密芯片 加密算法

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉