對稱演算法的優缺點
演算法公開、計算量小、加密速度快、加密效率高。
對稱加密演算法的優點在於加解密的高速度和使用長密鑰時的難破解性。假設兩個用戶需要使用對稱加密方法加密然後交換數據,則用戶最少需要2個密鑰並交換使用,如果企業內用戶有n個,則整個企業共需要n×(n-1) 個密鑰,密鑰的生成和分發將成為企業信息部門的惡夢。
對稱加密演算法的安全性取決於加密密鑰的保存情況,但要求企業中每一個持有密鑰的人都保守秘密。
(1)對稱演算法的優缺點擴展閱讀:
對稱加密演算法缺點:
交易雙方都使用同樣鑰匙,安全性得不到保證。此外,每對用戶每次使用對稱加密演算法時,都需要使用其他人不知道的唯一鑰匙,這會使得發收信雙方所擁有的鑰匙數量呈幾何級數增長,密鑰管理成為用戶的負擔。
對稱加密演算法在分布式網路系統上使用較為困難,主要是因為密鑰管理困難,使用成本較高。而與公開密鑰加密演算法比起來,對稱加密演算法能夠提供加密和認證卻缺乏了簽名功能,使得使用范圍有所縮小。
B. 試比較對稱加密演算法與非對稱加密演算法在應用中的優缺點傳統密碼體制與公鑰密碼體制的優缺點
1、對稱加密演算法
優點
加解密的高速度和使用長密鑰時的難破解性。
缺點
對稱加密演算法的安全性取決於加密密鑰的保存情況,但要求企業中每一個持有密鑰的人都保守秘密是不可能的,他們通常會有意無意的把密鑰泄漏出去。如果一個用戶使用的密鑰被入侵者所獲得,入侵者便可以讀取該用戶密鑰加密的所有文檔,如果整個企業共用一個加密密鑰,那整個企業文檔的保密性便無從談起。
2、非對稱加密演算法
優點
非對稱密鑰體制有兩種密鑰,其中一個是公開的,這樣就可以不需要像對稱密碼那樣傳輸對方的密鑰了。這樣安全性就大了很多。
缺點
演算法強度復雜、安全性依賴於演算法與密鑰但是由於其演算法復雜,而使得加密解密速度沒有對稱加密解密的速度快。
3、傳統密碼體制
優點
由於DES加密速度快,適合加密較長的報文。
缺點
通用密鑰密碼體制的加密密鑰和解密密鑰是通用的,即發送方和接收方使用同樣密鑰的密碼體制。
4、公鑰密碼體制
優點
RSA演算法的加密密鑰和加密演算法分開,使得密鑰分配更為方便。
RSA演算法解決了大量網路用戶密鑰管理的難題。
缺點
RSA的密鑰很長,加密速度慢。
(2)對稱演算法的優缺點擴展閱讀
W.Diffie和M.Hellman 1976年在IEEE Trans.on Information刊物上發表了「 New Direction in Cryptography」文章,提出了「非對稱密碼體制即公開密鑰密碼體制」的概念,開創了密碼學研究的新方向。
在通用密碼體制中,得到廣泛應用的典型演算法是DES演算法。DES是由「轉置」方式和「換字」方式合成的通用密鑰演算法,先將明文(或密文)按64位分組,再逐組將64位的明文(或密文),用56位(另有8位奇偶校驗位,共64位)的密鑰,經過各種復雜的計算和變換,生成64位的密文(或明文),該演算法屬於分組密碼演算法。
C. 對稱加密和非對稱加密的 優缺點
密碼學中兩種常見的密碼演算法為對稱密碼演算法(單鑰密碼演算法)和非對稱密碼演算法(公鑰密碼演算法)。
對稱密碼演算法有時又叫傳統密碼演算法,就是加密密鑰能夠從解密密鑰中推算出來,反過來也成立。在大多數對稱演算法中,加密解密密鑰是相同的。這些演算法也叫秘密密鑰演算法或單密鑰演算法,它要求發送者和接收者在安全通信之前,商定一個密鑰。對稱演算法的安全性依賴於密鑰,泄漏密鑰就意味著任何人都能對消息進行加密解密。只要通信需要保密,密鑰就必須保密。對稱演算法的加密和解密表示為:
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、加解密時採用的密鑰的差異:從上述對對稱密鑰演算法和非對稱密鑰演算法的描述中可看出,對稱密鑰加解密使用的同一個密鑰,或者能從加密密鑰很容易推出解密密鑰;②對稱密鑰演算法具有加密處理簡單,加解密速度快,密鑰較短,發展歷史悠久等特點,非對稱密鑰演算法具有加解密速度慢的特點,密鑰尺寸大,發展歷史較短等特點。
D. 對稱加密演算法的特點
對稱加密演算法的特點是演算法公開、計算量小、加密速度快、加密效率高。
不足之處是,交易雙方都使用同樣鑰匙,安全性得不到保證。此外,每對用戶每次使用對稱加密演算法時,都需要使用其他人不知道的惟一鑰匙,這會使得發收信雙方所擁有的鑰匙數量呈幾何級數增長,密鑰管理成為用戶的負擔。對稱加密演算法在分布式網路系統上使用較為困難,主要是因為密鑰管理困難,使用成本較高。而與公開密鑰加密演算法比起來,對稱加密演算法能夠提供加密和認證卻缺乏了簽名功能,使得使用范圍有所縮小。在計算機專網系統中廣泛使用的對稱加密演算法有DES和IDEA等。美國國家標准局倡導的AES即將作為新標准取代DES。
E. 對稱演算法的缺陷
盡管對稱密碼術有一些很好的特性,但它也存在著明顯的缺陷,包括:
l)進行安全通信前需要以安全方式進行密鑰交換。這一步驟,在某種情況下是可行的,但在某些情況下會非常困難,甚至無法實現。
2)規模復雜。舉例來說,A與B兩人之間的密鑰必須不同於A和C兩人之間的密鑰,否則給B的消息的安全性就會受到威脅。在有1000個用戶的團體中,A需要保持至少999個密鑰(更確切的說是1000個,如果她需要留一個密鑰給他自己加密數據)。對於該團體中的其它用戶,此種倩況同樣存在。這樣,這個團體一共需要將近50萬個不同的密鑰!推而廣之,n個用戶的團體需要N2/2個不同的密鑰。
通過應用基於對稱密碼的中心服務結構,上述問題有所緩解。在這個體系中,團體中的任何一個用戶與中心伺服器(通常稱作密鑰分配中心)共享一個密鑰。因而,需要存儲的密鑰數量基本上和團體的人數差不多,而且中心伺服器也可以為以前互相不認識的用戶充當「介紹人」。但是,這個與安全密切相關的中心伺服器必須隨時都是在線的,因為只要伺服器一掉線,用戶間的通信將不可能進行。這就意味著中心伺服器是整個通信成敗的關鍵和受攻擊的焦點,也意味著它還是一個龐大組織通信服務的「瓶頸」