專利名稱:一種生成傳輸密鑰的裝置的制作方法
技術(shù)領(lǐng)域:
本實用新型涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,尤其涉及一種生成傳輸密鑰的裝置,生成的 傳輸密鑰配合對稱加密算法,可以實現(xiàn)安全的加密數(shù)據(jù)傳輸。
背景技術(shù):
高涉密級行業(yè)經(jīng)常涉及大量的私密信息傳輸場景,需要使用安全傳輸協(xié)議和安全 網(wǎng)絡(luò)環(huán)境。在使用安全傳輸協(xié)議和安全網(wǎng)絡(luò)環(huán)境的同時,目前廣泛應(yīng)用的是對稱密碼加密 方法來傳輸私密信息,比如3DES等。在使用對稱加密方法時,生成傳輸密鑰的算法是實現(xiàn)的核心;而如何生成與保存 傳輸密鑰則是加密方法安全強度和實現(xiàn)性能的根本保證。一個好的密鑰實現(xiàn)方案,應(yīng)該具 備以下特點保證傳輸過程中密鑰完全保密,能夠便捷的及時更新密鑰,能夠抵御常見的攻 擊方法等。目前的大多密鑰傳輸系統(tǒng),采用了各種各樣的安全傳輸算法和通訊通道以及協(xié)商 機制,但是都基于一個共同點需要事先產(chǎn)生一個密鑰,同時此密鑰需要保存在雙方服務(wù)器 一定長的時間用于后續(xù)應(yīng)用。一旦在這段時間內(nèi)被攻擊者獲取到密鑰,后續(xù)通訊內(nèi)容就完 全暴露了,所以,為了避免這種風險,大多數(shù)密鑰傳輸系統(tǒng)都要求周期更換密鑰以盡可能的 減少暴露后帶來的損失。但是這種做法必定不能完全規(guī)避風險,而且更換一次密鑰需要重 新生成、協(xié)商以及傳輸過程,太過頻繁會很大程度的提高實現(xiàn)成本。
實用新型內(nèi)容(一)要解決的技術(shù)問題有鑒于此,本實用新型的主要目的在于提供一種生成傳輸密鑰的裝置,以提高傳 輸密鑰的安全性,降低基于對稱加密算法傳輸系統(tǒng)的密鑰被破解或竊取的風險。( 二 )技術(shù)方案為達到上述目的,本實用新型提供了一種生成傳輸密鑰的裝置,該裝置包括通過 網(wǎng)絡(luò)相互耦合連接的密鑰控件派發(fā)裝置1、信息發(fā)送裝置2和信息接收裝置3,其中密鑰控件派發(fā)裝置1,是作為通訊雙方的信息發(fā)送裝置2和信息接收裝置3的第三 方,產(chǎn)生密鑰控件和密鑰控件信息,該密鑰控件包含有交互密鑰生成算法和傳輸密鑰生成 算法,將該密鑰控件信息添加到該密鑰控件,并發(fā)送給信息發(fā)送裝置2和信息接收裝置3 ;信息發(fā)送裝置2和信息接收裝置3,均是一個web服務(wù)器,接收由密鑰控件派發(fā)裝 置1發(fā)送的密鑰控件,分別根據(jù)密鑰控件中被添加的控件信息對所接收的密鑰控件進行認 證,并分別利用密鑰控件中的交互密鑰生成算法生成控件生成各自的交互密鑰,再使用校 驗碼、時間戳以及認證信息組成交互密鑰信息包,然后將所述交互密鑰信息包傳輸給對方, 在分別收到對方的交互密鑰信息包后,利用本地私鑰和接收到的對方的交互密鑰,通過調(diào) 用傳輸密鑰生成控件中的傳輸密鑰生成算法生成各自的傳輸密鑰,該兩個傳輸密鑰相等; 最后,各自利用生成的傳輸密鑰對需要傳輸?shù)男畔⑦M行加解密。[0011]上述方案中,所述密鑰控件派發(fā)裝置1包括相互連接的控件信息生成單元11和密 鑰控件生成單元12,其中控件信息生成單元11,產(chǎn)生密鑰控件信息,該密鑰控件信息至少包括安全控制 ID、版本號和控件使用期限。密鑰控件生成單元12,抽用各種算法生成密鑰控件,該密鑰控件包括交互密鑰生 成算法控件和傳輸密鑰生成算法控件。上述方案中,所述信息發(fā)送裝置2或信息接收裝置3均包括私鑰生成單元201、交 互密鑰生成單元202、傳輸密鑰生成單元203、簽名信息認證單元204、校驗碼認證單元205、 時間戳校驗單元206、數(shù)據(jù)保存清理單元207、信息發(fā)送單元208和主控單元209,且私鑰生 成單元201、交互密鑰生成單元202、傳輸密鑰生成單元203、簽名信息認證單元204、校驗碼 認證單元205、時間戳校驗單元206、數(shù)據(jù)保存清理單元207和信息發(fā)送單元208均連接于 主控單元209。上述方案中,所述主控單元209接收來自密鑰控件派發(fā)裝置1的數(shù)據(jù),并協(xié)調(diào)內(nèi)部 私鑰生成單元201、交互密鑰生成單元202、傳輸密鑰生成單元203、簽名信息認證單元204、 校驗碼認證單元205、時間戳校驗單元206、數(shù)據(jù)保存清理單元207和信息發(fā)送單元208完 成密鑰生成、交互以及認證工作。上述方案中,所述私鑰生成單元201生成本地私鑰,并提供給主控單元209,作為 交互密鑰生成單元的輸入。上述方案中,所述交互密鑰生成單元202從主控單元209接收密鑰控件派發(fā)裝置 1發(fā)送來的交互密鑰生成控件F(X),將所述私鑰生成單元201生成的本地私鑰作為輸入,生 成交互密鑰。上述方案中,所述傳輸密鑰生成單元203從主控單元209接收密鑰控件派發(fā)裝置 1發(fā)送來的交互密鑰生成控件G (X,Y),利用對方裝置發(fā)送來的已生成的對方交互密鑰和本 地私鑰信息,生成傳輸密鑰。上述方案中,所述簽名信息認證單元204驗證交互信息中的簽名數(shù)據(jù),密鑰控制 派發(fā)裝置1在提供兩種密鑰生成控件時均加入了控件信息,簽名信息認證單元204使用公 知的密鑰控件派發(fā)裝置的簽名公鑰對兩種加密后的密鑰生成控件進行解密,只有來自合法 密鑰控制派發(fā)裝置的控件才可以解出正確明文,解出明文后首先驗證身份ID是否正確,然 后判斷當前日期是否在控件有效范圍內(nèi),最后獲取版本信息用作后續(xù)交互確認控件一致 性。上述方案中,所述簽名信息認證單元204進一步在向?qū)Ψ窖b置發(fā)送交互密鑰前, 先使用自身的簽名私鑰對交互密鑰信息包進行加密,在接收到對方的交互密鑰信息包之后 才能使用公知的對方簽名公鑰解密交互信息包,然后交由主控單元209分發(fā)處理。上述方案中,所述校驗碼認證單元205調(diào)用自身包含的某種校驗碼算法對已生成 的交互密鑰信息包增加檢驗碼信息,以保證形成更安全的交互密鑰信息包,其中校驗碼認 證單元205包含有多種校驗碼算法,該校驗碼算法至少是CRC校驗算法或奇偶校驗算法。上述方案中,所述校驗碼認證單元205進一步從主控單元209接收對方裝置發(fā)送 來的交互密鑰信息包,并對其校驗碼進行驗證。上述方案中,所述時間戳認證單元206認證密鑰交互傳輸包是否已經(jīng)失效,并根據(jù)包內(nèi)時間戳信息與各自系統(tǒng)的本地時間進行比較,判斷是否超時以防止簡單的重放攻
擊ο上述方案中,所述數(shù)據(jù)保存清理單元207保存密鑰交互期間的臨時數(shù)據(jù)以及交互 結(jié)束后的數(shù)據(jù)清理工作。上述方案中,所述數(shù)據(jù)保存清理單元207還包括一個對稱加密模塊,所述主控單 元209將臨時數(shù)據(jù)存入本單元之前,首先通過該對稱加密模塊調(diào)用主控單元209的簽名密 鑰對臨時信息進行加密,以密文模式放入數(shù)據(jù)保存清理單元進行安全的存儲,當其他單元 需要調(diào)用臨時信息時先通過該對稱加密模塊解密密文,從而獲取明文信息交付其他單元使用。上述方案中,所述信息發(fā)送單元208從主控單元209獲取待發(fā)送的交互密鑰信息 包。(三)有益效果從上述技術(shù)方案可以看出,本實用新型提供的這種生成傳輸密鑰的裝置,可以廣 泛用于使用對稱密鑰加密算法交互細密信息的應(yīng)用場景,實現(xiàn)安全的密鑰交互,其優(yōu)點體 現(xiàn)在如下方面1、防截取攻擊在交互信道,即使攻擊者截獲了交互密鑰Ka和Kb,但是,因為各自 的隨機密鑰a,b是不再網(wǎng)絡(luò)中通訊的,攻擊者無法獲取。同時進一步保證F(X) =Y算法是 不可逆的,則a和b也無法通過計算獲得,可以保證傳輸密鑰K的安全。2、密鑰更換由于雙方的隨機密鑰a和b都是每次交互前隨機生成的,也就使得實 際的交互密鑰或者傳輸密鑰每次也都是隨機變化的,從而避免了密鑰長時間使用帶來的泄 漏風險。3、防重放,防阻塞通過將交互密鑰組成信息包,添加校驗碼和時間戳可以起到防 重放防阻塞的作用。
圖1是本實用新型提供的生成傳輸密鑰裝置的結(jié)構(gòu)示意圖;圖2是密鑰控件派發(fā)裝置的結(jié)構(gòu)示意圖;圖3是信息發(fā)送裝置和信息接收裝置的結(jié)構(gòu)示意圖;圖4是依照本實用新型第一個實施例生成傳輸密鑰的方法流程圖;圖5是依照本實用新型第二個實施例生成傳輸密鑰的方法流程圖;圖6是交互密鑰信息包的結(jié)構(gòu)示意圖。
具體實施方式
為使本實用新型的目的、技術(shù)方案和優(yōu)點更加清楚明白,以下結(jié)合具體實施例,并 參照附圖,對本實用新型進一步詳細說明。本實用新型的技術(shù)核心是,傳輸密鑰是由通訊雙方根據(jù)本方產(chǎn)生的私鑰和對方傳 輸過來的交互密鑰,通過第三方派發(fā)的傳輸密鑰生成算法共同生成,即使對方傳輸過來的 交互密鑰在網(wǎng)絡(luò)中被截取也無法單獨生成傳輸密鑰,所述第三方派發(fā)的傳輸密鑰生成算法 使得雙方使用的算法一致,并且在雙方本地生成的傳輸密鑰相等,從而達到對稱加密算法的效果。雙方的本地私鑰通過隨機生成,使用一次就失效,保證了傳輸密鑰即使被竊取或破 解也不會對下一次傳輸造成影響。傳輸密鑰生成算法由第三方派發(fā),對于通訊雙方透明且 一致,可以是每次重新派發(fā),或者是定期、不定期派發(fā),還可以是隨機派發(fā),進一步提升交互 密鑰和傳輸密鑰的安全。圖1是本實用新型提供的生成傳輸密鑰裝置的結(jié)構(gòu)示意圖,該裝置包含密鑰控件 派發(fā)裝置1、信息發(fā)送裝置2和信息接收裝置3,且密鑰控件派發(fā)裝置1、信息發(fā)送裝置2和 信息接收裝置3通過網(wǎng)絡(luò)相互耦合連接。所述密鑰控件派發(fā)裝置1是通訊雙方公認的第三方,可以是一個PC服務(wù)器或主 機,用于產(chǎn)生密鑰控件和密鑰控件信息(密鑰控件包括交互密鑰生成算法控件和傳輸密鑰 生成算法控件,密鑰控件信息包括安全控制ID、版本號和控件使用期限等),將該密鑰控件 信息添加到該密鑰控件,形成包含有交互密鑰生成算法以及傳輸密鑰生成算法的密鑰控 件,然后發(fā)送給信息發(fā)送裝置2和信息接收裝置3。如圖2所示,圖2是密鑰控件派發(fā)裝置的結(jié)構(gòu)示意圖。密鑰控件派發(fā)裝置1包括 控件信息生成單元11和密鑰控件生成單元12。所述控件信息生成單元11用于產(chǎn)生密鑰控 件信息,該密鑰控件信息包括安全控制ID、版本號和控件使用期限等。所述密鑰控件生成單 元12,用于抽用各種算法生成密鑰控件,該密鑰控件包括交互密鑰生成算法控件和傳輸密 鑰生成算法控件。所述信息發(fā)送裝置2和信息接收裝置3,均可以是一個web服務(wù)器,用于接收由密 鑰控件派發(fā)裝置1發(fā)送的密鑰控件,分別根據(jù)密鑰控件中被添加的控件信息對所接收的密 鑰控件進行認證,并分別利用密鑰控件中的交互密鑰生成算法生成各自的交互密鑰,再使 用校驗碼、時間戳以及認證信息組成交互密鑰信息包,以保證所交互的密鑰信息的完整性 和準確性,然后將所述交互密鑰信息包傳輸給對方。所述交互密鑰信息包組成見圖6。信息發(fā)送裝置2和信息接收裝置3在分別收到對方的交互密鑰信息包后,對信息 包數(shù)據(jù)合法性進行認證,認證通過后利用本地私鑰和接收到的對方的交互密鑰,通過調(diào)用 傳輸密鑰生成控件中的傳輸密鑰生成算法生成各自的傳輸密鑰,該兩個傳輸密鑰相等。最 后,信息發(fā)送裝置2和信息發(fā)送裝置3利用生成的傳輸密鑰對需要傳輸?shù)男畔⑦M行加解密。圖3是信息發(fā)送裝置和信息接收裝置的結(jié)構(gòu)示意圖,信息發(fā)送裝置2和信息接收 裝置3均包含私鑰生成單元201、交互密鑰生成單元202、傳輸密鑰生成單元203、簽名信息 認證單元204、校驗碼認證單元205、時間戳校驗單元206、數(shù)據(jù)保存清理單元207、信息發(fā)送 單元208和主控單元209。所述主控單元209用于接收來自密鑰控件派發(fā)裝置1的數(shù)據(jù),并協(xié)調(diào)內(nèi)部各功能 單元完成密鑰生成、交互以及認證等工作。所述私鑰生成單元201,用于生成本地私鑰,并提供給主控單元209,作為交互密 鑰生成單元的輸入。例如,該單元內(nèi)部在符合密鑰強度的數(shù)值區(qū)間中可隨機產(chǎn)生一個密鑰 數(shù)值,即私鑰,并提供給主控單元209,同時將這個私鑰加入作廢列表,后續(xù)不再使用,且作 廢列表定期清空。所述交互密鑰生成單元202 負責從主控單元209接收密鑰控件派發(fā)裝置1發(fā)送 來的交互密鑰生成控件F (X),將上述私鑰生成單元201生成的本地私鑰作為輸入,生成交 互密鑰。[0049]所述傳輸密鑰生成單元203 負責從主控單元209接收密鑰控件派發(fā)裝置1發(fā)送 來的交互密鑰生成控件G (X,Y),利用對方裝置發(fā)送來的已生成的對方交互密鑰和本地私鑰 信息,從而生成傳輸密鑰。所述簽名信息認證單元204 用于驗證交互信息中的簽名數(shù)據(jù),密鑰控制派發(fā)裝 置1在提供兩種密鑰生成控件時,均加入了控件信息,簽名信息認證單元204使用公知的密 鑰控件派發(fā)裝置的簽名公鑰對兩種加密后的密鑰生成控件進行解密,只有來自合法密鑰控 制派發(fā)裝置的控件才可以解出正確明文,解出明文后首先驗證身份ID是否正確,然后判斷 當前日期是否在控件有效范圍內(nèi),最后獲取版本信息用作后續(xù)交互確認控件一致性。同時,所述簽名信息認證單元204還負責在向?qū)Ψ窖b置發(fā)送交互密鑰前,先使用 自身的簽名私鑰對交互密鑰信息包進行加密,從而在接收到對方的交互密鑰信息包之后才 能使用公知的對方簽名公鑰解密交互信息包,然后交由主控單元209分發(fā)處理。所述校驗碼認證單元205 包含有多種校驗碼算法,所述校驗碼算法可以是CRC校 驗算法,奇偶校驗算法等。該單元負責調(diào)用某種校驗碼算法對已生成的交互密鑰信息包增 加檢驗碼信息以保證形成更安全的交互密鑰信息包;進一步,所述校驗碼認證單元205還 負責從主控單元209接收對方裝置發(fā)送來的交互密鑰信息包,并對其校驗碼進行驗證。所述時間戳認證單元206 用于認證密鑰交互傳輸包是否已經(jīng)失效,并根據(jù)包內(nèi) 時間戳信息與各自系統(tǒng)的本地時間進行比較,判斷是否超時以防止重放攻擊。所述數(shù)據(jù)保存清理單元207 用于保存密鑰交互期間的臨時數(shù)據(jù)以及進行交互結(jié) 束后的數(shù)據(jù)清理工作;進一步,數(shù)據(jù)保存清理單元207還可以增加一個簡單的對稱加密模 塊,主控單元209將臨時數(shù)據(jù)存入本單元之前,首先通過所述對稱加密模塊調(diào)用主控單元 的簽名密鑰將臨時信息進行加密,以密文模式放入數(shù)據(jù)保存清理單元進行安全的存儲,當 其他單元需要調(diào)用臨時信息時需要先通過此對稱加密模塊解密密文,從而獲取明文信息, 才能交付其他單元使用。此裝置可以保證每次使用的私鑰、交互密鑰以及傳輸密鑰的安全 性,防止在應(yīng)用過程中被竊取。所述信息發(fā)送單元208 用于從主控單元209獲取待發(fā)送的交互密鑰信息包。基于圖1至圖3所示的生成傳輸密鑰的裝置,本實用新型還提供了一種生成傳輸 密鑰的方法,該方法包括以下步驟步驟1 密鑰控件派發(fā)裝置1產(chǎn)生密鑰控件和密鑰控件信息,將該密鑰控件信息添 加到該密鑰控件,并將形成的密鑰控件發(fā)送給信息發(fā)送裝置2和信息接收裝置3 ;步驟2 信息發(fā)送裝置2和信息接收裝置3接收該密鑰控件,分別根據(jù)密鑰控件中 被添加的控件信息對所接收的密鑰控件進行認證;步驟3 信息發(fā)送裝置2和信息接收裝置3分別生成各自的交互密鑰,再使用校驗 碼、時間戳以及認證信息組成交互密鑰信息包,然后將該交互密鑰信息包傳輸給對方;步驟4 在信息發(fā)送裝置2和信息接收裝置3分別收到對方的交互密鑰信息包后, 利用本地私鑰和接收到的對方的交互密鑰,通過調(diào)用傳輸密鑰生成控件中的傳輸密鑰生成 算法生成各自的傳輸密鑰,該兩個傳輸密鑰相等。其中,步驟1中所述密鑰控件派發(fā)裝置1產(chǎn)生密鑰控件和密鑰控件信息,并對產(chǎn)生 的密鑰控件進行加密,包括密鑰控件派發(fā)裝置1產(chǎn)生密鑰控件和密鑰控件信息,該密鑰控 件包含有交互密鑰生成算法和傳輸密鑰生成算法,將該密鑰控件信息添加到該密鑰控件,并使用簽名私鑰對添加了密鑰控件信息的交互密鑰生成算法和傳輸密鑰生成算法進行加
r t [ ο步驟3中所述信息發(fā)送裝置2和信息接收裝置3分別生成各自的交互密鑰,再使 用校驗碼、時間戳以及認證信息組成交互密鑰信息包,包括信息發(fā)送裝置2和信息接收裝 置3分別在本地生成私鑰,并分別利用密鑰控件中的交互密鑰生成算法生成各自的交互密 鑰,再使用校驗碼、時間戳以及認證信息組成交互密鑰信息包。另外,該方法在步驟4生成各自的傳輸密鑰后還包括信息發(fā)送裝置2和信息接收 裝置3各自利用生成的傳輸密鑰對需要傳輸?shù)男畔⑦M行加解密。下面結(jié)合圖4和圖5對本實用新型提供的生成傳輸密鑰的方法做進一步的詳細說 明。圖4是依照本實用新型第一個實施例生成傳輸密鑰的方法流程圖,本實施例以一 個簡單的交互作為例子,雙方指的是信息發(fā)送裝置2和信息接收裝置3,其具體步驟如下步驟401 提出操作請求;步驟402 密鑰控件派發(fā)裝置1調(diào)用控件信息生成單元11,生成包括安全控制ID、 版本號和控件使用期限的控件信息,并調(diào)用密鑰控件生成單元12,選取兩種密鑰生成控件 算法,例如F(X) =64X*G(X,Y) =X*Y,分別生成交互密鑰生成控件和傳輸密鑰生成控件, 再將控件信息加至已生成上述兩種密鑰生成控件,然后加上密鑰控件派發(fā)裝置1的私鑰進 行簽名,最終形成密鑰生成控件信息包,派發(fā)至信息發(fā)送裝置2和信息接收裝置3 ;所述的 控件信息包括安全控制ID,例如“NCAA. Ltd. co.安全部”、版本號,例如“2. 0. 3”、控件使用 期限,例如"2009-12-01to2010-02-01";步驟403 雙方主控單元209調(diào)用各自的簽名信息認證單元204,分別根據(jù)密鑰控 件派發(fā)裝置1派發(fā)的密鑰控件信息包根據(jù)已知的密鑰控件派發(fā)裝置1的公鑰在本地進行解 密,獲取控件認證信息,所述已獲取控件認證信息包括安全控制ID“NCAA. Ltd. CO.安全部”、 版本號 “2. 0. 3”、控件使用期限"2009-12-01to2010-02-01";步驟404 雙方主控單元209對所述控件認證信息進行合法性校驗,通過驗證安全 控制ID確認接收到的信息是否為已約定的第三方ID內(nèi)容、通過驗證控件使用期限確認各 自裝置本地的系統(tǒng)時間是否在接收到的控件使用期限之內(nèi);若驗證通過,則進入步驟406, 若驗證未通過,交易中斷,進入步驟405 ;步驟405 交易中斷,校驗未通過一方的主控單元209調(diào)用信息發(fā)送單元208向密 鑰控件派發(fā)裝置發(fā)出重新發(fā)送的通知,結(jié)束;步驟406 驗證通過,信息發(fā)送裝置2的主控單元209調(diào)用信息發(fā)送單元208向信 息接收裝置3發(fā)起密鑰交互請求;步驟406在驗證通過后還包括雙方主控單元209調(diào)用數(shù) 據(jù)保存清理單元204,用于保存接收到的控件信息包中的密鑰控件算法信息,以保證信息的 安全性;步驟407 信息接收裝置3確認接收到的請求,并與信息發(fā)送裝置2建立SSL連 接;步驟408 雙方SSL連接建立后,對控件版本信息進行交互;步驟409 雙方驗證交互的版本信息是否一致,若一致,則驗證通過,進行下一步; 若不一致,則交易中斷,雙方通知各自主控單元209聯(lián)系密鑰控件派發(fā)裝置1進行重發(fā),結(jié)束;步驟410 —致性驗證通過后,雙方主控單元209分別調(diào)用各自私鑰生成單元201 生成本地私鑰,此實例中取私鑰數(shù)值分別為a = 923和b = 672,主控單元209再分別調(diào)用 數(shù)據(jù)保存清理單元207以保證隨機密鑰a和b保存到本單元的安全區(qū)域內(nèi)從而保證私鑰的 安全性;步驟411 雙方主控單元209分別調(diào)用數(shù)據(jù)保存清理單元204中的交互密鑰算 法控件,使用控件中的算法F(X) = 64*X,根據(jù)已經(jīng)生成的本地私鑰分別生成各自的交 互密鑰數(shù)Ka = 64*a = 59072和Kb = 64*b = 43008,再調(diào)用交互密鑰生成單元202,將 時間戳添加至交互密鑰Ka和Kb,然后調(diào)用校驗碼認證單元205,使用其中的“奇偶校驗 算法”生成校驗碼,以一方為例將Ka= 59072和時間戳200912122048各位相加求和,5 +9+0+7+2+2+0+0+9+1+2+1+2+2+0+4+8 = 54,是偶數(shù)所以其奇偶校驗碼為0,同理可以計 算出另一方奇偶校驗碼為1,最后再補充控件版本信息組成各自的密鑰交互信息包A = 59027 I 200912122048 | 0 | 2. 0. 3 和 B = 43008 | 200912122048 111 2. 0. 3,最后對各自的信息包 進行簽名;步驟412 雙方主控單元209調(diào)用各自信息發(fā)送單元208,并通過已建立的SSL通 信連接對密鑰交互信息包明文數(shù)據(jù)進行交換;步驟413 雙方主控單元209調(diào)用數(shù)據(jù)保存清理單元將接收到的對方交互信息包 明文數(shù)據(jù)進行存儲以保證信息的安全性,再在本地對密鑰交互信息進行解密從而獲取交互 信息包中密文數(shù)據(jù);步驟414 雙方主控單元209分別調(diào)用各自校驗碼認證單元205和時間戳校驗單 元206對保存在數(shù)據(jù)保存清理單元207的密文數(shù)據(jù)進行奇偶校驗和時間戳校驗,校驗通過 則進行下一步交易,若校驗未通過,則調(diào)用信息發(fā)送單元208聯(lián)系密鑰控件派發(fā)裝置1進行 重發(fā),結(jié)束;進一步的,所述步驟414中的奇偶校驗具體步驟為雙方主控單元209調(diào)用校驗碼 認證單元205按照步驟411所述奇偶校驗方法對接收到的數(shù)據(jù)進行奇偶校驗,通過后主控 單元209再調(diào)用時間戳校驗單元206對密鑰交互信息包的時間戳200912122048與當前系 統(tǒng)時間進行比較,若時間戳所示時間大于當前系統(tǒng)時間1分鐘以上則判斷為超時,拒絕進
一步交易;步驟415 雙方主控單元209調(diào)用數(shù)據(jù)保存清理單元207,從中取出各自的私鑰a =923和b = 672,以及對方傳輸過來的交互密鑰,調(diào)用傳輸密鑰生成控件203,例如G (X,Y) =X*Y算出最終的傳輸密鑰K,此實施例中K = a*Kb = 923*43008 = 39696384和K = b*Ka =672*59072 = 39696384 ;步驟416 雙方主控單元209分別調(diào)用數(shù)據(jù)發(fā)送單元208,用所述步驟415中生成 的傳輸密鑰將需要傳輸?shù)臄?shù)據(jù)進行加密后發(fā)送給信息接受裝置3 ;步驟417:結(jié)束。圖5是依照本實用新型第二個實施例生成傳輸密鑰的方法流程圖。本實施例以另 一種算法Diffie-Hellman (簡稱DH算法——一種公開的非對稱加密算法,屬于公鑰密碼體 制)進一步說明本實用新型生成傳輸密鑰的方法。同上述第一個實施例,雙方指的是信息 發(fā)送裝置2和信息接收裝置3,其具體包括以下步驟[0085]步驟501 提出操作請求;步驟502 密鑰控件派發(fā)裝置1調(diào)用控件信息生成單元11,生成包括安全控 制ID、版本號和控件使用期限的控件信息,并調(diào)用密鑰控件生成單元12,選取兩種密鑰 生成控件算法,例如F(X) = gx mod n(l < g< n,且g和η需為較大的質(zhì)數(shù))和G(X, Y) =Yx mod n,分別生成交互密鑰生成控件和傳輸密鑰生成控件,再將控件信息加至已 生成上述兩種密鑰生成控件,然后加上密鑰控件派發(fā)裝置1的私鑰進行簽名,最終形成 密鑰生成控件信息包,派發(fā)至信息發(fā)送裝置2和信息接收裝置3 ;所述的控件信息包括 安全控制ID,例如“FIFA. ACCA. COM. hk.,,、版本號,例如“V+2. 7. 0,,、控件使用期限,例如 “2010-01-28to2010-02-10”。步驟503 雙方主控單元209調(diào)用各自的簽名信息認證單元204,分別根據(jù)密鑰控 件派發(fā)裝置1派發(fā)的密鑰控件信息包根據(jù)已知的密鑰控件派發(fā)裝置1的公鑰在本地進行解 密,獲取控件認證信息,所述已獲取控件認證信息包括安全控制ID“FIFA. ACCA. COM. hk”、版 本號"V+2. 7. 0”、控件使用期限"2010-01-28to2010-02-10";步驟504 雙方主控單元209對所述控件認證信息進行合法性校驗,通過驗證安全 控制ID確認接收到的信息是否為已約定的第三方ID內(nèi)容、通過驗證控件使用期限確認各 自裝置本地的系統(tǒng)時間是否在接收到的控件使用期限之內(nèi);若驗證通過,則進入步驟506, 若驗證未通過,交易中斷,進入步驟505 ;步驟505 交易中斷,校驗未通過一方的主控單元209調(diào)用信息發(fā)送單元208向密 鑰控件派發(fā)裝置發(fā)出重新發(fā)送的通知,結(jié)束;步驟506 驗證通過,信息發(fā)送裝置2的主控單元209調(diào)用信息發(fā)送單元208向信 息接收裝置3發(fā)起密鑰交互請求;步驟506在驗證通過后還包括雙方主控單元209調(diào)用數(shù) 據(jù)保存清理單元204,用于保存接收到的控件信息包中的密鑰控件算法信息,以保證信息的 安全性;步驟507 信息接收裝置3確認接收到的請求,并與信息發(fā)送裝置2建立SSL連 接;步驟508 雙方SSL連接建立后,對控件版本信息進行交互;步驟509 雙方驗證交互的版本信息是否一致,若一致,則驗證通過,進行下一步; 若不一致,則交易中斷,雙方通知各自主控單元209聯(lián)系密鑰控件派發(fā)裝置1進行重發(fā),結(jié) 束;步驟510 —致性驗證通過后,雙方主控單元209分別調(diào)用各自私鑰生成單元201 生成本地私鑰,此實例中取私鑰數(shù)值分別為a = e和b = f,主控單元209再分別調(diào)用數(shù)據(jù) 保存清理單元207以保證隨機密鑰a和b保存到本單元的安全區(qū)域內(nèi)從而保證私鑰的安全 性;步驟511 雙方主控單元209分別調(diào)用數(shù)據(jù)保存清理單元204中的交互密鑰算法 控件,使用控件中的算法F(X) = gx mod n(l < g < n,且g和η需為較大的質(zhì)數(shù)),根據(jù)已 經(jīng)生成的本地私鑰分別生成各自的交互密鑰數(shù)Ka = ge mod n和Kb = gf mod n,再調(diào)用交 互密鑰生成單元202,將時間戳添加至交互密鑰Ka和Kb,然后調(diào)用校驗碼認證單元205,使 用其中的任意一種校驗碼生成算法生成校驗碼,最后再補充控件版本信息組成各自的密鑰 交互信息包 A = ge mod η | 201001051357 11 和 B = gf mod η | 201001051357 | 0,最后對各自的信息包進行簽名;步驟512 雙方主控單元209調(diào)用各自信息發(fā)送單元208,并通過已建立的SSL通 信連接對密鑰交互信息包明文數(shù)據(jù)進行交換;步驟513 雙方主控單元209調(diào)用數(shù)據(jù)保存清理單元將接收到的對方交互信息包 明文數(shù)據(jù)進行存儲以保證信息的安全性,再在本地對密鑰交互信息進行解密從而獲取交互 信息包中密文數(shù)據(jù);步驟514 雙方主控單元209分別調(diào)用各自校驗碼認證單元205和時間戳校驗單 元206對保存在數(shù)據(jù)保存清理單元207的密文數(shù)據(jù)進行奇偶校驗和時間戳校驗,校驗通過 則進行下一步交易,若校驗未通過,則調(diào)用信息發(fā)送單元208聯(lián)系密鑰控件派發(fā)裝置1進行 重發(fā),結(jié)束;進一步的,所述步驟514所述奇偶校驗具體步驟為雙方主控單元209調(diào)用校驗碼 認證單元205按照步驟511所述奇偶校驗方法對接收到的數(shù)據(jù)進行奇偶校驗,通過后主控 單元209再調(diào)用時間戳校驗單元206對密鑰交互信息包的時間戳201001051357與當前系 統(tǒng)時間進行比較,若時間戳所示時間大于當前系統(tǒng)時間1分鐘以上則判斷為超時,拒絕進
一步交易;步驟515 雙方主控單元209調(diào)用數(shù)據(jù)保存清理單元207,從中取出各自的私鑰a =e和b = f,以及對方傳輸過來的交互密鑰,調(diào)用傳輸密鑰生成控件203,例如G (X,Y) = Yx mod n,算出最終的傳輸密鑰K,此實施例中K = [Kb]a mod η = [gf mod n]e mod η = (gf) 6 mod n, = gf* emod η 禾口 K = [Kjb modn = [ge mod n]f mod η = (ge)f mod n, = ge*f mod η ;步驟516 雙方主控單元209分別調(diào)用數(shù)據(jù)發(fā)送單元208,用所述步驟417中生成 的傳輸密鑰將需要傳輸?shù)臄?shù)據(jù)進行加密后發(fā)送給信息接受裝置3 ;步驟517:結(jié)束。以上所述的具體實施例,對本實用新型的目的、技術(shù)方案和有益效果進行了進一 步詳細說明,所應(yīng)理解的是,以上所述僅為本實用新型的具體實施例而已,并不用于限制本 實用新型,凡在本實用新型的精神和原則之內(nèi),所做的任何修改、等同替換、改進等,均應(yīng)包 含在本實用新型的保護范圍之內(nèi)。
權(quán)利要求一種生成傳輸密鑰的裝置,其特征在于,該裝置包括通過網(wǎng)絡(luò)相互耦合連接的密鑰控件派發(fā)裝置(1)、信息發(fā)送裝置(2)和信息接收裝置(3),其中密鑰控件派發(fā)裝置(1),是作為通訊雙方的信息發(fā)送裝置(2)和信息接收裝置(3)的第三方,產(chǎn)生密鑰控件和密鑰控件信息,該密鑰控件包含有交互密鑰生成算法和傳輸密鑰生成算法,將該密鑰控件信息添加到該密鑰控件,并發(fā)送給信息發(fā)送裝置(2)和信息接收裝置(3);信息發(fā)送裝置(2)和信息接收裝置(3),均是一個web服務(wù)器,接收由密鑰控件派發(fā)裝置(1)發(fā)送的密鑰控件,分別根據(jù)密鑰控件中被添加的控件信息對所接收的密鑰控件進行認證,并分別利用密鑰控件中的交互密鑰生成算法生成各自的交互密鑰,再使用校驗碼、時間戳以及認證信息組成交互密鑰信息包,然后將所述交互密鑰信息包傳輸給對方,在分別收到對方的交互密鑰信息包后,利用本地私鑰和接收到的對方的交互密鑰,通過調(diào)用傳輸密鑰生成控件中的傳輸密鑰生成算法生成各自的傳輸密鑰,該兩個傳輸密鑰相等;最后,各自利用生成的傳輸密鑰對需要傳輸?shù)男畔⑦M行加解密。
2.根據(jù)權(quán)利要求1所述的生成傳輸密鑰的裝置,其特征在于,所述密鑰控件派發(fā)裝置 (1)包括相互連接的控件信息生成單元(11)和密鑰控件生成單元(12),其中控件信息生成單元(11),產(chǎn)生密鑰控件信息,該密鑰控件信息至少包括安全控制ID、 版本號和控件使用期限,密鑰控件生成單元(12),抽用各種算法生成密鑰控件,該密鑰控件包括交互密鑰生成 算法控件和傳輸密鑰生成算法控件。
3.根據(jù)權(quán)利要求1所述的生成傳輸密鑰的裝置,其特征在于,所述信息發(fā)送裝置(2) 或信息接收裝置(3)均包括私鑰生成單元(201)、交互密鑰生成單元(202)、傳輸密鑰生成 單元(203)、簽名信息認證單元(204)、校驗碼認證單元(205)、時間戳校驗單元(206)、數(shù)據(jù) 保存清理單元(207)、信息發(fā)送單元(208)和主控單元(209),且私鑰生成單元(201)、交互 密鑰生成單元(202)、傳輸密鑰生成單元(203)、簽名信息認證單元(204)、校驗碼認證單元 (205)、時間戳校驗單元(206)、數(shù)據(jù)保存清理單元(207)和信息發(fā)送單元(208)均連接于主 控單元(209)。
4.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述主控單元(209)接 收來自密鑰控件派發(fā)裝置(1)的數(shù)據(jù),并協(xié)調(diào)內(nèi)部私鑰生成單元(201)、交互密鑰生成單元 (202)、傳輸密鑰生成單元(203)、簽名信息認證單元(204)、校驗碼認證單元(205)、時間戳 校驗單元(206)、數(shù)據(jù)保存清理單元(207)和信息發(fā)送單元(208)完成密鑰生成、交互以及 認證工作。
5.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述私鑰生成單元(201) 生成本地私鑰,并提供給主控單元(209),作為交互密鑰生成單元的輸入。
6.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述交互密鑰生成單元(202)從主控單元(209)接收密鑰控件派發(fā)裝置(1)發(fā)送來的交互密鑰生成控件F(X)Jf 所述私鑰生成單元(201)生成的本地私鑰作為輸入,生成交互密鑰。
7.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述傳輸密鑰生成單元(203)從主控單元(209)接收密鑰控件派發(fā)裝置(1)發(fā)送來的交互密鑰生成控件G(X,Y), 利用對方裝置發(fā)送來的已生成的對方交互密鑰和本地私鑰信息,生成傳輸密鑰。
8.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述簽名信息認證單元 (204)驗證交互信息中的簽名數(shù)據(jù),密鑰控制派發(fā)裝置(1)在提供兩種密鑰生成控件時均 加入了控件信息,簽名信息認證單元(204)使用公知的密鑰控件派發(fā)裝置的簽名公鑰對兩 種加密后的密鑰生成控件進行解密,只有來自合法密鑰控制派發(fā)裝置的控件才可以解出正 確明文,解出明文后首先驗證身份ID是否正確,然后判斷當前日期是否在控件有效范圍 內(nèi),最后獲取版本信息用作后續(xù)交互確認控件一致性。
9.根據(jù)權(quán)利要求8所述的生成傳輸密鑰的裝置,其特征在于,所述簽名信息認證單元(204)進一步在向?qū)Ψ窖b置發(fā)送交互密鑰前,先使用自身的簽名私鑰對交互密鑰信息包進 行加密,在接收到對方的交互密鑰信息包之后才能使用公知的對方簽名公鑰解密交互信 息包,然后交由主控單元(209)分發(fā)處理。
10.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述校驗碼認證單元(205)調(diào)用自身包含的某種校驗碼算法對已生成的交互密鑰信息包增加檢驗碼信息,以保 證形成更安全的交互密鑰信息包,其中校驗碼認證單元(205)包含有多種校驗碼算法,該 校驗碼算法至少是CRC校驗算法或奇偶校驗算法。
11.根據(jù)權(quán)利要求10所述的生成傳輸密鑰的裝置,其特征在于,所述校驗碼認證單元(205)進一步從主控單元(209)接收對方裝置發(fā)送來的交互密鑰信息包,并對其校驗碼進 行驗證。
12.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述時間戳認證單元(206)認證密鑰交互傳輸包是否已經(jīng)失效,并根據(jù)包內(nèi)時間戳信息與各自系統(tǒng)的本地時間 進行比較,判斷是否超時以防止簡單的重放攻擊。
13.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述數(shù)據(jù)保存清理單元(207)保存密鑰交互期間的臨時數(shù)據(jù)以及交互結(jié)束后的數(shù)據(jù)清理工作。
14.根據(jù)權(quán)利要求13所述的生成傳輸密鑰的裝置,其特征在于,所述數(shù)據(jù)保存清理單 元(207)還包括一個對稱加密模塊,所述主控單元(209)將臨時數(shù)據(jù)存入本單元之前,首先 通過該對稱加密模塊調(diào)用主控單元(209)的簽名密鑰對臨時信息進行加密,以密文模式放 入數(shù)據(jù)保存清理單元進行安全的存儲,當其他單元需要調(diào)用臨時信息時先通過該對稱加密 模塊解密密文,從而獲取明文信息交付其他單元使用。
15.根據(jù)權(quán)利要求3所述的生成傳輸密鑰的裝置,其特征在于,所述信息發(fā)送單元(208)從主控單元(209)獲取待發(fā)送的交互密鑰信息包。
專利摘要本實用新型公開了一種生成傳輸密鑰的裝置。傳輸密鑰是由通訊雙方根據(jù)本方產(chǎn)生的私鑰和對方傳輸過來的交互密鑰,通過第三方派發(fā)的傳輸密鑰生成算法共同生成,即使對方傳輸過來的交互密鑰在網(wǎng)絡(luò)中被截取也無法單獨生成傳輸密鑰,所述第三方派發(fā)的傳輸密鑰生成算法使得雙方使用的算法一致,并且在雙方本地生成的傳輸密鑰相等,從而達到對稱加密算法的效果。雙方的本地私鑰通過隨機生成,使用一次就失效,保證了傳輸密鑰即使被竊取或破解也不會對下一次傳輸造成影響。傳輸密鑰生成算法由第三方派發(fā),對于通訊雙方透明且一致,可以是每次重新派發(fā),或者是定期、不定期派發(fā),還可以是隨機派發(fā),進一步提升交互密鑰和傳輸密鑰的安全。
文檔編號H04L29/06GK201656997SQ201020177118
公開日2010年11月24日 申請日期2010年4月28日 優(yōu)先權(quán)日2010年4月28日
發(fā)明者趙暉 申請人:中國工商銀行股份有限公司