回覆列表
  • 1 # toogr10720

    密碼學中兩種常見的密碼演算法為對稱密碼演算法(單鑰密碼演算法)和非對稱密碼演算法(公鑰密碼演算法)。 對稱密碼演算法有時又叫傳統密碼演算法,就是加密金鑰能夠從解密金鑰中推算出來,反過來也成立。在大多數對稱演算法中,加密解密金鑰是相同的。這些演算法也叫秘密金鑰演算法或單金鑰演算法,它要求傳送者和接收者在安全通訊之前,商定一個金鑰。對稱演算法的安全性依賴於金鑰,洩漏金鑰就意味著任何人都能對訊息進行加密解密。只要通訊需要保密,金鑰就必須保密。對稱演算法的加密和解密表示為: 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、加解密時採用的金鑰的差異:從上述對對稱金鑰演算法和非對稱金鑰演算法的描述中可看出,對稱金鑰加解密使用的同一個金鑰,或者能從加密金鑰很容易推出解密金鑰;②對稱金鑰演算法具有加密處理簡單,加解密速度快,金鑰較短,發展歷史悠久等特點,非對稱金鑰演算法具有加解密速度慢的特點,金鑰尺寸大,發展歷史較短等特點。

  • 中秋節和大豐收的關聯?
  • 12星座女當校花的指數?