本發(fā)明涉及計算機應(yīng)用安全技術(shù)領(lǐng)域,具體涉及一種直銷銀行混合模式全報文加密系統(tǒng)及方法。
背景技術(shù):
隨著互聯(lián)網(wǎng)應(yīng)用越來越廣泛,APP使用數(shù)量越來越大,安全問題成為人們?nèi)找骊P(guān)注的焦點。金融行業(yè)因為對數(shù)據(jù)比較敏感,所以對數(shù)據(jù)的加密也相應(yīng)的比較重視。金融行業(yè)有很多數(shù)據(jù)要在網(wǎng)絡(luò)上傳遞,包括從前置到主機,從自助終端到前置等,這些數(shù)據(jù)在網(wǎng)絡(luò)上進行必要的交互傳遞。對于現(xiàn)有的加密方法都比較單一,有一定的可能性被解密,致使用戶信息的泄露,造成不同程度的損失。
現(xiàn)有的加密算法有很多,但是算法都比較單一,而且在一定程度上只關(guān)注了客戶端或者傳輸過程中的保密情況,對于全程信息的加密過程還不夠完善。為此本案發(fā)明人結(jié)合自身經(jīng)驗設(shè)計了一種直銷銀行混合模式全報文加密系統(tǒng),并提出了實現(xiàn)方法。利用AES、RSA等加密算法,提供了針對“客戶端到后端系統(tǒng)”間敏感數(shù)據(jù)全程加密的方案,保證交易數(shù)據(jù)在無線通訊過程中極難被破解以及篡改;同時,提供加密密鑰一次一密的方案,進一步提高了安全性。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于提供一種加密方式多樣、全程安全性強、保證密文完整性的直銷銀行混合模式全報文加密系統(tǒng)及方法。
為實現(xiàn)上述目的,本發(fā)明提供如下技術(shù)方案:
本發(fā)明首先提供了一種直銷銀行混合模式全報文加密系統(tǒng),該加密系統(tǒng)包括客戶端、HTML5模塊、以及應(yīng)用服務(wù)器,其特征在于:所述客戶端包括用以向所述應(yīng)用服務(wù)器發(fā)送請求進而獲取RSA公鑰的RSA公鑰獲取模塊、用以生成隨機AES密鑰的AES密鑰生成模塊、利用RSA公鑰加密隨機AES密鑰用以生成數(shù)字信封的數(shù)字信封生成模塊、利用隨機AES密鑰用以將客戶端的報文原始數(shù)據(jù)加密成密文的隨機加密模塊、用以生成具有檢驗密文傳輸過程中是否被篡改功能的數(shù)據(jù)摘要的數(shù)據(jù)摘要生成模塊、以及用以將數(shù)字信封、密文、以及數(shù)據(jù)摘要一并發(fā)送給所述HTML5模塊的數(shù)據(jù)發(fā)送模塊。
所述客戶端的所述RSA公鑰獲取模塊通過互聯(lián)網(wǎng)與所述應(yīng)用服務(wù)器進行交互的。
所述RSA公鑰獲取模塊獲得的RSA公鑰是由所述應(yīng)用服務(wù)器生成的,并且采用一次一密的方式生成。
所述AES密鑰生成模塊所生成的隨機AES密鑰是由不定數(shù)量的26個大寫或小寫的英文字母以及數(shù)字隨機排列組成的,并且采用一次一密的方式生成。
本發(fā)明還提供了一種直銷銀行混合模式全報文加密方法,該方法包括以下步驟:
步驟S01、用戶通過直銷銀行進行交易輸入報文數(shù)據(jù),所述客戶端的所述RSA公鑰獲取模塊通過所述互聯(lián)網(wǎng)向所述應(yīng)用服務(wù)器發(fā)送RSA公鑰獲取請求;
步驟S02、所述應(yīng)用服務(wù)器根據(jù)接收到的RSA公鑰獲取請求,以一次一密的方式產(chǎn)生不同的RSA密鑰對,并將其中的RSA公鑰下發(fā)給所述RSA公鑰獲取模塊;
步驟S03、所述RSA公鑰獲取模塊接收到所述應(yīng)用服務(wù)器下發(fā)的RSA公鑰后,所述AES密鑰生成模塊以一次一密的方式隨機地生成AES密鑰;
步驟S04、所述數(shù)字信封生成模塊利用所述RSA公鑰獲取模塊得到的RSA公鑰,對所述AES密鑰生成模塊生成的隨機AES密鑰進行加密,進而生成數(shù)字信封;
步驟S05、所述隨機加密模塊根據(jù)所述AES密鑰生成模塊生成的隨機AES密鑰對報文數(shù)據(jù)進行加密,生成需要傳輸?shù)拿芪模?/p>
步驟S06、所述數(shù)據(jù)摘要生成模塊根據(jù)密文內(nèi)容生成數(shù)據(jù)摘要,該數(shù)據(jù)摘要具有檢驗密文傳輸過程中是否被篡改的功能;
步驟S07、所述數(shù)據(jù)發(fā)送模塊將生成的數(shù)字信封、密文、以及數(shù)據(jù)摘要一起發(fā)送給所述HTML5模塊,進而通過所述HTML5模塊傳輸給所述應(yīng)用服務(wù)器;
步驟S08、所述應(yīng)用服務(wù)器根據(jù)RSA密鑰對的私鑰將數(shù)字信封解密,得到所述客戶端中所述AES密鑰生成模塊產(chǎn)生的隨機密鑰,利用隨機AES密鑰將密文解密成原始報文數(shù)據(jù),同時將密文生成數(shù)據(jù)摘要,與所述HTML5模塊發(fā)送的數(shù)據(jù)摘要進行比對,如果兩個數(shù)據(jù)摘要完全相同,說明密文在傳遞的過程中沒有被篡改,以實現(xiàn)通訊數(shù)據(jù)的完整性保護,否則密文被篡改,本次數(shù)據(jù)通信無效。
本發(fā)明的有益效果是:利用多種加密算法,在加密過程中使用一次一密的加密方式,并利用公鑰進行二次加密形成數(shù)字信封,進一步增強了密文的安全性,數(shù)據(jù)摘要的對比過程可以驗證密文在傳輸過程中是否被篡改,從產(chǎn)生以及傳輸過程全方位地增強了金融信息傳輸?shù)陌踩浴?/p>
附圖說明
圖1是本發(fā)明:一種直銷銀行混合模式全報文加密系統(tǒng)的框架示意圖;
圖2是本發(fā)明:一種直銷銀行混合模式全報文加密方法的流程圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
參照圖1所示的一種直銷銀行混合模式全報文加密系統(tǒng),該加密系統(tǒng)包括客戶端1、HTML5模塊2、以及應(yīng)用服務(wù)器3,其特征在于:所述客戶端1包括用以向所述應(yīng)用服務(wù)器3發(fā)送請求進而獲取RSA公鑰的RSA公鑰獲取模塊11、用以生成隨機AES密鑰的AES密鑰生成模塊12、利用RSA公鑰加密隨機AES密鑰用以生成數(shù)字信封的數(shù)字信封生成模塊13、利用隨機AES密鑰用以將客戶端1的報文原始數(shù)據(jù)加密成密文的隨機加密模塊14、用以生成具有檢驗密文傳輸過程中是否被篡改功能的數(shù)據(jù)摘要的數(shù)據(jù)摘要生成模塊15、以及用以將數(shù)字信封、密文、以及數(shù)據(jù)摘要一并發(fā)送給所述HTML5模塊2的數(shù)據(jù)發(fā)送模塊16。
所述客戶端1的所述RSA公鑰獲取模塊11通過互聯(lián)網(wǎng)4與所述應(yīng)用服務(wù)器3進行交互的。
所述RSA公鑰獲取模塊11獲得的RSA公鑰是由所述應(yīng)用服務(wù)器3生成的,并且采用一次一密的方式生成。
所述AES密鑰生成模塊12所生成的隨機AES密鑰是由不定數(shù)量的26個大寫或小寫的英文字母以及數(shù)字隨機排列組成的,并且采用一次一密的方式生成。
參照圖2所示,本發(fā)明還提供了一種直銷銀行混合模式全報文加密方法,該方法包括以下步驟:
步驟S01、客戶端發(fā)送RSA公鑰請求:用戶通過直銷銀行進行交易輸入報文數(shù)據(jù),所述客戶端1的所述RSA公鑰獲取模塊11通過所述互聯(lián)網(wǎng)4向所述應(yīng)用服務(wù)器3發(fā)送RSA公鑰獲取請求;
步驟S02、應(yīng)用服務(wù)器生成RSA密鑰對:所述應(yīng)用服務(wù)器3根據(jù)接收到的RSA公鑰獲取請求,以一次一密的方式產(chǎn)生不同的RSA密鑰對,并將其中的RSA公鑰下發(fā)給所述RSA公鑰獲取模塊11;
步驟S03、隨機生成AES密鑰:所述RSA公鑰獲取模塊11接收到所述應(yīng)用服務(wù)器3下發(fā)的RSA公鑰后,所述AES密鑰生成模塊12以一次一密的方式隨機地生成AES密鑰;
步驟S04、二次加密生成數(shù)字信封:所述數(shù)字信封生成模塊13利用所述RSA公鑰獲取模塊11得到的RSA公鑰,對所述AES密鑰生成模塊12生成的隨機AES密鑰進行加密,進而生成數(shù)字信封;
步驟S05、根據(jù)AES密鑰生成密文:所述隨機加密模塊14根據(jù)所述AES密鑰生成模塊12生成的隨機AES密鑰對報文數(shù)據(jù)進行加密,生成需要傳輸?shù)拿芪模?/p>
步驟S06、生成對應(yīng)密文的數(shù)據(jù)摘要:所述數(shù)據(jù)摘要生成模塊15根據(jù)密文內(nèi)容生成數(shù)據(jù)摘要,該數(shù)據(jù)摘要具有檢驗密文傳輸過程中是否被篡改的功能;
步驟S07、加密后的信息進行傳輸:所述數(shù)據(jù)發(fā)送模塊16將生成的數(shù)字信封、密文、以及數(shù)據(jù)摘要一起發(fā)送給所述HTML5模塊2,進而通過所述HTML5模塊2傳輸給所述應(yīng)用服務(wù)器3;
步驟S08、應(yīng)用服務(wù)器解密并驗證有效性:所述應(yīng)用服務(wù)器3根據(jù)RSA密鑰對的私鑰將數(shù)字信封解密,得到所述客戶端1中所述AES密鑰生成模塊12產(chǎn)生的隨機密鑰,利用隨機AES密鑰將密文解密成原始報文數(shù)據(jù),同時將密文生成數(shù)據(jù)摘要,與所述HTML5模塊2發(fā)送的數(shù)據(jù)摘要進行比對,如果兩個數(shù)據(jù)摘要完全相同,說明密文在傳遞的過程中沒有被篡改,以實現(xiàn)通訊數(shù)據(jù)的完整性保護,否則密文被篡改,本次數(shù)據(jù)通信無效。
本發(fā)明的有益效果是:利用多種加密算法,在加密過程中使用一次一密的加密方式,并利用公鑰進行二次加密形成數(shù)字信封,進一步增強了密文的安全性,數(shù)據(jù)摘要的對比過程可以驗證密文在傳輸過程中是否被篡改,從產(chǎn)生以及傳輸過程全方位地增強了金融信息傳輸?shù)陌踩浴?/p>
對于本領(lǐng)域技術(shù)人員而言,顯然本發(fā)明不限于上述示范性實施例的細節(jié),而且在不背離本發(fā)明的精神或基本特征的情況下,能夠以其他的具體形式實現(xiàn)本發(fā)明。因此,無論從哪一點來看,均應(yīng)將實施例看作是示范性的,而且是非限制性的,本發(fā)明的范圍由所附權(quán)利要求而不是上述說明限定,因此旨在將落在權(quán)利要求的等同要件的含義和范圍內(nèi)的所有變化囊括在本發(fā)明內(nèi)。
此外,應(yīng)當理解,雖然本說明書按照實施方式加以描述,但并非每個實施方式僅包含一個獨立的技術(shù)方案,說明書的這種敘述方式僅僅是為清楚起見,本領(lǐng)域技術(shù)人員應(yīng)當將說明書作為一個整體,各實施例中的技術(shù)方案也可以經(jīng)適當組合,形成本領(lǐng)域技術(shù)人員可以理解的其他實施方式。