如此反復(fù)直到最后的素性判定通過(guò),如圖4所示,那么大素?cái)?shù)生成的時(shí)間差不多就是模冪硬件計(jì)算的時(shí)間,不會(huì)單獨(dú)消耗時(shí)間運(yùn)算小素?cái)?shù)試除,并且由于模冪硬件計(jì)算的時(shí)間通常大于軟件進(jìn)行小素?cái)?shù)3,5,7試除的時(shí)間,減少了總體大素?cái)?shù)生成時(shí)間,提高了效率。
[0044]優(yōu)選的,以第二小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除,如果以第二小素?cái)?shù)對(duì)所述大奇數(shù)試除判斷所述大奇數(shù)為非素?cái)?shù),則所述大奇數(shù)加2之后繼續(xù)進(jìn)行第一小素?cái)?shù)的試除;如果以第二小素?cái)?shù)對(duì)所述大奇數(shù)試除通過(guò),則可判斷所述大奇數(shù)較大可能為素?cái)?shù),等待模冪運(yùn)算結(jié)束。所述第二小素?cái)?shù)至少包括11、13和17。由于硬件計(jì)算一次模冪的時(shí)間,一般比第一小素?cái)?shù)試除的時(shí)間要長(zhǎng),因而可以在剩余的模冪運(yùn)算時(shí)間內(nèi),進(jìn)行小素?cái)?shù)11,13,17等試除進(jìn)一步排除部分合數(shù),具體流程圖如圖5所示,這樣會(huì)減少進(jìn)行模冪運(yùn)算的大奇數(shù)的個(gè)數(shù),從而進(jìn)一步減少總體大素?cái)?shù)生成時(shí)間。
[0045]本實(shí)施例,小素?cái)?shù)試除部分由CPU通過(guò)軟件編程實(shí)現(xiàn),而模冪運(yùn)算則調(diào)用RSA硬件的模冪運(yùn)算單元實(shí)現(xiàn),其中,第一次的小素?cái)?shù)試除是最早并且單獨(dú)完成,接下來(lái)并行計(jì)算第一次模冪和第二次小素?cái)?shù)試除,接下來(lái)并行計(jì)算第二次模冪和第三次小素?cái)?shù)試除,如此反復(fù)直到最后的素性判定通過(guò),大素?cái)?shù)生成的時(shí)間差不多就是模冪硬件計(jì)算的時(shí)間,不會(huì)單獨(dú)消耗時(shí)間運(yùn)算小素?cái)?shù)試除,減少總體大素?cái)?shù)生成時(shí)間,提高了大素?cái)?shù)生產(chǎn)的效率。
[0046]實(shí)施例二
[0047]圖6示出了本發(fā)明實(shí)施例二提供的生成大素?cái)?shù)的裝置的具體結(jié)構(gòu)框圖,為了便于說(shuō)明,僅示出了與本發(fā)明實(shí)施例相關(guān)的部分。在本實(shí)施例中,該裝置包括:數(shù)據(jù)產(chǎn)生單元51、第一試除單元52、模冪運(yùn)算單元53、數(shù)據(jù)更新單元54和第二試除單元55。
[0048]其中,數(shù)據(jù)產(chǎn)生單元51,用于隨機(jī)生成一個(gè)大奇數(shù);
[0049]第一試除單元52,用于以第一小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除獲得初篩數(shù)據(jù);
[0050]模冪運(yùn)算單元53,用于對(duì)前一次篩選后的數(shù)據(jù)進(jìn)行模冪運(yùn)算從而進(jìn)行素性判定。
[0051]進(jìn)一步地,所述裝置還包括:
[0052]數(shù)據(jù)更新單元54,用于如果以第一小素?cái)?shù)對(duì)所述大奇數(shù)試除判斷所述大奇數(shù)為非素?cái)?shù),則所述大奇數(shù)加2之后繼續(xù)進(jìn)行第一小素?cái)?shù)的試除。
[0053]進(jìn)一步地,所述第一小素?cái)?shù)至少包括3、5和7。
[0054]進(jìn)一步地,所述裝置還包括:
[0055]第二試除單元55,用于以第二小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除,如果以第二小素?cái)?shù)對(duì)所述大奇數(shù)試除判斷所述大奇數(shù)為非素?cái)?shù),則所述大奇數(shù)加2之后繼續(xù)進(jìn)行第一小素?cái)?shù)的試除;如果以第二小素?cái)?shù)對(duì)所述大奇數(shù)試除通過(guò),則可判斷所述大奇數(shù)較大可能為素?cái)?shù),等待模冪運(yùn)算結(jié)束。
[0056]進(jìn)一步地,所述第二小素?cái)?shù)至少包括11、13和17。
[0057]本實(shí)施例,小素?cái)?shù)試除部分由CPU通過(guò)軟件編程實(shí)現(xiàn),而模冪運(yùn)算則調(diào)用RSA硬件的模冪運(yùn)算單元實(shí)現(xiàn),其中,第一次的小素?cái)?shù)試除是最早并且單獨(dú)完成,接下來(lái)并行計(jì)算第一次模冪和第二次小素?cái)?shù)試除,接下來(lái)并行計(jì)算第二次模冪和第三次小素?cái)?shù)試除,如此反復(fù)直到最后的素性判定通過(guò),大素?cái)?shù)生成的時(shí)間差不多就是模冪硬件計(jì)算的時(shí)間,不會(huì)單獨(dú)消耗時(shí)間運(yùn)算小素?cái)?shù)試除,減少總體大素?cái)?shù)生成時(shí)間,提高了大素?cái)?shù)生產(chǎn)的效率。
[0058]本發(fā)明實(shí)施例提供的裝置可以應(yīng)用在前述對(duì)應(yīng)的方法實(shí)施例一中,詳情參見(jiàn)上述實(shí)施例一的描述,在此不再贅述。
[0059]值得注意的是,上述系統(tǒng)實(shí)施例中,所包括的各個(gè)單元只是按照功能邏輯進(jìn)行劃分的,但并不局限于上述的劃分,只要能夠?qū)崿F(xiàn)相應(yīng)的功能即可;另外,各功能單元的具體名稱也只是為了便于相互區(qū)分,并不用于限制本發(fā)明的保護(hù)范圍。
[0060]另外,本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述各實(shí)施例方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,相應(yīng)的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,所述的存儲(chǔ)介質(zhì),如R0M/RAM、磁盤(pán)或光盤(pán)等。
[0061]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種生成大素?cái)?shù)的方法,其特征在于,所述方法包括:隨機(jī)生成一個(gè)大奇數(shù);以第一小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除獲得初篩數(shù)據(jù);第一次的小素?cái)?shù)試除結(jié)束后,繼續(xù)執(zhí)行其它大奇數(shù)的試除,同時(shí),調(diào)用RSA硬件的模冪運(yùn)算單元對(duì)所述初篩數(shù)據(jù)進(jìn)行至少一次模冪運(yùn)算直至獲得大素?cái)?shù)。2.根據(jù)權(quán)利要求1所述的生成大素?cái)?shù)的方法,其特征在于,所述以第一小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除獲得初篩數(shù)據(jù)之后還包括:如果以第一小素?cái)?shù)對(duì)所述大奇數(shù)試除判斷所述大奇數(shù)為非素?cái)?shù),則所述大奇數(shù)加2之后繼續(xù)進(jìn)行第一小素?cái)?shù)的試除。3.根據(jù)權(quán)利要求1所述的生成大素?cái)?shù)的方法,其特征在于,所述第一小素?cái)?shù)至少包括.3、5 和 74.根據(jù)權(quán)利要求1、2或3所述的生成大素?cái)?shù)的方法,其特征在于,所述調(diào)用RSA硬件的模冪運(yùn)算單元對(duì)所述初篩數(shù)據(jù)進(jìn)行至少一次模冪運(yùn)算直至獲得大素?cái)?shù)執(zhí)行的同時(shí)還包括:以第二小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除,如果以第二小素?cái)?shù)對(duì)所述大奇數(shù)試除判斷所述大奇數(shù)為非素?cái)?shù),則所述大奇數(shù)加2之后繼續(xù)進(jìn)行第一小素?cái)?shù)的試除;如果以第二小素?cái)?shù)對(duì)所述大奇數(shù)試除通過(guò),則可判斷所述大奇數(shù)為素?cái)?shù),等待模冪運(yùn)算結(jié)束。5.根據(jù)權(quán)利要求4所述的生成大素?cái)?shù)的方法,其特征在于,所述第二小素?cái)?shù)至少包括.11、13 和 17。6.—種生成大素?cái)?shù)的裝置,其特征在于,所述裝置包括:數(shù)據(jù)產(chǎn)生單元,用于隨機(jī)生成一個(gè)大奇數(shù);第一試除單元,用于以第一小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除獲得初篩數(shù)據(jù);模冪運(yùn)算單元,用于第一次的小素?cái)?shù)試除結(jié)束后,繼續(xù)執(zhí)行其它大奇數(shù)的試除,同時(shí),調(diào)用RSA硬件的模冪運(yùn)算單元對(duì)所述初篩數(shù)據(jù)進(jìn)行至少一次模冪運(yùn)算直至獲得大素?cái)?shù)。7.根據(jù)權(quán)利要求6所述的生成大素?cái)?shù)的裝置,其特征在于,所述裝置還包括:數(shù)據(jù)更新單元,用于如果以第一小素?cái)?shù)對(duì)所述大奇數(shù)試除判斷所述大奇數(shù)為非素?cái)?shù),則所述大奇數(shù)加2之后繼續(xù)進(jìn)行第一小素?cái)?shù)的試除。8.根據(jù)權(quán)利要求6所述的生成大素?cái)?shù)的裝置,其特征在于,所述第一小素?cái)?shù)至少包括.3、5 和 79.根據(jù)權(quán)利要求6、7或8所述的生成大素?cái)?shù)的裝置,其特征在于,所述裝置還包括:第二試除單元,用于以第二小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除,如果以第二小素?cái)?shù)對(duì)所述大奇數(shù)試除判斷所述大奇數(shù)為非素?cái)?shù),則所述大奇數(shù)加2之后繼續(xù)進(jìn)行第一小素?cái)?shù)的試除;如果以第二小素?cái)?shù)對(duì)所述大奇數(shù)試除通過(guò),則可判斷所述大奇數(shù)為素?cái)?shù),等待模冪運(yùn)算結(jié)束。10.根據(jù)權(quán)利要求9所述的生成大素?cái)?shù)的裝置,其特征在于,所述第二小素?cái)?shù)至少包括.11、13 和 17。
【專利摘要】本發(fā)明適用于信息安全技術(shù)領(lǐng)域,提供了一種生成大素?cái)?shù)的方法及裝置,所述方法包括:隨機(jī)生成一個(gè)大奇數(shù);以第一小素?cái)?shù)對(duì)所述大奇數(shù)進(jìn)行試除獲得初篩數(shù)據(jù);第一次的小素?cái)?shù)試除結(jié)束后,繼續(xù)執(zhí)行其它大奇數(shù)的試除,同時(shí),調(diào)用RSA硬件的模冪運(yùn)算單元對(duì)所述初篩數(shù)據(jù)進(jìn)行至少一次模冪運(yùn)算直至獲得大素?cái)?shù)。本發(fā)明,第一次的小素?cái)?shù)試除單獨(dú)完成,接下來(lái)并行計(jì)算模冪運(yùn)算和小素?cái)?shù)試除,如此反復(fù)直到最后的素性判定通過(guò),大素?cái)?shù)生成的時(shí)間差不多就是模冪硬件計(jì)算的時(shí)間,不會(huì)單獨(dú)消耗時(shí)間運(yùn)算小素?cái)?shù)試除,減少總體大素?cái)?shù)生成時(shí)間,提高了大素?cái)?shù)生產(chǎn)的效率。
【IPC分類】G06F7/72
【公開(kāi)號(hào)】CN105373366
【申請(qǐng)?zhí)枴緾N201510656518
【發(fā)明人】龔明楊, 陳毅成, 吳旭峰, 張明宇
【申請(qǐng)人】武漢瑞納捷電子技術(shù)有限公司
【公開(kāi)日】2016年3月2日
【申請(qǐng)日】2015年10月12日