RSA加解密問題

來源:互聯網
上載者:User

在做項目中為了安全考慮會對資料進行加密,這裡使用了RSA進行加密。
總結如下:
特點:公開金鑰加密私密金鑰解密;私密金鑰簽名公開金鑰認證;公開金鑰就是通過私密金鑰產生的。
優點:非對稱式加密,安全性高;
缺點:加解密效率低,耗費效能因此不適合對大量資料進行加密。
問題:
一:長度問題
rsa根據私密金鑰長度的不同對加密解密內容的限制也不一樣,一般來說加密的內容長隊=私密金鑰長隊/8,但是這裡還有一個問題那就是對齊也佔用一定的空間,一般的對齊都是佔用11個位元組,因此最後的明文長度=1024(假設使用1024的密鑰長度)/8-11 =117,因此密文長度不能超過117,解密的長度為128.
那麼如果明文的長度超過限定了怎麼辦呢。通常我們會採用分段加解密的方式來解決這個問題。
這裡可以使用這個庫https://github.com/Blankj/AndroidUtilCode
二:解密注意事項:
想要正確的解密出內容需要注意幾點:
1:密鑰是否正確,加密和解密的密鑰必須是一對的。
2:如果採用分段加密,也一定要分段解密。
3:密鑰的編碼格式,密文的編碼格式,對齊是什麼。
如果密鑰是進過base64編碼的 那麼在解密前也要使用同樣的方式進行base64解碼。
只有加密和解密完全對稱才能正確的擷取資料。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.