一種基于四操作數(shù)Montgomery模乘算法的模乘器電路結(jié)構(gòu)的制作方法
【專利摘要】本發(fā)明屬于高性能公鑰密碼學(xué)硬件設(shè)計【技術(shù)領(lǐng)域】,具體為一種基于四操作數(shù)Montgomery模乘算法的模乘器電路結(jié)構(gòu)。本發(fā)明對原始算法進行改進,通過對其中部分的部分積的共享,實現(xiàn)了四操作數(shù)的Montgomery模乘算法,可以完成形如(A·B+C·D)modP的運算。由于對部分的部分積進行了共享,從而相對于傳統(tǒng)的雙操作數(shù)Montgomery模乘算法可以減少25%的部分積。與此同時,基于該算法本發(fā)明還提出了一種基于布斯編碼的模乘器電路結(jié)構(gòu),實現(xiàn)了較小的壓縮樹開銷,并且可以完成較為復(fù)雜的運算。從而提高了公鑰密碼學(xué)相關(guān)應(yīng)用的性能。
【專利說明】—種基于四操作數(shù)Montgomery模乘算法的模乘器電路結(jié)構(gòu)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于高性能公鑰密碼學(xué)硬件設(shè)計【技術(shù)領(lǐng)域】,具體涉及一種基于四操作數(shù)Montgomery模乘算法的模乘器電路結(jié)構(gòu)。
技術(shù)背景
[0002]公鑰密碼學(xué)在互聯(lián)網(wǎng)、用戶認證、數(shù)據(jù)加解密等應(yīng)用場合都得到了廣泛的應(yīng)用。而支撐公鑰密碼學(xué)運算的基礎(chǔ)就是形如J -AmodP的模乘操作。由于操作數(shù)的數(shù)據(jù)位寬較寬,常幾百或者上千比特。所以該操作實現(xiàn)起來具有一定的復(fù)雜性,并且不能被當(dāng)前的一些通用處理器高效的支持。如何用專用的硬件單元來實現(xiàn)高性能的模乘器是實現(xiàn)高性能公鑰密碼學(xué)的基礎(chǔ),這也是當(dāng)前所面臨的挑戰(zhàn)。
[0003]近年來,隨著一些新的加解密算法的提出,在支持靈活的加解密方案的同時,也帶來了計算量的提高。如雙線性對加解密算法,該算法一般是在擴域上進行運算。對于G2域的乘法運算可以表示為
【權(quán)利要求】
1.一種基于四操作數(shù)的Montgomery模乘算法的模乘器電路結(jié)構(gòu),其特征在于:所述四操作數(shù)Montgomery模乘算法用于完成如*3+^ ^ZOmod Z7形式的運算;該算法描述如下:
2.—種基于四操作數(shù)的Montgomery模乘算法的模乘器電路結(jié)構(gòu),其特征在于:模乘器電路結(jié)構(gòu)包括操作數(shù)寄存器、布斯編碼部分積產(chǎn)生器、壓縮樹1、流水線寄存器、壓縮樹2、臨時寄存器、S反饋模塊、結(jié)果寄存器、Q值產(chǎn)生模塊和時序控制器模塊; 模乘器開始信號輸入給時序控制器來啟動模乘器的時序控制;其中時序控制器產(chǎn)生的控制信號輸出給整個模乘器的數(shù)據(jù)路徑;當(dāng)完成一個模乘運算后,時序控制器輸出模乘結(jié)束信號;操作數(shù)B、D分別輸入到具有高低部分交換功能的操作數(shù)寄存器;操作數(shù)/V、/7/經(jīng)過選擇器后輸入到具有高低部分交換功能的操作數(shù)寄存器;操作數(shù)A、C分別輸入到具有移位功能的操作數(shù)寄存器;操作數(shù)寄存器的輸出都輸入給布斯編碼部分積產(chǎn)生器;布斯編碼部分積產(chǎn)生器用于產(chǎn)生若干個部分積,并把該若干個部分積送給壓縮樹I進行壓縮;壓縮樹I對布斯編碼部分積產(chǎn)生器產(chǎn)生的信號進行第一步壓縮,并把壓縮后的部分積送給流水線寄存器進行寄存;流水線寄存器的輸出送給壓縮樹2進行第二步壓縮;壓縮樹2的結(jié)果輸出到臨時寄存器O和臨時寄存器I進行寄存;所述S反饋模塊由SO反饋和SI反饋組成,所述S反饋模塊的輸入為壓縮樹的輸出和臨時寄存器的輸出;S反饋模塊產(chǎn)生的結(jié)果作為流水線寄存器的輸入;結(jié)果寄存器分為SOH寄存器、SOL寄存器、SlH寄存器和SlL寄存器;SOH寄存器和SOL寄存器的輸入為臨時寄存器O的輸出;S0H寄存器和SOL寄存器的輸出為模乘的運算結(jié)果O ;S1H寄存器和SlL寄存器的輸入為臨時寄存器I的輸出;S1H寄存器和SlL寄存器的輸出為模乘的運算結(jié)果I W值產(chǎn)生模塊的輸入為壓縮樹的輸出W值產(chǎn)生模塊的進位輸出作為壓縮樹2的輸入,Qi值作為布斯編碼部分積產(chǎn)生器的輸入。
3.根據(jù)權(quán)利要求2所述的電路結(jié)構(gòu),其特征在于:所述布斯編碼部分積產(chǎn)生器,其主要由三個布斯控制器、三個布斯編碼器、部分積選擇陣列和寄存器構(gòu)成;其中操作數(shù)J移位寄存器的輸出為.信號輸入給布斯控制器I產(chǎn)生若干布斯選擇信號并送給寄存器進行寄存;操作數(shù)C移位寄存器的輸出Ci信號輸入給布斯控制器2產(chǎn)生若干布斯選擇信號并送給寄存器進行寄存'Q值產(chǎn)生模塊產(chǎn)生的Qi值輸入給布斯控制器3產(chǎn)生若干布斯選擇信號并送給寄存器進行寄存;操作數(shù)A高低部分交換寄存器的輸出B*信號送給布斯編碼器I進行操作數(shù)的布斯編碼;操作數(shù)^高低部分交換寄存器的輸出~信號送給布斯編碼器2進行操作數(shù)的布斯編碼;操作數(shù)高低部分交換寄存器的輸出P,h/l信號送給布斯編碼器3進行操作數(shù)的布斯編碼;部分積選擇陣列的輸入為經(jīng)過寄存器寄存的選擇信號和布斯編碼器產(chǎn)生的操作數(shù)的布斯編碼 ;部分積選擇陣列的輸出為經(jīng)過選擇信號選擇出的部分積輸出。
【文檔編號】G06F7/72GK104007953SQ201410236323
【公開日】2014年8月27日 申請日期:2014年5月30日 優(yōu)先權(quán)日:2014年5月30日
【發(fā)明者】韓軍, 竇仁峰, 曾凌云, 曾曉洋 申請人:復(fù)旦大學(xué)