對稱金鑰加密,又稱私鑰加密,即資訊的傳送方和接收方用乙個金鑰去加密和解密資料。它的最大優勢是加/解密速度快,適合於對大資料量進行加密,對稱加密的一大缺點是金鑰的管理與分配,換句話說,如何把金鑰傳送到需要解密你的訊息的人的手裡是乙個問題。在傳送金鑰的過程中,金鑰有很大的風險會被黑客們攔截。現實中通常的做法是將對稱加密的金鑰進行非對稱加密,然後傳送給需要它的人。
對稱加密通常使用的是相對較小的金鑰,一般小於256 bit。因為金鑰越大,加密越強,但加密與解密的過程越慢。如果你只用1 bit來做這個金鑰,那黑客們可以先試著用0來解密,不行的話就再用1解;但如果你的金鑰有1 mb大,黑客們可能永遠也無法破解,但加密和解密的過程要花費很長的時間。金鑰的大小既要照顧到安全性,也要照顧到效率,是乙個trade-off。
非對稱金鑰加密系統,又稱公鑰金鑰加密。非對稱加密為資料的加密與解密提供了乙個非常安全的方法,它使用了一對金鑰,公鑰(public key)和私鑰(private key)。私鑰只能由一方安全保管,不能外洩,而公鑰則可以發給任何請求它的人。非對稱加密使用這對金鑰中的乙個進行加密,而解密則需要另乙個金鑰。比如,你向銀行請求公鑰,銀行將公鑰發給你,你使用公鑰對訊息加密,那麼只有私鑰的持有人--銀行才能對你的訊息解密。與對稱加密不同的是,銀行不需要將私鑰通過網路傳送出去,因此安全性大大提高。 目前最常用的非對稱加密演算法是rsa演算法。公鑰機制靈活,但加密和解密速度卻比對稱金鑰加密慢得多。
雖然非對稱加密很安全,但是和對稱加密比起來,它非常的慢,所以我們還是要用對稱加密來傳送訊息,但對稱加密所使用的金鑰我們可以通過非對稱加密的方式傳送出去。為了解釋這個過程,請看下面的例子:
(1) alice需要在銀行的**做一筆交易,她的瀏覽器首先生成了乙個隨機數作為對稱金鑰。
(2) alice的瀏覽器向銀行的**請求公鑰。
(3) 銀行將公鑰傳送給alice。
(4) alice的瀏覽器使用銀行的公鑰將自己的對稱金鑰加密。
(5) alice的瀏覽器將加密後的對稱金鑰傳送給銀行。
(6) 銀行使用私鑰解密得到alice瀏覽器的對稱金鑰。
(7) alice與銀行可以使用對稱金鑰來對溝通的內容進行加密與解密了。
(1) 對稱加密加密與解密使用的是同樣的金鑰,所以速度快,但由於需要將金鑰在網路傳輸,所以安全性不高。
(2) 非對稱加密使用了一對金鑰,公鑰與私鑰,所以安全性高,但加密與解密速度慢。
(3) 解決的辦法是將對稱加密的金鑰使用非對稱加密的公鑰進行加密,然後傳送出去,接收方使用私鑰進行解密得到對稱加密的金鑰,然後雙方可以使用對稱加密來進行溝通。
對稱與非對稱金鑰加密
1.對稱與非對稱金鑰加密比較 非對稱金鑰加密 用接收方的公鑰進行加密 解決了金鑰協定與金鑰交換問題,但並沒有解決實際安全結構中的所有問題。具體地說,對稱與非對稱金鑰加密還有其他一些差別,各有所長。下表總結一下這些技術的實際用法 特徵對稱金鑰加密 非對稱金鑰加密 加密 解密使用的金鑰 加密 解密使用的...
對稱 非對稱金鑰 加密演算法
由於 摘要 演算法加密的資料僅僅能作為一種身份驗證的憑據使用,如果我們要對整個文件資料進行加密,則不能採用這種 不可逆 的演算法,因此 金鑰 演算法 key encoding 的概念被提出。此類演算法通過乙個被稱為 金鑰 的憑據進行資料加密處理,接收方通過加密時使用的 金鑰 字串進行解密,即雙方持有...
非對稱金鑰加密概述
非對稱金鑰加密又稱為公鑰加密,它使用兩個金鑰,構成一對,乙個用於加密,乙個用於解密,其他金鑰都無法解密這個訊息,包括用於加密的金鑰。這個機制的妙處在於,每個通訊雙方只需要一對金鑰,就可以和多個其他方通訊。一旦去的金鑰對之後,就可以和任何人通訊。這個模式有乙個簡單的數學基礎。如果乙個大數只有兩個素數因...