欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1417|回復: 0
打印 上一主題 下一主題
收起左側

RSA算法明文長度介紹

 關閉 [復制鏈接]
跳轉到指定樓層
樓主
ID:349277 發表于 2021-11-17 11:09 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
RSA算法一次能加密的明文長度與密鑰長度成正比,如RSA 1024實際可加密的明文長度最大是1024bits。如果小于這個長度怎么辦?就需要進行數據補齊(padding),因為如果沒有padding,用戶則無法確分解密后內容的真實長度。字符串之類的內容問題還不大,以0作為結束符,但對二進制數據就很難理解,因為不確定后面的0是內容還是內容結束符。
只要用到padding,那么就要占用實際的明文長度。于是才有117字節的說法,即下面這種常見的說法:len_in_byte(raw_data) = len_in_bit(key)/8 -11,如1024bit的密鑰,一次能加密的內容長度為 1024/8 -11 = 117 byte。
我們一般使用的padding標準有NoPPadding、OAEPPadding、PKCS1Padding等,其中PKCS#1建議的padding就占用了11個字節。對于RSA加密來講,padding也是參與加密的,所以實際的明文只有117字節了。
關于PKCS#1 padding規范可參考:RFC2313 chapter 8.1,我們在把明文送給RSA加密器前,要確認這個值是不是大于位長,也就是如果接近位長,那么需要先padding再分段加密。除非我們是“定長定量自己可控可理解”的加密不需要padding。
各種 padding 對輸入數據長度的要求:
私鑰加密:  
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
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表