米勒-拉宾素性检验

✍ dations ◷ 2025-11-19 09:01:08 #素性测试,密码学,有限域

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

相关

  • 二倍体染色体倍性是指细胞内同源染色体的数目,只有一组最基本的称为“单套”或“单倍体”(haploid),两组备份称为“双套”或“二倍体”(diploid)。多倍体的细胞则有更多套的染色体。其中
  • Nsub3/subHsub5/sub三氮烷是一种含有三个氮原子的氮烷(饱和氮氢化合物),可以看作氨分子中两个氢原子被氨基所取代的产物,它的结构简式为NH2-NH-NH2。
  • 乔治·勒梅特乔治·亨利·约瑟夫·爱德华·勒梅特(法语:Georges Henri Joseph Édouard Lemaître,1894年7月17日-1966年6月20日),生于比利时沙勒罗瓦,宇宙学家。1894年出生于比利时的沙勒罗瓦,
  • 脉冲序列磁振脉冲序列(MR pulse sequence)出现在核磁共振相关的领域,包括了传统的核磁共振频谱(1952年)、磁振造影以及核磁共振量子电脑(简称磁振量脑)。历史上,一开始脉冲序列是只有
  • 捆绑式假阴茎捆绑式假阴茎(又称作阳具带、皮捆绑式假阳具)是性用品的一种,与假阴茎相似,是一种设计有捆绑带以在性行为时佩戴的假阳具,有些还带有与跳蛋相似的震动和转动功能。捆绑带和假阳具
  • 临沭县临沭县是山东省临沂市下辖县,位于临沂市东南约40公里,沭河东畔,面积l038平方千米,人口60万。临沭县辖2个街道、8个镇,292个行政村:临沭街道、郑山街道、蛟龙镇、大兴镇、石门镇、
  • 第4周期元素第4周期元素是元素周期表中第四行(即周期)的元素。含有:第1周期元素 -第2周期元素 -第3周期元素 -第4周期元素 -第5周期元素 -第6周期元素 -第7周期元素 -第8周期元素
  • 莱昂·布儒瓦莱昂·维克托·奥古斯特·布儒瓦(法语:Léon Victor Auguste Bourgeois,1851年5月21日-1925年9月29日), 法国犹太政治家。布儒瓦早年学习法律,1876年成为文官。1887年任塞纳省警察
  • 分布式信源编码分布式信源编码(Distributed Source Coding,DSC)是对信息互相关联但不互相通信的信源的一种信息压缩方式. 它和其他信源编码不同的是,在这里使用的是信道码。分布式信源编码的
  • 切尔诺贝利日记《切尔诺贝利日记》(英语:)是一部2012年上映的美国恐怖片,以乌克兰废弃核能厂为背景。本片也是曾担任过噬血童话视觉特效总监布莱德利‧帕克的处女作。主要演员为杰西·麦卡尼、