對稱加密、非對稱加密、RSA(總結)

焦陽IvanJiao發表於2018-03-28

概念百度上有很多,簡單說一下吧

對稱加密:指的就是加、解密使用的同是一串金鑰,所以被稱做對稱加密。對稱加密只有一個金鑰作為私鑰。
常見的對稱加密演算法:DES,AES等。

非對稱加密:指的是加、解密使用不同的金鑰,一把作為公開的公鑰,另一把作為私鑰。公鑰加密的資訊,只有私鑰才能解密。反之,私鑰加密的資訊,只有公鑰才能解密。 

舉個例子,你向某公司伺服器請求公鑰,伺服器將公鑰發給你,你使用公鑰對訊息加密,那麼只有私鑰的持有人才能對你的訊息解密。與對稱加密不同的是,公司伺服器不需要將私鑰通過網路傳送出去,因此安全性大大提高。
最常用的非對稱加密演算法:RSA


對稱加密優缺點:

對稱加密相比非對稱加密演算法來說,加解密的效率要高得多、加密速度快。但是缺陷在於對於金鑰的管理和分發上比較困難,不是非常安全,金鑰管理負擔很重。


非對稱加密優缺點:

安全性更高,公鑰是公開的,金鑰是自己儲存的,不需要將私鑰給別人。缺點:加密和解密花費時間長、速度慢,只適合對少量資料進行加密。


總結一下吧:

安全肯定是非對稱加密安全,但是效率比較慢,對稱加密效率高,但是不安全。

嚴謹一點的做法是混合起來使用,將對稱加密的金鑰使用非對稱加密的公鑰進行加密,然後傳送出去,接收方使用私鑰進行解密得到對稱加密的金鑰,然後雙方可以使用對稱加密來進行溝通。

實際工作中直接使用非對稱加、解密其實也可以,因為我們平時一般請求的報文不會很大,加解密起來速度在可接受範圍內,或者可以對敏感欄位,比如密碼、手機號、身份證號等進行分段加密,效率還可以。


相關文章