n=克里克里克w的剩余类环.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
n=克里克里克w的剩余类环 1. 基于剩余类环的逆元计算 r是模式n的剩余环,r的元素小于n的非负平均值。假设a是r的元素,a是r的逆元,b是r的逆元。反演反演和逆元a的逆元是一个非常重要和有用的问题(例如,在sabisa的公钥制密码中)。反演反演算法通常是基于eeclid算法和扩展的eeclid算法的。为了计算n和a的最大公约数,使用eeclid算法。根据扩展的基于eclid模型,算法的eeclid算法为:由于a在r中弯曲,只使用gcd(n,a)。当a在r中弯曲时,只有a、gcd(n,a)=1。当a在r中弯曲时,根据扩展的eeclid算法和x射线,y将带、yn.1(n)0(odn),b(mon)x(莫)n),b(r)是反演。在这项工作中,我们讨论了n.2模型的剩余环r模型。引入了阶乘概念,并在该剩余环中指定了评估元素偏差和反演元素a的算法。左位移算法的时间复杂度为o(log2n)=o(k)。比较一下,使用eeclid算法和扩展的eeclid算法的逆元应该是更小的。 2. 当a为1,a则a则a,a为0,a为0,其阶为1, 设n=2k,R是模n的剩余类环.因为R的元素a是小于n的非负整数,因此可以将a表示为k位二进制数.令a[i]为a的二进制数的第i位数(i=0,…,k-1,从低位到高位). 引理1 a在R中可逆当且仅当a的二进制数的第0位数a=1. 证明a在R中可逆当且仅当n和a的最大公约数gcd(n,a)=1.因为n只有一个素数因子2,因此a在R中可逆当且仅当2不是a的因数,即a=1. 定义设a是R的可逆元(a=1).(1)若a=1,令a的阶为1;(2)若a=0,…,a[i-1]=0,a[i]=1(1ik),令a的阶为i;(3)若a=0,…,a[k-1]=0,令a的阶为k. 引理2 a的阶为k当且仅当a=1. 证明显然, 定理3设a是R的可逆元(a=1),a的阶是s.令c=2s,b=a-ca,则b=1且b的阶大于s. 证明因为c=2s,所以ca的二进制数的第0位到第s-1位数都是0,第s位数是1.因为a的二进制数的第0位数是1,第1到第s-1位数都是0,第s位数是1.因而b=a-ca的第0位数是1,第1到第s-1位数都是0,第s位数也是0.这就保证b是可逆元且b的阶大于s. 定理4设a是R的可逆元(a=1),则存在c,使得 证明对a的阶用数学归纳法.设a的阶为k,则a=1,令c=0即得.设对于a的阶大于s的情形定理的结论正确.令a的阶等于s.根据定理3,存在c,使得b=a-ca是可逆元且b的阶大于s.由数学归纳法的假设,对于b存在c1,使得b1=bc1b≡1(mod n).因此有a-ca-c1(a-ca)≡1(mod n),即a-(c+c1+c1c)a≡1(mod n).因此,定理的结论对于所有可逆元a都正确. 推论设a是R的可逆元,c是定理4给出的数.令x≡(1-c)(mod n)(0xn),则x是a的逆元. 证明根据定理4,a(1-c)≡1(mod n),所以有ax≡1(mod n),因为0xn.因此x是a的逆元. 3. 左位移左移算法 从定理4的证明中可以看到,当c=2s(s是a的阶)时,ca实际上就是将a左移s位,b=a-ca就是将a的第s位数为0因为b的阶t大于s,可继续将a左移t位,用来将b的t位为0.最后可使除第0位外的所有位数都是0,也就是得到阶是k的数1.设d是各次左移所得的c的和,则有a-da≡1(mod n).这样,利用左移和减法就能够计算出a的逆元.我们称这种算法为左移位算法.以下是左移位算法的程序(C-语言). b=a-ca≡1(mod n).

文档评论(0)

ss_account + 关注
实名认证
文档贡献者

专注于文档制作,提供高质量文档

1亿VIP精品文档

相关文档