码迷,mamicode.com
首页 > 其他好文 > 详细

6 原根

时间:2020-02-14 23:00:50      阅读:178      评论:0      收藏:0      [点我收藏+]

标签:不同   最小公倍数   表示   phi   函数   alpha   公倍数   数论   spl   

6 原根

6.1 整数的阶

定义6-1:\((a,m)=1,m>0\),那么使得\(a^l\equiv1(mod\;m)\)成立的最小正整数\(l\)称为\(a\)\(m\)的阶,记为\(ord_m(a)\),或者简记为\(ord(a)\)

如果\((a,m)=1\),那么\(a\)\(m\)的阶总是存在的。因为根据欧拉定理,至少有正整数\(\varphi(m)\)满足\(a^{\varphi(m)}\equiv1(mod\;m)\)

例子: 模10元素的阶

\(a\) 1 3 7 9
\(ord(a)\) 1 4 4 2

定理6-1\((a,m)=1\),对于任意的正整数\(d\)满足\(a^d\equiv1(mod\;m)\),则有\(ord(a)|d\)

证明:

通过带余除法将\(d\)表示为\(d=ord(a)q+r,0\le r\lt ord(a)\),我们的目标就是证明\(r=0\)
\[ \begin{aligned} 1\equiv a^d &\equiv a^{ord(a)q+r}\&\equiv (a^{ord(a)})^q\cdot a^r\&\equiv a^r\mod m \end{aligned} \]
如果\(r\ne0\),说明我们找到了比\(ord(a)\)更小的正整数,使得\(a^r\equiv1(mod\;m)\)成立。这显然与整数阶的定义相矛盾,于是\(r=0\),即\(ord(a)|d\)

根据欧拉定理,我们有\(a^{\varphi(m)}\equiv1(mod\;m)\)。根据定理6-1我们便可以得出结论:\(ord(a)|\varphi(m)\),也就是说整数的阶一定是欧拉函数的因子

定理6-2\((a,m)=1,m>0,r=ord_m(a)\),那么有以下结论成立:

  1. \(s,t\)是正整数,则\(a^s\equiv a^t(mod\;m)\)当且仅当\(s\equiv t(mod\;r)\)
  2. 整数\(a,a^2,\cdots,a^r\)中任意两个数都模\(m\)互不同余。
  3. \(n\)是正整数,则\(a^n\)的阶为\(r/(r,n)\)

证明:

不妨假设\(s\ge t\),于是我们有
\[ \begin{aligned} a^s\equiv a^t(mod\;m)&\Leftrightarrow m|a^t(a^{s-t}-1)\\end{aligned} \]
由于\(a,m\)互素,因此我们还可以得到
\[ m|(a^{s-t}-1)\Leftrightarrow a^{s-t}\equiv1(mod\;m) \]
根据定理6-1可知\(r|(s-t)\),所以\(s\equiv t(mod\;r)\)

\((a,m)=1\)的前提下,上述推导都是等价的,因此结论1成立。

根据结论1,可以很容易得到结论2成立。

接着证明结论3,假设\(a^n\)的阶为\(d\),那么
\[ (a^n)^d\equiv a^{nd}\equiv1\mod m \]
根据定理6-1,我们得到\(r|nd\),所以
\[ r|nd\Rightarrow \frac{r}{(r,n)}|\frac{n}{(r,n)}d \Rightarrow \frac{r}{(r,n)}|d \]
这是因为\(r/(r,n)\)\(n/(r,n)\)互素。

又因为
\[ (a^n)^{\frac{r}{(r,n)}}\equiv(a^r)^{\frac{n}{(r,n)}}\equiv1\mod m \]
所以\(d|\frac{r}{(r,n)}\),因此\(d=r/(r,n)\),即结论3成立。

结论3的一个简单推论: 假设\(a\)的阶可以被表示为\(r=r_1r_2\),那么\(a^{r_1}\)的阶为\(r_2\)
\[ ord(a^{r_1})=\frac{r}{(r,r_1)}=\frac{r_1r_2}{(r_1,r_1)}=\frac{r_1r_2}{r_1}=r_2 \]
从最小公倍数的角度理解结论3: 求得\(a^n\)的阶,相当于找到一个最小的正整数\(d\),使得\(a^{nd}\equiv1(mod\;m)\),这也相当于是找到整数\(n\)的一个最小倍数\(nd\)使得同余式成立。根据定理6-1,\(nd\)又一定得是\(r\)的倍数,于是,\(nd\)就只能是\(n,r\)的最小公倍数,根据最小公倍数的公式,我们可以得到
\[ nd=\frac{rn}{(r,n)}\Rightarrow d=\frac{r}{(r,n)} \]

定理6-3\((a,m)=1,(b,m)=1,ord(a)=d_1,ord(b)=d_2\)\((d_1,d_2)=1\),那么\(ab\)\(m\)的阶为
\[ ord(ab)=d_1d_2 \]
证明:

假设\(d=ord(ab)\),那么
\[ \begin{aligned} 1\equiv(ab)^{dd_1}&\equiv(a^{d_1})^d\cdot(b^{dd_1}) \equiv b^{dd_1}\mod{m} \end{aligned} \]
因此\(d_2|dd_1\),根据\(d_1,d_2\)互素,可以得到\(d_2|d\);同理可得\(d_1|d\)

所以\(d_1d_2|d\),即\(d\)\(d_1d_2\)的倍数,根据阶的最小性,可知\(d=d_1d_2\)

6.2 整数的原根

定义6-2 如果\((a,m)=1,ord_m(a)=\varphi(m)\),那么称\(a\)为模\(m\)的原根,简称为\(m\)的原根。

例子: 7的原根:3,5

定理6-4\(p\)为奇素数,\(g\)\(p\)的一个原根,那么\(g^s\)\(p\)的阶为\((p-1)/(s,p-1)\)。当且仅当\((s,p-1)=1\)时,\(g^s\)为模\(p\)的一个原根。

证明:

因为\(p\)是奇素数,所以\(\varphi(p)=p-1\)

因为\(g\)\(p\)的一个原根,所以\(g\)\(p\)的阶为\(\varphi(p)=p-1\)

于是根据定理6-2中的结论3,立马就可以得到\(g^s\)的阶为\((p-1)/(s,p-1)\)

如果\((s,p-1)=1\),那么我们立马可以知道\(g^s\)就是\(p\)的一个原根。反过来,如果\(g^s\)\(p\)的一个原根,那么也必然有\((s,p-1)=1\)

原根的个数:

如何寻找一个整数\(m\)的原根?从模\(m\)的简化剩余系中找,对于简化剩余系中的每一个数进行测试,寻找其中阶是\(\varphi(m)\)的整数。

假设模\(m\)存在一个原根\(a\),此时构造集合\(A=\{a,a^2,\cdots,a^{\varphi(m)}\}\)。根据定理6-2的结论2,我们知道集合\(A\)中的\(\varphi(m)\)个元素两两模\(m\)不同余。又因为\((a,m)=1\),所以\((a^s,m)=1(1\le s\le\varphi(m))\),即集合\(A\)中的元素均与\(m\)互素,所以集合\(A\)就是模\(m\)的一个简化剩余系。

因此,我们只需知道一个原根\(a\),就可以通过幂运算得到一个简化剩余系。利用定理6-2中的结论3,我们知道\(a^s\)的阶为\(\varphi(m)/(s,\varphi(m))\)。于是,\(a^s\)是原根当且仅当\((s,\varphi(m))=1\)

又因为\(1\le s\le\varphi(m)\),因此使得\((s,\varphi(m))=1\)成立的整数\(s\)的个数(即原根的个数)就等于闭区间\([1,\varphi(m)]\)内与\(\varphi(m)\)互素的整数的个数。这显然就是欧拉函数的定义。

综合可知,如果整数\(m\)有原根,那么原根的个数为:\(\varphi(\varphi(m))\)

6.3 原根的存在性

定理6-5 素数\(p\)一定存在原根。

证明:

\(p=2\)的时候,其原根就是1,因此我们只需要考虑\(p\)是奇素数的情况。

\(p\)简化剩余系\(A=\{1,2,\cdots,p-1\}\)每个元素对应的阶为:\(ord(1),ord(2),\cdots,ord(p-1)\),我们令
\[ d=[ord(1),ord(2),\cdots,ord(p-1)] \]
由阶的性质与欧拉定理,我们可以得到\(\forall a\in A,ord(a)|\varphi(p)\)

根据最小公倍数的性质,可以得到\(d|\varphi(p)\),即\(d\le p-1\)

因为对于任意的整数\(a\in A\),都有\(a^d\equiv1(mod\;p)\),即同余方程\(x^d\equiv1(mod\;p)\)至少有\(p-1\)个根。结合定理3-5可知,\(d\ge p-1\)。因此\(d=p-1\)

利用算数基本定理,令\(d=p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_k^{\alpha_k}\),其中\(p_i(1\le i\le k)\)都是素数。

利用最小公倍数的(定理1-11)求法,可以知道对于任意一个\(p_i^{\alpha_i}\)必然来自于某一个\(ord(a_i)(a_i\in A)\),这意味着
\[ \forall 1\le i\le k,\;\exists a_i\in A,p_i^{\alpha_i}|ord(a_i)\Rightarrow \exists b_i\in\mathbb{N}^*,a_i\in A,ord(a_i)=b_ip_i^{\alpha_i} \]
利用定理6-2结论3的推论,可以得到\(ord(a^{b_i})=p_i^{\alpha_i}\)

由于\(p_1^{\alpha_1},p_2^{\alpha_2},\cdots,p_k^{\alpha_k}\)两两互素,根据定理6-3我们可以得到:\(ord(a_1^{b_1}a_2^{b_2}\cdots a_k^{b_k})=p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_k^{\alpha_k}=d\)

于是我们找到了模\(p\)的一个原根:\(a_1^{b_1}a_2^{b_2}\cdots a_k^{b_k}\)

综上可知,模素数的原根一定存在。

定理6-6 整数\(m\)有原根的充要条件是:\(m\)属于下列几种情况之一:
\[ m=2,4,2p^l,p^{l}\;(l\ge1) \]
其中\(p\)是奇素数。

2的原根是1,4的原根是3。

\(p\)的原根为\(g\)\(p^l(l\ge2)\)的原根为\(g_1\)\(2p^l\)的原根为\(g_2\),那么

\(g^{p-1}\not\equiv1(mod\;p^2)\)时,\(g_1=g\);否则,\(g_1=g+p\)

\(g_1\)是奇数时,\(g_2=g_1\);否则\(g_2=g_1+p^l\)

证明如下:

\(m=\prod{p_i^{\alpha_i}}\),则\(\varphi(m)=\prod{\varphi(p_i^{\alpha_i})}\)

\(d=[\varphi(p_1^{\alpha_1}),\varphi(p_2^{\alpha_2}),\cdots,\varphi(p_k^{\alpha_k})]\),那么根据最小公倍数的性质有\(d\le\varphi(m)\),并且\(\varphi(p_i^{\alpha_i})|d\)

如果一个整数\(a\),满足\((a,m)=1\),说明\(a\)\(m\)没有大于1的公共素因子,因此\((a,p_i^{\alpha_i})=1\)
\[ \begin{aligned} a^d\equiv1\mod p_i^{\alpha_i}& \Rightarrow p_i^{\alpha_i}|(a^d-1)\&\Rightarrow p_1^{\alpha_1}p_2^{\alpha_2}\cdots p_k^{\alpha_k}|(a^d-1)\&\Rightarrow m|(a^d-1)\&\Rightarrow a^d\equiv1\mod m \end{aligned} \]
如果\(m\)存在一个原根,为了使得\(a^d\equiv1(mod\;m)\)仍然能够成立,必须要求\(\varphi(m)|d\),即\(d\ge\varphi(m)\)

因此\(d=\varphi(m)\),这意味着\(\varphi(p_i^{\alpha_i})\)两两互素。

又因为在\(p_i\)是奇数的情况下,一定有\(\varphi(p_i^{\alpha_i})=p_i^{\alpha_i}-p_i^{\alpha_i-1}\)为偶数,所以\(m\)一定不能同时有两个或两个以上的奇素数因子,否则它们将会有公因子2。因此,整数\(m\)一定可以被表示成\(m=2^{\alpha}p^\beta\)的形式。

为了保证\(\varphi(2^\alpha)\)\(\varphi(p^\beta)\)互素,整数\(m\)可以被进一步划分为以下三种情况:
\[ m=2^\alpha,p^\beta,2p^\beta \]
其中\(p\)是奇素数,以下将分别对这三种情况进行讨论。

6.3.1 情况1 \(m=p^\beta,\beta\ge1\)

已知\(p\)的原根,求\(p^2\)的原根:

根据定理6-5,奇素数一定具有原根,这里假设\(p\)的原根为\(g\)

我们的目标就是通过\(g\)求得\(p^2\)的一个原根,假设\(g\)在模\(p^2\)下的阶为\(d\),那么\(d|\varphi(p^2)\)\(d|p(p-1)\),并且
\[ g^d\equiv1(mod\;p^2)\Rightarrow g^d\equiv1(mod\;p)\Rightarrow (p-1)|d \]
所以\((p-1)|d|p(p-1)\)。因此\(g\)在模\(p^2\)下的阶要么是\(p-1\),要么是\(p(p-1)\)。如果\(d=p(p-1)\)显然\(g\)就是\(p^2\)的原根。

对于\(d=p-1\)这种情况,我们考虑\(g+pt\)形式的数,看看是否能够找到合适的\(t\)。假设\(g+pt\)在模\(p^2\)下的阶为\(r\),那么
\[ \begin{aligned} (g+pt)^{r}\equiv1(mod\;p^2)&\Rightarrow(g+pt)^r\equiv1(mod\;p)\&\Rightarrow g^r+p(\cdots)\equiv1(mod\;p)\&\Rightarrow g^r\equiv1(mod\;p)\&\Rightarrow (p-1)|r \end{aligned} \]
此时仍然有\((p-1)|r|p(p-1)\)成立,即\(r=p-1\)\(r=p(p-1)\)
\[ \begin{aligned} (g+pt)^{p-1}&\equiv g^{p-1}+(p-1)g^{p-2}pt+p^2(\cdots)\&\equiv g^{p-1}-g^{p-2}pt\&\equiv 1-g^{p-2}pt\mod p^2 \end{aligned} \]
只需要\((g+pt)^{p-1}\not\equiv1(mod\;p^2)\),就可以保证\(g+pt\)的阶为\(p(p-1)\)

因为\((g,p)=1\),所以只要\(p\nmid t\),就可以使得\(g+pt\)的阶为\(p(p-1)\),取\(t=1\)即可。

综上可知,若\(g\)\(p\)的原根,那么当\(g^{p-1}\not\equiv1(mod\;p^2)\)时,\(g\)\(p^2\)的原根,否则\(g+p\)\(p^2\)的原根。

已知\(p^l(l\ge2)\)的原根,求\(p^{l+1}\)的原根:

假设\(p^l(l\ge2)\)的一个原根为\(g\),且\(g\)在模\(p^{l+1}\)的阶为\(d\),仿照之前的证明,我们可以得到\(p^{l-1}(p-1)|d|p^l(p-1)\)

因为\(g\)是模\(p^l\)的原根,所以
\[ g^{p^{l-2}(p-1)}\not\equiv1(mod\;p^l) \]
因为\(\varphi(p^{l-1})=p^{l-2}(p-1)\),所以
\[ g^{\varphi(p^{l-1})}\equiv g^{p^{l-2}(p-1)}\equiv1\mod p^{l-1} \]
因此,存在整数\(t\),使得\(g^{p^{l-2}(p-1)}=1+p^{l-1}t\),那么
\[ g^{p^{l-2}(p-1)}=1+p^{l-1}t\not\equiv1\mod p^l \Rightarrow p\nmid t \]
因为
\[ g^{\varphi(p^l)}\equiv g^{p^{l-1}(p-1)}=(1+p^{l-1}t)^p=1+p^lt+p^{l+1}(\cdots) \]
由于已经知道\(p\nmid t\),所以
\[ g^{p^{l-1}(p-1)}\equiv1+p^lt+p^{l+1}(\cdots)\equiv1+p^lt\not\equiv1\mod p^{l+1} \]
因此\(d=p^l(p-1)\),即\(g\)在模\(p^{l+1}\)下的阶为\(\varphi(p^{l+1})\),于是\(g\)\(p^{l+1}\)的一个原根。

我们已经知道对于任意奇素数\(p,p^2\)均存在原根,结合上述我们证明的结论可知,\(p^2\)的原根也是\(p^l(l\ge2)\)的原根。

因此,我们可以得到结论对于任意的\(p^\beta(\beta\ge1)\)\(p\)是奇素数)都有原根。

已知\(p^{l+1}\)的原根求\(p^l(l\ge1)\)的原根:

假设\(p^{l+1}\)的原根\(g\),因为\(g\)可能大于\(p^l\),因此利用带余除法可以将\(g\)表示为:\(g=p^lt+r(0<r<p^l)\)

假设\(r\)在模\(p^l\)的阶为\(d\),那么\(d|\varphi(p^l)\),并且\(r^d\equiv1(mod\;p^l)\)

因此存在整数\(\delta\),使得\(r^d=1+p^l\delta\),于是我们可以得到
\[ r^{pd}\equiv(1+p^l\delta)^p\equiv1+p^{l+1}\delta+p^{l+2}(\cdots)\equiv1\mod p^{l+1} \]
并且
\[ 1\equiv r^{pd}\equiv(g-p^lt)^{pd}\equiv g^{pd}+p^{l+1}(\cdots)\equiv g^{pd}\mod p^{l+1} \]
因为\(g\)\(p^{l+1}\)的原根,所以\(\varphi(p^{l+1})|pd\),于是有\(\varphi(p^l)|d\),因此\(d=\varphi(p^l)\)

综上可知,\(g\)也会是模\(p^l\)的一个原根。

6.3.2 情况2 \(m=2^l,l\ge1\)

可以验证2的原根为1,4的原根为3。接着我们证明对于其他情况下,不存在原根。

引理\(l\ge3\),则5模\(2^l\)的阶为\(2^{l-2}\)

证明:

5的阶的所有可能值为
\[ 2,2^2,\cdots,2^{l-2},2^{\varphi(2^l)}=2^{l-1} \]
为证明\(5\)的阶为\(2^{l-2}\),就需要说明\(2^r(1\le r\le l-3)\),满足\(5^{2^r}\not\equiv1(mod\;2^l)\)并且\(5^{2^{l-2}}\equiv1(mod\;2^l)\)

因为对于\(1\le r\le l-3\),都有\(2^r|2^{l-3}\)。因此我们只需要证明\(5^{2^{l-3}}\not\equiv1(mod\;2^l)\)并且\(5^{2^{l-2}}\equiv1(mod\;2^l)\)

为了证明上述结论,首先证明下面同余式
\[ \forall l\ge3,5^{2^{l-3}}\equiv1+2^{l-1}\mod 2^l \]
\(l=3\)时,上述式子成立。

假设当\(l=k\)时,上述式子成立,即
\[ 5^{2^{k-3}}\equiv1+2^{k-1}\mod 2^k \]
于是存在整数\(\delta\),使得\(5^{2^{k-3}}=1+2^{k-1}+2^k\delta\)
\[ \begin{aligned} 5^{2^{k-2}}\equiv(5^{2^{k-3}})^2&\equiv(1+2^{k-1}+2^k\delta)^2\&\equiv1+2^{2k-2}+2^{2k}\delta^2+2^k+2^{k+1}\delta+2^{2k}\delta\&\equiv1+2^k\mod 2^{k+1} \end{aligned} \]
即当\(l=k+1\)时,上述式子也成立。于是根据数学归纳法可知,上述式子对于\(l\ge3\)均成立。

可以验证,下面两个式子成立:

  • \(5^{2^{l-3}}\not\equiv1+2^{l-1}\mod 2^l\)

  • \(5^{2^{l-2}}\equiv(1+2^{l-1})^2\equiv1\mod 2^l\)

综上可知,当\(l\ge3\)时,5模\(2^l\)的阶为\(2^{l-2}\)

构造两个集合:\(A=\{5^b|1\le b\le 2^{l-2}\},B=\{-5^b|1\le b\le 2^{l-2}\}\),根据上述我们证明的引理和定理6-2中的结论2,可以知道集合\(A\)内的元素两两模\(2^l\)不同余,集合\(B\)也是如此。

因为\(A\)中的元素模4余1,而\(B\)中的元素模4余-1,所以\(A\)\(B\)中的元素两两不同余,所以集合\(A\cup B\)中一共有\(\varphi(2^l)=2^{l-1}\)个模\(2^l\)两两不同余的数。

又因为\((5,2)=1\),所以集合\(A\cup B\)内的元素也和\(2^l\)互素。这意味着\(A\cup B\)就是模\(2^l\)的一个简化剩余系。

集合定理6-2的结论3和上述引理,可以知道\(A\cup B\)中元素的阶都不超过\(2^{l-2}(<\varphi(2^l))\),因此模\(2^l\)不存在原根。

6.3.3 情况3 \(m=2p^\beta,\beta\ge1\)

假设\(p^\beta\)的一个奇数原根为\(g\),那么\(g\)也是\(2p^\beta\)的原根。

证明如下:

先假设奇原根\(g\)在模\(2p^\beta\)下的阶为\(d\)

因为\(\varphi(2p^\beta)=\varphi(2)\varphi(p^\beta)=\varphi(p^\beta)\),并且\(d|\varphi(2p^\beta)\),所以\(d|\varphi(p^\beta)\)

因为\(g^d\equiv1(mod\;2p^\beta)\),所以\(g^d\equiv1(mod\;p^\beta)\),于是有\(\varphi(p^\beta)|d\)

因此\(d=\varphi(p^\beta)\),即\(g\)\(2p^\beta\)的一个原根。

对于\(p^\beta\)的原根是偶数的情况,即\(g\)是偶数。显然这种情况,\(g\)不是模\(2p^\beta\)的原根,因为偶数和\(2p^\beta\)不互素。

此时考虑\(g+p^\beta\)(奇数),同样假设\(g+p^\beta\)在模\(2p^\beta\)的阶为\(d\),在这种情况下仍然有\(d|\varphi(p^\beta)\),并且
\[ (g+p^\beta)^d\equiv1(mod\;2p^\beta)\Rightarrow (g+p^\beta)^d\equiv1(mod\;p^\beta) \]
所以
\[ \begin{aligned} 1&\equiv(g+p^\beta)^d\equiv g^d+p^\beta(\cdots)\equiv g^d\mod p^\beta \end{aligned} \]
因此\(\varphi(p^\beta)|d\),于是有\(d=\varphi(p^\beta)\),即\(g+p^\beta\)\(2p^\beta\)的原根。

6.4 素数的原根

由定理6-4可知只要知道了素数的一个原根,那么其它的原根也可以通过该原根写出来,因此下面我们讨论如何寻找一个素数的原根。

方法一: 对于\(a=2,3,\cdots,p-1\)进行逐个判断,我们知道一个整数的阶一定是欧拉函数的因子,因此检验整数\(a\)是素数\(p\)的原根方法如下:

(1)求出\(\varphi(p)=p-1\)的所有非平凡因子(即真因子)\(d\)

(2)对每一个\(d\),都计算\(a^d(mod\;p)\)

(3)如果每一个\(a^d(mod\;p)\)都不为1,那么\(a\)就是\(p\)的一个原根。

方法二: 定理6-3提供了一个思路,如果已知\(ord_p(a)=u,ord_p(b)=v,(u,v)=1\),并且满足\(\varphi(p)=uv\),那么\(ab\)就是模\(p\)的一个原根。但这个方法并不实用。

方法三: 该方法是一个判断整数是否为原根的充要条件。

如果\(p\)是奇素数,\(q_1,q_2,\cdots,q_k\)\(\varphi(p)=p-1\)的所有不同素因子,则\(g\)是模\(p\)的原根的充要条件为
\[ g^{\frac{p-1}{q_i}}\not\equiv1\mod p,\;i=1,2,\cdots,k \]
必要性证明:如果\(g\)是原根,显然\(g^{(p-1)/q_i}\not\equiv1(mod\;p)\)成立,否则\(g\)的阶将小于\(p-1\)

充分性证明:

假设\(g\)不是原根,那么\(g\)的阶一定是\(p-1\)的某一个真因子\(d\)

因此存在大于1的正整数\(s\),使得\(p-1=sd\)。因为\((s,p-1)=s>1\),所以\(s\)\(p-1\)必然存在公共素因子\(q_i\)

于是
\[ \frac{p-1}{q_i}=\frac{s}{q_i}d\Rightarrow d|\frac{p-1}{q_i} \Rightarrow g^{\frac{p-1}{q_i}}\equiv1\mod p \]
因此该充要条件得到证明。

说明: 如果是找合数的原根,那么方法一和方法二也是可以使用的。并且只需要在简化剩余系内寻找即可。

6.5 原根的应用

离散对数问题: 已知\(g\)是素数\(p\)的原根,给定\(1<y<p\),求\(x\)使得\(y\equiv g^x(mod\;p)\)。这样的问题称为离散对数问题。

我们知道在实数域上,我们要求解\(x\)就需要进行取对数,即\(x=\log_ay\)。而在数论中我们研究的对象是整数,而整数是离散的,所以称之为离散对数问题。

签名算法: 常见的几种数字签名算法都需要利用到原根的性质,例如:DSA,ElGamal等。

6 原根

标签:不同   最小公倍数   表示   phi   函数   alpha   公倍数   数论   spl   

原文地址:https://www.cnblogs.com/philolif/p/number-theory-6.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!