密码学数学基础

整除性(Divisibility)

b|a:设a,b∈Z,如果存在一个q∈Z,使得a=qb,则称b整除a,记作“b|a”。
(或称:a被b整除,b是a的因子,a是b的倍数,b|a <=> a=qb)

性质

  • b|0
  • 1|b
  • 0|a <=> a=0
  • b|a <=> b|-a <=> -b|a
  • (自反性)a|a
  • (传递性)b|a 且 a|c,则 b|c
  • (相乘性)b|a,则 bc|ac
  • (消去性)bc|ac 且 c!=0,则 b|a
  • (线性性)b|a 且 b|c,队友所有s,t ∈Z,都有 b|(sa±tc)
  • (比较性)如果a,b∈N且b|a,则b≤a

定理

设a,b∈Z,则b|a且a|b当且仅当a=±b,特别地,a|1当且仅当a=±1。

素数(Prime)

定义

设n∈N且n≥2,除了1和n以外,没有其他正整数整除n,n称作“素数”;否则,n称作“合数”。

PS:1既不是素数,也不是合数。
PS:n为合数,则n=ab,其中1<a<n,1<b<n。

引理2-1

任何大于1的整数必有素因子。

定理2-1

任何合数n都至少有一个不超过√n的素因子。
判断n是否为素数:判断n是否为素数:如果所有素数p≤√n都不能整除n,则n是素数。

定理2-2(算数基本定理)

任何非零整数n,可以表现成如下的乘积形式:
n = ± P 1 e 1 ⋅ ⋅ ⋅ P r e r n = ± P_1^{e_1}···P_r^{e_r} n=±P1e1⋅⋅⋅Prer
其中, p 1 , ⋅ ⋅ ⋅ , p r p_1,···,p_r p1⋅⋅⋅pr是互不相同的素数, e 1 , ⋅ ⋅ ⋅ , e r e_1,···,e_r e1⋅⋅⋅er是正整数。

  • 这个表现形式是唯一的(忽略乘子的顺序)
  • 认为±1可以表示为零个素因子项相乘(r=0),因为通常把零个素数相乘的结果作为1。

定理2-3(欧几里得定理,Euclid’s Theorem)

素数有无穷多个

模运算

**a mod b:**设a,b ∈ Z 且 b > 0,如果q,r ∈ Z 满足 a = q b + r,且0 ≤ r < b,则定义:a mod b = r。

  • b|a <=> a mod b = 0
  • (a+b) mod n = (a mod n + b mod n) mod n
  • (a-b) mod n = (a mod n - b mod n) mod n
  • (a*b) mod n = (a mod n * b mod n) mod n

最大公约数

设a,b∈Z,如果d∈Z且d|a,d|b,则称d是a和b的公因子(公约数)。
如果d≥0,且a和b的所有公因子都整除d,则称d是a和b的最大公约数,记作gcd(a,b)。

互素

设a,b∈Z,如果gcd(a,b)=1,则称a和b互素。
PS:设gcd(a,b)=d,则存在q1,q2∈Z,使得a=q1 d,b=q2 d,且gcd(q1,q2)=1。

欧几里得算法(Euclid’s algorithm)-- 辗转相除法

不失一般性,设a≥b≥0,求gcd(a,b)
数学原理

  • b=0时,gcd(a,b)=a
  • b>0时,gcd(a,b)=gcd(b,r)
    a=qb+r

扩展的欧几里得算法

定理5-1 (最大公约数定理)

设a,b∈Z,d=gcd(a,b),则存在s,t∈Z,使得as+bt=d
特别地:gcd(a,b)=1<=>as+bt=1
推论:d|v <=>as+bt=v

扩展的欧几里得算法(广义欧几里得算法)(Extended Euclidean Algorithm)

用途

计算as+bt=gcd(a,b)中的s和t

最小公倍数(Least Common Multople)

设a,b∈Z,如果m∈Z分别是a和b的倍数,m称作a和b的公倍数。
lcm(a,b):a和b的最小公倍数
a,b≠0:m是a和b所有正的公倍数中最小,m叫做a和b的最小公倍数

性质

  • 设 m = lcm(a,b), 如果 a|c , b|c ,则 m|c。
  • gcd(a,b)=1 =>lcm(a,b)=ab
  • lcm(a,b) = ab / gcd(a,b)

定理7-1

设p是素数,a,b∈Z,则p|ab => p|a 或 p|b
推论:设p是素数,a1,…,1k∈Z,则p|a1…ak => p|ai,i∈{1,…,k }

等价关系(equivalence relation)

定义(等价关系)

设集合S,定义在S上的二元关系R。如果R满足意义昂性质,则称它为“等价关系”:

  • 自反性:对于所有a∈S,都有(a,a)∈R
  • 对称性:对于所有a,b∈S,都有(a,b)∈R => (b,a)∈R
  • 传递性:对于所有a,b,c∈S,都有(a,b)∈R,(b,c)∈R => (a,c)∈R

同余(congruence)

a≡b(mod n):设n为正整数,整数a和b分别模n,如果得到相同的余数,就称a和b在模n下满足同余关系,简称同余。

定义(同余关系)

设a,b,n∈Z,n>0,如果n|(a-b),就称a和b在模n下同余,记作a≡b(mod n)。

性质

a≡b(mod n) <=> a = qn+b,存在q∈Z。
PC:同余关系是等价关系。

乘法逆元

定义

设a∈Z,n∈N,如果az≡1(mod n),成z是模n下a的乘法逆元,记作
a − 1 = z a^{-1} = z a1=z
注意1:模n下互为乘法逆元,一般只考虑比n小的。
注意2:a在模n内的乘法逆元是唯一的。
注意3:乘法逆元存在的条件:
gcd(a,n)=1 <=> 模n下,a有乘法逆元

求乘法逆元

算法:扩展的欧几里得算法
设gcd(a,n)=1,根据最大公约数定理,有
a s + t n = 1 as+tn=1 as+tn=1
等式两边同时模n,得
a s ≡ 1 ( m o d n ) as≡1(mod n) as1modn
易知,模n下a的逆元是s

一次同余方程

消去律(cancellation law)

定义(同余下的消去律)

设a,n∈Z,n>0,如果gcd(a,n)=d,有
az ≡ az’ (mod n) => z ≡ z’ (mod n / d)
PC:原模数为n,最终模数为n’,设n/n’=d,有0~n-1之间解的数量恰好等于d。

一次同余方程有解的条件

若gcd(a,n)=d,则ax≡b(mod n)有解 <=> d|b

剩余类

  1. 设a∈Z,定义其剩余类为{x∈Z|x≡a(mod n)}。

  2. 集合S上的所有等价类形成S的一个划分:

  • S中每个元素必存在于唯一的等价类中
  • 所有等价类的并集恰好就是S
  1. 模n下含整数a的剩余类,记作 [ a ] n [a]_n [a]n不引起歧义时,简记为[a]。

  2. 剩余类里的每个整数都叫做这个剩余类的代表元。

  3. 剩余类集合表示: Z n Z_n Zn

剩余类中的乘法逆元

  1. Z n = [ 0 ] , [ 1 ] , . . . [ n − 1 ] ,设 u , v ∈ Z n Z_n = {[0],[1],...[n-1]},设u,v∈Z_n Zn=[0],[1],...[n1],设uvZn 若 u v = [ 1 ] ,则 u 和 v 互为乘法逆元 若uv=[1],则u和v互为乘法逆元 uv=[1],则uv互为乘法逆元
  2. Z n = [ 0 ] , [ 1 ] , . . . [ n − 1 ] ,设 u = [ a ] , v = [ b ] ,则 Z_n = {[0],[1],...[n-1]},设u=[a],v=[b],则 Zn=[0],[1],...[n1],设u=[a]v=[b],则 u 和 v 互为乘法逆元 < = > a b = 1 ( m o d n ) u和v互为乘法逆元<=>ab=1(mod n) uv互为乘法逆元<=>ab=1(modn) u ( 和 v ) 有乘法逆元 < = > a ( 和 b ) 与 n 互素 u(和v)有乘法逆元<=>a(和b)与n互素 u(v)有乘法逆元<=>a(b)n互素

定义剩余类集合中有乘法逆元的剩余类

Z n ∗ = { [ a ] ∣ a = 0 , 1 , . . . , n − 1 , g c d ( a , n ) = 1 } Z_n^* = \left\{ [a]|a=0,1,...,n-1,gcd(a,n)=1\right\} Zn={[a]a=0,1,...,n1,gcd(a,n)=1}
举例: Z 6 = { [ 0 ] , [ 1 ] , . . . , [ 5 ] } Z_6= \left\{ [0],[1],...,[5]\right\} Z6={[0],[1],...,[5]} Z 6 ∗ = { [ 1 ] , [ 5 ] } Z_6^* = \left\{ [1],[5]\right\} Z6={[1],[5]}

Zn和Zn*的关系
  • n为素数: Z n ∗ Z_n^* Zn= Z n Z_n Zn \ {[0]}
    (因为gcd(a,n)=1,对于a=1,2,…,n-1)
  • n为合数: Z n ∗ Z_n^* Zn Z n Z_n Zn \ {[0]}
    (因为才能在a∈{1,…,n-1},使得gcd(a,n)>1)

中国剩余定理

欧拉函数

定义(欧拉函数)

对于所有正整数n∈N,定义欧拉函数Φ(n):= | Z n ∗ Z_n^* Zn|,且令Φ(1)=1
例: Z 8 ∗ Z_8^* Z8={1,3,5,7},Φ(8)=4

三个性质

在这里插入图片描述

在这里插入图片描述

欧拉定理

乘法阶

设a∈ Z n ∗ Z_n^* Zn,使得 a k ≡ 1 ( m o d n ) a^k≡1(mod n) ak1(modn)的最小正整数k称作a在模n下的乘法阶
设a∈ Z n ∗ Z_n^* Zn的(乘法)阶为k,则以下整数彼此不同
a 0 , a 1 , a 2 , ⋅ ⋅ ⋅ , a k − 1 ( 所有运算都模 n ) a^0,a^1,a^2,···,a^{k-1}(所有运算都模n) a0a1a2⋅⋅⋅ak1(所有运算都模n)

性质

  • a i ≡ 1 ( m o d n ) < = > k ∣ i a^i≡1(mod\enspace n) <=> k|i ai1(modn)<=>ki
  • a i ≡ a j ( m o d n ) < = > i ≡ j ( m o d k ) a^i≡a^j(mod\enspace n)<=>i≡j(mod\enspace k) aiaj(modn)<=>ij(modk)
    例: 设a在模7下的阶为3,则 a 101 ≡ a 101 m o d 3 ≡ a 2 ( m o d 7 ) a^{101} ≡a^{101\enspace mod\enspace3}≡a^2(mod\enspace7) a101a101mod3a2(mod7)

欧拉定理

设a∈ Z n ∗ Z_n^* Zn,则 a Φ ( n ) ≡ 1 ( m o d n ) a^{Φ(n)}≡1(mod\enspace n) aΦ(n)1modn,且k|Φ(n),其中k是a在模n下的阶。(a必须和模数互素)

费马小定理

对于任意素数p和整数a∈ Z p Z_p Zp,都有
a p ≡ a ( m o d p ) a^p≡a(mod\enspace p) apa(modp)

定理

设a∈ Z n ∗ Z_n^* Zn,m∈Z,a在模n下的乘法阶为k,则 a m a^m am在模n下的乘法阶为 k / g c d ( m , k ) k/gcd(m,k) k/gcd(m,k)
例:
在这里插入图片描述

二次剩余

定义

设a∈ Z n ∗ Z_n^* Zn,如果存在整数b∈Z,使得 b 2 b^2 b2≡a(mod n),则称a为模n下的二次剩余,并称b为a在模n下的平方根。

二次剩余的集合

( Z n ∗ ) 2 : = { b 2 ∣ b ∈ Z n ∗ } (Z_n^*)^2:=\left\{b^2|b∈Z_n^*\right\} (Zn)2:={b2bZn}
注:

  • a,b∈ Z n Z_n Zn Z n ∗ Z_n^* Zn时,ab mod n简写为ab。
  • 若a∈ ( Z n ∗ ) 2 (Z_n^*)^2 (Zn)2,则存在b∈ Z n ∗ Z_n^* Zn,使得 b 2 ≡ a ( m o d n ) b^2≡a(mod\enspace n) b2a(modn)
  • a是模n下的二次剩余 <=> a∈ ( Z n ∗ ) 2 (Z_n^*)^2 (Zn)2

模p下的二次剩余

p是奇素数(p是素数,且p≠2)

在这里插入图片描述

欧拉准则

设t= a ( p − 1 ) / 2 a^{(p-1)/2} a(p1)/2,则 t 2 = a p − 1 t^2=a^{p-1} t2=ap1。根据欧拉定理有
t 2 = a Φ ( p ) = 1 t^2=a^{Φ(p)}=1 t2=aΦ(p)=1
所以,t=±1,即 a ( p − 1 ) / 2 = ± 1 a^{(p-1)/2}=±1 a(p1)/2=±1

  • a∈ ( Z n ∗ ) 2 = > a ( p − 1 ) / 2 = 1 (Z_n^*)^2\enspace =>\enspace a^{(p-1)/2}=1 (Zn)2=>a(p1)/2=1
  • a∉ ( Z n ∗ ) 2 = > a ( p − 1 ) / 2 = − 1 (Z_n^*)^2\enspace =>\enspace a^{(p-1)/2}=-1 (Zn)2=>a(p1)/2=1
  • 两个整数中只有一个是二次非剩余,那么其乘积必是二次非剩余
  • 两个整数中都是二次剩余或二次非剩余,那么其乘积必是二次剩余

结论

  • a是模 p k p_k pk下的二次剩余 <=> a是模 p p p下的二次剩余
  • a∈ Z p k ∗ = > g c d ( a , p ) = 1 Z_{p^k}^*\enspace => \enspace gcd(a,p)=1 Zpk=>gcd(a,p)=1

n是奇数,n>1

在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值