本發(fā)明涉及數(shù)據(jù)傳輸領(lǐng)域,具體地,涉及一種用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法、系統(tǒng)及介質(zhì)。
背景技術(shù):
1、隨著信息化社會(huì)的發(fā)展,數(shù)據(jù)已經(jīng)成為各類應(yīng)用系統(tǒng)中的核心資產(chǎn)。在數(shù)據(jù)的存儲(chǔ)、傳輸和處理過程中,如何有效地保護(hù)數(shù)據(jù)的隱私和安全,已成為信息安全領(lǐng)域的重要問題。傳統(tǒng)的數(shù)據(jù)保護(hù)技術(shù)主要包括數(shù)據(jù)加密、數(shù)據(jù)脫敏、數(shù)據(jù)訪問控制等。雖然這些技術(shù)在某些程度上可以保護(hù)數(shù)據(jù),但它們通常存在一些不足之處,加解密效率低,脫敏策略單一,安全性不足。常見的加密算法有對(duì)稱加密算法(如aes、des等)和非對(duì)稱加密算法(如rsa、ecc等)。當(dāng)前主流的技術(shù)是使用現(xiàn)有加密庫、雙方協(xié)商好加密算法,通過固定密鑰進(jìn)行單一算法的加解密。
2、但是,現(xiàn)有技術(shù)具有以下缺點(diǎn):1.開發(fā)和維護(hù)成本高、需要適配不同的平臺(tái)端;2.算法模式單一,無法動(dòng)態(tài)支持多種算法模式;3.固定密鑰,所有客戶端使用同一個(gè)密鑰加密;4.脫敏策略單一。
技術(shù)實(shí)現(xiàn)思路
1、針對(duì)現(xiàn)有技術(shù)中的缺陷,本發(fā)明的目的是提供一種用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法,支持跨端,以供多端實(shí)現(xiàn)統(tǒng)一調(diào)用加解密和脫敏的功能。
2、為實(shí)現(xiàn)上述技術(shù)效果,本發(fā)明采用如下所述技術(shù)方案:
3、根據(jù)本發(fā)明的第一個(gè)方面,提供一種用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法,具體包括以下步驟:
4、步驟s1:前端生成一個(gè)32位的隨機(jī)密碼用于加密和解密請(qǐng)求和響應(yīng)數(shù)據(jù),所述密碼由大小寫字母和數(shù)字組成;所述密碼存儲(chǔ)在會(huì)話中并且僅在當(dāng)前會(huì)話中有效;
5、步驟s2:前端使用后端提供的rsa公鑰加密32位隨機(jī)密碼,得到加密密鑰;
6、步驟s3:將加密后的密鑰放入http請(qǐng)求頭中,字段名為x-jmc-secret,前端調(diào)用后端接口,將該請(qǐng)求頭傳遞給后端;同時(shí),前端在請(qǐng)求頭中添加x-jmc-timestamp字段,用于記錄請(qǐng)求的時(shí)間戳;此外,在請(qǐng)求頭中添加x-jmc-encrypted字段,用于指示是否啟用了加密,若x-jmc-encrypted=1,則指示進(jìn)行加密;若x-jmc-encrypted=0,則指示不加密;
7、步驟s4:后端接收到請(qǐng)求后,使用rsa私鑰解密x-jmc-secret字段中的密鑰,恢復(fù)出前端生成的32位隨機(jī)密碼;
8、步驟s5:后端對(duì)請(qǐng)求體數(shù)據(jù)進(jìn)行解密,恢復(fù)出明文數(shù)據(jù);所述請(qǐng)求體數(shù)據(jù)是指請(qǐng)求中傳遞的敏感信息;請(qǐng)求體的加密采用aes_gcm算法;所述aes_gcm加密模式提供了身份驗(yàn)證功能;
9、步驟s6:后端在處理完請(qǐng)求并生成響應(yīng)數(shù)據(jù)后,再次使用32位隨機(jī)密碼對(duì)響應(yīng)體進(jìn)行加密,確保返回給前端的數(shù)據(jù)在傳輸過程中依然處于加密狀態(tài);返回的數(shù)據(jù)加密后,在響應(yīng)頭中加入x-jmc-encrypted=1,指示前端該響應(yīng)內(nèi)容是加密的,需進(jìn)行解密操作;
10、步驟s7:前端接收到加密的響應(yīng)數(shù)據(jù)后,使用會(huì)話中保存的32位隨機(jī)密碼,對(duì)返回的加密數(shù)據(jù)進(jìn)行解密,還原出原始的響應(yīng)內(nèi)容;解密后,數(shù)據(jù)可以直接在頁面中展示或進(jìn)行進(jìn)一步處理;
11、步驟s8:對(duì)于返回的敏感數(shù)據(jù),前端根據(jù)業(yè)務(wù)需求進(jìn)行脫敏處理;在展示時(shí),使用掩碼替換敏感信息,確保敏感信息不會(huì)直接泄露給終端用戶;
12、步驟s9:前端通過接口獲取白名單,確定需要加密上傳數(shù)據(jù)和需要進(jìn)行脫敏處理的端口。
13、優(yōu)選地,步驟s8中,脫敏規(guī)則可以根據(jù)不同的業(yè)務(wù)場(chǎng)景靈活配置,針對(duì)不同的敏感信息采用不同的脫敏策略。
14、優(yōu)選地,步驟s9中的白名單可以通過后臺(tái)隨時(shí)調(diào)整。
15、根據(jù)本發(fā)明的第二個(gè)方面,提供一種用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的系統(tǒng),用于實(shí)施上述的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法。
16、根據(jù)本發(fā)明的第三個(gè)方面,提供一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,該程序被處理器執(zhí)行,以用于實(shí)現(xiàn)上述的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法。
17、與現(xiàn)有技術(shù)相比,本發(fā)明具有如下的有益效果:
18、1、本發(fā)明提供的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法、系統(tǒng)及介質(zhì)支持多端(如web、移動(dòng)端等)統(tǒng)一調(diào)用加解密及脫敏功能,避免了在不同平臺(tái)上重復(fù)開發(fā),提高了開發(fā)效率。
19、2、本發(fā)明提供的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法、系統(tǒng)及介質(zhì)通過結(jié)合對(duì)稱加密(aes_gcm)和非對(duì)稱加密(rsa),確保了密鑰和數(shù)據(jù)的安全性。隨機(jī)生成的密鑰以及密鑰動(dòng)態(tài)生成和傳輸?shù)姆绞接行Х乐姑荑€泄露。
20、3、本發(fā)明提供的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法提供了靈活的脫敏策略,脫敏規(guī)則能根據(jù)不同業(yè)務(wù)場(chǎng)景動(dòng)態(tài)調(diào)整,確保敏感信息在傳輸和展示時(shí)的安全性。
1.一種用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法,其特征在于,具體包括以下步驟:
2.根據(jù)權(quán)利要求1所述的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法,其特征在于,步驟s8中,脫敏規(guī)則可以根據(jù)不同的業(yè)務(wù)場(chǎng)景靈活配置,針對(duì)不同的敏感信息采用不同的脫敏策略。
3.根據(jù)權(quán)利要求1所述的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法,其特征在于,步驟s9中的白名單可以通過后臺(tái)隨時(shí)調(diào)整。
4.一種用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的系統(tǒng),其特征在于,用于實(shí)施權(quán)利要求1-3任一權(quán)利要求所述的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法。
5.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,其特征在于,該程序被處理器執(zhí)行,以用于實(shí)現(xiàn)權(quán)利要求1-3任一項(xiàng)所述的用于跨端實(shí)現(xiàn)數(shù)據(jù)統(tǒng)一加解密及脫敏的方法。