非對稱加密的優缺點
1. 密碼學中的對稱加密和非對稱加密
一、對稱加密
概念:加密和解密用同一對密鑰的加密技術,叫對稱加密。
加密方式:DES、3DES、AES,安全性依次從低到高。
示意圖:
二、非對稱加密,也稱公開密鑰
概念:加密和解密用 不同的密鑰 的加密技術,叫非對稱加密。
典型的加密方式:RSA演算法
加密步驟:
三、兩種方式各自的缺點:
四、混合密碼系統
概念:將對稱密碼和公鑰密碼的優勢相結合的方法
優點:解決了公鑰密碼速度慢的問題;通過公鑰密碼解決了對稱密碼的密鑰配送問題。
應用:網路上的密碼通信所用的SSL/TSL都運用了混合密碼系統。
會話密鑰的生成:
加密步驟:
最終,發出去的消息包括兩部分:
解密步驟:
示意圖:
1. 為什麼加密消息主體要用對稱加密?
因為消息主體信息量大,發送頻繁,而對稱加密速度快,效率高。
2. 為什麼加密會話密鑰要用非對稱加密?
因為會話密鑰一般比較短,而且通常只需要發送一次即可,所以對速度要求不高,但對安全性要求很高,非對稱加密滿足這個要求。
2. 對稱加密和非對稱加密的 優缺點
密碼學中兩種常見的密碼演算法為對稱密碼演算法(單鑰密碼演算法)和非對稱密碼演算法(公鑰密碼演算法)。
對稱密碼演算法有時又叫傳統密碼演算法,就是加密密鑰能夠從解密密鑰中推算出來,反過來也成立。在大多數對稱演算法中,加密解密密鑰是相同的。這些演算法也叫秘密密鑰演算法或單密鑰演算法,它要求發送者和接收者在安全通信之前,商定一個密鑰。對稱演算法的安全性依賴於密鑰,泄漏密鑰就意味著任何人都能對消息進行加密解密。只要通信需要保密,密鑰就必須保密。對稱演算法的加密和解密表示為:
Ek(M)=C
Dk(C)=M
對稱演算法可分為兩類。一次只對明文中的單個位(有時對位元組)運算的演算法稱為序列演算法或序列密碼。另一類演算法是對明文的一組位進行運算,這些位組稱為分組,相應的演算法稱為分組演算法或分組密碼。現代計算機密碼演算法的典型分組長度為64位――這個長度大到足以防止分析破譯,但又小到足以方便作用。
這種演算法具有如下的特性:
Dk(Ek(M))=M
常用的採用對稱密碼術的加密方案有5個組成部分(如圖所示)
l)明文:原始信息。
2)加密演算法:以密鑰為參數,對明文進行多種置換和轉換的規則和步驟,變換結果為密文。
3)密鑰:加密與解密演算法的參數,直接影響對明文進行變換的結果。
4)密文:對明文進行變換的結果。
5)解密演算法:加密演算法的逆變換,以密文為輸入、密鑰為參數,變換結果為明文。
對稱密碼術的優點在於效率高(加/解密速度能達到數十兆/秒或更多),演算法簡單,系統開銷小,適合加密大量數據。
盡管對稱密碼術有一些很好的特性,但它也存在著明顯的缺陷,包括:
l)進行安全通信前需要以安全方式進行密鑰交換。這一步驟,在某種情況下是可行的,但在某些情況下會非常困難,甚至無法實現。
2)規模復雜。舉例來說,A與B兩人之間的密鑰必須不同於A和C兩人之間的密鑰,否則給B的消息的安全性就會受到威脅。在有1000個用戶的團體中,A需要保持至少999個密鑰(更確切的說是1000個,如果她需要留一個密鑰給他自己加密數據)。對於該團體中的其它用戶,此種倩況同樣存在。這樣,這個團體一共需要將近50萬個不同的密鑰!推而廣之,n個用戶的團體需要N2/2個不同的密鑰。
通過應用基於對稱密碼的中心服務結構,上述問題有所緩解。在這個體系中,團體中的任何一個用戶與中心伺服器(通常稱作密鑰分配中心)共享一個密鑰。因而,需要存儲的密鑰數量基本上和團體的人數差不多,而且中心伺服器也可以為以前互相不認識的用戶充當「介紹人」。但是,這個與安全密切相關的中心伺服器必須隨時都是在線的,因為只要伺服器一掉線,用戶間的通信將不可能進行。這就意味著中心伺服器是整個通信成敗的關鍵和受攻擊的焦點,也意味著它還是一個龐大組織通信服務的「瓶頸」
非對稱密鑰演算法是指一個加密演算法的加密密鑰和解密密鑰是不一樣的,或者說不能由其中一個密鑰推導出另一個密鑰。1、加解密時採用的密鑰的差異:從上述對對稱密鑰演算法和非對稱密鑰演算法的描述中可看出,對稱密鑰加解密使用的同一個密鑰,或者能從加密密鑰很容易推出解密密鑰;②對稱密鑰演算法具有加密處理簡單,加解密速度快,密鑰較短,發展歷史悠久等特點,非對稱密鑰演算法具有加解密速度慢的特點,密鑰尺寸大,發展歷史較短等特點。
3. 試比較對稱加密演算法與非對稱加密演算法在應用中的優缺點傳統密碼體制與公鑰密碼體制的優缺點
1、對稱加密演算法
優點
加解密的高速度和使用長密鑰時的難破解性。
缺點
對稱加密演算法的安全性取決於加密密鑰的保存情況,但要求企業中每一個持有密鑰的人都保守秘密是不可能的,他們通常會有意無意的把密鑰泄漏出去。如果一個用戶使用的密鑰被入侵者所獲得,入侵者便可以讀取該用戶密鑰加密的所有文檔,如果整個企業共用一個加密密鑰,那整個企業文檔的保密性便無從談起。
2、非對稱加密演算法
優點
非對稱密鑰體制有兩種密鑰,其中一個是公開的,這樣就可以不需要像對稱密碼那樣傳輸對方的密鑰了。這樣安全性就大了很多。
缺點
演算法強度復雜、安全性依賴於演算法與密鑰但是由於其演算法復雜,而使得加密解密速度沒有對稱加密解密的速度快。
3、傳統密碼體制
優點
由於DES加密速度快,適合加密較長的報文。
缺點
通用密鑰密碼體制的加密密鑰和解密密鑰是通用的,即發送方和接收方使用同樣密鑰的密碼體制。
4、公鑰密碼體制
優點
RSA演算法的加密密鑰和加密演算法分開,使得密鑰分配更為方便。
RSA演算法解決了大量網路用戶密鑰管理的難題。
缺點
RSA的密鑰很長,加密速度慢。
(3)非對稱加密的優缺點擴展閱讀
W.Diffie和M.Hellman 1976年在IEEE Trans.on Information刊物上發表了「 New Direction in Cryptography」文章,提出了「非對稱密碼體制即公開密鑰密碼體制」的概念,開創了密碼學研究的新方向。
在通用密碼體制中,得到廣泛應用的典型演算法是DES演算法。DES是由「轉置」方式和「換字」方式合成的通用密鑰演算法,先將明文(或密文)按64位分組,再逐組將64位的明文(或密文),用56位(另有8位奇偶校驗位,共64位)的密鑰,經過各種復雜的計算和變換,生成64位的密文(或明文),該演算法屬於分組密碼演算法。
4. 對稱密鑰和非對稱密鑰的優缺點各有哪些
對稱密鑰:
優點:
(1)計算速度較快,效率較高
(2)佔用資源空間較少
缺點:
(1)存在密鑰分發、管理問題
(2)存在源認證(身份認證)問題
非對稱密鑰:
優點:
(1)解決了密鑰分發、管理問題
(2)安全性較對稱密鑰略高
缺點:
(1)存在源認證(身份認證)問題
(2)運行、計算效率較低
(3)佔用運算空間資源較多
PS:古典加密以保護演算法為主,現代加密以保護密鑰為主。
5. 非對稱加密演算法的缺點有哪些
最大的缺點是計算速度的問題,非對稱加密基本都是基於數學難題,計算比較麻煩,
非對稱加密的缺點是加密和解密花費時間長、速度慢,在某些極端情況下,甚至能比對稱加密慢上1000倍。以此非對稱加密演算法只適合對少量數據進行加密。
6. 對稱加密與非對稱加密的技術有什麼區別
對稱加密與非對稱加密
對稱加密,或專用密鑰(也稱做常規加密)由通信雙方共享一個秘密密鑰。
發送方在進行數學運算時使用密鑰將明文加密成密文。接受方使用相同的密
鑰將密文還原成明文。RSA
RC4演算法,數據加密標准(DES),國際數據加密
演算法(IDEA)以及Skipjack加密技術都屬於對稱加密方式。
非對稱加密,當發送信息時,
發送方使用接收方的公鑰對數據加密,而接收方則使用自己的私鑰解密,
這樣,信息就可以安全無誤地到達目的地了,即使被第三方截獲,由於沒有相應的私鑰,
也無法進行解密。通過數字的手段保證加密過程是一個不可逆過程,即只有用私有密鑰才能解密。
公用密鑰加密技術允許對信息進行數字簽名。數字簽名使用發送發送一方的
專用密鑰對所發送信息的某一部分進行加密。接受方收到該信息後,使用發
送方的公用密鑰解密數字簽名,驗證發送方身份。在對稱加密(或叫單密鑰
加密)中,只有一個密鑰用來加密和解密信息。盡管單密鑰加密是一個簡單
的過程,但是雙方都必須完全的相信對方,並都持有這個密鑰的備份。但要
達到這種信任的級別並不是想像中的那麼簡單。當雙方試圖建立信任關系時
可能一個安全破壞已經發生了。首先密鑰的傳輸就是一個重要問題,如果它
被截取,那麼這個密鑰以及相關的重要信息就沒有什麼安全可言了。非對稱
加密在加密的過程中使用一對密鑰,而不像對稱加密只使用一個單獨的密鑰
。一對密鑰中一個用於加密,另一個用來解密。重要的概念是在這對密鑰中一個密鑰用來公用
,另一個作為私有的密鑰;用來向外公布的叫做公鑰,另一半需要安全保護
的是私鑰。非對稱加密的一個缺點就是加密的速度非常慢,因為需要強烈的
數學運算程序。如果一個用戶需要使用非對稱加密,那麼即使比較少量的信
息可以也要花上幾個小時的時間。
非對稱加密的另一個名稱叫公鑰加密
。盡管私鑰和公鑰都有與數學相關的,但從公鑰中確定私鑰的值是非常困難
的並且也是非常耗時的。在互聯網上通信,非對稱加密的密鑰管理是容易的
因為公鑰可以任易的傳播,私鑰必須在用戶手中小心保護。