熱度 10|
密鑰管理是數據加密技術中的重要一環,密鑰管理的目的是確保密鑰的安全性(真實性和有效性)。為了數據使用的方便,數據加密在許多場合集中表現為密鑰的應用,以達到保密的要求,因此密鑰往往是保密與竊密的主要對象。
由于系統的保密性主要取決于密鑰的安全性,所以在公開的網絡上安全地傳送和保管密鑰是一個嚴峻的問題。
密鑰分散是上級的密鑰與本級的特征相結合形成本級的密鑰,其基本思想是用密鑰來保護密鑰。密鑰分散機制的優點在于即使破解了密鑰,也不會對同級和上級的密鑰產生威脅。密鑰分散機制是保護密鑰安全的有效手段。
通過密鑰分散,使得每張加密卡交易時使用的密鑰都不同,實現了“一卡一密”,并要求在密鑰操作時和控制密鑰配合使用,提高密鑰使用的安全性。
分散過程簡單描述如下:
密鑰分散算法簡稱Diversify,是指將一個雙長度(一個長度密鑰為8個字節)的主密鑰(MK),對數據進行分散處理,推導出一個雙長度的DES加密密鑰(DK)。該算法廣泛應用于現在的金融IC卡和其他對于安全要求高的行業。其DK推導過程如下:
推導DK左半部分的方法是:
1、將分散數據的最右8個字節作為輸入數據;
2、將MK作為加密密鑰;
3、用MK對輸入數據進行3DES運算,得到DK左半部分。
推導DK右半部分的方法是:
1、將分散數據的最右8個字節求反,作為輸入數據;
2、將MK作為加密密鑰;
3、用MK對輸入數據進行3DES運算,得到DK右半部分。
最后將DK的左右部分各8個字節合并成雙長度的DK密鑰,即為分散所求得的待使用的3DES密鑰。
密鑰分散有助于保護密鑰,但是一個完整的密鑰管理系統應該做到:
1、密鑰難以被竊取和復制;
2、即使竊取了密鑰也沒有用,密鑰有使用范圍和時間的限制;
3、密鑰的分配和更換過程對用戶透明,用戶不一定要親自掌管密鑰;
4、核心密鑰一定要采用分割負責的方式保存。