一張圖瞭解RSA加解密與加驗簽

來源:互聯網
上載者:User

       RSA加密驗簽是對安全性要求比較高的機構間通訊常用的方式,密鑰足夠長的情況下,當前的計算能力還不足以解密(不過量子電腦...未來誰知道呢。)。然而,我發現還是有人對這種過程一知半解。比如你們的加簽演算法用的什麼。回答RSA......比如有些機構會對產生的金鑰組再用Base64進行編碼,這樣使用的時候就需要對應的解碼,這個過程都被封裝在工具類裡面了,所以大家看代碼的時候盡量多進去看看源碼。RSA只是一個加密的演算法,加簽需要先對內容進行HASH然後再加密,比如SHA1WithRSA就是一個常用的RSA加簽演算法。

       網上很多講解RSA的文章,本文就不說了,JDK內建了對應的演算法。

       RSA加簽、加密後的報文為什麼是安全的。

       A機構產生A的金鑰組,把公開金鑰給到B;同樣的,B把自己的公開金鑰給A。這樣A在產生加密報文的時候,會用B的公開金鑰加密明文,然後用A的私密金鑰對明文進行加簽。OK,此時只有B的私密金鑰才能解密報文,而私密金鑰只有B才有,即使報文被截獲,第三方也無法解密。如果A的公開金鑰是公開的(實際上可能也不公開),那麼第三方能解析出報文的HASH結果,也只是Hash結果...無法獲得明文。B接受到請求後,用自己的私密金鑰解密報文,然後對報文進行驗簽,如果不一致,那麼也不會響應請求,這樣的模式,通訊過程的安全性就可以得到保障了。具體過程如下圖所示:


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.