密碼學體系目前主要分為兩大主要研究領域:對稱密碼學和非對稱密碼學。 對稱密碼學通常是對稱加密的同義詞,非對稱密碼學包括兩個主要用例:非對稱加密和數字簽名。
因此,我們可以將這些概念分組如下:
本文將重點介紹對稱和非對稱加密算法。
對稱加密vs非對稱加密
加密算法通常分為兩類,稱為對稱和非對稱加密。 這兩種加密算法之間的根本區別在於對稱加密算法使用單個密鑰,而非對稱加密使用兩個不同但相關聯的密鑰。 這種區別的描述,雖然非常簡單,但卻明確解釋了兩種加密技術之間的功能和使用方式上的差異。 .
理解加密密鑰
例如,如果Alice向Bob發送使用對稱算法加密過的消息,則她需要與Bob共享她用於加密的加密密鑰,以便他可以解密該消息。 這意味著如果惡意行為者攔截了密鑰,他們就能夠輕鬆訪問加密過的信息。
但是,如果Alice使用非對稱加密算法,她會使用Bob的公鑰對消息進行加密,Bob可以使用其私鑰對消息進行解密。 因此,非對稱加密提供了更高級別的安全性,因為即使有人攔截了他們的消息並獲得了Bob的公鑰,他們也無法解密該消息。
密鑰長度
對稱和非對稱加密之間的另一個功能差異與密鑰的長度有關,密鑰的長度以比特為單位,並且與每個加密算法提供的安全級別直接相關。
在對稱加密中,密鑰是隨機選擇的,其長度通常設置為128或256位,具體長度取決於所需的安全級別。 然而,在非對稱加密中,公鑰和私鑰之間在數學上相關聯,這意味著兩者之間存在算術聯繫。 攻擊者可能利用該模式破解密文,因此非對稱密鑰需要更長的密鑰長度,才能提供相同級別的安全性。 密鑰長度的差異是如此明顯,以至於128位的對稱密鑰和2,048位非對稱密鑰才能提供大致相同的安全級別。
優缺點比較
相反,非對稱加密使用公鑰進行加密,私鑰進行解密,來解決密鑰分發的問題。 然而,需要權衡的是,與對稱加密相比,非對稱加密系統運行得非常緩慢,並且由於它們的密鑰長度非常長,因此需要更多的計算資源。
應用案例
對稱加密
鑑於其具有更快的運算速度,對稱加密在現代計算機系統中被廣泛用於保護信息。 例如,美國政府使用高級加密標準(AES)來加密和分類和感信息。 AES取代了之前的數據加密標準(DES),後者是在20世紀70年代開發的,一直作為對稱加密的標準。
非對稱加密
非對稱加密通常用於大量用戶需要同時加密和解密消息或數據的系統中,尤其是在運算速度和計算資源充足的情況下。 該系統的一個常用案例就是加密電子郵件,其中公鑰可以用於加密消息,私鑰可以用於解密。
混合加密體系
在許多應用中,對稱和非對稱加密會一起使用。 這種混合系統的典型案例是安全套接字層(SSL)和傳輸層安全(TLS)加密協議,該協議被用於在因特網內提供安全通信。 SSL協議現在被認為是不安全的,應該停止使用。 相比之下,TLS協議目前被認為是安全的,並且已被主流的Web瀏覽器所廣泛使用。
加密貨幣使用密碼學嗎?
許多加密貨幣中使用的加密技術向終端用戶提供了更高級別安全性。 例如,當用戶為其加密錢包設置密碼時,這時就會用到加密算法,通過密碼學使用於訪問軟件的文件被加密。
因此,並非所有數字簽名系統都使用加密技術,即使它們用到了公鑰和私鑰。 實際上,可以僅對消息進行數字簽名而不進行加密。 RSA是用於對加密消息進行簽名的示例算法,但比特幣使用的數字簽名算法(名為ECDSA)根本沒有用到加密功能。
總結思想
在現如今的數字化時代中,對稱和非對稱加密在保護敏感信息和網絡通信中扮演著重要角色。 雖然兩者都十分有用,但它們也各具優缺點,因此適用於不同的應用場景。 隨著密碼學的不斷發展,利用密碼學能夠更好的抵禦各類全新和復雜的威脅,對稱和非對稱加密也與計算機安全緊密相關。