加解密方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及通信技術(shù)領(lǐng)域,更具體地說,涉及加解密方法和裝置。
【背景技術(shù)】
[0002]傳統(tǒng)的加解密技術(shù)中,公鑰{p,a}(其中,p可稱為第一公鑰參數(shù),a可稱為第二 公鑰參數(shù),并且,P為素?cái)?shù))和私鑰成對出現(xiàn),一把私鑰處理所有涉及解密的應(yīng)用,因而存在 較高的暴露風(fēng)險(xiǎn)。
【發(fā)明內(nèi)容】
[0003] 有鑒于此,本發(fā)明實(shí)施例的目的在于提供加解密方法和裝置,以解決一把私鑰處 理所有涉及解密的應(yīng)用,因而存在較高的暴露風(fēng)險(xiǎn)。
[0004] 為實(shí)現(xiàn)上述目的,本發(fā)明實(shí)施例提供如下技術(shù)方案:
[0005] 根據(jù)本發(fā)明實(shí)施例的第一方面,提供一種加密方法,基于預(yù)先生成的原始公鑰 {p,a}、原始私鑰,以及第1至第m級(jí)私鑰,其中,所述原始私鑰為第0級(jí)私鑰,第i級(jí)私鑰 由第i-1級(jí)私鑰生成,1 <i<m, 1 <m,m為正整數(shù);所述p為第一公鑰參數(shù),所述a為第 二公鑰參數(shù);
[0006] 所述方法包括:
[0007]對原始明文進(jìn)行預(yù)處理,得到長度為N/^的j級(jí)明文,其中,N=2n,n為大于等于m的整數(shù),0 <j<m,所述N為系統(tǒng)參數(shù)中的第一系統(tǒng)參數(shù);
[0008]使用所述p和所述a對所述j級(jí)明文進(jìn)行加密計(jì)算,得到j(luò)級(jí)密文;
[0009] 輸出所述j級(jí)密文,以便解密方使用第h級(jí)私鑰進(jìn)行解密得到與之對應(yīng)的明 文,j。
[0010]結(jié)合第一方面,在第一種可能的實(shí)現(xiàn)方式中,所述系統(tǒng)參數(shù)還包括第二系統(tǒng)參數(shù)n和第三系統(tǒng)參數(shù)y,其中,^2#,所述原始公鑰和原始私鑰的生成過程包括: 進(jìn)行結(jié)式計(jì)算,直至所述結(jié)式為素?cái)?shù);響應(yīng)于所述結(jié)式為素?cái)?shù),生成所述原始公鑰和所述原 始私鑰;所述進(jìn)行結(jié)式計(jì)算包括:確定第一多項(xiàng)式,所述第一多項(xiàng)式表示為F(X),所述F(X) 為N次不可約多項(xiàng)式,并且F(x)eI[x],所述I[x]表示整系數(shù)多項(xiàng)式全體的集合;從多項(xiàng) 式無窮范數(shù)小于u、次數(shù)不超過N的多項(xiàng)式集合中,隨機(jī)選取一個(gè)多項(xiàng)式,將隨機(jī)選取的多 項(xiàng)式賦值給第二多項(xiàng)式,所述第二多項(xiàng)式表示為S(x);將l+2S(x)賦值給第三多項(xiàng)式,所述 第三多項(xiàng)式表示為G(x);計(jì)算所述G(x)與F(x)的結(jié)式,將所述結(jié)式賦值給所述p;所述生 成所述原始公鑰和所述原始私鑰包括:計(jì)算Gjx)與F(x)在模p域上的最大公因式,所述 最大公式表示為% (x),所述& (x)表示對應(yīng)第0級(jí)的第一密鑰多項(xiàng)式,下標(biāo)0表示第0級(jí), G0(x)=G(x);將所述DQ(x)的模p根賦值給所述a;計(jì)算對應(yīng)第0級(jí)的第二密鑰多項(xiàng)式,所 述對應(yīng)第0級(jí)的第二密鑰多項(xiàng)式表示為Zjx),其中,Zjx)GI[x]并滿足ZjWGjxkp; Zjx)的各次系數(shù)分別為if 所述(0)表示第0級(jí);計(jì)算對應(yīng)第0級(jí)的第三密 鑰多項(xiàng)式,所述對應(yīng)第〇級(jí)的第三密鑰多項(xiàng)式表示為仏(X),所述仏(X)的各次系數(shù)分別為cur1,…,把:丨,并且
所述主私鑰包含所述 Dl?)〇f))〇M) X^r| , I〇
[0011] 結(jié)合第一方面第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,所述第i級(jí) 私鑰的生成過程包括:計(jì)算對應(yīng)第i級(jí)的第一密鑰多項(xiàng)式,所述對應(yīng)第i級(jí)的第一密鑰多項(xiàng) 式表示為Gi(X),所述Gi(X)的次數(shù)小于N/21,并i
計(jì)算對應(yīng)第i級(jí)的第二密鑰多項(xiàng)式,所述對應(yīng)第i級(jí)的第二密鑰多項(xiàng)式表示為Zi(x),
,并且,
;400的各次系數(shù)分別為zW,g),zW, 所述⑴表示第i級(jí);計(jì)算對應(yīng)第i級(jí)的第三密鑰多項(xiàng)式,所述對應(yīng)第i級(jí)的第三 密鑰多項(xiàng)式表示為&〇〇 ;所述的各次系數(shù)分別為被并且,
,所述⑴表示第i級(jí);所述第i級(jí)私 鑰包含所述祝?>
[0012] 結(jié)合第一方面至第一方面第二種可能的實(shí)現(xiàn)方式中的任一項(xiàng),在第三種可能的實(shí) 現(xiàn)方式中,所述使用所述P和所述a對所述j級(jí)明文進(jìn)行加密計(jì)算,得到j(luò)級(jí)密文包括: 從多項(xiàng)式無窮范數(shù)小于、次數(shù)不超過N/^的多項(xiàng)式集合中,隨機(jī)選取奇數(shù)次項(xiàng)的系數(shù) 不全為零的多項(xiàng)式作為第一加密多項(xiàng)式R(x);將所述長度為N/^_的明文對應(yīng)的明文多項(xiàng) 式與2R(x)相加,得到第二加密多項(xiàng)式;所述明文多項(xiàng)式為各次系數(shù)取0或1,并且最高次 數(shù)不超過N/^_-l的多項(xiàng)式;所述第二加密多項(xiàng)式表示為C(x);將^^?作為自變量代入所述 C(x),得到變量值,并計(jì)算所述變量值除以p的余數(shù),所述余數(shù)為所述j級(jí)密文。
[0013] 根據(jù)本發(fā)明實(shí)施例的第二方面,提供一種解密方法,基于預(yù)先生成的原始公鑰 {p,a}、原始私鑰,以及第1至第m級(jí)私鑰,其中,原始私鑰為第0級(jí)私鑰,第i級(jí)私鑰由第 i-1級(jí)私鑰生成,1 <i<m,1 <m,m為正整數(shù);所述解密方法包括:對經(jīng)過j級(jí)加密處理 的密文,使用第h級(jí)私鑰進(jìn)行解密,j;輸出解密得到的明文。
[0014] 結(jié)合第二方面,在第一種可能的實(shí)現(xiàn)方式中,所述經(jīng)過j級(jí)加密處理的密文為一 個(gè)數(shù)值,所述數(shù)值表示為C;所述使用第h級(jí)私鑰進(jìn)行解密包括:使用公式Cu)a- ,、 A/ p」(mod2)求出所述明文中的第a個(gè)元素,所述cwa表示長度為j的密文向量中的第a個(gè) 元素,所述密文向量中的第〇個(gè)元素為c,其他元素為0,所述K(h)a表示所述第h級(jí)私鑰所包 含的第a個(gè)元素,-1,所述「*」表示最近取整。
[0015] 根據(jù)本發(fā)明實(shí)施例的第三方面,提供一種加密裝置,基于預(yù)先生成的原始公鑰 {p,a}、原始私鑰,以及第1至第m級(jí)私鑰,其中,所述原始私鑰為第0級(jí)私鑰,第i級(jí)私鑰 由第i-1級(jí)私鑰生成,1 <i<m, 1 <m,m為正整數(shù);所述p為第一公鑰參數(shù),所述a為第 二公鑰參數(shù);所述加密裝置包括:
[0016] 明文預(yù)處理單元,用于對原始明文進(jìn)行預(yù)處理,得到長度為N/^_的j級(jí)明文;其 中,N=2n,n為大于等于m的整數(shù),0彡j彡m,所述N為系統(tǒng)參數(shù)中的第一系統(tǒng)參數(shù);
[0017] 密文計(jì)算單元,用于使用所述p和所述a對所述j級(jí)明文進(jìn)行加密計(jì)算,得到j(luò) 級(jí)密文;
[0018] 密文輸出單元,用于輸出所述j級(jí)密文,以便解密方使用第h級(jí)私鑰進(jìn)行解密得到 與之對應(yīng)的明文,j。
[0019] 結(jié)合第三方面,在第一種可能的實(shí)現(xiàn)方式中,還包括:結(jié)式計(jì)算單元,用于進(jìn)行結(jié) 式計(jì)算,直至結(jié)式為素?cái)?shù);主公私鑰生成單元,用于響應(yīng)于所述結(jié)式為素?cái)?shù),生成所述原始 公鑰和所述原始私鑰;其中,所述結(jié)式計(jì)算包括:確定第一多項(xiàng)式,所述第一多項(xiàng)式表示為 F(x),所述F(x)為N次不可約多項(xiàng)式,并且F(x)eI[x],所述I[x]表示整系數(shù)多項(xiàng)式全體 的集合;從多項(xiàng)式無窮范數(shù)小于u、次數(shù)不超過N的多項(xiàng)式集合中,隨機(jī)選取一個(gè)多項(xiàng)式, 將隨機(jī)選取的多項(xiàng)式賦值給第二多項(xiàng)式,所述第二多項(xiàng)式表示為S(x);將l+2S(x)賦值給 第三多項(xiàng)式,所述第三多項(xiàng)式表示為G(x);計(jì)算所述G(x)與F(x)的結(jié)式,將所述結(jié)式賦值 給所述P;所述生成所述原始公鑰和所述原始私鑰包括:計(jì)算Gjx)與F(x)在模p域上的 最大公因式,所述最大公式表示為% (x),所述& (x)表示對應(yīng)第0級(jí)的第一密鑰多項(xiàng)式,下 標(biāo)〇表示第〇級(jí),;將所述Djx)的模p根賦值給所述a;計(jì)算對應(yīng)第0級(jí)的第 二密鑰多項(xiàng)式,所述對應(yīng)第〇級(jí)的第二密鑰多項(xiàng)式表示為A(x),其中,& (x)eI[x]并滿足 Z0(x)G〇(x)=p;Z〇(x)的各次系數(shù)分另ij為,(0)表示第0級(jí);計(jì)算對應(yīng)第0級(jí)的 第三密鑰多項(xiàng)式,所述對應(yīng)第0級(jí)的第三密鑰多項(xiàng)式表示為仏(x),所述仏(x)的各次系數(shù) 分別為i?并且:
;所述主私鑰包 含所述fif', 卻\"
[0020] 結(jié)合第二方面第一種可能的實(shí)現(xiàn)方式,在第二種可能的實(shí)現(xiàn)方式中,還包括密鑰 衍生單元,用于:計(jì)算對應(yīng)第i級(jí)的第一密鑰多項(xiàng)式,所述對應(yīng)第i級(jí)的第一密鑰多項(xiàng)式 表示為Gi(X),所述Gi(x)的次數(shù)小于N/21,并且
計(jì)算對應(yīng)第i級(jí)的第二密鑰多項(xiàng)式,所述對應(yīng)第i級(jí)的第二密鑰多項(xiàng)式表示為Zi(x),
,并且,
.Zi(x)的各次系數(shù)分別為 1 , I*, 所述⑴表示第i級(jí);計(jì)算對應(yīng)第i級(jí)的第三密鑰多項(xiàng)式,所述對應(yīng)第i級(jí)的第 三密鑰多項(xiàng)式表示為& (x);所述& (x)的各次系數(shù)分別為,并 且,
,所述第i級(jí)私鑰包含所述
[0021] 根據(jù)本發(fā)明實(shí)施例的第四方面,提供一種解密裝置,基于預(yù)先生成的原始公鑰 {p,a}、原始私鑰,以及第1至第m級(jí)私鑰,其中,原始私鑰為第0級(jí)私鑰,第i級(jí)私鑰由第 i-1級(jí)私鑰生成,1 <i<m, 1 <m,m為正整數(shù);所述解密裝置包括:
[0022] 密文解密單元,用于對經(jīng)過j級(jí)加密處理的密文,使用第h級(jí)私鑰進(jìn)行解密, 0彡h彡j;
[0023] 輸出單元,用于輸出解密得到的明文。
[0024] 可見,在本發(fā)明實(shí)施例中,由第i_l級(jí)私鑰(高級(jí)別私鑰)可生成第i級(jí)私鑰(低級(jí) 別私鑰),各級(jí)私鑰都具有一定的解密功能。這樣,在解密應(yīng)用中,有多把私鑰可供選擇,原 始私鑰使用的頻率相對減少,從而降低了暴露風(fēng)險(xiǎn)。
【附圖說明】
[0025] 為了更清楚地說明本發(fā)明實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使 用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于 本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他 的附圖。
[0026] 圖la為本發(fā)明實(shí)施例提供的j級(jí)加密處理流程圖;
[0027] 圖lb為本發(fā)明實(shí)施例提供的解密方法流程圖;
[0028] 圖2為本發(fā)明實(shí)施例提供的原始公私鑰的生成過程流程圖;
[0029] 圖3為本發(fā)明實(shí)施例提供的原始公私鑰的生成過程另一流程圖;
[0030] 圖4為本發(fā)明實(shí)施例提供的第i級(jí)私鑰的生成過程流程圖;
[0031] 圖5為本發(fā)明實(shí)施例提供的公私鑰的生成過程流程圖;
[0032] 圖6為本發(fā)明實(shí)施例提供的公私鑰的生成過程另一流程圖;
[0033] 圖7為本發(fā)明實(shí)施例提供的j級(jí)加密處理另一流程圖;
[0034] 圖8為本發(fā)明實(shí)施例提供的雷達(dá)圖;
[0035] 圖9為本發(fā)明實(shí)施例提供的加密裝置結(jié)構(gòu)示意圖;
[0036] 圖10為本發(fā)明實(shí)施例提供的解密裝置結(jié)構(gòu)示意圖;
[0037] 圖11為本發(fā)明實(shí)施例提供的結(jié)式計(jì)算單元、主公私鑰生成單元和密鑰衍生單元 的具體協(xié)作流程圖;
[0038] 圖12為本發(fā)明實(shí)施例提供的加密裝置或解密裝置的通用硬件結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0039] 為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅 僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù) 人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0040] 本發(fā)明實(shí)施例所提供的加解密方法,可適用于多種加解密方案,例如全同態(tài)加解 密方案。
[0041] 本發(fā)明實(shí)施例所提供的加解密方法基于預(yù)先生成的原始公鑰{p,a}(也可稱為主 公鑰)、原始私鑰(也可稱為主私鑰),以及第1至第m級(jí)私鑰,其中,原始私鑰為第0級(jí)私鑰, 第i級(jí)私鑰由第i_l級(jí)私鑰生成,1彡i彡m,1彡m,m為正整數(shù)。
[0042] 請參見圖la,上述加密方法可至少包括如下步驟:
[0043] 根據(jù)