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