本申請涉及數(shù)據(jù)脫敏,具體而言,涉及一種數(shù)據(jù)脫敏方法、裝置、介質(zhì)和系統(tǒng)。
背景技術(shù):
1、為實現(xiàn)數(shù)據(jù)的可用不可見,脫敏技術(shù)的應用顯得尤為重要。數(shù)據(jù)脫敏廣泛用于開發(fā)測試、數(shù)據(jù)提供、數(shù)據(jù)分析、生產(chǎn)應用、數(shù)據(jù)交換、合規(guī)要求等場景。但傳統(tǒng)脫敏技術(shù)(如信息截斷、掩碼屏蔽、局部混淆、顯示隱藏、偏移取整、數(shù)據(jù)加密)會破壞數(shù)據(jù)內(nèi)在格式,使得無法適配數(shù)據(jù)庫或無法通過參數(shù)校驗邏輯。
2、另外現(xiàn)有方案的脫敏經(jīng)常使用一種加密算法,從而導致脫敏結(jié)果安全性較差,依舊容易造成數(shù)據(jù)泄露。
技術(shù)實現(xiàn)思路
1、本申請的主要目的在于提供一種數(shù)據(jù)脫敏方法、裝置、介質(zhì)和系統(tǒng),以至少解決現(xiàn)有方案的脫敏經(jīng)常使用一種加密算法,從而導致脫敏結(jié)果安全性較差,依舊容易造成數(shù)據(jù)泄露的問題。
2、為了實現(xiàn)上述目的,根據(jù)本申請的一個方面,提供了一種數(shù)據(jù)脫敏方法,該方法包括:
3、獲取待脫敏數(shù)據(jù),并以映射關(guān)系的方式,對所述待脫敏數(shù)據(jù)的數(shù)組進行分類,得到數(shù)組類別,所述數(shù)組類別包括地址、身份證號、姓名和銀行卡號;
4、獲取偽隨機值,并采用國密算法sm3對所述偽隨機值進行處理,得到密鑰,并以映射關(guān)系的方式,基于所述數(shù)組類別生成隨機因子;
5、采用ff3加密算法和國密算法sm4,對所述隨機因子、所述密鑰和所述待脫敏數(shù)據(jù)的數(shù)組進行脫敏處理,得到所述脫敏結(jié)果。
6、可選地,獲取偽隨機值,包括:
7、以映射關(guān)系的方式,基于系統(tǒng)隨機參數(shù)生成種子值,所述系統(tǒng)隨機參數(shù)包括系統(tǒng)的運行時間,所述種子值為隨機數(shù)值;
8、采用偽隨機數(shù)生成器prn對所述種子值進行處理,得到所述偽隨機值。
9、可選地,采用ff3加密算法和國密算法sm4,對所述隨機因子、所述密鑰和所述待脫敏數(shù)據(jù)的數(shù)組進行脫敏處理,得到脫敏結(jié)果,包括:
10、采用所述ff3加密算法對所述隨機因子進行歸一化處理,得到歸一化結(jié)果;
11、采用所述國密算法sm4對所述密鑰、所述歸一化結(jié)果進行處理,得到中間值;
12、根據(jù)所述待脫敏數(shù)據(jù)的數(shù)組和所述中間值,確定所述脫敏結(jié)果。
13、可選地,采用所述國密算法sm4對所述密鑰、所述歸一化結(jié)果進行處理,得到中間值,包括:
14、以映射關(guān)系的方式,基于所述數(shù)組類別生成唯一標識;
15、采用所述國密算法sm4,基于所述密鑰的單位逆置字符串,對所述歸一化結(jié)果的單位逆置字符串和所述唯一標識進行逐比特異或處理,得到異或處理結(jié)果;
16、確定所述中間值為所述異或處理結(jié)果的單位逆置字符串。
17、可選地,根據(jù)所述待脫敏數(shù)據(jù)的數(shù)組和所述中間值,確定所述脫敏結(jié)果,包括:
18、將大小為目標單位逆置字符串的radix進制串轉(zhuǎn)化為預設進制數(shù)值,所述目標單位逆置字符串為所述待脫敏數(shù)據(jù)的數(shù)組中的至少部分的單位逆置字符串;
19、對所述預設進制數(shù)值與所述中間值的和值進行歸一化處理,得到所述脫敏結(jié)果。
20、可選地,以映射關(guān)系的方式,對所述待脫敏數(shù)據(jù)的數(shù)組進行分類,得到數(shù)組類別,包括:
21、以映射關(guān)系的方式,確定與所述待脫敏數(shù)據(jù)的數(shù)組對應的正則表達式;
22、以映射關(guān)系的方式,根據(jù)所述對應的正則表達式確定所述數(shù)組類別。
23、可選地,在采用ff3加密算法和國密算法sm4,對所述隨機因子、所述密鑰和所述待脫敏數(shù)據(jù)的數(shù)組進行脫敏處理,得到脫敏結(jié)果之后,所述方法還包括,
24、在確定需要還原數(shù)據(jù)的情況下,執(zhí)行脫敏步驟的逆操作,以得到所述待脫敏數(shù)據(jù),所述脫敏步驟表征采用所述ff3加密算法、所述國密算法sm3和所述國密算法sm4,基于所述數(shù)組類別對所述待脫敏數(shù)據(jù)的數(shù)組進行脫敏處理,得到所述脫敏結(jié)果。
25、根據(jù)本申請的另一方面,提供了一種數(shù)據(jù)脫敏裝置,包括:
26、第一獲取單元,用于獲取待脫敏數(shù)據(jù),并以映射關(guān)系的方式,對所述待脫敏數(shù)據(jù)的數(shù)組進行分類,得到數(shù)組類別,所述數(shù)組類別包括地址、身份證號、姓名和銀行卡號;
27、第二獲取單元,用于獲取偽隨機值,并采用國密算法sm3對所述偽隨機值進行處理,得到密鑰,并以映射關(guān)系的方式,基于所述數(shù)組類別生成隨機因子;
28、第一處理單元,用于采用ff3加密算法和國密算法sm4,對所述隨機因子、所述密鑰和所述待脫敏數(shù)據(jù)的數(shù)組進行脫敏處理,得到所述脫敏結(jié)果。
29、根據(jù)本申請的另一方面,提供了一種計算機可讀存儲介質(zhì),所述計算機可讀存儲介質(zhì)包括存儲的程序,其中,在所述程序運行時控制所述計算機可讀存儲介質(zhì)所在設備執(zhí)行任意一種所述的方法。
30、根據(jù)本申請的另一方面,提供了一種數(shù)據(jù)脫敏系統(tǒng),該系統(tǒng)包括:一個或多個處理器,存儲器,以及一個或多個程序,其中,所述一個或多個程序被存儲在所述存儲器中,并且被配置為由所述一個或多個處理器執(zhí)行,所述一個或多個程序包括用于執(zhí)行任意一種所述的方法。
31、應用本申請的技術(shù)方案,通過將待脫敏數(shù)據(jù)根據(jù)其屬性(如地址、身份證號、姓名和銀行卡號)進行分類,以確保脫敏數(shù)據(jù)在保留其原有格式和結(jié)構(gòu)的同時,最大限度地保護數(shù)據(jù)的隱私性,通過基于國密算法sm3處理偽隨機值來生成密鑰,這一過程提供了額外的安全保障,利用ff3加密算法和國密算法sm4進行脫敏處理,既能保持數(shù)據(jù)的格式一致性,又能保證加密強度,滿足數(shù)據(jù)安全的高要求,相比現(xiàn)有方案提高了安全性,從而解決了現(xiàn)有方案的脫敏經(jīng)常使用一種加密算法,從而導致脫敏結(jié)果安全性較差,依舊容易造成數(shù)據(jù)泄露的問題。
1.一種數(shù)據(jù)脫敏方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,獲取偽隨機值,包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,采用ff3加密算法和國密算法sm4,對所述隨機因子、所述密鑰和所述待脫敏數(shù)據(jù)的數(shù)組進行脫敏處理,得到脫敏結(jié)果,包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,采用所述國密算法sm4對所述密鑰、所述歸一化結(jié)果進行處理,得到中間值,包括:
5.根據(jù)權(quán)利要求3所述的方法,其特征在于,根據(jù)所述待脫敏數(shù)據(jù)的數(shù)組和所述中間值,確定所述脫敏結(jié)果,包括:
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,以映射關(guān)系的方式,對所述待脫敏數(shù)據(jù)的數(shù)組進行分類,得到數(shù)組類別,包括:
7.根據(jù)權(quán)利要求1至6中任一項所述的方法,其特征在于,在采用ff3加密算法和國密算法sm4,對所述隨機因子、所述密鑰和所述待脫敏數(shù)據(jù)的數(shù)組進行脫敏處理,得到脫敏結(jié)果之后,所述方法還包括,
8.一種數(shù)據(jù)脫敏裝置,其特征在于,包括:
9.一種計算機可讀存儲介質(zhì),其特征在于,所述計算機可讀存儲介質(zhì)包括存儲的程序,其中,在所述程序運行時控制所述計算機可讀存儲介質(zhì)所在設備執(zhí)行權(quán)利要求1至7中任意一項所述的方法。
10.一種數(shù)據(jù)脫敏系統(tǒng),其特征在于,包括:一個或多個處理器,存儲器,以及一個或多個程序,其中,所述一個或多個程序被存儲在所述存儲器中,并且被配置為由所述一個或多個處理器執(zhí)行,所述一個或多個程序包括用于執(zhí)行權(quán)利要求1至7中任意一項所述的方法。