原根
-
什么是原根?
设 (a,m)= 1, 并且 a e a^e ae 三 1 (mod m) ,则我们称: o r d m ord_m ordm(a) = e,ord也叫做群论,也可以叫阶。假如: o r d m ( a ) ord_m(a) ordm(a) = ϕ ( m ) \phi(m) ϕ(m),那么我们就称a是模m的原根。 -
原根又称:本原元,生成元
-
对ord的解释:ord就是表示a的阶,是使 a e a^e ae 三 1 (mod m)成立的最小的数,e要在1-(m-1)的范围内找,必然有一个数能满足式子的,因为至少来说你可以使用欧拉定理 a ϕ a^\phi aϕ ( ^( ( m ^m m ) ^) ) 三 1 (mod m)
-
我对原根的理解方式:a,m互素,并且ord = e为最小使 a e a^e ae 三 1 的数字,然后在 a e a^e ae 三 1 (mod m)中的e要等于 ϕ ( m ) \phi(m) ϕ(m)的时候就称a是m的一个原根,这里用把e用 ϕ ( m ) \phi(m) ϕ(m)替换掉之后就变成了欧拉函数: a ϕ a^\phi aϕ ( ^( ( m ^m m ) ^) ) 三 1 (mod m),本质就是在保证其他限制条件满足的情况下,主要要满足的就是当e等于 ϕ ( m ) \phi(m) ϕ(m),简而言之,e是能满足式子的最小数字,但他又是欧拉函数,在素数中容易让我混淆,因为假如a是素数,那么欧拉函数就是素数-1,因此我时不时会觉得该数字既是最小也是最大。但仔细想想后其实是满足同余1的最小数字,因为最大的数字才满足该条件,就是最小的数字满足同余1的,那么前面的数字必然是能够使 a e a^e ae重新组成一个简化剩余系(也是群),也就是前面的都不是余1的且不同余数 。
-
❀ a必须是模m的简化剩余系 ❀
-
原根可以不存在,但阶一定存在。
原根在后面的密码的加密解密中大有用处
-
如何求原根?
不难发现,在上面模m的时候,数字其实a的范围就限制在了1 ~ (m-1) 的范围内,因为a是模m的简化剩余系,并且无论a数字多大终究会以模m的形式进行计算,所以我们找原根最原始的办法就是从1开始找,1必然不是原根,因为简化剩余系范围内,第一个数字1就能使1同余1,因此1不会是式子的原根。自此,我们开始往后找,假设m是素数,那么就是找2,3,4,5…m-1,一个个尝试。
2 1 2^1 21, 2 2 2^2 22

文章介绍了原根的概念,它是模m的简化剩余系中的一个元素,满足特定的阶条件。原根在密码学中具有重要作用,特别是在加密和解密过程中。求解原根的方法包括从1开始遍历并计算每个数的次方,直至找到满足条件的数。此外,欧拉函数在这里起到关键作用,它的因子与原根的阶有关。文章还探讨了阶的性质和原根的个数,特别是对于素数的情况。进阶方法包括利用欧拉函数的因子来缩小寻找原根的范围。
最低0.47元/天 解锁文章
2484





