计算机安全中,密码学涉及的数学知识
1 费马定理
费马定理:
若p是素数, gcd(a, p) = 1,
则
a
p
−
1
≡
1
m
o
d
p
或
即
:
a
p
≡
a
m
o
d
p
则 \ a^p-1 ≡ 1\ mod\ p\\或即:\ a^p ≡ a \ mod\ p
则 ap−1≡1 mod p或即: ap≡a mod p
白话:若a,p互素,则a%p就等于a^p%p
注:
- gcd (a, p) :求a,p的最大公因子,若为1,则两个数互素
- 素数和除它倍数以外的数都互素
- r ≡ a mod q: r 和a 对 q 同余
作用:
- 简化一个高次幂的模运算
- 找同余的数字
2 欧拉定理
欧拉函数 Φ(n):小于n,且与n互素的元素个数
-
若p为素数:则Φ§ = p-1
-
若p,q为素数:则Φ(p×q) =(p-1)(q-1)
-
e g : Φ ( 15 ) = Φ ( 3 ∗ 5 ) = ( 3 − 1 ) × ( 5 − 1 ) = 8 eg:Φ(15)=Φ(3*5)=(3-1)×(5-1)=8 eg:Φ(15)=Φ(3∗5)=(3−1)×(5−1)=8
欧拉定理
如果a,n互素,
a
φ
(
n
)
≡
1
m
o
d
n
或
者
:
a
φ
(
n
)
+
1
≡
a
m
o
d
n
a^{φ(n)} ≡ 1 \ mod\ n \\ 或者: a^{φ(n)+1} ≡ a\ mod \ n
aφ(n)≡1 mod n或者:aφ(n)+1≡a mod n
3 中国剩余定理
中国剩余定理也叫孙子定理,是求解同余方程组的方法。如下《孙子算经》中的一题
有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何?
即,一个整数除以三余二,除以五余三,除以七余二,求这个整数。
接下来介绍什么是中国剩余定理,以及如何求解上题
定理:
问题可以表述为以下方程组
若整数m*1,m2, … ,*mn两两互质,则对任意的整数:a1,a2, … ,an,方程组(S)有解,且通解为如下形式。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hxEGXAdB-1608103459991)(https://gitee.com/handsomewu666/typora_for_md/raw/master/typora_pic/f17d4a87c03bd861cf52d0e8586de7b3.svg)]
其中:
-
M : 是整数m1,m2, … ,mn的乘积
-
Mi : 是除了mi以外的n- 1个整数的乘积。
-
ti :是Mi的逆元(模M下)
证明如下:证明
更有大佬对这部分做了比较详尽的解释:解释
这首诗有趣,推一遍,记住即可用,哈哈
三人同行七十稀:除3余1 +70
五树梅花廿一枝:除5余1 +21
七子团圆正半月:除4余1 +15
除百令五便得知:对105取余便是解
所以上题的答案是:
2
∗
70
+
3
∗
21
+
2
∗
15
=
233
233
m
o
d
105
=
23
答
案
是
:
23
2*70 \ +3*21 \ + 2*15=233 \\ 233 \ mod\ 105=23 \\ 答案是:23
2∗70 +3∗21 +2∗15=233233 mod 105=23答案是:23