收藏 分享(赏)

高效的原根生成算法.doc

上传人:cjc2202537 文档编号:242095 上传时间:2018-03-24 格式:DOC 页数:10 大小:98.50KB
下载 相关 举报
高效的原根生成算法.doc_第1页
第1页 / 共10页
高效的原根生成算法.doc_第2页
第2页 / 共10页
高效的原根生成算法.doc_第3页
第3页 / 共10页
高效的原根生成算法.doc_第4页
第4页 / 共10页
高效的原根生成算法.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

1、高效的原根生成算法高效的原根生成算法夏静波张四兰陈建华(武汉大学数学与统计学院,武汉 430072)Email:kaleshouse163.tom摘要在研究一般的原根生成算法的基础上,提出了一种不依赖于广义黎曼猜想的概率性多项式时间算法,该算法能够以指定的概率确保输出正确.根据算法复杂度的分析,该算法为多项式时间算法,易于实现.关键词原根次数 ERH文章编号 10028331 一(2006)11-003203 文献标识码 A 中图分类号 TP309EffectiveAlgorithmforPrimitiveRootsGenerationXiaJingboZhangSilanChenJianhu

2、a(SchoolofMathematicsandStatistics,WuhanUniversity,Wuhan430072)Abstract:Byanalysingthegenerationalgorithmofprimitiveroot,weputforwardaprobabilisticalgorithm,inwhichtheerrorprobabilityofthisalgorithmcadbetotallycontrolled.Ouralsorithmiswithpolynimialtimecomplexity,anditiseasytoimplementation.Keywords

3、:primitiveroot,order,ERH1 引言原根的应用在信息安全领域非常广泛.当今许多密码协议的核心都包括原根的生成.如 DiffieHellman 密钥交换和Elgamal 签名协议;一些密码机制,如椭圆曲线密码中阶的计算也需要原根.早在上个世纪 5O 年代王元院士 f1 就证明了模 P 的+最小原根(记为 g(P)有如下结果 :g(p)=0(p),在 ERH(广义 Riemann 猜想 )下,g(p)=0(mlog2p), 其中 m 为 p-1 的不同素因子个数.1992 年,VictorShoup1 改进了王元的结果 ,在 ERH下得到 g(P)=O(1ogP),构造了含原根

4、的小集合 S.并给山了确定的多项式算法.JohannesBuchmann 和 VictorShoupt31 将模 P推广到模 P.之后 ,EricBach“J 将 p 一 1 部分分解,也给出了依赖于 ERH 的多项式时间算法.本文分析研究了 EricBach 算法,将其改进为不依赖于 ERH 的多项式时间概率算法.该算法能够以指定的正确概率输出原根.2 基础知识定义 1 若 ml,(a,m)=1,则使得同余式 l(modm)成立的最小正整数 y 叫作 a 模 m 的次数;当 7-P 一 1 时,我们称 a为模 m 的原根.在这里.我们列出四个有用的定理.定理 1m 有原根存在的充要条件为 m

5、=2,4,P,其中 P为奇素数.参考文献5】.定理 2a 模 m 次数为 y,d-=1(modm),则 71/.参考文献【51.定理 3 若 a 模 m 的次数为 y.,b 模 m 的次数为 y:,且(y.,y)=1,则 ab 模 m 的次数为 YlY.参考文献【6】.定理 4 若 P 为素数 ,C1,BlogB:C1.gP,B1,则1(,且有眦(跏 c.参考文郴】.本文主要讨论 m-p 时的原根问题 .3 依赖于 ERH 的多项式时间原根生成算法生成模 p 原根最原始的思想就是:通过逐个计算 g(i-1.2,P 一 1),求出 g 的次数,由此判断 g 是否为原根 ,这显然是指数算法,实现效

6、率非常低;经典的加速方法将 p 一 1 完全分解为g:,通过计算 g1(m0dP)是否成立来生成原根,这个算法似乎能够提高效率.可糟糕的是大整数的分解没有多项式算法.1997 年,EricBach 利用部分分解的思想给出了依赖于 ERH 的确定的多项式时间算法.算法 1输入:素数 P 3.输出:含原根的小集合 S.Step1 计算口.满足 BlogB=30IogpStep2 分解 p-1=ql.q“Q,其中 qiB,Q 与小于 B 的素数互素.Step3fori=1to随机选择素数 b2(Iogp),b1(modp),二 Ltai-b(modp),令一兀 l=1Ste 口 4 构造集合 S 为

7、基金项目:国家 863 高技术研究发展计划资助项目(编号:2001AA141010)作者简介:夏静波(1979-).博士研究生 ,主要研究方向 :数论与密码学,不定方程.张四兰(1980 一), 硕士研究生 .主要研究方向:数论与密码学,信息安全.陈建华(1963 一), 教授,博士生导师,主要研究方向: 密码学,数论,信息安全,芯片设计.3220o6.1l 计算机工程与应用:V-(m0dp);65.6 为素数l(1oglogp)J输出 S,结束根据 ERH,满足算法要求的 b 与 b 能够被取到,从而保证集合 S 一定含有模 P 原根 .参考文献【41.算法 1 的主要运算是 0 的构造和集

8、合 S 的生成.由定理 4知 to=O();又由素数定理(参考文献7】)刀()(1oglogp)L 知寻找 b 的最坏情况要进行 0f1 次模幂运算,l.gloglogp/其中每次模幂运算需要 O(1ogp)0(Jd.一次模乘需要 O(1ogp)次位操作(若采用快速乘法只需要 O(1ogP)个位操作(0g1),则构造的时间复杂度为 0f1.根据同样的分(1oglogp)/析,生成 s 集合需要 0f坚)次位操作,若采用快速算(1oglogp)法可将复杂度降为.(loglogp).算法 l 作为多项式算()./法有它的可行性.但依赖于 ERH 导致在实际应用中得不到实施进一步,将其改进为不依赖

9、ERH 的多项式时间概率算法4 不依赖于 ERH 的高效原根生成算法存实际应用中.生成原根的确定性算法不仅理论比较艰深,并且在计算中实现复杂,由操作误差,实现复杂性带来的不正确安全隐患要比概率性算法带来的误差大得多,况且概率性.40算法的误差可以被控制在一个极小的范围内,如().这样的误差可以完全被接受.基于此,将算法 1 改进为概率性算法.算法 2输入:素数 P 3,错误概率 g,01.输出:输出原根 g,且正确概率不小于 1 一.Stepl 计/g-(1+)(1-1)TgStep2 部分分解 p-l_叫. q:QStep3fori=1to随机选择 a.ai1(modp)计算 H.(modp

10、)step4IfQ 为索数,then 以确定性的结果输出 ,结束else 随机选择 b,若满足 b1(roodP), 就返回 g-ab,正确概率为(1+击川告),结束该算法将算法 1 巾构造含原根的集合 S 的方法进行改进,转变为寻找一个次数可能为 Q 的元素 b,其可能性大于 1,从而输出为原根的概率不会小于 1 一 g.具体证明见以下定理.定理 5 算法 2 输出为原根的概率不小于 1.在证明定理之前先证明以下 4 个引理(引理中所出现的符号与算法 2 中规定的一致):引理 1A=6,6z?,6 次数为 Q),StJA 所含元素个数=(Q), 其为 Euler 函数.证明:设模 P 的次数

11、 Q,g 为模 P 的一个原根,关于 g 的指数/nd=m,l(modp),则 l(modp),因此 pllmQ,即争 tm,mc;cm.d 令删.而模 P 缩余系中所有次数为 Q 的元素有o(Q)/f-,故 (Q).引理 2 有个模 p 不同的 6I,使得.生成同一个原根 g,不同原根由不同 b 生成.证明.次数为,引理 1 确保存在“使得.,设 6指数为=m, 则 g;(.dp)Q+;1(.dp 一 1),m1 三(m0dQ),0 Q=g“.,0 () 一 1,g;.abj(modp)I 故有个模 p 不同的,使得.生成同一个原根 g,不同原根由不同 b 生成.引理 3 方程 6;1(mo

12、dP)解个数恰好为 k.证明:因为次数为 d(其中 dIp 一 1)的元素有(d) 个,所以方程解数为(d):.4 证明.证明:设 ccJ(Q)为 Q 的不同素因子个数 ,to(Q)logQE.完全分解 Q,Q=兀 p,为积性函数,且 pB,则:OH(I-I)击 pQ 一 1Q1Q 一 1 工_古扣 t+者川一 (1+击)(1 一l_s现在利用以上引理.给出定理 5 的证明:证明 l 理 l引理 2 证明了有 Q)个 6 使得 g.是原根.而由引理 3 知,Step4 中满足 b.1(m0dp)l6 有p-1 一个 ,所以算法 2 中输出的 g 是原根的概率为:p-1o(Q):1 一 s.一

13、1 一 Q 一 1下面我们来分析算法的计算复杂度.由于整个算法中比较耗时的就是分解与模幂运算.其中分解使用 Pollardrho 方法所需要的平均位操作数为 O(,/(1ogp);由(,(p 一 1)平均大小为 O(1oglogp),整个算法所要进行的模幂运算次数为 O(1oglogp).与算法 1 的分析类似,算法 2 的复杂度为 D(,/(1ogp)+(1ogp)l0glogp),这里?r一1,故算法复杂度为 0(,/(1ogp)+(1ogp)loglogp).FV1需要注意的是,复杂度里含有非多项式因子,导致算法2 难以实施.因此算法实现的最关键问题就是消去非多项式因子.为了消去非多项式

14、因子,我们做了各种尝试.一种有意义的尝试是把算法 2 中的减小到 O(1ogP),如(1ogp)(1oglogp).就可以消去非多项式因子,这时算法的复杂度为 0(1ogp)1oglogp).但仍然存在着一个问题,就是当 P 比较小的时候 .虽然实验表明此算法的正确性很高,一般40小于 1 一().若完全分解更大的 p 一 1,同时适当调整 B 的大小.正确概率就会进一步提高.相对于前两个算法,算法 3 速度快,正确概率大,是一个易于实施的算法.现将文章中的三种算法的复杂度,概率等进行比较.具体数据见表 1.表 1 三种不同算法的比较.cc.o算法否 c(1ogP)1.g1.gp)不会低于 1

15、 一()(甚至 B=2),但理论上的正确概率并不能兰兰:!:!:二一竺兰兰保障.尽管如此,在对正确概率要求不是特别高的情况下,这种改进后的算法依然可以使用,并且速度非常快.这个改进在理论证明上存在缺陷.为了从理论上保障原根输出的概率,我们给出另外一个改进算法,该算法不但可以消去非多项式因子.而且严格保证输出的正确概率大于某一固定.柏值,如 1 一(丁 1),其主要思想是在 P 比较小的情况下完全分解Pl.具体算法为 :算法 3输入:素数 P 3.140输出:模 P 原根 ,且正确概率不小于 I-(下 1).SteplIfpthengotoStep2elsegotoStep3Step2 完全分解

16、 p-1,用算法 2 输出原根.此时为确定性算法 ,结束Step3B=(1ogp).用算法 2 输出原根 g,且正确概率不小于.401 一 f11,结束用算法 2 的分析方法.可得此算法的复杂度为:0(,/(1ogp)2+(1ogp)loglogp),即 O(,丽(1ogp)+(1ogp)loglogp)=O(1ogp),这样就消去了非多项式因子.叉由(1 十)(1 一寺)Los.q1-()(P,2)知输出为原根的概率不会否大于 l_5 结束语我们从研究原根人手.分析了 EricBach 提出的原根生成算法.指出其对 ERH 的依赖性.紧接着将其改进为不依赖于ERH 的新的算法,为了提高这种算

17、法的可实施性,通过各种研究.最终提出一种概率性的多项式时间算法.实验表明,该算法不但可以以指定的正确概率输出原根,而且易于实现.(收稿日期:2005 年 12 月)参考文献1.王元.论素数的最小正原根J擞学.1959;(9):4324_412.VictorShoup.SearchingforprimitiverootsinfinitefieldsJ.MathematicsofComputation,1992;58:3693803.JohannesBuchmann,VictorShoup.ConstructingnonresiduesinfinitefieldsandtheextendedRie

18、mannhypothesisJ.MathematicofCompu-tation.1996;65:13l1-13264.EricBach.CommentsonsearchproceduresforprimitiverootsJ.MathematicsofComputation.1997;66:171917245.华岁庚.数论导引【M】.科学出版十,19576.张禾瑞.近世代数【M】.高等教育出版礼.19787.冯克勤.1 数数论【M】.科学出版礼,20018.GuyRobin.Estimationdelafonctiondetchebycheff0surlekiemenombrepremier

19、etgrandesvaleursdelafonction 州 nombrededi-viseurspremiersdenlJ.ActaArithmetica,2003;62:367389(上接 31 页)算中出现的问题及其根本原因.提出了一种新的规则分辨矩阵,该分辨矩阵在存储空间,计算量方面优于原对象分辨矩阵.阐述了其在求信息论观点下的属性核与约简簇,度量约简造成的决策信息系统不确定性的变化,以及比较同一决策信息系统不同约简的不确定性程度几方面的应用.(收稿日期:2005 年 12 月)参考文献1.PawlakZ.RoughSets:TheoreticalAspectsofReasoningA

20、boutDat4M.Dordrecht:KluwerAcademicPublishers,19912.HuXiaoHua,CerconeN.Learninginrelationaldatabases:aroughsetapproachm.ComputationalIntelligence,1995;11(2):323-337342006.1l 计算机工程与应用3.叶东毅,陈昭炯.一个新的差别矩阵及其求核方法】.电子,2002;3O(7):108610884.MollestadT.SkowronA.AroughsetframeworkfordataminingofprepositionaldefaultrulesC.In:Procof9thInternationalSymposiumonFoundationsofIntelligentSyetems,ISMIS,1996:4484575.王国胤.决策表核属性的计算方法J.计算机,2003;26(5):6116156.王珏,王任等.基于 roughset 的“数据浓缩“JJ.计算机,1998;21(5):393-4007.王同胤.Roulgh 集理论代数与信息论观点的关系研究J. 世界科技研究与发展,2oo2;24(5):20268.王国胤,于洪,杨大春.基于条件信息熵的决策表约简叨.计算机,2002;25(7):759766

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 教育学

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报