密鑰加密檢視原始碼討論檢視歷史
密鑰加密是發送和接收數據的雙方,使用相同的或對稱的密鑰對明文進行加密解密運算的加密方法。 若加密算法是公開的,那麼真正的秘密就在於密鑰了,密鑰必須是保密的,它通常是一個字符串,並且可以按需頻繁更換。因此,密鑰的長度很重要,因為一旦找到解密密鑰也就破譯了密碼,而密鑰的長度越長,密鑰空間就越大,遍歷密鑰空間所花費的時間就越長,破譯的可能性也就越小。
基本簡介
密鑰加密是為保證在開放式環境中網絡傳輸的安全而提供的加密服務。 [1]
通常大量使用的兩種密鑰加密技術是:私用密鑰(對稱加密)和公共密鑰(非對稱加密)。
傳統加密技術
傳統加密方法可以分為兩種:替代密碼和換位密碼。
替代密碼
用一組密文字母來代替一組明文字母以隱藏明文,但保持明文字母的位置不變。最古老的替代密碼是凱撒密碼。
較為複雜的密碼,是使明文字母和密文字母之間的映射關係無規律可循,比如將26個英文字母隨意映射到其他字母上,這種方法稱為單字母表替換,其密鑰是對應於整個英文字母表的26個字母。 換位密碼
換位有時也稱為排列,他不對明文字母進行變換,只是將明文字母的次序重新進行排列。
其破譯的第一步是判斷密碼類型,檢查文中e、t、o、a、u、i等字母的出現頻率,如果符合自然語言特徵,則說明密文是用換位密碼寫的。第二步是猜測密鑰的長度,即列數。第三步是確定各列的順序。
秘密密鑰算法
使用極其複雜的加密算法,即使破譯者能夠對選擇的任意數量的明文進行加密,也無法找出破譯密文的方法。秘密密鑰的一個弱點是解密密鑰必須和加密密碼相同,這就產生了如何安全地分發密鑰的問題。
公開密鑰算法
滿足三個條件:第一個條件是指將解密算法作用於密文後就可以獲得明文;第二個條件是指不可能從密文導出解密算法;第三個條件是指破譯者即使能加密任意數量的選擇明文,也無法破譯密碼。如果滿足以上條件,則可以公開加密算法。
用戶認證
1、基於共享秘密密鑰的用戶認證協議
2、使用密鑰分發中心的用戶認證協議
3、使用公開密鑰算法的用戶認證協議
視頻
一分鐘了解公鑰加密