1. 引言
文中提出了一个新的概念:半原根。此概念是相对原根提出来的,所以,半原根得出的很多结论与原根的相类似。文章前半部分,建立了半原根的基本理论体系。后半部分给出了半原根的三方面的应用:
1) 用半原根理论解同余方程。
2) 用半原根理论证明不定方程的有关命题。
3) 用半原根加密和解密,解决了离散对数加密时用同一个值对多个不同的信息进行数字签名的安全问题。
2. 半原根的定义
设
,若
且
时称
为
的半原根。
为区别起见,将
,
且当
时,
则称
为
的原根。
3. 半原根存在的必要条件
设
是
的半原根,
为不同的素数,因
,所以
,则
令
,则
和
所以
,或者
而
,于是,
的不同奇素因子不能多于2个,若偶素因子2与两个奇素因子
同时存在,那么,2的幂次不能大于1,且
;如果偶素因子2与一个奇素因子同时存在,且2的幂次大于2,则奇素因子不能为
;若只有两个奇素因子
同时存在,则
。
4. 哪些数有半原根
根据以上半原根存在的必要条件,并用证明存在原根的数的充分条件相类似的方法可以证明以下形式的数存在半原根:
为素数,
。
为素数,
。
均为素数,
。
均为素数,
。
下面仅就
和
存在半原根进行证明,其余的证明可参考文献[1]:
1) 设
模
之阶为
,并设
,则
和
这两个数中
至少有一个不是
之倍数。
证:若
,则结论已明,若
,则
即
则
。由于
,所以
,得证。
2)
为奇素数,
,设
,
是
的半原根,并设
,
,则
① 若
则
是
的半原根。
② 若
,则
是
的半原根。
证:① 设
,由
得
则
(1)
(2)
设
模
其阶为
,即
,则
,因
和
,所以
,如果
,则
必须是
的约数,则应有
,但根据(1)和
,此不可。如果
,那么必有:
,但根据(2)此亦不可。只有
。再若
,
,则有
,从而
,因
,只有
,因
有半原根,
,
不为整数,故
是
的半原根。
② 若
,则由1)得知:
,因
也是
的半原根,同理可证,
是
的半原根。
3)
,
均为奇质数,
为自然数。若
既是
的半原根,也是
的原根,且
,则
是
的半原根。
证:因为
是
的半原根,根据(2)可知
或
为
的半原根,所以就有
,也有
。又因
也是
的原根,那么,
或
为
的原根,所以有
,也有
,所以
。若存在:
使得
模
之阶为
,即
,就会有
和
,所以有
和
。即
因
,所以
,显然与原设矛盾。故
模
之阶为
。再若存在
,使得
,就会有
。
则
,因
,只有
或
,并推出:
。但由于
是
的半原根,所以
,
。
当
为奇数时:
当
为偶数时:
又因
为奇素数,所以
,故
。
得证。
5. 半原根的相关定理
定理1. 若
是
的半原根,则
为
的简化剩余系。
证:
共有
个数,如果
,则会有
或
,由于
,由半原根的定义,因此不可;如果
,因
,则会有
,也不可。
定理2. 设
为正整数,
为所有小于
且与
互素的正整数之积,如果
存在半原根,则
证:设
是
的半原根,因
是
的简化剩余系,则有
因
,所以
定理3. 设
,则
均为
的半原根。
证:先设
,
,此时
可取
个数,
分别为:
,共
个数。而
,
。因
,所以,
均不为
的半原根。而不大于
的
和
的数也有
个,根据下面“半原根的个数”知
的半原根有
个,且无偶数,所以
均为
的半原根。
又因当
均大于
时,总可以找到
使得
,
。
即有
。所以全体
均为
的半原根,得证。
定理4. 设
为
的半原根,
均为已知整数,
,
,则同余式
(5)
① 当
,则(5)式有解的充要条件为
;
② 当
,则同余式有解的充要条件
且
;
③ 当
,则同余式有解的充要条件
且
;
④
,则同余式无解。
证:① (5)式可变形为:
, (6)
(6)有解的充要条件为
,且若有解,恰有
个不同余的解,
(5)式也有
个不同余的解。
② (5)式可变为:
或
, (7)
当
且
,则(7)有
个不同余的解,(5)也有
个不同余的解。当
或
,则(7)无解,(5)也无解。
③ (5)可变为:
或
, (8)
当
且有
,则(8)有解且有
个不同余的解,(5)也有个不同余的解;当
或
,则(8)无解,(5)也无解。
④ (5)可变为:
或
, (9)
因
均为整数,所以(9)无解,(5)也无解。得证。
6. 半原根的个数
若
存在半原根,其个数必为
个。
我们知道:存在半原根的
必为以下形式的数:
为奇素数,
,
自然数。
为奇素数,
自然数。
为奇素数,
,
为自然数。
现分别加以证明:
① 设
(
)
当
时,
,其半原根仅有一个1,而
。
当
时,
,其半原根为3和5,而
。
当
时,设
为
的半原根,则
模
两两互不同余,若
,则
模
之阶也为
,而不大于
且与
互质的数有
个,即在
中共有
个
关于
之阶为
。若
,还存在
,使
,则
,就会有
,可得
,或
,由于
为奇数,
也为奇数,设
,
为整数,则
,
为整数。
若
,则有
,显然不可,即
为
的半原根。
又因
为偶数,显然有:
,
若存在
,使
,此时若
为偶数,则有
此不可;若
为奇数,则有
,也不可,所以,
也为
的半原根,显然在
,
,
,
中再无其他半原根,所以
共有
个半原根。
② 设
,
为奇素数,
,
为自然数。并设
为
的半原根,则
,
,
,
模
两两互不同余,设
。若
,则
模
之阶为
,且有
个,再若存在
,使得
,就有
,因
,则
不为整数,故不可,即
为
之半原根,且在
,
,
,
中共有
个半原根。因
为奇数,若有
,则
,因
为
之半原根,此不可。即
不为
之半原根,显然,在
,
,
,
中,仅有
个为
的半原根,又因当
时,有
,故
有
个
的半原根。
的半原根个数,
为奇素数,
,可仿②证明之。
③ 设
,
为奇素数,
为自然数,设
为
的半原根,同上理,在
,
,
,
中有
个数模
之阶为
,设
,
。若存在
,使得:
,则必有:
,也必有:
,若
,因
为奇数,
为偶数,则
;
若
,
,从而有
,也有
。若
为
的原根,则
,所以
,
。即
为
的半原根,且在
,
,
,
中共有
个。
显然
,若存在
,使
则当
为偶数时,
,当为奇数时,
,均不可,故在
,
,
,
中也有
个
的半原根。又因
,故
共有
个半原根。
④ 设
,
,
为自然数,设
是
的半原根,则
,
,
,
模
两两互不同余,若
,
。则
模
之阶为
,而不大于
且与
互质的数有
个,即在
,
,
,
中,共有
个
关于
之阶为
。再若
,
时,还存在
,使
,则应有
,即有
,但因
,则必有
或
或
。现设
,则
,
,则有
,同理若
,也有
。
再若
,则
为
的半原根或为
的半原根,不妨设
为
的半原根,则
,也有
,即
,则
。
同理若
是
的半原根,也有
,也就是说
为
的半原根,且在
,
,
,
中有
个
的半原根。
显然,
,若存在
,使得
,当
为偶数时有
;当为奇数时有
,均不可,即在
,
,
,
中也有
个
的半原根。又因
,故在
,
,
,
中有
个半原根。
⑤ 设
,仿④可证:
的半原根有
个。
7. 半原根指数的性质
半原根指数和原根一样,也有类似对数的性质[2],即下面的定理:
设
是
的半原根,如果
,我们有
①
;
②
;
③
;
④ 若
;
若
;
⑤ 设
也是
的一个半原根,则
。
证① 设
,
。则有
,故
。
② 设
,则有
,故
。
③、④显然。
⑤ 由于
,则
故有
。
8. 半原根的应用
应用一:解同余方程
根据定理1知
的简化剩余系可由
的半原根的幂表出,那么,同原根一样,可以建立半原
根
为底的指数组来解模
的同余方程,在全体正整数中,存在半原根的数的数量要比存在原根的数多,所以利用半原根的指数组来解同余方程或利用半原根和原根的指数结合起来解同余方程(在100以内有85个数存在半原根或存在原根),其范围比单纯用原根要宽泛得多。
例:解同余方程
(1)
这个同余式是不能直接用原根指数组的方式来求解的,因为35不存在原根,而只能将其化成同余方程组来解。而
,故35存在半原根,
,计算可知2是35的半原根,并且有
表
个 十 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
0 |
|
12 |
1 |
I + 5 |
2 |
|
I + 6 |
|
3 |
10 |
1 |
|
8 |
I + 7 |
I + 9 |
|
|
4 |
I + 11 |
11 |
I + 4 |
2 |
|
|
9 |
7 |
I + 8 |
|
I + 10 |
I + 3 |
|
6 |
3 |
|
I + 2 |
5 |
I + 1 |
I + 12 |
|
|
|
|
|
注:表中第一纵行是
的十位数字,第一横行是
的个位数字,
。
由(1)可得:
或为
,查
表可得:
,则有
或
再反查表得:
即为同余方程(1)的解。
应用二:证明相关不定方程的命题
1842年卡塔兰(Catalan, 1814~1894)提出了一个著名的猜想:
的整数解只有
。
1962年,我国著名数学家柯召首先在卡塔兰猜想方面取得了突破,他证明了下述不定方程:
只有一组解:
。而方程
没有正整数解。
2002年4月,米哈伊列斯库大幅使用分园域和伽罗华模证明了此猜想。
下面用半原根及其指数理论来证明:
不定方程
(2)
的整数解只有
。
证:当
时,可以验证:
是(2)的整数解。
当
时,根据(2)有:
(3)
设
和
。根据定理3知,
为
的半原根。
对(3)两边取以
为底的指数得:
,又根据定理4知(3)有唯一解,
。
得到
,
为整数。也就有:
均为正整数。
但
和
,
所以当
时,
和
不存在整数解。
又因:
,有
,如果还有:
,则必有
。如果
,则
时
方程(2)无正整数解。那么
只能是
,
。而当
时,设
,
为奇数,则
(4)
由(4)可知:
当
时,
;
当
时,
则
。所以
无整数解。
再因
,
为整数。得证。
应用三:半原根所形成的离散对数公钥方案及数字签名
1) 加密和解密
用户A选取
,
和
均为大素数,并
,此时
存在半原根,并选取
的一个半根
,用户A再选取一个整数
,计算
,把
均公开,而i作为用户A的私密而保密,b为用户A的公钥。如果用户B将信息x发用户A,
,其加密和解密的方式为:[3]
① 加密:用户B随意选取一个整数
,(当
均大于5时
)
并计算
和
。
如果
为奇数
,则将密文
传给A;
,则将密文
传给A;
如果
为偶数
,则将密文
传给A;
,则将密文
传给A。
② 解密:用户A收到密文后,根据
的情况(用户A自己知道),用私钥i进
行加密:
当用户A收到
后,用私钥i计算:
如果
如果
当用户A收到
后,用私钥i计算:
如果
如果
当用户A收到
后,用私钥i计算:
如果
当用户A收到
后,用私钥i计算:
如果
以上计算可将用户B发来的密文恢复成明文x,由于用户以外的人不知道A的私钥i,而由
公钥
求i是困难的离散对数问题,所以,外人由密文很难算出明文。
2) 数字签名
用户A作数字签名和认证的过程为:
① 用户A随意取一个与
互素的整数
并计算:
(5)
而由
得
(6)
对(6)两边取指数得
或
则
就是用户A在信息x上的签名,用户A将信息x和签名
同时发给用户B。
② 任何人都可认证信息x来自用户A,因为由用户A的公钥b和签名
并根据(5)和(6)可知
即由公开的
签名
和信息x直接验证同余式
成立,就可以认证信息x来自用户A。
我们知道:使用由原根所形成的离散对数同样也可用来作信息加密和数字签名,但此时用户A不能用同一个值r对两个不同的信息
和
同时做签名,否则,存在私钥被破译的风险。[4]
而使用由半原根所形成的离散对数来作加密和数字签名时,用户A则可用同一个值r对多个不同的信息
同时做签名而不致于被破译,这是由于:
(7)
(8)
如果
则由(7)-(8)可得
(9)
由于
,当
和
都非常大时,分解
是非常困难的[5],所以求解(9)中的
也是极其困难的,因此,用同一个值
对多个不同的信息
同时做签名也是很安全的,这也是使用由半原根所形成的离散对数来做加密和数字签名最大的优势。
9. 猜想
表示所有小于
的半原根之和,
表示所有小于
的原根之和。
下面的
表示
的麦比乌斯函数。
为关于
的欧拉函数。
猜想:
1) 设
为素数,
。则
2) 设
为素数,
,则
3) a) 设
为奇素数,
为自然数,
,
。
b) 设
为奇素数,
为自然数。
则
4) 任何大于1的自然数m都有下面的同余式:
以上诸猜想,均已验证到
。
10. 结束语
从上文中可以看出:存在半原根的数比存在原根的数范围要大,例如
和
都存在半原根,而它们是不存在原根的,所以可以充分利用它们的半原根性质来解决原根不能解决的问题。作者相信,一定还能找到半原根在其他方面的应用,这将是提出半原根的最好结果。
Conflicts of Interest
The author declares no conflicts of interest.
Appendix (Abstract and Keywords in Chinese)
半原根与信息安全
摘要:文中提出了一个新的概念:半原根。建立了半原根的基本理论体系,并用半原根理论解同余方程和证明不定方程的命题;解决了离散对数加密时用同一个值对多个不同的信息进行数字签名的安全问题。
关键词:半原根,解同余方程,证明不定方程的命题,加密与数字签名,信息安全