-
Blowfish算法
鎖定
Blowfish算法是一個64位分組及可變密鑰長度的對稱密鑰分組密碼算法,可用來加密64比特長度的字符串。32位處理器誕生後,Blowfish算法因其在加密速度上超越了DES而引起人們的關注。Blowfish算法具有加密速度快、緊湊、密鑰長度可變、可免費使用等特點,已被廣泛使用於眾多加密軟件。
- 中文名
- Blowfish算法
- 分 類
- 對稱密鑰分組加密算法
- 提出者
- Bruce Schneier
- 提出時間
- 1993年11月
Blowfish算法是一種對稱的分組加密算法,算法核心在於子密鑰生成,它將變長密鑰擴展成總長4168 Byte的子密鑰數組。算法中使用了大量的子密鑰,而子密鑰又依賴於用户密鑰,實際加/解密過程中使用的是更新後的子密鑰數組,子密鑰即P數組和S盒。Blowfish算法有一個核心加密函數:BF_En(),該函數的輸人是64位明文信息,經過運算,以64位密文信息的形式輸出。用Blowfish算法加密信息,需要兩個過程:密鑰預處理和信息加密。同樣,解密亦需要兩個過程,密鑰預處理和信息解密。
Blowfish算法的源密鑰——pbox和sbox是固定的,而我們要加密一個信息,需要自己選擇一個key,用這個key對pbox和sbox進行變換,得到下一步信息加密所要用的key_pbox和key_sbox。解密亦是如此,由於Blowfish是對稱加密算法,解密方在得到key後根據key生成解密所需的key_box和key_sbox。對同一個信息加密解密,選取的key的不同會導致密文的不同。因此,Blowfish算法的關鍵在於key的選擇以及保密。
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:1次歷史版本
- 最近更新: cie词条