對稱加密和非對稱加密

2021-08-15 18:11:08 字數 1663 閱讀 8904

對稱加密是最快速、最簡單的一種加密方式,加密(encryption)與解密(decryption)用的是同樣的金鑰(secret key),這種方法在密碼學中叫做對稱加密演算法。對稱加密有很多種演算法,由於它效率很高,所以被廣泛使用在很多加密協議的核心當中。

對稱加密通常使用的是相對較小的金鑰,一般小於256 bit。因為金鑰越大,加密越強,但加密與解密的過程越慢。如果你只用1 bit來做這個金鑰,那黑客們可以先試著用0來解密,不行的話就再用1解;但如果你的金鑰有1 mb大,黑客們可能永遠也無法破解,但加密和解密的過程要花費很長的時間。金鑰的大小既要照顧到安全性,也要照顧到效率,是乙個trade-off。

對稱加密的一大缺點是金鑰的管理與分配,換句話說,如何把金鑰傳送到需要解密你的訊息的人的手裡是乙個問題。在傳送金鑰的過程中,金鑰有很大的風險會被黑客們攔截。現實中通常的做法是將對稱加密的金鑰進行非對稱加密,然後傳送給需要它的人。

非對稱加密演算法是一種金鑰的保密方法。

非對稱加密演算法需要兩個金鑰:公開金鑰(publickey)和私有金鑰(privatekey)。公開金鑰與私有金鑰是一對,如果用公開金鑰對資料進行加密,只有用對應的私有金鑰才能解密;如果用私有金鑰對資料進行加密,那麼只有用對應的公開金鑰才能解密。因為加密和解密使用的是兩個不同的金鑰,所以這種演算法叫作非對稱加密演算法。 非對稱加密演算法實現機密資訊交換的基本過程是:甲方生成一對金鑰並將其中的一把作為公用金鑰向其它方公開;得到該公用金鑰的乙方使用該金鑰對機密資訊進行加密後再傳送給甲方;甲方再用自己儲存的另一把專用金鑰對加密後的資訊進行解密。

另一方面,甲方可以使用乙方的公鑰對機密資訊進行簽名後再傳送給乙方;乙方再用自己的私匙對資料進行驗籤。

甲方只能用其專用金鑰解密由其公用金鑰加密後的任何資訊。 非對稱加密演算法的保密性比較好,它消除了終端使用者交換金鑰的需要。

非對稱密碼體制的特點:演算法強度複雜、安全性依賴於演算法與金鑰但是由於其演算法複雜,而使得加密解密速度沒有對稱加密解密的速度快。對稱密碼體制中只有一種金鑰,並且是非公開的,如果要解密就得讓對方知道金鑰。所以保證其安全性就是保證金鑰的安全,而非對稱金鑰體制有兩種金鑰,其中乙個是公開的,這樣就可以不需要像對稱密碼那樣傳輸對方的金鑰了。這樣安全性就大了很多。

雖然非對稱加密很安全,但是和對稱加密比起來,它非常的慢,所以我們還是要用對稱加密來傳送訊息,但對稱加密所使用的金鑰我們可以通過非對稱加密的方式傳送出去。為了解釋這個過程,請看下面的例子:

(1) alice需要在銀行的**做一筆交易,她的瀏覽器首先生成了乙個隨機數作為對稱金鑰。

(2) alice的瀏覽器向銀行的**請求公鑰。

(3) 銀行將公鑰傳送給alice。

(4) alice的瀏覽器使用銀行的公鑰將自己的對稱金鑰加密。

(5) alice的瀏覽器將加密後的對稱金鑰傳送給銀行。

(6) 銀行使用私鑰解密得到alice瀏覽器的對稱金鑰。

(7) alice與銀行可以使用對稱金鑰來對溝通的內容進行加密與解密了。

(1) 對稱加密加密與解密使用的是同樣的金鑰,所以速度快,但由於需要將金鑰在網路傳輸,所以安全性不高。

(2) 非對稱加密使用了一對金鑰,公鑰與私鑰,所以安全性高,但加密與解密速度慢。

(3) 解決的辦法是將對稱加密的金鑰使用非對稱加密的公鑰進行加密,然後傳送出去,接收方使用私鑰進行解密得到對稱加密的金鑰,然後雙方可以使用對稱加密來進行溝通。

[1]

[2] 非對稱加密演算法/1208652

對稱加密和非對稱加密!

主要是對稱加密和非對稱加密兩種。可供各位參考 using system using system.collections.generic using system.linq using system.text using system.security.cryptography using syst...

對稱加密和非對稱加密!

對稱加密演算法 對稱加密演算法是應用較早的加密演算法,技術成熟。在對稱加密演算法中,資料發信方將明文 原始資料 和加密金鑰一起經過特殊加密演算法處理後,使其變成複雜的加密密文傳送出去。收信方收到密文後,若想解讀原文,則需要使用加密用過的金鑰及相同演算法的逆演算法對密文進行解密,才能使其恢復成可讀明文...

對稱加密和非對稱加密

對稱加密是最快速 最簡單的一種加密方式,加密 encryption 與解密 decryption 用的是同樣的金鑰 secretkey 對稱加密有很多種演算法,由於它效率很高,所以被廣泛使用在很多加密協議的核心當中。非對稱加密為 資料的加密 與解密提供了乙個非常安全的方法,它使用了一對金鑰,公鑰 p...