米勒-拉宾素性检验

✍ dations ◷ 2025-11-26 11:16:36 #素性测试,密码学,有限域

米勒-拉宾素性检验是一种素数判定法则,利用随机化算法判断一个数是合数还是素数。卡内基梅隆大学的计算机系教授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语言编写的“米勒-拉宾”检验程序。

相关

  • 游轮游轮(英语:Cruise Ship、Cruise Liner),是一种用于娱乐航海的客轮,航程及沿途的目的地(并不包含岸上观光)与船上的设施,都是提供旅游及娱乐的一部分。在航空交通已普及的时代,运输
  • 克劳德·贝托莱克劳德·路易·贝托莱(法语:Claude Louis Berthollet,1748年12月9日-1822年11月6日),法国化学家。贝托莱生于萨伏依公国的Talloires(现属法国上萨瓦省,在省会阿讷西附近)。1768年在都
  • 臂神经丛臂神经丛(英文:brachial plexus)为一神经丛。起源于第五节颈椎神经(C5)到第一节胸椎神经(T1)的前支。在头、颈、上肢内连接锁骨、上臂、前臂、手的神经丛的名称。臂神经丛会由cervi
  • 人间卫视人间卫视(全称人间电视股份有限公司,英语:Beautiful Life Television)是佛光山旗下基金会“佛光山电视弘法基金会”所经营的电视台,原名“佛光传播事业股份有限公司”、“佛光卫
  • 捷运站地铁站,台湾称作捷运站,为属于城市轨道交通系统的铁路车站,通常采用地下或高架方式建构车站。多线交会的地铁站可能有许多层,一般分为大堂和月台,因此必须装设大量电扶梯、楼梯及
  • 温病学派温病学派,出现于清朝的中医学派,始于薛雪、叶天士及其门徒,流行于中国南方,著名代表有吴鞠通、王孟英等人。与伤寒学派并称,形成中医两大主流。温病,这个名词最早出现于《黄帝内经
  • 特例市特例市(日语:特例市/とくれいし Tokurei shi */?)为日本曾有的城市自治制度之一,自2000年开始实施,可拥有较一般的市更多原本属于都道府县的权限,但权限少于中核市。在2015年4月1
  • 司法政治主题本条目介绍日本的裁判所(日语:裁判所/さいばんしょ Saibansho */?)。日语的“裁判所”即汉语所称的法院。在日本法律中,“裁判所”有广义狭义两种含义。狭义的“裁判所
  • 海军少将少将是军队的军衔,中将以下准将或上校或大校以上的一阶,在有大校的国家中,少将为将官最初阶。在有的国家中,准将是将官中最初阶,少将则是两颗星。根据国家不同,少将为将官中的第三
  • 奥尊乡坐标:45°48′0″N 25°51′0″E / 45.80000°N 25.85000°E / 45.80000; 25.85000奥尊乡(罗马尼亚语:Comuna Ozun, Covasna),是罗马尼亚的乡份,位于该国中部,由科瓦斯纳县负责管辖