加密密鑰的奇偶校驗
在雙長度 3DES 區域主密鑰(也具有奇校驗)下加密雙長度 3DES 應用程序密鑰(具有奇校驗)是否會影響應用程序密鑰的奇偶校驗?
不,它不會影響奇偶校驗位。
明文或密文沒有指定任何奇偶校驗位。應用程序密鑰只是密碼的輸入,它是一個偽隨機排列。排列意味著從明文(包括奇偶校驗位)到密文的 1:1 映射。如果您以相反的方向執行排列,則將恢復明文 - 再次包括奇偶校驗位。
如果在分組密碼的特定操作模式中使用主密鑰,情況也是如此;將保持明文和密文之間的 1:1 關係。
注意,由於密文沒有任何奇偶校驗位,密文的奇偶校驗是完全隨機的;明文的奇偶校驗不會以任何方式反映在密文的奇偶校驗中。這也意味著,如果您使用主密鑰執行密鑰派生,您需要在之後顯式設置奇偶校驗。
請注意,某些庫實際上並不驗證奇偶校驗位。最好不要設置它們。
是的,奇偶校驗的雙長度 3DES 應用程序密鑰的加密確實會影響結果的奇偶校驗;當使用 ECB 或其他模式(例如具有隱式或帶外 IV 的 CBC)時(在 3DES 密鑰管理中很常見),密碼將沒有奇校驗,因此不能作為具有奇校驗的 3DES 應用程序密鑰傳遞(有極好的但不是壓倒性的機率,大約 $ 1-2^{-16}\approx 99.9985% $ )。Than 使得它不太可能意外地將加密密鑰用作明文密鑰;當然,如果檢查了普通密鑰的奇偶校驗。
加密然後解密具有奇校驗的雙長度 3DES 應用程序密鑰將保持密鑰不變,包括奇校驗。
加密然後奇偶校驗調整然後解密具有奇校驗的雙長度 3DES 應用程序密鑰(這樣奇偶校驗調整後的結果可以作為具有奇校驗的 3DES 應用程序密鑰傳遞)將給出不正確的奇偶校驗並導致不正確的結果如果使用(有極好的但不是壓倒性的機率),並且與初始鍵沒有明顯的關係(有很好的機率,大約 $ 1-2^{-7}\approx 99.2% $ ).