密碼學在加密算法上分類

單向加密算法

單向加密算法主要用於對信息完整性的驗證,這種技術就是由散列函數提供的消息認證技術。 散列函數,也稱作哈希函數、消息摘要函數、單向函數或雜湊函數。經過散列函數,能夠爲數據建立「數字指紋」(散列值)。散列值一般是一個字母和數字組成的字符串。 其消息認證流程以下:算法

1

在上述認證流程中,信息收發雙方在通訊前已經商定了具體的散列算法,而且該算法是公開的。若是消息在傳遞過程當中被篡改,則該消息不能與已得到的數字指紋相匹配。 散列函數具備如下的特徵:安全

  • 消息的長度不受限制
  • 對於給定的消息,其散列值的計算是很容易的。
  • 若是兩個散列值不相同,則這兩個散列值的原始輸入消息也不相同,這個特性使得散列函數具備肯定性的結果。
  • 散列函數的運算過程是不可逆的,這個特性稱爲函數的單向性。這也是單向函數命名的由來。
  • 對於一個已知的消息及散列值,要找到另外一個消息使其得到相同的散列值是可不能的。這個特性稱爲抗弱碰撞性。這被用來防止僞造。
  • 任意兩個不一樣消息的散列值必定不一樣。這個特性稱爲抗強碰撞性。 散列函數普遍用於信息完整性的驗證,是數據簽名的核心技術,散列函數的經常使用算法有MD----消息摘要算法、SHA-----安全散列算法及MAC-----消息認證碼算法。

對稱密碼體制

對稱密碼體制的保密模型以下圖所示。對稱密碼體制要求加密和解密使用同一個密鑰,解密是加密的逆運算,因爲通訊雙方共享同一個密鑰,這就要求通訊雙方必須在通訊前商定該密鑰,並妥善保存該密鑰,該密鑰稱爲私密密鑰。私密密鑰的存在使得對稱密碼體制開放性變差。 對稱密碼體制的保密模型:函數

2

對稱密碼體制分爲兩種:加密

  • 一種是對明文的單個位(或字節)進行運算,稱爲流加密,也稱序列加密。
  • 另外一種是把明文信息劃分紅不一樣的組(或塊)結構,分別對每一個組(或塊)進行加密和解密,稱爲分組加密。

非對稱密碼體制

非對稱密碼體制的保密通訊模型以下體所示。**非對稱密碼體制與對稱密碼體制相對,其主要的區別在於:非對稱密碼體制的加密密鑰和解密密鑰不相同,分爲兩個密鑰,一個公開,一個保密。公開的密鑰稱爲公鑰,保密的密鑰稱爲私鑰。**所以,非對稱密碼體制也稱爲公鑰密碼體制。非對稱密碼體制使得發送者和接收者無密鑰傳輸的保密通訊成爲可能,彌補了對稱密碼體制的缺陷。 非對稱密碼體制的保密通訊模型:圖片

3

在非對稱密碼體制中,公鑰和私鑰都可用於加密和解密操做,但它與對稱密碼體制不一樣。公鑰與私鑰分屬通訊雙方,一份消息的加密和解密須要公鑰與私鑰共同參與。公鑰加密則須要私鑰解密,反之,私鑰加密則須要公鑰解密。字符串

相關文章
相關標籤/搜索