米勒-拉宾素性检验

✍ dations ◷ 2025-08-17 20:46:22 #素性测试,密码学,有限域

米勒-拉宾素性检验是一种素数判定法则,利用随机化算法判断一个数是合数还是素数。卡内基梅隆大学的计算机系教授Gary Lee Miller首先提出了基于广义黎曼猜想的确定性算法,由于广义黎曼猜想并没有被证明,其后由以色列耶路撒冷希伯来大学的Michael O. Rabin教授作出修改,提出了不依赖于该假设的随机化算法。

首先介绍一个相关的引理。我们发现 1 2 mod p {\displaystyle 1^{2}{\bmod {p}}} > 3, an odd integer to be tested for primality;Input #2: , a parameter that determines the accuracy of the testOutput: if is composite, otherwise

write  − 1 as 2· with  odd by factoring powers of 2 from  − 1WitnessLoop: repeat  times:   pick a random integer  in the range     ←  mod    if  = 1 or  =  − 1 then      continue WitnessLoop   repeat  − 1 times:       ← 2 mod       if  =  − 1 then         continue WitnessLoop   return return 

使用模幂运算,这个算法的时间复杂度是 O ( k log 3 n ) {\displaystyle O(k\log ^{3}n)}  log2 log log  log log log ) = Õ( log2).

如果我们加入最大公因数算法到上述算法中,我们有时候可以得到 n {\displaystyle n} 的因数,而不仅仅是证明 n {\displaystyle n} 是一个合数。例如,若 n {\displaystyle n} 是一个基于 a {\displaystyle a} 的可能的素数,但不是一个大概率素数,则 gcd ( ( a d mod n ) 1 , n ) {\displaystyle \gcd((a^{d}{\bmod {n}})-1,n)} gcd ( ( a 2 r d mod n ) 1 , n ) {\displaystyle \gcd((a^{2^{r}d}{\bmod {n}})-1,n)} 将得到 n {\displaystyle n} 的因数。如果因式分解是必要的,这一 G C D s {\displaystyle GCDs} 算法可以加入到上述的算法中,代价是增加了一些额外的运算时间。

例如,假设 n = 341 {\displaystyle n=341} ,则 n 1 = 340 = 85 4 {\displaystyle n-1=340=85*4} .于是 2 85 mod 3 41 = 32 {\displaystyle 2^{85}{\bmod {3}}41=32} ,这也告诉我们 n {\displaystyle n} 不是一个大概率素数,即 n {\displaystyle n} 是一个合数。如果这个时候我们求最大公因数,我们可以得到一个 n = 341 {\displaystyle n=341} 的因数: gcd ( ( 2 85 mod 3 41 ) 1 , 341 ) = 31 {\displaystyle \gcd((2^{85}{\bmod {3}}41)-1,341)=31} .这时可行的,因为 n = 341 {\displaystyle n=341} 是一个基于2的伪素数,但不是一个“强伪素数”。

下面是根据以上定义而使用Magma语言编写的“米勒-拉宾”检验程序。

相关

  • Google图书Google图书(英语:Google Books)是一个由Google研发的搜索工具,它可以自Google所扫描、经由光学字符识别(OCR)、存储的数字化数据库中搜索数据。此服务于2004年10月在法兰克福书展
  • 狼人狼人(Lycanthrope),又称人狼(Werewolf),是一种传说中的生物,据闻这种生物每逢月圆之夜,就会从人身变为狼身(也有说法是只要看到跟满月一样圆的东西就能变成狼)。转变为狼身的人狼由于
  • 2017年卡塔尔外交危机 沙特阿拉伯  阿联酋  巴林  埃及  马尔代夫  也门  毛里塔尼亚  科摩罗  索马里兰  乍得 支持方:  利比亚 (托布鲁克政府)  约旦  吉布提  塞内加尔 调停国:
  • 徐林侠徐林侠(1904年-1949年9月6日),中国江苏邳县(今邳州市)人,中国共产党党员暨革命家。徐林侠于1924年考入江苏省立的第三女子师范学校,于1926年前往武汉于中国共产党主办的江苏党务训练
  • 克罗雷 (阿拉巴马州)克罗雷(英文:Colony),是美国阿拉巴马州下属的一座城市。面积约为2.25平方英里(约合 5.83平方公里)。根据2010年美国人口普查,该市有人口268人,人口密度为119.01/平方英里(约合45.97/
  • 威尔士民族主义威尔士民族主义(威尔士语:)强调威尔士语、文化和历史的独特性,并主张威尔士的民族自决,包含下放更多权力给予威尔士国民议会或者完全脱离联合王国而独立。
  • 洞阔尔·特布登·嘎拉森·丹辛嘉措洞阔尔·特布登·嘎拉森·丹辛嘉措(1919年-1943年)原俗名桑古敖斯尔,法名特布登·嘎拉森·丹辛嘉措,内蒙古茂明安旗人,第六世(不计追认)洞阔尔活佛。第六世洞阔尔活佛是内蒙古茂明安
  • 德累斯顿号小巡洋舰 (1907年)陛下之舰德累斯顿号(德语:SMS Dresden)是德意志帝国所建造的两艘德累斯顿级小巡洋舰的首舰,以萨克森首府德累斯顿命名。它由汉堡的布洛姆-福斯船厂承建,于1906年开始龙骨架设(德语:K
  • 毓麒怡亲王毓麒(1900年4月18日-1948年10月),二等镇国将军溥耀第二子,母为妾冯氏(父为冯双顺),怡亲王系第十四代。他在光绪二十六年三月(1900年)出生,光绪二十八年七月(1902年)接替被废的伯
  • 方少逸方少逸(1911年-2006年),曾用名方秉维,男,广东中山人,中华人民共和国政治人物,广东省人大常委会原副主任,中国国民党革命委员会中央委员会原常务委员,第三、四、五、六届全国政协委员,第