本申請(qǐng)實(shí)施例涉及數(shù)據(jù)處理,具體涉及一種數(shù)據(jù)處理方法、裝置、處理器、芯片及電子設(shè)備。
背景技術(shù):
1、數(shù)據(jù)可以使用密碼算法進(jìn)行加解密等處理,以保障數(shù)據(jù)的安全性。在利用密碼算法處理數(shù)據(jù)的過程中,可以對(duì)中間數(shù)據(jù)進(jìn)行數(shù)據(jù)混淆變換,從而增加中間數(shù)據(jù)的不可預(yù)測(cè)性,提升密碼算法的安全性。也就是說,在密碼算法執(zhí)行的密碼運(yùn)算中,密碼運(yùn)算的中間數(shù)據(jù)可以通過數(shù)據(jù)混淆變換,來增加數(shù)據(jù)的混淆度,從而加大攻擊者對(duì)數(shù)據(jù)的理解難度和預(yù)測(cè)難度,進(jìn)而增強(qiáng)密碼算法的抗攻擊能力。在此背景下,如何提供改進(jìn)的數(shù)據(jù)處理方案,以在利用密碼算法處理數(shù)據(jù)的過程,降低資源開銷,成為了本領(lǐng)域技術(shù)人員亟需解決的技術(shù)問題。
技術(shù)實(shí)現(xiàn)思路
1、有鑒于此,本申請(qǐng)實(shí)施例提供一種數(shù)據(jù)處理方法、裝置、處理器、芯片及電子設(shè)備,以在利用密碼算法處理數(shù)據(jù)的過程,降低資源開銷。
2、為實(shí)現(xiàn)上述目的,本申請(qǐng)實(shí)施例提供如下技術(shù)方案。
3、第一方面,本申請(qǐng)實(shí)施例提供一種數(shù)據(jù)處理方法,包括:
4、獲取密碼算法的輸入數(shù)據(jù),所述密碼算法為多種密碼算法中的任一種密碼算法;
5、根據(jù)所述輸入數(shù)據(jù)確定密碼算法的中間數(shù)據(jù),作為數(shù)據(jù)混淆變換的變換輸入數(shù)據(jù);
6、將所述變換輸入數(shù)據(jù)從數(shù)據(jù)混淆變換的原始有限域,映射到目標(biāo)復(fù)合域,目標(biāo)復(fù)合域?yàn)橐远邢抻驗(yàn)樽佑蚯叶嗉?jí)嵌套擴(kuò)展的復(fù)合域;其中,所述數(shù)據(jù)混淆變換的原始有限域?yàn)槎鄠€(gè)原始有限域中的任一個(gè)原始有限域;
7、在目標(biāo)復(fù)合域,對(duì)映射到目標(biāo)復(fù)合域的變換輸入數(shù)據(jù)進(jìn)行運(yùn)算,得到變換輸出數(shù)據(jù);
8、根據(jù)所述變換輸出數(shù)據(jù),確定密碼算法的輸出數(shù)據(jù)。
9、第二方面,本申請(qǐng)實(shí)施例提供一種數(shù)據(jù)處理裝置,包括:
10、輸入數(shù)據(jù)獲取模塊,用于獲取密碼算法的輸入數(shù)據(jù),所述密碼算法為多種密碼算法中的任一種密碼算法;
11、變換輸入數(shù)據(jù)確定模塊,用于根據(jù)所述輸入數(shù)據(jù)確定密碼算法的中間數(shù)據(jù),作為數(shù)據(jù)混淆變換的變換輸入數(shù)據(jù);
12、映射模塊,用于將所述變換輸入數(shù)據(jù)從數(shù)據(jù)混淆變換的原始有限域,映射到目標(biāo)復(fù)合域,目標(biāo)復(fù)合域?yàn)橐远邢抻驗(yàn)樽佑蚯叶嗉?jí)嵌套擴(kuò)展的復(fù)合域;其中,所述數(shù)據(jù)混淆變換的原始有限域?yàn)槎鄠€(gè)原始有限域中的任一個(gè)原始有限域;
13、運(yùn)算模塊,用于在目標(biāo)復(fù)合域,對(duì)映射到目標(biāo)復(fù)合域的變換輸入數(shù)據(jù)進(jìn)行運(yùn)算,得到變換輸出數(shù)據(jù);
14、輸出數(shù)據(jù)確定模塊,用于根據(jù)所述變換輸出數(shù)據(jù),確定密碼算法的輸出數(shù)據(jù)。
15、第三方面,本申請(qǐng)實(shí)施例提供一種處理器,包括如上述第二方面所述的數(shù)據(jù)處理裝置。
16、第四方面,本申請(qǐng)實(shí)施例提供一種芯片,包括如上述第二方面所述的數(shù)據(jù)處理裝置,或者,如上述第三方面所述的處理器。
17、第五方面,本申請(qǐng)實(shí)施例提供一種電子設(shè)備,包括上述第四方面所述的芯片。
18、本申請(qǐng)實(shí)施例可以在利用密碼算法處理數(shù)據(jù)的過程中,可以通過數(shù)據(jù)混淆變換來增加密碼算法的安全性,從而提升數(shù)據(jù)的安全性保護(hù)。具體的,可以根據(jù)密碼算法的輸入數(shù)據(jù)確定密碼算法的中間數(shù)據(jù),作為數(shù)據(jù)混淆變換的變換輸入數(shù)據(jù);將變換輸入數(shù)據(jù)從數(shù)據(jù)混淆變換的原始有限域,映射到目標(biāo)復(fù)合域,目標(biāo)復(fù)合域?yàn)橐远邢抻驗(yàn)樽佑蚯叶嗉?jí)嵌套擴(kuò)展的復(fù)合域;從而在目標(biāo)復(fù)合域,對(duì)映射到目標(biāo)復(fù)合域的變換輸入數(shù)據(jù)進(jìn)行數(shù)據(jù)混淆變換,得到數(shù)據(jù)混淆變換的變換輸出數(shù)據(jù);進(jìn)而,根據(jù)變換輸出數(shù)據(jù),確定密碼算法的輸出數(shù)據(jù),完成密碼算法對(duì)輸入數(shù)據(jù)的處理,得到密碼算法的輸出數(shù)據(jù)。
19、本申請(qǐng)實(shí)施例提供的方案可以適用于多種密碼算法中的任一種密碼算法,且在使用數(shù)據(jù)混淆變換來增加密碼算法的安全性的情況下,數(shù)據(jù)混淆變換的原始有限域可以是多個(gè)原始有限域中的任一個(gè)原始有限域,從而本申請(qǐng)實(shí)施例支持將變換輸入數(shù)據(jù)從多個(gè)原始有限域中的任一個(gè)原始有限域,映射到目標(biāo)復(fù)合域,實(shí)現(xiàn)任一密碼算法在任一原始有限域的數(shù)據(jù)混淆變換可以復(fù)用目標(biāo)復(fù)合域的運(yùn)算,以提升數(shù)據(jù)混淆變換的復(fù)用性,降低數(shù)據(jù)混淆變換的資源開銷。同時(shí),目標(biāo)復(fù)合域是以二元有限域?yàn)樽佑蚯叶嗉?jí)嵌套擴(kuò)展的復(fù)合域,而二元有限域?yàn)榘瑑蓚€(gè)元素的有限域,因此目標(biāo)復(fù)合域中作為子域的二元有限域的運(yùn)算較為簡(jiǎn)化(例如涉及兩個(gè)元素的運(yùn)算),從而將任一密碼算法在任一原始有限域的數(shù)據(jù)混淆變換(例如任一種密碼算法的s盒運(yùn)算或仿射變換)統(tǒng)一映射到目標(biāo)復(fù)合域下進(jìn)行運(yùn)算,不僅能夠?qū)崿F(xiàn)運(yùn)算復(fù)用,還能夠簡(jiǎn)化運(yùn)算,進(jìn)而能夠降低關(guān)鍵路徑的延時(shí)和面積開銷,降低資源開銷。
1.一種數(shù)據(jù)處理方法,其特征在于,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述多個(gè)原始有限域的元素?cái)?shù)量均為設(shè)定元素?cái)?shù)量,所述目標(biāo)復(fù)合域是以二元有限域?yàn)樽佑?,通過多級(jí)嵌套擴(kuò)展得到的元素?cái)?shù)量為設(shè)定元素?cái)?shù)量的復(fù)合域。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,還包括:設(shè)置各個(gè)原始有限域和目標(biāo)復(fù)合域的映射關(guān)系,得到多個(gè)映射關(guān)系;
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述設(shè)置各個(gè)原始有限域和目標(biāo)復(fù)合域的映射關(guān)系包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)多層有限域的約簡(jiǎn)
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述原始有限域采用多項(xiàng)式基,所述目標(biāo)復(fù)合域采用正規(guī)基;所述根據(jù)下一層有限域的約簡(jiǎn)多項(xiàng)式的根,建立上一層有限域與下一層有限域之間的映射關(guān)系,得到上一層有限域與下一層有限域間的層間映射關(guān)系包括:
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述原始有限域不為復(fù)合域;所述基于原始有限域逐層的進(jìn)行直接子域分解,直至分解到二元有限域包括:
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,所述原始有限域包括gf(28),所述目標(biāo)復(fù)合域包括gf(((22)2)2);所述將原始有限域分解為原始有限域的直接子域的復(fù)合域包括:
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述層間映射關(guān)系包括:根據(jù)第一約簡(jiǎn)多項(xiàng)式的根所確定的gf(28)與gf((24)2)的第一映射關(guān)系,根據(jù)第二約簡(jiǎn)多項(xiàng)式的根所確定的gf(24)與gf((22)2)的第二映射關(guān)系,根據(jù)第三約簡(jiǎn)多
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述第一約簡(jiǎn)多項(xiàng)式表示為y2+τy+v,y為第一約簡(jiǎn)多項(xiàng)式的代數(shù)變量,τ和v為第一約簡(jiǎn)多項(xiàng)式中的系數(shù);所述第二約簡(jiǎn)多項(xiàng)式表示為z2+αz+β,z為第二約簡(jiǎn)多項(xiàng)式的代數(shù)變量,α和β為第二約簡(jiǎn)多項(xiàng)式中的系數(shù);所述第三約簡(jiǎn)多項(xiàng)式表示為ω2+ω+1,ω為第三約簡(jiǎn)多項(xiàng)式的變量;
11.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述原始有限域?yàn)閺?fù)合域;所述基于原始有限域逐層的進(jìn)行直接子域分解,直至分解到二元有限域包括:
12.根據(jù)權(quán)利要求11所述的方法,其特征在于,所述原始有限域包括gf((24)2),所述目標(biāo)復(fù)合域包括gf(((22)2)2);所述將原始有限域分解為原始有限域的多組直接子域包括:
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述層間映射關(guān)系包括:根據(jù)兩個(gè)第二約簡(jiǎn)多項(xiàng)式的根,分別確定的兩組gf(24)與gf((22)2)分別的第二映射關(guān)系,以及根據(jù)第三約簡(jiǎn)多項(xiàng)式的根所確定的gf(22)與gf((2)2)的第三映射關(guān)系;
14.根據(jù)權(quán)利要求13所述的方法,其特征在于,所述兩個(gè)第二約簡(jiǎn)多項(xiàng)式分別表示為:z2+α0z+β0、z2+α1z+β1,其中,z為第二約簡(jiǎn)多項(xiàng)式的代數(shù)變量,α0和β0為一組gf(24)分解的gf((22)2)對(duì)應(yīng)的第二約簡(jiǎn)多項(xiàng)式中的系數(shù),α1和β1為另一組gf(24)分解的gf((22)2)對(duì)應(yīng)的第二約簡(jiǎn)多項(xiàng)式中的系數(shù);
15.根據(jù)權(quán)利要求4-14任一項(xiàng)所述的方法,其特征在于,所述數(shù)據(jù)混淆變換包括密碼算法的s盒運(yùn)算,或,密碼算法加速指令的仿射變換;針對(duì)任一原始有限域,不同類型的密碼算法的s盒或仿射變換,在該原始有限域與目標(biāo)復(fù)合域的映射關(guān)系不同;
16.根據(jù)權(quán)利要求3-14任一項(xiàng)所述的方法,其特征在于,所述根據(jù)所述變換輸出數(shù)據(jù),確定密碼算法的輸出數(shù)據(jù)包括:
17.根據(jù)權(quán)利要求16所述的方法,其特征在于,所述映射關(guān)系為映射矩陣;所述逆映射關(guān)系為逆映射矩陣,映射矩陣和逆映射矩陣的映射方向相逆;所述數(shù)據(jù)混淆變換包括密碼算法的s盒運(yùn)算或密碼算法加速指令的仿射變換;其中,不同類型的密碼算法的s盒或仿射變換的映射矩陣不同,不同類型的密碼算法的s盒或仿射變換的逆映射矩陣不同。
18.根據(jù)權(quán)利要求17所述的方法,其特征在于,所述從多個(gè)映射關(guān)系中,選擇數(shù)據(jù)混淆變換的原始有限域和目標(biāo)復(fù)合域的映射關(guān)系包括:
19.根據(jù)權(quán)利要求18所述的方法,其特征在于,所述使用輸入映射變換矩陣與原始有限域的變換輸入數(shù)據(jù)進(jìn)行矩陣乘運(yùn)算包括:
20.根據(jù)權(quán)利要求18-19任一項(xiàng)所述的方法,其特征在于,所述對(duì)映射到目標(biāo)復(fù)合域的變換輸入數(shù)據(jù)進(jìn)行運(yùn)算包括:
21.根據(jù)權(quán)利要求20所述的方法,其特征在于,所述從多個(gè)逆映射關(guān)系中,選擇數(shù)據(jù)混淆變換的原始有限域和目標(biāo)復(fù)合域的逆映射關(guān)系包括:
22.根據(jù)權(quán)利要求21所述的方法,其特征在于,所述使用輸出映射變換矩陣與乘法求逆結(jié)果進(jìn)行矩陣乘運(yùn)算包括:
23.根據(jù)權(quán)利要求22所述的方法,其特征在于,各類型的密碼算法和仿射變換復(fù)用矩陣乘運(yùn)算的邏輯和向量加運(yùn)算的邏輯;
24.一種數(shù)據(jù)處理裝置,其特征在于,包括:
25.根據(jù)權(quán)利要求24所述的裝置,其特征在于,所述映射模塊,用于將所述變換輸入數(shù)據(jù)從數(shù)據(jù)混淆變換的原始有限域,映射到目標(biāo)復(fù)合域包括:
26.根據(jù)權(quán)利要求25所述的裝置,其特征在于,所述映射關(guān)系為映射矩陣;所述逆映射關(guān)系為逆映射矩陣,映射矩陣和逆映射矩陣的映射方向相逆;所述數(shù)據(jù)混淆變換包括密碼算法的s盒運(yùn)算或密碼算法加速指令的仿射變換;其中,不同類型的密碼算法的s盒或仿射變換的映射矩陣不同,不同類型的密碼算法的s盒或仿射變換的逆映射矩陣不同。
27.根據(jù)權(quán)利要求26所述的裝置,其特征在于,所述映射模塊包括:
28.根據(jù)權(quán)利要求27所述的裝置,其特征在于,所述輸入映射生成電路,還用于提供多個(gè)輸入映射變換向量,所述多個(gè)輸入映射變換向量包括多種類型的密碼算法的s盒或仿射變換的輸入映射變換向量;
29.根據(jù)權(quán)利要求25-28任一項(xiàng)所述的裝置,其特征在于,所述運(yùn)算模塊包括:乘法求逆單元,用于對(duì)映射到目標(biāo)復(fù)合域的變換輸入數(shù)據(jù)進(jìn)行統(tǒng)一的乘法求逆操作,得到乘法求逆結(jié)果,作為變換輸出數(shù)據(jù)。
30.根據(jù)權(quán)利要求29所述的裝置,其特征在于,所述逆映射模塊包括:
31.根據(jù)權(quán)利要求30所述的裝置,其特征在于,所述輸出映射生成電路,還用于提供多個(gè)輸出映射變換向量,所述多個(gè)輸出映射變換向量包括多種類型的密碼算法的s盒或仿射變換的輸出映射變換向量;
32.根據(jù)權(quán)利要求31所述的裝置,其特征在于,所述逆映射模塊還包括:第三矩陣乘法器、以及第五多路選擇器;
33.根據(jù)權(quán)利要求32所述的裝置,其特征在于,所述第五多路選擇器在密碼算法的s盒運(yùn)算下,選擇乘法求逆單元的乘法求逆結(jié)果并導(dǎo)入第二矩陣乘法器,以便乘法求逆單元的乘法求逆結(jié)果與第三多路選擇器選擇的輸出映射變換矩陣,在第二矩陣乘法器進(jìn)行矩陣乘運(yùn)算,得到當(dāng)前密碼算法的s盒運(yùn)算相應(yīng)的輸出矩陣乘運(yùn)算結(jié)果;
34.根據(jù)權(quán)利要求32或33所述的裝置,其特征在于,所述第五多路選擇器,還用于針對(duì)密碼算法加速指令的仿射正變換,選擇原始有限域的變換輸入數(shù)據(jù),并導(dǎo)入第二矩陣乘法器;
35.一種處理器,其特征在于,包括如權(quán)利要求24-34任一項(xiàng)所述的數(shù)據(jù)處理裝置。
36.一種芯片,其特征在于,包括如權(quán)利要求24-34任一項(xiàng)所述的數(shù)據(jù)處理裝置,或者,如權(quán)利要求35所述的處理器。
37.一種電子設(shè)備,其特征在于,包括如權(quán)利要求36所述的芯片。